diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -39,16 +39,11 @@
 
 The Haskell library comes with the C bundled, however you will likely want to build from
 source if you are hacking on the library. To that end, you can install
-[stack](http://haskellstack.org/), [patsopt](http://www.ats-lang.org/Downloads.html), and
-[pats-filter](https://github.com/Hibou57/PostiATS-Utilities) and build with
+[atspkg](http://hackage.haskell.org/package/ats-pkg), and build with
 
 ```bash
- $ ./shake.hs
+ $ atspkg build
 ```
-
-You will also likely want to install
-[GHC](https://www.haskell.org/ghc/download.html) as well as
-[cabal](https://www.haskell.org/cabal/).
 
 ## Documentation
 
diff --git a/Setup.hs b/Setup.hs
--- a/Setup.hs
+++ b/Setup.hs
@@ -1,72 +1,5 @@
-{-# LANGUAGE CPP               #-}
-{-# LANGUAGE OverloadedStrings #-}
-
-#if __GLASGOW_HASKELL__ <= 784
-import           Control.Applicative
-#endif
-import qualified Codec.Archive.Tar                            as Tar
-import           Codec.Compression.GZip                       (decompress)
-import           Control.Concurrent.ParallelIO.Global
-import           Control.Monad                                (unless, when)
-import           Data.List
+import           Distribution.ATS
 import           Distribution.Simple
-import           Distribution.Simple.Setup
-import           Distribution.Types.GenericPackageDescription
-import           Distribution.Types.HookedBuildInfo
-import           Distribution.Types.LocalBuildInfo
-import           Distribution.Types.PackageDescription
-import           Network.HTTP.Client                          hiding (decompress)
-import           Network.HTTP.Client.TLS                      (tlsManagerSettings)
-import           System.Directory
 
-main = defaultMainWithHooks myHooks
-
-    where myHooks = simpleUserHooks { preConf = buildScript
-                                    , postBuild = maybeCleanATS }
-
-maybeCleanATS :: Args -> BuildFlags -> PackageDescription -> LocalBuildInfo -> IO ()
-maybeCleanATS _ _ _ li =
-    let cf = configConfigurationsFlags (configFlags li) in
-
-    unless ((mkFlagName "development", True) `elem` cf) $
-        putStrLn "Cleaning up ATS dependencies..." >>
-        cleanATS
-
-cleanATS :: IO ()
-cleanATS = removeDirectoryRecursive "ats-deps"
-
-buildScript :: Args -> ConfigFlags -> IO HookedBuildInfo
-buildScript _ _ = do
-
-    putStrLn "Setting up ATS dependencies..."
-
-    let libs = zipWith4 buildHelper
-            ["ats2-postiats-0.3.8-prelude", "atscntrb-hs-intinf-1.0.6", "atscntrb-libgmp-1.0.4"]
-            ["ats-deps/prelude", "ats-deps/contrib/atscntrb-hx-intinf", "ats-deps/contrib/atscntrb-libgmp"]
-            ["ats-deps/prelude/ATS2-Postiats-include-0.3.8/prelude", "ats-deps/contrib/atscntrb-hx-intinf", "ats-deps/contrib/atscntrb-libgmp/SATS"]
-            ["https://downloads.sourceforge.net/project/ats2-lang/ats2-lang/ats2-postiats-0.3.8/ATS2-Postiats-include-0.3.8.tgz", "https://registry.npmjs.org/atscntrb-hx-intinf/-/atscntrb-hx-intinf-1.0.6.tgz", "https://registry.npmjs.org/atscntrb-libgmp/-/atscntrb-libgmp-1.0.4.tgz"]
-    parallel_ libs >> stopGlobalPool
-
-    pure emptyHookedBuildInfo
-
-buildHelper libName dirName needed url = do
-
-    -- FIXME not discerning enough!
-    needsSetup <- not <$> doesDirectoryExist needed
-
-    when needsSetup $ do
-
-        putStrLn ("Fetching library " ++ libName ++ "...")
-        manager <- newManager tlsManagerSettings
-        initialRequest <- parseRequest url
-        response <- responseBody <$> httpLbs (initialRequest { method = "GET" }) manager
-
-        putStrLn ("Unpacking library " ++ libName ++ "...")
-        Tar.unpack dirName . Tar.read . decompress $ response
-
-        putStrLn ("Setting up library " ++ libName ++ "...")
-        needsMove <- doesDirectoryExist (dirName ++ "/package")
-        when needsMove $ do
-            renameDirectory (dirName ++ "/package") "tempdir"
-            removeDirectoryRecursive dirName
-            renameDirectory "tempdir" dirName
+main = defaultMainWithHooks $
+    atsUserHooks [ libgmp, intinf, atsPrelude [0,3,8] ]
diff --git a/ats-src/combinatorics-ffi.dats b/ats-src/combinatorics-ffi.dats
deleted file mode 100644
--- a/ats-src/combinatorics-ffi.dats
+++ /dev/null
@@ -1,45 +0,0 @@
-#include "share/atspre_staload.hats"
-#include "ats-src/combinatorics.dats"
-
-%{^
-#define ATS_MEMALLOC_LIBC
-#include "ccomp/runtime/pats_ccomp_memalloc_libc.h"
-#include "ccomp/runtime/pats_ccomp_runtime_memalloc.c"
-%}
-
-#define ATS_MAINATSFLAG 1
-
-extern
-fun choose_ats {n : nat}{ m : nat | m <= n } : (int(n), int(m)) -> Intinf =
-  "mac#"
-
-extern
-fun permutations_ats {n : nat}{ m : nat | m <= n } : (int(n), int(m)) -> Intinf =
-  "mac#"
-
-extern
-fun double_factorial_ats {n : nat} : int(n) -> Intinf =
-  "mac#"
-
-extern
-fun factorial_ats {n : nat} : int(n) -> Intinf =
-  "mac#"
-
-extern
-fun catalan_ats {n : nat} : int(n) -> Intinf =
-  "mac#"
-
-implement choose_ats (n, k) =
-  choose(n, k)
-
-implement permutations_ats (n, k) =
-  choose(n, k)
-
-implement double_factorial_ats (m) =
-  dfact(m)
-
-implement factorial_ats (m) =
-  fact(m)
-
-implement catalan_ats (n) =
-  catalan(n)
diff --git a/ats-src/combinatorics-internal.dats b/ats-src/combinatorics-internal.dats
new file mode 100644
--- /dev/null
+++ b/ats-src/combinatorics-internal.dats
@@ -0,0 +1,116 @@
+#define ATS_MAINATSFLAG 1
+
+#include "share/atspre_staload.hats"
+#include "contrib/atscntrb-hx-intinf/mylibies.hats"
+
+staload "contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats"
+staload UN = "prelude/SATS/unsafe.sats"
+
+// See [here](http://mathworld.wolfram.com/Derangement.html)
+fn derangements {n : nat} .<n>. (n : int(n)) : Intinf =
+  let
+    fnx loop { n : nat | n > 1 }{ i : nat | i <= n } .<n-i>. (n : int(n), i : int(i), n1 : Intinf, n2 : Intinf) : Intinf =
+      if i < n then
+        let
+          var x = add_intinf0_intinf1(n2, n1)
+          var y = mul_intinf0_int(x, i)
+        in
+          loop(n, i + 1, y, n1)
+        end
+      else
+        let
+          var x = add_intinf0_intinf1(n2, n1)
+          val _ = intinf_free(n1)
+          var y = mul_intinf0_int(x, i)
+        in
+          y
+        end
+  in
+    case+ n of
+      | 0 => int2intinf(1)
+      | 1 =>> int2intinf(0)
+      | 2 =>> int2intinf(1)
+      | n =>> loop(n - 1, 2, int2intinf(1), int2intinf(0))
+  end
+
+fnx fact {n : nat} .<n>. (k : int(n)) : intinfGte(1) =
+  case+ k of
+    | 0 => int2intinf(1)
+    | 1 => int2intinf(1)
+    | k =>> $UN.castvwtp0(mul_intinf0_int(fact(k - 1), k))
+
+// Double factorial http://mathworld.wolfram.com/DoubleFactorial.html
+fnx dfact {n : nat} .<n>. (k : int(n)) : Intinf =
+  case+ k of
+    | 0 => int2intinf(1)
+    | 1 => int2intinf(1)
+    | k =>> let
+      var x = dfact(k - 2)
+      var y = mul_intinf0_int(x, k)
+    in
+      y
+    end
+
+// Number of permutations on n objects using k at a time.
+fn permutations {n : nat}{ k : nat | k <= n } (n : int(n), k : int(k)) : Intinf =
+  let
+    var x = fact(n)
+    var y = fact(n - k)
+    var z = div_intinf0_intinf1(x, y)
+    val _ = intinf_free(y)
+  in
+    z
+  end
+
+// Catalan numbers, indexing starting at zero.
+fn catalan {n : nat} (n : int(n)) : Intinf =
+  let
+    fun numerator_loop { i : nat | i > 1 } .<i>. (i : int(i)) : [ n : nat | n > 0 ] intinf(n) =
+      case+ i of
+        | 2 => int2intinf(n + 2)
+        | i =>> let
+          var x = numerator_loop(i - 1)
+          var y = mul_intinf0_int(x, n + i)
+        in
+          $UN.castvwtp0(y)
+        end
+  in
+    case+ n of
+      | 0 => int2intinf(1)
+      | 1 => int2intinf(1)
+      | k =>> let
+        var x = numerator_loop(k)
+        var y = fact(k)
+        var z = div_intinf0_intinf1(x, y)
+        val _ = intinf_free(y)
+      in
+        $UN.castvwtp0(z)
+      end
+  end
+
+// Number of permutations on n objects using k at a time.
+fn choose {n : nat}{ m : nat | m <= n } (n : int(n), k : int(m)) : Intinf =
+  let
+    fun numerator_loop { m : nat | m > 1 } .<m>. (i : int(m)) : [ n : nat | n > 0 ] intinf(n) =
+      case+ i of
+        | 1 => int2intinf(n)
+        | 2 => $UN.castvwtp0(int2intinf((n - 1) * n))
+        | i =>> let
+          var x = numerator_loop(i - 1)
+          var y = mul_intinf0_int(x, n + 1 - i)
+        in
+          $UN.castvwtp0(y)
+        end
+  in
+    case+ k of
+      | 0 => int2intinf(1)
+      | 1 => int2intinf(n)
+      | k =>> let
+        var x = numerator_loop(k)
+        var y = fact(k)
+        var z = div_intinf0_intinf1(x, y)
+        val _ = intinf_free(y)
+      in
+        $UN.castvwtp0(z)
+      end
+  end
diff --git a/ats-src/combinatorics.dats b/ats-src/combinatorics.dats
--- a/ats-src/combinatorics.dats
+++ b/ats-src/combinatorics.dats
@@ -1,116 +1,45 @@
+#include "share/atspre_staload.hats"
+#include "ats-src/combinatorics-internal.dats"
+
+%{^
+#define ATS_MEMALLOC_LIBC
+#include "ccomp/runtime/pats_ccomp_memalloc_libc.h"
+#include "ccomp/runtime/pats_ccomp_runtime_memalloc.c"
+%}
+
 #define ATS_MAINATSFLAG 1
 
-#include "share/atspre_staload.hats"
-#include "contrib/atscntrb-hx-intinf/mylibies.hats"
+extern
+fun choose_ats {n:nat}{ m : nat | m <= n } : (int(n), int(m)) -> Intinf =
+  "mac#"
 
-staload "contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats"
-staload UN = "prelude/SATS/unsafe.sats"
+extern
+fun permutations_ats {n:nat}{ m : nat | m <= n } : (int(n), int(m)) -> Intinf =
+  "mac#"
 
-// See [here](http://mathworld.wolfram.com/Derangement.html)
-fn derangements {n : nat} .<n>. (n : int(n)) : Intinf =
-  let
-    fnx loop { n : nat | n > 1 }{ i : nat | i <= n } .<n-i>. (n : int(n), i : int(i), n1 : Intinf, n2 : Intinf) : Intinf =
-      if i < n then
-        let
-          var x = add_intinf0_intinf1(n2, n1)
-          var y = mul_intinf0_int(x, i)
-        in
-          loop(n, i + 1, y, n1)
-        end
-      else
-        let
-          var x = add_intinf0_intinf1(n2, n1)
-          val _ = intinf_free(n1)
-          var y = mul_intinf0_int(x, i)
-        in
-          y
-        end
-  in
-    case+ n of
-      | 0 => int2intinf(1)
-      | 1 =>> int2intinf(0)
-      | 2 =>> int2intinf(1)
-      | n =>> loop(n - 1, 2, int2intinf(1), int2intinf(0))
-  end
+extern
+fun double_factorial_ats {n:nat} : int(n) -> Intinf =
+  "mac#"
 
-fnx fact {n : nat} .<n>. (k : int(n)) : intinfGte(1) =
-  case+ k of
-    | 0 => int2intinf(1)
-    | 1 => int2intinf(1)
-    | k =>> $UN.castvwtp0(mul_intinf0_int(fact(k - 1), k))
+extern
+fun factorial_ats {n:nat} : int(n) -> Intinf =
+  "mac#"
 
-// Double factorial http://mathworld.wolfram.com/DoubleFactorial.html
-fnx dfact {n : nat} .<n>. (k : int(n)) : Intinf =
-  case+ k of
-    | 0 => int2intinf(1)
-    | 1 => int2intinf(1)
-    | k =>> let
-      var x = dfact(k - 2)
-      var y = mul_intinf0_int(x, k)
-    in
-      y
-    end
+extern
+fun catalan_ats {n:nat} : int(n) -> Intinf =
+  "mac#"
 
-// Number of permutations on n objects using k at a time.
-fn permutations {n : nat}{ k : nat | k <= n } (n : int(n), k : int(k)) : Intinf =
-  let
-    var x = fact(n)
-    var y = fact(n - k)
-    var z = div_intinf0_intinf1(x, y)
-    val _ = intinf_free(y)
-  in
-    z
-  end
+implement choose_ats (n, k) =
+  choose(n, k)
 
-// Catalan numbers, indexing starting at zero.
-fn catalan {n : nat} (n : int(n)) : Intinf =
-  let
-    fun numerator_loop { i : nat | i > 1 } .<i>. (i : int(i)) : [ n : nat | n > 0 ] intinf(n) =
-      case+ i of
-        | 2 => int2intinf(n + 2)
-        | i =>> let
-          var x = numerator_loop(i - 1)
-          var y = mul_intinf0_int(x, n + i)
-        in
-          $UN.castvwtp0(y)
-        end
-  in
-    case+ n of
-      | 0 => int2intinf(1)
-      | 1 => int2intinf(1)
-      | k =>> let
-        var x = numerator_loop(k)
-        var y = fact(k)
-        var z = div_intinf0_intinf1(x, y)
-        val _ = intinf_free(y)
-      in
-        $UN.castvwtp0(z)
-      end
-  end
+implement permutations_ats (n, k) =
+  choose(n, k)
 
-// Number of permutations on n objects using k at a time.
-fn choose {n : nat}{ m : nat | m <= n } (n : int(n), k : int(m)) : Intinf =
-  let
-    fun numerator_loop { m : nat | m > 1 } .<m>. (i : int(m)) : [ n : nat | n > 0 ] intinf(n) =
-      case+ i of
-        | 1 => int2intinf(n)
-        | 2 => $UN.castvwtp0(int2intinf((n - 1) * n))
-        | i =>> let
-          var x = numerator_loop(i - 1)
-          var y = mul_intinf0_int(x, n + 1 - i)
-        in
-          $UN.castvwtp0(y)
-        end
-  in
-    case+ k of
-      | 0 => int2intinf(1)
-      | 1 => int2intinf(n)
-      | k =>> let
-        var x = numerator_loop(k)
-        var y = fact(k)
-        var z = div_intinf0_intinf1(x, y)
-        val _ = intinf_free(y)
-      in
-        $UN.castvwtp0(z)
-      end
-  end
+implement double_factorial_ats (m) =
+  dfact(m)
+
+implement factorial_ats (m) =
+  fact(m)
+
+implement catalan_ats (n) =
+  catalan(n)
diff --git a/ats-src/number-theory-ffi.dats b/ats-src/number-theory-ffi.dats
deleted file mode 100644
--- a/ats-src/number-theory-ffi.dats
+++ /dev/null
@@ -1,46 +0,0 @@
-#include "share/atspre_staload.hats"
-#include "ats-src/number-theory.dats"
-
-#define ATS_MAINATSFLAG 1
-
-extern
-fun totient_ats { k : nat | k >= 2 } (int(k)) : int =
-  "mac#"
-
-extern
-fun count_divisors_ats { k : nat | k >= 2 } (int(k)) : int =
-  "mac#"
-
-extern
-fun little_omega_ats { n : nat | n > 0 } : int(n) -> int =
-  "mac#"
-
-extern
-fun sum_divisors_ats : { n : nat | n > 1 } int(n) -> int =
-  "mac#"
-
-extern
-fun jacobi_ats : (intGte(0), Odd) -> int =
-  "mac#"
-
-extern
-fun is_perfect_ats : intGt(1) -> bool =
-  "mac#"
-
-implement sum_divisors_ats (m) =
-  sum_divisors(m)
-
-implement count_divisors_ats (n) =
-  count_divisors(n)
-
-implement totient_ats (n) =
-  totient(n)
-
-implement little_omega_ats (n) =
-  little_omega(n)
-
-implement is_perfect_ats (n) =
-  is_perfect(n)
-
-implement jacobi_ats (m, n) =
-  jacobi(m, $UN.cast(n))
diff --git a/ats-src/number-theory-internal.dats b/ats-src/number-theory-internal.dats
new file mode 100644
--- /dev/null
+++ b/ats-src/number-theory-internal.dats
@@ -0,0 +1,251 @@
+#include "share/atspre_staload.hats"
+#include "ats-src/numerics-internal.dats"
+#include "contrib/atscntrb-hx-intinf/mylibies.hats"
+
+staload "prelude/SATS/integer.sats"
+staload UN = "prelude/SATS/unsafe.sats"
+staload "contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats"
+
+#define ATS_MAINATSFLAG 1
+
+// m | n
+fn divides(m : int, n : int) :<> bool =
+  n % m = 0
+
+fnx gcd {k : nat}{l : nat} (m : int(l), n : int(k)) : int =
+  if n > 0 then
+    gcd(n, witness(m % n))
+  else
+    m
+
+fn lcm {k : nat}{l : nat} (m : int(l), n : int(k)) : int =
+  (m / gcd(m, n)) * n
+
+// stream all divisors of an integer.
+fn divisors(n : intGte(1)) : stream_vt(int) =
+  case+ n of
+    | 1 => $ldelay(stream_vt_cons(1, $ldelay(stream_vt_nil)))
+    | _ => let
+      fun loop { k : nat | k > 0 }{ m : nat | m > 0 } (n : int(k), acc : int(m)) : stream_vt(int) =
+        if acc >= sqrt_int(n) then
+          if n % acc = 0 then
+            if n / acc != acc then
+              let
+                var x: int = n / acc
+              in
+                $ldelay(stream_vt_cons(acc, $ldelay(stream_vt_cons(x, $ldelay(stream_vt_nil)))))
+              end
+            else
+              let
+                
+              in
+                $ldelay(stream_vt_cons(acc, $ldelay(stream_vt_nil)))
+              end
+          else
+            $ldelay(stream_vt_nil)
+        else
+          if n % acc = 0 then
+            let
+              var x: int = n / acc
+            in
+              $ldelay(stream_vt_cons(acc, $ldelay(stream_vt_cons(x, (loop(n, acc + 1))))))
+            end
+          else
+            loop(n, acc + 1)
+    in
+      loop(n, 1)
+    end
+
+// prime divisors of an integer
+fn prime_divisors(n : intGte(1)) : stream_vt(int) =
+  stream_vt_filter_cloptr(divisors(n), lam x => is_prime($UN.cast(x)))
+
+fn div_gt_zero(n : intGte(0), p : intGt(1)) : intGte(0) =
+  $UN.cast(n / p)
+
+// FIXME require that it be prime.
+fun exp_mod_prime(a : intGte(0), n : intGte(0), p : intGt(1)) : int =
+  let
+    var a1 = a % p
+    var n1 = n % (p - 1)
+  in
+    case+ a of
+      | 0 => 0
+      | x =>> 
+        begin
+          if n > 0 then
+            let
+              var n2: intGte(0) = $UN.cast(half(n1))
+              var i2 = n1 % 2
+              var sq_a: intGte(0) = $UN.cast(a * a % p)
+            in
+              if i2 = 0 then
+                exp_mod_prime(sq_a, n2, p)
+              else
+                let
+                  var y = a * exp_mod_prime(sq_a, n2, p)
+                in
+                  y
+                end
+            end
+          else
+            1
+        end
+  end
+
+// Jacobi symbol for positive integers. See here: http://mathworld.wolfram.com/JacobiSymbol.html
+fun jacobi(a : intGte(0), n : Odd) : int =
+  let
+    fun legendre { p : int | p >= 2 } (a : intGte(0), p : int(p)) : intBtwe(~1, 1) =
+      case+ p % a of
+        | 0 => 0
+        | _ => let
+          var i = exp_mod_prime(a, (p - 1) / 2, p)
+        in
+          case+ i of
+            | i when i % (p - 1) = 0 => ~1
+            | i when i % p = 0 => 0
+            | _ => 1
+        end
+    
+    fun get_multiplicity(n : intGte(0), p : intGt(1)) : intGte(0) =
+      case+ n % p of
+        | 0 => 1 + get_multiplicity(div_gt_zero(n, p), p)
+        | _ => 0
+    
+    fun loop { m : int | m > 1 } (acc : int(m)) : int =
+      if acc > n then
+        1
+      else
+        if a % acc = 0 && is_prime(acc) then
+          loop(acc + 1) * exp(legendre(acc, n), get_multiplicity(a, acc))
+        else
+          loop(acc + 1)
+  in
+    loop(2)
+  end
+
+fn count_divisors(n : intGte(1)) : int =
+  stream_vt_length(divisors(n))
+
+vtypedef pair = @{ first = int, second = int }
+
+fn sum_divisors(n : intGte(1)) : int =
+  let
+    fun loop { k : nat | k > 0 }{ m : nat | m > 0 } (n : int(k), acc : int(m)) : int =
+      if acc >= sqrt_int(n) then
+        if n % acc = 0 then
+          if n / acc != acc then
+            let
+              var x: int = n / acc
+            in
+              acc + x
+            end
+          else
+            acc
+        else
+          0
+      else
+        if n % acc = 0 then
+          let
+            var x: int = n / acc
+          in
+            acc + x + loop(n, acc + 1)
+          end
+        else
+          loop(n, acc + 1)
+  in
+    loop(n, 1)
+  end
+
+fn is_perfect(n : intGt(1)) : bool =
+  sum_divisors(n) = n
+
+fun rip { n : nat | n > 0 }{ p : nat | p > 0 } .<n>. (n : int(n), p : int(p)) :<> [ r : nat | r <= n && r > 0 ] int(r) =
+  if n % p != 0 then
+    n
+  else
+    if n / p > 0 then
+      let
+        var n1 = n / p
+      in
+        if n1 < n then
+          $UN.cast(rip(n1, p))
+        else
+          1
+      end
+    else
+      1
+
+fun prime_factors(n : intGte(1)) : stream_vt(int) =
+  let
+    fun loop { k : nat | k > 0 }{ m : nat | m > 0 } (n : int(k), acc : int(m)) : stream_vt(int) =
+      if acc >= n then
+        if is_prime(n) then
+          $ldelay(stream_vt_cons(n, $ldelay(stream_vt_nil)))
+        else
+          $ldelay(stream_vt_nil)
+      else
+        if n % acc = 0 && is_prime(acc) then
+          if n / acc > 0 then
+            $ldelay(stream_vt_cons(acc, loop(rip(n, acc), 1)))
+          else
+            $ldelay(stream_vt_cons(acc, $ldelay(stream_vt_nil)))
+        else
+          loop(n, acc + 1)
+  in
+    loop(n, 1)
+  end
+
+// distinct prime divisors
+fn little_omega(n : intGte(1)) : int =
+  let
+    fun loop { k : nat | k > 0 }{ m : nat | m > 0 } (n : int(k), acc : int(m)) :<!ntm> int =
+      if acc >= n then
+        if is_prime(n) then
+          1
+        else
+          0
+      else
+        if n % acc = 0 && is_prime(acc) then
+          if n / acc > 0 then
+            1 + loop(rip(n, acc), 1)
+          else
+            1
+        else
+          loop(n, acc + 1)
+  in
+    loop(n, 1)
+  end
+
+// Euler's totient function.
+fn totient(n : intGte(1)) : int =
+  case+ n of
+    | 1 => 1
+    | n =>> let
+      fn adjust_contents(x : pair, y : int) : pair =
+        @{ first = g0int_mul(x.first, y - 1), second = g0int_mul(x.second, y) }
+      
+      var x: stream_vt(int) = prime_factors(n)
+      var empty_pair = @{ first = 1, second = 1 } : pair
+      var y = stream_vt_foldleft_cloptr(x, empty_pair, lam (acc, next) => adjust_contents(acc, next)) : pair
+    in
+      g0int_div(g0int_mul(n, y.first), y.second)
+    end
+
+// The sum of all φ(m) for m between 1 and n 
+fn totient_sum(n : intGte(1)) : Intinf =
+  let
+    fnx loop { n : nat | n >= 1 }{ m : nat | m >= n } .<m-n>. (i : int(n), bound : int(m)) : Intinf =
+      if i < bound then
+        let
+          var x = loop(i + 1, bound)
+          var y = add_intinf0_int(x, witness(totient(i)))
+        in
+          y
+        end
+      else
+        int2intinf(witness(totient(i)))
+  in
+    loop(1, n)
+  end
diff --git a/ats-src/number-theory.dats b/ats-src/number-theory.dats
--- a/ats-src/number-theory.dats
+++ b/ats-src/number-theory.dats
@@ -1,251 +1,46 @@
 #include "share/atspre_staload.hats"
-#include "ats-src/numerics.dats"
-#include "contrib/atscntrb-hx-intinf/mylibies.hats"
-
-staload "prelude/SATS/integer.sats"
-staload UN = "prelude/SATS/unsafe.sats"
-staload "contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats"
+#include "ats-src/number-theory-internal.dats"
 
 #define ATS_MAINATSFLAG 1
 
-// m | n
-fn divides(m : int, n : int) :<> bool =
-  n % m = 0
-
-fnx gcd {k : nat}{l : nat} (m : int(l), n : int(k)) : int =
-  if n > 0 then
-    gcd(n, witness(m % n))
-  else
-    m
-
-fn lcm {k : nat}{l : nat} (m : int(l), n : int(k)) : int =
-  (m / gcd(m, n)) * n
-
-// stream all divisors of an integer.
-fn divisors(n : intGte(1)) : stream_vt(int) =
-  case+ n of
-    | 1 => $ldelay(stream_vt_cons(1, $ldelay(stream_vt_nil)))
-    | _ => let
-      fun loop { k : nat | k > 0 }{ m : nat | m > 0 } (n : int(k), acc : int(m)) : stream_vt(int) =
-        if acc >= sqrt_int(n) then
-          if n % acc = 0 then
-            if n / acc != acc then
-              let
-                var x: int = n / acc
-              in
-                $ldelay(stream_vt_cons(acc, $ldelay(stream_vt_cons(x, $ldelay(stream_vt_nil)))))
-              end
-            else
-              let
-                
-              in
-                $ldelay(stream_vt_cons(acc, $ldelay(stream_vt_nil)))
-              end
-          else
-            $ldelay(stream_vt_nil)
-        else
-          if n % acc = 0 then
-            let
-              var x: int = n / acc
-            in
-              $ldelay(stream_vt_cons(acc, $ldelay(stream_vt_cons(x, (loop(n, acc + 1))))))
-            end
-          else
-            loop(n, acc + 1)
-    in
-      loop(n, 1)
-    end
-
-// prime divisors of an integer
-fn prime_divisors(n : intGte(1)) : stream_vt(int) =
-  stream_vt_filter_cloptr(divisors(n), lam x => is_prime($UN.cast(x)))
-
-fn div_gt_zero(n : intGte(0), p : intGt(1)) : intGte(0) =
-  $UN.cast(n / p)
+extern
+fun totient_ats { k : nat | k >= 2 } (int(k)) : int =
+  "mac#"
 
-// FIXME require that it be prime.
-fun exp_mod_prime(a : intGte(0), n : intGte(0), p : intGt(1)) : int =
-  let
-    var a1 = a % p
-    var n1 = n % (p - 1)
-  in
-    case+ a of
-      | 0 => 0
-      | x =>> 
-        begin
-          if n > 0 then
-            let
-              var n2: intGte(0) = $UN.cast(half(n1))
-              var i2 = n1 % 2
-              var sq_a: intGte(0) = $UN.cast(a * a % p)
-            in
-              if i2 = 0 then
-                exp_mod_prime(sq_a, n2, p)
-              else
-                let
-                  var y = a * exp_mod_prime(sq_a, n2, p)
-                in
-                  y
-                end
-            end
-          else
-            1
-        end
-  end
+extern
+fun count_divisors_ats { k : nat | k >= 2 } (int(k)) : int =
+  "mac#"
 
-// Jacobi symbol for positive integers. See here: http://mathworld.wolfram.com/JacobiSymbol.html
-fun jacobi(a : intGte(0), n : Odd) : int =
-  let
-    fun legendre { p : int | p >= 2 } (a : intGte(0), p : int(p)) : intBtwe(~1, 1) =
-      case+ p % a of
-        | 0 => 0
-        | _ => let
-          var i = exp_mod_prime(a, (p - 1) / 2, p)
-        in
-          case+ i of
-            | i when i % (p - 1) = 0 => ~1
-            | i when i % p = 0 => 0
-            | _ => 1
-        end
-    
-    fun get_multiplicity(n : intGte(0), p : intGt(1)) : intGte(0) =
-      case+ n % p of
-        | 0 => 1 + get_multiplicity(div_gt_zero(n, p), p)
-        | _ => 0
-    
-    fun loop { m : int | m > 1 } (acc : int(m)) : int =
-      if acc > n then
-        1
-      else
-        if a % acc = 0 && is_prime(acc) then
-          loop(acc + 1) * exp(legendre(acc, n), get_multiplicity(a, acc))
-        else
-          loop(acc + 1)
-  in
-    loop(2)
-  end
+extern
+fun little_omega_ats { n : nat | n > 0 } : int(n) -> int =
+  "mac#"
 
-fn count_divisors(n : intGte(1)) : int =
-  stream_vt_length(divisors(n))
+extern
+fun sum_divisors_ats : { n : nat | n > 1 } int(n) -> int =
+  "mac#"
 
-vtypedef pair = @{ first = int, second = int }
+extern
+fun jacobi_ats : (intGte(0), Odd) -> int =
+  "mac#"
 
-fn sum_divisors(n : intGt(1)) : int =
-  let
-    fun loop { k : nat | k > 0 }{ m : nat | m > 0 } (n : int(k), acc : int(m)) : int =
-      if acc >= sqrt_int(n) then
-        if n % acc = 0 then
-          if n / acc != acc then
-            let
-              var x: int = n / acc
-            in
-              acc + x
-            end
-          else
-            acc
-        else
-          0
-      else
-        if n % acc = 0 then
-          let
-            var x: int = n / acc
-          in
-            acc + x + loop(n, acc + 1)
-          end
-        else
-          loop(n, acc + 1)
-  in
-    loop(n, 1)
-  end
+extern
+fun is_perfect_ats : intGt(1) -> bool =
+  "mac#"
 
-fn is_perfect(n : intGt(1)) : bool =
-  sum_divisors(n) = n
+implement sum_divisors_ats (m) =
+  sum_divisors(m)
 
-fun rip { n : nat | n > 0 }{ p : nat | p > 0 } .<n>. (n : int(n), p : int(p)) :<> [ r : nat | r <= n && r > 0 ] int(r) =
-  if n % p != 0 then
-    n
-  else
-    if n / p > 0 then
-      let
-        var n1 = n / p
-      in
-        if n1 < n then
-          $UN.cast(rip(n1, p))
-        else
-          1
-      end
-    else
-      1
+implement count_divisors_ats (n) =
+  count_divisors(n)
 
-fun prime_factors(n : intGte(1)) : stream_vt(int) =
-  let
-    fun loop { k : nat | k > 0 }{ m : nat | m > 0 } (n : int(k), acc : int(m)) : stream_vt(int) =
-      if acc >= n then
-        if is_prime(n) then
-          $ldelay(stream_vt_cons(n, $ldelay(stream_vt_nil)))
-        else
-          $ldelay(stream_vt_nil)
-      else
-        if n % acc = 0 && is_prime(acc) then
-          if n / acc > 0 then
-            $ldelay(stream_vt_cons(acc, loop(rip(n, acc), 1)))
-          else
-            $ldelay(stream_vt_cons(acc, $ldelay(stream_vt_nil)))
-        else
-          loop(n, acc + 1)
-  in
-    loop(n, 1)
-  end
+implement totient_ats (n) =
+  totient(n)
 
-// distinct prime divisors
-fn little_omega(n : intGte(1)) : int =
-  let
-    fun loop { k : nat | k > 0 }{ m : nat | m > 0 } (n : int(k), acc : int(m)) :<!ntm> int =
-      if acc >= n then
-        if is_prime(n) then
-          1
-        else
-          0
-      else
-        if n % acc = 0 && is_prime(acc) then
-          if n / acc > 0 then
-            1 + loop(rip(n, acc), 1)
-          else
-            1
-        else
-          loop(n, acc + 1)
-  in
-    loop(n, 1)
-  end
+implement little_omega_ats (n) =
+  little_omega(n)
 
-// Euler's totient function.
-fn totient(n : intGte(1)) : int =
-  case+ n of
-    | 1 => 1
-    | n =>> let
-      fn adjust_contents(x : pair, y : int) : pair =
-        @{ first = g0int_mul(x.first, y - 1), second = g0int_mul(x.second, y) }
-      
-      var x: stream_vt(int) = prime_factors(n)
-      var empty_pair = @{ first = 1, second = 1 } : pair
-      var y = stream_vt_foldleft_cloptr(x, empty_pair, lam (acc, next) => adjust_contents(acc, next)) : pair
-    in
-      g0int_div(g0int_mul(n, y.first), y.second)
-    end
+implement is_perfect_ats (n) =
+  is_perfect(n)
 
-// The sum of all φ(m) for m between 1 and n 
-fn totient_sum(n : intGte(1)) : Intinf =
-  let
-    fnx loop { n : nat | n >= 1 }{ m : nat | m >= n } .<m-n>. (i : int(n), bound : int(m)) : Intinf =
-      if i < bound then
-        let
-          var x = loop(i + 1, bound)
-          var y = add_intinf0_int(x, witness(totient(i)))
-        in
-          y
-        end
-      else
-        int2intinf(witness(totient(i)))
-  in
-    loop(1, n)
-  end
+implement jacobi_ats (m, n) =
+  jacobi(m, $UN.cast(n))
diff --git a/ats-src/numerics-ffi.dats b/ats-src/numerics-ffi.dats
deleted file mode 100644
--- a/ats-src/numerics-ffi.dats
+++ /dev/null
@@ -1,28 +0,0 @@
-#define ATS_MAINATSFLAG 1
-
-#include "share/atspre_staload.hats"
-#include "ats-src/numerics.dats"
-#include "contrib/atscntrb-hx-intinf/mylibies.hats"
-
-staload "contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats"
-
-extern
-fun is_prime_ats { n : nat | n > 0 } : int(n) -> bool =
-  "mac#"
-
-extern
-fun exp_ats {m : nat} : ([ n : nat ] int(n), int(m)) -> int =
-  "mac#"
-
-extern
-fun fib_ats : intGte(0) -> Intinf =
-  "mac#"
-
-implement is_prime_ats (n) =
-  is_prime(n)
-
-implement exp_ats (m, n) =
-  exp(m, n)
-
-implement fib_ats (m) =
-  fib_gmp(m)
diff --git a/ats-src/numerics-internal.dats b/ats-src/numerics-internal.dats
new file mode 100644
--- /dev/null
+++ b/ats-src/numerics-internal.dats
@@ -0,0 +1,92 @@
+#define ATS_MAINATSFLAG 1
+
+#define ATS_EXTERN_PREFIX "atscntrb_gmp_"
+
+#define ATS_EXTERN_STATIC "_atscntrb_gmp_"
+
+#include "share/atspre_staload.hats"
+#include "contrib/atscntrb-hx-intinf/mylibies.hats"
+#include "contrib/atscntrb-libgmp/mylibies.hats"
+
+staload "contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats"
+staload "libats/libc/SATS/math.sats"
+staload UN = "prelude/SATS/unsafe.sats"
+
+// Existential types for even and odd numbers. These are only usable with the
+// ATS library.
+typedef Even = [ n : nat ] int(2*n)
+typedef Odd = [ n : nat ] int(2*n+1)
+typedef gprime(tk : tk, p : int) = { m, n : nat | m < 1 && m <= n && n < p && m*n != p && p > 1 } g1int(tk, p)
+typedef prime(p : int) = gprime(int_kind, p)
+typedef Prime = [ p : nat ] prime(p)
+
+fn witness(n : int) :<> [ m : nat ] int(m) =
+  $UN.cast(n)
+
+// Fast computation of Fibonacci numbers via GMP bindings.
+fun fib_gmp(n : intGte(0)) : Intinf =
+  let
+    var z = ptr_alloc()
+    var x: ulint = g0int2uint_int_ulint(n + 1)
+    val () = $GMP.mpz_init(!(z.2))
+    val () = $GMP.mpz_fib_uint(!(z.2), x)
+  in
+    $UN.castvwtp0(z)
+  end
+
+// Fast integer exponentiation. Modified from an example in the manual.
+fun exp {n : nat} .<n>. (x : int, n : int(n)) : int =
+  case+ x of
+    | 0 => 0
+    | x =>> 
+      begin
+        if n > 0 then
+          let
+            var n2 = half(n)
+            var i2 = n % 2
+          in
+            if i2 = 0 then
+              exp(x * x, n2)
+            else
+              let
+                var y = x * exp(x * x, n2)
+              in
+                y
+              end
+          end
+        else
+          1
+      end
+
+fn sqrt_int(k : intGt(0)) :<> [ m : nat ] int(m) =
+  let
+    var bound: int = g0float2int(sqrt_float(g0int2float(k)))
+  in
+    witness(bound)
+  end
+
+// function to check primality
+fn is_prime(k : intGt(0)) :<> bool =
+  case+ k of
+    | 1 => false
+    | k => 
+      begin
+        let
+          fnx loop {n : nat}{m : nat} .<max(0,m-n)>. (i : int(n), bound : int(m)) :<> bool =
+            if i < bound then
+              if k % i = 0 then
+                false
+              else
+                loop(i + 1, bound)
+            else
+              if i = bound then
+                if k % i = 0 then
+                  false
+                else
+                  true
+              else
+                true
+        in
+          loop(2, sqrt_int(k))
+        end
+      end
diff --git a/ats-src/numerics.dats b/ats-src/numerics.dats
--- a/ats-src/numerics.dats
+++ b/ats-src/numerics.dats
@@ -1,92 +1,28 @@
 #define ATS_MAINATSFLAG 1
 
-#define ATS_EXTERN_PREFIX "atscntrb_gmp_"
-
-#define ATS_EXTERN_STATIC "_atscntrb_gmp_"
-
 #include "share/atspre_staload.hats"
+#include "ats-src/numerics-internal.dats"
 #include "contrib/atscntrb-hx-intinf/mylibies.hats"
-#include "contrib/atscntrb-libgmp/mylibies.hats"
 
 staload "contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats"
-staload "libats/libc/SATS/math.sats"
-staload UN = "prelude/SATS/unsafe.sats"
 
-// Existential types for even and odd numbers. These are only usable with the
-// ATS library.
-typedef Even = [ n : nat ] int(2*n)
-typedef Odd = [ n : nat ] int(2*n+1)
-typedef gprime(tk : tk, p : int) = { m, n : nat | m < 1 && m <= n && n < p && m*n != p && p > 1 } g1int(tk, p)
-typedef prime(p : int) = gprime(int_kind, p)
-typedef Prime = [ p : nat ] prime(p)
+extern
+fun is_prime_ats { n : nat | n > 0 } : int(n) -> bool =
+  "mac#"
 
-fn witness(n : int) :<> [ m : nat ] int(m) =
-  $UN.cast(n)
+extern
+fun exp_ats {m:nat} : ([n:nat] int(n), int(m)) -> int =
+  "mac#"
 
-// Fast computation of Fibonacci numbers via GMP bindings.
-fun fib_gmp(n : intGte(0)) : Intinf =
-  let
-    var z = ptr_alloc()
-    var x: ulint = g0int2uint_int_ulint(n + 1)
-    val () = $GMP.mpz_init(!(z.2))
-    val () = $GMP.mpz_fib_uint(!(z.2), x)
-  in
-    $UN.castvwtp0(z)
-  end
+extern
+fun fib_ats : intGte(0) -> Intinf =
+  "mac#"
 
-// Fast integer exponentiation. Modified from an example in the manual.
-fun exp {n : nat} .<n>. (x : int, n : int(n)) : int =
-  case+ x of
-    | 0 => 0
-    | x =>> 
-      begin
-        if n > 0 then
-          let
-            var n2 = half(n)
-            var i2 = n % 2
-          in
-            if i2 = 0 then
-              exp(x * x, n2)
-            else
-              let
-                var y = x * exp(x * x, n2)
-              in
-                y
-              end
-          end
-        else
-          1
-      end
+implement is_prime_ats (n) =
+  is_prime(n)
 
-fn sqrt_int(k : intGt(0)) :<> [ m : nat ] int(m) =
-  let
-    var bound: int = g0float2int(sqrt_float(g0int2float(k)))
-  in
-    witness(bound)
-  end
+implement exp_ats (m, n) =
+  exp(m, n)
 
-// function to check primality
-fn is_prime(k : intGt(0)) :<> bool =
-  case+ k of
-    | 1 => false
-    | k => 
-      begin
-        let
-          fnx loop {n : nat}{m : nat} .<max(0,m-n)>. (i : int(n), bound : int(m)) :<> bool =
-            if i < bound then
-              if k % i = 0 then
-                false
-              else
-                loop(i + 1, bound)
-            else
-              if i = bound then
-                if k % i = 0 then
-                  false
-                else
-                  true
-              else
-                true
-        in
-          loop(2, sqrt_int(k))
-        end
-      end
+implement fib_ats (m) =
+  fib_gmp(m)
diff --git a/atspkg.dhall b/atspkg.dhall
new file mode 100644
--- /dev/null
+++ b/atspkg.dhall
@@ -0,0 +1,11 @@
+let pkg = https://raw.githubusercontent.com/vmchale/atspkg/master/pkgs/default.dhall
+
+in pkg //
+  { compiler = [0,3,8]
+  , version = [0,3,9]
+  , dependencies = [ https://raw.githubusercontent.com/vmchale/atspkg/master/pkgs/atscntrb-hx-intinf-1.0.6.dhall
+                   , https://raw.githubusercontent.com/vmchale/atspkg/master/pkgs/atscntrb-libgmp-1.0.4.dhall
+                   ]
+  , atsSource = [ "ats-src/combinatorics.dats", "ats-src/number-theory.dats", "ats-src/numerics.dats" ]
+  , cDir = "cbits"
+  }
diff --git a/cbits/combinatorics.c b/cbits/combinatorics.c
--- a/cbits/combinatorics.c
+++ b/cbits/combinatorics.c
@@ -1,5078 +1,5078 @@
 /*
 **
 ** The C code is generated by [ATS/Postiats-0-3-8]
-** The starting compilation time is: 2018-1-15: 14h:59m
-**
-*/
-
-/*
-** 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)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/basics.dats: 1636(line=50, offs=1) -- 1675(line=50, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 1533(line=44, offs=1) -- 1572(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_long.dats: 1602(line=49, offs=1) -- 1641(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_size.dats: 1597(line=49, offs=1) -- 1636(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_short.dats: 1603(line=49, offs=1) -- 1642(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/char.dats: 1610(line=48, offs=1) -- 1649(line=48, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/float.dats: 1636(line=50, offs=1) -- 1675(line=50, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/string.dats: 1631(line=50, offs=1) -- 1670(line=50, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/strptr.dats: 1629(line=50, offs=1) -- 1668(line=50, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/strptr.dats: 1691(line=54, offs=1) -- 1738(line=54, offs=48)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_ptr.dats: 1601(line=49, offs=1) -- 1640(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_fixed.dats: 1603(line=49, offs=1) -- 1642(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/memory.dats: 1410(line=38, offs=1) -- 1449(line=39, offs=32)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 1613(line=49, offs=1) -- 1652(line=50, offs=32)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 1675(line=54, offs=1) -- 1721(line=55, offs=39)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 1744(line=59, offs=1) -- 1789(line=60, offs=38)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/stdio.sats: 1390(line=36, offs=1) -- 1437(line=39, offs=3)
-*/
-
-#include \
-"libats/libc/CATS/stdio.cats"
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/stdio.sats: 1950(line=69, offs=1) -- 1999(line=71, offs=34)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
-*/
-
-#include \
-"libats/libc/CATS/sys/types.cats"
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 1871(line=66, offs=1) -- 1918(line=66, offs=48)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/stat.sats: 1390(line=36, offs=1) -- 1440(line=39, offs=3)
-*/
-
-#include \
-"libats/libc/CATS/sys/stat.cats"
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/stat.sats: 1756(line=58, offs=1) -- 1805(line=60, offs=34)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
-*/
-
-#include \
-"libats/libc/CATS/sys/types.cats"
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 15529(line=878, offs=1) -- 15566(line=879, offs=30)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/stdio.sats: 1390(line=36, offs=1) -- 1437(line=39, offs=3)
-*/
-
-#include \
-"libats/libc/CATS/stdio.cats"
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/stdio.sats: 1950(line=69, offs=1) -- 1999(line=71, offs=34)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
-*/
-
-#include \
-"libats/libc/CATS/sys/types.cats"
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/list.dats: 1529(line=44, offs=1) -- 1568(line=45, offs=32)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/list.dats: 1569(line=46, offs=1) -- 1615(line=47, offs=39)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/list_vt.dats: 1538(line=44, offs=1) -- 1577(line=45, offs=32)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/list_vt.dats: 1578(line=46, offs=1) -- 1624(line=47, offs=39)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/SHARE/list_vt_mergesort.dats: 1546(line=44, offs=1) -- 1585(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/SHARE/list_vt_quicksort.dats: 1546(line=44, offs=1) -- 1585(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/array.dats: 1534(line=44, offs=1) -- 1573(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/array.dats: 1574(line=45, offs=1) -- 1616(line=45, offs=43)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/SHARE/array_bsearch.dats: 1531(line=44, offs=1) -- 1570(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/SHARE/array_quicksort.dats: 1531(line=44, offs=1) -- 1570(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/arrayptr.dats: 1532(line=44, offs=1) -- 1571(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/arrayref.dats: 1532(line=44, offs=1) -- 1571(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/matrix.dats: 1535(line=44, offs=1) -- 1574(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/matrixptr.dats: 1538(line=44, offs=1) -- 1577(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/matrixref.dats: 1538(line=44, offs=1) -- 1577(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream.dats: 1523(line=44, offs=1) -- 1562(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 1523(line=44, offs=1) -- 1562(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/tostring.dats: 1528(line=44, offs=1) -- 1567(line=45, offs=32)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/checkast.dats: 1531(line=44, offs=1) -- 1570(line=45, offs=32)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1660(line=37, offs=1) -- 1700(line=38, offs=27)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1727(line=42, offs=1) -- 1759(line=42, offs=33)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1833(line=49, offs=1) -- 1867(line=49, offs=35)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1868(line=50, offs=1) -- 1908(line=50, offs=41)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1656(line=37, offs=1) -- 1696(line=39, offs=27)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/mydepies.hats: 192(line=16, offs=1) -- 232(line=16, offs=41)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1233(line=43, offs=3)
-*/
-
-//
-#include \
-"atscntrb-libgmp/CATS/gmp.cats"
-//
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1813(line=49, offs=1) -- 1845(line=49, offs=33)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1846(line=50, offs=1) -- 1881(line=50, offs=36)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1657(line=37, offs=1) -- 1689(line=37, offs=33)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1690(line=38, offs=1) -- 1724(line=38, offs=35)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/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/fast-arithmetic/ats-src/combinatorics-ffi.dats: 77(line=4, offs=1) -- 216(line=8, offs=3)
-*/
-ATSextcode_beg()
-#define ATS_MEMALLOC_LIBC
-#include "ccomp/runtime/pats_ccomp_memalloc_libc.h"
-#include "ccomp/runtime/pats_ccomp_runtime_memalloc.c"
-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_g1int2int_int_int)
-ATSdyncst_mac(atspre_g1int_lt_int)
-ATSdyncst_mac(atscntrb_gmp_mpz_add2_mpz)
-ATSdyncst_mac(atscntrb_gmp_mpz_mul2_int)
-ATSdyncst_mac(atspre_g1int_add_int)
-ATSdyncst_mac(atscntrb_gmp_mpz_clear)
-ATSdyncst_mac(atspre_ptr_free)
-ATSdyncst_mac(atscntrb_gmp_mpz_init_set_int)
-ATSdyncst_mac(atspre_ptr_alloc_tsz)
-ATSdyncst_mac(atspre_g1int_sub_int)
-ATSdyncst_mac(atscntrb_gmp_mpz_tdiv2_q_mpz)
-ATSdyncst_mac(atspre_g1int_mul_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)
-derangements_0(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-loop_1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_type(atstype_ptrk), atstkind_type(atstype_ptrk)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__lt_g1int_int__2(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__2__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6(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__add_intinf0_intinf1__6__1(atstkind_type(atstype_ptrk), atsrefarg0_type(atstkind_type(atstype_ptrk))) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
-#endif // end of [QUALIFIED]
-#endif // end of [TEMPLATE]
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__1(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6__2(atstkind_type(atstype_ptrk), atsrefarg0_type(atstkind_type(atstype_ptrk))) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atsvoid_t0ype
-ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12(atstkind_type(atstype_ptrk)) ;
-#endif // end of [QUALIFIED]
-#endif // end of [TEMPLATE]
-
-ATSstatic()
-atsvoid_t0ype
-ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__1(atstkind_type(atstype_ptrk)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__2(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15(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__15__1(atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17() ;
-#endif // end of [QUALIFIED]
-#endif // end of [TEMPLATE]
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__1() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__2(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__2() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__3(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__3() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__4(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__4() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__5(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__5() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-fact_28(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__6(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__6() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__7(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__7() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__3(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-dfact_34(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__8(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__8() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__9(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__9() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__4(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-permutations_40(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41(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__div_intinf0_intinf1__41__1(atstkind_type(atstype_ptrk), atsrefarg0_type(atstkind_type(atstype_ptrk))) ;
-
-ATSstatic()
-atsvoid_t0ype
-ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__2(atstkind_type(atstype_ptrk)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-catalan_44(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-numerator_loop_45(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__10(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__10() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__5(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__11(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__11() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__12(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__12() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__2(atstkind_type(atstype_ptrk), atsrefarg0_type(atstkind_type(atstype_ptrk))) ;
-
-ATSstatic()
-atsvoid_t0ype
-ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__3(atstkind_type(atstype_ptrk)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-choose_55(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-numerator_loop_56(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__13(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__13() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__14(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__14() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__6(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__15(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__15() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__16(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__16() ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__3(atstkind_type(atstype_ptrk), atsrefarg0_type(atstkind_type(atstype_ptrk))) ;
-
-ATSstatic()
-atsvoid_t0ype
-ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__4(atstkind_type(atstype_ptrk)) ;
-
-#if(0)
-ATSextern()
-atstkind_type(atstype_ptrk)
-choose_ats(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-#endif // end of [QUALIFIED]
-
-#if(0)
-ATSextern()
-atstkind_type(atstype_ptrk)
-permutations_ats(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-#endif // end of [QUALIFIED]
-
-#if(0)
-ATSextern()
-atstkind_type(atstype_ptrk)
-double_factorial_ats(atstkind_t0ype(atstype_int)) ;
-#endif // end of [QUALIFIED]
-
-#if(0)
-ATSextern()
-atstkind_type(atstype_ptrk)
-factorial_ats(atstkind_t0ype(atstype_int)) ;
-#endif // end of [QUALIFIED]
-
-#if(0)
-ATSextern()
-atstkind_type(atstype_ptrk)
-catalan_ats(atstkind_t0ype(atstype_int)) ;
-#endif // end of [QUALIFIED]
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 280(line=10, offs=4) -- 980(line=34, offs=6)
-*/
-/*
-local: 
-global: derangements_0$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-derangements_0(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret0, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp45, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp46, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp51, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 280(line=10, offs=4) -- 980(line=34, offs=6)
-*/
-ATSINSflab(__patsflab_derangements_0):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 335(line=11, offs=3) -- 980(line=34, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 822(line=29, offs=5) -- 974(line=33, offs=59)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 841(line=30, offs=9) -- 842(line=30, offs=10)
-*/
-ATSINSlab(__atstmplab0):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 310(line=10, offs=34) -- 311(line=10, offs=35)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(0))) { ATSINSgoto(__atstmplab2) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 842(line=30, offs=10) -- 842(line=30, offs=10)
-*/
-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/fast-arithmetic/ats-src/combinatorics.dats: 846(line=30, offs=14) -- 859(line=30, offs=27)
-*/
-ATSINSmove(tmpret0, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__1(ATSPMVi0nt(1))) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 868(line=31, offs=9) -- 869(line=31, offs=10)
-*/
-ATSINSlab(__atstmplab2):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 310(line=10, offs=34) -- 311(line=10, offs=35)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab4) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 869(line=31, offs=10) -- 869(line=31, offs=10)
-*/
-ATSINSlab(__atstmplab3):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 874(line=31, offs=15) -- 887(line=31, offs=28)
-*/
-ATSINSmove(tmpret0, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__2(ATSPMVi0nt(0))) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 896(line=32, offs=9) -- 897(line=32, offs=10)
-*/
-ATSINSlab(__atstmplab4):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 310(line=10, offs=34) -- 311(line=10, offs=35)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(2))) { ATSINSgoto(__atstmplab6) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 897(line=32, offs=10) -- 897(line=32, offs=10)
-*/
-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/fast-arithmetic/ats-src/combinatorics.dats: 902(line=32, offs=15) -- 915(line=32, offs=28)
-*/
-ATSINSmove(tmpret0, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__3(ATSPMVi0nt(1))) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 925(line=33, offs=10) -- 925(line=33, offs=10)
-*/
-ATSINSlab(__atstmplab6):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 935(line=33, offs=20) -- 940(line=33, offs=25)
-*/
-ATSINSmove(tmp45, atspre_g1int_sub_int(arg0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 945(line=33, offs=30) -- 958(line=33, offs=43)
-*/
-ATSINSmove(tmp46, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__4(ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 960(line=33, offs=45) -- 973(line=33, offs=58)
-*/
-ATSINSmove(tmp51, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__5(ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 930(line=33, offs=15) -- 974(line=33, offs=59)
-*/
-ATSINSmove(tmpret0, loop_1(tmp45, ATSPMVi0nt(2), tmp46, tmp51)) ;
-
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 335(line=11, offs=3) -- 980(line=34, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret0) ;
-} /* end of [derangements_0] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 347(line=12, offs=9) -- 812(line=27, offs=12)
-*/
-/*
-local: loop_1$0(level=1)
-global: loop_1$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-loop_1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1, atstkind_type(atstype_ptrk) arg2, atstkind_type(atstype_ptrk) arg3)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(apy0, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(apy1, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(apy2, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(apy3, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmpret1, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp2, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmpref7, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmpref12, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp17, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref18, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp21) ;
-ATStmpdec(tmpref26, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-/*
-emit_funent_fnxdeclst:
-*/
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 347(line=12, offs=9) -- 812(line=27, offs=12)
-*/
-ATSINSflab(__patsflab_loop_1):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 471(line=13, offs=10) -- 476(line=13, offs=15)
-*/
-ATSINSmove(tmp2, ATSLIB_056_prelude__lt_g1int_int__2__1(arg1, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 468(line=13, offs=7) -- 812(line=27, offs=12)
-*/
-ATSif(
-tmp2
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 490(line=14, offs=9) -- 634(line=19, offs=12)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 508(line=15, offs=15) -- 509(line=15, offs=16)
-*/
-/*
-ATSINStmpdec(tmpref7) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 512(line=15, offs=19) -- 539(line=15, offs=46)
-*/
-ATSINSmove(tmpref7, ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6__1(arg3, ATSPMVrefarg0(arg2))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 554(line=16, offs=15) -- 555(line=16, offs=16)
-*/
-/*
-ATSINStmpdec(tmpref12) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 558(line=16, offs=19) -- 579(line=16, offs=40)
-*/
-ATSINSmove(tmpref12, ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__1(tmpref7, arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 609(line=18, offs=19) -- 614(line=18, offs=24)
-*/
-ATSINSmove(tmp17, atspre_g1int_add_int(arg1, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 601(line=18, offs=11) -- 622(line=18, offs=32)
-*/
-ATStailcal_beg()
-ATSINSmove_tlcal(apy0, arg0) ;
-ATSINSmove_tlcal(apy1, tmp17) ;
-ATSINSmove_tlcal(apy2, tmpref12) ;
-ATSINSmove_tlcal(apy3, arg2) ;
-ATSINSargmove_tlcal(arg0, apy0) ;
-ATSINSargmove_tlcal(arg1, apy1) ;
-ATSINSargmove_tlcal(arg2, apy2) ;
-ATSINSargmove_tlcal(arg3, apy3) ;
-ATSINSfgoto(__patsflab_loop_1) ;
-ATStailcal_end()
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 490(line=14, offs=9) -- 634(line=19, offs=12)
-*/
-/*
-INSletpop()
-*/
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 654(line=21, offs=9) -- 812(line=27, offs=12)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 672(line=22, offs=15) -- 673(line=22, offs=16)
-*/
-/*
-ATSINStmpdec(tmpref18) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 676(line=22, offs=19) -- 703(line=22, offs=46)
-*/
-ATSINSmove(tmpref18, ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6__2(arg3, ATSPMVrefarg0(arg2))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 722(line=23, offs=19) -- 736(line=23, offs=33)
-*/
-ATSINSmove_void(tmp21, ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__1(arg2)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 752(line=24, offs=15) -- 753(line=24, offs=16)
-*/
-/*
-ATSINStmpdec(tmpref26) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 756(line=24, offs=19) -- 777(line=24, offs=40)
-*/
-ATSINSmove(tmpref26, ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__2(tmpref18, arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 799(line=26, offs=11) -- 800(line=26, offs=12)
-*/
-ATSINSmove(tmpret1, tmpref26) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 654(line=21, offs=9) -- 812(line=27, offs=12)
-*/
-/*
-INSletpop()
-*/
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret1) ;
-/*
-emit_funent_fnxbodylst:
-*/
-} /* end of [loop_1] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
-*/
-/*
-local: 
-global: lt_g1int_int$2$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = tk(4697)
-tmparg = S2Evar(tk(4697))
-tmpsub = None()
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__lt_g1int_int__2(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret3, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp4, atstkind_t0ype(atstyvar_type(tk))) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
-*/
-ATSINSmove(tmp4, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4697))>)(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
-*/
-ATSINSmove(tmpret3, PMVtmpltcst(g1int_lt<S2Evar(tk(4697))>)(arg0, tmp4)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret3) ;
-} /* end of [ATSLIB_056_prelude__lt_g1int_int__2] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
-*/
-/*
-local: 
-global: lt_g1int_int$2$1(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4697)
-tmparg = S2Evar(tk(4697))
-tmpsub = Some(tk(4697) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__lt_g1int_int__2__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret3__1, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp4__1, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
-*/
-ATSINSmove(tmp4__1, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
-*/
-ATSINSmove(tmpret3__1, atspre_g1int_lt_int(arg0, tmp4__1)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret3__1) ;
-} /* end of [ATSLIB_056_prelude__lt_g1int_int__2__1] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5514(line=298, offs=3) -- 5585(line=303, offs=2)
-*/
-/*
-local: 
-global: add_intinf0_intinf1$6$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = 
-tmparg = 
-tmpsub = None()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret8, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp9) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5492(line=297, offs=1) -- 5585(line=303, offs=2)
-*/
-ATSINSflab(__patsflab_add_intinf0_intinf1):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5523(line=298, offs=12) -- 5585(line=303, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5547(line=301, offs=10) -- 5580(line=301, offs=43)
-*/
-ATSINSmove_void(tmp9, atscntrb_gmp_mpz_add2_mpz(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg1, atstkind_type(atstype_ptrk), atslab__2)))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5524(line=298, offs=13) -- 5525(line=298, offs=14)
-*/
-ATSINSmove(tmpret8, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5523(line=298, offs=12) -- 5585(line=303, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret8) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5514(line=298, offs=3) -- 5585(line=303, offs=2)
-*/
-/*
-local: 
-global: add_intinf0_intinf1$6$1(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6__1(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret8__1, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp9__1) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5492(line=297, offs=1) -- 5585(line=303, offs=2)
-*/
-ATSINSflab(__patsflab_add_intinf0_intinf1):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5523(line=298, offs=12) -- 5585(line=303, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5547(line=301, offs=10) -- 5580(line=301, offs=43)
-*/
-ATSINSmove_void(tmp9__1, atscntrb_gmp_mpz_add2_mpz(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg1, atstkind_type(atstype_ptrk), atslab__2)))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5524(line=298, offs=13) -- 5525(line=298, offs=14)
-*/
-ATSINSmove(tmpret8__1, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5523(line=298, offs=12) -- 5585(line=303, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret8__1) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6__1] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7394(line=413, offs=3) -- 7461(line=418, offs=2)
-*/
-/*
-local: 
-global: mul_intinf0_int$8$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = 
-tmparg = 
-tmpsub = None()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret13, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp14) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7376(line=412, offs=1) -- 7461(line=418, offs=2)
-*/
-ATSINSflab(__patsflab_mul_intinf0_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7427(line=416, offs=10) -- 7456(line=416, offs=39)
-*/
-ATSINSmove_void(tmp14, atscntrb_gmp_mpz_mul2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7404(line=413, offs=13) -- 7405(line=413, offs=14)
-*/
-ATSINSmove(tmpret13, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret13) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7394(line=413, offs=3) -- 7461(line=418, offs=2)
-*/
-/*
-local: 
-global: mul_intinf0_int$8$1(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__1(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret13__1, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp14__1) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7376(line=412, offs=1) -- 7461(line=418, offs=2)
-*/
-ATSINSflab(__patsflab_mul_intinf0_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7427(line=416, offs=10) -- 7456(line=416, offs=39)
-*/
-ATSINSmove_void(tmp14__1, atscntrb_gmp_mpz_mul2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7404(line=413, offs=13) -- 7405(line=413, offs=14)
-*/
-ATSINSmove(tmpret13__1, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret13__1) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__1] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5514(line=298, offs=3) -- 5585(line=303, offs=2)
-*/
-/*
-local: 
-global: add_intinf0_intinf1$6$2(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6__2(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret8__2, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp9__2) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5492(line=297, offs=1) -- 5585(line=303, offs=2)
-*/
-ATSINSflab(__patsflab_add_intinf0_intinf1):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5523(line=298, offs=12) -- 5585(line=303, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5547(line=301, offs=10) -- 5580(line=301, offs=43)
-*/
-ATSINSmove_void(tmp9__2, atscntrb_gmp_mpz_add2_mpz(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg1, atstkind_type(atstype_ptrk), atslab__2)))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5524(line=298, offs=13) -- 5525(line=298, offs=14)
-*/
-ATSINSmove(tmpret8__2, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5523(line=298, offs=12) -- 5585(line=303, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret8__2) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6__2] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2888(line=119, offs=12) -- 2987(line=122, offs=4)
-*/
-/*
-local: 
-global: intinf_free$12$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = 
-tmparg = 
-tmpsub = None()
-*/
-atsvoid_t0ype
-ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12(atstkind_type(atstype_ptrk) arg0)
-{
-/* tmpvardeclst(beg) */
-// ATStmpdec_void(tmpret22) ;
-// ATStmpdec_void(tmp23) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
-*/
-/*
-letpush(beg)
-*/
-/* (*nothing*) */
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2936(line=121, offs=12) -- 2955(line=121, offs=31)
-*/
-ATSINSmove_void(tmp23, atscntrb_gmp_mpz_clear(ATSPMVrefarg1(arg0))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2959(line=121, offs=35) -- 2983(line=121, offs=59)
-*/
-ATSINSmove_void(tmpret22, atspre_ptr_free(arg0)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn_void(tmpret22) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2888(line=119, offs=12) -- 2987(line=122, offs=4)
-*/
-/*
-local: 
-global: intinf_free$12$1(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atsvoid_t0ype
-ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__1(atstkind_type(atstype_ptrk) arg0)
-{
-/* tmpvardeclst(beg) */
-// ATStmpdec_void(tmpret22__1) ;
-// ATStmpdec_void(tmp23__1) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
-*/
-/*
-letpush(beg)
-*/
-/* (*nothing*) */
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2936(line=121, offs=12) -- 2955(line=121, offs=31)
-*/
-ATSINSmove_void(tmp23__1, atscntrb_gmp_mpz_clear(ATSPMVrefarg1(arg0))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2959(line=121, offs=35) -- 2983(line=121, offs=59)
-*/
-ATSINSmove_void(tmpret22__1, atspre_ptr_free(arg0)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn_void(tmpret22__1) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__1] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7394(line=413, offs=3) -- 7461(line=418, offs=2)
-*/
-/*
-local: 
-global: mul_intinf0_int$8$2(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__2(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret13__2, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp14__2) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7376(line=412, offs=1) -- 7461(line=418, offs=2)
-*/
-ATSINSflab(__patsflab_mul_intinf0_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7427(line=416, offs=10) -- 7456(line=416, offs=39)
-*/
-ATSINSmove_void(tmp14__2, atscntrb_gmp_mpz_mul2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7404(line=413, offs=13) -- 7405(line=413, offs=14)
-*/
-ATSINSmove(tmpret13__2, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret13__2) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__2] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = 
-tmparg = 
-tmpsub = None()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30, PMVtmpltcst(ptr_alloc<S2Ecst(mpz_vt0ype)>)()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29, tmp30) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$1(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__1(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__1, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__1, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__1) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__1, ATSLIB_056_prelude__ptr_alloc__17__1()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__1, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__1, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__1, tmp30__1) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__1) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__1] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = None()
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35, atspre_ptr_alloc_tsz(ATSPMVsizeof(atstyvar_type(a)))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$1(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__1()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__1, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__1, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__1) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__1] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$2(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__2(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__2, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__2, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__2) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__2, ATSLIB_056_prelude__ptr_alloc__17__2()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__2, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__2, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__2, tmp30__2) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__2) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__2] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$2(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__2()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__2, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__2, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__2) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__2] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$3(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__3(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__3, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__3, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__3) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__3, ATSLIB_056_prelude__ptr_alloc__17__3()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__3, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__3, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__3, tmp30__3) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__3) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__3] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$3(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__3()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__3, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__3, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__3) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__3] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$4(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__4(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__4, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__4, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__4) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__4, ATSLIB_056_prelude__ptr_alloc__17__4()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__4, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__4, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__4, tmp30__4) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__4) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__4] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$4(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__4()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__4, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__4, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__4) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__4] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$5(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__5(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__5, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__5, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__5) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__5, ATSLIB_056_prelude__ptr_alloc__17__5()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__5, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__5, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__5, tmp30__5) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__5) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__5] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$5(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__5()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__5, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__5, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__5) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__5] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 986(line=36, offs=5) -- 1158(line=40, offs=59)
-*/
-/*
-local: fact_28$0(level=0)
-global: fact_28$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-fact_28(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(apy0, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpret56, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp65, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp68, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp69, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-/*
-emit_funent_fnxdeclst:
-*/
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 986(line=36, offs=5) -- 1158(line=40, offs=59)
-*/
-ATSINSflab(__patsflab_fact_28):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1039(line=37, offs=3) -- 1158(line=40, offs=59)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1056(line=38, offs=7) -- 1057(line=38, offs=8)
-*/
-ATSINSlab(__atstmplab7):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1008(line=36, offs=27) -- 1009(line=36, offs=28)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(0))) { ATSINSgoto(__atstmplab9) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1057(line=38, offs=8) -- 1057(line=38, 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/fast-arithmetic/ats-src/combinatorics.dats: 1061(line=38, offs=12) -- 1074(line=38, offs=25)
-*/
-ATSINSmove(tmpret56, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__6(ATSPMVi0nt(1))) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1081(line=39, offs=7) -- 1082(line=39, offs=8)
-*/
-ATSINSlab(__atstmplab9):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1008(line=36, offs=27) -- 1009(line=36, offs=28)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab11) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1082(line=39, offs=8) -- 1082(line=39, offs=8)
-*/
-ATSINSlab(__atstmplab10):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1086(line=39, offs=12) -- 1099(line=39, offs=25)
-*/
-ATSINSmove(tmpret56, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__7(ATSPMVi0nt(1))) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1107(line=40, offs=8) -- 1107(line=40, offs=8)
-*/
-ATSINSlab(__atstmplab11):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1147(line=40, offs=48) -- 1152(line=40, offs=53)
-*/
-ATSINSmove(tmp69, atspre_g1int_sub_int(arg0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1142(line=40, offs=43) -- 1153(line=40, offs=54)
-*/
-ATSINSmove(tmp68, fact_28(tmp69)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1126(line=40, offs=27) -- 1157(line=40, offs=58)
-*/
-ATSINSmove(tmp65, ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__3(tmp68, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1112(line=40, offs=13) -- 1158(line=40, offs=59)
-*/
-ATSINSmove(tmpret56, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmp65)) ;
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-ATSfunbody_end()
-ATSreturn(tmpret56) ;
-/*
-emit_funent_fnxbodylst:
-*/
-} /* end of [fact_28] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$6(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__6(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__6, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__6, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__6) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__6, ATSLIB_056_prelude__ptr_alloc__17__6()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__6, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__6, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__6, tmp30__6) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__6) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__6] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$6(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__6()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__6, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__6, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__6) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__6] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$7(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__7(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__7, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__7, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__7) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__7, ATSLIB_056_prelude__ptr_alloc__17__7()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__7, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__7, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__7, tmp30__7) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__7) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__7] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$7(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__7()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__7, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__7, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__7) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__7] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7394(line=413, offs=3) -- 7461(line=418, offs=2)
-*/
-/*
-local: 
-global: mul_intinf0_int$8$3(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__3(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret13__3, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp14__3) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7376(line=412, offs=1) -- 7461(line=418, offs=2)
-*/
-ATSINSflab(__patsflab_mul_intinf0_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7427(line=416, offs=10) -- 7456(line=416, offs=39)
-*/
-ATSINSmove_void(tmp14__3, atscntrb_gmp_mpz_mul2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7404(line=413, offs=13) -- 7405(line=413, offs=14)
-*/
-ATSINSmove(tmpret13__3, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret13__3) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__3] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1234(line=43, offs=5) -- 1444(line=52, offs=8)
-*/
-/*
-local: dfact_34$0(level=0)
-global: dfact_34$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-dfact_34(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(apy0, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpret70, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmpref79, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp80, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref81, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-/*
-emit_funent_fnxdeclst:
-*/
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1234(line=43, offs=5) -- 1444(line=52, offs=8)
-*/
-ATSINSflab(__patsflab_dfact_34):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1282(line=44, offs=3) -- 1444(line=52, offs=8)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1299(line=45, offs=7) -- 1300(line=45, offs=8)
-*/
-ATSINSlab(__atstmplab12):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1257(line=43, offs=28) -- 1258(line=43, offs=29)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(0))) { ATSINSgoto(__atstmplab14) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1300(line=45, offs=8) -- 1300(line=45, offs=8)
-*/
-ATSINSlab(__atstmplab13):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1304(line=45, offs=12) -- 1317(line=45, offs=25)
-*/
-ATSINSmove(tmpret70, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__8(ATSPMVi0nt(1))) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1324(line=46, offs=7) -- 1325(line=46, offs=8)
-*/
-ATSINSlab(__atstmplab14):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1257(line=43, offs=28) -- 1258(line=43, offs=29)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab16) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1325(line=46, offs=8) -- 1325(line=46, offs=8)
-*/
-ATSINSlab(__atstmplab15):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1329(line=46, offs=12) -- 1342(line=46, offs=25)
-*/
-ATSINSmove(tmpret70, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__9(ATSPMVi0nt(1))) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1350(line=47, offs=8) -- 1350(line=47, offs=8)
-*/
-ATSINSlab(__atstmplab16):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1355(line=47, offs=13) -- 1444(line=52, offs=8)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1369(line=48, offs=11) -- 1370(line=48, offs=12)
-*/
-/*
-ATSINStmpdec(tmpref79) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1379(line=48, offs=21) -- 1384(line=48, offs=26)
-*/
-ATSINSmove(tmp80, atspre_g1int_sub_int(arg0, ATSPMVi0nt(2))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1373(line=48, offs=15) -- 1385(line=48, offs=27)
-*/
-ATSINSmove(tmpref79, dfact_34(tmp80)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1396(line=49, offs=11) -- 1397(line=49, offs=12)
-*/
-/*
-ATSINStmpdec(tmpref81) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1400(line=49, offs=15) -- 1421(line=49, offs=36)
-*/
-ATSINSmove(tmpref81, ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__4(tmpref79, arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1435(line=51, offs=7) -- 1436(line=51, offs=8)
-*/
-ATSINSmove(tmpret70, tmpref81) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1355(line=47, offs=13) -- 1444(line=52, offs=8)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-ATSfunbody_end()
-ATSreturn(tmpret70) ;
-/*
-emit_funent_fnxbodylst:
-*/
-} /* end of [dfact_34] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$8(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__8(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__8, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__8, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__8) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__8, ATSLIB_056_prelude__ptr_alloc__17__8()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__8, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__8, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__8, tmp30__8) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__8) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__8] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$8(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__8()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__8, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__8, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__8) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__8] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$9(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__9(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__9, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__9, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__9) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__9, ATSLIB_056_prelude__ptr_alloc__17__9()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__9, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__9, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__9, tmp30__9) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__9) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__9] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$9(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__9()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__9, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__9, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__9) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__9] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7394(line=413, offs=3) -- 7461(line=418, offs=2)
-*/
-/*
-local: 
-global: mul_intinf0_int$8$4(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__4(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret13__4, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp14__4) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7376(line=412, offs=1) -- 7461(line=418, offs=2)
-*/
-ATSINSflab(__patsflab_mul_intinf0_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7427(line=416, offs=10) -- 7456(line=416, offs=39)
-*/
-ATSINSmove_void(tmp14__4, atscntrb_gmp_mpz_mul2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7404(line=413, offs=13) -- 7405(line=413, offs=14)
-*/
-ATSINSmove(tmpret13__4, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret13__4) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__4] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1507(line=55, offs=4) -- 1717(line=63, offs=6)
-*/
-/*
-local: fact_28$0(level=0)
-global: fact_28$0(level=0), permutations_40$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-permutations_40(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret84, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmpref85, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmpref86, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp87, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref88, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp93) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1507(line=55, offs=4) -- 1717(line=63, offs=6)
-*/
-ATSINSflab(__patsflab_permutations_40):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1588(line=56, offs=3) -- 1717(line=63, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1600(line=57, offs=9) -- 1601(line=57, offs=10)
-*/
-/*
-ATSINStmpdec(tmpref85) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1604(line=57, offs=13) -- 1610(line=57, offs=19)
-*/
-ATSINSmove(tmpref85, fact_28(arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1620(line=58, offs=9) -- 1621(line=58, offs=10)
-*/
-/*
-ATSINStmpdec(tmpref86) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1629(line=58, offs=18) -- 1634(line=58, offs=23)
-*/
-ATSINSmove(tmp87, atspre_g1int_sub_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1624(line=58, offs=13) -- 1635(line=58, offs=24)
-*/
-ATSINSmove(tmpref86, fact_28(tmp87)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1644(line=59, offs=9) -- 1645(line=59, offs=10)
-*/
-/*
-ATSINStmpdec(tmpref88) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1648(line=59, offs=13) -- 1673(line=59, offs=38)
-*/
-ATSINSmove(tmpref88, ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__1(tmpref85, ATSPMVrefarg0(tmpref86))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1686(line=60, offs=13) -- 1699(line=60, offs=26)
-*/
-ATSINSmove_void(tmp93, ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__2(tmpref86)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1710(line=62, offs=5) -- 1711(line=62, offs=6)
-*/
-ATSINSmove(tmpret84, tmpref88) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1588(line=56, offs=3) -- 1717(line=63, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret84) ;
-} /* end of [permutations_40] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9009(line=513, offs=3) -- 9083(line=518, offs=2)
-*/
-/*
-local: 
-global: div_intinf0_intinf1$41$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = 
-tmparg = 
-tmpsub = None()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret89, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp90) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 8987(line=512, offs=1) -- 9083(line=518, offs=2)
-*/
-ATSINSflab(__patsflab_div_intinf0_intinf1):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9042(line=516, offs=10) -- 9078(line=516, offs=46)
-*/
-ATSINSmove_void(tmp90, atscntrb_gmp_mpz_tdiv2_q_mpz(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg1, atstkind_type(atstype_ptrk), atslab__2)))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9019(line=513, offs=13) -- 9020(line=513, offs=14)
-*/
-ATSINSmove(tmpret89, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret89) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9009(line=513, offs=3) -- 9083(line=518, offs=2)
-*/
-/*
-local: 
-global: div_intinf0_intinf1$41$1(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__1(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret89__1, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp90__1) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 8987(line=512, offs=1) -- 9083(line=518, offs=2)
-*/
-ATSINSflab(__patsflab_div_intinf0_intinf1):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9042(line=516, offs=10) -- 9078(line=516, offs=46)
-*/
-ATSINSmove_void(tmp90__1, atscntrb_gmp_mpz_tdiv2_q_mpz(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg1, atstkind_type(atstype_ptrk), atslab__2)))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9019(line=513, offs=13) -- 9020(line=513, offs=14)
-*/
-ATSINSmove(tmpret89__1, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret89__1) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__1] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2888(line=119, offs=12) -- 2987(line=122, offs=4)
-*/
-/*
-local: 
-global: intinf_free$12$2(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atsvoid_t0ype
-ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__2(atstkind_type(atstype_ptrk) arg0)
-{
-/* tmpvardeclst(beg) */
-// ATStmpdec_void(tmpret22__2) ;
-// ATStmpdec_void(tmp23__2) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
-*/
-/*
-letpush(beg)
-*/
-/* (*nothing*) */
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2936(line=121, offs=12) -- 2955(line=121, offs=31)
-*/
-ATSINSmove_void(tmp23__2, atscntrb_gmp_mpz_clear(ATSPMVrefarg1(arg0))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2959(line=121, offs=35) -- 2983(line=121, offs=59)
-*/
-ATSINSmove_void(tmpret22__2, atspre_ptr_free(arg0)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn_void(tmpret22__2) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__2] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1769(line=66, offs=4) -- 2389(line=89, offs=6)
-*/
-/*
-local: fact_28$0(level=0)
-global: fact_28$0(level=0), catalan_44$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-catalan_44(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret96, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmpref117, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmpref118, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmpref119, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp122) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1769(line=66, offs=4) -- 2389(line=89, offs=6)
-*/
-ATSINSflab(__patsflab_catalan_44):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1813(line=67, offs=3) -- 2389(line=89, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2126(line=78, offs=5) -- 2383(line=88, offs=10)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2145(line=79, offs=9) -- 2146(line=79, offs=10)
-*/
-ATSINSlab(__atstmplab20):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1788(line=66, offs=23) -- 1789(line=66, offs=24)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(0))) { ATSINSgoto(__atstmplab22) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2146(line=79, offs=10) -- 2146(line=79, offs=10)
-*/
-ATSINSlab(__atstmplab21):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2150(line=79, offs=14) -- 2163(line=79, offs=27)
-*/
-ATSINSmove(tmpret96, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__11(ATSPMVi0nt(1))) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2172(line=80, offs=9) -- 2173(line=80, offs=10)
-*/
-ATSINSlab(__atstmplab22):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1788(line=66, offs=23) -- 1789(line=66, offs=24)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab24) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2173(line=80, offs=10) -- 2173(line=80, offs=10)
-*/
-ATSINSlab(__atstmplab23):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2177(line=80, offs=14) -- 2190(line=80, offs=27)
-*/
-ATSINSmove(tmpret96, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__12(ATSPMVi0nt(1))) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2200(line=81, offs=10) -- 2200(line=81, offs=10)
-*/
-ATSINSlab(__atstmplab24):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2205(line=81, offs=15) -- 2383(line=88, offs=10)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2221(line=82, offs=13) -- 2222(line=82, offs=14)
-*/
-/*
-ATSINStmpdec(tmpref117) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2225(line=82, offs=17) -- 2241(line=82, offs=33)
-*/
-ATSINSmove(tmpref117, numerator_loop_45(arg0, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2255(line=83, offs=13) -- 2256(line=83, offs=14)
-*/
-/*
-ATSINStmpdec(tmpref118) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2259(line=83, offs=17) -- 2265(line=83, offs=23)
-*/
-ATSINSmove(tmpref118, fact_28(arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2279(line=84, offs=13) -- 2280(line=84, offs=14)
-*/
-/*
-ATSINStmpdec(tmpref119) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2283(line=84, offs=17) -- 2308(line=84, offs=42)
-*/
-ATSINSmove(tmpref119, ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__2(tmpref117, ATSPMVrefarg0(tmpref118))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2325(line=85, offs=17) -- 2338(line=85, offs=30)
-*/
-ATSINSmove_void(tmp122, ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__3(tmpref118)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2357(line=87, offs=9) -- 2372(line=87, offs=24)
-*/
-ATSINSmove(tmpret96, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmpref119)) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2205(line=81, offs=15) -- 2383(line=88, offs=10)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1813(line=67, offs=3) -- 2389(line=89, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret96) ;
-} /* end of [catalan_44] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1825(line=68, offs=9) -- 2116(line=76, offs=12)
-*/
-/*
-local: numerator_loop_45$0(level=1)
-global: numerator_loop_45$0(level=1)
-local: n$5115(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-global: n$5115(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-numerator_loop_45(atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret97, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp102, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref103, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp104, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref105, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp108, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1825(line=68, offs=9) -- 2116(line=76, offs=12)
-*/
-ATSINSflab(__patsflab_numerator_loop_45):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1919(line=69, offs=7) -- 2116(line=76, offs=12)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1940(line=70, offs=11) -- 1941(line=70, offs=12)
-*/
-ATSINSlab(__atstmplab17):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1867(line=68, offs=51) -- 1868(line=68, offs=52)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(2))) { ATSINSgoto(__atstmplab19) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1941(line=70, offs=12) -- 1941(line=70, offs=12)
-*/
-ATSINSlab(__atstmplab18):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1945(line=70, offs=16) -- 1962(line=70, offs=33)
-*/
-ATSINSmove(tmp102, atspre_g1int_add_int(env0, ATSPMVi0nt(2))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1945(line=70, offs=16) -- 1962(line=70, offs=33)
-*/
-ATSINSmove(tmpret97, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__10(tmp102)) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1974(line=71, offs=12) -- 1974(line=71, offs=12)
-*/
-ATSINSlab(__atstmplab19):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1979(line=71, offs=17) -- 2116(line=76, offs=12)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1997(line=72, offs=15) -- 1998(line=72, offs=16)
-*/
-/*
-ATSINStmpdec(tmpref103) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2016(line=72, offs=34) -- 2021(line=72, offs=39)
-*/
-ATSINSmove(tmp104, atspre_g1int_sub_int(arg0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2001(line=72, offs=19) -- 2022(line=72, offs=40)
-*/
-ATSINSmove(tmpref103, numerator_loop_45(env0, tmp104)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2037(line=73, offs=15) -- 2038(line=73, offs=16)
-*/
-/*
-ATSINStmpdec(tmpref105) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2060(line=73, offs=38) -- 2065(line=73, offs=43)
-*/
-ATSINSmove(tmp108, atspre_g1int_add_int(env0, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2041(line=73, offs=19) -- 2066(line=73, offs=44)
-*/
-ATSINSmove(tmpref105, ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__5(tmpref103, tmp108)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2088(line=75, offs=11) -- 2103(line=75, offs=26)
-*/
-ATSINSmove(tmpret97, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmpref105)) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 1979(line=71, offs=17) -- 2116(line=76, offs=12)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-ATSfunbody_end()
-ATSreturn(tmpret97) ;
-} /* end of [numerator_loop_45] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$10(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__10(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__10, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__10, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__10) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__10, ATSLIB_056_prelude__ptr_alloc__17__10()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__10, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__10, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__10, tmp30__10) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__10) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__10] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$10(level=3)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__10()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__10, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__10, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__10) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__10] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7394(line=413, offs=3) -- 7461(line=418, offs=2)
-*/
-/*
-local: 
-global: mul_intinf0_int$8$5(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__5(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret13__5, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp14__5) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7376(line=412, offs=1) -- 7461(line=418, offs=2)
-*/
-ATSINSflab(__patsflab_mul_intinf0_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7427(line=416, offs=10) -- 7456(line=416, offs=39)
-*/
-ATSINSmove_void(tmp14__5, atscntrb_gmp_mpz_mul2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7404(line=413, offs=13) -- 7405(line=413, offs=14)
-*/
-ATSINSmove(tmpret13__5, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret13__5) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__5] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$11(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__11(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__11, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__11, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__11) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__11, ATSLIB_056_prelude__ptr_alloc__17__11()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__11, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__11, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__11, tmp30__11) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__11) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__11] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$11(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__11()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__11, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__11, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__11) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__11] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$12(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__12(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__12, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__12, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__12) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__12, ATSLIB_056_prelude__ptr_alloc__17__12()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__12, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__12, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__12, tmp30__12) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__12) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__12] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$12(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__12()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__12, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__12, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__12) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__12] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9009(line=513, offs=3) -- 9083(line=518, offs=2)
-*/
-/*
-local: 
-global: div_intinf0_intinf1$41$2(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__2(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret89__2, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp90__2) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 8987(line=512, offs=1) -- 9083(line=518, offs=2)
-*/
-ATSINSflab(__patsflab_div_intinf0_intinf1):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9042(line=516, offs=10) -- 9078(line=516, offs=46)
-*/
-ATSINSmove_void(tmp90__2, atscntrb_gmp_mpz_tdiv2_q_mpz(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg1, atstkind_type(atstype_ptrk), atslab__2)))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9019(line=513, offs=13) -- 9020(line=513, offs=14)
-*/
-ATSINSmove(tmpret89__2, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret89__2) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__2] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2888(line=119, offs=12) -- 2987(line=122, offs=4)
-*/
-/*
-local: 
-global: intinf_free$12$3(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atsvoid_t0ype
-ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__3(atstkind_type(atstype_ptrk) arg0)
-{
-/* tmpvardeclst(beg) */
-// ATStmpdec_void(tmpret22__3) ;
-// ATStmpdec_void(tmp23__3) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
-*/
-/*
-letpush(beg)
-*/
-/* (*nothing*) */
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2936(line=121, offs=12) -- 2955(line=121, offs=31)
-*/
-ATSINSmove_void(tmp23__3, atscntrb_gmp_mpz_clear(ATSPMVrefarg1(arg0))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2959(line=121, offs=35) -- 2983(line=121, offs=59)
-*/
-ATSINSmove_void(tmpret22__3, atspre_ptr_free(arg0)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn_void(tmpret22__3) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__3] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2452(line=92, offs=4) -- 3157(line=116, offs=6)
-*/
-/*
-local: fact_28$0(level=0)
-global: fact_28$0(level=0), choose_55$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-choose_55(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret125, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmpref153, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmpref154, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmpref155, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp158) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2452(line=92, offs=4) -- 3157(line=116, offs=6)
-*/
-ATSINSflab(__patsflab_choose_55):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2527(line=93, offs=3) -- 3157(line=116, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2894(line=105, offs=5) -- 3151(line=115, offs=10)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2913(line=106, offs=9) -- 2914(line=106, offs=10)
-*/
-ATSINSlab(__atstmplab30):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2502(line=92, offs=54) -- 2503(line=92, offs=55)
-*/
-ATSifnthen(ATSCKpat_int(arg1, ATSPMVint(0))) { ATSINSgoto(__atstmplab32) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2914(line=106, offs=10) -- 2914(line=106, offs=10)
-*/
-ATSINSlab(__atstmplab31):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2918(line=106, offs=14) -- 2931(line=106, offs=27)
-*/
-ATSINSmove(tmpret125, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__15(ATSPMVi0nt(1))) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2940(line=107, offs=9) -- 2941(line=107, offs=10)
-*/
-ATSINSlab(__atstmplab32):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2502(line=92, offs=54) -- 2503(line=92, offs=55)
-*/
-ATSifnthen(ATSCKpat_int(arg1, ATSPMVint(1))) { ATSINSgoto(__atstmplab34) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2941(line=107, offs=10) -- 2941(line=107, offs=10)
-*/
-ATSINSlab(__atstmplab33):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2945(line=107, offs=14) -- 2957(line=107, offs=26)
-*/
-ATSINSmove(tmpret125, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__16(arg0)) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2968(line=108, offs=10) -- 2968(line=108, offs=10)
-*/
-ATSINSlab(__atstmplab34):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2973(line=108, offs=15) -- 3151(line=115, offs=10)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2989(line=109, offs=13) -- 2990(line=109, offs=14)
-*/
-/*
-ATSINStmpdec(tmpref153) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2993(line=109, offs=17) -- 3009(line=109, offs=33)
-*/
-ATSINSmove(tmpref153, numerator_loop_56(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 3023(line=110, offs=13) -- 3024(line=110, offs=14)
-*/
-/*
-ATSINStmpdec(tmpref154) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 3027(line=110, offs=17) -- 3033(line=110, offs=23)
-*/
-ATSINSmove(tmpref154, fact_28(arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 3047(line=111, offs=13) -- 3048(line=111, offs=14)
-*/
-/*
-ATSINStmpdec(tmpref155) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 3051(line=111, offs=17) -- 3076(line=111, offs=42)
-*/
-ATSINSmove(tmpref155, ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__3(tmpref153, ATSPMVrefarg0(tmpref154))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 3093(line=112, offs=17) -- 3106(line=112, offs=30)
-*/
-ATSINSmove_void(tmp158, ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__4(tmpref154)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 3125(line=114, offs=9) -- 3140(line=114, offs=24)
-*/
-ATSINSmove(tmpret125, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmpref155)) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2973(line=108, offs=15) -- 3151(line=115, offs=10)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2527(line=93, offs=3) -- 3157(line=116, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret125) ;
-} /* end of [choose_55] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2539(line=94, offs=9) -- 2884(line=103, offs=12)
-*/
-/*
-local: numerator_loop_56$0(level=1)
-global: numerator_loop_56$0(level=1)
-local: n$5126(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-global: n$5126(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-numerator_loop_56(atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret126, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp131, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp136, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp137, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref138, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp139, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref140, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp143, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp144, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2539(line=94, offs=9) -- 2884(line=103, offs=12)
-*/
-ATSINSflab(__patsflab_numerator_loop_56):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2633(line=95, offs=7) -- 2884(line=103, offs=12)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2654(line=96, offs=11) -- 2655(line=96, offs=12)
-*/
-ATSINSlab(__atstmplab25):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2581(line=94, offs=51) -- 2582(line=94, offs=52)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab27) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2655(line=96, offs=12) -- 2655(line=96, offs=12)
-*/
-ATSINSlab(__atstmplab26):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2659(line=96, offs=16) -- 2671(line=96, offs=28)
-*/
-ATSINSmove(tmpret126, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__13(env0)) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2683(line=97, offs=11) -- 2684(line=97, offs=12)
-*/
-ATSINSlab(__atstmplab27):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2581(line=94, offs=51) -- 2582(line=94, offs=52)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(2))) { ATSINSgoto(__atstmplab29) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2684(line=97, offs=12) -- 2684(line=97, offs=12)
-*/
-ATSINSlab(__atstmplab28):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2702(line=97, offs=30) -- 2725(line=97, offs=53)
-*/
-ATSINSmove(tmp137, atspre_g1int_sub_int(env0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2702(line=97, offs=30) -- 2725(line=97, offs=53)
-*/
-ATSINSmove(tmp136, atspre_g1int_mul_int(tmp137, env0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2702(line=97, offs=30) -- 2725(line=97, offs=53)
-*/
-ATSINSmove(tmp131, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__14(tmp136)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2688(line=97, offs=16) -- 2726(line=97, offs=54)
-*/
-ATSINSmove(tmpret126, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmp131)) ;
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2738(line=98, offs=12) -- 2738(line=98, offs=12)
-*/
-ATSINSlab(__atstmplab29):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2743(line=98, offs=17) -- 2884(line=103, offs=12)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2761(line=99, offs=15) -- 2762(line=99, offs=16)
-*/
-/*
-ATSINStmpdec(tmpref138) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2780(line=99, offs=34) -- 2785(line=99, offs=39)
-*/
-ATSINSmove(tmp139, atspre_g1int_sub_int(arg0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2765(line=99, offs=19) -- 2786(line=99, offs=40)
-*/
-ATSINSmove(tmpref138, numerator_loop_56(env0, tmp139)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2801(line=100, offs=15) -- 2802(line=100, offs=16)
-*/
-/*
-ATSINStmpdec(tmpref140) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2824(line=100, offs=38) -- 2829(line=100, offs=43)
-*/
-ATSINSmove(tmp144, atspre_g1int_add_int(env0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2824(line=100, offs=38) -- 2833(line=100, offs=47)
-*/
-ATSINSmove(tmp143, atspre_g1int_sub_int(tmp144, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2805(line=100, offs=19) -- 2834(line=100, offs=48)
-*/
-ATSINSmove(tmpref140, ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__6(tmpref138, tmp143)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2856(line=102, offs=11) -- 2871(line=102, offs=26)
-*/
-ATSINSmove(tmpret126, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmpref140)) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 2743(line=98, offs=17) -- 2884(line=103, offs=12)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-ATSfunbody_end()
-ATSreturn(tmpret126) ;
-} /* end of [numerator_loop_56] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$13(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__13(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__13, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__13, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__13) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__13, ATSLIB_056_prelude__ptr_alloc__17__13()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__13, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__13, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__13, tmp30__13) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__13) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__13] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$13(level=3)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__13()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__13, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__13, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__13) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__13] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$14(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__14(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__14, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__14, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__14) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__14, ATSLIB_056_prelude__ptr_alloc__17__14()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__14, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__14, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__14, tmp30__14) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__14) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__14] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$14(level=3)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__14()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__14, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__14, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__14) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__14] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7394(line=413, offs=3) -- 7461(line=418, offs=2)
-*/
-/*
-local: 
-global: mul_intinf0_int$8$6(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__6(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret13__6, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp14__6) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7376(line=412, offs=1) -- 7461(line=418, offs=2)
-*/
-ATSINSflab(__patsflab_mul_intinf0_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7427(line=416, offs=10) -- 7456(line=416, offs=39)
-*/
-ATSINSmove_void(tmp14__6, atscntrb_gmp_mpz_mul2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7404(line=413, offs=13) -- 7405(line=413, offs=14)
-*/
-ATSINSmove(tmpret13__6, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret13__6) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__6] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$15(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__15(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__15, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__15, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__15) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__15, ATSLIB_056_prelude__ptr_alloc__17__15()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__15, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__15, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__15, tmp30__15) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__15) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__15] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$15(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__15()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__15, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__15, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__15) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__15] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$15$16(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__16(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret29__16, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp30__16, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp31__16) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp30__16, ATSLIB_056_prelude__ptr_alloc__17__16()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp31__16, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__16, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret29__16, tmp30__16) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret29__16) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__16] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$17$16(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__17__16()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret35__16, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret35__16, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret35__16) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__17__16] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9009(line=513, offs=3) -- 9083(line=518, offs=2)
-*/
-/*
-local: 
-global: div_intinf0_intinf1$41$3(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__3(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret89__3, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp90__3) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 8987(line=512, offs=1) -- 9083(line=518, offs=2)
-*/
-ATSINSflab(__patsflab_div_intinf0_intinf1):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9042(line=516, offs=10) -- 9078(line=516, offs=46)
-*/
-ATSINSmove_void(tmp90__3, atscntrb_gmp_mpz_tdiv2_q_mpz(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg1, atstkind_type(atstype_ptrk), atslab__2)))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9019(line=513, offs=13) -- 9020(line=513, offs=14)
-*/
-ATSINSmove(tmpret89__3, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret89__3) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__3] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2888(line=119, offs=12) -- 2987(line=122, offs=4)
-*/
-/*
-local: 
-global: intinf_free$12$4(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atsvoid_t0ype
-ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__4(atstkind_type(atstype_ptrk) arg0)
-{
-/* tmpvardeclst(beg) */
-// ATStmpdec_void(tmpret22__4) ;
-// ATStmpdec_void(tmp23__4) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
-*/
-/*
-letpush(beg)
-*/
-/* (*nothing*) */
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2936(line=121, offs=12) -- 2955(line=121, offs=31)
-*/
-ATSINSmove_void(tmp23__4, atscntrb_gmp_mpz_clear(ATSPMVrefarg1(arg0))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2959(line=121, offs=35) -- 2983(line=121, offs=59)
-*/
-ATSINSmove_void(tmpret22__4, atspre_ptr_free(arg0)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn_void(tmpret22__4) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__4] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 661(line=32, offs=22) -- 684(line=33, offs=15)
-*/
-/*
-local: choose_55$0(level=0)
-global: fact_28$0(level=0), choose_55$0(level=0), choose_ats$69$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-atstkind_type(atstype_ptrk)
-choose_ats(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret161, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 650(line=32, offs=11) -- 684(line=33, offs=15)
-*/
-ATSINSflab(__patsflab_choose_ats):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 672(line=33, offs=3) -- 684(line=33, offs=15)
-*/
-ATSINSmove(tmpret161, choose_55(arg0, arg1)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret161) ;
-} /* end of [choose_ats] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 713(line=35, offs=28) -- 736(line=36, offs=15)
-*/
-/*
-local: choose_55$0(level=0)
-global: fact_28$0(level=0), choose_55$0(level=0), permutations_ats$70$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-atstkind_type(atstype_ptrk)
-permutations_ats(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret162, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 696(line=35, offs=11) -- 736(line=36, offs=15)
-*/
-ATSINSflab(__patsflab_permutations_ats):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 724(line=36, offs=3) -- 736(line=36, offs=15)
-*/
-ATSINSmove(tmpret162, choose_55(arg0, arg1)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret162) ;
-} /* end of [permutations_ats] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 769(line=38, offs=32) -- 784(line=39, offs=10)
-*/
-/*
-local: dfact_34$0(level=0)
-global: dfact_34$0(level=0), double_factorial_ats$71$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-atstkind_type(atstype_ptrk)
-double_factorial_ats(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret163, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 748(line=38, offs=11) -- 785(line=39, offs=11)
-*/
-ATSINSflab(__patsflab_double_factorial_ats):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 777(line=39, offs=3) -- 784(line=39, offs=10)
-*/
-ATSINSmove(tmpret163, dfact_34(arg0)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret163) ;
-} /* end of [double_factorial_ats] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 811(line=41, offs=25) -- 825(line=42, offs=9)
-*/
-/*
-local: fact_28$0(level=0)
-global: fact_28$0(level=0), factorial_ats$72$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-atstkind_type(atstype_ptrk)
-factorial_ats(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret164, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 797(line=41, offs=11) -- 826(line=42, offs=10)
-*/
-ATSINSflab(__patsflab_factorial_ats):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 819(line=42, offs=3) -- 825(line=42, offs=9)
-*/
-ATSINSmove(tmpret164, fact_28(arg0)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret164) ;
-} /* end of [factorial_ats] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 850(line=44, offs=23) -- 867(line=45, offs=12)
-*/
-/*
-local: catalan_44$0(level=0)
-global: fact_28$0(level=0), catalan_44$0(level=0), catalan_ats$73$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-atstkind_type(atstype_ptrk)
-catalan_ats(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret165, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 838(line=44, offs=11) -- 868(line=45, offs=13)
-*/
-ATSINSflab(__patsflab_catalan_ats):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics-ffi.dats: 858(line=45, offs=3) -- 867(line=45, offs=12)
-*/
-ATSINSmove(tmpret165, catalan_44(arg0)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret165) ;
-} /* end of [catalan_ats] */
-
-/*
-** for initialization(dynloading)
-*/
-ATSdynloadflag_minit(_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_combinatorics_055_ffi_056_dats__dynloadflag) ;
-ATSextern()
-atsvoid_t0ype
-_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_combinatorics_055_ffi_056_dats__dynload()
-{
-ATSfunbody_beg()
-ATSdynload(/*void*/)
-ATSdynloadflag_sta(
-_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_combinatorics_055_ffi_056_dats__dynloadflag
-) ;
-ATSif(
-ATSCKiseqz(
-_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_combinatorics_055_ffi_056_dats__dynloadflag
-)
-) ATSthen() {
-ATSdynloadset(_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_combinatorics_055_ffi_056_dats__dynloadflag) ;
+** The starting compilation time is: 2018-1-27: 21h:42m
+**
+*/
+
+/*
+** 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.8/lib/ats2-postiats-0.3.9/prelude/DATS/basics.dats: 1636(line=50, offs=1) -- 1675(line=50, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 1533(line=44, offs=1) -- 1572(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_long.dats: 1602(line=49, offs=1) -- 1641(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_size.dats: 1597(line=49, offs=1) -- 1636(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_short.dats: 1603(line=49, offs=1) -- 1642(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/char.dats: 1610(line=48, offs=1) -- 1649(line=48, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/float.dats: 1636(line=50, offs=1) -- 1675(line=50, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/string.dats: 1631(line=50, offs=1) -- 1670(line=50, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/strptr.dats: 1629(line=50, offs=1) -- 1668(line=50, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/strptr.dats: 1691(line=54, offs=1) -- 1738(line=54, offs=48)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_ptr.dats: 1601(line=49, offs=1) -- 1640(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_fixed.dats: 1603(line=49, offs=1) -- 1642(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/memory.dats: 1410(line=38, offs=1) -- 1449(line=39, offs=32)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 1613(line=49, offs=1) -- 1652(line=50, offs=32)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 1675(line=54, offs=1) -- 1721(line=55, offs=39)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 1744(line=59, offs=1) -- 1789(line=60, offs=38)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/stdio.sats: 1950(line=69, offs=1) -- 1999(line=71, offs=34)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 1871(line=66, offs=1) -- 1918(line=66, offs=48)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/sys/stat.sats: 1756(line=58, offs=1) -- 1805(line=60, offs=34)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 15552(line=879, offs=1) -- 15589(line=880, offs=30)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/stdio.sats: 1950(line=69, offs=1) -- 1999(line=71, offs=34)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/list.dats: 1529(line=44, offs=1) -- 1568(line=45, offs=32)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/list.dats: 1569(line=46, offs=1) -- 1615(line=47, offs=39)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/list_vt.dats: 1538(line=44, offs=1) -- 1577(line=45, offs=32)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/list_vt.dats: 1578(line=46, offs=1) -- 1624(line=47, offs=39)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/SHARE/list_vt_mergesort.dats: 1546(line=44, offs=1) -- 1585(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/SHARE/list_vt_quicksort.dats: 1546(line=44, offs=1) -- 1585(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/array.dats: 1534(line=44, offs=1) -- 1573(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/array.dats: 1574(line=45, offs=1) -- 1616(line=45, offs=43)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/SHARE/array_bsearch.dats: 1531(line=44, offs=1) -- 1570(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/SHARE/array_quicksort.dats: 1531(line=44, offs=1) -- 1570(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/arrayptr.dats: 1532(line=44, offs=1) -- 1571(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/arrayref.dats: 1532(line=44, offs=1) -- 1571(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/matrix.dats: 1535(line=44, offs=1) -- 1574(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/matrixptr.dats: 1538(line=44, offs=1) -- 1577(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/matrixref.dats: 1538(line=44, offs=1) -- 1577(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream.dats: 1523(line=44, offs=1) -- 1562(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 1523(line=44, offs=1) -- 1562(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/tostring.dats: 1528(line=44, offs=1) -- 1567(line=45, offs=32)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/checkast.dats: 1531(line=44, offs=1) -- 1570(line=45, offs=32)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1660(line=37, offs=1) -- 1700(line=38, offs=27)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1727(line=42, offs=1) -- 1759(line=42, offs=33)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1833(line=49, offs=1) -- 1867(line=49, offs=35)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1868(line=50, offs=1) -- 1908(line=50, offs=41)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1656(line=37, offs=1) -- 1696(line=39, offs=27)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/mydepies.hats: 192(line=16, offs=1) -- 232(line=16, offs=41)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1233(line=43, offs=3)
+*/
+
+//
+#include \
+"atscntrb-libgmp/CATS/gmp.cats"
+//
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1813(line=49, offs=1) -- 1845(line=49, offs=33)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1846(line=50, offs=1) -- 1881(line=50, offs=36)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1657(line=37, offs=1) -- 1689(line=37, offs=33)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1690(line=38, offs=1) -- 1724(line=38, offs=35)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/fast-arithmetic/ats-src/combinatorics.dats: 86(line=4, offs=1) -- 225(line=8, offs=3)
+*/
+ATSextcode_beg()
+#define ATS_MEMALLOC_LIBC
+#include "ccomp/runtime/pats_ccomp_memalloc_libc.h"
+#include "ccomp/runtime/pats_ccomp_runtime_memalloc.c"
+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_g1int2int_int_int)
+ATSdyncst_mac(atspre_g1int_lt_int)
+ATSdyncst_mac(atscntrb_gmp_mpz_add2_mpz)
+ATSdyncst_mac(atscntrb_gmp_mpz_mul2_int)
+ATSdyncst_mac(atspre_g1int_add_int)
+ATSdyncst_mac(atscntrb_gmp_mpz_clear)
+ATSdyncst_mac(atspre_ptr_free)
+ATSdyncst_mac(atscntrb_gmp_mpz_init_set_int)
+ATSdyncst_mac(atspre_ptr_alloc_tsz)
+ATSdyncst_mac(atspre_g1int_sub_int)
+ATSdyncst_mac(atscntrb_gmp_mpz_tdiv2_q_mpz)
+ATSdyncst_mac(atspre_g1int_mul_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)
+derangements_0(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+loop_1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_type(atstype_ptrk), atstkind_type(atstype_ptrk)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__lt_g1int_int__2(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__2__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6(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__add_intinf0_intinf1__6__1(atstkind_type(atstype_ptrk), atsrefarg0_type(atstkind_type(atstype_ptrk))) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
+#endif // end of [QUALIFIED]
+#endif // end of [TEMPLATE]
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__1(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6__2(atstkind_type(atstype_ptrk), atsrefarg0_type(atstkind_type(atstype_ptrk))) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atsvoid_t0ype
+ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12(atstkind_type(atstype_ptrk)) ;
+#endif // end of [QUALIFIED]
+#endif // end of [TEMPLATE]
+
+ATSstatic()
+atsvoid_t0ype
+ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__1(atstkind_type(atstype_ptrk)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__2(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15(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__15__1(atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17() ;
+#endif // end of [QUALIFIED]
+#endif // end of [TEMPLATE]
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__1() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__2(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__2() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__3(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__3() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__4(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__4() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__5(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__5() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+fact_28(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__6(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__6() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__7(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__7() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__3(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+dfact_34(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__8(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__8() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__9(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__9() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__4(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+permutations_40(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41(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__div_intinf0_intinf1__41__1(atstkind_type(atstype_ptrk), atsrefarg0_type(atstkind_type(atstype_ptrk))) ;
+
+ATSstatic()
+atsvoid_t0ype
+ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__2(atstkind_type(atstype_ptrk)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+catalan_44(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+numerator_loop_45(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__10(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__10() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__5(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__11(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__11() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__12(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__12() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__2(atstkind_type(atstype_ptrk), atsrefarg0_type(atstkind_type(atstype_ptrk))) ;
+
+ATSstatic()
+atsvoid_t0ype
+ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__3(atstkind_type(atstype_ptrk)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+choose_55(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+numerator_loop_56(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__13(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__13() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__14(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__14() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__6(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__15(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__15() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__16(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__16() ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__3(atstkind_type(atstype_ptrk), atsrefarg0_type(atstkind_type(atstype_ptrk))) ;
+
+ATSstatic()
+atsvoid_t0ype
+ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__4(atstkind_type(atstype_ptrk)) ;
+
+#if(0)
+ATSextern()
+atstkind_type(atstype_ptrk)
+choose_ats(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+#endif // end of [QUALIFIED]
+
+#if(0)
+ATSextern()
+atstkind_type(atstype_ptrk)
+permutations_ats(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+#endif // end of [QUALIFIED]
+
+#if(0)
+ATSextern()
+atstkind_type(atstype_ptrk)
+double_factorial_ats(atstkind_t0ype(atstype_int)) ;
+#endif // end of [QUALIFIED]
+
+#if(0)
+ATSextern()
+atstkind_type(atstype_ptrk)
+factorial_ats(atstkind_t0ype(atstype_int)) ;
+#endif // end of [QUALIFIED]
+
+#if(0)
+ATSextern()
+atstkind_type(atstype_ptrk)
+catalan_ats(atstkind_t0ype(atstype_int)) ;
+#endif // end of [QUALIFIED]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 280(line=10, offs=4) -- 980(line=34, offs=6)
+*/
+/*
+local: 
+global: derangements_0$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+derangements_0(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret0, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp45, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp46, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp51, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 280(line=10, offs=4) -- 980(line=34, offs=6)
+*/
+ATSINSflab(__patsflab_derangements_0):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 335(line=11, offs=3) -- 980(line=34, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 822(line=29, offs=5) -- 974(line=33, offs=59)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 841(line=30, offs=9) -- 842(line=30, offs=10)
+*/
+ATSINSlab(__atstmplab0):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 310(line=10, offs=34) -- 311(line=10, offs=35)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(0))) { ATSINSgoto(__atstmplab2) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 842(line=30, offs=10) -- 842(line=30, offs=10)
+*/
+ATSINSlab(__atstmplab1):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 846(line=30, offs=14) -- 859(line=30, offs=27)
+*/
+ATSINSmove(tmpret0, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__1(ATSPMVi0nt(1))) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 868(line=31, offs=9) -- 869(line=31, offs=10)
+*/
+ATSINSlab(__atstmplab2):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 310(line=10, offs=34) -- 311(line=10, offs=35)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab4) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 869(line=31, offs=10) -- 869(line=31, offs=10)
+*/
+ATSINSlab(__atstmplab3):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 874(line=31, offs=15) -- 887(line=31, offs=28)
+*/
+ATSINSmove(tmpret0, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__2(ATSPMVi0nt(0))) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 896(line=32, offs=9) -- 897(line=32, offs=10)
+*/
+ATSINSlab(__atstmplab4):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 310(line=10, offs=34) -- 311(line=10, offs=35)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(2))) { ATSINSgoto(__atstmplab6) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 897(line=32, offs=10) -- 897(line=32, offs=10)
+*/
+ATSINSlab(__atstmplab5):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 902(line=32, offs=15) -- 915(line=32, offs=28)
+*/
+ATSINSmove(tmpret0, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__3(ATSPMVi0nt(1))) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 925(line=33, offs=10) -- 925(line=33, offs=10)
+*/
+ATSINSlab(__atstmplab6):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 935(line=33, offs=20) -- 940(line=33, offs=25)
+*/
+ATSINSmove(tmp45, atspre_g1int_sub_int(arg0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 945(line=33, offs=30) -- 958(line=33, offs=43)
+*/
+ATSINSmove(tmp46, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__4(ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 960(line=33, offs=45) -- 973(line=33, offs=58)
+*/
+ATSINSmove(tmp51, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__5(ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 930(line=33, offs=15) -- 974(line=33, offs=59)
+*/
+ATSINSmove(tmpret0, loop_1(tmp45, ATSPMVi0nt(2), tmp46, tmp51)) ;
+
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 335(line=11, offs=3) -- 980(line=34, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret0) ;
+} /* end of [derangements_0] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 347(line=12, offs=9) -- 812(line=27, offs=12)
+*/
+/*
+local: loop_1$0(level=1)
+global: loop_1$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+loop_1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1, atstkind_type(atstype_ptrk) arg2, atstkind_type(atstype_ptrk) arg3)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(apy0, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(apy1, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(apy2, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(apy3, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmpret1, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp2, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmpref7, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmpref12, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp17, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref18, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp21) ;
+ATStmpdec(tmpref26, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+/*
+emit_funent_fnxdeclst:
+*/
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 347(line=12, offs=9) -- 812(line=27, offs=12)
+*/
+ATSINSflab(__patsflab_loop_1):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 471(line=13, offs=10) -- 476(line=13, offs=15)
+*/
+ATSINSmove(tmp2, ATSLIB_056_prelude__lt_g1int_int__2__1(arg1, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 468(line=13, offs=7) -- 812(line=27, offs=12)
+*/
+ATSif(
+tmp2
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 490(line=14, offs=9) -- 634(line=19, offs=12)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 508(line=15, offs=15) -- 509(line=15, offs=16)
+*/
+/*
+ATSINStmpdec(tmpref7) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 512(line=15, offs=19) -- 539(line=15, offs=46)
+*/
+ATSINSmove(tmpref7, ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6__1(arg3, ATSPMVrefarg0(arg2))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 554(line=16, offs=15) -- 555(line=16, offs=16)
+*/
+/*
+ATSINStmpdec(tmpref12) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 558(line=16, offs=19) -- 579(line=16, offs=40)
+*/
+ATSINSmove(tmpref12, ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__1(tmpref7, arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 609(line=18, offs=19) -- 614(line=18, offs=24)
+*/
+ATSINSmove(tmp17, atspre_g1int_add_int(arg1, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 601(line=18, offs=11) -- 622(line=18, offs=32)
+*/
+ATStailcal_beg()
+ATSINSmove_tlcal(apy0, arg0) ;
+ATSINSmove_tlcal(apy1, tmp17) ;
+ATSINSmove_tlcal(apy2, tmpref12) ;
+ATSINSmove_tlcal(apy3, arg2) ;
+ATSINSargmove_tlcal(arg0, apy0) ;
+ATSINSargmove_tlcal(arg1, apy1) ;
+ATSINSargmove_tlcal(arg2, apy2) ;
+ATSINSargmove_tlcal(arg3, apy3) ;
+ATSINSfgoto(__patsflab_loop_1) ;
+ATStailcal_end()
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 490(line=14, offs=9) -- 634(line=19, offs=12)
+*/
+/*
+INSletpop()
+*/
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 654(line=21, offs=9) -- 812(line=27, offs=12)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 672(line=22, offs=15) -- 673(line=22, offs=16)
+*/
+/*
+ATSINStmpdec(tmpref18) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 676(line=22, offs=19) -- 703(line=22, offs=46)
+*/
+ATSINSmove(tmpref18, ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6__2(arg3, ATSPMVrefarg0(arg2))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 722(line=23, offs=19) -- 736(line=23, offs=33)
+*/
+ATSINSmove_void(tmp21, ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__1(arg2)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 752(line=24, offs=15) -- 753(line=24, offs=16)
+*/
+/*
+ATSINStmpdec(tmpref26) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 756(line=24, offs=19) -- 777(line=24, offs=40)
+*/
+ATSINSmove(tmpref26, ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__2(tmpref18, arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 799(line=26, offs=11) -- 800(line=26, offs=12)
+*/
+ATSINSmove(tmpret1, tmpref26) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 654(line=21, offs=9) -- 812(line=27, offs=12)
+*/
+/*
+INSletpop()
+*/
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret1) ;
+/*
+emit_funent_fnxbodylst:
+*/
+} /* end of [loop_1] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
+*/
+/*
+local: 
+global: lt_g1int_int$2$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = tk(4697)
+tmparg = S2Evar(tk(4697))
+tmpsub = None()
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__lt_g1int_int__2(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret3, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp4, atstkind_t0ype(atstyvar_type(tk))) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
+*/
+ATSINSmove(tmp4, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4697))>)(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
+*/
+ATSINSmove(tmpret3, PMVtmpltcst(g1int_lt<S2Evar(tk(4697))>)(arg0, tmp4)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret3) ;
+} /* end of [ATSLIB_056_prelude__lt_g1int_int__2] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
+*/
+/*
+local: 
+global: lt_g1int_int$2$1(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4697)
+tmparg = S2Evar(tk(4697))
+tmpsub = Some(tk(4697) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__lt_g1int_int__2__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret3__1, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp4__1, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
+*/
+ATSINSmove(tmp4__1, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
+*/
+ATSINSmove(tmpret3__1, atspre_g1int_lt_int(arg0, tmp4__1)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret3__1) ;
+} /* end of [ATSLIB_056_prelude__lt_g1int_int__2__1] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5514(line=298, offs=3) -- 5585(line=303, offs=2)
+*/
+/*
+local: 
+global: add_intinf0_intinf1$6$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = 
+tmparg = 
+tmpsub = None()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret8, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp9) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5492(line=297, offs=1) -- 5585(line=303, offs=2)
+*/
+ATSINSflab(__patsflab_add_intinf0_intinf1):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5523(line=298, offs=12) -- 5585(line=303, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5547(line=301, offs=10) -- 5580(line=301, offs=43)
+*/
+ATSINSmove_void(tmp9, atscntrb_gmp_mpz_add2_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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5524(line=298, offs=13) -- 5525(line=298, offs=14)
+*/
+ATSINSmove(tmpret8, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5523(line=298, offs=12) -- 5585(line=303, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret8) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5514(line=298, offs=3) -- 5585(line=303, offs=2)
+*/
+/*
+local: 
+global: add_intinf0_intinf1$6$1(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6__1(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret8__1, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp9__1) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5492(line=297, offs=1) -- 5585(line=303, offs=2)
+*/
+ATSINSflab(__patsflab_add_intinf0_intinf1):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5523(line=298, offs=12) -- 5585(line=303, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5547(line=301, offs=10) -- 5580(line=301, offs=43)
+*/
+ATSINSmove_void(tmp9__1, atscntrb_gmp_mpz_add2_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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5524(line=298, offs=13) -- 5525(line=298, offs=14)
+*/
+ATSINSmove(tmpret8__1, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5523(line=298, offs=12) -- 5585(line=303, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret8__1) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6__1] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7394(line=413, offs=3) -- 7461(line=418, offs=2)
+*/
+/*
+local: 
+global: mul_intinf0_int$8$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = 
+tmparg = 
+tmpsub = None()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret13, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp14) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7376(line=412, offs=1) -- 7461(line=418, offs=2)
+*/
+ATSINSflab(__patsflab_mul_intinf0_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7427(line=416, offs=10) -- 7456(line=416, offs=39)
+*/
+ATSINSmove_void(tmp14, atscntrb_gmp_mpz_mul2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7404(line=413, offs=13) -- 7405(line=413, offs=14)
+*/
+ATSINSmove(tmpret13, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret13) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7394(line=413, offs=3) -- 7461(line=418, offs=2)
+*/
+/*
+local: 
+global: mul_intinf0_int$8$1(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__1(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret13__1, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp14__1) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7376(line=412, offs=1) -- 7461(line=418, offs=2)
+*/
+ATSINSflab(__patsflab_mul_intinf0_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7427(line=416, offs=10) -- 7456(line=416, offs=39)
+*/
+ATSINSmove_void(tmp14__1, atscntrb_gmp_mpz_mul2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7404(line=413, offs=13) -- 7405(line=413, offs=14)
+*/
+ATSINSmove(tmpret13__1, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret13__1) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5514(line=298, offs=3) -- 5585(line=303, offs=2)
+*/
+/*
+local: 
+global: add_intinf0_intinf1$6$2(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6__2(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret8__2, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp9__2) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5492(line=297, offs=1) -- 5585(line=303, offs=2)
+*/
+ATSINSflab(__patsflab_add_intinf0_intinf1):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5523(line=298, offs=12) -- 5585(line=303, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5547(line=301, offs=10) -- 5580(line=301, offs=43)
+*/
+ATSINSmove_void(tmp9__2, atscntrb_gmp_mpz_add2_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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5524(line=298, offs=13) -- 5525(line=298, offs=14)
+*/
+ATSINSmove(tmpret8__2, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5523(line=298, offs=12) -- 5585(line=303, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret8__2) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_intinf1__6__2] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2888(line=119, offs=12) -- 2987(line=122, offs=4)
+*/
+/*
+local: 
+global: intinf_free$12$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = 
+tmparg = 
+tmpsub = None()
+*/
+atsvoid_t0ype
+ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12(atstkind_type(atstype_ptrk) arg0)
+{
+/* tmpvardeclst(beg) */
+// ATStmpdec_void(tmpret22) ;
+// ATStmpdec_void(tmp23) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2936(line=121, offs=12) -- 2955(line=121, offs=31)
+*/
+ATSINSmove_void(tmp23, atscntrb_gmp_mpz_clear(ATSPMVrefarg1(arg0))) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2959(line=121, offs=35) -- 2983(line=121, offs=59)
+*/
+ATSINSmove_void(tmpret22, atspre_ptr_free(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn_void(tmpret22) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2888(line=119, offs=12) -- 2987(line=122, offs=4)
+*/
+/*
+local: 
+global: intinf_free$12$1(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atsvoid_t0ype
+ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__1(atstkind_type(atstype_ptrk) arg0)
+{
+/* tmpvardeclst(beg) */
+// ATStmpdec_void(tmpret22__1) ;
+// ATStmpdec_void(tmp23__1) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2936(line=121, offs=12) -- 2955(line=121, offs=31)
+*/
+ATSINSmove_void(tmp23__1, atscntrb_gmp_mpz_clear(ATSPMVrefarg1(arg0))) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2959(line=121, offs=35) -- 2983(line=121, offs=59)
+*/
+ATSINSmove_void(tmpret22__1, atspre_ptr_free(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn_void(tmpret22__1) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7394(line=413, offs=3) -- 7461(line=418, offs=2)
+*/
+/*
+local: 
+global: mul_intinf0_int$8$2(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__2(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret13__2, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp14__2) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7376(line=412, offs=1) -- 7461(line=418, offs=2)
+*/
+ATSINSflab(__patsflab_mul_intinf0_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7427(line=416, offs=10) -- 7456(line=416, offs=39)
+*/
+ATSINSmove_void(tmp14__2, atscntrb_gmp_mpz_mul2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7404(line=413, offs=13) -- 7405(line=413, offs=14)
+*/
+ATSINSmove(tmpret13__2, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret13__2) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__2] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = 
+tmparg = 
+tmpsub = None()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30, PMVtmpltcst(ptr_alloc<S2Ecst(mpz_vt0ype)>)()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29, tmp30) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$1(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__1(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__1, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__1, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__1) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__1, ATSLIB_056_prelude__ptr_alloc__17__1()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__1, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__1, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__1, tmp30__1) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__1) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__1] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = None()
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35, atspre_ptr_alloc_tsz(ATSPMVsizeof(atstyvar_type(a)))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$1(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__1()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__1, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__1, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__1) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$2(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__2(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__2, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__2, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__2) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__2, ATSLIB_056_prelude__ptr_alloc__17__2()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__2, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__2, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__2, tmp30__2) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__2) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__2] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$2(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__2()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__2, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__2, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__2) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__2] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$3(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__3(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__3, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__3, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__3) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__3, ATSLIB_056_prelude__ptr_alloc__17__3()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__3, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__3, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__3, tmp30__3) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__3) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__3] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$3(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__3()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__3, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__3, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__3) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__3] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$4(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__4(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__4, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__4, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__4) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__4, ATSLIB_056_prelude__ptr_alloc__17__4()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__4, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__4, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__4, tmp30__4) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__4) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__4] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$4(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__4()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__4, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__4, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__4) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__4] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$5(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__5(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__5, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__5, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__5) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__5, ATSLIB_056_prelude__ptr_alloc__17__5()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__5, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__5, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__5, tmp30__5) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__5) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__5] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$5(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__5()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__5, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__5, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__5) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__5] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 986(line=36, offs=5) -- 1158(line=40, offs=59)
+*/
+/*
+local: fact_28$0(level=0)
+global: fact_28$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+fact_28(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(apy0, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpret56, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp65, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp68, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp69, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+/*
+emit_funent_fnxdeclst:
+*/
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 986(line=36, offs=5) -- 1158(line=40, offs=59)
+*/
+ATSINSflab(__patsflab_fact_28):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1039(line=37, offs=3) -- 1158(line=40, offs=59)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1056(line=38, offs=7) -- 1057(line=38, offs=8)
+*/
+ATSINSlab(__atstmplab7):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1008(line=36, offs=27) -- 1009(line=36, offs=28)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(0))) { ATSINSgoto(__atstmplab9) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1057(line=38, offs=8) -- 1057(line=38, offs=8)
+*/
+ATSINSlab(__atstmplab8):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1061(line=38, offs=12) -- 1074(line=38, offs=25)
+*/
+ATSINSmove(tmpret56, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__6(ATSPMVi0nt(1))) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1081(line=39, offs=7) -- 1082(line=39, offs=8)
+*/
+ATSINSlab(__atstmplab9):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1008(line=36, offs=27) -- 1009(line=36, offs=28)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab11) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1082(line=39, offs=8) -- 1082(line=39, offs=8)
+*/
+ATSINSlab(__atstmplab10):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1086(line=39, offs=12) -- 1099(line=39, offs=25)
+*/
+ATSINSmove(tmpret56, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__7(ATSPMVi0nt(1))) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1107(line=40, offs=8) -- 1107(line=40, offs=8)
+*/
+ATSINSlab(__atstmplab11):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1147(line=40, offs=48) -- 1152(line=40, offs=53)
+*/
+ATSINSmove(tmp69, atspre_g1int_sub_int(arg0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1142(line=40, offs=43) -- 1153(line=40, offs=54)
+*/
+ATSINSmove(tmp68, fact_28(tmp69)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1126(line=40, offs=27) -- 1157(line=40, offs=58)
+*/
+ATSINSmove(tmp65, ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__3(tmp68, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1112(line=40, offs=13) -- 1158(line=40, offs=59)
+*/
+ATSINSmove(tmpret56, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmp65)) ;
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+ATSfunbody_end()
+ATSreturn(tmpret56) ;
+/*
+emit_funent_fnxbodylst:
+*/
+} /* end of [fact_28] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$6(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__6(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__6, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__6, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__6) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__6, ATSLIB_056_prelude__ptr_alloc__17__6()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__6, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__6, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__6, tmp30__6) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__6) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__6] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$6(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__6()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__6, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__6, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__6) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__6] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$7(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__7(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__7, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__7, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__7) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__7, ATSLIB_056_prelude__ptr_alloc__17__7()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__7, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__7, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__7, tmp30__7) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__7) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__7] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$7(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__7()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__7, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__7, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__7) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__7] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7394(line=413, offs=3) -- 7461(line=418, offs=2)
+*/
+/*
+local: 
+global: mul_intinf0_int$8$3(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__3(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret13__3, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp14__3) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7376(line=412, offs=1) -- 7461(line=418, offs=2)
+*/
+ATSINSflab(__patsflab_mul_intinf0_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7427(line=416, offs=10) -- 7456(line=416, offs=39)
+*/
+ATSINSmove_void(tmp14__3, atscntrb_gmp_mpz_mul2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7404(line=413, offs=13) -- 7405(line=413, offs=14)
+*/
+ATSINSmove(tmpret13__3, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret13__3) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__3] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1234(line=43, offs=5) -- 1444(line=52, offs=8)
+*/
+/*
+local: dfact_34$0(level=0)
+global: dfact_34$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+dfact_34(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(apy0, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpret70, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmpref79, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp80, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref81, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+/*
+emit_funent_fnxdeclst:
+*/
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1234(line=43, offs=5) -- 1444(line=52, offs=8)
+*/
+ATSINSflab(__patsflab_dfact_34):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1282(line=44, offs=3) -- 1444(line=52, offs=8)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1299(line=45, offs=7) -- 1300(line=45, offs=8)
+*/
+ATSINSlab(__atstmplab12):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1257(line=43, offs=28) -- 1258(line=43, offs=29)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(0))) { ATSINSgoto(__atstmplab14) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1300(line=45, offs=8) -- 1300(line=45, offs=8)
+*/
+ATSINSlab(__atstmplab13):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1304(line=45, offs=12) -- 1317(line=45, offs=25)
+*/
+ATSINSmove(tmpret70, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__8(ATSPMVi0nt(1))) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1324(line=46, offs=7) -- 1325(line=46, offs=8)
+*/
+ATSINSlab(__atstmplab14):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1257(line=43, offs=28) -- 1258(line=43, offs=29)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab16) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1325(line=46, offs=8) -- 1325(line=46, offs=8)
+*/
+ATSINSlab(__atstmplab15):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1329(line=46, offs=12) -- 1342(line=46, offs=25)
+*/
+ATSINSmove(tmpret70, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__9(ATSPMVi0nt(1))) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1350(line=47, offs=8) -- 1350(line=47, offs=8)
+*/
+ATSINSlab(__atstmplab16):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1355(line=47, offs=13) -- 1444(line=52, offs=8)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1369(line=48, offs=11) -- 1370(line=48, offs=12)
+*/
+/*
+ATSINStmpdec(tmpref79) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1379(line=48, offs=21) -- 1384(line=48, offs=26)
+*/
+ATSINSmove(tmp80, atspre_g1int_sub_int(arg0, ATSPMVi0nt(2))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1373(line=48, offs=15) -- 1385(line=48, offs=27)
+*/
+ATSINSmove(tmpref79, dfact_34(tmp80)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1396(line=49, offs=11) -- 1397(line=49, offs=12)
+*/
+/*
+ATSINStmpdec(tmpref81) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1400(line=49, offs=15) -- 1421(line=49, offs=36)
+*/
+ATSINSmove(tmpref81, ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__4(tmpref79, arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1435(line=51, offs=7) -- 1436(line=51, offs=8)
+*/
+ATSINSmove(tmpret70, tmpref81) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1355(line=47, offs=13) -- 1444(line=52, offs=8)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+ATSfunbody_end()
+ATSreturn(tmpret70) ;
+/*
+emit_funent_fnxbodylst:
+*/
+} /* end of [dfact_34] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$8(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__8(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__8, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__8, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__8) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__8, ATSLIB_056_prelude__ptr_alloc__17__8()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__8, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__8, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__8, tmp30__8) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__8) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__8] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$8(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__8()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__8, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__8, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__8) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__8] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$9(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__9(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__9, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__9, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__9) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__9, ATSLIB_056_prelude__ptr_alloc__17__9()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__9, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__9, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__9, tmp30__9) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__9) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__9] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$9(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__9()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__9, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__9, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__9) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__9] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7394(line=413, offs=3) -- 7461(line=418, offs=2)
+*/
+/*
+local: 
+global: mul_intinf0_int$8$4(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__4(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret13__4, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp14__4) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7376(line=412, offs=1) -- 7461(line=418, offs=2)
+*/
+ATSINSflab(__patsflab_mul_intinf0_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7427(line=416, offs=10) -- 7456(line=416, offs=39)
+*/
+ATSINSmove_void(tmp14__4, atscntrb_gmp_mpz_mul2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7404(line=413, offs=13) -- 7405(line=413, offs=14)
+*/
+ATSINSmove(tmpret13__4, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret13__4) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__4] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1507(line=55, offs=4) -- 1717(line=63, offs=6)
+*/
+/*
+local: fact_28$0(level=0)
+global: fact_28$0(level=0), permutations_40$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+permutations_40(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret84, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmpref85, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmpref86, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp87, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref88, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp93) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1507(line=55, offs=4) -- 1717(line=63, offs=6)
+*/
+ATSINSflab(__patsflab_permutations_40):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1588(line=56, offs=3) -- 1717(line=63, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1600(line=57, offs=9) -- 1601(line=57, offs=10)
+*/
+/*
+ATSINStmpdec(tmpref85) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1604(line=57, offs=13) -- 1610(line=57, offs=19)
+*/
+ATSINSmove(tmpref85, fact_28(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1620(line=58, offs=9) -- 1621(line=58, offs=10)
+*/
+/*
+ATSINStmpdec(tmpref86) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1629(line=58, offs=18) -- 1634(line=58, offs=23)
+*/
+ATSINSmove(tmp87, atspre_g1int_sub_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1624(line=58, offs=13) -- 1635(line=58, offs=24)
+*/
+ATSINSmove(tmpref86, fact_28(tmp87)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1644(line=59, offs=9) -- 1645(line=59, offs=10)
+*/
+/*
+ATSINStmpdec(tmpref88) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1648(line=59, offs=13) -- 1673(line=59, offs=38)
+*/
+ATSINSmove(tmpref88, ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__1(tmpref85, ATSPMVrefarg0(tmpref86))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1686(line=60, offs=13) -- 1699(line=60, offs=26)
+*/
+ATSINSmove_void(tmp93, ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__2(tmpref86)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1710(line=62, offs=5) -- 1711(line=62, offs=6)
+*/
+ATSINSmove(tmpret84, tmpref88) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1588(line=56, offs=3) -- 1717(line=63, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret84) ;
+} /* end of [permutations_40] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9009(line=513, offs=3) -- 9083(line=518, offs=2)
+*/
+/*
+local: 
+global: div_intinf0_intinf1$41$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = 
+tmparg = 
+tmpsub = None()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret89, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp90) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 8987(line=512, offs=1) -- 9083(line=518, offs=2)
+*/
+ATSINSflab(__patsflab_div_intinf0_intinf1):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9042(line=516, offs=10) -- 9078(line=516, offs=46)
+*/
+ATSINSmove_void(tmp90, atscntrb_gmp_mpz_tdiv2_q_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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9019(line=513, offs=13) -- 9020(line=513, offs=14)
+*/
+ATSINSmove(tmpret89, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret89) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9009(line=513, offs=3) -- 9083(line=518, offs=2)
+*/
+/*
+local: 
+global: div_intinf0_intinf1$41$1(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__1(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret89__1, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp90__1) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 8987(line=512, offs=1) -- 9083(line=518, offs=2)
+*/
+ATSINSflab(__patsflab_div_intinf0_intinf1):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9042(line=516, offs=10) -- 9078(line=516, offs=46)
+*/
+ATSINSmove_void(tmp90__1, atscntrb_gmp_mpz_tdiv2_q_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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9019(line=513, offs=13) -- 9020(line=513, offs=14)
+*/
+ATSINSmove(tmpret89__1, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret89__1) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2888(line=119, offs=12) -- 2987(line=122, offs=4)
+*/
+/*
+local: 
+global: intinf_free$12$2(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atsvoid_t0ype
+ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__2(atstkind_type(atstype_ptrk) arg0)
+{
+/* tmpvardeclst(beg) */
+// ATStmpdec_void(tmpret22__2) ;
+// ATStmpdec_void(tmp23__2) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2936(line=121, offs=12) -- 2955(line=121, offs=31)
+*/
+ATSINSmove_void(tmp23__2, atscntrb_gmp_mpz_clear(ATSPMVrefarg1(arg0))) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2959(line=121, offs=35) -- 2983(line=121, offs=59)
+*/
+ATSINSmove_void(tmpret22__2, atspre_ptr_free(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn_void(tmpret22__2) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__2] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1769(line=66, offs=4) -- 2389(line=89, offs=6)
+*/
+/*
+local: fact_28$0(level=0)
+global: fact_28$0(level=0), catalan_44$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+catalan_44(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret96, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmpref117, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmpref118, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmpref119, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp122) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1769(line=66, offs=4) -- 2389(line=89, offs=6)
+*/
+ATSINSflab(__patsflab_catalan_44):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1813(line=67, offs=3) -- 2389(line=89, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2126(line=78, offs=5) -- 2383(line=88, offs=10)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2145(line=79, offs=9) -- 2146(line=79, offs=10)
+*/
+ATSINSlab(__atstmplab20):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1788(line=66, offs=23) -- 1789(line=66, offs=24)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(0))) { ATSINSgoto(__atstmplab22) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2146(line=79, offs=10) -- 2146(line=79, offs=10)
+*/
+ATSINSlab(__atstmplab21):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2150(line=79, offs=14) -- 2163(line=79, offs=27)
+*/
+ATSINSmove(tmpret96, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__11(ATSPMVi0nt(1))) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2172(line=80, offs=9) -- 2173(line=80, offs=10)
+*/
+ATSINSlab(__atstmplab22):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1788(line=66, offs=23) -- 1789(line=66, offs=24)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab24) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2173(line=80, offs=10) -- 2173(line=80, offs=10)
+*/
+ATSINSlab(__atstmplab23):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2177(line=80, offs=14) -- 2190(line=80, offs=27)
+*/
+ATSINSmove(tmpret96, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__12(ATSPMVi0nt(1))) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2200(line=81, offs=10) -- 2200(line=81, offs=10)
+*/
+ATSINSlab(__atstmplab24):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2205(line=81, offs=15) -- 2383(line=88, offs=10)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2221(line=82, offs=13) -- 2222(line=82, offs=14)
+*/
+/*
+ATSINStmpdec(tmpref117) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2225(line=82, offs=17) -- 2241(line=82, offs=33)
+*/
+ATSINSmove(tmpref117, numerator_loop_45(arg0, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2255(line=83, offs=13) -- 2256(line=83, offs=14)
+*/
+/*
+ATSINStmpdec(tmpref118) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2259(line=83, offs=17) -- 2265(line=83, offs=23)
+*/
+ATSINSmove(tmpref118, fact_28(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2279(line=84, offs=13) -- 2280(line=84, offs=14)
+*/
+/*
+ATSINStmpdec(tmpref119) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2283(line=84, offs=17) -- 2308(line=84, offs=42)
+*/
+ATSINSmove(tmpref119, ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__2(tmpref117, ATSPMVrefarg0(tmpref118))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2325(line=85, offs=17) -- 2338(line=85, offs=30)
+*/
+ATSINSmove_void(tmp122, ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__3(tmpref118)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2357(line=87, offs=9) -- 2372(line=87, offs=24)
+*/
+ATSINSmove(tmpret96, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmpref119)) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2205(line=81, offs=15) -- 2383(line=88, offs=10)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1813(line=67, offs=3) -- 2389(line=89, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret96) ;
+} /* end of [catalan_44] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1825(line=68, offs=9) -- 2116(line=76, offs=12)
+*/
+/*
+local: numerator_loop_45$0(level=1)
+global: numerator_loop_45$0(level=1)
+local: n$5115(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+global: n$5115(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+numerator_loop_45(atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret97, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp102, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref103, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp104, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref105, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp108, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1825(line=68, offs=9) -- 2116(line=76, offs=12)
+*/
+ATSINSflab(__patsflab_numerator_loop_45):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1919(line=69, offs=7) -- 2116(line=76, offs=12)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1940(line=70, offs=11) -- 1941(line=70, offs=12)
+*/
+ATSINSlab(__atstmplab17):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1867(line=68, offs=51) -- 1868(line=68, offs=52)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(2))) { ATSINSgoto(__atstmplab19) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1941(line=70, offs=12) -- 1941(line=70, offs=12)
+*/
+ATSINSlab(__atstmplab18):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1945(line=70, offs=16) -- 1962(line=70, offs=33)
+*/
+ATSINSmove(tmp102, atspre_g1int_add_int(env0, ATSPMVi0nt(2))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1945(line=70, offs=16) -- 1962(line=70, offs=33)
+*/
+ATSINSmove(tmpret97, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__10(tmp102)) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1974(line=71, offs=12) -- 1974(line=71, offs=12)
+*/
+ATSINSlab(__atstmplab19):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1979(line=71, offs=17) -- 2116(line=76, offs=12)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1997(line=72, offs=15) -- 1998(line=72, offs=16)
+*/
+/*
+ATSINStmpdec(tmpref103) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2016(line=72, offs=34) -- 2021(line=72, offs=39)
+*/
+ATSINSmove(tmp104, atspre_g1int_sub_int(arg0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2001(line=72, offs=19) -- 2022(line=72, offs=40)
+*/
+ATSINSmove(tmpref103, numerator_loop_45(env0, tmp104)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2037(line=73, offs=15) -- 2038(line=73, offs=16)
+*/
+/*
+ATSINStmpdec(tmpref105) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2060(line=73, offs=38) -- 2065(line=73, offs=43)
+*/
+ATSINSmove(tmp108, atspre_g1int_add_int(env0, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2041(line=73, offs=19) -- 2066(line=73, offs=44)
+*/
+ATSINSmove(tmpref105, ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__5(tmpref103, tmp108)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2088(line=75, offs=11) -- 2103(line=75, offs=26)
+*/
+ATSINSmove(tmpret97, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmpref105)) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 1979(line=71, offs=17) -- 2116(line=76, offs=12)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+ATSfunbody_end()
+ATSreturn(tmpret97) ;
+} /* end of [numerator_loop_45] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$10(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__10(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__10, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__10, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__10) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__10, ATSLIB_056_prelude__ptr_alloc__17__10()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__10, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__10, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__10, tmp30__10) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__10) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__10] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$10(level=3)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__10()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__10, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__10, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__10) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__10] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7394(line=413, offs=3) -- 7461(line=418, offs=2)
+*/
+/*
+local: 
+global: mul_intinf0_int$8$5(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__5(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret13__5, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp14__5) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7376(line=412, offs=1) -- 7461(line=418, offs=2)
+*/
+ATSINSflab(__patsflab_mul_intinf0_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7427(line=416, offs=10) -- 7456(line=416, offs=39)
+*/
+ATSINSmove_void(tmp14__5, atscntrb_gmp_mpz_mul2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7404(line=413, offs=13) -- 7405(line=413, offs=14)
+*/
+ATSINSmove(tmpret13__5, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret13__5) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__5] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$11(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__11(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__11, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__11, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__11) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__11, ATSLIB_056_prelude__ptr_alloc__17__11()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__11, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__11, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__11, tmp30__11) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__11) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__11] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$11(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__11()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__11, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__11, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__11) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__11] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$12(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__12(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__12, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__12, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__12) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__12, ATSLIB_056_prelude__ptr_alloc__17__12()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__12, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__12, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__12, tmp30__12) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__12) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__12] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$12(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__12()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__12, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__12, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__12) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__12] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9009(line=513, offs=3) -- 9083(line=518, offs=2)
+*/
+/*
+local: 
+global: div_intinf0_intinf1$41$2(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__2(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret89__2, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp90__2) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 8987(line=512, offs=1) -- 9083(line=518, offs=2)
+*/
+ATSINSflab(__patsflab_div_intinf0_intinf1):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9042(line=516, offs=10) -- 9078(line=516, offs=46)
+*/
+ATSINSmove_void(tmp90__2, atscntrb_gmp_mpz_tdiv2_q_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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9019(line=513, offs=13) -- 9020(line=513, offs=14)
+*/
+ATSINSmove(tmpret89__2, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret89__2) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__2] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2888(line=119, offs=12) -- 2987(line=122, offs=4)
+*/
+/*
+local: 
+global: intinf_free$12$3(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atsvoid_t0ype
+ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__3(atstkind_type(atstype_ptrk) arg0)
+{
+/* tmpvardeclst(beg) */
+// ATStmpdec_void(tmpret22__3) ;
+// ATStmpdec_void(tmp23__3) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2936(line=121, offs=12) -- 2955(line=121, offs=31)
+*/
+ATSINSmove_void(tmp23__3, atscntrb_gmp_mpz_clear(ATSPMVrefarg1(arg0))) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2959(line=121, offs=35) -- 2983(line=121, offs=59)
+*/
+ATSINSmove_void(tmpret22__3, atspre_ptr_free(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn_void(tmpret22__3) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__3] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2452(line=92, offs=4) -- 3157(line=116, offs=6)
+*/
+/*
+local: fact_28$0(level=0)
+global: fact_28$0(level=0), choose_55$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+choose_55(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret125, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmpref153, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmpref154, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmpref155, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp158) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2452(line=92, offs=4) -- 3157(line=116, offs=6)
+*/
+ATSINSflab(__patsflab_choose_55):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2527(line=93, offs=3) -- 3157(line=116, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2894(line=105, offs=5) -- 3151(line=115, offs=10)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2913(line=106, offs=9) -- 2914(line=106, offs=10)
+*/
+ATSINSlab(__atstmplab30):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2502(line=92, offs=54) -- 2503(line=92, offs=55)
+*/
+ATSifnthen(ATSCKpat_int(arg1, ATSPMVint(0))) { ATSINSgoto(__atstmplab32) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2914(line=106, offs=10) -- 2914(line=106, offs=10)
+*/
+ATSINSlab(__atstmplab31):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2918(line=106, offs=14) -- 2931(line=106, offs=27)
+*/
+ATSINSmove(tmpret125, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__15(ATSPMVi0nt(1))) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2940(line=107, offs=9) -- 2941(line=107, offs=10)
+*/
+ATSINSlab(__atstmplab32):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2502(line=92, offs=54) -- 2503(line=92, offs=55)
+*/
+ATSifnthen(ATSCKpat_int(arg1, ATSPMVint(1))) { ATSINSgoto(__atstmplab34) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2941(line=107, offs=10) -- 2941(line=107, offs=10)
+*/
+ATSINSlab(__atstmplab33):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2945(line=107, offs=14) -- 2957(line=107, offs=26)
+*/
+ATSINSmove(tmpret125, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__16(arg0)) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2968(line=108, offs=10) -- 2968(line=108, offs=10)
+*/
+ATSINSlab(__atstmplab34):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2973(line=108, offs=15) -- 3151(line=115, offs=10)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2989(line=109, offs=13) -- 2990(line=109, offs=14)
+*/
+/*
+ATSINStmpdec(tmpref153) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2993(line=109, offs=17) -- 3009(line=109, offs=33)
+*/
+ATSINSmove(tmpref153, numerator_loop_56(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 3023(line=110, offs=13) -- 3024(line=110, offs=14)
+*/
+/*
+ATSINStmpdec(tmpref154) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 3027(line=110, offs=17) -- 3033(line=110, offs=23)
+*/
+ATSINSmove(tmpref154, fact_28(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 3047(line=111, offs=13) -- 3048(line=111, offs=14)
+*/
+/*
+ATSINStmpdec(tmpref155) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 3051(line=111, offs=17) -- 3076(line=111, offs=42)
+*/
+ATSINSmove(tmpref155, ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__3(tmpref153, ATSPMVrefarg0(tmpref154))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 3093(line=112, offs=17) -- 3106(line=112, offs=30)
+*/
+ATSINSmove_void(tmp158, ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__4(tmpref154)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 3125(line=114, offs=9) -- 3140(line=114, offs=24)
+*/
+ATSINSmove(tmpret125, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmpref155)) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2973(line=108, offs=15) -- 3151(line=115, offs=10)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2527(line=93, offs=3) -- 3157(line=116, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret125) ;
+} /* end of [choose_55] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2539(line=94, offs=9) -- 2884(line=103, offs=12)
+*/
+/*
+local: numerator_loop_56$0(level=1)
+global: numerator_loop_56$0(level=1)
+local: n$5126(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+global: n$5126(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+numerator_loop_56(atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret126, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp131, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp136, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp137, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref138, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp139, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref140, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp143, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp144, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2539(line=94, offs=9) -- 2884(line=103, offs=12)
+*/
+ATSINSflab(__patsflab_numerator_loop_56):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2633(line=95, offs=7) -- 2884(line=103, offs=12)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2654(line=96, offs=11) -- 2655(line=96, offs=12)
+*/
+ATSINSlab(__atstmplab25):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2581(line=94, offs=51) -- 2582(line=94, offs=52)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab27) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2655(line=96, offs=12) -- 2655(line=96, offs=12)
+*/
+ATSINSlab(__atstmplab26):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2659(line=96, offs=16) -- 2671(line=96, offs=28)
+*/
+ATSINSmove(tmpret126, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__13(env0)) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2683(line=97, offs=11) -- 2684(line=97, offs=12)
+*/
+ATSINSlab(__atstmplab27):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2581(line=94, offs=51) -- 2582(line=94, offs=52)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(2))) { ATSINSgoto(__atstmplab29) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2684(line=97, offs=12) -- 2684(line=97, offs=12)
+*/
+ATSINSlab(__atstmplab28):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2702(line=97, offs=30) -- 2725(line=97, offs=53)
+*/
+ATSINSmove(tmp137, atspre_g1int_sub_int(env0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2702(line=97, offs=30) -- 2725(line=97, offs=53)
+*/
+ATSINSmove(tmp136, atspre_g1int_mul_int(tmp137, env0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2702(line=97, offs=30) -- 2725(line=97, offs=53)
+*/
+ATSINSmove(tmp131, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__14(tmp136)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2688(line=97, offs=16) -- 2726(line=97, offs=54)
+*/
+ATSINSmove(tmpret126, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmp131)) ;
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2738(line=98, offs=12) -- 2738(line=98, offs=12)
+*/
+ATSINSlab(__atstmplab29):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2743(line=98, offs=17) -- 2884(line=103, offs=12)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2761(line=99, offs=15) -- 2762(line=99, offs=16)
+*/
+/*
+ATSINStmpdec(tmpref138) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2780(line=99, offs=34) -- 2785(line=99, offs=39)
+*/
+ATSINSmove(tmp139, atspre_g1int_sub_int(arg0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2765(line=99, offs=19) -- 2786(line=99, offs=40)
+*/
+ATSINSmove(tmpref138, numerator_loop_56(env0, tmp139)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2801(line=100, offs=15) -- 2802(line=100, offs=16)
+*/
+/*
+ATSINStmpdec(tmpref140) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2824(line=100, offs=38) -- 2829(line=100, offs=43)
+*/
+ATSINSmove(tmp144, atspre_g1int_add_int(env0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2824(line=100, offs=38) -- 2833(line=100, offs=47)
+*/
+ATSINSmove(tmp143, atspre_g1int_sub_int(tmp144, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2805(line=100, offs=19) -- 2834(line=100, offs=48)
+*/
+ATSINSmove(tmpref140, ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__6(tmpref138, tmp143)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2856(line=102, offs=11) -- 2871(line=102, offs=26)
+*/
+ATSINSmove(tmpret126, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmpref140)) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/combinatorics-internal.dats: 2743(line=98, offs=17) -- 2884(line=103, offs=12)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+ATSfunbody_end()
+ATSreturn(tmpret126) ;
+} /* end of [numerator_loop_56] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$13(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__13(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__13, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__13, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__13) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__13, ATSLIB_056_prelude__ptr_alloc__17__13()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__13, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__13, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__13, tmp30__13) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__13) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__13] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$13(level=3)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__13()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__13, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__13, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__13) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__13] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$14(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__14(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__14, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__14, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__14) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__14, ATSLIB_056_prelude__ptr_alloc__17__14()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__14, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__14, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__14, tmp30__14) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__14) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__14] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$14(level=3)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__14()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__14, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__14, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__14) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__14] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7394(line=413, offs=3) -- 7461(line=418, offs=2)
+*/
+/*
+local: 
+global: mul_intinf0_int$8$6(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__6(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret13__6, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp14__6) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7376(line=412, offs=1) -- 7461(line=418, offs=2)
+*/
+ATSINSflab(__patsflab_mul_intinf0_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7427(line=416, offs=10) -- 7456(line=416, offs=39)
+*/
+ATSINSmove_void(tmp14__6, atscntrb_gmp_mpz_mul2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7404(line=413, offs=13) -- 7405(line=413, offs=14)
+*/
+ATSINSmove(tmpret13__6, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7403(line=413, offs=12) -- 7461(line=418, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret13__6) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_int__8__6] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$15(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__15(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__15, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__15, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__15) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__15, ATSLIB_056_prelude__ptr_alloc__17__15()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__15, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__15, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__15, tmp30__15) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__15) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__15] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$15(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__15()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__15, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__15, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__15) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__15] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$15$16(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__16(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret29__16, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp30__16, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp31__16) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp30__16, ATSLIB_056_prelude__ptr_alloc__17__16()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp31__16, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp30__16, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret29__16, tmp30__16) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret29__16) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__15__16] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$17$16(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__17__16()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret35__16, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret35__16, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret35__16) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__17__16] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9009(line=513, offs=3) -- 9083(line=518, offs=2)
+*/
+/*
+local: 
+global: div_intinf0_intinf1$41$3(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__3(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret89__3, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp90__3) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 8987(line=512, offs=1) -- 9083(line=518, offs=2)
+*/
+ATSINSflab(__patsflab_div_intinf0_intinf1):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9042(line=516, offs=10) -- 9078(line=516, offs=46)
+*/
+ATSINSmove_void(tmp90__3, atscntrb_gmp_mpz_tdiv2_q_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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9019(line=513, offs=13) -- 9020(line=513, offs=14)
+*/
+ATSINSmove(tmpret89__3, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 9018(line=513, offs=12) -- 9083(line=518, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret89__3) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__div_intinf0_intinf1__41__3] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2888(line=119, offs=12) -- 2987(line=122, offs=4)
+*/
+/*
+local: 
+global: intinf_free$12$4(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atsvoid_t0ype
+ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__4(atstkind_type(atstype_ptrk) arg0)
+{
+/* tmpvardeclst(beg) */
+// ATStmpdec_void(tmpret22__4) ;
+// ATStmpdec_void(tmp23__4) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2936(line=121, offs=12) -- 2955(line=121, offs=31)
+*/
+ATSINSmove_void(tmp23__4, atscntrb_gmp_mpz_clear(ATSPMVrefarg1(arg0))) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2959(line=121, offs=35) -- 2983(line=121, offs=59)
+*/
+ATSINSmove_void(tmpret22__4, atspre_ptr_free(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn_void(tmpret22__4) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_free__12__4] */
+
+/*
+/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 660(line=32, offs=22) -- 683(line=33, offs=15)
+*/
+/*
+local: choose_55$0(level=0)
+global: fact_28$0(level=0), choose_55$0(level=0), choose_ats$69$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+atstkind_type(atstype_ptrk)
+choose_ats(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret161, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 649(line=32, offs=11) -- 683(line=33, offs=15)
+*/
+ATSINSflab(__patsflab_choose_ats):
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 671(line=33, offs=3) -- 683(line=33, offs=15)
+*/
+ATSINSmove(tmpret161, choose_55(arg0, arg1)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret161) ;
+} /* end of [choose_ats] */
+
+/*
+/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 712(line=35, offs=28) -- 735(line=36, offs=15)
+*/
+/*
+local: choose_55$0(level=0)
+global: fact_28$0(level=0), choose_55$0(level=0), permutations_ats$70$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+atstkind_type(atstype_ptrk)
+permutations_ats(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret162, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 695(line=35, offs=11) -- 735(line=36, offs=15)
+*/
+ATSINSflab(__patsflab_permutations_ats):
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 723(line=36, offs=3) -- 735(line=36, offs=15)
+*/
+ATSINSmove(tmpret162, choose_55(arg0, arg1)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret162) ;
+} /* end of [permutations_ats] */
+
+/*
+/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 768(line=38, offs=32) -- 783(line=39, offs=10)
+*/
+/*
+local: dfact_34$0(level=0)
+global: dfact_34$0(level=0), double_factorial_ats$71$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+atstkind_type(atstype_ptrk)
+double_factorial_ats(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret163, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 747(line=38, offs=11) -- 784(line=39, offs=11)
+*/
+ATSINSflab(__patsflab_double_factorial_ats):
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 776(line=39, offs=3) -- 783(line=39, offs=10)
+*/
+ATSINSmove(tmpret163, dfact_34(arg0)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret163) ;
+} /* end of [double_factorial_ats] */
+
+/*
+/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 810(line=41, offs=25) -- 824(line=42, offs=9)
+*/
+/*
+local: fact_28$0(level=0)
+global: fact_28$0(level=0), factorial_ats$72$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+atstkind_type(atstype_ptrk)
+factorial_ats(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret164, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 796(line=41, offs=11) -- 825(line=42, offs=10)
+*/
+ATSINSflab(__patsflab_factorial_ats):
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 818(line=42, offs=3) -- 824(line=42, offs=9)
+*/
+ATSINSmove(tmpret164, fact_28(arg0)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret164) ;
+} /* end of [factorial_ats] */
+
+/*
+/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 849(line=44, offs=23) -- 866(line=45, offs=12)
+*/
+/*
+local: catalan_44$0(level=0)
+global: fact_28$0(level=0), catalan_44$0(level=0), catalan_ats$73$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+atstkind_type(atstype_ptrk)
+catalan_ats(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret165, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 837(line=44, offs=11) -- 867(line=45, offs=13)
+*/
+ATSINSflab(__patsflab_catalan_ats):
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/combinatorics.dats: 857(line=45, offs=3) -- 866(line=45, offs=12)
+*/
+ATSINSmove(tmpret165, catalan_44(arg0)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret165) ;
+} /* end of [catalan_ats] */
+
+/*
+** for initialization(dynloading)
+*/
+ATSdynloadflag_minit(_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_combinatorics_056_dats__dynloadflag) ;
+ATSextern()
+atsvoid_t0ype
+_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_combinatorics_056_dats__dynload()
+{
+ATSfunbody_beg()
+ATSdynload(/*void*/)
+ATSdynloadflag_sta(
+_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_combinatorics_056_dats__dynloadflag
+) ;
+ATSif(
+ATSCKiseqz(
+_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_combinatorics_056_dats__dynloadflag
+)
+) ATSthen() {
+ATSdynloadset(_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_combinatorics_056_dats__dynloadflag) ;
 /*
 dynexnlst-initize(beg)
 */
diff --git a/cbits/number-theory.c b/cbits/number-theory.c
--- a/cbits/number-theory.c
+++ b/cbits/number-theory.c
@@ -1,9367 +1,9367 @@
 /*
 **
 ** The C code is generated by [ATS/Postiats-0-3-8]
-** The starting compilation time is: 2018-1-15: 14h:59m
-**
-*/
-
-/*
-** 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)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/basics.dats: 1636(line=50, offs=1) -- 1675(line=50, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 1533(line=44, offs=1) -- 1572(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_long.dats: 1602(line=49, offs=1) -- 1641(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_size.dats: 1597(line=49, offs=1) -- 1636(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_short.dats: 1603(line=49, offs=1) -- 1642(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/char.dats: 1610(line=48, offs=1) -- 1649(line=48, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/float.dats: 1636(line=50, offs=1) -- 1675(line=50, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/string.dats: 1631(line=50, offs=1) -- 1670(line=50, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/strptr.dats: 1629(line=50, offs=1) -- 1668(line=50, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/strptr.dats: 1691(line=54, offs=1) -- 1738(line=54, offs=48)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_ptr.dats: 1601(line=49, offs=1) -- 1640(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_fixed.dats: 1603(line=49, offs=1) -- 1642(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/memory.dats: 1410(line=38, offs=1) -- 1449(line=39, offs=32)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 1613(line=49, offs=1) -- 1652(line=50, offs=32)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 1675(line=54, offs=1) -- 1721(line=55, offs=39)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 1744(line=59, offs=1) -- 1789(line=60, offs=38)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/stdio.sats: 1390(line=36, offs=1) -- 1437(line=39, offs=3)
-*/
-
-#include \
-"libats/libc/CATS/stdio.cats"
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/stdio.sats: 1950(line=69, offs=1) -- 1999(line=71, offs=34)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
-*/
-
-#include \
-"libats/libc/CATS/sys/types.cats"
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 1871(line=66, offs=1) -- 1918(line=66, offs=48)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/stat.sats: 1390(line=36, offs=1) -- 1440(line=39, offs=3)
-*/
-
-#include \
-"libats/libc/CATS/sys/stat.cats"
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/stat.sats: 1756(line=58, offs=1) -- 1805(line=60, offs=34)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
-*/
-
-#include \
-"libats/libc/CATS/sys/types.cats"
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 15529(line=878, offs=1) -- 15566(line=879, offs=30)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/stdio.sats: 1390(line=36, offs=1) -- 1437(line=39, offs=3)
-*/
-
-#include \
-"libats/libc/CATS/stdio.cats"
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/stdio.sats: 1950(line=69, offs=1) -- 1999(line=71, offs=34)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
-*/
-
-#include \
-"libats/libc/CATS/sys/types.cats"
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/list.dats: 1529(line=44, offs=1) -- 1568(line=45, offs=32)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/list.dats: 1569(line=46, offs=1) -- 1615(line=47, offs=39)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/list_vt.dats: 1538(line=44, offs=1) -- 1577(line=45, offs=32)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/list_vt.dats: 1578(line=46, offs=1) -- 1624(line=47, offs=39)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/SHARE/list_vt_mergesort.dats: 1546(line=44, offs=1) -- 1585(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/SHARE/list_vt_quicksort.dats: 1546(line=44, offs=1) -- 1585(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/array.dats: 1534(line=44, offs=1) -- 1573(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/array.dats: 1574(line=45, offs=1) -- 1616(line=45, offs=43)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/SHARE/array_bsearch.dats: 1531(line=44, offs=1) -- 1570(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/SHARE/array_quicksort.dats: 1531(line=44, offs=1) -- 1570(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/arrayptr.dats: 1532(line=44, offs=1) -- 1571(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/arrayref.dats: 1532(line=44, offs=1) -- 1571(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/matrix.dats: 1535(line=44, offs=1) -- 1574(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/matrixptr.dats: 1538(line=44, offs=1) -- 1577(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/matrixref.dats: 1538(line=44, offs=1) -- 1577(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream.dats: 1523(line=44, offs=1) -- 1562(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 1523(line=44, offs=1) -- 1562(line=44, offs=40)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/tostring.dats: 1528(line=44, offs=1) -- 1567(line=45, offs=32)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/checkast.dats: 1531(line=44, offs=1) -- 1570(line=45, offs=32)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1660(line=37, offs=1) -- 1700(line=38, offs=27)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1727(line=42, offs=1) -- 1759(line=42, offs=33)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1833(line=49, offs=1) -- 1867(line=49, offs=35)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1868(line=50, offs=1) -- 1908(line=50, offs=41)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1656(line=37, offs=1) -- 1696(line=39, offs=27)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/mydepies.hats: 192(line=16, offs=1) -- 232(line=16, offs=41)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1233(line=43, offs=3)
-*/
-
-//
-#include \
-"atscntrb-libgmp/CATS/gmp.cats"
-//
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1813(line=49, offs=1) -- 1845(line=49, offs=33)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1846(line=50, offs=1) -- 1881(line=50, offs=36)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1657(line=37, offs=1) -- 1689(line=37, offs=33)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1690(line=38, offs=1) -- 1724(line=38, offs=35)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1233(line=43, offs=3)
-*/
-
-//
-#include \
-"atscntrb-libgmp/CATS/gmp.cats"
-//
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/math.sats: 1380(line=35, offs=1) -- 1426(line=38, offs=3)
-*/
-
-#include \
-"libats/libc/CATS/math.cats"
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1660(line=37, offs=1) -- 1700(line=38, offs=27)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1727(line=42, offs=1) -- 1759(line=42, offs=33)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1833(line=49, offs=1) -- 1867(line=49, offs=35)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1868(line=50, offs=1) -- 1908(line=50, offs=41)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1656(line=37, offs=1) -- 1696(line=39, offs=27)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/mydepies.hats: 192(line=16, offs=1) -- 232(line=16, offs=41)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1233(line=43, offs=3)
-*/
-
-//
-#include \
-"atscntrb-libgmp/CATS/gmp.cats"
-//
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1813(line=49, offs=1) -- 1845(line=49, offs=33)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1846(line=50, offs=1) -- 1881(line=50, offs=36)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1657(line=37, offs=1) -- 1689(line=37, offs=33)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1690(line=38, offs=1) -- 1724(line=38, offs=35)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
-*/
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
-*/
-/*
-staload-prologues(end)
-*/
-/*
-typedefs-for-tyrecs-and-tysums(beg)
-*/
-typedef
-ATSstruct {
-atstkind_t0ype(atstype_int) atslab__first ;
-atstkind_t0ype(atstype_int) atslab__second ;
-} postiats_tyrec_0 ;
-typedef
-ATSstruct {
-#if(0)
-int contag ;
-#endif
-atstkind_t0ype(atstype_int) atslab__0 ;
-atstkind_type(atstype_ptrk) atslab__1 ;
-} postiats_tysum_1 ;
-typedef
-ATSstruct {
-#if(0)
-int contag ;
-#endif
-atstyvar_type(a) atslab__0 ;
-atstkind_type(atstype_ptrk) atslab__1 ;
-} postiats_tysum_2 ;
-typedef
-ATSstruct {
-#if(0)
-int contag ;
-#endif
-atstyvar_type(a) atslab__0 ;
-atstkind_type(atstype_ptrk) atslab__1 ;
-} postiats_tysum_3 ;
-typedef
-ATSstruct {
-#if(0)
-int contag ;
-#endif
-atstyvar_type(a) atslab__0 ;
-atstkind_type(atstype_ptrk) atslab__1 ;
-} postiats_tysum_4 ;
-/*
-typedefs-for-tyrecs-and-tysums(end)
-*/
-/*
-dynconlst-declaration(beg)
-*/
-/*
-dynconlst-declaration(end)
-*/
-/*
-dyncstlst-declaration(beg)
-*/
-ATSdyncst_mac(atspre_ptr_alloc_tsz)
-ATSdyncst_mac(atspre_g0int2uint_int_ulint)
-ATSdyncst_mac(atspre_g1int_add_int)
-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_g0float2int_float_int)
-ATSdyncst_mac(atslib_libats_libc_sqrt_float)
-ATSdyncst_mac(atspre_g0int2float_int_float)
-ATSdyncst_mac(atspre_g1int_lt_int)
-ATSdyncst_mac(atspre_g1int_eq_int)
-ATSdyncst_mac(atspre_g0int_div_int)
-ATSdyncst_mac(atspre_g1int_gte_int)
-ATSdyncst_mac(atspre_g1int_neq_int)
-ATSdyncst_mac(atspre_g1int_div_int)
-ATSdyncst_mac(atspre_cloptr_free)
-ATSdyncst_mac(atspre_lazy_vt_free)
-ATSdyncst_mac(atspre_g1int_sub_int)
-ATSdyncst_mac(atspre_g0int_half_int)
-ATSdyncst_mac(atspre_g1int_mul_int)
-ATSdyncst_mac(atspre_g1int_neg_int)
-ATSdyncst_mac(atspre_g0int_add_int)
-ATSdyncst_mac(atspre_g0int_neq_int)
-ATSdyncst_mac(atspre_g0int_sub_int)
-ATSdyncst_mac(atscntrb_gmp_mpz_add2_int)
-ATSdyncst_mac(atscntrb_gmp_mpz_init_set_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_t0ype(atstype_int)
-witness_0(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-fib_gmp_1(atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__2() ;
-#endif // end of [QUALIFIED]
-#endif // end of [TEMPLATE]
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__2__1() ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-exp_5(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6(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__6__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12(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__12__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-sqrt_int_17(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-is_prime_20(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-loop_21(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__22(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__22__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__2(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g1int_int__26(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__26__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__3(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-divides_30(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__4(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-gcd_32(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6__2(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-lcm_34(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-divisors_36(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_37(atstype_bool) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_38(atstype_bool) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-loop_39(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gte_g1int_int__40(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__gte_g1int_int__40__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__5(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__neq_g1int_int__44(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__neq_g1int_int__44__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_48(atstkind_t0ype(atstype_int), atstkind_type(atstype_ptrk), atstype_bool) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_49(atstkind_type(atstype_ptrk), atstype_bool) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_50(atstype_bool) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_51(atstkind_t0ype(atstype_int), atstype_bool) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_52(atstype_bool) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_53(atstype_bool) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__6(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_55(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_type(atstype_ptrk), atstype_bool) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_56(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_type(atstype_ptrk), atstype_bool) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-prime_divisors_57(atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__stream_vt_filter_cloptr__58(atstkind_type(atstype_ptrk), atstype_cloptr) ;
-#endif // end of [QUALIFIED]
-#endif // end of [TEMPLATE]
-
-#if(0)
-ATSstatic()
-atstkind_type(atstype_ptrk)
-auxmain_59__59(atstkind_type(atstype_ptrk), atstype_cloptr) ;
-#endif // end of [TEMPLATE]
-
-#if(0)
-ATSstatic()
-atstype_boxed
-__patsfun_60__60(atstkind_type(atstype_ptrk), atstype_cloptr, atstype_bool) ;
-#endif // end of [TEMPLATE]
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__stream_vt_filter_cloptr__58__1(atstkind_type(atstype_ptrk), atstype_cloptr) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-auxmain_59__59__1(atstkind_type(atstype_ptrk), atstype_cloptr) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_60__60__1(atstkind_type(atstype_ptrk), atstype_cloptr, atstype_bool) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-__patsfun_64(atsrefarg1_type(atstkind_t0ype(atstype_int))) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-div_gt_zero_65(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-exp_mod_prime_66(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6__3(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__7(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-jacobi_72(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-legendre_73(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__8(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__9(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-get_multiplicity_77(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-loop_78(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6__4(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__10(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-count_divisors_81(atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_t0ype(atstype_int)
-ATSLIB_056_prelude__stream_vt_length__82(atstkind_type(atstype_ptrk)) ;
-#endif // end of [QUALIFIED]
-#endif // end of [TEMPLATE]
-
-#if(0)
-ATSstatic()
-atstkind_t0ype(atstype_int)
-loop_83__83(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
-#endif // end of [TEMPLATE]
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-ATSLIB_056_prelude__stream_vt_length__82__1(atstkind_type(atstype_ptrk)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-loop_83__83__1(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-sum_divisors_86(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-loop_87(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gte_g1int_int__40__2(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__11(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__neq_g1int_int__44__2(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__12(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-is_perfect_93(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__13(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-rip_95(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__neq_g0int_int__96(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__neq_g0int_int__96__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6__5(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__lt_g1int_int__22__2(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-prime_factors_101(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-loop_102(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gte_g1int_int__40__3(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_104(atstkind_t0ype(atstype_int), atstype_bool) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_105(atstype_bool) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_106(atstype_bool) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__14(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6__6(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_109(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstype_bool) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_110(atstkind_t0ype(atstype_int), atstype_bool) ;
-
-ATSstatic()
-atstype_boxed
-__patsfun_111(atstype_bool) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-little_omega_112(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-loop_113(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gte_g1int_int__40__4(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__15(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6__7(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_int)
-totient_117(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-postiats_tyrec_0
-adjust_contents_118(postiats_tyrec_0, atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstyvar_type(res)
-ATSLIB_056_prelude__stream_vt_foldleft_cloptr__120(atstkind_type(atstype_ptrk), atstyvar_type(res), atstype_cloptr) ;
-#endif // end of [QUALIFIED]
-#endif // end of [TEMPLATE]
-
-#if(0)
-ATSstatic()
-atstyvar_type(res)
-loop_121__121(atstkind_type(atstype_ptrk), atstyvar_type(res), atstype_cloptr) ;
-#endif // end of [TEMPLATE]
-
-ATSstatic()
-postiats_tyrec_0
-ATSLIB_056_prelude__stream_vt_foldleft_cloptr__120__1(atstkind_type(atstype_ptrk), postiats_tyrec_0, atstype_cloptr) ;
-
-ATSstatic()
-postiats_tyrec_0
-loop_121__121__1(atstkind_type(atstype_ptrk), postiats_tyrec_0, atstype_cloptr) ;
-
-ATSstatic()
-postiats_tyrec_0
-__patsfun_124(postiats_tyrec_0, atsrefarg1_type(atstkind_t0ype(atstype_int))) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-totient_sum_125(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-loop_126(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__lt_g1int_int__22__3(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_int__128(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
-#endif // end of [QUALIFIED]
-#endif // end of [TEMPLATE]
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_int__128__1(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
-
-#if(0)
-#if(0)
-ATSextern()
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__130(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__130__1(atstkind_t0ype(atstype_int)) ;
-
-ATSstatic()
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__2__2() ;
-
-#if(0)
-ATSextern()
-atstkind_t0ype(atstype_int)
-sum_divisors_ats(atstkind_t0ype(atstype_int)) ;
-#endif // end of [QUALIFIED]
-
-#if(0)
-ATSextern()
-atstkind_t0ype(atstype_int)
-count_divisors_ats(atstkind_t0ype(atstype_int)) ;
-#endif // end of [QUALIFIED]
-
-#if(0)
-ATSextern()
-atstkind_t0ype(atstype_int)
-totient_ats(atstkind_t0ype(atstype_int)) ;
-#endif // end of [QUALIFIED]
-
-#if(0)
-ATSextern()
-atstkind_t0ype(atstype_int)
-little_omega_ats(atstkind_t0ype(atstype_int)) ;
-#endif // end of [QUALIFIED]
-
-#if(0)
-ATSextern()
-atstkind_t0ype(atstype_bool)
-is_perfect_ats(atstkind_t0ype(atstype_int)) ;
-#endif // end of [QUALIFIED]
-
-#if(0)
-ATSextern()
-atstkind_t0ype(atstype_int)
-jacobi_ats(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
-#endif // end of [QUALIFIED]
-
-ATSclosurerize_beg(__patsfun_37, (), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-} __patsfun_37__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_37__cfun
-(
-__patsfun_37__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_37(arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_37__closureinit
-(
-__patsfun_37__closure_t0ype *p_cenv
-)
-{
-p_cenv->cfun = __patsfun_37__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_37__closurerize
-(
-// argumentless
-)
-{
-return __patsfun_37__closureinit(ATS_MALLOC(sizeof(__patsfun_37__closure_t0ype))) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_38, (), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-} __patsfun_38__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_38__cfun
-(
-__patsfun_38__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_38(arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_38__closureinit
-(
-__patsfun_38__closure_t0ype *p_cenv
-)
-{
-p_cenv->cfun = __patsfun_38__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_38__closurerize
-(
-// argumentless
-)
-{
-return __patsfun_38__closureinit(ATS_MALLOC(sizeof(__patsfun_38__closure_t0ype))) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_48, (atstkind_t0ype(atstype_int), atstkind_type(atstype_ptrk)), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-atstkind_t0ype(atstype_int) env0 ;
-atstkind_type(atstype_ptrk) env1 ;
-} __patsfun_48__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_48__cfun
-(
-__patsfun_48__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_48(p_cenv->env0, p_cenv->env1, arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_48__closureinit
-(
-__patsfun_48__closure_t0ype *p_cenv, atstkind_t0ype(atstype_int) env0, atstkind_type(atstype_ptrk) env1
-)
-{
-p_cenv->env0 = env0 ;
-p_cenv->env1 = env1 ;
-p_cenv->cfun = __patsfun_48__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_48__closurerize
-(
-atstkind_t0ype(atstype_int) env0, atstkind_type(atstype_ptrk) env1
-)
-{
-return __patsfun_48__closureinit(ATS_MALLOC(sizeof(__patsfun_48__closure_t0ype)), env0, env1) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_49, (atstkind_type(atstype_ptrk)), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-atstkind_type(atstype_ptrk) env0 ;
-} __patsfun_49__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_49__cfun
-(
-__patsfun_49__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_49(p_cenv->env0, arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_49__closureinit
-(
-__patsfun_49__closure_t0ype *p_cenv, atstkind_type(atstype_ptrk) env0
-)
-{
-p_cenv->env0 = env0 ;
-p_cenv->cfun = __patsfun_49__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_49__closurerize
-(
-atstkind_type(atstype_ptrk) env0
-)
-{
-return __patsfun_49__closureinit(ATS_MALLOC(sizeof(__patsfun_49__closure_t0ype)), env0) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_50, (), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-} __patsfun_50__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_50__cfun
-(
-__patsfun_50__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_50(arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_50__closureinit
-(
-__patsfun_50__closure_t0ype *p_cenv
-)
-{
-p_cenv->cfun = __patsfun_50__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_50__closurerize
-(
-// argumentless
-)
-{
-return __patsfun_50__closureinit(ATS_MALLOC(sizeof(__patsfun_50__closure_t0ype))) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_51, (atstkind_t0ype(atstype_int)), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-atstkind_t0ype(atstype_int) env0 ;
-} __patsfun_51__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_51__cfun
-(
-__patsfun_51__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_51(p_cenv->env0, arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_51__closureinit
-(
-__patsfun_51__closure_t0ype *p_cenv, atstkind_t0ype(atstype_int) env0
-)
-{
-p_cenv->env0 = env0 ;
-p_cenv->cfun = __patsfun_51__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_51__closurerize
-(
-atstkind_t0ype(atstype_int) env0
-)
-{
-return __patsfun_51__closureinit(ATS_MALLOC(sizeof(__patsfun_51__closure_t0ype)), env0) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_52, (), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-} __patsfun_52__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_52__cfun
-(
-__patsfun_52__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_52(arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_52__closureinit
-(
-__patsfun_52__closure_t0ype *p_cenv
-)
-{
-p_cenv->cfun = __patsfun_52__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_52__closurerize
-(
-// argumentless
-)
-{
-return __patsfun_52__closureinit(ATS_MALLOC(sizeof(__patsfun_52__closure_t0ype))) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_53, (), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-} __patsfun_53__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_53__cfun
-(
-__patsfun_53__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_53(arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_53__closureinit
-(
-__patsfun_53__closure_t0ype *p_cenv
-)
-{
-p_cenv->cfun = __patsfun_53__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_53__closurerize
-(
-// argumentless
-)
-{
-return __patsfun_53__closureinit(ATS_MALLOC(sizeof(__patsfun_53__closure_t0ype))) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_55, (atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_type(atstype_ptrk)), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-atstkind_t0ype(atstype_int) env0 ;
-atstkind_t0ype(atstype_int) env1 ;
-atstkind_type(atstype_ptrk) env2 ;
-} __patsfun_55__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_55__cfun
-(
-__patsfun_55__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_55(p_cenv->env0, p_cenv->env1, p_cenv->env2, arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_55__closureinit
-(
-__patsfun_55__closure_t0ype *p_cenv, atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstkind_type(atstype_ptrk) env2
-)
-{
-p_cenv->env0 = env0 ;
-p_cenv->env1 = env1 ;
-p_cenv->env2 = env2 ;
-p_cenv->cfun = __patsfun_55__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_55__closurerize
-(
-atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstkind_type(atstype_ptrk) env2
-)
-{
-return __patsfun_55__closureinit(ATS_MALLOC(sizeof(__patsfun_55__closure_t0ype)), env0, env1, env2) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_56, (atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_type(atstype_ptrk)), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-atstkind_t0ype(atstype_int) env0 ;
-atstkind_t0ype(atstype_int) env1 ;
-atstkind_type(atstype_ptrk) env2 ;
-} __patsfun_56__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_56__cfun
-(
-__patsfun_56__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_56(p_cenv->env0, p_cenv->env1, p_cenv->env2, arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_56__closureinit
-(
-__patsfun_56__closure_t0ype *p_cenv, atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstkind_type(atstype_ptrk) env2
-)
-{
-p_cenv->env0 = env0 ;
-p_cenv->env1 = env1 ;
-p_cenv->env2 = env2 ;
-p_cenv->cfun = __patsfun_56__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_56__closurerize
-(
-atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstkind_type(atstype_ptrk) env2
-)
-{
-return __patsfun_56__closureinit(ATS_MALLOC(sizeof(__patsfun_56__closure_t0ype)), env0, env1, env2) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_60__60__1, (atstkind_type(atstype_ptrk), atstype_cloptr), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-atstkind_type(atstype_ptrk) env0 ;
-atstype_cloptr env1 ;
-} __patsfun_60__60__1__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_60__60__1__cfun
-(
-__patsfun_60__60__1__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_60__60__1(p_cenv->env0, p_cenv->env1, arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_60__60__1__closureinit
-(
-__patsfun_60__60__1__closure_t0ype *p_cenv, atstkind_type(atstype_ptrk) env0, atstype_cloptr env1
-)
-{
-p_cenv->env0 = env0 ;
-p_cenv->env1 = env1 ;
-p_cenv->cfun = __patsfun_60__60__1__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_60__60__1__closurerize
-(
-atstkind_type(atstype_ptrk) env0, atstype_cloptr env1
-)
-{
-return __patsfun_60__60__1__closureinit(ATS_MALLOC(sizeof(__patsfun_60__60__1__closure_t0ype)), env0, env1) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_64, (), (atsrefarg1_type(atstkind_t0ype(atstype_int))), atstkind_t0ype(atstype_bool))
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-} __patsfun_64__closure_t0ype ;
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-__patsfun_64__cfun
-(
-__patsfun_64__closure_t0ype *p_cenv, atsrefarg1_type(atstkind_t0ype(atstype_int)) arg0
-)
-{
-ATSFCreturn(__patsfun_64(arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_64__closureinit
-(
-__patsfun_64__closure_t0ype *p_cenv
-)
-{
-p_cenv->cfun = __patsfun_64__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_64__closurerize
-(
-// argumentless
-)
-{
-return __patsfun_64__closureinit(ATS_MALLOC(sizeof(__patsfun_64__closure_t0ype))) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_104, (atstkind_t0ype(atstype_int)), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-atstkind_t0ype(atstype_int) env0 ;
-} __patsfun_104__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_104__cfun
-(
-__patsfun_104__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_104(p_cenv->env0, arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_104__closureinit
-(
-__patsfun_104__closure_t0ype *p_cenv, atstkind_t0ype(atstype_int) env0
-)
-{
-p_cenv->env0 = env0 ;
-p_cenv->cfun = __patsfun_104__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_104__closurerize
-(
-atstkind_t0ype(atstype_int) env0
-)
-{
-return __patsfun_104__closureinit(ATS_MALLOC(sizeof(__patsfun_104__closure_t0ype)), env0) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_105, (), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-} __patsfun_105__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_105__cfun
-(
-__patsfun_105__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_105(arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_105__closureinit
-(
-__patsfun_105__closure_t0ype *p_cenv
-)
-{
-p_cenv->cfun = __patsfun_105__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_105__closurerize
-(
-// argumentless
-)
-{
-return __patsfun_105__closureinit(ATS_MALLOC(sizeof(__patsfun_105__closure_t0ype))) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_106, (), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-} __patsfun_106__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_106__cfun
-(
-__patsfun_106__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_106(arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_106__closureinit
-(
-__patsfun_106__closure_t0ype *p_cenv
-)
-{
-p_cenv->cfun = __patsfun_106__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_106__closurerize
-(
-// argumentless
-)
-{
-return __patsfun_106__closureinit(ATS_MALLOC(sizeof(__patsfun_106__closure_t0ype))) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_109, (atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-atstkind_t0ype(atstype_int) env0 ;
-atstkind_t0ype(atstype_int) env1 ;
-} __patsfun_109__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_109__cfun
-(
-__patsfun_109__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_109(p_cenv->env0, p_cenv->env1, arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_109__closureinit
-(
-__patsfun_109__closure_t0ype *p_cenv, atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1
-)
-{
-p_cenv->env0 = env0 ;
-p_cenv->env1 = env1 ;
-p_cenv->cfun = __patsfun_109__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_109__closurerize
-(
-atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1
-)
-{
-return __patsfun_109__closureinit(ATS_MALLOC(sizeof(__patsfun_109__closure_t0ype)), env0, env1) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_110, (atstkind_t0ype(atstype_int)), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-atstkind_t0ype(atstype_int) env0 ;
-} __patsfun_110__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_110__cfun
-(
-__patsfun_110__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_110(p_cenv->env0, arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_110__closureinit
-(
-__patsfun_110__closure_t0ype *p_cenv, atstkind_t0ype(atstype_int) env0
-)
-{
-p_cenv->env0 = env0 ;
-p_cenv->cfun = __patsfun_110__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_110__closurerize
-(
-atstkind_t0ype(atstype_int) env0
-)
-{
-return __patsfun_110__closureinit(ATS_MALLOC(sizeof(__patsfun_110__closure_t0ype)), env0) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_111, (), (atstype_bool), atstype_boxed)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-} __patsfun_111__closure_t0ype ;
-ATSstatic()
-atstype_boxed
-__patsfun_111__cfun
-(
-__patsfun_111__closure_t0ype *p_cenv, atstype_bool arg0
-)
-{
-ATSFCreturn(__patsfun_111(arg0)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_111__closureinit
-(
-__patsfun_111__closure_t0ype *p_cenv
-)
-{
-p_cenv->cfun = __patsfun_111__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_111__closurerize
-(
-// argumentless
-)
-{
-return __patsfun_111__closureinit(ATS_MALLOC(sizeof(__patsfun_111__closure_t0ype))) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-ATSclosurerize_beg(__patsfun_124, (), (postiats_tyrec_0, atsrefarg1_type(atstkind_t0ype(atstype_int))), postiats_tyrec_0)
-typedef
-ATSstruct {
-atstype_funptr cfun ;
-} __patsfun_124__closure_t0ype ;
-ATSstatic()
-postiats_tyrec_0
-__patsfun_124__cfun
-(
-__patsfun_124__closure_t0ype *p_cenv, postiats_tyrec_0 arg0, atsrefarg1_type(atstkind_t0ype(atstype_int)) arg1
-)
-{
-ATSFCreturn(__patsfun_124(arg0, arg1)) ;
-} /* end of [cfun] */
-ATSstatic()
-atstype_cloptr
-__patsfun_124__closureinit
-(
-__patsfun_124__closure_t0ype *p_cenv
-)
-{
-p_cenv->cfun = __patsfun_124__cfun ;
-return p_cenv ;
-} /* end of [closureinit] */
-ATSstatic()
-atstype_cloptr
-__patsfun_124__closurerize
-(
-// argumentless
-)
-{
-return __patsfun_124__closureinit(ATS_MALLOC(sizeof(__patsfun_124__closure_t0ype))) ;
-} /* end of [closurerize] */
-ATSclosurerize_end()
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 753(line=23, offs=4) -- 808(line=24, offs=14)
-*/
-/*
-local: 
-global: witness_0$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-witness_0(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret0, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 753(line=23, offs=4) -- 808(line=24, offs=14)
-*/
-ATSINSflab(__patsflab_witness_0):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 797(line=24, offs=3) -- 807(line=24, offs=13)
-*/
-ATSINSmove(tmpret0, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), arg0)) ;
-ATSfunbody_end()
-ATSreturn(tmpret0) ;
-} /* end of [witness_0] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 873(line=27, offs=5) -- 1092(line=35, offs=6)
-*/
-/*
-local: 
-global: fib_gmp_1$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-fib_gmp_1(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret1, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmpref2, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmpref5, atstkind_t0ype(atstype_ulint)) ;
-ATStmpdec(tmp6, atstkind_t0ype(atstype_int)) ;
-// ATStmpdec_void(tmp7) ;
-// ATStmpdec_void(tmp8) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 873(line=27, offs=5) -- 1092(line=35, offs=6)
-*/
-ATSINSflab(__patsflab_fib_gmp_1):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 909(line=28, offs=3) -- 1092(line=35, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 921(line=29, offs=9) -- 922(line=29, offs=10)
-*/
-/*
-ATSINStmpdec(tmpref2) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 925(line=29, offs=13) -- 936(line=29, offs=24)
-*/
-ATSINSmove(tmpref2, ATSLIB_056_prelude__ptr_alloc__2__1()) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 945(line=30, offs=9) -- 946(line=30, offs=10)
-*/
-/*
-ATSINStmpdec(tmpref5) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 977(line=30, offs=41) -- 982(line=30, offs=46)
-*/
-ATSINSmove(tmp6, atspre_g1int_add_int(arg0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 956(line=30, offs=20) -- 983(line=30, offs=47)
-*/
-ATSINSmove(tmpref5, atspre_g0int2uint_int_ulint(tmp6)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 997(line=31, offs=14) -- 1018(line=31, offs=35)
-*/
-ATSINSmove_void(tmp7, atscntrb_gmp_mpz_init(ATSPMVrefarg1(ATSSELrecsin(tmpref2, atstkind_type(atstype_ptrk), atslab__2)))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1032(line=32, offs=14) -- 1060(line=32, offs=42)
-*/
-ATSINSmove_void(tmp8, atscntrb_gmp_mpz_fib_uint(ATSPMVrefarg1(ATSSELrecsin(tmpref2, atstkind_type(atstype_ptrk), atslab__2)), tmpref5)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1070(line=34, offs=5) -- 1085(line=34, offs=20)
-*/
-ATSINSmove(tmpret1, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmpref2)) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 909(line=28, offs=3) -- 1092(line=35, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret1) ;
-} /* end of [fib_gmp_1] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$2$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = None()
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__2()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret3, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret3, atspre_ptr_alloc_tsz(ATSPMVsizeof(atstyvar_type(a)))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret3) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__2] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$2$1(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2EVar(5569))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__2__1()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret3__1, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret3__1, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret3__1) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__2__1] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1170(line=38, offs=5) -- 1611(line=59, offs=10)
-*/
-/*
-local: exp_5$0(level=0)
-global: exp_5$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-exp_5(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(tmpret9, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp10, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmpref15, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref16, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp17, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp22, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref23, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp24, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp25, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1170(line=38, offs=5) -- 1611(line=59, offs=10)
-*/
-ATSINSflab(__patsflab_exp_5):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1222(line=39, offs=3) -- 1611(line=59, offs=10)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1239(line=40, offs=7) -- 1240(line=40, offs=8)
-*/
-ATSINSlab(__atstmplab0):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1191(line=38, offs=26) -- 1192(line=38, offs=27)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(0))) { ATSINSgoto(__atstmplab2) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1240(line=40, offs=8) -- 1240(line=40, 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/fast-arithmetic/ats-src/numerics.dats: 1244(line=40, offs=12) -- 1245(line=40, offs=13)
-*/
-ATSINSmove(tmpret9, ATSPMVi0nt(0)) ;
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1253(line=41, offs=8) -- 1253(line=41, 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/fast-arithmetic/ats-src/numerics.dats: 1282(line=43, offs=12) -- 1287(line=43, offs=17)
-*/
-ATSINSmove(tmp10, ATSLIB_056_prelude__gt_g1int_int__6__1(arg1, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1279(line=43, offs=9) -- 1601(line=58, offs=12)
-*/
-ATSif(
-tmp10
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1303(line=44, offs=11) -- 1576(line=56, offs=14)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1323(line=45, offs=17) -- 1325(line=45, offs=19)
-*/
-/*
-ATSINStmpdec(tmpref15) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1328(line=45, offs=22) -- 1334(line=45, offs=28)
-*/
-ATSINSmove(tmpref15, atspre_g1int_half_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1352(line=46, offs=17) -- 1354(line=46, offs=19)
-*/
-/*
-ATSINStmpdec(tmpref16) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1357(line=46, offs=22) -- 1362(line=46, offs=27)
-*/
-ATSINSmove(tmpref16, atspre_g0int_mod_int(arg1, ATSPMVi0nt(2))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1391(line=48, offs=16) -- 1397(line=48, offs=22)
-*/
-ATSINSmove(tmp17, ATSLIB_056_prelude__eq_g0int_int__12__1(tmpref16, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1388(line=48, offs=13) -- 1562(line=55, offs=18)
-*/
-ATSif(
-tmp17
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1421(line=49, offs=19) -- 1426(line=49, offs=24)
-*/
-ATSINSmove(tmp22, atspre_g0int_mul_int(arg0, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1417(line=49, offs=15) -- 1431(line=49, offs=29)
-*/
-ATStailcal_beg()
-ATSINSmove_tlcal(apy0, tmp22) ;
-ATSINSmove_tlcal(apy1, tmpref15) ;
-ATSINSargmove_tlcal(arg0, apy0) ;
-ATSINSargmove_tlcal(arg1, apy1) ;
-ATSINSfgoto(__patsflab_exp_5) ;
-ATStailcal_end()
-
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1463(line=51, offs=15) -- 1562(line=55, offs=18)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1487(line=52, offs=21) -- 1488(line=52, offs=22)
-*/
-/*
-ATSINStmpdec(tmpref23) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1499(line=52, offs=33) -- 1504(line=52, offs=38)
-*/
-ATSINSmove(tmp25, atspre_g0int_mul_int(arg0, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1495(line=52, offs=29) -- 1509(line=52, offs=43)
-*/
-ATSINSmove(tmp24, exp_5(tmp25, tmpref15)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1491(line=52, offs=25) -- 1509(line=52, offs=43)
-*/
-ATSINSmove(tmpref23, atspre_g0int_mul_int(arg0, tmp24)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1543(line=54, offs=17) -- 1544(line=54, offs=18)
-*/
-ATSINSmove(tmpret9, tmpref23) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1463(line=51, offs=15) -- 1562(line=55, offs=18)
-*/
-/*
-INSletpop()
-*/
-} /* ATSendif */
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1303(line=44, offs=11) -- 1576(line=56, offs=14)
-*/
-/*
-INSletpop()
-*/
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1600(line=58, offs=11) -- 1601(line=58, offs=12)
-*/
-ATSINSmove(tmpret9, ATSPMVi0nt(1)) ;
-} /* ATSendif */
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-ATSfunbody_end()
-ATSreturn(tmpret9) ;
-} /* end of [exp_5] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
-*/
-/*
-local: 
-global: gt_g1int_int$6$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = tk(4703)
-tmparg = S2Evar(tk(4703))
-tmpsub = None()
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret11, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp12, atstkind_t0ype(atstyvar_type(tk))) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
-*/
-ATSINSmove(tmp12, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4703))>)(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
-*/
-ATSINSmove(tmpret11, PMVtmpltcst(g1int_gt<S2Evar(tk(4703))>)(arg0, tmp12)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret11) ;
-} /* end of [ATSLIB_056_prelude__gt_g1int_int__6] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
-*/
-/*
-local: 
-global: gt_g1int_int$6$1(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4703)
-tmparg = S2Evar(tk(4703))
-tmpsub = Some(tk(4703) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret11__1, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp12__1, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
-*/
-ATSINSmove(tmp12__1, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
-*/
-ATSINSmove(tmpret11__1, atspre_g1int_gt_int(arg0, tmp12__1)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret11__1) ;
-} /* end of [ATSLIB_056_prelude__gt_g1int_int__6__1] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = None()
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19, atstkind_t0ype(atstyvar_type(tk))) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19, PMVtmpltcst(g0int2int<S2Eextkind(atstype_int), S2Evar(tk(4694))>)(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18, PMVtmpltcst(g0int_eq<S2Evar(tk(4694))>)(arg0, tmp19)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$1(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__1, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__1, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__1, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__1, atspre_g0int_eq_int(arg0, tmp19__1)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__1) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__1] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1616(line=61, offs=4) -- 1760(line=66, offs=6)
-*/
-/*
-local: witness_0$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-sqrt_int_17(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret26, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref27, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp28, atstkind_t0ype(atstype_float)) ;
-ATStmpdec(tmp29, atstkind_t0ype(atstype_float)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1616(line=61, offs=4) -- 1760(line=66, offs=6)
-*/
-ATSINSflab(__patsflab_sqrt_int_17):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1666(line=62, offs=3) -- 1760(line=66, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1678(line=63, offs=9) -- 1683(line=63, offs=14)
-*/
-/*
-ATSINStmpdec(tmpref27) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1714(line=63, offs=45) -- 1727(line=63, offs=58)
-*/
-ATSINSmove(tmp29, atspre_g0int2float_int_float(arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1703(line=63, offs=34) -- 1729(line=63, offs=60)
-*/
-ATSINSmove(tmp28, atslib_libats_libc_sqrt_float(tmp29)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1691(line=63, offs=22) -- 1730(line=63, offs=61)
-*/
-ATSINSmove(tmpref27, atspre_g0float2int_float_int(tmp28)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1740(line=65, offs=5) -- 1753(line=65, offs=18)
-*/
-ATSINSmove(tmpret26, witness_0(tmpref27)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1666(line=62, offs=3) -- 1760(line=66, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret26) ;
-} /* end of [sqrt_int_17] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1796(line=69, offs=4) -- 2381(line=92, offs=10)
-*/
-/*
-local: sqrt_int_17$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-is_prime_20(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret30, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp51, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1796(line=69, offs=4) -- 2381(line=92, offs=10)
-*/
-ATSINSflab(__patsflab_is_prime_20):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1832(line=70, offs=3) -- 2381(line=92, offs=10)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1849(line=71, offs=7) -- 1850(line=71, offs=8)
-*/
-ATSINSlab(__atstmplab3):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1805(line=69, offs=13) -- 1806(line=69, offs=14)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab5) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1850(line=71, offs=8) -- 1850(line=71, 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/fast-arithmetic/ats-src/numerics.dats: 1854(line=71, offs=12) -- 1859(line=71, offs=17)
-*/
-ATSINSmove(tmpret30, ATSPMVbool_false()) ;
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1867(line=72, offs=8) -- 1867(line=72, 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/fast-arithmetic/ats-src/numerics.dats: 1892(line=74, offs=9) -- 2371(line=91, offs=12)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2347(line=90, offs=19) -- 2357(line=90, offs=29)
-*/
-ATSINSmove(tmp51, sqrt_int_17(arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2339(line=90, offs=11) -- 2359(line=90, offs=31)
-*/
-ATSINSmove(tmpret30, loop_21(arg0, ATSPMVi0nt(2), tmp51)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1892(line=74, offs=9) -- 2371(line=91, offs=12)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-ATSfunbody_end()
-ATSreturn(tmpret30) ;
-} /* end of [is_prime_20] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1910(line=75, offs=15) -- 2317(line=88, offs=21)
-*/
-/*
-local: loop_21$0(level=1)
-global: loop_21$0(level=1)
-local: k$5106(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-global: k$5106(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-*/
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-loop_21(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(tmpret31, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp32, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp37, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp40, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp41, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp42, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp47, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp50, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-/*
-emit_funent_fnxdeclst:
-*/
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1910(line=75, offs=15) -- 2317(line=88, offs=21)
-*/
-ATSINSflab(__patsflab_loop_21):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2004(line=76, offs=16) -- 2013(line=76, offs=25)
-*/
-ATSINSmove(tmp32, ATSLIB_056_prelude__lt_g1int_int__22__1(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2001(line=76, offs=13) -- 2317(line=88, offs=21)
-*/
-ATSif(
-tmp32
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2036(line=77, offs=18) -- 2041(line=77, offs=23)
-*/
-ATSINSmove(tmp40, atspre_g0int_mod_int(env0, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2036(line=77, offs=18) -- 2045(line=77, offs=27)
-*/
-ATSINSmove(tmp37, ATSLIB_056_prelude__eq_g0int_int__12__2(tmp40, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2033(line=77, offs=15) -- 2126(line=80, offs=35)
-*/
-ATSif(
-tmp37
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2067(line=78, offs=17) -- 2072(line=78, offs=22)
-*/
-ATSINSmove(tmpret31, ATSPMVbool_false()) ;
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2113(line=80, offs=22) -- 2118(line=80, offs=27)
-*/
-ATSINSmove(tmp41, atspre_g1int_add_int(arg0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2108(line=80, offs=17) -- 2126(line=80, offs=35)
-*/
-ATStailcal_beg()
-ATSINSmove_tlcal(apy0, tmp41) ;
-ATSINSmove_tlcal(apy1, arg1) ;
-ATSINSargmove_tlcal(arg0, apy0) ;
-ATSINSargmove_tlcal(arg1, apy1) ;
-ATSINSfgoto(__patsflab_loop_21) ;
-ATStailcal_end()
-
-} /* ATSendif */
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2161(line=82, offs=18) -- 2170(line=82, offs=27)
-*/
-ATSINSmove(tmp42, ATSLIB_056_prelude__eq_g1int_int__26__1(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2158(line=82, offs=15) -- 2317(line=88, offs=21)
-*/
-ATSif(
-tmp42
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2195(line=83, offs=20) -- 2200(line=83, offs=25)
-*/
-ATSINSmove(tmp50, atspre_g0int_mod_int(env0, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2195(line=83, offs=20) -- 2204(line=83, offs=29)
-*/
-ATSINSmove(tmp47, ATSLIB_056_prelude__eq_g0int_int__12__3(tmp50, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2192(line=83, offs=17) -- 2277(line=86, offs=23)
-*/
-ATSif(
-tmp47
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2228(line=84, offs=19) -- 2233(line=84, offs=24)
-*/
-ATSINSmove(tmpret31, ATSPMVbool_false()) ;
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2273(line=86, offs=19) -- 2277(line=86, offs=23)
-*/
-ATSINSmove(tmpret31, ATSPMVbool_true()) ;
-} /* ATSendif */
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2313(line=88, offs=17) -- 2317(line=88, offs=21)
-*/
-ATSINSmove(tmpret31, ATSPMVbool_true()) ;
-} /* ATSendif */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret31) ;
-/*
-emit_funent_fnxbodylst:
-*/
-} /* end of [loop_21] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
-*/
-/*
-local: 
-global: lt_g1int_int$22$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = tk(4697)
-tmparg = S2Evar(tk(4697))
-tmpsub = None()
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__lt_g1int_int__22(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret33, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp34, atstkind_t0ype(atstyvar_type(tk))) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
-*/
-ATSINSmove(tmp34, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4697))>)(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
-*/
-ATSINSmove(tmpret33, PMVtmpltcst(g1int_lt<S2Evar(tk(4697))>)(arg0, tmp34)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret33) ;
-} /* end of [ATSLIB_056_prelude__lt_g1int_int__22] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
-*/
-/*
-local: 
-global: lt_g1int_int$22$1(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4697)
-tmparg = S2Evar(tk(4697))
-tmpsub = Some(tk(4697) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__lt_g1int_int__22__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret33__1, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp34__1, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
-*/
-ATSINSmove(tmp34__1, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
-*/
-ATSINSmove(tmpret33__1, atspre_g1int_lt_int(arg0, tmp34__1)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret33__1) ;
-} /* end of [ATSLIB_056_prelude__lt_g1int_int__22__1] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$2(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__2(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__2, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__2, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__2, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__2, atspre_g0int_eq_int(arg0, tmp19__2)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__2) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__2] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12838(line=668, offs=3) -- 12877(line=668, offs=42)
-*/
-/*
-local: 
-global: eq_g1int_int$26$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = tk(4709)
-tmparg = S2Evar(tk(4709))
-tmpsub = None()
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g1int_int__26(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret43, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp44, atstkind_t0ype(atstyvar_type(tk))) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12864(line=668, offs=29) -- 12875(line=668, offs=40)
-*/
-ATSINSmove(tmp44, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4709))>)(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12847(line=668, offs=12) -- 12877(line=668, offs=42)
-*/
-ATSINSmove(tmpret43, PMVtmpltcst(g1int_eq<S2Evar(tk(4709))>)(arg0, tmp44)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret43) ;
-} /* end of [ATSLIB_056_prelude__eq_g1int_int__26] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12838(line=668, offs=3) -- 12877(line=668, offs=42)
-*/
-/*
-local: 
-global: eq_g1int_int$26$1(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4709)
-tmparg = S2Evar(tk(4709))
-tmpsub = Some(tk(4709) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g1int_int__26__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret43__1, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp44__1, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12864(line=668, offs=29) -- 12875(line=668, offs=40)
-*/
-ATSINSmove(tmp44__1, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12847(line=668, offs=12) -- 12877(line=668, offs=42)
-*/
-ATSINSmove(tmpret43__1, atspre_g1int_eq_int(arg0, tmp44__1)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret43__1) ;
-} /* end of [ATSLIB_056_prelude__eq_g1int_int__26__1] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$3(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__3(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__3, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__3, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__3, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__3, atspre_g0int_eq_int(arg0, tmp19__3)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__3) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__3] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 297(line=12, offs=4) -- 345(line=13, offs=12)
-*/
-/*
-local: 
-global: divides_30$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-divides_30(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret52, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp55, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 297(line=12, offs=4) -- 345(line=13, offs=12)
-*/
-ATSINSflab(__patsflab_divides_30):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 336(line=13, offs=3) -- 341(line=13, offs=8)
-*/
-ATSINSmove(tmp55, atspre_g0int_mod_int(arg1, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 336(line=13, offs=3) -- 345(line=13, offs=12)
-*/
-ATSINSmove(tmpret52, ATSLIB_056_prelude__eq_g0int_int__12__4(tmp55, ATSPMVi0nt(0))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret52) ;
-} /* end of [divides_30] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$4(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__4(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__4, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__4, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__4, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__4, atspre_g0int_eq_int(arg0, tmp19__4)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__4) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__4] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 351(line=15, offs=5) -- 462(line=19, offs=6)
-*/
-/*
-local: witness_0$0(level=0), gcd_32$0(level=0)
-global: witness_0$0(level=0), gcd_32$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-gcd_32(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(tmpret56, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp57, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp60, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp61, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-/*
-emit_funent_fnxdeclst:
-*/
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 351(line=15, offs=5) -- 462(line=19, offs=6)
-*/
-ATSINSflab(__patsflab_gcd_32):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 412(line=16, offs=6) -- 417(line=16, offs=11)
-*/
-ATSINSmove(tmp57, ATSLIB_056_prelude__gt_g1int_int__6__2(arg1, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 409(line=16, offs=3) -- 462(line=19, offs=6)
-*/
-ATSif(
-tmp57
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 442(line=17, offs=20) -- 447(line=17, offs=25)
-*/
-ATSINSmove(tmp61, atspre_g0int_mod_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 434(line=17, offs=12) -- 448(line=17, offs=26)
-*/
-ATSINSmove(tmp60, witness_0(tmp61)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 427(line=17, offs=5) -- 449(line=17, offs=27)
-*/
-ATStailcal_beg()
-ATSINSmove_tlcal(apy0, arg1) ;
-ATSINSmove_tlcal(apy1, tmp60) ;
-ATSINSargmove_tlcal(arg0, apy0) ;
-ATSINSargmove_tlcal(arg1, apy1) ;
-ATSINSfgoto(__patsflab_gcd_32) ;
-ATStailcal_end()
-
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 461(line=19, offs=5) -- 462(line=19, offs=6)
-*/
-ATSINSmove(tmpret56, arg0) ;
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret56) ;
-/*
-emit_funent_fnxbodylst:
-*/
-} /* end of [gcd_32] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
-*/
-/*
-local: 
-global: gt_g1int_int$6$2(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4703)
-tmparg = S2Evar(tk(4703))
-tmpsub = Some(tk(4703) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6__2(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret11__2, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp12__2, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
-*/
-ATSINSmove(tmp12__2, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
-*/
-ATSINSmove(tmpret11__2, atspre_g1int_gt_int(arg0, tmp12__2)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret11__2) ;
-} /* end of [ATSLIB_056_prelude__gt_g1int_int__6__2] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 467(line=21, offs=4) -- 544(line=22, offs=22)
-*/
-/*
-local: gcd_32$0(level=0)
-global: witness_0$0(level=0), gcd_32$0(level=0), lcm_34$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-lcm_34(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret62, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp63, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp64, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 467(line=21, offs=4) -- 544(line=22, offs=22)
-*/
-ATSINSflab(__patsflab_lcm_34):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 530(line=22, offs=8) -- 539(line=22, offs=17)
-*/
-ATSINSmove(tmp64, gcd_32(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 526(line=22, offs=4) -- 539(line=22, offs=17)
-*/
-ATSINSmove(tmp63, atspre_g0int_div_int(arg0, tmp64)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 525(line=22, offs=3) -- 544(line=22, offs=22)
-*/
-ATSINSmove(tmpret62, atspre_g0int_mul_int(tmp63, arg1)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret62) ;
-} /* end of [lcm_34] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 587(line=25, offs=4) -- 1604(line=57, offs=8)
-*/
-/*
-local: sqrt_int_17$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), divisors_36$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-divisors_36(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret65, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 587(line=25, offs=4) -- 1604(line=57, offs=8)
-*/
-ATSINSflab(__patsflab_divisors_36):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 632(line=26, offs=3) -- 1604(line=57, offs=8)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 649(line=27, offs=7) -- 650(line=27, offs=8)
-*/
-ATSINSlab(__atstmplab6):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 596(line=25, offs=13) -- 597(line=25, offs=14)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab8) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 650(line=27, offs=8) -- 650(line=27, 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/fast-arithmetic/ats-src/number-theory.dats: 654(line=27, offs=12) -- 704(line=27, offs=62)
-*/
-ATSINSmove_ldelay(tmpret65, atstype_boxed, ATSPMVcfunlab(1, __patsfun_37, ())) ;
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 712(line=28, offs=8) -- 712(line=28, 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/fast-arithmetic/ats-src/number-theory.dats: 716(line=28, offs=12) -- 1604(line=57, offs=8)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1586(line=56, offs=7) -- 1596(line=56, offs=17)
-*/
-ATSINSmove(tmpret65, loop_39(arg0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 716(line=28, offs=12) -- 1604(line=57, offs=8)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-ATSfunbody_end()
-ATSreturn(tmpret65) ;
-} /* end of [divisors_36] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 654(line=27, offs=12) -- 704(line=27, offs=62)
-*/
-/*
-local: 
-global: __patsfun_37$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_37(atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret66, atstype_boxed) ;
-ATStmpdec(tmp67, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 654(line=27, offs=12) -- 704(line=27, offs=62)
-*/
-ATSINSflab(__patsflab___patsfun_37):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 654(line=27, offs=12) -- 704(line=27, offs=62)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 680(line=27, offs=38) -- 702(line=27, offs=60)
-*/
-ATSINSmove_ldelay(tmp67, atstype_boxed, ATSPMVcfunlab(1, __patsfun_38, ())) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 662(line=27, offs=20) -- 703(line=27, offs=61)
-*/
-
-/*
-#LINCONSTATUS==0
-*/
-ATSINSmove_con1_beg()
-ATSINSmove_con1_new(tmpret66, postiats_tysum_1) ;
-#if(0)
-ATSINSstore_con1_tag(tmpret66, 1) ;
-#endif
-ATSINSstore_con1_ofs(tmpret66, postiats_tysum_1, atslab__0, ATSPMVi0nt(1)) ;
-ATSINSstore_con1_ofs(tmpret66, postiats_tysum_1, atslab__1, tmp67) ;
-ATSINSmove_con1_end()
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret66) ;
-} /* end of [__patsfun_37] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 680(line=27, offs=38) -- 702(line=27, offs=60)
-*/
-/*
-local: 
-global: __patsfun_38$0(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_38(atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret68, atstype_boxed) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 680(line=27, offs=38) -- 702(line=27, offs=60)
-*/
-ATSINSflab(__patsflab___patsfun_38):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 680(line=27, offs=38) -- 702(line=27, offs=60)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 688(line=27, offs=46) -- 701(line=27, offs=59)
-*/
-
-ATSINSmove_nil(tmpret68) ;
-
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret68) ;
-} /* end of [__patsfun_38] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 730(line=29, offs=11) -- 1572(line=54, offs=29)
-*/
-/*
-local: sqrt_int_17$0(level=0), loop_39$0(level=1)
-global: sqrt_int_17$0(level=0), loop_39$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-loop_39(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(tmpret69, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp70, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp75, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp76, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp79, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp80, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp85, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref86, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp96, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp99, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref100, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp106, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 730(line=29, offs=11) -- 1572(line=54, offs=29)
-*/
-ATSINSflab(__patsflab_loop_39):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 838(line=30, offs=19) -- 848(line=30, offs=29)
-*/
-ATSINSmove(tmp75, sqrt_int_17(arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 831(line=30, offs=12) -- 848(line=30, offs=29)
-*/
-ATSINSmove(tmp70, ATSLIB_056_prelude__gte_g1int_int__40__1(arg1, tmp75)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 828(line=30, offs=9) -- 1572(line=54, offs=29)
-*/
-ATSif(
-tmp70
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 868(line=31, offs=14) -- 875(line=31, offs=21)
-*/
-ATSINSmove(tmp79, atspre_g0int_mod_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 868(line=31, offs=14) -- 879(line=31, offs=25)
-*/
-ATSINSmove(tmp76, ATSLIB_056_prelude__eq_g0int_int__12__5(tmp79, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 865(line=31, offs=11) -- 1312(line=45, offs=35)
-*/
-ATSif(
-tmp76
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 900(line=32, offs=16) -- 907(line=32, offs=23)
-*/
-ATSINSmove(tmp85, atspre_g1int_div_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 900(line=32, offs=16) -- 914(line=32, offs=30)
-*/
-ATSINSmove(tmp80, ATSLIB_056_prelude__neq_g1int_int__44__1(tmp85, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 897(line=32, offs=13) -- 1262(line=43, offs=18)
-*/
-ATSif(
-tmp80
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 934(line=33, offs=15) -- 1106(line=37, offs=18)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 958(line=34, offs=21) -- 959(line=34, offs=22)
-*/
-/*
-ATSINStmpdec(tmpref86) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 967(line=34, offs=30) -- 974(line=34, offs=37)
-*/
-ATSINSmove(tmpref86, atspre_g1int_div_int(arg0, arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1008(line=36, offs=17) -- 1088(line=36, offs=97)
-*/
-ATSINSmove_ldelay(tmpret69, atstype_boxed, ATSPMVcfunlab(1, __patsfun_48, (arg1, ATSPMVptrof(tmpref86)))) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 934(line=33, offs=15) -- 1106(line=37, offs=18)
-*/
-/*
-INSletpop()
-*/
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1192(line=42, offs=17) -- 1244(line=42, offs=69)
-*/
-ATSINSmove_ldelay(tmpret69, atstype_boxed, ATSPMVcfunlab(1, __patsfun_51, (arg1))) ;
-} /* ATSendif */
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1290(line=45, offs=13) -- 1312(line=45, offs=35)
-*/
-ATSINSmove_ldelay(tmpret69, atstype_boxed, ATSPMVcfunlab(1, __patsfun_53, ())) ;
-} /* ATSendif */
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1339(line=47, offs=14) -- 1346(line=47, offs=21)
-*/
-ATSINSmove(tmp99, atspre_g0int_mod_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1339(line=47, offs=14) -- 1350(line=47, offs=25)
-*/
-ATSINSmove(tmp96, ATSLIB_056_prelude__eq_g0int_int__12__6(tmp99, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1336(line=47, offs=11) -- 1572(line=54, offs=29)
-*/
-ATSif(
-tmp96
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1368(line=48, offs=13) -- 1528(line=52, offs=16)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1390(line=49, offs=19) -- 1391(line=49, offs=20)
-*/
-/*
-ATSINStmpdec(tmpref100) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1399(line=49, offs=28) -- 1406(line=49, offs=35)
-*/
-ATSINSmove(tmpref100, atspre_g1int_div_int(arg0, arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1436(line=51, offs=15) -- 1512(line=51, offs=91)
-*/
-ATSINSmove_ldelay(tmpret69, atstype_boxed, ATSPMVcfunlab(1, __patsfun_55, (arg0, arg1, ATSPMVptrof(tmpref100)))) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1368(line=48, offs=13) -- 1528(line=52, offs=16)
-*/
-/*
-INSletpop()
-*/
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1564(line=54, offs=21) -- 1571(line=54, offs=28)
-*/
-ATSINSmove(tmp106, atspre_g1int_add_int(arg1, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1556(line=54, offs=13) -- 1572(line=54, offs=29)
-*/
-ATStailcal_beg()
-ATSINSmove_tlcal(apy0, arg0) ;
-ATSINSmove_tlcal(apy1, tmp106) ;
-ATSINSargmove_tlcal(arg0, apy0) ;
-ATSINSargmove_tlcal(arg1, apy1) ;
-ATSINSfgoto(__patsflab_loop_39) ;
-ATStailcal_end()
-
-} /* ATSendif */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret69) ;
-} /* end of [loop_39] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12757(line=663, offs=3) -- 12797(line=663, offs=43)
-*/
-/*
-local: 
-global: gte_g1int_int$40$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = tk(4706)
-tmparg = S2Evar(tk(4706))
-tmpsub = None()
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gte_g1int_int__40(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret71, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp72, atstkind_t0ype(atstyvar_type(tk))) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12741(line=662, offs=1) -- 12797(line=663, offs=43)
-*/
-ATSINSflab(__patsflab_gte_g1int_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12784(line=663, offs=30) -- 12795(line=663, offs=41)
-*/
-ATSINSmove(tmp72, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4706))>)(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12766(line=663, offs=12) -- 12797(line=663, offs=43)
-*/
-ATSINSmove(tmpret71, PMVtmpltcst(g1int_gte<S2Evar(tk(4706))>)(arg0, tmp72)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret71) ;
-} /* end of [ATSLIB_056_prelude__gte_g1int_int__40] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12757(line=663, offs=3) -- 12797(line=663, offs=43)
-*/
-/*
-local: 
-global: gte_g1int_int$40$1(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4706)
-tmparg = S2Evar(tk(4706))
-tmpsub = Some(tk(4706) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gte_g1int_int__40__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret71__1, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp72__1, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12741(line=662, offs=1) -- 12797(line=663, offs=43)
-*/
-ATSINSflab(__patsflab_gte_g1int_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12784(line=663, offs=30) -- 12795(line=663, offs=41)
-*/
-ATSINSmove(tmp72__1, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12766(line=663, offs=12) -- 12797(line=663, offs=43)
-*/
-ATSINSmove(tmpret71__1, atspre_g1int_gte_int(arg0, tmp72__1)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret71__1) ;
-} /* end of [ATSLIB_056_prelude__gte_g1int_int__40__1] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$5(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__5(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__5, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__5, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__5, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__5, atspre_g0int_eq_int(arg0, tmp19__5)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__5) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__5] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12916(line=672, offs=3) -- 12956(line=672, offs=43)
-*/
-/*
-local: 
-global: neq_g1int_int$44$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = tk(4712)
-tmparg = S2Evar(tk(4712))
-tmpsub = None()
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__neq_g1int_int__44(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret81, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp82, atstkind_t0ype(atstyvar_type(tk))) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12900(line=671, offs=1) -- 12956(line=672, offs=43)
-*/
-ATSINSflab(__patsflab_neq_g1int_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12943(line=672, offs=30) -- 12954(line=672, offs=41)
-*/
-ATSINSmove(tmp82, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4712))>)(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12925(line=672, offs=12) -- 12956(line=672, offs=43)
-*/
-ATSINSmove(tmpret81, PMVtmpltcst(g1int_neq<S2Evar(tk(4712))>)(arg0, tmp82)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret81) ;
-} /* end of [ATSLIB_056_prelude__neq_g1int_int__44] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12916(line=672, offs=3) -- 12956(line=672, offs=43)
-*/
-/*
-local: 
-global: neq_g1int_int$44$1(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4712)
-tmparg = S2Evar(tk(4712))
-tmpsub = Some(tk(4712) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__neq_g1int_int__44__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret81__1, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp82__1, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12900(line=671, offs=1) -- 12956(line=672, offs=43)
-*/
-ATSINSflab(__patsflab_neq_g1int_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12943(line=672, offs=30) -- 12954(line=672, offs=41)
-*/
-ATSINSmove(tmp82__1, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12925(line=672, offs=12) -- 12956(line=672, offs=43)
-*/
-ATSINSmove(tmpret81__1, atspre_g1int_neq_int(arg0, tmp82__1)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret81__1) ;
-} /* end of [ATSLIB_056_prelude__neq_g1int_int__44__1] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1008(line=36, offs=17) -- 1088(line=36, offs=97)
-*/
-/*
-local: 
-global: __patsfun_48$0(level=2)
-local: acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), x$5124(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
-global: acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), x$5124(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_48(atstkind_t0ype(atstype_int) env0, atstkind_type(atstype_ptrk) env1, atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret87, atstype_boxed) ;
-ATStmpdec(tmp88, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1008(line=36, offs=17) -- 1088(line=36, offs=97)
-*/
-ATSINSflab(__patsflab___patsfun_48):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1008(line=36, offs=17) -- 1088(line=36, offs=97)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1036(line=36, offs=45) -- 1086(line=36, offs=95)
-*/
-ATSINSmove_ldelay(tmp88, atstype_boxed, ATSPMVcfunlab(1, __patsfun_49, (env1))) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1016(line=36, offs=25) -- 1087(line=36, offs=96)
-*/
-
-/*
-#LINCONSTATUS==0
-*/
-ATSINSmove_con1_beg()
-ATSINSmove_con1_new(tmpret87, postiats_tysum_1) ;
-#if(0)
-ATSINSstore_con1_tag(tmpret87, 1) ;
-#endif
-ATSINSstore_con1_ofs(tmpret87, postiats_tysum_1, atslab__0, env0) ;
-ATSINSstore_con1_ofs(tmpret87, postiats_tysum_1, atslab__1, tmp88) ;
-ATSINSmove_con1_end()
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret87) ;
-} /* end of [__patsfun_48] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1036(line=36, offs=45) -- 1086(line=36, offs=95)
-*/
-/*
-local: 
-global: __patsfun_49$0(level=3)
-local: x$5124(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
-global: x$5124(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_49(atstkind_type(atstype_ptrk) env0, atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret89, atstype_boxed) ;
-ATStmpdec(tmp90, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1036(line=36, offs=45) -- 1086(line=36, offs=95)
-*/
-ATSINSflab(__patsflab___patsfun_49):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1036(line=36, offs=45) -- 1086(line=36, offs=95)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1062(line=36, offs=71) -- 1084(line=36, offs=93)
-*/
-ATSINSmove_ldelay(tmp90, atstype_boxed, ATSPMVcfunlab(1, __patsfun_50, ())) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1044(line=36, offs=53) -- 1085(line=36, offs=94)
-*/
-
-/*
-#LINCONSTATUS==0
-*/
-ATSINSmove_con1_beg()
-ATSINSmove_con1_new(tmpret89, postiats_tysum_1) ;
-#if(0)
-ATSINSstore_con1_tag(tmpret89, 1) ;
-#endif
-ATSINSstore_con1_ofs(tmpret89, postiats_tysum_1, atslab__0, ATSderef(env0, atstkind_t0ype(atstype_int))) ;
-ATSINSstore_con1_ofs(tmpret89, postiats_tysum_1, atslab__1, tmp90) ;
-ATSINSmove_con1_end()
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret89) ;
-} /* end of [__patsfun_49] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1062(line=36, offs=71) -- 1084(line=36, offs=93)
-*/
-/*
-local: 
-global: __patsfun_50$0(level=4)
-local: 
-global: 
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_50(atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret91, atstype_boxed) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1062(line=36, offs=71) -- 1084(line=36, offs=93)
-*/
-ATSINSflab(__patsflab___patsfun_50):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1062(line=36, offs=71) -- 1084(line=36, offs=93)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1070(line=36, offs=79) -- 1083(line=36, offs=92)
-*/
-
-ATSINSmove_nil(tmpret91) ;
-
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret91) ;
-} /* end of [__patsfun_50] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1192(line=42, offs=17) -- 1244(line=42, offs=69)
-*/
-/*
-local: 
-global: __patsfun_51$0(level=2)
-local: acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-global: acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_51(atstkind_t0ype(atstype_int) env0, atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret92, atstype_boxed) ;
-ATStmpdec(tmp93, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1192(line=42, offs=17) -- 1244(line=42, offs=69)
-*/
-ATSINSflab(__patsflab___patsfun_51):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1192(line=42, offs=17) -- 1244(line=42, offs=69)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1220(line=42, offs=45) -- 1242(line=42, offs=67)
-*/
-ATSINSmove_ldelay(tmp93, atstype_boxed, ATSPMVcfunlab(1, __patsfun_52, ())) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1200(line=42, offs=25) -- 1243(line=42, offs=68)
-*/
-
-/*
-#LINCONSTATUS==0
-*/
-ATSINSmove_con1_beg()
-ATSINSmove_con1_new(tmpret92, postiats_tysum_1) ;
-#if(0)
-ATSINSstore_con1_tag(tmpret92, 1) ;
-#endif
-ATSINSstore_con1_ofs(tmpret92, postiats_tysum_1, atslab__0, env0) ;
-ATSINSstore_con1_ofs(tmpret92, postiats_tysum_1, atslab__1, tmp93) ;
-ATSINSmove_con1_end()
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret92) ;
-} /* end of [__patsfun_51] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1220(line=42, offs=45) -- 1242(line=42, offs=67)
-*/
-/*
-local: 
-global: __patsfun_52$0(level=3)
-local: 
-global: 
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_52(atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret94, atstype_boxed) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1220(line=42, offs=45) -- 1242(line=42, offs=67)
-*/
-ATSINSflab(__patsflab___patsfun_52):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1220(line=42, offs=45) -- 1242(line=42, offs=67)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1228(line=42, offs=53) -- 1241(line=42, offs=66)
-*/
-
-ATSINSmove_nil(tmpret94) ;
-
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret94) ;
-} /* end of [__patsfun_52] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1290(line=45, offs=13) -- 1312(line=45, offs=35)
-*/
-/*
-local: 
-global: __patsfun_53$0(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_53(atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret95, atstype_boxed) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1290(line=45, offs=13) -- 1312(line=45, offs=35)
-*/
-ATSINSflab(__patsflab___patsfun_53):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1290(line=45, offs=13) -- 1312(line=45, offs=35)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1298(line=45, offs=21) -- 1311(line=45, offs=34)
-*/
-
-ATSINSmove_nil(tmpret95) ;
-
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret95) ;
-} /* end of [__patsfun_53] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$6(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__6(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__6, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__6, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__6, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__6, atspre_g0int_eq_int(arg0, tmp19__6)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__6) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__6] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1436(line=51, offs=15) -- 1512(line=51, offs=91)
-*/
-/*
-local: loop_39$0(level=1)
-global: loop_39$0(level=1), __patsfun_55$0(level=2)
-local: n$5122(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), x$5125(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
-global: n$5122(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), x$5125(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_55(atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstkind_type(atstype_ptrk) env2, atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret101, atstype_boxed) ;
-ATStmpdec(tmp102, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1436(line=51, offs=15) -- 1512(line=51, offs=91)
-*/
-ATSINSflab(__patsflab___patsfun_55):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1436(line=51, offs=15) -- 1512(line=51, offs=91)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1464(line=51, offs=43) -- 1510(line=51, offs=89)
-*/
-ATSINSmove_ldelay(tmp102, atstype_boxed, ATSPMVcfunlab(1, __patsfun_56, (env0, env1, env2))) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1444(line=51, offs=23) -- 1511(line=51, offs=90)
-*/
-
-/*
-#LINCONSTATUS==0
-*/
-ATSINSmove_con1_beg()
-ATSINSmove_con1_new(tmpret101, postiats_tysum_1) ;
-#if(0)
-ATSINSstore_con1_tag(tmpret101, 1) ;
-#endif
-ATSINSstore_con1_ofs(tmpret101, postiats_tysum_1, atslab__0, env1) ;
-ATSINSstore_con1_ofs(tmpret101, postiats_tysum_1, atslab__1, tmp102) ;
-ATSINSmove_con1_end()
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret101) ;
-} /* end of [__patsfun_55] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1464(line=51, offs=43) -- 1510(line=51, offs=89)
-*/
-/*
-local: loop_39$0(level=1)
-global: loop_39$0(level=1), __patsfun_56$0(level=3)
-local: n$5122(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), x$5125(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
-global: n$5122(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), x$5125(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_56(atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstkind_type(atstype_ptrk) env2, atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret103, atstype_boxed) ;
-ATStmpdec(tmp104, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp105, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1464(line=51, offs=43) -- 1510(line=51, offs=89)
-*/
-ATSINSflab(__patsflab___patsfun_56):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1464(line=51, offs=43) -- 1510(line=51, offs=89)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1499(line=51, offs=78) -- 1506(line=51, offs=85)
-*/
-ATSINSmove(tmp105, atspre_g1int_add_int(env1, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1491(line=51, offs=70) -- 1507(line=51, offs=86)
-*/
-ATSINSmove(tmp104, loop_39(env0, tmp105)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1472(line=51, offs=51) -- 1509(line=51, offs=88)
-*/
-
-/*
-#LINCONSTATUS==0
-*/
-ATSINSmove_con1_beg()
-ATSINSmove_con1_new(tmpret103, postiats_tysum_1) ;
-#if(0)
-ATSINSstore_con1_tag(tmpret103, 1) ;
-#endif
-ATSINSstore_con1_ofs(tmpret103, postiats_tysum_1, atslab__0, ATSderef(env2, atstkind_t0ype(atstype_int))) ;
-ATSINSstore_con1_ofs(tmpret103, postiats_tysum_1, atslab__1, tmp104) ;
-ATSINSmove_con1_end()
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret103) ;
-} /* end of [__patsfun_56] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1641(line=60, offs=4) -- 1760(line=61, offs=71)
-*/
-/*
-local: is_prime_20$0(level=0), divisors_36$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), divisors_36$0(level=0), prime_divisors_57$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-prime_divisors_57(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret107, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp132, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1641(line=60, offs=4) -- 1760(line=61, offs=71)
-*/
-ATSINSflab(__patsflab_prime_divisors_57):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1716(line=61, offs=27) -- 1726(line=61, offs=37)
-*/
-ATSINSmove(tmp132, divisors_36(arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1692(line=61, offs=3) -- 1760(line=61, offs=71)
-*/
-ATSINSmove(tmpret107, ATSLIB_056_prelude__stream_vt_filter_cloptr__58__1(tmp132, ATSPMVcfunlab(1, __patsfun_64, ()))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret107) ;
-} /* end of [prime_divisors_57] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 11373(line=684, offs=1) -- 12248(line=743, offs=2)
-*/
-/*
-local: 
-global: stream_vt_filter_cloptr$58$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = a(8764)
-tmparg = S2Evar(a(8764))
-tmpsub = None()
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__stream_vt_filter_cloptr__58(atstkind_type(atstype_ptrk) arg0, atstype_cloptr arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret108, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11349(line=683, offs=1) -- 12248(line=743, offs=2)
-*/
-ATSINSflab(__patsflab_stream_vt_filter_cloptr):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11390(line=686, offs=5) -- 12248(line=743, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11390(line=686, offs=5) -- 11407(line=686, offs=22)
-*/
-ATSINSmove(tmpret108, ATSfunclo_fun(PMVd2vfunlab(d2v=auxmain$4303(1), flab=auxmain_59$0(level=1)), (atstkind_type(atstype_ptrk), atstype_cloptr), atstkind_type(atstype_ptrk))(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11390(line=686, offs=5) -- 12248(line=743, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret108) ;
-} /* end of [ATSLIB_056_prelude__stream_vt_filter_cloptr__58] */
-#endif // end of [TEMPLATE]
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 11423(line=690, offs=1) -- 12222(line=741, offs=2)
-*/
-/*
-local: auxmain_59$0(level=1)
-global: auxmain_59$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-auxmain_59__59(atstkind_type(atstype_ptrk) arg0, atstype_cloptr arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret109, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11423(line=690, offs=1) -- 12222(line=741, offs=2)
-*/
-ATSINSflab(__patsflab_auxmain_59):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11503(line=696, offs=20) -- 12222(line=741, offs=2)
-*/
-ATSINSmove_ldelay(tmpret109, atstype_boxed, ATSPMVcfunlab(1, __patsfun_60__60, (arg0, arg1))) ;
-ATSfunbody_end()
-ATSreturn(tmpret109) ;
-} /* end of [auxmain_59__59] */
-#endif // end of [TEMPLATE]
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 11503(line=696, offs=20) -- 12222(line=741, offs=2)
-*/
-/*
-local: auxmain_59$0(level=1)
-global: auxmain_59$0(level=1), __patsfun_60$0(level=2)
-local: xs$4304(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk)))), pred$4305(2)(HSEfun(CLO(1); HSErefarg(1; HSEtyvar(a(8764))); HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_bool)))))
-global: xs$4304(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk)))), pred$4305(2)(HSEfun(CLO(1); HSErefarg(1; HSEtyvar(a(8764))); HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_bool)))))
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_60__60(atstkind_type(atstype_ptrk) env0, atstype_cloptr env1, atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret110, atstype_boxed) ;
-ATStmpdec(tmp111, atstype_boxed) ;
-// ATStmpdec_void(tmp114) ;
-ATStmpdec(tmp115, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp116, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp117, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp118, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp119) ;
-// ATStmpdec_void(tmp120) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11503(line=696, offs=20) -- 12222(line=741, offs=2)
-*/
-ATSINSflab(__patsflab___patsfun_60):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11503(line=696, offs=20) -- 12222(line=741, offs=2)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11516(line=699, offs=1) -- 12138(line=732, offs=4)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11535(line=700, offs=16) -- 11538(line=700, offs=19)
-*/
-ATSINSmove_llazyeval(tmp111, atstype_boxed, env0) ;
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11545(line=703, offs=1) -- 12104(line=730, offs=6)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11563(line=704, offs=3) -- 11589(line=705, offs=12)
-*/
-ATSINSlab(__atstmplab9):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11535(line=700, offs=16) -- 11538(line=700, offs=19)
-*/
-ATSifthen(ATSCKptriscons(tmp111)) { ATSINSgoto(__atstmplab12) ; } ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11589(line=705, offs=12) -- 11589(line=705, offs=12)
-*/
-ATSINSlab(__atstmplab10):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11593(line=705, offs=16) -- 11719(line=712, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11614(line=707, offs=5) -- 11662(line=708, offs=37)
-*/
-ATSINSmove_void(tmp114, atspre_cloptr_free(ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), env1))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11692(line=711, offs=5) -- 11705(line=711, offs=18)
-*/
-
-ATSINSmove_nil(tmpret110) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11593(line=705, offs=16) -- 11719(line=712, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11748(line=713, offs=3) -- 11776(line=714, offs=13)
-*/
-ATSINSlab(__atstmplab11):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11535(line=700, offs=16) -- 11538(line=700, offs=19)
-*/
-#if(0)
-ATSifthen(ATSCKptrisnull(tmp111)) { ATSINSdeadcode_fail() ; } ;
-#endif
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11776(line=714, offs=13) -- 11776(line=714, offs=13)
-*/
-ATSINSlab(__atstmplab12):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11780(line=714, offs=17) -- 12104(line=730, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11799(line=715, offs=16) -- 11805(line=715, offs=22)
-*/
-ATSINSmove(tmp115, ATSfunclo_clo(ATSPMVrefarg0(env1), (atstype_cloptr, atsrefarg1_type(atstyvar_type(a))), atstkind_t0ype(atstype_bool))(ATSPMVrefarg0(env1), ATSPMVrefarg1(ATSPMVptrof(ATSSELcon(tmp111, postiats_tysum_2, atslab__0))))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11816(line=717, offs=5) -- 12062(line=728, offs=10)
-*/
-ATSif(
-tmp115
-) ATSthen() {
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11835(line=718, offs=12) -- 11941(line=723, offs=10)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11871(line=720, offs=16) -- 11889(line=720, offs=34)
-*/
-ATSINSmove(tmp116, ATSfunclo_fun(PMVd2vfunlab(d2v=auxmain$4303(1), flab=auxmain_59$0(level=1)), (atstkind_type(atstype_ptrk), atstype_cloptr), atstkind_type(atstype_ptrk))(ATSSELcon(tmp111, postiats_tysum_2, atslab__1), env1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11864(line=720, offs=9) -- 11889(line=720, offs=34)
-*/
-ATSINSstore(ATSSELcon(tmp111, postiats_tysum_2, atslab__1), tmp116) ;
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11925(line=722, offs=27) -- 11931(line=722, offs=33)
-*/
-ATSINSmove(tmpret110, tmp111) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11835(line=718, offs=12) -- 11941(line=723, offs=10)
-*/
-/*
-INSletpop()
-*/
-} ATSelse() {
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11970(line=724, offs=12) -- 12062(line=728, offs=10)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11992(line=725, offs=19) -- 11995(line=725, offs=22)
-*/
-ATSINSmove(tmp117, ATSSELcon(tmp111, postiats_tysum_2, atslab__1)) ;
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12013(line=727, offs=9) -- 12028(line=727, offs=24)
-*/
-ATSINSfreecon(tmp111) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12033(line=727, offs=29) -- 12051(line=727, offs=47)
-*/
-ATSINSmove(tmp118, ATSfunclo_fun(PMVd2vfunlab(d2v=auxmain$4303(1), flab=auxmain_59$0(level=1)), (atstkind_type(atstype_ptrk), atstype_cloptr), atstkind_type(atstype_ptrk))(tmp117, env1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12031(line=727, offs=27) -- 12052(line=727, offs=48)
-*/
-ATSINSmove_llazyeval(tmpret110, atstype_boxed, tmp118) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11970(line=724, offs=12) -- 12062(line=728, offs=10)
-*/
-/*
-INSletpop()
-*/
-} /* ATSendif */
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11780(line=714, offs=17) -- 12104(line=730, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11516(line=699, offs=1) -- 12138(line=732, offs=4)
-*/
-/*
-INSletpop()
-*/
-} ATSelse() {
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12167(line=737, offs=3) -- 12170(line=737, offs=6)
-*/
-ATSINSmove_void(tmp119, atspre_lazy_vt_free(env0)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12174(line=738, offs=3) -- 12215(line=738, offs=44)
-*/
-ATSINSmove_void(tmp120, atspre_cloptr_free(ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), env1))) ;
-
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret110) ;
-} /* end of [__patsfun_60__60] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 11373(line=684, offs=1) -- 12248(line=743, offs=2)
-*/
-/*
-local: 
-global: stream_vt_filter_cloptr$58$1(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(8764)
-tmparg = S2Evar(a(8764))
-tmpsub = Some(a(8764) -> S2Eapp(S2Ecst(g0int_t0ype); S2Eextkind(atstype_int)))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__stream_vt_filter_cloptr__58__1(atstkind_type(atstype_ptrk) arg0, atstype_cloptr arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret108__1, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11349(line=683, offs=1) -- 12248(line=743, offs=2)
-*/
-ATSINSflab(__patsflab_stream_vt_filter_cloptr):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11390(line=686, offs=5) -- 12248(line=743, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11390(line=686, offs=5) -- 11407(line=686, offs=22)
-*/
-ATSINSmove(tmpret108__1, auxmain_59__59__1(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11390(line=686, offs=5) -- 12248(line=743, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret108__1) ;
-} /* end of [ATSLIB_056_prelude__stream_vt_filter_cloptr__58__1] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 11423(line=690, offs=1) -- 12222(line=741, offs=2)
-*/
-/*
-local: auxmain_59$1(level=2)
-global: auxmain_59$1(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-auxmain_59__59__1(atstkind_type(atstype_ptrk) arg0, atstype_cloptr arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret109__1, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11423(line=690, offs=1) -- 12222(line=741, offs=2)
-*/
-ATSINSflab(__patsflab_auxmain_59):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11503(line=696, offs=20) -- 12222(line=741, offs=2)
-*/
-ATSINSmove_ldelay(tmpret109__1, atstype_boxed, ATSPMVcfunlab(1, __patsfun_60__60__1, (arg0, arg1))) ;
-ATSfunbody_end()
-ATSreturn(tmpret109__1) ;
-} /* end of [auxmain_59__59__1] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 11503(line=696, offs=20) -- 12222(line=741, offs=2)
-*/
-/*
-local: auxmain_59$1(level=2)
-global: auxmain_59$1(level=2), __patsfun_60$1(level=3)
-local: xs$4304(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk)))), pred$4305(2)(HSEfun(CLO(1); HSErefarg(1; HSEs2exp(S2Eapp(S2Ecst(g0int_t0ype); S2Eextkind(atstype_int)))); HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_bool)))))
-global: xs$4304(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk)))), pred$4305(2)(HSEfun(CLO(1); HSErefarg(1; HSEs2exp(S2Eapp(S2Ecst(g0int_t0ype); S2Eextkind(atstype_int)))); HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_bool)))))
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_60__60__1(atstkind_type(atstype_ptrk) env0, atstype_cloptr env1, atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret110__1, atstype_boxed) ;
-ATStmpdec(tmp111__1, atstype_boxed) ;
-// ATStmpdec_void(tmp114__1) ;
-ATStmpdec(tmp115__1, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp116__1, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp117__1, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp118__1, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp119__1) ;
-// ATStmpdec_void(tmp120__1) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11503(line=696, offs=20) -- 12222(line=741, offs=2)
-*/
-ATSINSflab(__patsflab___patsfun_60):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11503(line=696, offs=20) -- 12222(line=741, offs=2)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11516(line=699, offs=1) -- 12138(line=732, offs=4)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11535(line=700, offs=16) -- 11538(line=700, offs=19)
-*/
-ATSINSmove_llazyeval(tmp111__1, atstype_boxed, env0) ;
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11545(line=703, offs=1) -- 12104(line=730, offs=6)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11563(line=704, offs=3) -- 11589(line=705, offs=12)
-*/
-ATSINSlab(__atstmplab9):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11535(line=700, offs=16) -- 11538(line=700, offs=19)
-*/
-ATSifthen(ATSCKptriscons(tmp111__1)) { ATSINSgoto(__atstmplab12) ; } ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11589(line=705, offs=12) -- 11589(line=705, offs=12)
-*/
-ATSINSlab(__atstmplab10):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11593(line=705, offs=16) -- 11719(line=712, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11614(line=707, offs=5) -- 11662(line=708, offs=37)
-*/
-ATSINSmove_void(tmp114__1, atspre_cloptr_free(ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), env1))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11692(line=711, offs=5) -- 11705(line=711, offs=18)
-*/
-
-ATSINSmove_nil(tmpret110__1) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11593(line=705, offs=16) -- 11719(line=712, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11748(line=713, offs=3) -- 11776(line=714, offs=13)
-*/
-ATSINSlab(__atstmplab11):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11535(line=700, offs=16) -- 11538(line=700, offs=19)
-*/
-#if(0)
-ATSifthen(ATSCKptrisnull(tmp111__1)) { ATSINSdeadcode_fail() ; } ;
-#endif
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11776(line=714, offs=13) -- 11776(line=714, offs=13)
-*/
-ATSINSlab(__atstmplab12):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11780(line=714, offs=17) -- 12104(line=730, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11799(line=715, offs=16) -- 11805(line=715, offs=22)
-*/
-ATSINSmove(tmp115__1, ATSfunclo_clo(ATSPMVrefarg0(env1), (atstype_cloptr, atsrefarg1_type(atstkind_t0ype(atstype_int))), atstkind_t0ype(atstype_bool))(ATSPMVrefarg0(env1), ATSPMVrefarg1(ATSPMVptrof(ATSSELcon(tmp111__1, postiats_tysum_1, atslab__0))))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11816(line=717, offs=5) -- 12062(line=728, offs=10)
-*/
-ATSif(
-tmp115__1
-) ATSthen() {
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11835(line=718, offs=12) -- 11941(line=723, offs=10)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11871(line=720, offs=16) -- 11889(line=720, offs=34)
-*/
-ATSINSmove(tmp116__1, auxmain_59__59__1(ATSSELcon(tmp111__1, postiats_tysum_1, atslab__1), env1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11864(line=720, offs=9) -- 11889(line=720, offs=34)
-*/
-ATSINSstore(ATSSELcon(tmp111__1, postiats_tysum_1, atslab__1), tmp116__1) ;
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11925(line=722, offs=27) -- 11931(line=722, offs=33)
-*/
-ATSINSmove(tmpret110__1, tmp111__1) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11835(line=718, offs=12) -- 11941(line=723, offs=10)
-*/
-/*
-INSletpop()
-*/
-} ATSelse() {
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11970(line=724, offs=12) -- 12062(line=728, offs=10)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11992(line=725, offs=19) -- 11995(line=725, offs=22)
-*/
-ATSINSmove(tmp117__1, ATSSELcon(tmp111__1, postiats_tysum_1, atslab__1)) ;
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12013(line=727, offs=9) -- 12028(line=727, offs=24)
-*/
-ATSINSfreecon(tmp111__1) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12033(line=727, offs=29) -- 12051(line=727, offs=47)
-*/
-ATSINSmove(tmp118__1, auxmain_59__59__1(tmp117__1, env1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12031(line=727, offs=27) -- 12052(line=727, offs=48)
-*/
-ATSINSmove_llazyeval(tmpret110__1, atstype_boxed, tmp118__1) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11970(line=724, offs=12) -- 12062(line=728, offs=10)
-*/
-/*
-INSletpop()
-*/
-} /* ATSendif */
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11780(line=714, offs=17) -- 12104(line=730, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11516(line=699, offs=1) -- 12138(line=732, offs=4)
-*/
-/*
-INSletpop()
-*/
-} ATSelse() {
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12167(line=737, offs=3) -- 12170(line=737, offs=6)
-*/
-ATSINSmove_void(tmp119__1, atspre_lazy_vt_free(env0)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12174(line=738, offs=3) -- 12215(line=738, offs=44)
-*/
-ATSINSmove_void(tmp120__1, atspre_cloptr_free(ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), env1))) ;
-
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret110__1) ;
-} /* end of [__patsfun_60__60__1] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1729(line=61, offs=40) -- 1759(line=61, offs=70)
-*/
-/*
-local: is_prime_20$0(level=0)
-global: is_prime_20$0(level=0), __patsfun_64$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-__patsfun_64(atsrefarg1_type(atstkind_t0ype(atstype_int)) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret133, atstkind_t0ype(atstype_bool)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1729(line=61, offs=40) -- 1759(line=61, offs=70)
-*/
-ATSINSflab(__patsflab___patsfun_64):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1738(line=61, offs=49) -- 1759(line=61, offs=70)
-*/
-ATSINSmove(tmpret133, is_prime_20(ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), ATSderef(arg0, atstkind_t0ype(atstype_int))))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret133) ;
-} /* end of [__patsfun_64] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1765(line=63, offs=4) -- 1837(line=64, offs=18)
-*/
-/*
-local: 
-global: div_gt_zero_65$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-div_gt_zero_65(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret134, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp135, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1765(line=63, offs=4) -- 1837(line=64, offs=18)
-*/
-ATSINSflab(__patsflab_div_gt_zero_65):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1831(line=64, offs=12) -- 1836(line=64, offs=17)
-*/
-ATSINSmove(tmp135, atspre_g1int_div_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1822(line=64, offs=3) -- 1837(line=64, offs=18)
-*/
-ATSINSmove(tmpret134, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), tmp135)) ;
-ATSfunbody_end()
-ATSreturn(tmpret134) ;
-} /* end of [div_gt_zero_65] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1878(line=67, offs=5) -- 2541(line=94, offs=6)
-*/
-/*
-local: exp_mod_prime_66$0(level=0)
-global: exp_mod_prime_66$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-exp_mod_prime_66(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1, atstkind_t0ype(atstype_int) arg2)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(apy0, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(apy1, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(apy2, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpret136, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref137, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref138, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp139, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp140, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmpref143, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp144, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref145, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref146, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp147, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp148, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp149, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmpref152, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp153, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1878(line=67, offs=5) -- 2541(line=94, offs=6)
-*/
-ATSINSflab(__patsflab_exp_mod_prime_66):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1946(line=68, offs=3) -- 2541(line=94, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1958(line=69, offs=9) -- 1960(line=69, offs=11)
-*/
-/*
-ATSINStmpdec(tmpref137) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1963(line=69, offs=14) -- 1968(line=69, offs=19)
-*/
-ATSINSmove(tmpref137, atspre_g0int_mod_int(arg0, arg2)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1977(line=70, offs=9) -- 1979(line=70, offs=11)
-*/
-/*
-ATSINStmpdec(tmpref138) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1987(line=70, offs=19) -- 1992(line=70, offs=24)
-*/
-ATSINSmove(tmp139, atspre_g1int_sub_int(arg2, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1982(line=70, offs=14) -- 1993(line=70, offs=25)
-*/
-ATSINSmove(tmpref138, atspre_g0int_mod_int(arg1, tmp139)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2003(line=72, offs=5) -- 2535(line=93, offs=12)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2022(line=73, offs=9) -- 2023(line=73, offs=10)
-*/
-ATSINSlab(__atstmplab13):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1892(line=67, offs=19) -- 1893(line=67, offs=20)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(0))) { ATSINSgoto(__atstmplab15) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2023(line=73, offs=10) -- 2023(line=73, offs=10)
-*/
-ATSINSlab(__atstmplab14):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2027(line=73, offs=14) -- 2028(line=73, offs=15)
-*/
-ATSINSmove(tmpret136, ATSPMVi0nt(0)) ;
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2038(line=74, offs=10) -- 2038(line=74, offs=10)
-*/
-ATSINSlab(__atstmplab15):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2071(line=76, offs=14) -- 2076(line=76, offs=19)
-*/
-ATSINSmove(tmp140, ATSLIB_056_prelude__gt_g1int_int__6__3(arg1, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2068(line=76, offs=11) -- 2523(line=92, offs=14)
-*/
-ATSif(
-tmp140
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2094(line=77, offs=13) -- 2494(line=90, offs=16)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2116(line=78, offs=19) -- 2118(line=78, offs=21)
-*/
-/*
-ATSINStmpdec(tmpref143) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2141(line=78, offs=44) -- 2148(line=78, offs=51)
-*/
-ATSINSmove(tmp144, atspre_g0int_half_int(tmpref138)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2132(line=78, offs=35) -- 2150(line=78, offs=53)
-*/
-ATSINSmove(tmpref143, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), tmp144)) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2169(line=79, offs=19) -- 2171(line=79, offs=21)
-*/
-/*
-ATSINStmpdec(tmpref145) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2174(line=79, offs=24) -- 2180(line=79, offs=30)
-*/
-ATSINSmove(tmpref145, atspre_g0int_mod_int(tmpref138, ATSPMVi0nt(2))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2199(line=80, offs=19) -- 2203(line=80, offs=23)
-*/
-/*
-ATSINStmpdec(tmpref146) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2226(line=80, offs=46) -- 2231(line=80, offs=51)
-*/
-ATSINSmove(tmp148, atspre_g1int_mul_int(arg0, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2226(line=80, offs=46) -- 2235(line=80, offs=55)
-*/
-ATSINSmove(tmp147, atspre_g0int_mod_int(tmp148, arg2)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2217(line=80, offs=37) -- 2236(line=80, offs=56)
-*/
-ATSINSmove(tmpref146, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), tmp147)) ;
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2269(line=82, offs=18) -- 2275(line=82, offs=24)
-*/
-ATSINSmove(tmp149, ATSLIB_056_prelude__eq_g0int_int__12__7(tmpref145, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2266(line=82, offs=15) -- 2478(line=89, offs=20)
-*/
-ATSif(
-tmp149
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2297(line=83, offs=17) -- 2323(line=83, offs=43)
-*/
-ATStailcal_beg()
-ATSINSmove_tlcal(apy0, tmpref146) ;
-ATSINSmove_tlcal(apy1, tmpref143) ;
-ATSINSmove_tlcal(apy2, arg2) ;
-ATSINSargmove_tlcal(arg0, apy0) ;
-ATSINSargmove_tlcal(arg1, apy1) ;
-ATSINSargmove_tlcal(arg2, apy2) ;
-ATSINSfgoto(__patsflab_exp_mod_prime_66) ;
-ATStailcal_end()
-
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2359(line=85, offs=17) -- 2478(line=89, offs=20)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2385(line=86, offs=23) -- 2386(line=86, offs=24)
-*/
-/*
-ATSINStmpdec(tmpref152) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2393(line=86, offs=31) -- 2419(line=86, offs=57)
-*/
-ATSINSmove(tmp153, exp_mod_prime_66(tmpref146, tmpref143, arg2)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2389(line=86, offs=27) -- 2419(line=86, offs=57)
-*/
-ATSINSmove(tmpref152, atspre_g0int_mul_int(arg0, tmp153)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2457(line=88, offs=19) -- 2458(line=88, offs=20)
-*/
-ATSINSmove(tmpret136, tmpref152) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2359(line=85, offs=17) -- 2478(line=89, offs=20)
-*/
-/*
-INSletpop()
-*/
-} /* ATSendif */
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2094(line=77, offs=13) -- 2494(line=90, offs=16)
-*/
-/*
-INSletpop()
-*/
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2522(line=92, offs=13) -- 2523(line=92, offs=14)
-*/
-ATSINSmove(tmpret136, ATSPMVi0nt(1)) ;
-} /* ATSendif */
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 1946(line=68, offs=3) -- 2541(line=94, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret136) ;
-} /* end of [exp_mod_prime_66] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
-*/
-/*
-local: 
-global: gt_g1int_int$6$3(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4703)
-tmparg = S2Evar(tk(4703))
-tmpsub = Some(tk(4703) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6__3(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret11__3, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp12__3, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
-*/
-ATSINSmove(tmp12__3, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
-*/
-ATSINSmove(tmpret11__3, atspre_g1int_gt_int(arg0, tmp12__3)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret11__3) ;
-} /* end of [ATSLIB_056_prelude__gt_g1int_int__6__3] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$7(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__7(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__7, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__7, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__7, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__7, atspre_g0int_eq_int(arg0, tmp19__7)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__7) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__7] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2644(line=97, offs=5) -- 3477(line=126, offs=6)
-*/
-/*
-local: exp_5$0(level=0), is_prime_20$0(level=0), div_gt_zero_65$0(level=0), exp_mod_prime_66$0(level=0)
-global: witness_0$0(level=0), exp_5$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), div_gt_zero_65$0(level=0), exp_mod_prime_66$0(level=0), jacobi_72$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-jacobi_72(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret154, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2644(line=97, offs=5) -- 3477(line=126, offs=6)
-*/
-ATSINSflab(__patsflab_jacobi_72):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2685(line=98, offs=3) -- 3477(line=126, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3464(line=125, offs=5) -- 3471(line=125, offs=12)
-*/
-ATSINSmove(tmpret154, loop_78(arg0, arg1, ATSPMVi0nt(2))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2685(line=98, offs=3) -- 3477(line=126, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret154) ;
-} /* end of [jacobi_72] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2697(line=99, offs=9) -- 3025(line=109, offs=12)
-*/
-/*
-local: exp_mod_prime_66$0(level=0)
-global: exp_mod_prime_66$0(level=0), legendre_73$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-legendre_73(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret155, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp156, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref157, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp158, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp159, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp160, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp161, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp164, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp165, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp166, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp169, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2697(line=99, offs=9) -- 3025(line=109, offs=12)
-*/
-ATSINSflab(__patsflab_legendre_73):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2786(line=100, offs=13) -- 2791(line=100, offs=18)
-*/
-ATSINSmove(tmp156, atspre_g0int_mod_int(arg1, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2780(line=100, offs=7) -- 3025(line=109, offs=12)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2805(line=101, offs=11) -- 2806(line=101, offs=12)
-*/
-ATSINSlab(__atstmplab16):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2786(line=100, offs=13) -- 2791(line=100, offs=18)
-*/
-ATSifnthen(ATSCKpat_int(tmp156, ATSPMVint(0))) { ATSINSgoto(__atstmplab18) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2806(line=101, offs=12) -- 2806(line=101, offs=12)
-*/
-ATSINSlab(__atstmplab17):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2810(line=101, offs=16) -- 2811(line=101, offs=17)
-*/
-ATSINSmove(tmpret155, ATSPMVi0nt(0)) ;
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2823(line=102, offs=12) -- 2823(line=102, offs=12)
-*/
-ATSINSlab(__atstmplab18):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2827(line=102, offs=16) -- 3025(line=109, offs=12)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2845(line=103, offs=15) -- 2846(line=103, offs=16)
-*/
-/*
-ATSINStmpdec(tmpref157) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2867(line=103, offs=37) -- 2872(line=103, offs=42)
-*/
-ATSINSmove(tmp159, atspre_g1int_sub_int(arg1, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2866(line=103, offs=36) -- 2877(line=103, offs=47)
-*/
-ATSINSmove(tmp158, atspre_g1int_div_int(tmp159, ATSPMVi0nt(2))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2849(line=103, offs=19) -- 2881(line=103, offs=51)
-*/
-ATSINSmove(tmpref157, exp_mod_prime_66(arg0, tmp158, arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2909(line=105, offs=17) -- 2910(line=105, offs=18)
-*/
-ATSINSmove(tmp160, tmpref157) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2903(line=105, offs=11) -- 3013(line=108, offs=21)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2929(line=106, offs=16) -- 2929(line=106, offs=16)
-*/
-ATSINSlab(__atstmplab19):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-guard:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2940(line=106, offs=27) -- 2945(line=106, offs=32)
-*/
-ATSINSmove(tmp165, atspre_g1int_sub_int(arg1, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2935(line=106, offs=22) -- 2946(line=106, offs=33)
-*/
-ATSINSmove(tmp164, atspre_g0int_mod_int(tmp160, tmp165)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2935(line=106, offs=22) -- 2950(line=106, offs=37)
-*/
-ATSINSmove(tmp161, ATSLIB_056_prelude__eq_g0int_int__12__8(tmp164, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2935(line=106, offs=22) -- 2950(line=106, offs=37)
-*/
-ATSifnthen(ATSCKpat_bool(tmp161, ATSPMVbool_true())) { ATSINSgoto(__atstmplab20) ; } ;
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2954(line=106, offs=41) -- 2956(line=106, offs=43)
-*/
-ATSINSmove(tmpret155, atspre_g1int_neg_int(ATSPMVi0nt(1))) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2972(line=107, offs=16) -- 2972(line=107, offs=16)
-*/
-ATSINSlab(__atstmplab20):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-guard:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2978(line=107, offs=22) -- 2983(line=107, offs=27)
-*/
-ATSINSmove(tmp169, atspre_g0int_mod_int(tmp160, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2978(line=107, offs=22) -- 2987(line=107, offs=31)
-*/
-ATSINSmove(tmp166, ATSLIB_056_prelude__eq_g0int_int__12__9(tmp169, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2978(line=107, offs=22) -- 2987(line=107, offs=31)
-*/
-ATSifnthen(ATSCKpat_bool(tmp166, ATSPMVbool_true())) { ATSINSgoto(__atstmplab21) ; } ;
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2991(line=107, offs=35) -- 2992(line=107, offs=36)
-*/
-ATSINSmove(tmpret155, ATSPMVi0nt(0)) ;
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3008(line=108, offs=16) -- 3008(line=108, offs=16)
-*/
-ATSINSlab(__atstmplab21):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3012(line=108, offs=20) -- 3013(line=108, offs=21)
-*/
-ATSINSmove(tmpret155, ATSPMVi0nt(1)) ;
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 2827(line=102, offs=16) -- 3025(line=109, offs=12)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-ATSfunbody_end()
-ATSreturn(tmpret155) ;
-} /* end of [legendre_73] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$8(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__8(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__8, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__8, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__8, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__8, atspre_g0int_eq_int(arg0, tmp19__8)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__8) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__8] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$9(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__9(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__9, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__9, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__9, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__9, atspre_g0int_eq_int(arg0, tmp19__9)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__9) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__9] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3039(line=111, offs=9) -- 3194(line=114, offs=17)
-*/
-/*
-local: div_gt_zero_65$0(level=0), get_multiplicity_77$0(level=1)
-global: div_gt_zero_65$0(level=0), get_multiplicity_77$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-get_multiplicity_77(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret170, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp171, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp172, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp173, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3039(line=111, offs=9) -- 3194(line=114, offs=17)
-*/
-ATSINSflab(__patsflab_get_multiplicity_77):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3111(line=112, offs=13) -- 3116(line=112, offs=18)
-*/
-ATSINSmove(tmp171, atspre_g0int_mod_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3105(line=112, offs=7) -- 3194(line=114, offs=17)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3130(line=113, offs=11) -- 3131(line=113, offs=12)
-*/
-ATSINSlab(__atstmplab22):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3111(line=112, offs=13) -- 3116(line=112, offs=18)
-*/
-ATSifnthen(ATSCKpat_int(tmp171, ATSPMVint(0))) { ATSINSgoto(__atstmplab24) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3131(line=113, offs=12) -- 3131(line=113, offs=12)
-*/
-ATSINSlab(__atstmplab23):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3156(line=113, offs=37) -- 3173(line=113, offs=54)
-*/
-ATSINSmove(tmp173, div_gt_zero_65(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3139(line=113, offs=20) -- 3177(line=113, offs=58)
-*/
-ATSINSmove(tmp172, get_multiplicity_77(tmp173, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3135(line=113, offs=16) -- 3177(line=113, offs=58)
-*/
-ATSINSmove(tmpret170, atspre_g1int_add_int(ATSPMVi0nt(1), tmp172)) ;
-
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3189(line=114, offs=12) -- 3189(line=114, offs=12)
-*/
-ATSINSlab(__atstmplab24):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3193(line=114, offs=16) -- 3194(line=114, offs=17)
-*/
-ATSINSmove(tmpret170, ATSPMVi0nt(0)) ;
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-ATSfunbody_end()
-ATSreturn(tmpret170) ;
-} /* end of [get_multiplicity_77] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3208(line=116, offs=9) -- 3454(line=123, offs=24)
-*/
-/*
-local: exp_5$0(level=0), is_prime_20$0(level=0), legendre_73$0(level=1), get_multiplicity_77$0(level=1), loop_78$0(level=1)
-global: exp_5$0(level=0), is_prime_20$0(level=0), div_gt_zero_65$0(level=0), exp_mod_prime_66$0(level=0), legendre_73$0(level=1), get_multiplicity_77$0(level=1), loop_78$0(level=1)
-local: a$5144(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), n$5145(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-global: a$5144(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), n$5145(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-loop_78(atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(apy0, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpret174, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp175, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp178, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp179, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp182, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp183, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp184, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp185, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp186, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp187, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp188, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3208(line=116, offs=9) -- 3454(line=123, offs=24)
-*/
-ATSINSflab(__patsflab_loop_78):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3265(line=117, offs=10) -- 3272(line=117, offs=17)
-*/
-ATSINSmove(tmp175, ATSLIB_056_prelude__gt_g1int_int__6__4(arg0, env1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3262(line=117, offs=7) -- 3454(line=123, offs=24)
-*/
-ATSif(
-tmp175
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3286(line=118, offs=9) -- 3287(line=118, offs=10)
-*/
-ATSINSmove(tmpret174, ATSPMVi0nt(1)) ;
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3310(line=120, offs=12) -- 3337(line=120, offs=39)
-*/
-ATSINSmove(tmp182, atspre_g0int_mod_int(env0, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3310(line=120, offs=12) -- 3337(line=120, offs=39)
-*/
-ATSINSmove(tmp179, ATSLIB_056_prelude__eq_g0int_int__12__10(tmp182, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3310(line=120, offs=12) -- 3337(line=120, offs=39)
-*/
-ATSif(
-tmp179
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3310(line=120, offs=12) -- 3337(line=120, offs=39)
-*/
-ATSINSmove(tmp178, is_prime_20(arg0)) ;
-
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3310(line=120, offs=12) -- 3337(line=120, offs=39)
-*/
-ATSINSmove(tmp178, ATSPMVbool_false()) ;
-} /* ATSendif */
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3307(line=120, offs=9) -- 3454(line=123, offs=24)
-*/
-ATSif(
-tmp178
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3359(line=121, offs=16) -- 3366(line=121, offs=23)
-*/
-ATSINSmove(tmp184, atspre_g1int_add_int(arg0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3354(line=121, offs=11) -- 3367(line=121, offs=24)
-*/
-ATSINSmove(tmp183, loop_78(env0, env1, tmp184)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3374(line=121, offs=31) -- 3390(line=121, offs=47)
-*/
-ATSINSmove(tmp186, legendre_73(arg0, env1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3392(line=121, offs=49) -- 3416(line=121, offs=73)
-*/
-ATSINSmove(tmp187, get_multiplicity_77(env0, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3370(line=121, offs=27) -- 3417(line=121, offs=74)
-*/
-ATSINSmove(tmp185, exp_5(tmp186, tmp187)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3354(line=121, offs=11) -- 3417(line=121, offs=74)
-*/
-ATSINSmove(tmpret174, atspre_g0int_mul_int(tmp183, tmp185)) ;
-
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3446(line=123, offs=16) -- 3453(line=123, offs=23)
-*/
-ATSINSmove(tmp188, atspre_g1int_add_int(arg0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3441(line=123, offs=11) -- 3454(line=123, offs=24)
-*/
-ATStailcal_beg()
-ATSINSmove_tlcal(apy0, tmp188) ;
-ATSINSargmove_tlcal(arg0, apy0) ;
-ATSINSfgoto(__patsflab_loop_78) ;
-ATStailcal_end()
-
-} /* ATSendif */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret174) ;
-} /* end of [loop_78] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
-*/
-/*
-local: 
-global: gt_g1int_int$6$4(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4703)
-tmparg = S2Evar(tk(4703))
-tmpsub = Some(tk(4703) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6__4(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret11__4, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp12__4, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
-*/
-ATSINSmove(tmp12__4, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
-*/
-ATSINSmove(tmpret11__4, atspre_g1int_gt_int(arg0, tmp12__4)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret11__4) ;
-} /* end of [ATSLIB_056_prelude__gt_g1int_int__6__4] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$10(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__10(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__10, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__10, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__10, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__10, atspre_g0int_eq_int(arg0, tmp19__10)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__10) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__10] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3482(line=128, offs=4) -- 3551(line=129, offs=32)
-*/
-/*
-local: divisors_36$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), divisors_36$0(level=0), count_divisors_81$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-count_divisors_81(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret189, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp201, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3482(line=128, offs=4) -- 3551(line=129, offs=32)
-*/
-ATSINSflab(__patsflab_count_divisors_81):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3539(line=129, offs=20) -- 3549(line=129, offs=30)
-*/
-ATSINSmove(tmp201, divisors_36(arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3522(line=129, offs=3) -- 3551(line=129, offs=32)
-*/
-ATSINSmove(tmpret189, ATSLIB_056_prelude__stream_vt_length__82__1(tmp201)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret189) ;
-} /* end of [count_divisors_81] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 8056(line=456, offs=17) -- 8278(line=471, offs=4)
-*/
-/*
-local: 
-global: stream_vt_length$82$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = a(8735)
-tmparg = S2Evar(a(8735))
-tmpsub = None()
-*/
-atstkind_t0ype(atstype_int)
-ATSLIB_056_prelude__stream_vt_length__82(atstkind_type(atstype_ptrk) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret190, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8040(line=456, offs=1) -- 8278(line=471, offs=4)
-*/
-ATSINSflab(__patsflab_stream_vt_length):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8064(line=456, offs=25) -- 8278(line=471, offs=4)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8261(line=470, offs=16) -- 8273(line=470, offs=28)
-*/
-ATSINSmove(tmpret190, ATSfunclo_fun(PMVd2vfunlab(d2v=loop$4254(1), flab=loop_83$0(level=1)), (atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)), atstkind_t0ype(atstype_int))(arg0, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8064(line=456, offs=25) -- 8278(line=471, offs=4)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret190) ;
-} /* end of [ATSLIB_056_prelude__stream_vt_length__82] */
-#endif // end of [TEMPLATE]
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 8075(line=459, offs=1) -- 8219(line=467, offs=2)
-*/
-/*
-local: loop_83$0(level=1)
-global: loop_83$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-loop_83__83(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(tmpret191, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp192, atstype_boxed) ;
-ATStmpdec(tmp194, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp195, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8075(line=459, offs=1) -- 8219(line=467, offs=2)
-*/
-ATSINSflab(__patsflab_loop_83):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8141(line=464, offs=9) -- 8144(line=464, offs=12)
-*/
-ATSINSmove_llazyeval(tmp192, atstype_boxed, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8135(line=464, offs=3) -- 8217(line=466, offs=44)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8152(line=465, offs=5) -- 8168(line=465, offs=21)
-*/
-ATSINSlab(__atstmplab25):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8141(line=464, offs=9) -- 8144(line=464, offs=12)
-*/
-ATSifthen(ATSCKptriscons(tmp192)) { ATSINSgoto(__atstmplab28) ; } ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8168(line=465, offs=21) -- 8168(line=465, offs=21)
-*/
-ATSINSlab(__atstmplab26):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8172(line=465, offs=25) -- 8173(line=465, offs=26)
-*/
-ATSINSmove(tmpret191, arg1) ;
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8178(line=466, offs=5) -- 8200(line=466, offs=27)
-*/
-ATSINSlab(__atstmplab27):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8141(line=464, offs=9) -- 8144(line=464, offs=12)
-*/
-#if(0)
-ATSifthen(ATSCKptrisnull(tmp192)) { ATSINSdeadcode_fail() ; } ;
-#endif
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8200(line=466, offs=27) -- 8200(line=466, offs=27)
-*/
-ATSINSlab(__atstmplab28):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8197(line=466, offs=24) -- 8199(line=466, offs=26)
-*/
-ATSINSmove(tmp194, ATSSELcon(tmp192, postiats_tysum_3, atslab__1)) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8178(line=466, offs=5) -- 8217(line=466, offs=44)
-*/
-ATSINSfreecon(tmp192) ;
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8213(line=466, offs=40) -- 8216(line=466, offs=43)
-*/
-ATSINSmove(tmp195, PMVtmpltcst(g1int_add<S2Eextkind(atstype_int)>)(arg1, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8204(line=466, offs=31) -- 8217(line=466, offs=44)
-*/
-ATStailcal_beg()
-ATSINSmove_tlcal(apy0, tmp194) ;
-ATSINSmove_tlcal(apy1, tmp195) ;
-ATSINSargmove_tlcal(arg0, apy0) ;
-ATSINSargmove_tlcal(arg1, apy1) ;
-ATSINSfgoto(__patsflab_loop_83) ;
-ATStailcal_end()
-
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-ATSfunbody_end()
-ATSreturn(tmpret191) ;
-} /* end of [loop_83__83] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 8056(line=456, offs=17) -- 8278(line=471, offs=4)
-*/
-/*
-local: 
-global: stream_vt_length$82$1(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(8735)
-tmparg = S2Evar(a(8735))
-tmpsub = Some(a(8735) -> S2Eapp(S2Ecst(g0int_t0ype); S2Eextkind(atstype_int)))
-*/
-atstkind_t0ype(atstype_int)
-ATSLIB_056_prelude__stream_vt_length__82__1(atstkind_type(atstype_ptrk) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret190__1, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8040(line=456, offs=1) -- 8278(line=471, offs=4)
-*/
-ATSINSflab(__patsflab_stream_vt_length):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8064(line=456, offs=25) -- 8278(line=471, offs=4)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8261(line=470, offs=16) -- 8273(line=470, offs=28)
-*/
-ATSINSmove(tmpret190__1, loop_83__83__1(arg0, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8064(line=456, offs=25) -- 8278(line=471, offs=4)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret190__1) ;
-} /* end of [ATSLIB_056_prelude__stream_vt_length__82__1] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 8075(line=459, offs=1) -- 8219(line=467, offs=2)
-*/
-/*
-local: loop_83$1(level=2)
-global: loop_83$1(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-loop_83__83__1(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(tmpret191__1, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp192__1, atstype_boxed) ;
-ATStmpdec(tmp194__1, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp195__1, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8075(line=459, offs=1) -- 8219(line=467, offs=2)
-*/
-ATSINSflab(__patsflab_loop_83):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8141(line=464, offs=9) -- 8144(line=464, offs=12)
-*/
-ATSINSmove_llazyeval(tmp192__1, atstype_boxed, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8135(line=464, offs=3) -- 8217(line=466, offs=44)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8152(line=465, offs=5) -- 8168(line=465, offs=21)
-*/
-ATSINSlab(__atstmplab25):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8141(line=464, offs=9) -- 8144(line=464, offs=12)
-*/
-ATSifthen(ATSCKptriscons(tmp192__1)) { ATSINSgoto(__atstmplab28) ; } ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8168(line=465, offs=21) -- 8168(line=465, offs=21)
-*/
-ATSINSlab(__atstmplab26):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8172(line=465, offs=25) -- 8173(line=465, offs=26)
-*/
-ATSINSmove(tmpret191__1, arg1) ;
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8178(line=466, offs=5) -- 8200(line=466, offs=27)
-*/
-ATSINSlab(__atstmplab27):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8141(line=464, offs=9) -- 8144(line=464, offs=12)
-*/
-#if(0)
-ATSifthen(ATSCKptrisnull(tmp192__1)) { ATSINSdeadcode_fail() ; } ;
-#endif
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8200(line=466, offs=27) -- 8200(line=466, offs=27)
-*/
-ATSINSlab(__atstmplab28):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8197(line=466, offs=24) -- 8199(line=466, offs=26)
-*/
-ATSINSmove(tmp194__1, ATSSELcon(tmp192__1, postiats_tysum_1, atslab__1)) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8178(line=466, offs=5) -- 8217(line=466, offs=44)
-*/
-ATSINSfreecon(tmp192__1) ;
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8213(line=466, offs=40) -- 8216(line=466, offs=43)
-*/
-ATSINSmove(tmp195__1, atspre_g1int_add_int(arg1, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8204(line=466, offs=31) -- 8217(line=466, offs=44)
-*/
-ATStailcal_beg()
-ATSINSmove_tlcal(apy0, tmp194__1) ;
-ATSINSmove_tlcal(apy1, tmp195__1) ;
-ATSINSargmove_tlcal(arg0, apy0) ;
-ATSINSargmove_tlcal(arg1, apy1) ;
-ATSINSfgoto(__patsflab_loop_83) ;
-ATStailcal_end()
-
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-ATSfunbody_end()
-ATSreturn(tmpret191__1) ;
-} /* end of [loop_83__83__1] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3604(line=133, offs=4) -- 4203(line=159, offs=6)
-*/
-/*
-local: sqrt_int_17$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), sum_divisors_86$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-sum_divisors_86(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret202, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3604(line=133, offs=4) -- 4203(line=159, offs=6)
-*/
-ATSINSflab(__patsflab_sum_divisors_86):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3641(line=134, offs=3) -- 4203(line=159, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4187(line=158, offs=5) -- 4197(line=158, offs=15)
-*/
-ATSINSmove(tmpret202, loop_87(arg0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3641(line=134, offs=3) -- 4203(line=159, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret202) ;
-} /* end of [sum_divisors_86] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3653(line=135, offs=9) -- 4177(line=156, offs=27)
-*/
-/*
-local: sqrt_int_17$0(level=0), loop_87$0(level=1)
-global: sqrt_int_17$0(level=0), loop_87$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-loop_87(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(tmpret203, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp204, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp207, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp208, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp211, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp212, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp215, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref216, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp217, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp220, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref221, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp222, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp223, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp224, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp225, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3653(line=135, offs=9) -- 4177(line=156, offs=27)
-*/
-ATSINSflab(__patsflab_loop_87):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3748(line=136, offs=17) -- 3758(line=136, offs=27)
-*/
-ATSINSmove(tmp207, sqrt_int_17(arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3741(line=136, offs=10) -- 3758(line=136, offs=27)
-*/
-ATSINSmove(tmp204, ATSLIB_056_prelude__gte_g1int_int__40__2(arg1, tmp207)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3738(line=136, offs=7) -- 4177(line=156, offs=27)
-*/
-ATSif(
-tmp204
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3776(line=137, offs=12) -- 3783(line=137, offs=19)
-*/
-ATSINSmove(tmp211, atspre_g0int_mod_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3776(line=137, offs=12) -- 3787(line=137, offs=23)
-*/
-ATSINSmove(tmp208, ATSLIB_056_prelude__eq_g0int_int__12__11(tmp211, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3773(line=137, offs=9) -- 3985(line=147, offs=12)
-*/
-ATSif(
-tmp208
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3806(line=138, offs=14) -- 3813(line=138, offs=21)
-*/
-ATSINSmove(tmp215, atspre_g1int_div_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3806(line=138, offs=14) -- 3820(line=138, offs=28)
-*/
-ATSINSmove(tmp212, ATSLIB_056_prelude__neq_g1int_int__44__2(tmp215, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3803(line=138, offs=11) -- 3960(line=145, offs=16)
-*/
-ATSif(
-tmp212
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3838(line=139, offs=13) -- 3929(line=143, offs=16)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3860(line=140, offs=19) -- 3861(line=140, offs=20)
-*/
-/*
-ATSINStmpdec(tmpref216) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3869(line=140, offs=28) -- 3876(line=140, offs=35)
-*/
-ATSINSmove(tmpref216, atspre_g1int_div_int(arg0, arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3906(line=142, offs=15) -- 3913(line=142, offs=22)
-*/
-ATSINSmove(tmpret203, atspre_g1int_add_int(arg1, tmpref216)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3838(line=139, offs=13) -- 3929(line=143, offs=16)
-*/
-/*
-INSletpop()
-*/
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3957(line=145, offs=13) -- 3960(line=145, offs=16)
-*/
-ATSINSmove(tmpret203, arg1) ;
-} /* ATSendif */
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 3984(line=147, offs=11) -- 3985(line=147, offs=12)
-*/
-ATSINSmove(tmpret203, ATSPMVi0nt(0)) ;
-} /* ATSendif */
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4008(line=149, offs=12) -- 4015(line=149, offs=19)
-*/
-ATSINSmove(tmp220, atspre_g0int_mod_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4008(line=149, offs=12) -- 4019(line=149, offs=23)
-*/
-ATSINSmove(tmp217, ATSLIB_056_prelude__eq_g0int_int__12__12(tmp220, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4005(line=149, offs=9) -- 4177(line=156, offs=27)
-*/
-ATSif(
-tmp217
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4035(line=150, offs=11) -- 4137(line=154, offs=14)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4055(line=151, offs=17) -- 4056(line=151, offs=18)
-*/
-/*
-ATSINStmpdec(tmpref221) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4064(line=151, offs=26) -- 4071(line=151, offs=33)
-*/
-ATSINSmove(tmpref221, atspre_g1int_div_int(arg0, arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4097(line=153, offs=13) -- 4104(line=153, offs=20)
-*/
-ATSINSmove(tmp222, atspre_g1int_add_int(arg1, tmpref221)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4115(line=153, offs=31) -- 4122(line=153, offs=38)
-*/
-ATSINSmove(tmp224, atspre_g1int_add_int(arg1, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4107(line=153, offs=23) -- 4123(line=153, offs=39)
-*/
-ATSINSmove(tmp223, loop_87(arg0, tmp224)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4097(line=153, offs=13) -- 4123(line=153, offs=39)
-*/
-ATSINSmove(tmpret203, atspre_g0int_add_int(tmp222, tmp223)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4035(line=150, offs=11) -- 4137(line=154, offs=14)
-*/
-/*
-INSletpop()
-*/
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4169(line=156, offs=19) -- 4176(line=156, offs=26)
-*/
-ATSINSmove(tmp225, atspre_g1int_add_int(arg1, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4161(line=156, offs=11) -- 4177(line=156, offs=27)
-*/
-ATStailcal_beg()
-ATSINSmove_tlcal(apy0, arg0) ;
-ATSINSmove_tlcal(apy1, tmp225) ;
-ATSINSargmove_tlcal(arg0, apy0) ;
-ATSINSargmove_tlcal(arg1, apy1) ;
-ATSINSfgoto(__patsflab_loop_87) ;
-ATStailcal_end()
-
-} /* ATSendif */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret203) ;
-} /* end of [loop_87] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12757(line=663, offs=3) -- 12797(line=663, offs=43)
-*/
-/*
-local: 
-global: gte_g1int_int$40$2(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4706)
-tmparg = S2Evar(tk(4706))
-tmpsub = Some(tk(4706) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gte_g1int_int__40__2(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret71__2, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp72__2, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12741(line=662, offs=1) -- 12797(line=663, offs=43)
-*/
-ATSINSflab(__patsflab_gte_g1int_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12784(line=663, offs=30) -- 12795(line=663, offs=41)
-*/
-ATSINSmove(tmp72__2, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12766(line=663, offs=12) -- 12797(line=663, offs=43)
-*/
-ATSINSmove(tmpret71__2, atspre_g1int_gte_int(arg0, tmp72__2)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret71__2) ;
-} /* end of [ATSLIB_056_prelude__gte_g1int_int__40__2] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$11(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__11(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__11, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__11, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__11, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__11, atspre_g0int_eq_int(arg0, tmp19__11)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__11) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__11] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12916(line=672, offs=3) -- 12956(line=672, offs=43)
-*/
-/*
-local: 
-global: neq_g1int_int$44$2(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4712)
-tmparg = S2Evar(tk(4712))
-tmpsub = Some(tk(4712) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__neq_g1int_int__44__2(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret81__2, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp82__2, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12900(line=671, offs=1) -- 12956(line=672, offs=43)
-*/
-ATSINSflab(__patsflab_neq_g1int_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12943(line=672, offs=30) -- 12954(line=672, offs=41)
-*/
-ATSINSmove(tmp82__2, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12925(line=672, offs=12) -- 12956(line=672, offs=43)
-*/
-ATSINSmove(tmpret81__2, atspre_g1int_neq_int(arg0, tmp82__2)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret81__2) ;
-} /* end of [ATSLIB_056_prelude__neq_g1int_int__44__2] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$12(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__12(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__12, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__12, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__12, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__12, atspre_g0int_eq_int(arg0, tmp19__12)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__12) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__12] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4208(line=161, offs=4) -- 4263(line=162, offs=22)
-*/
-/*
-local: sum_divisors_86$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), sum_divisors_86$0(level=0), is_perfect_93$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_bool)
-is_perfect_93(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret226, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp229, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4208(line=161, offs=4) -- 4263(line=162, offs=22)
-*/
-ATSINSflab(__patsflab_is_perfect_93):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4244(line=162, offs=3) -- 4258(line=162, offs=17)
-*/
-ATSINSmove(tmp229, sum_divisors_86(arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4244(line=162, offs=3) -- 4263(line=162, offs=22)
-*/
-ATSINSmove(tmpret226, ATSLIB_056_prelude__eq_g0int_int__12__13(tmp229, arg0)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret226) ;
-} /* end of [is_perfect_93] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$13(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__13(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__13, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__13, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__13, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__13, atspre_g0int_eq_int(arg0, tmp19__13)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__13) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__13] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4269(line=164, offs=5) -- 4589(line=178, offs=8)
-*/
-/*
-local: rip_95$0(level=0)
-global: rip_95$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-rip_95(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret230, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp231, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp236, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp237, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp240, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref241, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp242, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp245, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4269(line=164, offs=5) -- 4589(line=178, offs=8)
-*/
-ATSINSflab(__patsflab_rip_95):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4391(line=165, offs=6) -- 4396(line=165, offs=11)
-*/
-ATSINSmove(tmp236, atspre_g0int_mod_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4391(line=165, offs=6) -- 4401(line=165, offs=16)
-*/
-ATSINSmove(tmp231, ATSLIB_056_prelude__neq_g0int_int__96__1(tmp236, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4388(line=165, offs=3) -- 4589(line=178, offs=8)
-*/
-ATSif(
-tmp231
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4411(line=166, offs=5) -- 4412(line=166, offs=6)
-*/
-ATSINSmove(tmpret230, arg0) ;
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4427(line=168, offs=8) -- 4432(line=168, offs=13)
-*/
-ATSINSmove(tmp240, atspre_g1int_div_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4427(line=168, offs=8) -- 4436(line=168, offs=17)
-*/
-ATSINSmove(tmp237, ATSLIB_056_prelude__gt_g1int_int__6__5(tmp240, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4424(line=168, offs=5) -- 4589(line=178, offs=8)
-*/
-ATSif(
-tmp237
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4448(line=169, offs=7) -- 4572(line=176, offs=10)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4464(line=170, offs=13) -- 4466(line=170, offs=15)
-*/
-/*
-ATSINStmpdec(tmpref241) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4469(line=170, offs=18) -- 4474(line=170, offs=23)
-*/
-ATSINSmove(tmpref241, atspre_g1int_div_int(arg0, arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4495(line=172, offs=12) -- 4501(line=172, offs=18)
-*/
-ATSINSmove(tmp242, ATSLIB_056_prelude__lt_g1int_int__22__2(tmpref241, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4492(line=172, offs=9) -- 4562(line=175, offs=12)
-*/
-ATSif(
-tmp242
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4526(line=173, offs=20) -- 4536(line=173, offs=30)
-*/
-ATSINSmove(tmp245, rip_95(tmpref241, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4517(line=173, offs=11) -- 4537(line=173, offs=31)
-*/
-ATSINSmove(tmpret230, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), tmp245)) ;
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4561(line=175, offs=11) -- 4562(line=175, offs=12)
-*/
-ATSINSmove(tmpret230, ATSPMVi0nt(1)) ;
-} /* ATSendif */
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4448(line=169, offs=7) -- 4572(line=176, offs=10)
-*/
-/*
-INSletpop()
-*/
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4588(line=178, offs=7) -- 4589(line=178, offs=8)
-*/
-ATSINSmove(tmpret230, ATSPMVi0nt(1)) ;
-} /* ATSendif */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret230) ;
-} /* end of [rip_95] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12337(line=639, offs=3) -- 12377(line=639, offs=43)
-*/
-/*
-local: 
-global: neq_g0int_int$96$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = tk(4695)
-tmparg = S2Evar(tk(4695))
-tmpsub = None()
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__neq_g0int_int__96(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret232, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp233, atstkind_t0ype(atstyvar_type(tk))) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12321(line=638, offs=1) -- 12377(line=639, offs=43)
-*/
-ATSINSflab(__patsflab_neq_g0int_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12364(line=639, offs=30) -- 12375(line=639, offs=41)
-*/
-ATSINSmove(tmp233, PMVtmpltcst(g0int2int<S2Eextkind(atstype_int), S2Evar(tk(4695))>)(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12346(line=639, offs=12) -- 12377(line=639, offs=43)
-*/
-ATSINSmove(tmpret232, PMVtmpltcst(g0int_neq<S2Evar(tk(4695))>)(arg0, tmp233)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret232) ;
-} /* end of [ATSLIB_056_prelude__neq_g0int_int__96] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12337(line=639, offs=3) -- 12377(line=639, offs=43)
-*/
-/*
-local: 
-global: neq_g0int_int$96$1(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4695)
-tmparg = S2Evar(tk(4695))
-tmpsub = Some(tk(4695) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__neq_g0int_int__96__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret232__1, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp233__1, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12321(line=638, offs=1) -- 12377(line=639, offs=43)
-*/
-ATSINSflab(__patsflab_neq_g0int_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12364(line=639, offs=30) -- 12375(line=639, offs=41)
-*/
-ATSINSmove(tmp233__1, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12346(line=639, offs=12) -- 12377(line=639, offs=43)
-*/
-ATSINSmove(tmpret232__1, atspre_g0int_neq_int(arg0, tmp233__1)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret232__1) ;
-} /* end of [ATSLIB_056_prelude__neq_g0int_int__96__1] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
-*/
-/*
-local: 
-global: gt_g1int_int$6$5(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4703)
-tmparg = S2Evar(tk(4703))
-tmpsub = Some(tk(4703) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6__5(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret11__5, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp12__5, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
-*/
-ATSINSmove(tmp12__5, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
-*/
-ATSINSmove(tmpret11__5, atspre_g1int_gt_int(arg0, tmp12__5)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret11__5) ;
-} /* end of [ATSLIB_056_prelude__gt_g1int_int__6__5] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
-*/
-/*
-local: 
-global: lt_g1int_int$22$2(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4697)
-tmparg = S2Evar(tk(4697))
-tmpsub = Some(tk(4697) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__lt_g1int_int__22__2(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret33__2, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp34__2, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
-*/
-ATSINSmove(tmp34__2, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
-*/
-ATSINSmove(tmpret33__2, atspre_g1int_lt_int(arg0, tmp34__2)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret33__2) ;
-} /* end of [ATSLIB_056_prelude__lt_g1int_int__22__2] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4595(line=180, offs=5) -- 5199(line=198, offs=6)
-*/
-/*
-local: is_prime_20$0(level=0), rip_95$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), rip_95$0(level=0), prime_factors_101$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-prime_factors_101(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret246, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4595(line=180, offs=5) -- 5199(line=198, offs=6)
-*/
-ATSINSflab(__patsflab_prime_factors_101):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4645(line=181, offs=3) -- 5199(line=198, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5183(line=197, offs=5) -- 5193(line=197, offs=15)
-*/
-ATSINSmove(tmpret246, loop_102(arg0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4645(line=181, offs=3) -- 5199(line=198, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret246) ;
-} /* end of [prime_factors_101] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4657(line=182, offs=9) -- 5173(line=195, offs=27)
-*/
-/*
-local: is_prime_20$0(level=0), rip_95$0(level=0), loop_102$0(level=1)
-global: is_prime_20$0(level=0), rip_95$0(level=0), loop_102$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-loop_102(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(tmpret247, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp248, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp251, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp256, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp257, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp260, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp261, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp264, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp271, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4657(line=182, offs=9) -- 5173(line=195, offs=27)
-*/
-ATSINSflab(__patsflab_loop_102):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4756(line=183, offs=10) -- 4764(line=183, offs=18)
-*/
-ATSINSmove(tmp248, ATSLIB_056_prelude__gte_g1int_int__40__3(arg1, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4753(line=183, offs=7) -- 5173(line=195, offs=27)
-*/
-ATSif(
-tmp248
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4781(line=184, offs=12) -- 4791(line=184, offs=22)
-*/
-ATSINSmove(tmp251, is_prime_20(arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4778(line=184, offs=9) -- 4904(line=187, offs=33)
-*/
-ATSif(
-tmp251
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4808(line=185, offs=11) -- 4858(line=185, offs=61)
-*/
-ATSINSmove_ldelay(tmpret247, atstype_boxed, ATSPMVcfunlab(1, __patsfun_104, (arg0))) ;
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4882(line=187, offs=11) -- 4904(line=187, offs=33)
-*/
-ATSINSmove_ldelay(tmpret247, atstype_boxed, ATSPMVcfunlab(1, __patsfun_106, ())) ;
-} /* ATSendif */
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4927(line=189, offs=12) -- 4954(line=189, offs=39)
-*/
-ATSINSmove(tmp260, atspre_g0int_mod_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4927(line=189, offs=12) -- 4954(line=189, offs=39)
-*/
-ATSINSmove(tmp257, ATSLIB_056_prelude__eq_g0int_int__12__14(tmp260, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4927(line=189, offs=12) -- 4954(line=189, offs=39)
-*/
-ATSif(
-tmp257
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4927(line=189, offs=12) -- 4954(line=189, offs=39)
-*/
-ATSINSmove(tmp256, is_prime_20(arg1)) ;
-
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4927(line=189, offs=12) -- 4954(line=189, offs=39)
-*/
-ATSINSmove(tmp256, ATSPMVbool_false()) ;
-} /* ATSendif */
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4924(line=189, offs=9) -- 5173(line=195, offs=27)
-*/
-ATSif(
-tmp256
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4974(line=190, offs=14) -- 4981(line=190, offs=21)
-*/
-ATSINSmove(tmp264, atspre_g1int_div_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4974(line=190, offs=14) -- 4985(line=190, offs=25)
-*/
-ATSINSmove(tmp261, ATSLIB_056_prelude__gt_g1int_int__6__6(tmp264, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4971(line=190, offs=11) -- 5133(line=193, offs=65)
-*/
-ATSif(
-tmp261
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5003(line=191, offs=13) -- 5053(line=191, offs=63)
-*/
-ATSINSmove_ldelay(tmpret247, atstype_boxed, ATSPMVcfunlab(1, __patsfun_109, (arg0, arg1))) ;
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5081(line=193, offs=13) -- 5133(line=193, offs=65)
-*/
-ATSINSmove_ldelay(tmpret247, atstype_boxed, ATSPMVcfunlab(1, __patsfun_110, (arg1))) ;
-} /* ATSendif */
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5165(line=195, offs=19) -- 5172(line=195, offs=26)
-*/
-ATSINSmove(tmp271, atspre_g1int_add_int(arg1, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5157(line=195, offs=11) -- 5173(line=195, offs=27)
-*/
-ATStailcal_beg()
-ATSINSmove_tlcal(apy0, arg0) ;
-ATSINSmove_tlcal(apy1, tmp271) ;
-ATSINSargmove_tlcal(arg0, apy0) ;
-ATSINSargmove_tlcal(arg1, apy1) ;
-ATSINSfgoto(__patsflab_loop_102) ;
-ATStailcal_end()
-
-} /* ATSendif */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret247) ;
-} /* end of [loop_102] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12757(line=663, offs=3) -- 12797(line=663, offs=43)
-*/
-/*
-local: 
-global: gte_g1int_int$40$3(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4706)
-tmparg = S2Evar(tk(4706))
-tmpsub = Some(tk(4706) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gte_g1int_int__40__3(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret71__3, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp72__3, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12741(line=662, offs=1) -- 12797(line=663, offs=43)
-*/
-ATSINSflab(__patsflab_gte_g1int_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12784(line=663, offs=30) -- 12795(line=663, offs=41)
-*/
-ATSINSmove(tmp72__3, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12766(line=663, offs=12) -- 12797(line=663, offs=43)
-*/
-ATSINSmove(tmpret71__3, atspre_g1int_gte_int(arg0, tmp72__3)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret71__3) ;
-} /* end of [ATSLIB_056_prelude__gte_g1int_int__40__3] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4808(line=185, offs=11) -- 4858(line=185, offs=61)
-*/
-/*
-local: 
-global: __patsfun_104$0(level=2)
-local: n$5175(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-global: n$5175(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_104(atstkind_t0ype(atstype_int) env0, atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret252, atstype_boxed) ;
-ATStmpdec(tmp253, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4808(line=185, offs=11) -- 4858(line=185, offs=61)
-*/
-ATSINSflab(__patsflab___patsfun_104):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4808(line=185, offs=11) -- 4858(line=185, offs=61)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4834(line=185, offs=37) -- 4856(line=185, offs=59)
-*/
-ATSINSmove_ldelay(tmp253, atstype_boxed, ATSPMVcfunlab(1, __patsfun_105, ())) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4816(line=185, offs=19) -- 4857(line=185, offs=60)
-*/
-
-/*
-#LINCONSTATUS==0
-*/
-ATSINSmove_con1_beg()
-ATSINSmove_con1_new(tmpret252, postiats_tysum_1) ;
-#if(0)
-ATSINSstore_con1_tag(tmpret252, 1) ;
-#endif
-ATSINSstore_con1_ofs(tmpret252, postiats_tysum_1, atslab__0, env0) ;
-ATSINSstore_con1_ofs(tmpret252, postiats_tysum_1, atslab__1, tmp253) ;
-ATSINSmove_con1_end()
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret252) ;
-} /* end of [__patsfun_104] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4834(line=185, offs=37) -- 4856(line=185, offs=59)
-*/
-/*
-local: 
-global: __patsfun_105$0(level=3)
-local: 
-global: 
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_105(atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret254, atstype_boxed) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4834(line=185, offs=37) -- 4856(line=185, offs=59)
-*/
-ATSINSflab(__patsflab___patsfun_105):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4834(line=185, offs=37) -- 4856(line=185, offs=59)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4842(line=185, offs=45) -- 4855(line=185, offs=58)
-*/
-
-ATSINSmove_nil(tmpret254) ;
-
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret254) ;
-} /* end of [__patsfun_105] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4882(line=187, offs=11) -- 4904(line=187, offs=33)
-*/
-/*
-local: 
-global: __patsfun_106$0(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_106(atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret255, atstype_boxed) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4882(line=187, offs=11) -- 4904(line=187, offs=33)
-*/
-ATSINSflab(__patsflab___patsfun_106):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4882(line=187, offs=11) -- 4904(line=187, offs=33)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 4890(line=187, offs=19) -- 4903(line=187, offs=32)
-*/
-
-ATSINSmove_nil(tmpret255) ;
-
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret255) ;
-} /* end of [__patsfun_106] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$14(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__14(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__14, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__14, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__14, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__14, atspre_g0int_eq_int(arg0, tmp19__14)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__14) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__14] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
-*/
-/*
-local: 
-global: gt_g1int_int$6$6(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4703)
-tmparg = S2Evar(tk(4703))
-tmpsub = Some(tk(4703) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6__6(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret11__6, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp12__6, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
-*/
-ATSINSmove(tmp12__6, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
-*/
-ATSINSmove(tmpret11__6, atspre_g1int_gt_int(arg0, tmp12__6)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret11__6) ;
-} /* end of [ATSLIB_056_prelude__gt_g1int_int__6__6] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5003(line=191, offs=13) -- 5053(line=191, offs=63)
-*/
-/*
-local: rip_95$0(level=0), loop_102$0(level=1)
-global: rip_95$0(level=0), loop_102$0(level=1), __patsfun_109$0(level=2)
-local: n$5175(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), acc$5176(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-global: n$5175(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), acc$5176(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_109(atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret265, atstype_boxed) ;
-ATStmpdec(tmp266, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp267, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5003(line=191, offs=13) -- 5053(line=191, offs=63)
-*/
-ATSINSflab(__patsflab___patsfun_109):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5003(line=191, offs=13) -- 5053(line=191, offs=63)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5036(line=191, offs=46) -- 5047(line=191, offs=57)
-*/
-ATSINSmove(tmp267, rip_95(env0, env1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5031(line=191, offs=41) -- 5051(line=191, offs=61)
-*/
-ATSINSmove(tmp266, loop_102(tmp267, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5011(line=191, offs=21) -- 5052(line=191, offs=62)
-*/
-
-/*
-#LINCONSTATUS==0
-*/
-ATSINSmove_con1_beg()
-ATSINSmove_con1_new(tmpret265, postiats_tysum_1) ;
-#if(0)
-ATSINSstore_con1_tag(tmpret265, 1) ;
-#endif
-ATSINSstore_con1_ofs(tmpret265, postiats_tysum_1, atslab__0, env1) ;
-ATSINSstore_con1_ofs(tmpret265, postiats_tysum_1, atslab__1, tmp266) ;
-ATSINSmove_con1_end()
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret265) ;
-} /* end of [__patsfun_109] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5081(line=193, offs=13) -- 5133(line=193, offs=65)
-*/
-/*
-local: 
-global: __patsfun_110$0(level=2)
-local: acc$5176(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-global: acc$5176(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_110(atstkind_t0ype(atstype_int) env0, atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret268, atstype_boxed) ;
-ATStmpdec(tmp269, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5081(line=193, offs=13) -- 5133(line=193, offs=65)
-*/
-ATSINSflab(__patsflab___patsfun_110):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5081(line=193, offs=13) -- 5133(line=193, offs=65)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5109(line=193, offs=41) -- 5131(line=193, offs=63)
-*/
-ATSINSmove_ldelay(tmp269, atstype_boxed, ATSPMVcfunlab(1, __patsfun_111, ())) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5089(line=193, offs=21) -- 5132(line=193, offs=64)
-*/
-
-/*
-#LINCONSTATUS==0
-*/
-ATSINSmove_con1_beg()
-ATSINSmove_con1_new(tmpret268, postiats_tysum_1) ;
-#if(0)
-ATSINSstore_con1_tag(tmpret268, 1) ;
-#endif
-ATSINSstore_con1_ofs(tmpret268, postiats_tysum_1, atslab__0, env0) ;
-ATSINSstore_con1_ofs(tmpret268, postiats_tysum_1, atslab__1, tmp269) ;
-ATSINSmove_con1_end()
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret268) ;
-} /* end of [__patsfun_110] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5109(line=193, offs=41) -- 5131(line=193, offs=63)
-*/
-/*
-local: 
-global: __patsfun_111$0(level=3)
-local: 
-global: 
-*/
-ATSstatic()
-atstype_boxed
-__patsfun_111(atstype_bool arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret270, atstype_boxed) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5109(line=193, offs=41) -- 5131(line=193, offs=63)
-*/
-ATSINSflab(__patsflab___patsfun_111):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5109(line=193, offs=41) -- 5131(line=193, offs=63)
-*/
-ATSif(
-arg0
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5117(line=193, offs=49) -- 5130(line=193, offs=62)
-*/
-
-ATSINSmove_nil(tmpret270) ;
-
-} ATSelse() {
-/* (*nothing*) */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret270) ;
-} /* end of [__patsfun_111] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5231(line=201, offs=4) -- 5671(line=219, offs=6)
-*/
-/*
-local: is_prime_20$0(level=0), rip_95$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), rip_95$0(level=0), little_omega_112$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-little_omega_112(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret272, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5231(line=201, offs=4) -- 5671(line=219, offs=6)
-*/
-ATSINSflab(__patsflab_little_omega_112):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5269(line=202, offs=3) -- 5671(line=219, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5655(line=218, offs=5) -- 5665(line=218, offs=15)
-*/
-ATSINSmove(tmpret272, loop_113(arg0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5269(line=202, offs=3) -- 5671(line=219, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret272) ;
-} /* end of [little_omega_112] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5281(line=203, offs=9) -- 5645(line=216, offs=27)
-*/
-/*
-local: is_prime_20$0(level=0), rip_95$0(level=0), loop_113$0(level=1)
-global: is_prime_20$0(level=0), rip_95$0(level=0), loop_113$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-loop_113(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(tmpret273, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp274, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp277, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp278, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp279, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp282, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp283, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp286, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp287, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp288, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp289, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5281(line=203, offs=9) -- 5645(line=216, offs=27)
-*/
-ATSINSflab(__patsflab_loop_113):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5375(line=204, offs=10) -- 5383(line=204, offs=18)
-*/
-ATSINSmove(tmp274, ATSLIB_056_prelude__gte_g1int_int__40__4(arg1, arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5372(line=204, offs=7) -- 5645(line=216, offs=27)
-*/
-ATSif(
-tmp274
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5400(line=205, offs=12) -- 5410(line=205, offs=22)
-*/
-ATSINSmove(tmp277, is_prime_20(arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5397(line=205, offs=9) -- 5453(line=208, offs=12)
-*/
-ATSif(
-tmp277
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5427(line=206, offs=11) -- 5428(line=206, offs=12)
-*/
-ATSINSmove(tmpret273, ATSPMVi0nt(1)) ;
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5452(line=208, offs=11) -- 5453(line=208, offs=12)
-*/
-ATSINSmove(tmpret273, ATSPMVi0nt(0)) ;
-} /* ATSendif */
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5476(line=210, offs=12) -- 5503(line=210, offs=39)
-*/
-ATSINSmove(tmp282, atspre_g0int_mod_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5476(line=210, offs=12) -- 5503(line=210, offs=39)
-*/
-ATSINSmove(tmp279, ATSLIB_056_prelude__eq_g0int_int__12__15(tmp282, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5476(line=210, offs=12) -- 5503(line=210, offs=39)
-*/
-ATSif(
-tmp279
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5476(line=210, offs=12) -- 5503(line=210, offs=39)
-*/
-ATSINSmove(tmp278, is_prime_20(arg1)) ;
-
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5476(line=210, offs=12) -- 5503(line=210, offs=39)
-*/
-ATSINSmove(tmp278, ATSPMVbool_false()) ;
-} /* ATSendif */
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5473(line=210, offs=9) -- 5645(line=216, offs=27)
-*/
-ATSif(
-tmp278
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5523(line=211, offs=14) -- 5530(line=211, offs=21)
-*/
-ATSINSmove(tmp286, atspre_g1int_div_int(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5523(line=211, offs=14) -- 5534(line=211, offs=25)
-*/
-ATSINSmove(tmp283, ATSLIB_056_prelude__gt_g1int_int__6__7(tmp286, ATSPMVi0nt(0))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5520(line=211, offs=11) -- 5605(line=214, offs=14)
-*/
-ATSif(
-tmp283
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5561(line=212, offs=22) -- 5572(line=212, offs=33)
-*/
-ATSINSmove(tmp288, rip_95(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5556(line=212, offs=17) -- 5576(line=212, offs=37)
-*/
-ATSINSmove(tmp287, loop_113(tmp288, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5552(line=212, offs=13) -- 5576(line=212, offs=37)
-*/
-ATSINSmove(tmpret273, atspre_g0int_add_int(ATSPMVi0nt(1), tmp287)) ;
-
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5604(line=214, offs=13) -- 5605(line=214, offs=14)
-*/
-ATSINSmove(tmpret273, ATSPMVi0nt(1)) ;
-} /* ATSendif */
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5637(line=216, offs=19) -- 5644(line=216, offs=26)
-*/
-ATSINSmove(tmp289, atspre_g1int_add_int(arg1, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5629(line=216, offs=11) -- 5645(line=216, offs=27)
-*/
-ATStailcal_beg()
-ATSINSmove_tlcal(apy0, arg0) ;
-ATSINSmove_tlcal(apy1, tmp289) ;
-ATSINSargmove_tlcal(arg0, apy0) ;
-ATSINSargmove_tlcal(arg1, apy1) ;
-ATSINSfgoto(__patsflab_loop_113) ;
-ATStailcal_end()
-
-} /* ATSendif */
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret273) ;
-} /* end of [loop_113] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12757(line=663, offs=3) -- 12797(line=663, offs=43)
-*/
-/*
-local: 
-global: gte_g1int_int$40$4(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4706)
-tmparg = S2Evar(tk(4706))
-tmpsub = Some(tk(4706) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gte_g1int_int__40__4(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret71__4, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp72__4, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12741(line=662, offs=1) -- 12797(line=663, offs=43)
-*/
-ATSINSflab(__patsflab_gte_g1int_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12784(line=663, offs=30) -- 12795(line=663, offs=41)
-*/
-ATSINSmove(tmp72__4, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12766(line=663, offs=12) -- 12797(line=663, offs=43)
-*/
-ATSINSmove(tmpret71__4, atspre_g1int_gte_int(arg0, tmp72__4)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret71__4) ;
-} /* end of [ATSLIB_056_prelude__gte_g1int_int__40__4] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
-*/
-/*
-local: 
-global: eq_g0int_int$12$15(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4694)
-tmparg = S2Evar(tk(4694))
-tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__eq_g0int_int__12__15(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret18__15, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp19__15, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
-*/
-ATSINSmove(tmp19__15, atspre_g0int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
-*/
-ATSINSmove(tmpret18__15, atspre_g0int_eq_int(arg0, tmp19__15)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret18__15) ;
-} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__15] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
-*/
-/*
-local: 
-global: gt_g1int_int$6$7(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4703)
-tmparg = S2Evar(tk(4703))
-tmpsub = Some(tk(4703) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__gt_g1int_int__6__7(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret11__7, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp12__7, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
-*/
-ATSINSmove(tmp12__7, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
-*/
-ATSINSmove(tmpret11__7, atspre_g1int_gt_int(arg0, tmp12__7)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret11__7) ;
-} /* end of [ATSLIB_056_prelude__gt_g1int_int__6__7] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5705(line=222, offs=4) -- 6194(line=234, offs=8)
-*/
-/*
-local: prime_factors_101$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), rip_95$0(level=0), prime_factors_101$0(level=0), totient_117$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_t0ype(atstype_int)
-totient_117(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret290, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref295, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmpref296, postiats_tyrec_0) ;
-ATStmpdec(tmpref297, postiats_tyrec_0) ;
-ATStmpdec(tmp315, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5705(line=222, offs=4) -- 6194(line=234, offs=8)
-*/
-ATSINSflab(__patsflab_totient_117):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5738(line=223, offs=3) -- 6194(line=234, offs=8)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5755(line=224, offs=7) -- 5756(line=224, offs=8)
-*/
-ATSINSlab(__atstmplab29):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5713(line=222, offs=12) -- 5714(line=222, offs=13)
-*/
-ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab31) ; } ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5756(line=224, offs=8) -- 5756(line=224, offs=8)
-*/
-ATSINSlab(__atstmplab30):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5760(line=224, offs=12) -- 5761(line=224, offs=13)
-*/
-ATSINSmove(tmpret290, ATSPMVi0nt(1)) ;
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5769(line=225, offs=8) -- 5769(line=225, offs=8)
-*/
-ATSINSlab(__atstmplab31):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5774(line=225, offs=13) -- 6194(line=234, offs=8)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5928(line=229, offs=11) -- 5929(line=229, offs=12)
-*/
-/*
-ATSINStmpdec(tmpref295) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5948(line=229, offs=31) -- 5963(line=229, offs=46)
-*/
-ATSINSmove(tmpref295, prime_factors_101(arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5975(line=230, offs=11) -- 5985(line=230, offs=21)
-*/
-/*
-ATSINStmpdec(tmpref296) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5988(line=230, offs=24) -- 6014(line=230, offs=50)
-*/
-ATSINSmove_fltrec_beg()
-ATSINSstore_fltrec_ofs(tmpref296, postiats_tyrec_0, atslab__first, ATSPMVi0nt(1)) ;
-ATSINSstore_fltrec_ofs(tmpref296, postiats_tyrec_0, atslab__second, ATSPMVi0nt(1)) ;
-ATSINSmove_fltrec_end()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6032(line=231, offs=11) -- 6033(line=231, offs=12)
-*/
-/*
-ATSINStmpdec(tmpref297) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6036(line=231, offs=15) -- 6123(line=231, offs=102)
-*/
-ATSINSmove(tmpref297, ATSLIB_056_prelude__stream_vt_foldleft_cloptr__120__1(tmpref295, tmpref296, ATSPMVcfunlab(1, __patsfun_124, ()))) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6154(line=233, offs=17) -- 6175(line=233, offs=38)
-*/
-ATSINSmove(tmp315, atspre_g0int_mul_int(arg0, ATSSELfltrec(tmpref297, postiats_tyrec_0, atslab__first))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6144(line=233, offs=7) -- 6186(line=233, offs=49)
-*/
-ATSINSmove(tmpret290, atspre_g0int_div_int(tmp315, ATSSELfltrec(tmpref297, postiats_tyrec_0, atslab__second))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5774(line=225, offs=13) -- 6194(line=234, offs=8)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-ATSfunbody_end()
-ATSreturn(tmpret290) ;
-} /* end of [totient_117] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5787(line=226, offs=10) -- 5910(line=227, offs=80)
-*/
-/*
-local: 
-global: adjust_contents_118$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-postiats_tyrec_0
-adjust_contents_118(postiats_tyrec_0 arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret291, postiats_tyrec_0) ;
-ATStmpdec(tmp292, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp293, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp294, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5787(line=226, offs=10) -- 5910(line=227, offs=80)
-*/
-ATSINSflab(__patsflab_adjust_contents_118):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5869(line=227, offs=39) -- 5874(line=227, offs=44)
-*/
-ATSINSmove(tmp293, atspre_g0int_sub_int(arg1, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5850(line=227, offs=20) -- 5875(line=227, offs=45)
-*/
-ATSINSmove(tmp292, atspre_g0int_mul_int(ATSSELfltrec(arg0, postiats_tyrec_0, atslab__first), tmp293)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5886(line=227, offs=56) -- 5908(line=227, offs=78)
-*/
-ATSINSmove(tmp294, atspre_g0int_mul_int(ATSSELfltrec(arg0, postiats_tyrec_0, atslab__second), arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 5839(line=227, offs=9) -- 5910(line=227, offs=80)
-*/
-ATSINSmove_fltrec_beg()
-ATSINSstore_fltrec_ofs(tmpret291, postiats_tyrec_0, atslab__first, tmp292) ;
-ATSINSstore_fltrec_ofs(tmpret291, postiats_tyrec_0, atslab__second, tmp294) ;
-ATSINSmove_fltrec_end()
-ATSfunbody_end()
-ATSreturn(tmpret291) ;
-} /* end of [adjust_contents_118] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 26263(line=1640, offs=3) -- 26743(line=1671, offs=2)
-*/
-/*
-local: 
-global: stream_vt_foldleft_cloptr$120$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = res(8865), a(8866)
-tmparg = S2Evar(res(8865)); S2Evar(a(8866))
-tmpsub = None()
-*/
-atstyvar_type(res)
-ATSLIB_056_prelude__stream_vt_foldleft_cloptr__120(atstkind_type(atstype_ptrk) arg0, atstyvar_type(res) arg1, atstype_cloptr arg2)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret298, atstyvar_type(res)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26235(line=1639, offs=1) -- 26743(line=1671, offs=2)
-*/
-ATSINSflab(__patsflab_stream_vt_foldleft_cloptr):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26284(line=1641, offs=3) -- 26743(line=1671, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26284(line=1641, offs=3) -- 26304(line=1641, offs=23)
-*/
-ATSINSmove(tmpret298, ATSfunclo_fun(PMVd2vfunlab(d2v=loop$4501(1), flab=loop_121$0(level=1)), (atstkind_type(atstype_ptrk), atstyvar_type(res), atstype_cloptr), atstyvar_type(res))(arg0, arg1, arg2)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26284(line=1641, offs=3) -- 26743(line=1671, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret298) ;
-} /* end of [ATSLIB_056_prelude__stream_vt_foldleft_cloptr__120] */
-#endif // end of [TEMPLATE]
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 26320(line=1645, offs=1) -- 26721(line=1669, offs=4)
-*/
-/*
-local: loop_121$0(level=1)
-global: loop_121$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-atstyvar_type(res)
-loop_121__121(atstkind_type(atstype_ptrk) arg0, atstyvar_type(res) arg1, atstype_cloptr arg2)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(apy0, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(apy1, atstyvar_type(res)) ;
-ATStmpdec(apy2, atstype_cloptr) ;
-ATStmpdec(tmpret299, atstyvar_type(res)) ;
-ATStmpdec(tmpref300, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp301, atstype_boxed) ;
-// ATStmpdec_void(tmp304) ;
-ATStmpdec(tmp305, atstyvar_type(res)) ;
-ATStmpdec(tmp306, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26320(line=1645, offs=1) -- 26721(line=1669, offs=4)
-*/
-ATSINSflab(__patsflab_loop_121):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26398(line=1651, offs=6) -- 26721(line=1669, offs=4)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26408(line=1652, offs=7) -- 26414(line=1652, offs=13)
-*/
-/*
-ATSINStmpdec(tmpref300) ;
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26417(line=1652, offs=16) -- 26420(line=1652, offs=19)
-*/
-ATSINSmove_llazyeval(tmpref300, atstype_boxed, arg0) ;
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26433(line=1656, offs=1) -- 26439(line=1656, offs=7)
-*/
-ATSINSmove(tmp301, tmpref300) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26427(line=1655, offs=1) -- 26687(line=1667, offs=6)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26454(line=1658, offs=3) -- 26475(line=1659, offs=7)
-*/
-ATSINSlab(__atstmplab32):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26433(line=1656, offs=1) -- 26439(line=1656, offs=7)
-*/
-ATSifthen(ATSCKptriscons(tmp301)) { ATSINSgoto(__atstmplab35) ; } ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26475(line=1659, offs=7) -- 26475(line=1659, offs=7)
-*/
-ATSINSlab(__atstmplab33):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26487(line=1661, offs=5) -- 26519(line=1661, offs=37)
-*/
-ATSINSmove_void(tmp304, atspre_cloptr_free(ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), arg2))) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26521(line=1661, offs=39) -- 26524(line=1661, offs=42)
-*/
-ATSINSmove(tmpret299, arg1) ;
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26560(line=1663, offs=3) -- 26589(line=1664, offs=14)
-*/
-ATSINSlab(__atstmplab34):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26433(line=1656, offs=1) -- 26439(line=1656, offs=7)
-*/
-#if(0)
-ATSifthen(ATSCKptrisnull(tmp301)) { ATSINSdeadcode_fail() ; } ;
-#endif
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26589(line=1664, offs=14) -- 26589(line=1664, offs=14)
-*/
-ATSINSlab(__atstmplab35):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26593(line=1664, offs=18) -- 26687(line=1667, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26611(line=1665, offs=15) -- 26624(line=1665, offs=28)
-*/
-ATSINSmove(tmp305, ATSfunclo_clo(ATSPMVrefarg0(arg2), (atstype_cloptr, atstyvar_type(res), atsrefarg1_type(atstyvar_type(a))), atstyvar_type(res))(ATSPMVrefarg0(arg2), arg1, ATSPMVrefarg1(ATSPMVptrof(ATSSELcon(tmp301, postiats_tysum_4, atslab__0))))) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26639(line=1666, offs=15) -- 26642(line=1666, offs=18)
-*/
-ATSINSmove(tmp306, ATSSELcon(tmp301, postiats_tysum_4, atslab__1)) ;
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26646(line=1666, offs=22) -- 26658(line=1666, offs=34)
-*/
-ATSINSfreecon(tmpref300) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26661(line=1666, offs=37) -- 26681(line=1666, offs=57)
-*/
-ATStailcal_beg()
-ATSINSmove_tlcal(apy0, tmp306) ;
-ATSINSmove_tlcal(apy1, tmp305) ;
-ATSINSmove_tlcal(apy2, arg2) ;
-ATSINSargmove_tlcal(arg0, apy0) ;
-ATSINSargmove_tlcal(arg1, apy1) ;
-ATSINSargmove_tlcal(arg2, apy2) ;
-ATSINSfgoto(__patsflab_loop_121) ;
-ATStailcal_end()
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26593(line=1664, offs=18) -- 26687(line=1667, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26398(line=1651, offs=6) -- 26721(line=1669, offs=4)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret299) ;
-} /* end of [loop_121__121] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 26263(line=1640, offs=3) -- 26743(line=1671, offs=2)
-*/
-/*
-local: 
-global: stream_vt_foldleft_cloptr$120$1(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = res(8865), a(8866)
-tmparg = S2Evar(res(8865)); S2Evar(a(8866))
-tmpsub = Some(res(8865) -> S2EVar(5872); a(8866) -> S2Eapp(S2Ecst(g0int_t0ype); S2Eextkind(atstype_int)))
-*/
-postiats_tyrec_0
-ATSLIB_056_prelude__stream_vt_foldleft_cloptr__120__1(atstkind_type(atstype_ptrk) arg0, postiats_tyrec_0 arg1, atstype_cloptr arg2)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret298__1, postiats_tyrec_0) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26235(line=1639, offs=1) -- 26743(line=1671, offs=2)
-*/
-ATSINSflab(__patsflab_stream_vt_foldleft_cloptr):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26284(line=1641, offs=3) -- 26743(line=1671, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26284(line=1641, offs=3) -- 26304(line=1641, offs=23)
-*/
-ATSINSmove(tmpret298__1, loop_121__121__1(arg0, arg1, arg2)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26284(line=1641, offs=3) -- 26743(line=1671, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret298__1) ;
-} /* end of [ATSLIB_056_prelude__stream_vt_foldleft_cloptr__120__1] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 26320(line=1645, offs=1) -- 26721(line=1669, offs=4)
-*/
-/*
-local: loop_121$1(level=2)
-global: loop_121$1(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-postiats_tyrec_0
-loop_121__121__1(atstkind_type(atstype_ptrk) arg0, postiats_tyrec_0 arg1, atstype_cloptr arg2)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(apy0, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(apy1, postiats_tyrec_0) ;
-ATStmpdec(apy2, atstype_cloptr) ;
-ATStmpdec(tmpret299__1, postiats_tyrec_0) ;
-ATStmpdec(tmpref300__1, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp301__1, atstype_boxed) ;
-// ATStmpdec_void(tmp304__1) ;
-ATStmpdec(tmp305__1, postiats_tyrec_0) ;
-ATStmpdec(tmp306__1, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26320(line=1645, offs=1) -- 26721(line=1669, offs=4)
-*/
-ATSINSflab(__patsflab_loop_121):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26398(line=1651, offs=6) -- 26721(line=1669, offs=4)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26408(line=1652, offs=7) -- 26414(line=1652, offs=13)
-*/
-/*
-ATSINStmpdec(tmpref300) ;
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26417(line=1652, offs=16) -- 26420(line=1652, offs=19)
-*/
-ATSINSmove_llazyeval(tmpref300__1, atstype_boxed, arg0) ;
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26433(line=1656, offs=1) -- 26439(line=1656, offs=7)
-*/
-ATSINSmove(tmp301__1, tmpref300__1) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26427(line=1655, offs=1) -- 26687(line=1667, offs=6)
-*/
-ATScaseof_beg()
-/*
-** ibranchlst-beg
-*/
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26454(line=1658, offs=3) -- 26475(line=1659, offs=7)
-*/
-ATSINSlab(__atstmplab32):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26433(line=1656, offs=1) -- 26439(line=1656, offs=7)
-*/
-ATSifthen(ATSCKptriscons(tmp301__1)) { ATSINSgoto(__atstmplab35) ; } ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26475(line=1659, offs=7) -- 26475(line=1659, offs=7)
-*/
-ATSINSlab(__atstmplab33):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26487(line=1661, offs=5) -- 26519(line=1661, offs=37)
-*/
-ATSINSmove_void(tmp304__1, atspre_cloptr_free(ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), arg2))) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26521(line=1661, offs=39) -- 26524(line=1661, offs=42)
-*/
-ATSINSmove(tmpret299__1, arg1) ;
-ATSbranch_end()
-
-ATSbranch_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26560(line=1663, offs=3) -- 26589(line=1664, offs=14)
-*/
-ATSINSlab(__atstmplab34):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26433(line=1656, offs=1) -- 26439(line=1656, offs=7)
-*/
-#if(0)
-ATSifthen(ATSCKptrisnull(tmp301__1)) { ATSINSdeadcode_fail() ; } ;
-#endif
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26589(line=1664, offs=14) -- 26589(line=1664, offs=14)
-*/
-ATSINSlab(__atstmplab35):
-/*
-emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
-*/
-/*
-ibranch-mbody:
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26593(line=1664, offs=18) -- 26687(line=1667, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26611(line=1665, offs=15) -- 26624(line=1665, offs=28)
-*/
-ATSINSmove(tmp305__1, ATSfunclo_clo(ATSPMVrefarg0(arg2), (atstype_cloptr, postiats_tyrec_0, atsrefarg1_type(atstkind_t0ype(atstype_int))), postiats_tyrec_0)(ATSPMVrefarg0(arg2), arg1, ATSPMVrefarg1(ATSPMVptrof(ATSSELcon(tmp301__1, postiats_tysum_1, atslab__0))))) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26639(line=1666, offs=15) -- 26642(line=1666, offs=18)
-*/
-ATSINSmove(tmp306__1, ATSSELcon(tmp301__1, postiats_tysum_1, atslab__1)) ;
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26646(line=1666, offs=22) -- 26658(line=1666, offs=34)
-*/
-ATSINSfreecon(tmpref300__1) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26661(line=1666, offs=37) -- 26681(line=1666, offs=57)
-*/
-ATStailcal_beg()
-ATSINSmove_tlcal(apy0, tmp306__1) ;
-ATSINSmove_tlcal(apy1, tmp305__1) ;
-ATSINSmove_tlcal(apy2, arg2) ;
-ATSINSargmove_tlcal(arg0, apy0) ;
-ATSINSargmove_tlcal(arg1, apy1) ;
-ATSINSargmove_tlcal(arg2, apy2) ;
-ATSINSfgoto(__patsflab_loop_121) ;
-ATStailcal_end()
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26593(line=1664, offs=18) -- 26687(line=1667, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSbranch_end()
-
-/*
-** ibranchlst-end
-*/
-ATScaseof_end()
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26398(line=1651, offs=6) -- 26721(line=1669, offs=4)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret299__1) ;
-} /* end of [loop_121__121__1] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6077(line=231, offs=56) -- 6122(line=231, offs=101)
-*/
-/*
-local: adjust_contents_118$0(level=1)
-global: adjust_contents_118$0(level=1), __patsfun_124$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-postiats_tyrec_0
-__patsfun_124(postiats_tyrec_0 arg0, atsrefarg1_type(atstkind_t0ype(atstype_int)) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret314, postiats_tyrec_0) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6077(line=231, offs=56) -- 6122(line=231, offs=101)
-*/
-ATSINSflab(__patsflab___patsfun_124):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6096(line=231, offs=75) -- 6122(line=231, offs=101)
-*/
-ATSINSmove(tmpret314, adjust_contents_118(arg0, ATSderef(arg1, atstkind_t0ype(atstype_int)))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret314) ;
-} /* end of [__patsfun_124] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6246(line=237, offs=4) -- 6634(line=251, offs=6)
-*/
-/*
-local: witness_0$0(level=0), totient_117$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), rip_95$0(level=0), prime_factors_101$0(level=0), totient_117$0(level=0), totient_sum_125$0(level=0)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-totient_sum_125(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret316, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6246(line=237, offs=4) -- 6634(line=251, offs=6)
-*/
-ATSINSflab(__patsflab_totient_sum_125):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6286(line=238, offs=3) -- 6634(line=251, offs=6)
-*/
-/*
-letpush(beg)
-*/
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6618(line=250, offs=5) -- 6628(line=250, offs=15)
-*/
-ATSINSmove(tmpret316, loop_126(ATSPMVi0nt(1), arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6286(line=238, offs=3) -- 6634(line=251, offs=6)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret316) ;
-} /* end of [totient_sum_125] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6298(line=239, offs=9) -- 6608(line=248, offs=40)
-*/
-/*
-local: witness_0$0(level=0), totient_117$0(level=0), loop_126$0(level=1)
-global: witness_0$0(level=0), totient_117$0(level=0), loop_126$0(level=1)
-local: 
-global: 
-*/
-ATSstatic()
-atstkind_type(atstype_ptrk)
-loop_126(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(tmpret317, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp318, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmpref321, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp322, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmpref323, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp328, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp329, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp337, atstkind_t0ype(atstype_int)) ;
-ATStmpdec(tmp338, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-/*
-emit_funent_fnxdeclst:
-*/
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6298(line=239, offs=9) -- 6608(line=248, offs=40)
-*/
-ATSINSflab(__patsflab_loop_126):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6401(line=240, offs=10) -- 6410(line=240, offs=19)
-*/
-ATSINSmove(tmp318, ATSLIB_056_prelude__lt_g1int_int__22__3(arg0, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6398(line=240, offs=7) -- 6608(line=248, offs=40)
-*/
-ATSif(
-tmp318
-) ATSthen() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6424(line=241, offs=9) -- 6557(line=246, offs=12)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6442(line=242, offs=15) -- 6443(line=242, offs=16)
-*/
-/*
-ATSINStmpdec(tmpref321) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6451(line=242, offs=24) -- 6456(line=242, offs=29)
-*/
-ATSINSmove(tmp322, atspre_g1int_add_int(arg0, ATSPMVi0nt(1))) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6446(line=242, offs=19) -- 6464(line=242, offs=37)
-*/
-ATSINSmove(tmpref321, loop_126(tmp322, arg1)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6479(line=243, offs=15) -- 6480(line=243, offs=16)
-*/
-/*
-ATSINStmpdec(tmpref323) ;
-*/
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6510(line=243, offs=46) -- 6519(line=243, offs=55)
-*/
-ATSINSmove(tmp329, totient_117(arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6502(line=243, offs=38) -- 6521(line=243, offs=57)
-*/
-ATSINSmove(tmp328, witness_0(tmp329)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6483(line=243, offs=19) -- 6522(line=243, offs=58)
-*/
-ATSINSmove(tmpref323, ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_int__128__1(tmpref321, tmp328)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6544(line=245, offs=11) -- 6545(line=245, offs=12)
-*/
-ATSINSmove(tmpret317, tmpref323) ;
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6424(line=241, offs=9) -- 6557(line=246, offs=12)
-*/
-/*
-INSletpop()
-*/
-} ATSelse() {
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6577(line=248, offs=9) -- 6608(line=248, offs=40)
-*/
-ATSINSmove(tmp338, totient_117(arg0)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6577(line=248, offs=9) -- 6608(line=248, offs=40)
-*/
-ATSINSmove(tmp337, witness_0(tmp338)) ;
-
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 6577(line=248, offs=9) -- 6608(line=248, offs=40)
-*/
-ATSINSmove(tmpret317, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__130__1(tmp337)) ;
-
-} /* ATSendif */
-ATSfunbody_end()
-ATSreturn(tmpret317) ;
-/*
-emit_funent_fnxbodylst:
-*/
-} /* end of [loop_126] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
-*/
-/*
-local: 
-global: lt_g1int_int$22$3(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = tk(4697)
-tmparg = S2Evar(tk(4697))
-tmpsub = Some(tk(4697) -> S2Eextkind(atstype_int))
-*/
-atstkind_t0ype(atstype_bool)
-ATSLIB_056_prelude__lt_g1int_int__22__3(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret33__3, atstkind_t0ype(atstype_bool)) ;
-ATStmpdec(tmp34__3, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
-*/
-ATSINSmove(tmp34__3, atspre_g1int2int_int_int(arg1)) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
-*/
-ATSINSmove(tmpret33__3, atspre_g1int_lt_int(arg0, tmp34__3)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret33__3) ;
-} /* end of [ATSLIB_056_prelude__lt_g1int_int__22__3] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5151(line=274, offs=3) -- 5217(line=279, offs=2)
-*/
-/*
-local: 
-global: add_intinf0_int$128$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = 
-tmparg = 
-tmpsub = None()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_int__128(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret324, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp325) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5133(line=273, offs=1) -- 5217(line=279, offs=2)
-*/
-ATSINSflab(__patsflab_add_intinf0_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5160(line=274, offs=12) -- 5217(line=279, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5184(line=277, offs=10) -- 5212(line=277, offs=38)
-*/
-ATSINSmove_void(tmp325, atscntrb_gmp_mpz_add2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5161(line=274, offs=13) -- 5162(line=274, offs=14)
-*/
-ATSINSmove(tmpret324, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5160(line=274, offs=12) -- 5217(line=279, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret324) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_int__128] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5151(line=274, offs=3) -- 5217(line=279, offs=2)
-*/
-/*
-local: 
-global: add_intinf0_int$128$1(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_int__128__1(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret324__1, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp325__1) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5133(line=273, offs=1) -- 5217(line=279, offs=2)
-*/
-ATSINSflab(__patsflab_add_intinf0_int):
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5160(line=274, offs=12) -- 5217(line=279, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5184(line=277, offs=10) -- 5212(line=277, offs=38)
-*/
-ATSINSmove_void(tmp325__1, atscntrb_gmp_mpz_add2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5161(line=274, offs=13) -- 5162(line=274, offs=14)
-*/
-ATSINSmove(tmpret324__1, arg0) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5160(line=274, offs=12) -- 5217(line=279, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret324__1) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_int__128__1] */
-
-#if(0)
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$130$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-/*
-imparg = 
-tmparg = 
-tmpsub = None()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__130(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret330, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp331, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp332) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp331, PMVtmpltcst(ptr_alloc<S2Ecst(mpz_vt0ype)>)()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp332, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp331, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret330, tmp331) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret330) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__130] */
-#endif // end of [TEMPLATE]
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
-*/
-/*
-local: 
-global: intinf_make_int$130$1(level=2)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = 
-tmparg = 
-tmpsub = Some()
-*/
-atstkind_type(atstype_ptrk)
-ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__130__1(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret330__1, atstkind_type(atstype_ptrk)) ;
-ATStmpdec(tmp331__1, atstkind_type(atstype_ptrk)) ;
-// ATStmpdec_void(tmp332__1) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-letpush(beg)
-*/
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
-*/
-ATSINSmove(tmp331__1, ATSLIB_056_prelude__ptr_alloc__2__2()) ;
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
-*/
-ATSINSmove_void(tmp332__1, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp331__1, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
-
-/*
-letpush(end)
-*/
-
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
-*/
-ATSINSmove(tmpret330__1, tmp331__1) ;
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
-*/
-/*
-INSletpop()
-*/
-ATSfunbody_end()
-ATSreturn(tmpret330__1) ;
-} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__130__1] */
-
-/*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
-*/
-/*
-local: 
-global: ptr_alloc$2$2(level=3)
-local: 
-global: 
-*/
-ATSstatic()
-/*
-imparg = a(4806)
-tmparg = S2Evar(a(4806))
-tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
-*/
-atstkind_type(atstype_ptrk)
-ATSLIB_056_prelude__ptr_alloc__2__2()
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret3__2, atstkind_type(atstype_ptrk)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
-*/
-ATSINSmove(tmpret3__2, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret3__2) ;
-} /* end of [ATSLIB_056_prelude__ptr_alloc__2__2] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 549(line=30, offs=28) -- 571(line=31, offs=17)
-*/
-/*
-local: sum_divisors_86$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), sum_divisors_86$0(level=0), sum_divisors_ats$133$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-atstkind_t0ype(atstype_int)
-sum_divisors_ats(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret339, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 532(line=30, offs=11) -- 572(line=31, offs=18)
-*/
-ATSINSflab(__patsflab_sum_divisors_ats):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 557(line=31, offs=3) -- 571(line=31, offs=17)
-*/
-ATSINSmove(tmpret339, sum_divisors_86(arg0)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret339) ;
-} /* end of [sum_divisors_ats] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 603(line=33, offs=30) -- 627(line=34, offs=19)
-*/
-/*
-local: count_divisors_81$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), divisors_36$0(level=0), count_divisors_81$0(level=0), count_divisors_ats$134$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-atstkind_t0ype(atstype_int)
-count_divisors_ats(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret340, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 584(line=33, offs=11) -- 628(line=34, offs=20)
-*/
-ATSINSflab(__patsflab_count_divisors_ats):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 611(line=34, offs=3) -- 627(line=34, offs=19)
-*/
-ATSINSmove(tmpret340, count_divisors_81(arg0)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret340) ;
-} /* end of [count_divisors_ats] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 652(line=36, offs=23) -- 669(line=37, offs=12)
-*/
-/*
-local: totient_117$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), rip_95$0(level=0), prime_factors_101$0(level=0), totient_117$0(level=0), totient_ats$135$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-atstkind_t0ype(atstype_int)
-totient_ats(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret341, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 640(line=36, offs=11) -- 670(line=37, offs=13)
-*/
-ATSINSflab(__patsflab_totient_ats):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 660(line=37, offs=3) -- 669(line=37, offs=12)
-*/
-ATSINSmove(tmpret341, totient_117(arg0)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret341) ;
-} /* end of [totient_ats] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 699(line=39, offs=28) -- 721(line=40, offs=17)
-*/
-/*
-local: little_omega_112$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), rip_95$0(level=0), little_omega_112$0(level=0), little_omega_ats$136$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-atstkind_t0ype(atstype_int)
-little_omega_ats(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret342, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 682(line=39, offs=11) -- 722(line=40, offs=18)
-*/
-ATSINSflab(__patsflab_little_omega_ats):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 707(line=40, offs=3) -- 721(line=40, offs=17)
-*/
-ATSINSmove(tmpret342, little_omega_112(arg0)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret342) ;
-} /* end of [little_omega_ats] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 749(line=42, offs=26) -- 769(line=43, offs=15)
-*/
-/*
-local: is_perfect_93$0(level=0)
-global: witness_0$0(level=0), sqrt_int_17$0(level=0), sum_divisors_86$0(level=0), is_perfect_93$0(level=0), is_perfect_ats$137$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-atstkind_t0ype(atstype_bool)
-is_perfect_ats(atstkind_t0ype(atstype_int) arg0)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret343, atstkind_t0ype(atstype_bool)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 734(line=42, offs=11) -- 770(line=43, offs=16)
-*/
-ATSINSflab(__patsflab_is_perfect_ats):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 757(line=43, offs=3) -- 769(line=43, offs=15)
-*/
-ATSINSmove(tmpret343, is_perfect_93(arg0)) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret343) ;
-} /* end of [is_perfect_ats] */
-
-/*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 793(line=45, offs=22) -- 826(line=46, offs=25)
-*/
-/*
-local: jacobi_72$0(level=0)
-global: witness_0$0(level=0), exp_5$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), div_gt_zero_65$0(level=0), exp_mod_prime_66$0(level=0), jacobi_72$0(level=0), jacobi_ats$138$0(level=0)
-local: 
-global: 
-*/
-ATSextern()
-atstkind_t0ype(atstype_int)
-jacobi_ats(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
-{
-/* tmpvardeclst(beg) */
-ATStmpdec(tmpret344, atstkind_t0ype(atstype_int)) ;
-/* tmpvardeclst(end) */
-ATSfunbody_beg()
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 782(line=45, offs=11) -- 826(line=46, offs=25)
-*/
-ATSINSflab(__patsflab_jacobi_ats):
-/*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory-ffi.dats: 804(line=46, offs=3) -- 826(line=46, offs=25)
-*/
-ATSINSmove(tmpret344, jacobi_72(arg0, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), arg1))) ;
-
-ATSfunbody_end()
-ATSreturn(tmpret344) ;
-} /* end of [jacobi_ats] */
-
-/*
-** for initialization(dynloading)
-*/
-ATSdynloadflag_minit(_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_number_055_theory_055_ffi_056_dats__dynloadflag) ;
-ATSextern()
-atsvoid_t0ype
-_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_number_055_theory_055_ffi_056_dats__dynload()
-{
-ATSfunbody_beg()
-ATSdynload(/*void*/)
-ATSdynloadflag_sta(
-_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_number_055_theory_055_ffi_056_dats__dynloadflag
-) ;
-ATSif(
-ATSCKiseqz(
-_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_number_055_theory_055_ffi_056_dats__dynloadflag
-)
-) ATSthen() {
-ATSdynloadset(_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_number_055_theory_055_ffi_056_dats__dynloadflag) ;
+** The starting compilation time is: 2018-1-27: 21h:42m
+**
+*/
+
+/*
+** 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.8/lib/ats2-postiats-0.3.9/prelude/DATS/basics.dats: 1636(line=50, offs=1) -- 1675(line=50, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 1533(line=44, offs=1) -- 1572(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_long.dats: 1602(line=49, offs=1) -- 1641(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_size.dats: 1597(line=49, offs=1) -- 1636(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_short.dats: 1603(line=49, offs=1) -- 1642(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/char.dats: 1610(line=48, offs=1) -- 1649(line=48, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/float.dats: 1636(line=50, offs=1) -- 1675(line=50, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/string.dats: 1631(line=50, offs=1) -- 1670(line=50, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/strptr.dats: 1629(line=50, offs=1) -- 1668(line=50, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/strptr.dats: 1691(line=54, offs=1) -- 1738(line=54, offs=48)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_ptr.dats: 1601(line=49, offs=1) -- 1640(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_fixed.dats: 1603(line=49, offs=1) -- 1642(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/memory.dats: 1410(line=38, offs=1) -- 1449(line=39, offs=32)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 1613(line=49, offs=1) -- 1652(line=50, offs=32)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 1675(line=54, offs=1) -- 1721(line=55, offs=39)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 1744(line=59, offs=1) -- 1789(line=60, offs=38)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/stdio.sats: 1950(line=69, offs=1) -- 1999(line=71, offs=34)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 1871(line=66, offs=1) -- 1918(line=66, offs=48)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/sys/stat.sats: 1756(line=58, offs=1) -- 1805(line=60, offs=34)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 15552(line=879, offs=1) -- 15589(line=880, offs=30)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/stdio.sats: 1950(line=69, offs=1) -- 1999(line=71, offs=34)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/list.dats: 1529(line=44, offs=1) -- 1568(line=45, offs=32)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/list.dats: 1569(line=46, offs=1) -- 1615(line=47, offs=39)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/list_vt.dats: 1538(line=44, offs=1) -- 1577(line=45, offs=32)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/list_vt.dats: 1578(line=46, offs=1) -- 1624(line=47, offs=39)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/SHARE/list_vt_mergesort.dats: 1546(line=44, offs=1) -- 1585(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/SHARE/list_vt_quicksort.dats: 1546(line=44, offs=1) -- 1585(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/array.dats: 1534(line=44, offs=1) -- 1573(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/array.dats: 1574(line=45, offs=1) -- 1616(line=45, offs=43)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/SHARE/array_bsearch.dats: 1531(line=44, offs=1) -- 1570(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/SHARE/array_quicksort.dats: 1531(line=44, offs=1) -- 1570(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/arrayptr.dats: 1532(line=44, offs=1) -- 1571(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/arrayref.dats: 1532(line=44, offs=1) -- 1571(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/matrix.dats: 1535(line=44, offs=1) -- 1574(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/matrixptr.dats: 1538(line=44, offs=1) -- 1577(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/matrixref.dats: 1538(line=44, offs=1) -- 1577(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream.dats: 1523(line=44, offs=1) -- 1562(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 1523(line=44, offs=1) -- 1562(line=44, offs=40)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/tostring.dats: 1528(line=44, offs=1) -- 1567(line=45, offs=32)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/checkast.dats: 1531(line=44, offs=1) -- 1570(line=45, offs=32)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1660(line=37, offs=1) -- 1700(line=38, offs=27)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1727(line=42, offs=1) -- 1759(line=42, offs=33)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1833(line=49, offs=1) -- 1867(line=49, offs=35)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1868(line=50, offs=1) -- 1908(line=50, offs=41)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1656(line=37, offs=1) -- 1696(line=39, offs=27)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/mydepies.hats: 192(line=16, offs=1) -- 232(line=16, offs=41)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1233(line=43, offs=3)
+*/
+
+//
+#include \
+"atscntrb-libgmp/CATS/gmp.cats"
+//
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1813(line=49, offs=1) -- 1845(line=49, offs=33)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1846(line=50, offs=1) -- 1881(line=50, offs=36)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1657(line=37, offs=1) -- 1689(line=37, offs=33)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1690(line=38, offs=1) -- 1724(line=38, offs=35)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1233(line=43, offs=3)
+*/
+
+//
+#include \
+"atscntrb-libgmp/CATS/gmp.cats"
+//
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/math.sats: 1380(line=35, offs=1) -- 1426(line=38, offs=3)
+*/
+
+#include \
+"libats/libc/CATS/math.cats"
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1660(line=37, offs=1) -- 1700(line=38, offs=27)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1727(line=42, offs=1) -- 1759(line=42, offs=33)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1833(line=49, offs=1) -- 1867(line=49, offs=35)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1868(line=50, offs=1) -- 1908(line=50, offs=41)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1656(line=37, offs=1) -- 1696(line=39, offs=27)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/mydepies.hats: 192(line=16, offs=1) -- 232(line=16, offs=41)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1233(line=43, offs=3)
+*/
+
+//
+#include \
+"atscntrb-libgmp/CATS/gmp.cats"
+//
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1813(line=49, offs=1) -- 1845(line=49, offs=33)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1846(line=50, offs=1) -- 1881(line=50, offs=36)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1657(line=37, offs=1) -- 1689(line=37, offs=33)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1690(line=38, offs=1) -- 1724(line=38, offs=35)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+*/
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+*/
+/*
+staload-prologues(end)
+*/
+/*
+typedefs-for-tyrecs-and-tysums(beg)
+*/
+typedef
+ATSstruct {
+atstkind_t0ype(atstype_int) atslab__first ;
+atstkind_t0ype(atstype_int) atslab__second ;
+} postiats_tyrec_0 ;
+typedef
+ATSstruct {
+#if(0)
+int contag ;
+#endif
+atstkind_t0ype(atstype_int) atslab__0 ;
+atstkind_type(atstype_ptrk) atslab__1 ;
+} postiats_tysum_1 ;
+typedef
+ATSstruct {
+#if(0)
+int contag ;
+#endif
+atstyvar_type(a) atslab__0 ;
+atstkind_type(atstype_ptrk) atslab__1 ;
+} postiats_tysum_2 ;
+typedef
+ATSstruct {
+#if(0)
+int contag ;
+#endif
+atstyvar_type(a) atslab__0 ;
+atstkind_type(atstype_ptrk) atslab__1 ;
+} postiats_tysum_3 ;
+typedef
+ATSstruct {
+#if(0)
+int contag ;
+#endif
+atstyvar_type(a) atslab__0 ;
+atstkind_type(atstype_ptrk) atslab__1 ;
+} postiats_tysum_4 ;
+/*
+typedefs-for-tyrecs-and-tysums(end)
+*/
+/*
+dynconlst-declaration(beg)
+*/
+/*
+dynconlst-declaration(end)
+*/
+/*
+dyncstlst-declaration(beg)
+*/
+ATSdyncst_mac(atspre_ptr_alloc_tsz)
+ATSdyncst_mac(atspre_g0int2uint_int_ulint)
+ATSdyncst_mac(atspre_g1int_add_int)
+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_g0float2int_float_int)
+ATSdyncst_mac(atslib_libats_libc_sqrt_float)
+ATSdyncst_mac(atspre_g0int2float_int_float)
+ATSdyncst_mac(atspre_g1int_lt_int)
+ATSdyncst_mac(atspre_g1int_eq_int)
+ATSdyncst_mac(atspre_g0int_div_int)
+ATSdyncst_mac(atspre_g1int_gte_int)
+ATSdyncst_mac(atspre_g1int_neq_int)
+ATSdyncst_mac(atspre_g1int_div_int)
+ATSdyncst_mac(atspre_cloptr_free)
+ATSdyncst_mac(atspre_lazy_vt_free)
+ATSdyncst_mac(atspre_g1int_sub_int)
+ATSdyncst_mac(atspre_g0int_half_int)
+ATSdyncst_mac(atspre_g1int_mul_int)
+ATSdyncst_mac(atspre_g1int_neg_int)
+ATSdyncst_mac(atspre_g0int_add_int)
+ATSdyncst_mac(atspre_g0int_neq_int)
+ATSdyncst_mac(atspre_g0int_sub_int)
+ATSdyncst_mac(atscntrb_gmp_mpz_add2_int)
+ATSdyncst_mac(atscntrb_gmp_mpz_init_set_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_t0ype(atstype_int)
+witness_0(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+fib_gmp_1(atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__2() ;
+#endif // end of [QUALIFIED]
+#endif // end of [TEMPLATE]
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__2__1() ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+exp_5(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6(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__6__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12(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__12__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+sqrt_int_17(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+is_prime_20(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+loop_21(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__22(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__22__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__2(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g1int_int__26(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__26__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__3(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+divides_30(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__4(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+gcd_32(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6__2(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+lcm_34(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+divisors_36(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_37(atstype_bool) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_38(atstype_bool) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+loop_39(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gte_g1int_int__40(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__gte_g1int_int__40__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__5(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__neq_g1int_int__44(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__neq_g1int_int__44__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_48(atstkind_t0ype(atstype_int), atstkind_type(atstype_ptrk), atstype_bool) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_49(atstkind_type(atstype_ptrk), atstype_bool) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_50(atstype_bool) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_51(atstkind_t0ype(atstype_int), atstype_bool) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_52(atstype_bool) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_53(atstype_bool) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__6(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_55(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_type(atstype_ptrk), atstype_bool) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_56(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_type(atstype_ptrk), atstype_bool) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+prime_divisors_57(atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__stream_vt_filter_cloptr__58(atstkind_type(atstype_ptrk), atstype_cloptr) ;
+#endif // end of [QUALIFIED]
+#endif // end of [TEMPLATE]
+
+#if(0)
+ATSstatic()
+atstkind_type(atstype_ptrk)
+auxmain_59__59(atstkind_type(atstype_ptrk), atstype_cloptr) ;
+#endif // end of [TEMPLATE]
+
+#if(0)
+ATSstatic()
+atstype_boxed
+__patsfun_60__60(atstkind_type(atstype_ptrk), atstype_cloptr, atstype_bool) ;
+#endif // end of [TEMPLATE]
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__stream_vt_filter_cloptr__58__1(atstkind_type(atstype_ptrk), atstype_cloptr) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+auxmain_59__59__1(atstkind_type(atstype_ptrk), atstype_cloptr) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_60__60__1(atstkind_type(atstype_ptrk), atstype_cloptr, atstype_bool) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+__patsfun_64(atsrefarg1_type(atstkind_t0ype(atstype_int))) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+div_gt_zero_65(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+exp_mod_prime_66(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6__3(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__7(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+jacobi_72(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+legendre_73(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__8(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__9(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+get_multiplicity_77(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+loop_78(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6__4(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__10(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+count_divisors_81(atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_t0ype(atstype_int)
+ATSLIB_056_prelude__stream_vt_length__82(atstkind_type(atstype_ptrk)) ;
+#endif // end of [QUALIFIED]
+#endif // end of [TEMPLATE]
+
+#if(0)
+ATSstatic()
+atstkind_t0ype(atstype_int)
+loop_83__83(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
+#endif // end of [TEMPLATE]
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+ATSLIB_056_prelude__stream_vt_length__82__1(atstkind_type(atstype_ptrk)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+loop_83__83__1(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+sum_divisors_86(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+loop_87(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gte_g1int_int__40__2(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__11(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__neq_g1int_int__44__2(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__12(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+is_perfect_93(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__13(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+rip_95(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__neq_g0int_int__96(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__neq_g0int_int__96__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6__5(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__lt_g1int_int__22__2(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+prime_factors_101(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+loop_102(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gte_g1int_int__40__3(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_104(atstkind_t0ype(atstype_int), atstype_bool) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_105(atstype_bool) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_106(atstype_bool) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__14(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6__6(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_109(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstype_bool) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_110(atstkind_t0ype(atstype_int), atstype_bool) ;
+
+ATSstatic()
+atstype_boxed
+__patsfun_111(atstype_bool) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+little_omega_112(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+loop_113(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gte_g1int_int__40__4(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__15(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6__7(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_int)
+totient_117(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+postiats_tyrec_0
+adjust_contents_118(postiats_tyrec_0, atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstyvar_type(res)
+ATSLIB_056_prelude__stream_vt_foldleft_cloptr__120(atstkind_type(atstype_ptrk), atstyvar_type(res), atstype_cloptr) ;
+#endif // end of [QUALIFIED]
+#endif // end of [TEMPLATE]
+
+#if(0)
+ATSstatic()
+atstyvar_type(res)
+loop_121__121(atstkind_type(atstype_ptrk), atstyvar_type(res), atstype_cloptr) ;
+#endif // end of [TEMPLATE]
+
+ATSstatic()
+postiats_tyrec_0
+ATSLIB_056_prelude__stream_vt_foldleft_cloptr__120__1(atstkind_type(atstype_ptrk), postiats_tyrec_0, atstype_cloptr) ;
+
+ATSstatic()
+postiats_tyrec_0
+loop_121__121__1(atstkind_type(atstype_ptrk), postiats_tyrec_0, atstype_cloptr) ;
+
+ATSstatic()
+postiats_tyrec_0
+__patsfun_124(postiats_tyrec_0, atsrefarg1_type(atstkind_t0ype(atstype_int))) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+totient_sum_125(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+loop_126(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__lt_g1int_int__22__3(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_int__128(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
+#endif // end of [QUALIFIED]
+#endif // end of [TEMPLATE]
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_int__128__1(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;
+
+#if(0)
+#if(0)
+ATSextern()
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__130(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__130__1(atstkind_t0ype(atstype_int)) ;
+
+ATSstatic()
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__2__2() ;
+
+#if(0)
+ATSextern()
+atstkind_t0ype(atstype_int)
+sum_divisors_ats(atstkind_t0ype(atstype_int)) ;
+#endif // end of [QUALIFIED]
+
+#if(0)
+ATSextern()
+atstkind_t0ype(atstype_int)
+count_divisors_ats(atstkind_t0ype(atstype_int)) ;
+#endif // end of [QUALIFIED]
+
+#if(0)
+ATSextern()
+atstkind_t0ype(atstype_int)
+totient_ats(atstkind_t0ype(atstype_int)) ;
+#endif // end of [QUALIFIED]
+
+#if(0)
+ATSextern()
+atstkind_t0ype(atstype_int)
+little_omega_ats(atstkind_t0ype(atstype_int)) ;
+#endif // end of [QUALIFIED]
+
+#if(0)
+ATSextern()
+atstkind_t0ype(atstype_bool)
+is_perfect_ats(atstkind_t0ype(atstype_int)) ;
+#endif // end of [QUALIFIED]
+
+#if(0)
+ATSextern()
+atstkind_t0ype(atstype_int)
+jacobi_ats(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
+#endif // end of [QUALIFIED]
+
+ATSclosurerize_beg(__patsfun_37, (), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+} __patsfun_37__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_37__cfun
+(
+__patsfun_37__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_37(arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_37__closureinit
+(
+__patsfun_37__closure_t0ype *p_cenv
+)
+{
+p_cenv->cfun = __patsfun_37__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_37__closurerize
+(
+// argumentless
+)
+{
+return __patsfun_37__closureinit(ATS_MALLOC(sizeof(__patsfun_37__closure_t0ype))) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_38, (), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+} __patsfun_38__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_38__cfun
+(
+__patsfun_38__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_38(arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_38__closureinit
+(
+__patsfun_38__closure_t0ype *p_cenv
+)
+{
+p_cenv->cfun = __patsfun_38__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_38__closurerize
+(
+// argumentless
+)
+{
+return __patsfun_38__closureinit(ATS_MALLOC(sizeof(__patsfun_38__closure_t0ype))) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_48, (atstkind_t0ype(atstype_int), atstkind_type(atstype_ptrk)), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+atstkind_t0ype(atstype_int) env0 ;
+atstkind_type(atstype_ptrk) env1 ;
+} __patsfun_48__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_48__cfun
+(
+__patsfun_48__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_48(p_cenv->env0, p_cenv->env1, arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_48__closureinit
+(
+__patsfun_48__closure_t0ype *p_cenv, atstkind_t0ype(atstype_int) env0, atstkind_type(atstype_ptrk) env1
+)
+{
+p_cenv->env0 = env0 ;
+p_cenv->env1 = env1 ;
+p_cenv->cfun = __patsfun_48__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_48__closurerize
+(
+atstkind_t0ype(atstype_int) env0, atstkind_type(atstype_ptrk) env1
+)
+{
+return __patsfun_48__closureinit(ATS_MALLOC(sizeof(__patsfun_48__closure_t0ype)), env0, env1) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_49, (atstkind_type(atstype_ptrk)), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+atstkind_type(atstype_ptrk) env0 ;
+} __patsfun_49__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_49__cfun
+(
+__patsfun_49__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_49(p_cenv->env0, arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_49__closureinit
+(
+__patsfun_49__closure_t0ype *p_cenv, atstkind_type(atstype_ptrk) env0
+)
+{
+p_cenv->env0 = env0 ;
+p_cenv->cfun = __patsfun_49__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_49__closurerize
+(
+atstkind_type(atstype_ptrk) env0
+)
+{
+return __patsfun_49__closureinit(ATS_MALLOC(sizeof(__patsfun_49__closure_t0ype)), env0) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_50, (), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+} __patsfun_50__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_50__cfun
+(
+__patsfun_50__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_50(arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_50__closureinit
+(
+__patsfun_50__closure_t0ype *p_cenv
+)
+{
+p_cenv->cfun = __patsfun_50__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_50__closurerize
+(
+// argumentless
+)
+{
+return __patsfun_50__closureinit(ATS_MALLOC(sizeof(__patsfun_50__closure_t0ype))) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_51, (atstkind_t0ype(atstype_int)), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+atstkind_t0ype(atstype_int) env0 ;
+} __patsfun_51__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_51__cfun
+(
+__patsfun_51__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_51(p_cenv->env0, arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_51__closureinit
+(
+__patsfun_51__closure_t0ype *p_cenv, atstkind_t0ype(atstype_int) env0
+)
+{
+p_cenv->env0 = env0 ;
+p_cenv->cfun = __patsfun_51__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_51__closurerize
+(
+atstkind_t0ype(atstype_int) env0
+)
+{
+return __patsfun_51__closureinit(ATS_MALLOC(sizeof(__patsfun_51__closure_t0ype)), env0) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_52, (), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+} __patsfun_52__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_52__cfun
+(
+__patsfun_52__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_52(arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_52__closureinit
+(
+__patsfun_52__closure_t0ype *p_cenv
+)
+{
+p_cenv->cfun = __patsfun_52__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_52__closurerize
+(
+// argumentless
+)
+{
+return __patsfun_52__closureinit(ATS_MALLOC(sizeof(__patsfun_52__closure_t0ype))) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_53, (), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+} __patsfun_53__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_53__cfun
+(
+__patsfun_53__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_53(arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_53__closureinit
+(
+__patsfun_53__closure_t0ype *p_cenv
+)
+{
+p_cenv->cfun = __patsfun_53__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_53__closurerize
+(
+// argumentless
+)
+{
+return __patsfun_53__closureinit(ATS_MALLOC(sizeof(__patsfun_53__closure_t0ype))) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_55, (atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_type(atstype_ptrk)), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+atstkind_t0ype(atstype_int) env0 ;
+atstkind_t0ype(atstype_int) env1 ;
+atstkind_type(atstype_ptrk) env2 ;
+} __patsfun_55__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_55__cfun
+(
+__patsfun_55__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_55(p_cenv->env0, p_cenv->env1, p_cenv->env2, arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_55__closureinit
+(
+__patsfun_55__closure_t0ype *p_cenv, atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstkind_type(atstype_ptrk) env2
+)
+{
+p_cenv->env0 = env0 ;
+p_cenv->env1 = env1 ;
+p_cenv->env2 = env2 ;
+p_cenv->cfun = __patsfun_55__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_55__closurerize
+(
+atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstkind_type(atstype_ptrk) env2
+)
+{
+return __patsfun_55__closureinit(ATS_MALLOC(sizeof(__patsfun_55__closure_t0ype)), env0, env1, env2) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_56, (atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_type(atstype_ptrk)), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+atstkind_t0ype(atstype_int) env0 ;
+atstkind_t0ype(atstype_int) env1 ;
+atstkind_type(atstype_ptrk) env2 ;
+} __patsfun_56__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_56__cfun
+(
+__patsfun_56__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_56(p_cenv->env0, p_cenv->env1, p_cenv->env2, arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_56__closureinit
+(
+__patsfun_56__closure_t0ype *p_cenv, atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstkind_type(atstype_ptrk) env2
+)
+{
+p_cenv->env0 = env0 ;
+p_cenv->env1 = env1 ;
+p_cenv->env2 = env2 ;
+p_cenv->cfun = __patsfun_56__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_56__closurerize
+(
+atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstkind_type(atstype_ptrk) env2
+)
+{
+return __patsfun_56__closureinit(ATS_MALLOC(sizeof(__patsfun_56__closure_t0ype)), env0, env1, env2) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_60__60__1, (atstkind_type(atstype_ptrk), atstype_cloptr), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+atstkind_type(atstype_ptrk) env0 ;
+atstype_cloptr env1 ;
+} __patsfun_60__60__1__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_60__60__1__cfun
+(
+__patsfun_60__60__1__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_60__60__1(p_cenv->env0, p_cenv->env1, arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_60__60__1__closureinit
+(
+__patsfun_60__60__1__closure_t0ype *p_cenv, atstkind_type(atstype_ptrk) env0, atstype_cloptr env1
+)
+{
+p_cenv->env0 = env0 ;
+p_cenv->env1 = env1 ;
+p_cenv->cfun = __patsfun_60__60__1__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_60__60__1__closurerize
+(
+atstkind_type(atstype_ptrk) env0, atstype_cloptr env1
+)
+{
+return __patsfun_60__60__1__closureinit(ATS_MALLOC(sizeof(__patsfun_60__60__1__closure_t0ype)), env0, env1) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_64, (), (atsrefarg1_type(atstkind_t0ype(atstype_int))), atstkind_t0ype(atstype_bool))
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+} __patsfun_64__closure_t0ype ;
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+__patsfun_64__cfun
+(
+__patsfun_64__closure_t0ype *p_cenv, atsrefarg1_type(atstkind_t0ype(atstype_int)) arg0
+)
+{
+ATSFCreturn(__patsfun_64(arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_64__closureinit
+(
+__patsfun_64__closure_t0ype *p_cenv
+)
+{
+p_cenv->cfun = __patsfun_64__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_64__closurerize
+(
+// argumentless
+)
+{
+return __patsfun_64__closureinit(ATS_MALLOC(sizeof(__patsfun_64__closure_t0ype))) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_104, (atstkind_t0ype(atstype_int)), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+atstkind_t0ype(atstype_int) env0 ;
+} __patsfun_104__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_104__cfun
+(
+__patsfun_104__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_104(p_cenv->env0, arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_104__closureinit
+(
+__patsfun_104__closure_t0ype *p_cenv, atstkind_t0ype(atstype_int) env0
+)
+{
+p_cenv->env0 = env0 ;
+p_cenv->cfun = __patsfun_104__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_104__closurerize
+(
+atstkind_t0ype(atstype_int) env0
+)
+{
+return __patsfun_104__closureinit(ATS_MALLOC(sizeof(__patsfun_104__closure_t0ype)), env0) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_105, (), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+} __patsfun_105__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_105__cfun
+(
+__patsfun_105__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_105(arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_105__closureinit
+(
+__patsfun_105__closure_t0ype *p_cenv
+)
+{
+p_cenv->cfun = __patsfun_105__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_105__closurerize
+(
+// argumentless
+)
+{
+return __patsfun_105__closureinit(ATS_MALLOC(sizeof(__patsfun_105__closure_t0ype))) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_106, (), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+} __patsfun_106__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_106__cfun
+(
+__patsfun_106__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_106(arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_106__closureinit
+(
+__patsfun_106__closure_t0ype *p_cenv
+)
+{
+p_cenv->cfun = __patsfun_106__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_106__closurerize
+(
+// argumentless
+)
+{
+return __patsfun_106__closureinit(ATS_MALLOC(sizeof(__patsfun_106__closure_t0ype))) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_109, (atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+atstkind_t0ype(atstype_int) env0 ;
+atstkind_t0ype(atstype_int) env1 ;
+} __patsfun_109__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_109__cfun
+(
+__patsfun_109__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_109(p_cenv->env0, p_cenv->env1, arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_109__closureinit
+(
+__patsfun_109__closure_t0ype *p_cenv, atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1
+)
+{
+p_cenv->env0 = env0 ;
+p_cenv->env1 = env1 ;
+p_cenv->cfun = __patsfun_109__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_109__closurerize
+(
+atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1
+)
+{
+return __patsfun_109__closureinit(ATS_MALLOC(sizeof(__patsfun_109__closure_t0ype)), env0, env1) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_110, (atstkind_t0ype(atstype_int)), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+atstkind_t0ype(atstype_int) env0 ;
+} __patsfun_110__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_110__cfun
+(
+__patsfun_110__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_110(p_cenv->env0, arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_110__closureinit
+(
+__patsfun_110__closure_t0ype *p_cenv, atstkind_t0ype(atstype_int) env0
+)
+{
+p_cenv->env0 = env0 ;
+p_cenv->cfun = __patsfun_110__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_110__closurerize
+(
+atstkind_t0ype(atstype_int) env0
+)
+{
+return __patsfun_110__closureinit(ATS_MALLOC(sizeof(__patsfun_110__closure_t0ype)), env0) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_111, (), (atstype_bool), atstype_boxed)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+} __patsfun_111__closure_t0ype ;
+ATSstatic()
+atstype_boxed
+__patsfun_111__cfun
+(
+__patsfun_111__closure_t0ype *p_cenv, atstype_bool arg0
+)
+{
+ATSFCreturn(__patsfun_111(arg0)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_111__closureinit
+(
+__patsfun_111__closure_t0ype *p_cenv
+)
+{
+p_cenv->cfun = __patsfun_111__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_111__closurerize
+(
+// argumentless
+)
+{
+return __patsfun_111__closureinit(ATS_MALLOC(sizeof(__patsfun_111__closure_t0ype))) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+ATSclosurerize_beg(__patsfun_124, (), (postiats_tyrec_0, atsrefarg1_type(atstkind_t0ype(atstype_int))), postiats_tyrec_0)
+typedef
+ATSstruct {
+atstype_funptr cfun ;
+} __patsfun_124__closure_t0ype ;
+ATSstatic()
+postiats_tyrec_0
+__patsfun_124__cfun
+(
+__patsfun_124__closure_t0ype *p_cenv, postiats_tyrec_0 arg0, atsrefarg1_type(atstkind_t0ype(atstype_int)) arg1
+)
+{
+ATSFCreturn(__patsfun_124(arg0, arg1)) ;
+} /* end of [cfun] */
+ATSstatic()
+atstype_cloptr
+__patsfun_124__closureinit
+(
+__patsfun_124__closure_t0ype *p_cenv
+)
+{
+p_cenv->cfun = __patsfun_124__cfun ;
+return p_cenv ;
+} /* end of [closureinit] */
+ATSstatic()
+atstype_cloptr
+__patsfun_124__closurerize
+(
+// argumentless
+)
+{
+return __patsfun_124__closureinit(ATS_MALLOC(sizeof(__patsfun_124__closure_t0ype))) ;
+} /* end of [closurerize] */
+ATSclosurerize_end()
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 753(line=23, offs=4) -- 808(line=24, offs=14)
+*/
+/*
+local: 
+global: witness_0$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+witness_0(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret0, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 753(line=23, offs=4) -- 808(line=24, offs=14)
+*/
+ATSINSflab(__patsflab_witness_0):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 797(line=24, offs=3) -- 807(line=24, offs=13)
+*/
+ATSINSmove(tmpret0, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), arg0)) ;
+ATSfunbody_end()
+ATSreturn(tmpret0) ;
+} /* end of [witness_0] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 873(line=27, offs=5) -- 1092(line=35, offs=6)
+*/
+/*
+local: 
+global: fib_gmp_1$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+fib_gmp_1(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret1, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmpref2, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmpref5, atstkind_t0ype(atstype_ulint)) ;
+ATStmpdec(tmp6, atstkind_t0ype(atstype_int)) ;
+// ATStmpdec_void(tmp7) ;
+// ATStmpdec_void(tmp8) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 873(line=27, offs=5) -- 1092(line=35, offs=6)
+*/
+ATSINSflab(__patsflab_fib_gmp_1):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 909(line=28, offs=3) -- 1092(line=35, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 921(line=29, offs=9) -- 922(line=29, offs=10)
+*/
+/*
+ATSINStmpdec(tmpref2) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 925(line=29, offs=13) -- 936(line=29, offs=24)
+*/
+ATSINSmove(tmpref2, ATSLIB_056_prelude__ptr_alloc__2__1()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 945(line=30, offs=9) -- 946(line=30, offs=10)
+*/
+/*
+ATSINStmpdec(tmpref5) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 977(line=30, offs=41) -- 982(line=30, offs=46)
+*/
+ATSINSmove(tmp6, atspre_g1int_add_int(arg0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 956(line=30, offs=20) -- 983(line=30, offs=47)
+*/
+ATSINSmove(tmpref5, atspre_g0int2uint_int_ulint(tmp6)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 997(line=31, offs=14) -- 1018(line=31, offs=35)
+*/
+ATSINSmove_void(tmp7, atscntrb_gmp_mpz_init(ATSPMVrefarg1(ATSSELrecsin(tmpref2, atstkind_type(atstype_ptrk), atslab__2)))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1032(line=32, offs=14) -- 1060(line=32, offs=42)
+*/
+ATSINSmove_void(tmp8, atscntrb_gmp_mpz_fib_uint(ATSPMVrefarg1(ATSSELrecsin(tmpref2, atstkind_type(atstype_ptrk), atslab__2)), tmpref5)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1070(line=34, offs=5) -- 1085(line=34, offs=20)
+*/
+ATSINSmove(tmpret1, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmpref2)) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 909(line=28, offs=3) -- 1092(line=35, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret1) ;
+} /* end of [fib_gmp_1] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$2$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = None()
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__2()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret3, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret3, atspre_ptr_alloc_tsz(ATSPMVsizeof(atstyvar_type(a)))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret3) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__2] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$2$1(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2EVar(5569))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__2__1()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret3__1, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret3__1, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret3__1) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__2__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1170(line=38, offs=5) -- 1611(line=59, offs=10)
+*/
+/*
+local: exp_5$0(level=0)
+global: exp_5$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+exp_5(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(tmpret9, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp10, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmpref15, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref16, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp17, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp22, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref23, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp24, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp25, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1170(line=38, offs=5) -- 1611(line=59, offs=10)
+*/
+ATSINSflab(__patsflab_exp_5):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1222(line=39, offs=3) -- 1611(line=59, offs=10)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1239(line=40, offs=7) -- 1240(line=40, offs=8)
+*/
+ATSINSlab(__atstmplab0):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1191(line=38, offs=26) -- 1192(line=38, offs=27)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(0))) { ATSINSgoto(__atstmplab2) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1240(line=40, offs=8) -- 1240(line=40, offs=8)
+*/
+ATSINSlab(__atstmplab1):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1244(line=40, offs=12) -- 1245(line=40, offs=13)
+*/
+ATSINSmove(tmpret9, ATSPMVi0nt(0)) ;
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1253(line=41, offs=8) -- 1253(line=41, offs=8)
+*/
+ATSINSlab(__atstmplab2):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1282(line=43, offs=12) -- 1287(line=43, offs=17)
+*/
+ATSINSmove(tmp10, ATSLIB_056_prelude__gt_g1int_int__6__1(arg1, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1279(line=43, offs=9) -- 1601(line=58, offs=12)
+*/
+ATSif(
+tmp10
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1303(line=44, offs=11) -- 1576(line=56, offs=14)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1323(line=45, offs=17) -- 1325(line=45, offs=19)
+*/
+/*
+ATSINStmpdec(tmpref15) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1328(line=45, offs=22) -- 1334(line=45, offs=28)
+*/
+ATSINSmove(tmpref15, atspre_g1int_half_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1352(line=46, offs=17) -- 1354(line=46, offs=19)
+*/
+/*
+ATSINStmpdec(tmpref16) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1357(line=46, offs=22) -- 1362(line=46, offs=27)
+*/
+ATSINSmove(tmpref16, atspre_g0int_mod_int(arg1, ATSPMVi0nt(2))) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1391(line=48, offs=16) -- 1397(line=48, offs=22)
+*/
+ATSINSmove(tmp17, ATSLIB_056_prelude__eq_g0int_int__12__1(tmpref16, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1388(line=48, offs=13) -- 1562(line=55, offs=18)
+*/
+ATSif(
+tmp17
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1421(line=49, offs=19) -- 1426(line=49, offs=24)
+*/
+ATSINSmove(tmp22, atspre_g0int_mul_int(arg0, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1417(line=49, offs=15) -- 1431(line=49, offs=29)
+*/
+ATStailcal_beg()
+ATSINSmove_tlcal(apy0, tmp22) ;
+ATSINSmove_tlcal(apy1, tmpref15) ;
+ATSINSargmove_tlcal(arg0, apy0) ;
+ATSINSargmove_tlcal(arg1, apy1) ;
+ATSINSfgoto(__patsflab_exp_5) ;
+ATStailcal_end()
+
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1463(line=51, offs=15) -- 1562(line=55, offs=18)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1487(line=52, offs=21) -- 1488(line=52, offs=22)
+*/
+/*
+ATSINStmpdec(tmpref23) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1499(line=52, offs=33) -- 1504(line=52, offs=38)
+*/
+ATSINSmove(tmp25, atspre_g0int_mul_int(arg0, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1495(line=52, offs=29) -- 1509(line=52, offs=43)
+*/
+ATSINSmove(tmp24, exp_5(tmp25, tmpref15)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1491(line=52, offs=25) -- 1509(line=52, offs=43)
+*/
+ATSINSmove(tmpref23, atspre_g0int_mul_int(arg0, tmp24)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1543(line=54, offs=17) -- 1544(line=54, offs=18)
+*/
+ATSINSmove(tmpret9, tmpref23) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1463(line=51, offs=15) -- 1562(line=55, offs=18)
+*/
+/*
+INSletpop()
+*/
+} /* ATSendif */
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1303(line=44, offs=11) -- 1576(line=56, offs=14)
+*/
+/*
+INSletpop()
+*/
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1600(line=58, offs=11) -- 1601(line=58, offs=12)
+*/
+ATSINSmove(tmpret9, ATSPMVi0nt(1)) ;
+} /* ATSendif */
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+ATSfunbody_end()
+ATSreturn(tmpret9) ;
+} /* end of [exp_5] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
+*/
+/*
+local: 
+global: gt_g1int_int$6$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = tk(4703)
+tmparg = S2Evar(tk(4703))
+tmpsub = None()
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret11, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp12, atstkind_t0ype(atstyvar_type(tk))) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
+*/
+ATSINSmove(tmp12, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4703))>)(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
+*/
+ATSINSmove(tmpret11, PMVtmpltcst(g1int_gt<S2Evar(tk(4703))>)(arg0, tmp12)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret11) ;
+} /* end of [ATSLIB_056_prelude__gt_g1int_int__6] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
+*/
+/*
+local: 
+global: gt_g1int_int$6$1(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4703)
+tmparg = S2Evar(tk(4703))
+tmpsub = Some(tk(4703) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret11__1, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp12__1, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
+*/
+ATSINSmove(tmp12__1, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
+*/
+ATSINSmove(tmpret11__1, atspre_g1int_gt_int(arg0, tmp12__1)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret11__1) ;
+} /* end of [ATSLIB_056_prelude__gt_g1int_int__6__1] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = None()
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19, atstkind_t0ype(atstyvar_type(tk))) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19, PMVtmpltcst(g0int2int<S2Eextkind(atstype_int), S2Evar(tk(4694))>)(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18, PMVtmpltcst(g0int_eq<S2Evar(tk(4694))>)(arg0, tmp19)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$1(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__1, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__1, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__1, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__1, atspre_g0int_eq_int(arg0, tmp19__1)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__1) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1616(line=61, offs=4) -- 1760(line=66, offs=6)
+*/
+/*
+local: witness_0$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+sqrt_int_17(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret26, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref27, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp28, atstkind_t0ype(atstype_float)) ;
+ATStmpdec(tmp29, atstkind_t0ype(atstype_float)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1616(line=61, offs=4) -- 1760(line=66, offs=6)
+*/
+ATSINSflab(__patsflab_sqrt_int_17):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1666(line=62, offs=3) -- 1760(line=66, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1678(line=63, offs=9) -- 1683(line=63, offs=14)
+*/
+/*
+ATSINStmpdec(tmpref27) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1714(line=63, offs=45) -- 1727(line=63, offs=58)
+*/
+ATSINSmove(tmp29, atspre_g0int2float_int_float(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1703(line=63, offs=34) -- 1729(line=63, offs=60)
+*/
+ATSINSmove(tmp28, atslib_libats_libc_sqrt_float(tmp29)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1691(line=63, offs=22) -- 1730(line=63, offs=61)
+*/
+ATSINSmove(tmpref27, atspre_g0float2int_float_int(tmp28)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1740(line=65, offs=5) -- 1753(line=65, offs=18)
+*/
+ATSINSmove(tmpret26, witness_0(tmpref27)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1666(line=62, offs=3) -- 1760(line=66, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret26) ;
+} /* end of [sqrt_int_17] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1796(line=69, offs=4) -- 2381(line=92, offs=10)
+*/
+/*
+local: sqrt_int_17$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+is_prime_20(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret30, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp51, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1796(line=69, offs=4) -- 2381(line=92, offs=10)
+*/
+ATSINSflab(__patsflab_is_prime_20):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1832(line=70, offs=3) -- 2381(line=92, offs=10)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1849(line=71, offs=7) -- 1850(line=71, offs=8)
+*/
+ATSINSlab(__atstmplab3):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1805(line=69, offs=13) -- 1806(line=69, offs=14)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab5) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1850(line=71, offs=8) -- 1850(line=71, offs=8)
+*/
+ATSINSlab(__atstmplab4):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1854(line=71, offs=12) -- 1859(line=71, offs=17)
+*/
+ATSINSmove(tmpret30, ATSPMVbool_false()) ;
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1867(line=72, offs=8) -- 1867(line=72, offs=8)
+*/
+ATSINSlab(__atstmplab5):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1892(line=74, offs=9) -- 2371(line=91, offs=12)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2347(line=90, offs=19) -- 2357(line=90, offs=29)
+*/
+ATSINSmove(tmp51, sqrt_int_17(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2339(line=90, offs=11) -- 2359(line=90, offs=31)
+*/
+ATSINSmove(tmpret30, loop_21(arg0, ATSPMVi0nt(2), tmp51)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1892(line=74, offs=9) -- 2371(line=91, offs=12)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+ATSfunbody_end()
+ATSreturn(tmpret30) ;
+} /* end of [is_prime_20] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1910(line=75, offs=15) -- 2317(line=88, offs=21)
+*/
+/*
+local: loop_21$0(level=1)
+global: loop_21$0(level=1)
+local: k$5106(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+global: k$5106(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+*/
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+loop_21(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(tmpret31, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp32, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp37, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp40, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp41, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp42, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp47, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp50, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+/*
+emit_funent_fnxdeclst:
+*/
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1910(line=75, offs=15) -- 2317(line=88, offs=21)
+*/
+ATSINSflab(__patsflab_loop_21):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2004(line=76, offs=16) -- 2013(line=76, offs=25)
+*/
+ATSINSmove(tmp32, ATSLIB_056_prelude__lt_g1int_int__22__1(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2001(line=76, offs=13) -- 2317(line=88, offs=21)
+*/
+ATSif(
+tmp32
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2036(line=77, offs=18) -- 2041(line=77, offs=23)
+*/
+ATSINSmove(tmp40, atspre_g0int_mod_int(env0, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2036(line=77, offs=18) -- 2045(line=77, offs=27)
+*/
+ATSINSmove(tmp37, ATSLIB_056_prelude__eq_g0int_int__12__2(tmp40, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2033(line=77, offs=15) -- 2126(line=80, offs=35)
+*/
+ATSif(
+tmp37
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2067(line=78, offs=17) -- 2072(line=78, offs=22)
+*/
+ATSINSmove(tmpret31, ATSPMVbool_false()) ;
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2113(line=80, offs=22) -- 2118(line=80, offs=27)
+*/
+ATSINSmove(tmp41, atspre_g1int_add_int(arg0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2108(line=80, offs=17) -- 2126(line=80, offs=35)
+*/
+ATStailcal_beg()
+ATSINSmove_tlcal(apy0, tmp41) ;
+ATSINSmove_tlcal(apy1, arg1) ;
+ATSINSargmove_tlcal(arg0, apy0) ;
+ATSINSargmove_tlcal(arg1, apy1) ;
+ATSINSfgoto(__patsflab_loop_21) ;
+ATStailcal_end()
+
+} /* ATSendif */
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2161(line=82, offs=18) -- 2170(line=82, offs=27)
+*/
+ATSINSmove(tmp42, ATSLIB_056_prelude__eq_g1int_int__26__1(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2158(line=82, offs=15) -- 2317(line=88, offs=21)
+*/
+ATSif(
+tmp42
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2195(line=83, offs=20) -- 2200(line=83, offs=25)
+*/
+ATSINSmove(tmp50, atspre_g0int_mod_int(env0, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2195(line=83, offs=20) -- 2204(line=83, offs=29)
+*/
+ATSINSmove(tmp47, ATSLIB_056_prelude__eq_g0int_int__12__3(tmp50, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2192(line=83, offs=17) -- 2277(line=86, offs=23)
+*/
+ATSif(
+tmp47
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2228(line=84, offs=19) -- 2233(line=84, offs=24)
+*/
+ATSINSmove(tmpret31, ATSPMVbool_false()) ;
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2273(line=86, offs=19) -- 2277(line=86, offs=23)
+*/
+ATSINSmove(tmpret31, ATSPMVbool_true()) ;
+} /* ATSendif */
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2313(line=88, offs=17) -- 2317(line=88, offs=21)
+*/
+ATSINSmove(tmpret31, ATSPMVbool_true()) ;
+} /* ATSendif */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret31) ;
+/*
+emit_funent_fnxbodylst:
+*/
+} /* end of [loop_21] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
+*/
+/*
+local: 
+global: lt_g1int_int$22$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = tk(4697)
+tmparg = S2Evar(tk(4697))
+tmpsub = None()
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__lt_g1int_int__22(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret33, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp34, atstkind_t0ype(atstyvar_type(tk))) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
+*/
+ATSINSmove(tmp34, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4697))>)(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
+*/
+ATSINSmove(tmpret33, PMVtmpltcst(g1int_lt<S2Evar(tk(4697))>)(arg0, tmp34)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret33) ;
+} /* end of [ATSLIB_056_prelude__lt_g1int_int__22] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
+*/
+/*
+local: 
+global: lt_g1int_int$22$1(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4697)
+tmparg = S2Evar(tk(4697))
+tmpsub = Some(tk(4697) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__lt_g1int_int__22__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret33__1, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp34__1, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
+*/
+ATSINSmove(tmp34__1, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
+*/
+ATSINSmove(tmpret33__1, atspre_g1int_lt_int(arg0, tmp34__1)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret33__1) ;
+} /* end of [ATSLIB_056_prelude__lt_g1int_int__22__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$2(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__2(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__2, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__2, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__2, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__2, atspre_g0int_eq_int(arg0, tmp19__2)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__2) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__2] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12838(line=668, offs=3) -- 12877(line=668, offs=42)
+*/
+/*
+local: 
+global: eq_g1int_int$26$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = tk(4709)
+tmparg = S2Evar(tk(4709))
+tmpsub = None()
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g1int_int__26(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret43, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp44, atstkind_t0ype(atstyvar_type(tk))) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12864(line=668, offs=29) -- 12875(line=668, offs=40)
+*/
+ATSINSmove(tmp44, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4709))>)(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12847(line=668, offs=12) -- 12877(line=668, offs=42)
+*/
+ATSINSmove(tmpret43, PMVtmpltcst(g1int_eq<S2Evar(tk(4709))>)(arg0, tmp44)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret43) ;
+} /* end of [ATSLIB_056_prelude__eq_g1int_int__26] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12838(line=668, offs=3) -- 12877(line=668, offs=42)
+*/
+/*
+local: 
+global: eq_g1int_int$26$1(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4709)
+tmparg = S2Evar(tk(4709))
+tmpsub = Some(tk(4709) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g1int_int__26__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret43__1, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp44__1, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12864(line=668, offs=29) -- 12875(line=668, offs=40)
+*/
+ATSINSmove(tmp44__1, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12847(line=668, offs=12) -- 12877(line=668, offs=42)
+*/
+ATSINSmove(tmpret43__1, atspre_g1int_eq_int(arg0, tmp44__1)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret43__1) ;
+} /* end of [ATSLIB_056_prelude__eq_g1int_int__26__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$3(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__3(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__3, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__3, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__3, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__3, atspre_g0int_eq_int(arg0, tmp19__3)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__3) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__3] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 306(line=12, offs=4) -- 354(line=13, offs=12)
+*/
+/*
+local: 
+global: divides_30$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+divides_30(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret52, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp55, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 306(line=12, offs=4) -- 354(line=13, offs=12)
+*/
+ATSINSflab(__patsflab_divides_30):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 345(line=13, offs=3) -- 350(line=13, offs=8)
+*/
+ATSINSmove(tmp55, atspre_g0int_mod_int(arg1, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 345(line=13, offs=3) -- 354(line=13, offs=12)
+*/
+ATSINSmove(tmpret52, ATSLIB_056_prelude__eq_g0int_int__12__4(tmp55, ATSPMVi0nt(0))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret52) ;
+} /* end of [divides_30] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$4(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__4(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__4, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__4, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__4, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__4, atspre_g0int_eq_int(arg0, tmp19__4)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__4) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__4] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 360(line=15, offs=5) -- 471(line=19, offs=6)
+*/
+/*
+local: witness_0$0(level=0), gcd_32$0(level=0)
+global: witness_0$0(level=0), gcd_32$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+gcd_32(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(tmpret56, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp57, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp60, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp61, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+/*
+emit_funent_fnxdeclst:
+*/
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 360(line=15, offs=5) -- 471(line=19, offs=6)
+*/
+ATSINSflab(__patsflab_gcd_32):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 421(line=16, offs=6) -- 426(line=16, offs=11)
+*/
+ATSINSmove(tmp57, ATSLIB_056_prelude__gt_g1int_int__6__2(arg1, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 418(line=16, offs=3) -- 471(line=19, offs=6)
+*/
+ATSif(
+tmp57
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 451(line=17, offs=20) -- 456(line=17, offs=25)
+*/
+ATSINSmove(tmp61, atspre_g0int_mod_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 443(line=17, offs=12) -- 457(line=17, offs=26)
+*/
+ATSINSmove(tmp60, witness_0(tmp61)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 436(line=17, offs=5) -- 458(line=17, offs=27)
+*/
+ATStailcal_beg()
+ATSINSmove_tlcal(apy0, arg1) ;
+ATSINSmove_tlcal(apy1, tmp60) ;
+ATSINSargmove_tlcal(arg0, apy0) ;
+ATSINSargmove_tlcal(arg1, apy1) ;
+ATSINSfgoto(__patsflab_gcd_32) ;
+ATStailcal_end()
+
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 470(line=19, offs=5) -- 471(line=19, offs=6)
+*/
+ATSINSmove(tmpret56, arg0) ;
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret56) ;
+/*
+emit_funent_fnxbodylst:
+*/
+} /* end of [gcd_32] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
+*/
+/*
+local: 
+global: gt_g1int_int$6$2(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4703)
+tmparg = S2Evar(tk(4703))
+tmpsub = Some(tk(4703) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6__2(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret11__2, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp12__2, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
+*/
+ATSINSmove(tmp12__2, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
+*/
+ATSINSmove(tmpret11__2, atspre_g1int_gt_int(arg0, tmp12__2)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret11__2) ;
+} /* end of [ATSLIB_056_prelude__gt_g1int_int__6__2] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 476(line=21, offs=4) -- 553(line=22, offs=22)
+*/
+/*
+local: gcd_32$0(level=0)
+global: witness_0$0(level=0), gcd_32$0(level=0), lcm_34$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+lcm_34(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret62, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp63, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp64, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 476(line=21, offs=4) -- 553(line=22, offs=22)
+*/
+ATSINSflab(__patsflab_lcm_34):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 539(line=22, offs=8) -- 548(line=22, offs=17)
+*/
+ATSINSmove(tmp64, gcd_32(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 535(line=22, offs=4) -- 548(line=22, offs=17)
+*/
+ATSINSmove(tmp63, atspre_g0int_div_int(arg0, tmp64)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 534(line=22, offs=3) -- 553(line=22, offs=22)
+*/
+ATSINSmove(tmpret62, atspre_g0int_mul_int(tmp63, arg1)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret62) ;
+} /* end of [lcm_34] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 596(line=25, offs=4) -- 1613(line=57, offs=8)
+*/
+/*
+local: sqrt_int_17$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), divisors_36$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+divisors_36(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret65, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 596(line=25, offs=4) -- 1613(line=57, offs=8)
+*/
+ATSINSflab(__patsflab_divisors_36):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 641(line=26, offs=3) -- 1613(line=57, offs=8)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 658(line=27, offs=7) -- 659(line=27, offs=8)
+*/
+ATSINSlab(__atstmplab6):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 605(line=25, offs=13) -- 606(line=25, offs=14)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab8) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 659(line=27, offs=8) -- 659(line=27, offs=8)
+*/
+ATSINSlab(__atstmplab7):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 663(line=27, offs=12) -- 713(line=27, offs=62)
+*/
+ATSINSmove_ldelay(tmpret65, atstype_boxed, ATSPMVcfunlab(1, __patsfun_37, ())) ;
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 721(line=28, offs=8) -- 721(line=28, offs=8)
+*/
+ATSINSlab(__atstmplab8):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 725(line=28, offs=12) -- 1613(line=57, offs=8)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1595(line=56, offs=7) -- 1605(line=56, offs=17)
+*/
+ATSINSmove(tmpret65, loop_39(arg0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 725(line=28, offs=12) -- 1613(line=57, offs=8)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+ATSfunbody_end()
+ATSreturn(tmpret65) ;
+} /* end of [divisors_36] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 663(line=27, offs=12) -- 713(line=27, offs=62)
+*/
+/*
+local: 
+global: __patsfun_37$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_37(atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret66, atstype_boxed) ;
+ATStmpdec(tmp67, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 663(line=27, offs=12) -- 713(line=27, offs=62)
+*/
+ATSINSflab(__patsflab___patsfun_37):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 663(line=27, offs=12) -- 713(line=27, offs=62)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 689(line=27, offs=38) -- 711(line=27, offs=60)
+*/
+ATSINSmove_ldelay(tmp67, atstype_boxed, ATSPMVcfunlab(1, __patsfun_38, ())) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 671(line=27, offs=20) -- 712(line=27, offs=61)
+*/
+
+/*
+#LINCONSTATUS==0
+*/
+ATSINSmove_con1_beg()
+ATSINSmove_con1_new(tmpret66, postiats_tysum_1) ;
+#if(0)
+ATSINSstore_con1_tag(tmpret66, 1) ;
+#endif
+ATSINSstore_con1_ofs(tmpret66, postiats_tysum_1, atslab__0, ATSPMVi0nt(1)) ;
+ATSINSstore_con1_ofs(tmpret66, postiats_tysum_1, atslab__1, tmp67) ;
+ATSINSmove_con1_end()
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret66) ;
+} /* end of [__patsfun_37] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 689(line=27, offs=38) -- 711(line=27, offs=60)
+*/
+/*
+local: 
+global: __patsfun_38$0(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_38(atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret68, atstype_boxed) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 689(line=27, offs=38) -- 711(line=27, offs=60)
+*/
+ATSINSflab(__patsflab___patsfun_38):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 689(line=27, offs=38) -- 711(line=27, offs=60)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 697(line=27, offs=46) -- 710(line=27, offs=59)
+*/
+
+ATSINSmove_nil(tmpret68) ;
+
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret68) ;
+} /* end of [__patsfun_38] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 739(line=29, offs=11) -- 1581(line=54, offs=29)
+*/
+/*
+local: sqrt_int_17$0(level=0), loop_39$0(level=1)
+global: sqrt_int_17$0(level=0), loop_39$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+loop_39(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(tmpret69, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp70, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp75, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp76, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp79, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp80, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp85, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref86, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp96, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp99, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref100, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp106, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 739(line=29, offs=11) -- 1581(line=54, offs=29)
+*/
+ATSINSflab(__patsflab_loop_39):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 847(line=30, offs=19) -- 857(line=30, offs=29)
+*/
+ATSINSmove(tmp75, sqrt_int_17(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 840(line=30, offs=12) -- 857(line=30, offs=29)
+*/
+ATSINSmove(tmp70, ATSLIB_056_prelude__gte_g1int_int__40__1(arg1, tmp75)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 837(line=30, offs=9) -- 1581(line=54, offs=29)
+*/
+ATSif(
+tmp70
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 877(line=31, offs=14) -- 884(line=31, offs=21)
+*/
+ATSINSmove(tmp79, atspre_g0int_mod_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 877(line=31, offs=14) -- 888(line=31, offs=25)
+*/
+ATSINSmove(tmp76, ATSLIB_056_prelude__eq_g0int_int__12__5(tmp79, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 874(line=31, offs=11) -- 1321(line=45, offs=35)
+*/
+ATSif(
+tmp76
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 909(line=32, offs=16) -- 916(line=32, offs=23)
+*/
+ATSINSmove(tmp85, atspre_g1int_div_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 909(line=32, offs=16) -- 923(line=32, offs=30)
+*/
+ATSINSmove(tmp80, ATSLIB_056_prelude__neq_g1int_int__44__1(tmp85, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 906(line=32, offs=13) -- 1271(line=43, offs=18)
+*/
+ATSif(
+tmp80
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 943(line=33, offs=15) -- 1115(line=37, offs=18)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 967(line=34, offs=21) -- 968(line=34, offs=22)
+*/
+/*
+ATSINStmpdec(tmpref86) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 976(line=34, offs=30) -- 983(line=34, offs=37)
+*/
+ATSINSmove(tmpref86, atspre_g1int_div_int(arg0, arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1017(line=36, offs=17) -- 1097(line=36, offs=97)
+*/
+ATSINSmove_ldelay(tmpret69, atstype_boxed, ATSPMVcfunlab(1, __patsfun_48, (arg1, ATSPMVptrof(tmpref86)))) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 943(line=33, offs=15) -- 1115(line=37, offs=18)
+*/
+/*
+INSletpop()
+*/
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1201(line=42, offs=17) -- 1253(line=42, offs=69)
+*/
+ATSINSmove_ldelay(tmpret69, atstype_boxed, ATSPMVcfunlab(1, __patsfun_51, (arg1))) ;
+} /* ATSendif */
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1299(line=45, offs=13) -- 1321(line=45, offs=35)
+*/
+ATSINSmove_ldelay(tmpret69, atstype_boxed, ATSPMVcfunlab(1, __patsfun_53, ())) ;
+} /* ATSendif */
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1348(line=47, offs=14) -- 1355(line=47, offs=21)
+*/
+ATSINSmove(tmp99, atspre_g0int_mod_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1348(line=47, offs=14) -- 1359(line=47, offs=25)
+*/
+ATSINSmove(tmp96, ATSLIB_056_prelude__eq_g0int_int__12__6(tmp99, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1345(line=47, offs=11) -- 1581(line=54, offs=29)
+*/
+ATSif(
+tmp96
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1377(line=48, offs=13) -- 1537(line=52, offs=16)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1399(line=49, offs=19) -- 1400(line=49, offs=20)
+*/
+/*
+ATSINStmpdec(tmpref100) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1408(line=49, offs=28) -- 1415(line=49, offs=35)
+*/
+ATSINSmove(tmpref100, atspre_g1int_div_int(arg0, arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1445(line=51, offs=15) -- 1521(line=51, offs=91)
+*/
+ATSINSmove_ldelay(tmpret69, atstype_boxed, ATSPMVcfunlab(1, __patsfun_55, (arg0, arg1, ATSPMVptrof(tmpref100)))) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1377(line=48, offs=13) -- 1537(line=52, offs=16)
+*/
+/*
+INSletpop()
+*/
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1573(line=54, offs=21) -- 1580(line=54, offs=28)
+*/
+ATSINSmove(tmp106, atspre_g1int_add_int(arg1, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1565(line=54, offs=13) -- 1581(line=54, offs=29)
+*/
+ATStailcal_beg()
+ATSINSmove_tlcal(apy0, arg0) ;
+ATSINSmove_tlcal(apy1, tmp106) ;
+ATSINSargmove_tlcal(arg0, apy0) ;
+ATSINSargmove_tlcal(arg1, apy1) ;
+ATSINSfgoto(__patsflab_loop_39) ;
+ATStailcal_end()
+
+} /* ATSendif */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret69) ;
+} /* end of [loop_39] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12757(line=663, offs=3) -- 12797(line=663, offs=43)
+*/
+/*
+local: 
+global: gte_g1int_int$40$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = tk(4706)
+tmparg = S2Evar(tk(4706))
+tmpsub = None()
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gte_g1int_int__40(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret71, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp72, atstkind_t0ype(atstyvar_type(tk))) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12741(line=662, offs=1) -- 12797(line=663, offs=43)
+*/
+ATSINSflab(__patsflab_gte_g1int_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12784(line=663, offs=30) -- 12795(line=663, offs=41)
+*/
+ATSINSmove(tmp72, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4706))>)(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12766(line=663, offs=12) -- 12797(line=663, offs=43)
+*/
+ATSINSmove(tmpret71, PMVtmpltcst(g1int_gte<S2Evar(tk(4706))>)(arg0, tmp72)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret71) ;
+} /* end of [ATSLIB_056_prelude__gte_g1int_int__40] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12757(line=663, offs=3) -- 12797(line=663, offs=43)
+*/
+/*
+local: 
+global: gte_g1int_int$40$1(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4706)
+tmparg = S2Evar(tk(4706))
+tmpsub = Some(tk(4706) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gte_g1int_int__40__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret71__1, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp72__1, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12741(line=662, offs=1) -- 12797(line=663, offs=43)
+*/
+ATSINSflab(__patsflab_gte_g1int_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12784(line=663, offs=30) -- 12795(line=663, offs=41)
+*/
+ATSINSmove(tmp72__1, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12766(line=663, offs=12) -- 12797(line=663, offs=43)
+*/
+ATSINSmove(tmpret71__1, atspre_g1int_gte_int(arg0, tmp72__1)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret71__1) ;
+} /* end of [ATSLIB_056_prelude__gte_g1int_int__40__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$5(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__5(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__5, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__5, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__5, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__5, atspre_g0int_eq_int(arg0, tmp19__5)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__5) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__5] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12916(line=672, offs=3) -- 12956(line=672, offs=43)
+*/
+/*
+local: 
+global: neq_g1int_int$44$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = tk(4712)
+tmparg = S2Evar(tk(4712))
+tmpsub = None()
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__neq_g1int_int__44(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret81, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp82, atstkind_t0ype(atstyvar_type(tk))) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12900(line=671, offs=1) -- 12956(line=672, offs=43)
+*/
+ATSINSflab(__patsflab_neq_g1int_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12943(line=672, offs=30) -- 12954(line=672, offs=41)
+*/
+ATSINSmove(tmp82, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4712))>)(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12925(line=672, offs=12) -- 12956(line=672, offs=43)
+*/
+ATSINSmove(tmpret81, PMVtmpltcst(g1int_neq<S2Evar(tk(4712))>)(arg0, tmp82)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret81) ;
+} /* end of [ATSLIB_056_prelude__neq_g1int_int__44] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12916(line=672, offs=3) -- 12956(line=672, offs=43)
+*/
+/*
+local: 
+global: neq_g1int_int$44$1(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4712)
+tmparg = S2Evar(tk(4712))
+tmpsub = Some(tk(4712) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__neq_g1int_int__44__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret81__1, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp82__1, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12900(line=671, offs=1) -- 12956(line=672, offs=43)
+*/
+ATSINSflab(__patsflab_neq_g1int_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12943(line=672, offs=30) -- 12954(line=672, offs=41)
+*/
+ATSINSmove(tmp82__1, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12925(line=672, offs=12) -- 12956(line=672, offs=43)
+*/
+ATSINSmove(tmpret81__1, atspre_g1int_neq_int(arg0, tmp82__1)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret81__1) ;
+} /* end of [ATSLIB_056_prelude__neq_g1int_int__44__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1017(line=36, offs=17) -- 1097(line=36, offs=97)
+*/
+/*
+local: 
+global: __patsfun_48$0(level=2)
+local: acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), x$5124(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
+global: acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), x$5124(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_48(atstkind_t0ype(atstype_int) env0, atstkind_type(atstype_ptrk) env1, atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret87, atstype_boxed) ;
+ATStmpdec(tmp88, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1017(line=36, offs=17) -- 1097(line=36, offs=97)
+*/
+ATSINSflab(__patsflab___patsfun_48):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1017(line=36, offs=17) -- 1097(line=36, offs=97)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1045(line=36, offs=45) -- 1095(line=36, offs=95)
+*/
+ATSINSmove_ldelay(tmp88, atstype_boxed, ATSPMVcfunlab(1, __patsfun_49, (env1))) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1025(line=36, offs=25) -- 1096(line=36, offs=96)
+*/
+
+/*
+#LINCONSTATUS==0
+*/
+ATSINSmove_con1_beg()
+ATSINSmove_con1_new(tmpret87, postiats_tysum_1) ;
+#if(0)
+ATSINSstore_con1_tag(tmpret87, 1) ;
+#endif
+ATSINSstore_con1_ofs(tmpret87, postiats_tysum_1, atslab__0, env0) ;
+ATSINSstore_con1_ofs(tmpret87, postiats_tysum_1, atslab__1, tmp88) ;
+ATSINSmove_con1_end()
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret87) ;
+} /* end of [__patsfun_48] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1045(line=36, offs=45) -- 1095(line=36, offs=95)
+*/
+/*
+local: 
+global: __patsfun_49$0(level=3)
+local: x$5124(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
+global: x$5124(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_49(atstkind_type(atstype_ptrk) env0, atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret89, atstype_boxed) ;
+ATStmpdec(tmp90, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1045(line=36, offs=45) -- 1095(line=36, offs=95)
+*/
+ATSINSflab(__patsflab___patsfun_49):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1045(line=36, offs=45) -- 1095(line=36, offs=95)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1071(line=36, offs=71) -- 1093(line=36, offs=93)
+*/
+ATSINSmove_ldelay(tmp90, atstype_boxed, ATSPMVcfunlab(1, __patsfun_50, ())) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1053(line=36, offs=53) -- 1094(line=36, offs=94)
+*/
+
+/*
+#LINCONSTATUS==0
+*/
+ATSINSmove_con1_beg()
+ATSINSmove_con1_new(tmpret89, postiats_tysum_1) ;
+#if(0)
+ATSINSstore_con1_tag(tmpret89, 1) ;
+#endif
+ATSINSstore_con1_ofs(tmpret89, postiats_tysum_1, atslab__0, ATSderef(env0, atstkind_t0ype(atstype_int))) ;
+ATSINSstore_con1_ofs(tmpret89, postiats_tysum_1, atslab__1, tmp90) ;
+ATSINSmove_con1_end()
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret89) ;
+} /* end of [__patsfun_49] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1071(line=36, offs=71) -- 1093(line=36, offs=93)
+*/
+/*
+local: 
+global: __patsfun_50$0(level=4)
+local: 
+global: 
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_50(atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret91, atstype_boxed) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1071(line=36, offs=71) -- 1093(line=36, offs=93)
+*/
+ATSINSflab(__patsflab___patsfun_50):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1071(line=36, offs=71) -- 1093(line=36, offs=93)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1079(line=36, offs=79) -- 1092(line=36, offs=92)
+*/
+
+ATSINSmove_nil(tmpret91) ;
+
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret91) ;
+} /* end of [__patsfun_50] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1201(line=42, offs=17) -- 1253(line=42, offs=69)
+*/
+/*
+local: 
+global: __patsfun_51$0(level=2)
+local: acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+global: acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_51(atstkind_t0ype(atstype_int) env0, atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret92, atstype_boxed) ;
+ATStmpdec(tmp93, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1201(line=42, offs=17) -- 1253(line=42, offs=69)
+*/
+ATSINSflab(__patsflab___patsfun_51):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1201(line=42, offs=17) -- 1253(line=42, offs=69)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1229(line=42, offs=45) -- 1251(line=42, offs=67)
+*/
+ATSINSmove_ldelay(tmp93, atstype_boxed, ATSPMVcfunlab(1, __patsfun_52, ())) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1209(line=42, offs=25) -- 1252(line=42, offs=68)
+*/
+
+/*
+#LINCONSTATUS==0
+*/
+ATSINSmove_con1_beg()
+ATSINSmove_con1_new(tmpret92, postiats_tysum_1) ;
+#if(0)
+ATSINSstore_con1_tag(tmpret92, 1) ;
+#endif
+ATSINSstore_con1_ofs(tmpret92, postiats_tysum_1, atslab__0, env0) ;
+ATSINSstore_con1_ofs(tmpret92, postiats_tysum_1, atslab__1, tmp93) ;
+ATSINSmove_con1_end()
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret92) ;
+} /* end of [__patsfun_51] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1229(line=42, offs=45) -- 1251(line=42, offs=67)
+*/
+/*
+local: 
+global: __patsfun_52$0(level=3)
+local: 
+global: 
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_52(atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret94, atstype_boxed) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1229(line=42, offs=45) -- 1251(line=42, offs=67)
+*/
+ATSINSflab(__patsflab___patsfun_52):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1229(line=42, offs=45) -- 1251(line=42, offs=67)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1237(line=42, offs=53) -- 1250(line=42, offs=66)
+*/
+
+ATSINSmove_nil(tmpret94) ;
+
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret94) ;
+} /* end of [__patsfun_52] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1299(line=45, offs=13) -- 1321(line=45, offs=35)
+*/
+/*
+local: 
+global: __patsfun_53$0(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_53(atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret95, atstype_boxed) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1299(line=45, offs=13) -- 1321(line=45, offs=35)
+*/
+ATSINSflab(__patsflab___patsfun_53):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1299(line=45, offs=13) -- 1321(line=45, offs=35)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1307(line=45, offs=21) -- 1320(line=45, offs=34)
+*/
+
+ATSINSmove_nil(tmpret95) ;
+
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret95) ;
+} /* end of [__patsfun_53] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$6(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__6(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__6, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__6, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__6, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__6, atspre_g0int_eq_int(arg0, tmp19__6)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__6) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__6] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1445(line=51, offs=15) -- 1521(line=51, offs=91)
+*/
+/*
+local: loop_39$0(level=1)
+global: loop_39$0(level=1), __patsfun_55$0(level=2)
+local: n$5122(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), x$5125(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
+global: n$5122(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), x$5125(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_55(atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstkind_type(atstype_ptrk) env2, atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret101, atstype_boxed) ;
+ATStmpdec(tmp102, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1445(line=51, offs=15) -- 1521(line=51, offs=91)
+*/
+ATSINSflab(__patsflab___patsfun_55):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1445(line=51, offs=15) -- 1521(line=51, offs=91)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1473(line=51, offs=43) -- 1519(line=51, offs=89)
+*/
+ATSINSmove_ldelay(tmp102, atstype_boxed, ATSPMVcfunlab(1, __patsfun_56, (env0, env1, env2))) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1453(line=51, offs=23) -- 1520(line=51, offs=90)
+*/
+
+/*
+#LINCONSTATUS==0
+*/
+ATSINSmove_con1_beg()
+ATSINSmove_con1_new(tmpret101, postiats_tysum_1) ;
+#if(0)
+ATSINSstore_con1_tag(tmpret101, 1) ;
+#endif
+ATSINSstore_con1_ofs(tmpret101, postiats_tysum_1, atslab__0, env1) ;
+ATSINSstore_con1_ofs(tmpret101, postiats_tysum_1, atslab__1, tmp102) ;
+ATSINSmove_con1_end()
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret101) ;
+} /* end of [__patsfun_55] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1473(line=51, offs=43) -- 1519(line=51, offs=89)
+*/
+/*
+local: loop_39$0(level=1)
+global: loop_39$0(level=1), __patsfun_56$0(level=3)
+local: n$5122(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), x$5125(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
+global: n$5122(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), acc$5123(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), x$5125(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk))))
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_56(atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstkind_type(atstype_ptrk) env2, atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret103, atstype_boxed) ;
+ATStmpdec(tmp104, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp105, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1473(line=51, offs=43) -- 1519(line=51, offs=89)
+*/
+ATSINSflab(__patsflab___patsfun_56):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1473(line=51, offs=43) -- 1519(line=51, offs=89)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1508(line=51, offs=78) -- 1515(line=51, offs=85)
+*/
+ATSINSmove(tmp105, atspre_g1int_add_int(env1, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1500(line=51, offs=70) -- 1516(line=51, offs=86)
+*/
+ATSINSmove(tmp104, loop_39(env0, tmp105)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1481(line=51, offs=51) -- 1518(line=51, offs=88)
+*/
+
+/*
+#LINCONSTATUS==0
+*/
+ATSINSmove_con1_beg()
+ATSINSmove_con1_new(tmpret103, postiats_tysum_1) ;
+#if(0)
+ATSINSstore_con1_tag(tmpret103, 1) ;
+#endif
+ATSINSstore_con1_ofs(tmpret103, postiats_tysum_1, atslab__0, ATSderef(env2, atstkind_t0ype(atstype_int))) ;
+ATSINSstore_con1_ofs(tmpret103, postiats_tysum_1, atslab__1, tmp104) ;
+ATSINSmove_con1_end()
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret103) ;
+} /* end of [__patsfun_56] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1650(line=60, offs=4) -- 1769(line=61, offs=71)
+*/
+/*
+local: is_prime_20$0(level=0), divisors_36$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), divisors_36$0(level=0), prime_divisors_57$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+prime_divisors_57(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret107, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp132, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1650(line=60, offs=4) -- 1769(line=61, offs=71)
+*/
+ATSINSflab(__patsflab_prime_divisors_57):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1725(line=61, offs=27) -- 1735(line=61, offs=37)
+*/
+ATSINSmove(tmp132, divisors_36(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1701(line=61, offs=3) -- 1769(line=61, offs=71)
+*/
+ATSINSmove(tmpret107, ATSLIB_056_prelude__stream_vt_filter_cloptr__58__1(tmp132, ATSPMVcfunlab(1, __patsfun_64, ()))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret107) ;
+} /* end of [prime_divisors_57] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 11373(line=684, offs=1) -- 12248(line=743, offs=2)
+*/
+/*
+local: 
+global: stream_vt_filter_cloptr$58$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = a(8764)
+tmparg = S2Evar(a(8764))
+tmpsub = None()
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__stream_vt_filter_cloptr__58(atstkind_type(atstype_ptrk) arg0, atstype_cloptr arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret108, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11349(line=683, offs=1) -- 12248(line=743, offs=2)
+*/
+ATSINSflab(__patsflab_stream_vt_filter_cloptr):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11390(line=686, offs=5) -- 12248(line=743, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11390(line=686, offs=5) -- 11407(line=686, offs=22)
+*/
+ATSINSmove(tmpret108, ATSfunclo_fun(PMVd2vfunlab(d2v=auxmain$4303(1), flab=auxmain_59$0(level=1)), (atstkind_type(atstype_ptrk), atstype_cloptr), atstkind_type(atstype_ptrk))(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11390(line=686, offs=5) -- 12248(line=743, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret108) ;
+} /* end of [ATSLIB_056_prelude__stream_vt_filter_cloptr__58] */
+#endif // end of [TEMPLATE]
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 11423(line=690, offs=1) -- 12222(line=741, offs=2)
+*/
+/*
+local: auxmain_59$0(level=1)
+global: auxmain_59$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+auxmain_59__59(atstkind_type(atstype_ptrk) arg0, atstype_cloptr arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret109, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11423(line=690, offs=1) -- 12222(line=741, offs=2)
+*/
+ATSINSflab(__patsflab_auxmain_59):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11503(line=696, offs=20) -- 12222(line=741, offs=2)
+*/
+ATSINSmove_ldelay(tmpret109, atstype_boxed, ATSPMVcfunlab(1, __patsfun_60__60, (arg0, arg1))) ;
+ATSfunbody_end()
+ATSreturn(tmpret109) ;
+} /* end of [auxmain_59__59] */
+#endif // end of [TEMPLATE]
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 11503(line=696, offs=20) -- 12222(line=741, offs=2)
+*/
+/*
+local: auxmain_59$0(level=1)
+global: auxmain_59$0(level=1), __patsfun_60$0(level=2)
+local: xs$4304(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk)))), pred$4305(2)(HSEfun(CLO(1); HSErefarg(1; HSEtyvar(a(8764))); HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_bool)))))
+global: xs$4304(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk)))), pred$4305(2)(HSEfun(CLO(1); HSErefarg(1; HSEtyvar(a(8764))); HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_bool)))))
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_60__60(atstkind_type(atstype_ptrk) env0, atstype_cloptr env1, atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret110, atstype_boxed) ;
+ATStmpdec(tmp111, atstype_boxed) ;
+// ATStmpdec_void(tmp114) ;
+ATStmpdec(tmp115, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp116, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp117, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp118, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp119) ;
+// ATStmpdec_void(tmp120) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11503(line=696, offs=20) -- 12222(line=741, offs=2)
+*/
+ATSINSflab(__patsflab___patsfun_60):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11503(line=696, offs=20) -- 12222(line=741, offs=2)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11516(line=699, offs=1) -- 12138(line=732, offs=4)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11535(line=700, offs=16) -- 11538(line=700, offs=19)
+*/
+ATSINSmove_llazyeval(tmp111, atstype_boxed, env0) ;
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11545(line=703, offs=1) -- 12104(line=730, offs=6)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11563(line=704, offs=3) -- 11589(line=705, offs=12)
+*/
+ATSINSlab(__atstmplab9):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11535(line=700, offs=16) -- 11538(line=700, offs=19)
+*/
+ATSifthen(ATSCKptriscons(tmp111)) { ATSINSgoto(__atstmplab12) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11589(line=705, offs=12) -- 11589(line=705, offs=12)
+*/
+ATSINSlab(__atstmplab10):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11593(line=705, offs=16) -- 11719(line=712, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11614(line=707, offs=5) -- 11662(line=708, offs=37)
+*/
+ATSINSmove_void(tmp114, atspre_cloptr_free(ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), env1))) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11692(line=711, offs=5) -- 11705(line=711, offs=18)
+*/
+
+ATSINSmove_nil(tmpret110) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11593(line=705, offs=16) -- 11719(line=712, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11748(line=713, offs=3) -- 11776(line=714, offs=13)
+*/
+ATSINSlab(__atstmplab11):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11535(line=700, offs=16) -- 11538(line=700, offs=19)
+*/
+#if(0)
+ATSifthen(ATSCKptrisnull(tmp111)) { ATSINSdeadcode_fail() ; } ;
+#endif
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11776(line=714, offs=13) -- 11776(line=714, offs=13)
+*/
+ATSINSlab(__atstmplab12):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11780(line=714, offs=17) -- 12104(line=730, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11799(line=715, offs=16) -- 11805(line=715, offs=22)
+*/
+ATSINSmove(tmp115, ATSfunclo_clo(ATSPMVrefarg0(env1), (atstype_cloptr, atsrefarg1_type(atstyvar_type(a))), atstkind_t0ype(atstype_bool))(ATSPMVrefarg0(env1), ATSPMVrefarg1(ATSPMVptrof(ATSSELcon(tmp111, postiats_tysum_2, atslab__0))))) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11816(line=717, offs=5) -- 12062(line=728, offs=10)
+*/
+ATSif(
+tmp115
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11835(line=718, offs=12) -- 11941(line=723, offs=10)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11871(line=720, offs=16) -- 11889(line=720, offs=34)
+*/
+ATSINSmove(tmp116, ATSfunclo_fun(PMVd2vfunlab(d2v=auxmain$4303(1), flab=auxmain_59$0(level=1)), (atstkind_type(atstype_ptrk), atstype_cloptr), atstkind_type(atstype_ptrk))(ATSSELcon(tmp111, postiats_tysum_2, atslab__1), env1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11864(line=720, offs=9) -- 11889(line=720, offs=34)
+*/
+ATSINSstore(ATSSELcon(tmp111, postiats_tysum_2, atslab__1), tmp116) ;
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11925(line=722, offs=27) -- 11931(line=722, offs=33)
+*/
+ATSINSmove(tmpret110, tmp111) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11835(line=718, offs=12) -- 11941(line=723, offs=10)
+*/
+/*
+INSletpop()
+*/
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11970(line=724, offs=12) -- 12062(line=728, offs=10)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11992(line=725, offs=19) -- 11995(line=725, offs=22)
+*/
+ATSINSmove(tmp117, ATSSELcon(tmp111, postiats_tysum_2, atslab__1)) ;
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12013(line=727, offs=9) -- 12028(line=727, offs=24)
+*/
+ATSINSfreecon(tmp111) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12033(line=727, offs=29) -- 12051(line=727, offs=47)
+*/
+ATSINSmove(tmp118, ATSfunclo_fun(PMVd2vfunlab(d2v=auxmain$4303(1), flab=auxmain_59$0(level=1)), (atstkind_type(atstype_ptrk), atstype_cloptr), atstkind_type(atstype_ptrk))(tmp117, env1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12031(line=727, offs=27) -- 12052(line=727, offs=48)
+*/
+ATSINSmove_llazyeval(tmpret110, atstype_boxed, tmp118) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11970(line=724, offs=12) -- 12062(line=728, offs=10)
+*/
+/*
+INSletpop()
+*/
+} /* ATSendif */
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11780(line=714, offs=17) -- 12104(line=730, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11516(line=699, offs=1) -- 12138(line=732, offs=4)
+*/
+/*
+INSletpop()
+*/
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12167(line=737, offs=3) -- 12170(line=737, offs=6)
+*/
+ATSINSmove_void(tmp119, atspre_lazy_vt_free(env0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12174(line=738, offs=3) -- 12215(line=738, offs=44)
+*/
+ATSINSmove_void(tmp120, atspre_cloptr_free(ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), env1))) ;
+
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret110) ;
+} /* end of [__patsfun_60__60] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 11373(line=684, offs=1) -- 12248(line=743, offs=2)
+*/
+/*
+local: 
+global: stream_vt_filter_cloptr$58$1(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(8764)
+tmparg = S2Evar(a(8764))
+tmpsub = Some(a(8764) -> S2Eapp(S2Ecst(g0int_t0ype); S2Eextkind(atstype_int)))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__stream_vt_filter_cloptr__58__1(atstkind_type(atstype_ptrk) arg0, atstype_cloptr arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret108__1, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11349(line=683, offs=1) -- 12248(line=743, offs=2)
+*/
+ATSINSflab(__patsflab_stream_vt_filter_cloptr):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11390(line=686, offs=5) -- 12248(line=743, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11390(line=686, offs=5) -- 11407(line=686, offs=22)
+*/
+ATSINSmove(tmpret108__1, auxmain_59__59__1(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11390(line=686, offs=5) -- 12248(line=743, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret108__1) ;
+} /* end of [ATSLIB_056_prelude__stream_vt_filter_cloptr__58__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 11423(line=690, offs=1) -- 12222(line=741, offs=2)
+*/
+/*
+local: auxmain_59$1(level=2)
+global: auxmain_59$1(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+auxmain_59__59__1(atstkind_type(atstype_ptrk) arg0, atstype_cloptr arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret109__1, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11423(line=690, offs=1) -- 12222(line=741, offs=2)
+*/
+ATSINSflab(__patsflab_auxmain_59):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11503(line=696, offs=20) -- 12222(line=741, offs=2)
+*/
+ATSINSmove_ldelay(tmpret109__1, atstype_boxed, ATSPMVcfunlab(1, __patsfun_60__60__1, (arg0, arg1))) ;
+ATSfunbody_end()
+ATSreturn(tmpret109__1) ;
+} /* end of [auxmain_59__59__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 11503(line=696, offs=20) -- 12222(line=741, offs=2)
+*/
+/*
+local: auxmain_59$1(level=2)
+global: auxmain_59$1(level=2), __patsfun_60$1(level=3)
+local: xs$4304(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk)))), pred$4305(2)(HSEfun(CLO(1); HSErefarg(1; HSEs2exp(S2Eapp(S2Ecst(g0int_t0ype); S2Eextkind(atstype_int)))); HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_bool)))))
+global: xs$4304(2)(HSEapp(HSEcst(atstkind_type); HSEs2exp(S2Eextkind(atstype_ptrk)))), pred$4305(2)(HSEfun(CLO(1); HSErefarg(1; HSEs2exp(S2Eapp(S2Ecst(g0int_t0ype); S2Eextkind(atstype_int)))); HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_bool)))))
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_60__60__1(atstkind_type(atstype_ptrk) env0, atstype_cloptr env1, atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret110__1, atstype_boxed) ;
+ATStmpdec(tmp111__1, atstype_boxed) ;
+// ATStmpdec_void(tmp114__1) ;
+ATStmpdec(tmp115__1, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp116__1, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp117__1, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp118__1, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp119__1) ;
+// ATStmpdec_void(tmp120__1) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11503(line=696, offs=20) -- 12222(line=741, offs=2)
+*/
+ATSINSflab(__patsflab___patsfun_60):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11503(line=696, offs=20) -- 12222(line=741, offs=2)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11516(line=699, offs=1) -- 12138(line=732, offs=4)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11535(line=700, offs=16) -- 11538(line=700, offs=19)
+*/
+ATSINSmove_llazyeval(tmp111__1, atstype_boxed, env0) ;
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11545(line=703, offs=1) -- 12104(line=730, offs=6)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11563(line=704, offs=3) -- 11589(line=705, offs=12)
+*/
+ATSINSlab(__atstmplab9):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11535(line=700, offs=16) -- 11538(line=700, offs=19)
+*/
+ATSifthen(ATSCKptriscons(tmp111__1)) { ATSINSgoto(__atstmplab12) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11589(line=705, offs=12) -- 11589(line=705, offs=12)
+*/
+ATSINSlab(__atstmplab10):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11593(line=705, offs=16) -- 11719(line=712, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11614(line=707, offs=5) -- 11662(line=708, offs=37)
+*/
+ATSINSmove_void(tmp114__1, atspre_cloptr_free(ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), env1))) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11692(line=711, offs=5) -- 11705(line=711, offs=18)
+*/
+
+ATSINSmove_nil(tmpret110__1) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11593(line=705, offs=16) -- 11719(line=712, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11748(line=713, offs=3) -- 11776(line=714, offs=13)
+*/
+ATSINSlab(__atstmplab11):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11535(line=700, offs=16) -- 11538(line=700, offs=19)
+*/
+#if(0)
+ATSifthen(ATSCKptrisnull(tmp111__1)) { ATSINSdeadcode_fail() ; } ;
+#endif
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11776(line=714, offs=13) -- 11776(line=714, offs=13)
+*/
+ATSINSlab(__atstmplab12):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11780(line=714, offs=17) -- 12104(line=730, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11799(line=715, offs=16) -- 11805(line=715, offs=22)
+*/
+ATSINSmove(tmp115__1, ATSfunclo_clo(ATSPMVrefarg0(env1), (atstype_cloptr, atsrefarg1_type(atstkind_t0ype(atstype_int))), atstkind_t0ype(atstype_bool))(ATSPMVrefarg0(env1), ATSPMVrefarg1(ATSPMVptrof(ATSSELcon(tmp111__1, postiats_tysum_1, atslab__0))))) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11816(line=717, offs=5) -- 12062(line=728, offs=10)
+*/
+ATSif(
+tmp115__1
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11835(line=718, offs=12) -- 11941(line=723, offs=10)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11871(line=720, offs=16) -- 11889(line=720, offs=34)
+*/
+ATSINSmove(tmp116__1, auxmain_59__59__1(ATSSELcon(tmp111__1, postiats_tysum_1, atslab__1), env1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11864(line=720, offs=9) -- 11889(line=720, offs=34)
+*/
+ATSINSstore(ATSSELcon(tmp111__1, postiats_tysum_1, atslab__1), tmp116__1) ;
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11925(line=722, offs=27) -- 11931(line=722, offs=33)
+*/
+ATSINSmove(tmpret110__1, tmp111__1) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11835(line=718, offs=12) -- 11941(line=723, offs=10)
+*/
+/*
+INSletpop()
+*/
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11970(line=724, offs=12) -- 12062(line=728, offs=10)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11992(line=725, offs=19) -- 11995(line=725, offs=22)
+*/
+ATSINSmove(tmp117__1, ATSSELcon(tmp111__1, postiats_tysum_1, atslab__1)) ;
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12013(line=727, offs=9) -- 12028(line=727, offs=24)
+*/
+ATSINSfreecon(tmp111__1) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12033(line=727, offs=29) -- 12051(line=727, offs=47)
+*/
+ATSINSmove(tmp118__1, auxmain_59__59__1(tmp117__1, env1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12031(line=727, offs=27) -- 12052(line=727, offs=48)
+*/
+ATSINSmove_llazyeval(tmpret110__1, atstype_boxed, tmp118__1) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11970(line=724, offs=12) -- 12062(line=728, offs=10)
+*/
+/*
+INSletpop()
+*/
+} /* ATSendif */
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11780(line=714, offs=17) -- 12104(line=730, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 11516(line=699, offs=1) -- 12138(line=732, offs=4)
+*/
+/*
+INSletpop()
+*/
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12167(line=737, offs=3) -- 12170(line=737, offs=6)
+*/
+ATSINSmove_void(tmp119__1, atspre_lazy_vt_free(env0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 12174(line=738, offs=3) -- 12215(line=738, offs=44)
+*/
+ATSINSmove_void(tmp120__1, atspre_cloptr_free(ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), env1))) ;
+
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret110__1) ;
+} /* end of [__patsfun_60__60__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1738(line=61, offs=40) -- 1768(line=61, offs=70)
+*/
+/*
+local: is_prime_20$0(level=0)
+global: is_prime_20$0(level=0), __patsfun_64$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+__patsfun_64(atsrefarg1_type(atstkind_t0ype(atstype_int)) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret133, atstkind_t0ype(atstype_bool)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1738(line=61, offs=40) -- 1768(line=61, offs=70)
+*/
+ATSINSflab(__patsflab___patsfun_64):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1747(line=61, offs=49) -- 1768(line=61, offs=70)
+*/
+ATSINSmove(tmpret133, is_prime_20(ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), ATSderef(arg0, atstkind_t0ype(atstype_int))))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret133) ;
+} /* end of [__patsfun_64] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1774(line=63, offs=4) -- 1846(line=64, offs=18)
+*/
+/*
+local: 
+global: div_gt_zero_65$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+div_gt_zero_65(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret134, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp135, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1774(line=63, offs=4) -- 1846(line=64, offs=18)
+*/
+ATSINSflab(__patsflab_div_gt_zero_65):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1840(line=64, offs=12) -- 1845(line=64, offs=17)
+*/
+ATSINSmove(tmp135, atspre_g1int_div_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1831(line=64, offs=3) -- 1846(line=64, offs=18)
+*/
+ATSINSmove(tmpret134, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), tmp135)) ;
+ATSfunbody_end()
+ATSreturn(tmpret134) ;
+} /* end of [div_gt_zero_65] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1887(line=67, offs=5) -- 2550(line=94, offs=6)
+*/
+/*
+local: exp_mod_prime_66$0(level=0)
+global: exp_mod_prime_66$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+exp_mod_prime_66(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1, atstkind_t0ype(atstype_int) arg2)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(apy0, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(apy1, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(apy2, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpret136, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref137, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref138, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp139, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp140, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmpref143, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp144, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref145, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref146, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp147, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp148, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp149, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmpref152, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp153, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1887(line=67, offs=5) -- 2550(line=94, offs=6)
+*/
+ATSINSflab(__patsflab_exp_mod_prime_66):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1955(line=68, offs=3) -- 2550(line=94, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1967(line=69, offs=9) -- 1969(line=69, offs=11)
+*/
+/*
+ATSINStmpdec(tmpref137) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1972(line=69, offs=14) -- 1977(line=69, offs=19)
+*/
+ATSINSmove(tmpref137, atspre_g0int_mod_int(arg0, arg2)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1986(line=70, offs=9) -- 1988(line=70, offs=11)
+*/
+/*
+ATSINStmpdec(tmpref138) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1996(line=70, offs=19) -- 2001(line=70, offs=24)
+*/
+ATSINSmove(tmp139, atspre_g1int_sub_int(arg2, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1991(line=70, offs=14) -- 2002(line=70, offs=25)
+*/
+ATSINSmove(tmpref138, atspre_g0int_mod_int(arg1, tmp139)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2012(line=72, offs=5) -- 2544(line=93, offs=12)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2031(line=73, offs=9) -- 2032(line=73, offs=10)
+*/
+ATSINSlab(__atstmplab13):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1901(line=67, offs=19) -- 1902(line=67, offs=20)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(0))) { ATSINSgoto(__atstmplab15) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2032(line=73, offs=10) -- 2032(line=73, offs=10)
+*/
+ATSINSlab(__atstmplab14):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2036(line=73, offs=14) -- 2037(line=73, offs=15)
+*/
+ATSINSmove(tmpret136, ATSPMVi0nt(0)) ;
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2047(line=74, offs=10) -- 2047(line=74, offs=10)
+*/
+ATSINSlab(__atstmplab15):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2080(line=76, offs=14) -- 2085(line=76, offs=19)
+*/
+ATSINSmove(tmp140, ATSLIB_056_prelude__gt_g1int_int__6__3(arg1, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2077(line=76, offs=11) -- 2532(line=92, offs=14)
+*/
+ATSif(
+tmp140
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2103(line=77, offs=13) -- 2503(line=90, offs=16)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2125(line=78, offs=19) -- 2127(line=78, offs=21)
+*/
+/*
+ATSINStmpdec(tmpref143) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2150(line=78, offs=44) -- 2157(line=78, offs=51)
+*/
+ATSINSmove(tmp144, atspre_g0int_half_int(tmpref138)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2141(line=78, offs=35) -- 2159(line=78, offs=53)
+*/
+ATSINSmove(tmpref143, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), tmp144)) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2178(line=79, offs=19) -- 2180(line=79, offs=21)
+*/
+/*
+ATSINStmpdec(tmpref145) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2183(line=79, offs=24) -- 2189(line=79, offs=30)
+*/
+ATSINSmove(tmpref145, atspre_g0int_mod_int(tmpref138, ATSPMVi0nt(2))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2208(line=80, offs=19) -- 2212(line=80, offs=23)
+*/
+/*
+ATSINStmpdec(tmpref146) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2235(line=80, offs=46) -- 2240(line=80, offs=51)
+*/
+ATSINSmove(tmp148, atspre_g1int_mul_int(arg0, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2235(line=80, offs=46) -- 2244(line=80, offs=55)
+*/
+ATSINSmove(tmp147, atspre_g0int_mod_int(tmp148, arg2)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2226(line=80, offs=37) -- 2245(line=80, offs=56)
+*/
+ATSINSmove(tmpref146, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), tmp147)) ;
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2278(line=82, offs=18) -- 2284(line=82, offs=24)
+*/
+ATSINSmove(tmp149, ATSLIB_056_prelude__eq_g0int_int__12__7(tmpref145, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2275(line=82, offs=15) -- 2487(line=89, offs=20)
+*/
+ATSif(
+tmp149
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2306(line=83, offs=17) -- 2332(line=83, offs=43)
+*/
+ATStailcal_beg()
+ATSINSmove_tlcal(apy0, tmpref146) ;
+ATSINSmove_tlcal(apy1, tmpref143) ;
+ATSINSmove_tlcal(apy2, arg2) ;
+ATSINSargmove_tlcal(arg0, apy0) ;
+ATSINSargmove_tlcal(arg1, apy1) ;
+ATSINSargmove_tlcal(arg2, apy2) ;
+ATSINSfgoto(__patsflab_exp_mod_prime_66) ;
+ATStailcal_end()
+
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2368(line=85, offs=17) -- 2487(line=89, offs=20)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2394(line=86, offs=23) -- 2395(line=86, offs=24)
+*/
+/*
+ATSINStmpdec(tmpref152) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2402(line=86, offs=31) -- 2428(line=86, offs=57)
+*/
+ATSINSmove(tmp153, exp_mod_prime_66(tmpref146, tmpref143, arg2)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2398(line=86, offs=27) -- 2428(line=86, offs=57)
+*/
+ATSINSmove(tmpref152, atspre_g0int_mul_int(arg0, tmp153)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2466(line=88, offs=19) -- 2467(line=88, offs=20)
+*/
+ATSINSmove(tmpret136, tmpref152) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2368(line=85, offs=17) -- 2487(line=89, offs=20)
+*/
+/*
+INSletpop()
+*/
+} /* ATSendif */
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2103(line=77, offs=13) -- 2503(line=90, offs=16)
+*/
+/*
+INSletpop()
+*/
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2531(line=92, offs=13) -- 2532(line=92, offs=14)
+*/
+ATSINSmove(tmpret136, ATSPMVi0nt(1)) ;
+} /* ATSendif */
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 1955(line=68, offs=3) -- 2550(line=94, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret136) ;
+} /* end of [exp_mod_prime_66] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
+*/
+/*
+local: 
+global: gt_g1int_int$6$3(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4703)
+tmparg = S2Evar(tk(4703))
+tmpsub = Some(tk(4703) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6__3(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret11__3, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp12__3, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
+*/
+ATSINSmove(tmp12__3, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
+*/
+ATSINSmove(tmpret11__3, atspre_g1int_gt_int(arg0, tmp12__3)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret11__3) ;
+} /* end of [ATSLIB_056_prelude__gt_g1int_int__6__3] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$7(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__7(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__7, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__7, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__7, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__7, atspre_g0int_eq_int(arg0, tmp19__7)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__7) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__7] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2653(line=97, offs=5) -- 3486(line=126, offs=6)
+*/
+/*
+local: exp_5$0(level=0), is_prime_20$0(level=0), div_gt_zero_65$0(level=0), exp_mod_prime_66$0(level=0)
+global: witness_0$0(level=0), exp_5$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), div_gt_zero_65$0(level=0), exp_mod_prime_66$0(level=0), jacobi_72$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+jacobi_72(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret154, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2653(line=97, offs=5) -- 3486(line=126, offs=6)
+*/
+ATSINSflab(__patsflab_jacobi_72):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2694(line=98, offs=3) -- 3486(line=126, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3473(line=125, offs=5) -- 3480(line=125, offs=12)
+*/
+ATSINSmove(tmpret154, loop_78(arg0, arg1, ATSPMVi0nt(2))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2694(line=98, offs=3) -- 3486(line=126, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret154) ;
+} /* end of [jacobi_72] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2706(line=99, offs=9) -- 3034(line=109, offs=12)
+*/
+/*
+local: exp_mod_prime_66$0(level=0)
+global: exp_mod_prime_66$0(level=0), legendre_73$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+legendre_73(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret155, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp156, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref157, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp158, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp159, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp160, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp161, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp164, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp165, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp166, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp169, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2706(line=99, offs=9) -- 3034(line=109, offs=12)
+*/
+ATSINSflab(__patsflab_legendre_73):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2795(line=100, offs=13) -- 2800(line=100, offs=18)
+*/
+ATSINSmove(tmp156, atspre_g0int_mod_int(arg1, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2789(line=100, offs=7) -- 3034(line=109, offs=12)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2814(line=101, offs=11) -- 2815(line=101, offs=12)
+*/
+ATSINSlab(__atstmplab16):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2795(line=100, offs=13) -- 2800(line=100, offs=18)
+*/
+ATSifnthen(ATSCKpat_int(tmp156, ATSPMVint(0))) { ATSINSgoto(__atstmplab18) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2815(line=101, offs=12) -- 2815(line=101, offs=12)
+*/
+ATSINSlab(__atstmplab17):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2819(line=101, offs=16) -- 2820(line=101, offs=17)
+*/
+ATSINSmove(tmpret155, ATSPMVi0nt(0)) ;
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2832(line=102, offs=12) -- 2832(line=102, offs=12)
+*/
+ATSINSlab(__atstmplab18):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2836(line=102, offs=16) -- 3034(line=109, offs=12)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2854(line=103, offs=15) -- 2855(line=103, offs=16)
+*/
+/*
+ATSINStmpdec(tmpref157) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2876(line=103, offs=37) -- 2881(line=103, offs=42)
+*/
+ATSINSmove(tmp159, atspre_g1int_sub_int(arg1, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2875(line=103, offs=36) -- 2886(line=103, offs=47)
+*/
+ATSINSmove(tmp158, atspre_g1int_div_int(tmp159, ATSPMVi0nt(2))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2858(line=103, offs=19) -- 2890(line=103, offs=51)
+*/
+ATSINSmove(tmpref157, exp_mod_prime_66(arg0, tmp158, arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2918(line=105, offs=17) -- 2919(line=105, offs=18)
+*/
+ATSINSmove(tmp160, tmpref157) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2912(line=105, offs=11) -- 3022(line=108, offs=21)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2938(line=106, offs=16) -- 2938(line=106, offs=16)
+*/
+ATSINSlab(__atstmplab19):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-guard:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2949(line=106, offs=27) -- 2954(line=106, offs=32)
+*/
+ATSINSmove(tmp165, atspre_g1int_sub_int(arg1, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2944(line=106, offs=22) -- 2955(line=106, offs=33)
+*/
+ATSINSmove(tmp164, atspre_g0int_mod_int(tmp160, tmp165)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2944(line=106, offs=22) -- 2959(line=106, offs=37)
+*/
+ATSINSmove(tmp161, ATSLIB_056_prelude__eq_g0int_int__12__8(tmp164, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2944(line=106, offs=22) -- 2959(line=106, offs=37)
+*/
+ATSifnthen(ATSCKpat_bool(tmp161, ATSPMVbool_true())) { ATSINSgoto(__atstmplab20) ; } ;
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2963(line=106, offs=41) -- 2965(line=106, offs=43)
+*/
+ATSINSmove(tmpret155, atspre_g1int_neg_int(ATSPMVi0nt(1))) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2981(line=107, offs=16) -- 2981(line=107, offs=16)
+*/
+ATSINSlab(__atstmplab20):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-guard:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2987(line=107, offs=22) -- 2992(line=107, offs=27)
+*/
+ATSINSmove(tmp169, atspre_g0int_mod_int(tmp160, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2987(line=107, offs=22) -- 2996(line=107, offs=31)
+*/
+ATSINSmove(tmp166, ATSLIB_056_prelude__eq_g0int_int__12__9(tmp169, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2987(line=107, offs=22) -- 2996(line=107, offs=31)
+*/
+ATSifnthen(ATSCKpat_bool(tmp166, ATSPMVbool_true())) { ATSINSgoto(__atstmplab21) ; } ;
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3000(line=107, offs=35) -- 3001(line=107, offs=36)
+*/
+ATSINSmove(tmpret155, ATSPMVi0nt(0)) ;
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3017(line=108, offs=16) -- 3017(line=108, offs=16)
+*/
+ATSINSlab(__atstmplab21):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3021(line=108, offs=20) -- 3022(line=108, offs=21)
+*/
+ATSINSmove(tmpret155, ATSPMVi0nt(1)) ;
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 2836(line=102, offs=16) -- 3034(line=109, offs=12)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+ATSfunbody_end()
+ATSreturn(tmpret155) ;
+} /* end of [legendre_73] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$8(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__8(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__8, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__8, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__8, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__8, atspre_g0int_eq_int(arg0, tmp19__8)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__8) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__8] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$9(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__9(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__9, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__9, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__9, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__9, atspre_g0int_eq_int(arg0, tmp19__9)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__9) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__9] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3048(line=111, offs=9) -- 3203(line=114, offs=17)
+*/
+/*
+local: div_gt_zero_65$0(level=0), get_multiplicity_77$0(level=1)
+global: div_gt_zero_65$0(level=0), get_multiplicity_77$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+get_multiplicity_77(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret170, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp171, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp172, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp173, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3048(line=111, offs=9) -- 3203(line=114, offs=17)
+*/
+ATSINSflab(__patsflab_get_multiplicity_77):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3120(line=112, offs=13) -- 3125(line=112, offs=18)
+*/
+ATSINSmove(tmp171, atspre_g0int_mod_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3114(line=112, offs=7) -- 3203(line=114, offs=17)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3139(line=113, offs=11) -- 3140(line=113, offs=12)
+*/
+ATSINSlab(__atstmplab22):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3120(line=112, offs=13) -- 3125(line=112, offs=18)
+*/
+ATSifnthen(ATSCKpat_int(tmp171, ATSPMVint(0))) { ATSINSgoto(__atstmplab24) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3140(line=113, offs=12) -- 3140(line=113, offs=12)
+*/
+ATSINSlab(__atstmplab23):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3165(line=113, offs=37) -- 3182(line=113, offs=54)
+*/
+ATSINSmove(tmp173, div_gt_zero_65(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3148(line=113, offs=20) -- 3186(line=113, offs=58)
+*/
+ATSINSmove(tmp172, get_multiplicity_77(tmp173, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3144(line=113, offs=16) -- 3186(line=113, offs=58)
+*/
+ATSINSmove(tmpret170, atspre_g1int_add_int(ATSPMVi0nt(1), tmp172)) ;
+
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3198(line=114, offs=12) -- 3198(line=114, offs=12)
+*/
+ATSINSlab(__atstmplab24):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3202(line=114, offs=16) -- 3203(line=114, offs=17)
+*/
+ATSINSmove(tmpret170, ATSPMVi0nt(0)) ;
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+ATSfunbody_end()
+ATSreturn(tmpret170) ;
+} /* end of [get_multiplicity_77] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3217(line=116, offs=9) -- 3463(line=123, offs=24)
+*/
+/*
+local: exp_5$0(level=0), is_prime_20$0(level=0), legendre_73$0(level=1), get_multiplicity_77$0(level=1), loop_78$0(level=1)
+global: exp_5$0(level=0), is_prime_20$0(level=0), div_gt_zero_65$0(level=0), exp_mod_prime_66$0(level=0), legendre_73$0(level=1), get_multiplicity_77$0(level=1), loop_78$0(level=1)
+local: a$5144(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), n$5145(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+global: a$5144(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), n$5145(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+loop_78(atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(apy0, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpret174, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp175, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp178, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp179, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp182, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp183, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp184, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp185, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp186, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp187, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp188, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3217(line=116, offs=9) -- 3463(line=123, offs=24)
+*/
+ATSINSflab(__patsflab_loop_78):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3274(line=117, offs=10) -- 3281(line=117, offs=17)
+*/
+ATSINSmove(tmp175, ATSLIB_056_prelude__gt_g1int_int__6__4(arg0, env1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3271(line=117, offs=7) -- 3463(line=123, offs=24)
+*/
+ATSif(
+tmp175
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3295(line=118, offs=9) -- 3296(line=118, offs=10)
+*/
+ATSINSmove(tmpret174, ATSPMVi0nt(1)) ;
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3319(line=120, offs=12) -- 3346(line=120, offs=39)
+*/
+ATSINSmove(tmp182, atspre_g0int_mod_int(env0, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3319(line=120, offs=12) -- 3346(line=120, offs=39)
+*/
+ATSINSmove(tmp179, ATSLIB_056_prelude__eq_g0int_int__12__10(tmp182, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3319(line=120, offs=12) -- 3346(line=120, offs=39)
+*/
+ATSif(
+tmp179
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3319(line=120, offs=12) -- 3346(line=120, offs=39)
+*/
+ATSINSmove(tmp178, is_prime_20(arg0)) ;
+
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3319(line=120, offs=12) -- 3346(line=120, offs=39)
+*/
+ATSINSmove(tmp178, ATSPMVbool_false()) ;
+} /* ATSendif */
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3316(line=120, offs=9) -- 3463(line=123, offs=24)
+*/
+ATSif(
+tmp178
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3368(line=121, offs=16) -- 3375(line=121, offs=23)
+*/
+ATSINSmove(tmp184, atspre_g1int_add_int(arg0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3363(line=121, offs=11) -- 3376(line=121, offs=24)
+*/
+ATSINSmove(tmp183, loop_78(env0, env1, tmp184)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3383(line=121, offs=31) -- 3399(line=121, offs=47)
+*/
+ATSINSmove(tmp186, legendre_73(arg0, env1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3401(line=121, offs=49) -- 3425(line=121, offs=73)
+*/
+ATSINSmove(tmp187, get_multiplicity_77(env0, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3379(line=121, offs=27) -- 3426(line=121, offs=74)
+*/
+ATSINSmove(tmp185, exp_5(tmp186, tmp187)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3363(line=121, offs=11) -- 3426(line=121, offs=74)
+*/
+ATSINSmove(tmpret174, atspre_g0int_mul_int(tmp183, tmp185)) ;
+
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3455(line=123, offs=16) -- 3462(line=123, offs=23)
+*/
+ATSINSmove(tmp188, atspre_g1int_add_int(arg0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3450(line=123, offs=11) -- 3463(line=123, offs=24)
+*/
+ATStailcal_beg()
+ATSINSmove_tlcal(apy0, tmp188) ;
+ATSINSargmove_tlcal(arg0, apy0) ;
+ATSINSfgoto(__patsflab_loop_78) ;
+ATStailcal_end()
+
+} /* ATSendif */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret174) ;
+} /* end of [loop_78] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
+*/
+/*
+local: 
+global: gt_g1int_int$6$4(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4703)
+tmparg = S2Evar(tk(4703))
+tmpsub = Some(tk(4703) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6__4(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret11__4, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp12__4, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
+*/
+ATSINSmove(tmp12__4, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
+*/
+ATSINSmove(tmpret11__4, atspre_g1int_gt_int(arg0, tmp12__4)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret11__4) ;
+} /* end of [ATSLIB_056_prelude__gt_g1int_int__6__4] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$10(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__10(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__10, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__10, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__10, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__10, atspre_g0int_eq_int(arg0, tmp19__10)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__10) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__10] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3491(line=128, offs=4) -- 3560(line=129, offs=32)
+*/
+/*
+local: divisors_36$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), divisors_36$0(level=0), count_divisors_81$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+count_divisors_81(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret189, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp201, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3491(line=128, offs=4) -- 3560(line=129, offs=32)
+*/
+ATSINSflab(__patsflab_count_divisors_81):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3548(line=129, offs=20) -- 3558(line=129, offs=30)
+*/
+ATSINSmove(tmp201, divisors_36(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3531(line=129, offs=3) -- 3560(line=129, offs=32)
+*/
+ATSINSmove(tmpret189, ATSLIB_056_prelude__stream_vt_length__82__1(tmp201)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret189) ;
+} /* end of [count_divisors_81] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 8056(line=456, offs=17) -- 8278(line=471, offs=4)
+*/
+/*
+local: 
+global: stream_vt_length$82$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = a(8735)
+tmparg = S2Evar(a(8735))
+tmpsub = None()
+*/
+atstkind_t0ype(atstype_int)
+ATSLIB_056_prelude__stream_vt_length__82(atstkind_type(atstype_ptrk) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret190, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8040(line=456, offs=1) -- 8278(line=471, offs=4)
+*/
+ATSINSflab(__patsflab_stream_vt_length):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8064(line=456, offs=25) -- 8278(line=471, offs=4)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8261(line=470, offs=16) -- 8273(line=470, offs=28)
+*/
+ATSINSmove(tmpret190, ATSfunclo_fun(PMVd2vfunlab(d2v=loop$4254(1), flab=loop_83$0(level=1)), (atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)), atstkind_t0ype(atstype_int))(arg0, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8064(line=456, offs=25) -- 8278(line=471, offs=4)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret190) ;
+} /* end of [ATSLIB_056_prelude__stream_vt_length__82] */
+#endif // end of [TEMPLATE]
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 8075(line=459, offs=1) -- 8219(line=467, offs=2)
+*/
+/*
+local: loop_83$0(level=1)
+global: loop_83$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+loop_83__83(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(tmpret191, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp192, atstype_boxed) ;
+ATStmpdec(tmp194, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp195, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8075(line=459, offs=1) -- 8219(line=467, offs=2)
+*/
+ATSINSflab(__patsflab_loop_83):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8141(line=464, offs=9) -- 8144(line=464, offs=12)
+*/
+ATSINSmove_llazyeval(tmp192, atstype_boxed, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8135(line=464, offs=3) -- 8217(line=466, offs=44)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8152(line=465, offs=5) -- 8168(line=465, offs=21)
+*/
+ATSINSlab(__atstmplab25):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8141(line=464, offs=9) -- 8144(line=464, offs=12)
+*/
+ATSifthen(ATSCKptriscons(tmp192)) { ATSINSgoto(__atstmplab28) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8168(line=465, offs=21) -- 8168(line=465, offs=21)
+*/
+ATSINSlab(__atstmplab26):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8172(line=465, offs=25) -- 8173(line=465, offs=26)
+*/
+ATSINSmove(tmpret191, arg1) ;
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8178(line=466, offs=5) -- 8200(line=466, offs=27)
+*/
+ATSINSlab(__atstmplab27):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8141(line=464, offs=9) -- 8144(line=464, offs=12)
+*/
+#if(0)
+ATSifthen(ATSCKptrisnull(tmp192)) { ATSINSdeadcode_fail() ; } ;
+#endif
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8200(line=466, offs=27) -- 8200(line=466, offs=27)
+*/
+ATSINSlab(__atstmplab28):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8197(line=466, offs=24) -- 8199(line=466, offs=26)
+*/
+ATSINSmove(tmp194, ATSSELcon(tmp192, postiats_tysum_3, atslab__1)) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8178(line=466, offs=5) -- 8217(line=466, offs=44)
+*/
+ATSINSfreecon(tmp192) ;
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8213(line=466, offs=40) -- 8216(line=466, offs=43)
+*/
+ATSINSmove(tmp195, PMVtmpltcst(g1int_add<S2Eextkind(atstype_int)>)(arg1, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8204(line=466, offs=31) -- 8217(line=466, offs=44)
+*/
+ATStailcal_beg()
+ATSINSmove_tlcal(apy0, tmp194) ;
+ATSINSmove_tlcal(apy1, tmp195) ;
+ATSINSargmove_tlcal(arg0, apy0) ;
+ATSINSargmove_tlcal(arg1, apy1) ;
+ATSINSfgoto(__patsflab_loop_83) ;
+ATStailcal_end()
+
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+ATSfunbody_end()
+ATSreturn(tmpret191) ;
+} /* end of [loop_83__83] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 8056(line=456, offs=17) -- 8278(line=471, offs=4)
+*/
+/*
+local: 
+global: stream_vt_length$82$1(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(8735)
+tmparg = S2Evar(a(8735))
+tmpsub = Some(a(8735) -> S2Eapp(S2Ecst(g0int_t0ype); S2Eextkind(atstype_int)))
+*/
+atstkind_t0ype(atstype_int)
+ATSLIB_056_prelude__stream_vt_length__82__1(atstkind_type(atstype_ptrk) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret190__1, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8040(line=456, offs=1) -- 8278(line=471, offs=4)
+*/
+ATSINSflab(__patsflab_stream_vt_length):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8064(line=456, offs=25) -- 8278(line=471, offs=4)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8261(line=470, offs=16) -- 8273(line=470, offs=28)
+*/
+ATSINSmove(tmpret190__1, loop_83__83__1(arg0, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8064(line=456, offs=25) -- 8278(line=471, offs=4)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret190__1) ;
+} /* end of [ATSLIB_056_prelude__stream_vt_length__82__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 8075(line=459, offs=1) -- 8219(line=467, offs=2)
+*/
+/*
+local: loop_83$1(level=2)
+global: loop_83$1(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+loop_83__83__1(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(tmpret191__1, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp192__1, atstype_boxed) ;
+ATStmpdec(tmp194__1, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp195__1, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8075(line=459, offs=1) -- 8219(line=467, offs=2)
+*/
+ATSINSflab(__patsflab_loop_83):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8141(line=464, offs=9) -- 8144(line=464, offs=12)
+*/
+ATSINSmove_llazyeval(tmp192__1, atstype_boxed, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8135(line=464, offs=3) -- 8217(line=466, offs=44)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8152(line=465, offs=5) -- 8168(line=465, offs=21)
+*/
+ATSINSlab(__atstmplab25):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8141(line=464, offs=9) -- 8144(line=464, offs=12)
+*/
+ATSifthen(ATSCKptriscons(tmp192__1)) { ATSINSgoto(__atstmplab28) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8168(line=465, offs=21) -- 8168(line=465, offs=21)
+*/
+ATSINSlab(__atstmplab26):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8172(line=465, offs=25) -- 8173(line=465, offs=26)
+*/
+ATSINSmove(tmpret191__1, arg1) ;
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8178(line=466, offs=5) -- 8200(line=466, offs=27)
+*/
+ATSINSlab(__atstmplab27):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8141(line=464, offs=9) -- 8144(line=464, offs=12)
+*/
+#if(0)
+ATSifthen(ATSCKptrisnull(tmp192__1)) { ATSINSdeadcode_fail() ; } ;
+#endif
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8200(line=466, offs=27) -- 8200(line=466, offs=27)
+*/
+ATSINSlab(__atstmplab28):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8197(line=466, offs=24) -- 8199(line=466, offs=26)
+*/
+ATSINSmove(tmp194__1, ATSSELcon(tmp192__1, postiats_tysum_1, atslab__1)) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8178(line=466, offs=5) -- 8217(line=466, offs=44)
+*/
+ATSINSfreecon(tmp192__1) ;
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8213(line=466, offs=40) -- 8216(line=466, offs=43)
+*/
+ATSINSmove(tmp195__1, atspre_g1int_add_int(arg1, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 8204(line=466, offs=31) -- 8217(line=466, offs=44)
+*/
+ATStailcal_beg()
+ATSINSmove_tlcal(apy0, tmp194__1) ;
+ATSINSmove_tlcal(apy1, tmp195__1) ;
+ATSINSargmove_tlcal(arg0, apy0) ;
+ATSINSargmove_tlcal(arg1, apy1) ;
+ATSINSfgoto(__patsflab_loop_83) ;
+ATStailcal_end()
+
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+ATSfunbody_end()
+ATSreturn(tmpret191__1) ;
+} /* end of [loop_83__83__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3613(line=133, offs=4) -- 4213(line=159, offs=6)
+*/
+/*
+local: sqrt_int_17$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), sum_divisors_86$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+sum_divisors_86(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret202, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3613(line=133, offs=4) -- 4213(line=159, offs=6)
+*/
+ATSINSflab(__patsflab_sum_divisors_86):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3651(line=134, offs=3) -- 4213(line=159, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4197(line=158, offs=5) -- 4207(line=158, offs=15)
+*/
+ATSINSmove(tmpret202, loop_87(arg0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3651(line=134, offs=3) -- 4213(line=159, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret202) ;
+} /* end of [sum_divisors_86] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3663(line=135, offs=9) -- 4187(line=156, offs=27)
+*/
+/*
+local: sqrt_int_17$0(level=0), loop_87$0(level=1)
+global: sqrt_int_17$0(level=0), loop_87$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+loop_87(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(tmpret203, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp204, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp207, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp208, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp211, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp212, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp215, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref216, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp217, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp220, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref221, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp222, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp223, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp224, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp225, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3663(line=135, offs=9) -- 4187(line=156, offs=27)
+*/
+ATSINSflab(__patsflab_loop_87):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3758(line=136, offs=17) -- 3768(line=136, offs=27)
+*/
+ATSINSmove(tmp207, sqrt_int_17(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3751(line=136, offs=10) -- 3768(line=136, offs=27)
+*/
+ATSINSmove(tmp204, ATSLIB_056_prelude__gte_g1int_int__40__2(arg1, tmp207)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3748(line=136, offs=7) -- 4187(line=156, offs=27)
+*/
+ATSif(
+tmp204
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3786(line=137, offs=12) -- 3793(line=137, offs=19)
+*/
+ATSINSmove(tmp211, atspre_g0int_mod_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3786(line=137, offs=12) -- 3797(line=137, offs=23)
+*/
+ATSINSmove(tmp208, ATSLIB_056_prelude__eq_g0int_int__12__11(tmp211, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3783(line=137, offs=9) -- 3995(line=147, offs=12)
+*/
+ATSif(
+tmp208
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3816(line=138, offs=14) -- 3823(line=138, offs=21)
+*/
+ATSINSmove(tmp215, atspre_g1int_div_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3816(line=138, offs=14) -- 3830(line=138, offs=28)
+*/
+ATSINSmove(tmp212, ATSLIB_056_prelude__neq_g1int_int__44__2(tmp215, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3813(line=138, offs=11) -- 3970(line=145, offs=16)
+*/
+ATSif(
+tmp212
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3848(line=139, offs=13) -- 3939(line=143, offs=16)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3870(line=140, offs=19) -- 3871(line=140, offs=20)
+*/
+/*
+ATSINStmpdec(tmpref216) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3879(line=140, offs=28) -- 3886(line=140, offs=35)
+*/
+ATSINSmove(tmpref216, atspre_g1int_div_int(arg0, arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3916(line=142, offs=15) -- 3923(line=142, offs=22)
+*/
+ATSINSmove(tmpret203, atspre_g1int_add_int(arg1, tmpref216)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3848(line=139, offs=13) -- 3939(line=143, offs=16)
+*/
+/*
+INSletpop()
+*/
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3967(line=145, offs=13) -- 3970(line=145, offs=16)
+*/
+ATSINSmove(tmpret203, arg1) ;
+} /* ATSendif */
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 3994(line=147, offs=11) -- 3995(line=147, offs=12)
+*/
+ATSINSmove(tmpret203, ATSPMVi0nt(0)) ;
+} /* ATSendif */
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4018(line=149, offs=12) -- 4025(line=149, offs=19)
+*/
+ATSINSmove(tmp220, atspre_g0int_mod_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4018(line=149, offs=12) -- 4029(line=149, offs=23)
+*/
+ATSINSmove(tmp217, ATSLIB_056_prelude__eq_g0int_int__12__12(tmp220, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4015(line=149, offs=9) -- 4187(line=156, offs=27)
+*/
+ATSif(
+tmp217
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4045(line=150, offs=11) -- 4147(line=154, offs=14)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4065(line=151, offs=17) -- 4066(line=151, offs=18)
+*/
+/*
+ATSINStmpdec(tmpref221) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4074(line=151, offs=26) -- 4081(line=151, offs=33)
+*/
+ATSINSmove(tmpref221, atspre_g1int_div_int(arg0, arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4107(line=153, offs=13) -- 4114(line=153, offs=20)
+*/
+ATSINSmove(tmp222, atspre_g1int_add_int(arg1, tmpref221)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4125(line=153, offs=31) -- 4132(line=153, offs=38)
+*/
+ATSINSmove(tmp224, atspre_g1int_add_int(arg1, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4117(line=153, offs=23) -- 4133(line=153, offs=39)
+*/
+ATSINSmove(tmp223, loop_87(arg0, tmp224)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4107(line=153, offs=13) -- 4133(line=153, offs=39)
+*/
+ATSINSmove(tmpret203, atspre_g0int_add_int(tmp222, tmp223)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4045(line=150, offs=11) -- 4147(line=154, offs=14)
+*/
+/*
+INSletpop()
+*/
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4179(line=156, offs=19) -- 4186(line=156, offs=26)
+*/
+ATSINSmove(tmp225, atspre_g1int_add_int(arg1, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4171(line=156, offs=11) -- 4187(line=156, offs=27)
+*/
+ATStailcal_beg()
+ATSINSmove_tlcal(apy0, arg0) ;
+ATSINSmove_tlcal(apy1, tmp225) ;
+ATSINSargmove_tlcal(arg0, apy0) ;
+ATSINSargmove_tlcal(arg1, apy1) ;
+ATSINSfgoto(__patsflab_loop_87) ;
+ATStailcal_end()
+
+} /* ATSendif */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret203) ;
+} /* end of [loop_87] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12757(line=663, offs=3) -- 12797(line=663, offs=43)
+*/
+/*
+local: 
+global: gte_g1int_int$40$2(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4706)
+tmparg = S2Evar(tk(4706))
+tmpsub = Some(tk(4706) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gte_g1int_int__40__2(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret71__2, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp72__2, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12741(line=662, offs=1) -- 12797(line=663, offs=43)
+*/
+ATSINSflab(__patsflab_gte_g1int_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12784(line=663, offs=30) -- 12795(line=663, offs=41)
+*/
+ATSINSmove(tmp72__2, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12766(line=663, offs=12) -- 12797(line=663, offs=43)
+*/
+ATSINSmove(tmpret71__2, atspre_g1int_gte_int(arg0, tmp72__2)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret71__2) ;
+} /* end of [ATSLIB_056_prelude__gte_g1int_int__40__2] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$11(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__11(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__11, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__11, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__11, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__11, atspre_g0int_eq_int(arg0, tmp19__11)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__11) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__11] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12916(line=672, offs=3) -- 12956(line=672, offs=43)
+*/
+/*
+local: 
+global: neq_g1int_int$44$2(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4712)
+tmparg = S2Evar(tk(4712))
+tmpsub = Some(tk(4712) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__neq_g1int_int__44__2(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret81__2, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp82__2, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12900(line=671, offs=1) -- 12956(line=672, offs=43)
+*/
+ATSINSflab(__patsflab_neq_g1int_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12943(line=672, offs=30) -- 12954(line=672, offs=41)
+*/
+ATSINSmove(tmp82__2, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12925(line=672, offs=12) -- 12956(line=672, offs=43)
+*/
+ATSINSmove(tmpret81__2, atspre_g1int_neq_int(arg0, tmp82__2)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret81__2) ;
+} /* end of [ATSLIB_056_prelude__neq_g1int_int__44__2] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$12(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__12(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__12, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__12, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__12, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__12, atspre_g0int_eq_int(arg0, tmp19__12)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__12) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__12] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4218(line=161, offs=4) -- 4273(line=162, offs=22)
+*/
+/*
+local: sum_divisors_86$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), sum_divisors_86$0(level=0), is_perfect_93$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_bool)
+is_perfect_93(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret226, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp229, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4218(line=161, offs=4) -- 4273(line=162, offs=22)
+*/
+ATSINSflab(__patsflab_is_perfect_93):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4254(line=162, offs=3) -- 4268(line=162, offs=17)
+*/
+ATSINSmove(tmp229, sum_divisors_86(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4254(line=162, offs=3) -- 4273(line=162, offs=22)
+*/
+ATSINSmove(tmpret226, ATSLIB_056_prelude__eq_g0int_int__12__13(tmp229, arg0)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret226) ;
+} /* end of [is_perfect_93] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$13(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__13(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__13, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__13, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__13, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__13, atspre_g0int_eq_int(arg0, tmp19__13)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__13) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__13] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4279(line=164, offs=5) -- 4599(line=178, offs=8)
+*/
+/*
+local: rip_95$0(level=0)
+global: rip_95$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+rip_95(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret230, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp231, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp236, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp237, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp240, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref241, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp242, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp245, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4279(line=164, offs=5) -- 4599(line=178, offs=8)
+*/
+ATSINSflab(__patsflab_rip_95):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4401(line=165, offs=6) -- 4406(line=165, offs=11)
+*/
+ATSINSmove(tmp236, atspre_g0int_mod_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4401(line=165, offs=6) -- 4411(line=165, offs=16)
+*/
+ATSINSmove(tmp231, ATSLIB_056_prelude__neq_g0int_int__96__1(tmp236, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4398(line=165, offs=3) -- 4599(line=178, offs=8)
+*/
+ATSif(
+tmp231
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4421(line=166, offs=5) -- 4422(line=166, offs=6)
+*/
+ATSINSmove(tmpret230, arg0) ;
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4437(line=168, offs=8) -- 4442(line=168, offs=13)
+*/
+ATSINSmove(tmp240, atspre_g1int_div_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4437(line=168, offs=8) -- 4446(line=168, offs=17)
+*/
+ATSINSmove(tmp237, ATSLIB_056_prelude__gt_g1int_int__6__5(tmp240, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4434(line=168, offs=5) -- 4599(line=178, offs=8)
+*/
+ATSif(
+tmp237
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4458(line=169, offs=7) -- 4582(line=176, offs=10)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4474(line=170, offs=13) -- 4476(line=170, offs=15)
+*/
+/*
+ATSINStmpdec(tmpref241) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4479(line=170, offs=18) -- 4484(line=170, offs=23)
+*/
+ATSINSmove(tmpref241, atspre_g1int_div_int(arg0, arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4505(line=172, offs=12) -- 4511(line=172, offs=18)
+*/
+ATSINSmove(tmp242, ATSLIB_056_prelude__lt_g1int_int__22__2(tmpref241, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4502(line=172, offs=9) -- 4572(line=175, offs=12)
+*/
+ATSif(
+tmp242
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4536(line=173, offs=20) -- 4546(line=173, offs=30)
+*/
+ATSINSmove(tmp245, rip_95(tmpref241, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4527(line=173, offs=11) -- 4547(line=173, offs=31)
+*/
+ATSINSmove(tmpret230, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), tmp245)) ;
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4571(line=175, offs=11) -- 4572(line=175, offs=12)
+*/
+ATSINSmove(tmpret230, ATSPMVi0nt(1)) ;
+} /* ATSendif */
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4458(line=169, offs=7) -- 4582(line=176, offs=10)
+*/
+/*
+INSletpop()
+*/
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4598(line=178, offs=7) -- 4599(line=178, offs=8)
+*/
+ATSINSmove(tmpret230, ATSPMVi0nt(1)) ;
+} /* ATSendif */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret230) ;
+} /* end of [rip_95] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12337(line=639, offs=3) -- 12377(line=639, offs=43)
+*/
+/*
+local: 
+global: neq_g0int_int$96$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = tk(4695)
+tmparg = S2Evar(tk(4695))
+tmpsub = None()
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__neq_g0int_int__96(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret232, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp233, atstkind_t0ype(atstyvar_type(tk))) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12321(line=638, offs=1) -- 12377(line=639, offs=43)
+*/
+ATSINSflab(__patsflab_neq_g0int_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12364(line=639, offs=30) -- 12375(line=639, offs=41)
+*/
+ATSINSmove(tmp233, PMVtmpltcst(g0int2int<S2Eextkind(atstype_int), S2Evar(tk(4695))>)(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12346(line=639, offs=12) -- 12377(line=639, offs=43)
+*/
+ATSINSmove(tmpret232, PMVtmpltcst(g0int_neq<S2Evar(tk(4695))>)(arg0, tmp233)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret232) ;
+} /* end of [ATSLIB_056_prelude__neq_g0int_int__96] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12337(line=639, offs=3) -- 12377(line=639, offs=43)
+*/
+/*
+local: 
+global: neq_g0int_int$96$1(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4695)
+tmparg = S2Evar(tk(4695))
+tmpsub = Some(tk(4695) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__neq_g0int_int__96__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret232__1, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp233__1, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12321(line=638, offs=1) -- 12377(line=639, offs=43)
+*/
+ATSINSflab(__patsflab_neq_g0int_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12364(line=639, offs=30) -- 12375(line=639, offs=41)
+*/
+ATSINSmove(tmp233__1, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12346(line=639, offs=12) -- 12377(line=639, offs=43)
+*/
+ATSINSmove(tmpret232__1, atspre_g0int_neq_int(arg0, tmp233__1)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret232__1) ;
+} /* end of [ATSLIB_056_prelude__neq_g0int_int__96__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
+*/
+/*
+local: 
+global: gt_g1int_int$6$5(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4703)
+tmparg = S2Evar(tk(4703))
+tmpsub = Some(tk(4703) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6__5(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret11__5, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp12__5, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
+*/
+ATSINSmove(tmp12__5, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
+*/
+ATSINSmove(tmpret11__5, atspre_g1int_gt_int(arg0, tmp12__5)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret11__5) ;
+} /* end of [ATSLIB_056_prelude__gt_g1int_int__6__5] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
+*/
+/*
+local: 
+global: lt_g1int_int$22$2(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4697)
+tmparg = S2Evar(tk(4697))
+tmpsub = Some(tk(4697) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__lt_g1int_int__22__2(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret33__2, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp34__2, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
+*/
+ATSINSmove(tmp34__2, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
+*/
+ATSINSmove(tmpret33__2, atspre_g1int_lt_int(arg0, tmp34__2)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret33__2) ;
+} /* end of [ATSLIB_056_prelude__lt_g1int_int__22__2] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4605(line=180, offs=5) -- 5209(line=198, offs=6)
+*/
+/*
+local: is_prime_20$0(level=0), rip_95$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), rip_95$0(level=0), prime_factors_101$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+prime_factors_101(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret246, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4605(line=180, offs=5) -- 5209(line=198, offs=6)
+*/
+ATSINSflab(__patsflab_prime_factors_101):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4655(line=181, offs=3) -- 5209(line=198, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5193(line=197, offs=5) -- 5203(line=197, offs=15)
+*/
+ATSINSmove(tmpret246, loop_102(arg0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4655(line=181, offs=3) -- 5209(line=198, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret246) ;
+} /* end of [prime_factors_101] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4667(line=182, offs=9) -- 5183(line=195, offs=27)
+*/
+/*
+local: is_prime_20$0(level=0), rip_95$0(level=0), loop_102$0(level=1)
+global: is_prime_20$0(level=0), rip_95$0(level=0), loop_102$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+loop_102(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(tmpret247, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp248, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp251, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp256, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp257, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp260, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp261, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp264, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp271, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4667(line=182, offs=9) -- 5183(line=195, offs=27)
+*/
+ATSINSflab(__patsflab_loop_102):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4766(line=183, offs=10) -- 4774(line=183, offs=18)
+*/
+ATSINSmove(tmp248, ATSLIB_056_prelude__gte_g1int_int__40__3(arg1, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4763(line=183, offs=7) -- 5183(line=195, offs=27)
+*/
+ATSif(
+tmp248
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4791(line=184, offs=12) -- 4801(line=184, offs=22)
+*/
+ATSINSmove(tmp251, is_prime_20(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4788(line=184, offs=9) -- 4914(line=187, offs=33)
+*/
+ATSif(
+tmp251
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4818(line=185, offs=11) -- 4868(line=185, offs=61)
+*/
+ATSINSmove_ldelay(tmpret247, atstype_boxed, ATSPMVcfunlab(1, __patsfun_104, (arg0))) ;
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4892(line=187, offs=11) -- 4914(line=187, offs=33)
+*/
+ATSINSmove_ldelay(tmpret247, atstype_boxed, ATSPMVcfunlab(1, __patsfun_106, ())) ;
+} /* ATSendif */
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4937(line=189, offs=12) -- 4964(line=189, offs=39)
+*/
+ATSINSmove(tmp260, atspre_g0int_mod_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4937(line=189, offs=12) -- 4964(line=189, offs=39)
+*/
+ATSINSmove(tmp257, ATSLIB_056_prelude__eq_g0int_int__12__14(tmp260, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4937(line=189, offs=12) -- 4964(line=189, offs=39)
+*/
+ATSif(
+tmp257
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4937(line=189, offs=12) -- 4964(line=189, offs=39)
+*/
+ATSINSmove(tmp256, is_prime_20(arg1)) ;
+
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4937(line=189, offs=12) -- 4964(line=189, offs=39)
+*/
+ATSINSmove(tmp256, ATSPMVbool_false()) ;
+} /* ATSendif */
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4934(line=189, offs=9) -- 5183(line=195, offs=27)
+*/
+ATSif(
+tmp256
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4984(line=190, offs=14) -- 4991(line=190, offs=21)
+*/
+ATSINSmove(tmp264, atspre_g1int_div_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4984(line=190, offs=14) -- 4995(line=190, offs=25)
+*/
+ATSINSmove(tmp261, ATSLIB_056_prelude__gt_g1int_int__6__6(tmp264, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4981(line=190, offs=11) -- 5143(line=193, offs=65)
+*/
+ATSif(
+tmp261
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5013(line=191, offs=13) -- 5063(line=191, offs=63)
+*/
+ATSINSmove_ldelay(tmpret247, atstype_boxed, ATSPMVcfunlab(1, __patsfun_109, (arg0, arg1))) ;
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5091(line=193, offs=13) -- 5143(line=193, offs=65)
+*/
+ATSINSmove_ldelay(tmpret247, atstype_boxed, ATSPMVcfunlab(1, __patsfun_110, (arg1))) ;
+} /* ATSendif */
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5175(line=195, offs=19) -- 5182(line=195, offs=26)
+*/
+ATSINSmove(tmp271, atspre_g1int_add_int(arg1, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5167(line=195, offs=11) -- 5183(line=195, offs=27)
+*/
+ATStailcal_beg()
+ATSINSmove_tlcal(apy0, arg0) ;
+ATSINSmove_tlcal(apy1, tmp271) ;
+ATSINSargmove_tlcal(arg0, apy0) ;
+ATSINSargmove_tlcal(arg1, apy1) ;
+ATSINSfgoto(__patsflab_loop_102) ;
+ATStailcal_end()
+
+} /* ATSendif */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret247) ;
+} /* end of [loop_102] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12757(line=663, offs=3) -- 12797(line=663, offs=43)
+*/
+/*
+local: 
+global: gte_g1int_int$40$3(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4706)
+tmparg = S2Evar(tk(4706))
+tmpsub = Some(tk(4706) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gte_g1int_int__40__3(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret71__3, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp72__3, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12741(line=662, offs=1) -- 12797(line=663, offs=43)
+*/
+ATSINSflab(__patsflab_gte_g1int_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12784(line=663, offs=30) -- 12795(line=663, offs=41)
+*/
+ATSINSmove(tmp72__3, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12766(line=663, offs=12) -- 12797(line=663, offs=43)
+*/
+ATSINSmove(tmpret71__3, atspre_g1int_gte_int(arg0, tmp72__3)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret71__3) ;
+} /* end of [ATSLIB_056_prelude__gte_g1int_int__40__3] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4818(line=185, offs=11) -- 4868(line=185, offs=61)
+*/
+/*
+local: 
+global: __patsfun_104$0(level=2)
+local: n$5175(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+global: n$5175(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_104(atstkind_t0ype(atstype_int) env0, atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret252, atstype_boxed) ;
+ATStmpdec(tmp253, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4818(line=185, offs=11) -- 4868(line=185, offs=61)
+*/
+ATSINSflab(__patsflab___patsfun_104):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4818(line=185, offs=11) -- 4868(line=185, offs=61)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4844(line=185, offs=37) -- 4866(line=185, offs=59)
+*/
+ATSINSmove_ldelay(tmp253, atstype_boxed, ATSPMVcfunlab(1, __patsfun_105, ())) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4826(line=185, offs=19) -- 4867(line=185, offs=60)
+*/
+
+/*
+#LINCONSTATUS==0
+*/
+ATSINSmove_con1_beg()
+ATSINSmove_con1_new(tmpret252, postiats_tysum_1) ;
+#if(0)
+ATSINSstore_con1_tag(tmpret252, 1) ;
+#endif
+ATSINSstore_con1_ofs(tmpret252, postiats_tysum_1, atslab__0, env0) ;
+ATSINSstore_con1_ofs(tmpret252, postiats_tysum_1, atslab__1, tmp253) ;
+ATSINSmove_con1_end()
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret252) ;
+} /* end of [__patsfun_104] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4844(line=185, offs=37) -- 4866(line=185, offs=59)
+*/
+/*
+local: 
+global: __patsfun_105$0(level=3)
+local: 
+global: 
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_105(atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret254, atstype_boxed) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4844(line=185, offs=37) -- 4866(line=185, offs=59)
+*/
+ATSINSflab(__patsflab___patsfun_105):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4844(line=185, offs=37) -- 4866(line=185, offs=59)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4852(line=185, offs=45) -- 4865(line=185, offs=58)
+*/
+
+ATSINSmove_nil(tmpret254) ;
+
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret254) ;
+} /* end of [__patsfun_105] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4892(line=187, offs=11) -- 4914(line=187, offs=33)
+*/
+/*
+local: 
+global: __patsfun_106$0(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_106(atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret255, atstype_boxed) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4892(line=187, offs=11) -- 4914(line=187, offs=33)
+*/
+ATSINSflab(__patsflab___patsfun_106):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4892(line=187, offs=11) -- 4914(line=187, offs=33)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 4900(line=187, offs=19) -- 4913(line=187, offs=32)
+*/
+
+ATSINSmove_nil(tmpret255) ;
+
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret255) ;
+} /* end of [__patsfun_106] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$14(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__14(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__14, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__14, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__14, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__14, atspre_g0int_eq_int(arg0, tmp19__14)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__14) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__14] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
+*/
+/*
+local: 
+global: gt_g1int_int$6$6(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4703)
+tmparg = S2Evar(tk(4703))
+tmpsub = Some(tk(4703) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6__6(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret11__6, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp12__6, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
+*/
+ATSINSmove(tmp12__6, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
+*/
+ATSINSmove(tmpret11__6, atspre_g1int_gt_int(arg0, tmp12__6)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret11__6) ;
+} /* end of [ATSLIB_056_prelude__gt_g1int_int__6__6] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5013(line=191, offs=13) -- 5063(line=191, offs=63)
+*/
+/*
+local: rip_95$0(level=0), loop_102$0(level=1)
+global: rip_95$0(level=0), loop_102$0(level=1), __patsfun_109$0(level=2)
+local: n$5175(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), acc$5176(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+global: n$5175(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int)))), acc$5176(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_109(atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) env1, atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret265, atstype_boxed) ;
+ATStmpdec(tmp266, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp267, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5013(line=191, offs=13) -- 5063(line=191, offs=63)
+*/
+ATSINSflab(__patsflab___patsfun_109):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5013(line=191, offs=13) -- 5063(line=191, offs=63)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5046(line=191, offs=46) -- 5057(line=191, offs=57)
+*/
+ATSINSmove(tmp267, rip_95(env0, env1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5041(line=191, offs=41) -- 5061(line=191, offs=61)
+*/
+ATSINSmove(tmp266, loop_102(tmp267, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5021(line=191, offs=21) -- 5062(line=191, offs=62)
+*/
+
+/*
+#LINCONSTATUS==0
+*/
+ATSINSmove_con1_beg()
+ATSINSmove_con1_new(tmpret265, postiats_tysum_1) ;
+#if(0)
+ATSINSstore_con1_tag(tmpret265, 1) ;
+#endif
+ATSINSstore_con1_ofs(tmpret265, postiats_tysum_1, atslab__0, env1) ;
+ATSINSstore_con1_ofs(tmpret265, postiats_tysum_1, atslab__1, tmp266) ;
+ATSINSmove_con1_end()
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret265) ;
+} /* end of [__patsfun_109] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5091(line=193, offs=13) -- 5143(line=193, offs=65)
+*/
+/*
+local: 
+global: __patsfun_110$0(level=2)
+local: acc$5176(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+global: acc$5176(2)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_110(atstkind_t0ype(atstype_int) env0, atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret268, atstype_boxed) ;
+ATStmpdec(tmp269, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5091(line=193, offs=13) -- 5143(line=193, offs=65)
+*/
+ATSINSflab(__patsflab___patsfun_110):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5091(line=193, offs=13) -- 5143(line=193, offs=65)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5119(line=193, offs=41) -- 5141(line=193, offs=63)
+*/
+ATSINSmove_ldelay(tmp269, atstype_boxed, ATSPMVcfunlab(1, __patsfun_111, ())) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5099(line=193, offs=21) -- 5142(line=193, offs=64)
+*/
+
+/*
+#LINCONSTATUS==0
+*/
+ATSINSmove_con1_beg()
+ATSINSmove_con1_new(tmpret268, postiats_tysum_1) ;
+#if(0)
+ATSINSstore_con1_tag(tmpret268, 1) ;
+#endif
+ATSINSstore_con1_ofs(tmpret268, postiats_tysum_1, atslab__0, env0) ;
+ATSINSstore_con1_ofs(tmpret268, postiats_tysum_1, atslab__1, tmp269) ;
+ATSINSmove_con1_end()
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret268) ;
+} /* end of [__patsfun_110] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5119(line=193, offs=41) -- 5141(line=193, offs=63)
+*/
+/*
+local: 
+global: __patsfun_111$0(level=3)
+local: 
+global: 
+*/
+ATSstatic()
+atstype_boxed
+__patsfun_111(atstype_bool arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret270, atstype_boxed) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5119(line=193, offs=41) -- 5141(line=193, offs=63)
+*/
+ATSINSflab(__patsflab___patsfun_111):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5119(line=193, offs=41) -- 5141(line=193, offs=63)
+*/
+ATSif(
+arg0
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5127(line=193, offs=49) -- 5140(line=193, offs=62)
+*/
+
+ATSINSmove_nil(tmpret270) ;
+
+} ATSelse() {
+/* (*nothing*) */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret270) ;
+} /* end of [__patsfun_111] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5241(line=201, offs=4) -- 5681(line=219, offs=6)
+*/
+/*
+local: is_prime_20$0(level=0), rip_95$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), rip_95$0(level=0), little_omega_112$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+little_omega_112(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret272, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5241(line=201, offs=4) -- 5681(line=219, offs=6)
+*/
+ATSINSflab(__patsflab_little_omega_112):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5279(line=202, offs=3) -- 5681(line=219, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5665(line=218, offs=5) -- 5675(line=218, offs=15)
+*/
+ATSINSmove(tmpret272, loop_113(arg0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5279(line=202, offs=3) -- 5681(line=219, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret272) ;
+} /* end of [little_omega_112] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5291(line=203, offs=9) -- 5655(line=216, offs=27)
+*/
+/*
+local: is_prime_20$0(level=0), rip_95$0(level=0), loop_113$0(level=1)
+global: is_prime_20$0(level=0), rip_95$0(level=0), loop_113$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+loop_113(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(tmpret273, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp274, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp277, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp278, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp279, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp282, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp283, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp286, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp287, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp288, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp289, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5291(line=203, offs=9) -- 5655(line=216, offs=27)
+*/
+ATSINSflab(__patsflab_loop_113):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5385(line=204, offs=10) -- 5393(line=204, offs=18)
+*/
+ATSINSmove(tmp274, ATSLIB_056_prelude__gte_g1int_int__40__4(arg1, arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5382(line=204, offs=7) -- 5655(line=216, offs=27)
+*/
+ATSif(
+tmp274
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5410(line=205, offs=12) -- 5420(line=205, offs=22)
+*/
+ATSINSmove(tmp277, is_prime_20(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5407(line=205, offs=9) -- 5463(line=208, offs=12)
+*/
+ATSif(
+tmp277
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5437(line=206, offs=11) -- 5438(line=206, offs=12)
+*/
+ATSINSmove(tmpret273, ATSPMVi0nt(1)) ;
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5462(line=208, offs=11) -- 5463(line=208, offs=12)
+*/
+ATSINSmove(tmpret273, ATSPMVi0nt(0)) ;
+} /* ATSendif */
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5486(line=210, offs=12) -- 5513(line=210, offs=39)
+*/
+ATSINSmove(tmp282, atspre_g0int_mod_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5486(line=210, offs=12) -- 5513(line=210, offs=39)
+*/
+ATSINSmove(tmp279, ATSLIB_056_prelude__eq_g0int_int__12__15(tmp282, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5486(line=210, offs=12) -- 5513(line=210, offs=39)
+*/
+ATSif(
+tmp279
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5486(line=210, offs=12) -- 5513(line=210, offs=39)
+*/
+ATSINSmove(tmp278, is_prime_20(arg1)) ;
+
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5486(line=210, offs=12) -- 5513(line=210, offs=39)
+*/
+ATSINSmove(tmp278, ATSPMVbool_false()) ;
+} /* ATSendif */
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5483(line=210, offs=9) -- 5655(line=216, offs=27)
+*/
+ATSif(
+tmp278
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5533(line=211, offs=14) -- 5540(line=211, offs=21)
+*/
+ATSINSmove(tmp286, atspre_g1int_div_int(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5533(line=211, offs=14) -- 5544(line=211, offs=25)
+*/
+ATSINSmove(tmp283, ATSLIB_056_prelude__gt_g1int_int__6__7(tmp286, ATSPMVi0nt(0))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5530(line=211, offs=11) -- 5615(line=214, offs=14)
+*/
+ATSif(
+tmp283
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5571(line=212, offs=22) -- 5582(line=212, offs=33)
+*/
+ATSINSmove(tmp288, rip_95(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5566(line=212, offs=17) -- 5586(line=212, offs=37)
+*/
+ATSINSmove(tmp287, loop_113(tmp288, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5562(line=212, offs=13) -- 5586(line=212, offs=37)
+*/
+ATSINSmove(tmpret273, atspre_g0int_add_int(ATSPMVi0nt(1), tmp287)) ;
+
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5614(line=214, offs=13) -- 5615(line=214, offs=14)
+*/
+ATSINSmove(tmpret273, ATSPMVi0nt(1)) ;
+} /* ATSendif */
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5647(line=216, offs=19) -- 5654(line=216, offs=26)
+*/
+ATSINSmove(tmp289, atspre_g1int_add_int(arg1, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5639(line=216, offs=11) -- 5655(line=216, offs=27)
+*/
+ATStailcal_beg()
+ATSINSmove_tlcal(apy0, arg0) ;
+ATSINSmove_tlcal(apy1, tmp289) ;
+ATSINSargmove_tlcal(arg0, apy0) ;
+ATSINSargmove_tlcal(arg1, apy1) ;
+ATSINSfgoto(__patsflab_loop_113) ;
+ATStailcal_end()
+
+} /* ATSendif */
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret273) ;
+} /* end of [loop_113] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12757(line=663, offs=3) -- 12797(line=663, offs=43)
+*/
+/*
+local: 
+global: gte_g1int_int$40$4(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4706)
+tmparg = S2Evar(tk(4706))
+tmpsub = Some(tk(4706) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gte_g1int_int__40__4(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret71__4, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp72__4, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12741(line=662, offs=1) -- 12797(line=663, offs=43)
+*/
+ATSINSflab(__patsflab_gte_g1int_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12784(line=663, offs=30) -- 12795(line=663, offs=41)
+*/
+ATSINSmove(tmp72__4, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12766(line=663, offs=12) -- 12797(line=663, offs=43)
+*/
+ATSINSmove(tmpret71__4, atspre_g1int_gte_int(arg0, tmp72__4)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret71__4) ;
+} /* end of [ATSLIB_056_prelude__gte_g1int_int__40__4] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+*/
+/*
+local: 
+global: eq_g0int_int$12$15(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4694)
+tmparg = S2Evar(tk(4694))
+tmpsub = Some(tk(4694) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__eq_g0int_int__12__15(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret18__15, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp19__15, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+*/
+ATSINSmove(tmp19__15, atspre_g0int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+*/
+ATSINSmove(tmpret18__15, atspre_g0int_eq_int(arg0, tmp19__15)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret18__15) ;
+} /* end of [ATSLIB_056_prelude__eq_g0int_int__12__15] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
+*/
+/*
+local: 
+global: gt_g1int_int$6$7(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4703)
+tmparg = S2Evar(tk(4703))
+tmpsub = Some(tk(4703) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__gt_g1int_int__6__7(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret11__7, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp12__7, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
+*/
+ATSINSmove(tmp12__7, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
+*/
+ATSINSmove(tmpret11__7, atspre_g1int_gt_int(arg0, tmp12__7)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret11__7) ;
+} /* end of [ATSLIB_056_prelude__gt_g1int_int__6__7] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5715(line=222, offs=4) -- 6204(line=234, offs=8)
+*/
+/*
+local: prime_factors_101$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), rip_95$0(level=0), prime_factors_101$0(level=0), totient_117$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_t0ype(atstype_int)
+totient_117(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret290, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref295, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmpref296, postiats_tyrec_0) ;
+ATStmpdec(tmpref297, postiats_tyrec_0) ;
+ATStmpdec(tmp315, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5715(line=222, offs=4) -- 6204(line=234, offs=8)
+*/
+ATSINSflab(__patsflab_totient_117):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5748(line=223, offs=3) -- 6204(line=234, offs=8)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5765(line=224, offs=7) -- 5766(line=224, offs=8)
+*/
+ATSINSlab(__atstmplab29):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5723(line=222, offs=12) -- 5724(line=222, offs=13)
+*/
+ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab31) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5766(line=224, offs=8) -- 5766(line=224, offs=8)
+*/
+ATSINSlab(__atstmplab30):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5770(line=224, offs=12) -- 5771(line=224, offs=13)
+*/
+ATSINSmove(tmpret290, ATSPMVi0nt(1)) ;
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5779(line=225, offs=8) -- 5779(line=225, offs=8)
+*/
+ATSINSlab(__atstmplab31):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5784(line=225, offs=13) -- 6204(line=234, offs=8)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5938(line=229, offs=11) -- 5939(line=229, offs=12)
+*/
+/*
+ATSINStmpdec(tmpref295) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5958(line=229, offs=31) -- 5973(line=229, offs=46)
+*/
+ATSINSmove(tmpref295, prime_factors_101(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5985(line=230, offs=11) -- 5995(line=230, offs=21)
+*/
+/*
+ATSINStmpdec(tmpref296) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5998(line=230, offs=24) -- 6024(line=230, offs=50)
+*/
+ATSINSmove_fltrec_beg()
+ATSINSstore_fltrec_ofs(tmpref296, postiats_tyrec_0, atslab__first, ATSPMVi0nt(1)) ;
+ATSINSstore_fltrec_ofs(tmpref296, postiats_tyrec_0, atslab__second, ATSPMVi0nt(1)) ;
+ATSINSmove_fltrec_end()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6042(line=231, offs=11) -- 6043(line=231, offs=12)
+*/
+/*
+ATSINStmpdec(tmpref297) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6046(line=231, offs=15) -- 6133(line=231, offs=102)
+*/
+ATSINSmove(tmpref297, ATSLIB_056_prelude__stream_vt_foldleft_cloptr__120__1(tmpref295, tmpref296, ATSPMVcfunlab(1, __patsfun_124, ()))) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6164(line=233, offs=17) -- 6185(line=233, offs=38)
+*/
+ATSINSmove(tmp315, atspre_g0int_mul_int(arg0, ATSSELfltrec(tmpref297, postiats_tyrec_0, atslab__first))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6154(line=233, offs=7) -- 6196(line=233, offs=49)
+*/
+ATSINSmove(tmpret290, atspre_g0int_div_int(tmp315, ATSSELfltrec(tmpref297, postiats_tyrec_0, atslab__second))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5784(line=225, offs=13) -- 6204(line=234, offs=8)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+ATSfunbody_end()
+ATSreturn(tmpret290) ;
+} /* end of [totient_117] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5797(line=226, offs=10) -- 5920(line=227, offs=80)
+*/
+/*
+local: 
+global: adjust_contents_118$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+postiats_tyrec_0
+adjust_contents_118(postiats_tyrec_0 arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret291, postiats_tyrec_0) ;
+ATStmpdec(tmp292, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp293, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp294, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5797(line=226, offs=10) -- 5920(line=227, offs=80)
+*/
+ATSINSflab(__patsflab_adjust_contents_118):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5879(line=227, offs=39) -- 5884(line=227, offs=44)
+*/
+ATSINSmove(tmp293, atspre_g0int_sub_int(arg1, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5860(line=227, offs=20) -- 5885(line=227, offs=45)
+*/
+ATSINSmove(tmp292, atspre_g0int_mul_int(ATSSELfltrec(arg0, postiats_tyrec_0, atslab__first), tmp293)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5896(line=227, offs=56) -- 5918(line=227, offs=78)
+*/
+ATSINSmove(tmp294, atspre_g0int_mul_int(ATSSELfltrec(arg0, postiats_tyrec_0, atslab__second), arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 5849(line=227, offs=9) -- 5920(line=227, offs=80)
+*/
+ATSINSmove_fltrec_beg()
+ATSINSstore_fltrec_ofs(tmpret291, postiats_tyrec_0, atslab__first, tmp292) ;
+ATSINSstore_fltrec_ofs(tmpret291, postiats_tyrec_0, atslab__second, tmp294) ;
+ATSINSmove_fltrec_end()
+ATSfunbody_end()
+ATSreturn(tmpret291) ;
+} /* end of [adjust_contents_118] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 26263(line=1640, offs=3) -- 26743(line=1671, offs=2)
+*/
+/*
+local: 
+global: stream_vt_foldleft_cloptr$120$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = res(8865), a(8866)
+tmparg = S2Evar(res(8865)); S2Evar(a(8866))
+tmpsub = None()
+*/
+atstyvar_type(res)
+ATSLIB_056_prelude__stream_vt_foldleft_cloptr__120(atstkind_type(atstype_ptrk) arg0, atstyvar_type(res) arg1, atstype_cloptr arg2)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret298, atstyvar_type(res)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26235(line=1639, offs=1) -- 26743(line=1671, offs=2)
+*/
+ATSINSflab(__patsflab_stream_vt_foldleft_cloptr):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26284(line=1641, offs=3) -- 26743(line=1671, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26284(line=1641, offs=3) -- 26304(line=1641, offs=23)
+*/
+ATSINSmove(tmpret298, ATSfunclo_fun(PMVd2vfunlab(d2v=loop$4501(1), flab=loop_121$0(level=1)), (atstkind_type(atstype_ptrk), atstyvar_type(res), atstype_cloptr), atstyvar_type(res))(arg0, arg1, arg2)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26284(line=1641, offs=3) -- 26743(line=1671, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret298) ;
+} /* end of [ATSLIB_056_prelude__stream_vt_foldleft_cloptr__120] */
+#endif // end of [TEMPLATE]
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 26320(line=1645, offs=1) -- 26721(line=1669, offs=4)
+*/
+/*
+local: loop_121$0(level=1)
+global: loop_121$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+atstyvar_type(res)
+loop_121__121(atstkind_type(atstype_ptrk) arg0, atstyvar_type(res) arg1, atstype_cloptr arg2)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(apy0, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(apy1, atstyvar_type(res)) ;
+ATStmpdec(apy2, atstype_cloptr) ;
+ATStmpdec(tmpret299, atstyvar_type(res)) ;
+ATStmpdec(tmpref300, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp301, atstype_boxed) ;
+// ATStmpdec_void(tmp304) ;
+ATStmpdec(tmp305, atstyvar_type(res)) ;
+ATStmpdec(tmp306, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26320(line=1645, offs=1) -- 26721(line=1669, offs=4)
+*/
+ATSINSflab(__patsflab_loop_121):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26398(line=1651, offs=6) -- 26721(line=1669, offs=4)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26408(line=1652, offs=7) -- 26414(line=1652, offs=13)
+*/
+/*
+ATSINStmpdec(tmpref300) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26417(line=1652, offs=16) -- 26420(line=1652, offs=19)
+*/
+ATSINSmove_llazyeval(tmpref300, atstype_boxed, arg0) ;
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26433(line=1656, offs=1) -- 26439(line=1656, offs=7)
+*/
+ATSINSmove(tmp301, tmpref300) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26427(line=1655, offs=1) -- 26687(line=1667, offs=6)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26454(line=1658, offs=3) -- 26475(line=1659, offs=7)
+*/
+ATSINSlab(__atstmplab32):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26433(line=1656, offs=1) -- 26439(line=1656, offs=7)
+*/
+ATSifthen(ATSCKptriscons(tmp301)) { ATSINSgoto(__atstmplab35) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26475(line=1659, offs=7) -- 26475(line=1659, offs=7)
+*/
+ATSINSlab(__atstmplab33):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26487(line=1661, offs=5) -- 26519(line=1661, offs=37)
+*/
+ATSINSmove_void(tmp304, atspre_cloptr_free(ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), arg2))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26521(line=1661, offs=39) -- 26524(line=1661, offs=42)
+*/
+ATSINSmove(tmpret299, arg1) ;
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26560(line=1663, offs=3) -- 26589(line=1664, offs=14)
+*/
+ATSINSlab(__atstmplab34):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26433(line=1656, offs=1) -- 26439(line=1656, offs=7)
+*/
+#if(0)
+ATSifthen(ATSCKptrisnull(tmp301)) { ATSINSdeadcode_fail() ; } ;
+#endif
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26589(line=1664, offs=14) -- 26589(line=1664, offs=14)
+*/
+ATSINSlab(__atstmplab35):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26593(line=1664, offs=18) -- 26687(line=1667, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26611(line=1665, offs=15) -- 26624(line=1665, offs=28)
+*/
+ATSINSmove(tmp305, ATSfunclo_clo(ATSPMVrefarg0(arg2), (atstype_cloptr, atstyvar_type(res), atsrefarg1_type(atstyvar_type(a))), atstyvar_type(res))(ATSPMVrefarg0(arg2), arg1, ATSPMVrefarg1(ATSPMVptrof(ATSSELcon(tmp301, postiats_tysum_4, atslab__0))))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26639(line=1666, offs=15) -- 26642(line=1666, offs=18)
+*/
+ATSINSmove(tmp306, ATSSELcon(tmp301, postiats_tysum_4, atslab__1)) ;
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26646(line=1666, offs=22) -- 26658(line=1666, offs=34)
+*/
+ATSINSfreecon(tmpref300) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26661(line=1666, offs=37) -- 26681(line=1666, offs=57)
+*/
+ATStailcal_beg()
+ATSINSmove_tlcal(apy0, tmp306) ;
+ATSINSmove_tlcal(apy1, tmp305) ;
+ATSINSmove_tlcal(apy2, arg2) ;
+ATSINSargmove_tlcal(arg0, apy0) ;
+ATSINSargmove_tlcal(arg1, apy1) ;
+ATSINSargmove_tlcal(arg2, apy2) ;
+ATSINSfgoto(__patsflab_loop_121) ;
+ATStailcal_end()
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26593(line=1664, offs=18) -- 26687(line=1667, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26398(line=1651, offs=6) -- 26721(line=1669, offs=4)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret299) ;
+} /* end of [loop_121__121] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 26263(line=1640, offs=3) -- 26743(line=1671, offs=2)
+*/
+/*
+local: 
+global: stream_vt_foldleft_cloptr$120$1(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = res(8865), a(8866)
+tmparg = S2Evar(res(8865)); S2Evar(a(8866))
+tmpsub = Some(res(8865) -> S2EVar(5872); a(8866) -> S2Eapp(S2Ecst(g0int_t0ype); S2Eextkind(atstype_int)))
+*/
+postiats_tyrec_0
+ATSLIB_056_prelude__stream_vt_foldleft_cloptr__120__1(atstkind_type(atstype_ptrk) arg0, postiats_tyrec_0 arg1, atstype_cloptr arg2)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret298__1, postiats_tyrec_0) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26235(line=1639, offs=1) -- 26743(line=1671, offs=2)
+*/
+ATSINSflab(__patsflab_stream_vt_foldleft_cloptr):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26284(line=1641, offs=3) -- 26743(line=1671, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26284(line=1641, offs=3) -- 26304(line=1641, offs=23)
+*/
+ATSINSmove(tmpret298__1, loop_121__121__1(arg0, arg1, arg2)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26284(line=1641, offs=3) -- 26743(line=1671, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret298__1) ;
+} /* end of [ATSLIB_056_prelude__stream_vt_foldleft_cloptr__120__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 26320(line=1645, offs=1) -- 26721(line=1669, offs=4)
+*/
+/*
+local: loop_121$1(level=2)
+global: loop_121$1(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+postiats_tyrec_0
+loop_121__121__1(atstkind_type(atstype_ptrk) arg0, postiats_tyrec_0 arg1, atstype_cloptr arg2)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(apy0, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(apy1, postiats_tyrec_0) ;
+ATStmpdec(apy2, atstype_cloptr) ;
+ATStmpdec(tmpret299__1, postiats_tyrec_0) ;
+ATStmpdec(tmpref300__1, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp301__1, atstype_boxed) ;
+// ATStmpdec_void(tmp304__1) ;
+ATStmpdec(tmp305__1, postiats_tyrec_0) ;
+ATStmpdec(tmp306__1, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26320(line=1645, offs=1) -- 26721(line=1669, offs=4)
+*/
+ATSINSflab(__patsflab_loop_121):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26398(line=1651, offs=6) -- 26721(line=1669, offs=4)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26408(line=1652, offs=7) -- 26414(line=1652, offs=13)
+*/
+/*
+ATSINStmpdec(tmpref300) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26417(line=1652, offs=16) -- 26420(line=1652, offs=19)
+*/
+ATSINSmove_llazyeval(tmpref300__1, atstype_boxed, arg0) ;
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26433(line=1656, offs=1) -- 26439(line=1656, offs=7)
+*/
+ATSINSmove(tmp301__1, tmpref300__1) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26427(line=1655, offs=1) -- 26687(line=1667, offs=6)
+*/
+ATScaseof_beg()
+/*
+** ibranchlst-beg
+*/
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26454(line=1658, offs=3) -- 26475(line=1659, offs=7)
+*/
+ATSINSlab(__atstmplab32):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26433(line=1656, offs=1) -- 26439(line=1656, offs=7)
+*/
+ATSifthen(ATSCKptriscons(tmp301__1)) { ATSINSgoto(__atstmplab35) ; } ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26475(line=1659, offs=7) -- 26475(line=1659, offs=7)
+*/
+ATSINSlab(__atstmplab33):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26487(line=1661, offs=5) -- 26519(line=1661, offs=37)
+*/
+ATSINSmove_void(tmp304__1, atspre_cloptr_free(ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), arg2))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26521(line=1661, offs=39) -- 26524(line=1661, offs=42)
+*/
+ATSINSmove(tmpret299__1, arg1) ;
+ATSbranch_end()
+
+ATSbranch_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26560(line=1663, offs=3) -- 26589(line=1664, offs=14)
+*/
+ATSINSlab(__atstmplab34):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26433(line=1656, offs=1) -- 26439(line=1656, offs=7)
+*/
+#if(0)
+ATSifthen(ATSCKptrisnull(tmp301__1)) { ATSINSdeadcode_fail() ; } ;
+#endif
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26589(line=1664, offs=14) -- 26589(line=1664, offs=14)
+*/
+ATSINSlab(__atstmplab35):
+/*
+emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
+*/
+/*
+ibranch-mbody:
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26593(line=1664, offs=18) -- 26687(line=1667, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26611(line=1665, offs=15) -- 26624(line=1665, offs=28)
+*/
+ATSINSmove(tmp305__1, ATSfunclo_clo(ATSPMVrefarg0(arg2), (atstype_cloptr, postiats_tyrec_0, atsrefarg1_type(atstkind_t0ype(atstype_int))), postiats_tyrec_0)(ATSPMVrefarg0(arg2), arg1, ATSPMVrefarg1(ATSPMVptrof(ATSSELcon(tmp301__1, postiats_tysum_1, atslab__0))))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26639(line=1666, offs=15) -- 26642(line=1666, offs=18)
+*/
+ATSINSmove(tmp306__1, ATSSELcon(tmp301__1, postiats_tysum_1, atslab__1)) ;
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26646(line=1666, offs=22) -- 26658(line=1666, offs=34)
+*/
+ATSINSfreecon(tmpref300__1) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26661(line=1666, offs=37) -- 26681(line=1666, offs=57)
+*/
+ATStailcal_beg()
+ATSINSmove_tlcal(apy0, tmp306__1) ;
+ATSINSmove_tlcal(apy1, tmp305__1) ;
+ATSINSmove_tlcal(apy2, arg2) ;
+ATSINSargmove_tlcal(arg0, apy0) ;
+ATSINSargmove_tlcal(arg1, apy1) ;
+ATSINSargmove_tlcal(arg2, apy2) ;
+ATSINSfgoto(__patsflab_loop_121) ;
+ATStailcal_end()
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26593(line=1664, offs=18) -- 26687(line=1667, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSbranch_end()
+
+/*
+** ibranchlst-end
+*/
+ATScaseof_end()
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats({$PATSPRE}/DATS/stream_vt.dats): 26398(line=1651, offs=6) -- 26721(line=1669, offs=4)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret299__1) ;
+} /* end of [loop_121__121__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6087(line=231, offs=56) -- 6132(line=231, offs=101)
+*/
+/*
+local: adjust_contents_118$0(level=1)
+global: adjust_contents_118$0(level=1), __patsfun_124$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+postiats_tyrec_0
+__patsfun_124(postiats_tyrec_0 arg0, atsrefarg1_type(atstkind_t0ype(atstype_int)) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret314, postiats_tyrec_0) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6087(line=231, offs=56) -- 6132(line=231, offs=101)
+*/
+ATSINSflab(__patsflab___patsfun_124):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6106(line=231, offs=75) -- 6132(line=231, offs=101)
+*/
+ATSINSmove(tmpret314, adjust_contents_118(arg0, ATSderef(arg1, atstkind_t0ype(atstype_int)))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret314) ;
+} /* end of [__patsfun_124] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6256(line=237, offs=4) -- 6644(line=251, offs=6)
+*/
+/*
+local: witness_0$0(level=0), totient_117$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), rip_95$0(level=0), prime_factors_101$0(level=0), totient_117$0(level=0), totient_sum_125$0(level=0)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+totient_sum_125(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret316, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6256(line=237, offs=4) -- 6644(line=251, offs=6)
+*/
+ATSINSflab(__patsflab_totient_sum_125):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6296(line=238, offs=3) -- 6644(line=251, offs=6)
+*/
+/*
+letpush(beg)
+*/
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6628(line=250, offs=5) -- 6638(line=250, offs=15)
+*/
+ATSINSmove(tmpret316, loop_126(ATSPMVi0nt(1), arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6296(line=238, offs=3) -- 6644(line=251, offs=6)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret316) ;
+} /* end of [totient_sum_125] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6308(line=239, offs=9) -- 6618(line=248, offs=40)
+*/
+/*
+local: witness_0$0(level=0), totient_117$0(level=0), loop_126$0(level=1)
+global: witness_0$0(level=0), totient_117$0(level=0), loop_126$0(level=1)
+local: 
+global: 
+*/
+ATSstatic()
+atstkind_type(atstype_ptrk)
+loop_126(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(tmpret317, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp318, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmpref321, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp322, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmpref323, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp328, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp329, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp337, atstkind_t0ype(atstype_int)) ;
+ATStmpdec(tmp338, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+/*
+emit_funent_fnxdeclst:
+*/
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6308(line=239, offs=9) -- 6618(line=248, offs=40)
+*/
+ATSINSflab(__patsflab_loop_126):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6411(line=240, offs=10) -- 6420(line=240, offs=19)
+*/
+ATSINSmove(tmp318, ATSLIB_056_prelude__lt_g1int_int__22__3(arg0, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6408(line=240, offs=7) -- 6618(line=248, offs=40)
+*/
+ATSif(
+tmp318
+) ATSthen() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6434(line=241, offs=9) -- 6567(line=246, offs=12)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6452(line=242, offs=15) -- 6453(line=242, offs=16)
+*/
+/*
+ATSINStmpdec(tmpref321) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6461(line=242, offs=24) -- 6466(line=242, offs=29)
+*/
+ATSINSmove(tmp322, atspre_g1int_add_int(arg0, ATSPMVi0nt(1))) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6456(line=242, offs=19) -- 6474(line=242, offs=37)
+*/
+ATSINSmove(tmpref321, loop_126(tmp322, arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6489(line=243, offs=15) -- 6490(line=243, offs=16)
+*/
+/*
+ATSINStmpdec(tmpref323) ;
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6520(line=243, offs=46) -- 6529(line=243, offs=55)
+*/
+ATSINSmove(tmp329, totient_117(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6512(line=243, offs=38) -- 6531(line=243, offs=57)
+*/
+ATSINSmove(tmp328, witness_0(tmp329)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6493(line=243, offs=19) -- 6532(line=243, offs=58)
+*/
+ATSINSmove(tmpref323, ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_int__128__1(tmpref321, tmp328)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6554(line=245, offs=11) -- 6555(line=245, offs=12)
+*/
+ATSINSmove(tmpret317, tmpref323) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6434(line=241, offs=9) -- 6567(line=246, offs=12)
+*/
+/*
+INSletpop()
+*/
+} ATSelse() {
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6587(line=248, offs=9) -- 6618(line=248, offs=40)
+*/
+ATSINSmove(tmp338, totient_117(arg0)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6587(line=248, offs=9) -- 6618(line=248, offs=40)
+*/
+ATSINSmove(tmp337, witness_0(tmp338)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/number-theory-internal.dats: 6587(line=248, offs=9) -- 6618(line=248, offs=40)
+*/
+ATSINSmove(tmpret317, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__130__1(tmp337)) ;
+
+} /* ATSendif */
+ATSfunbody_end()
+ATSreturn(tmpret317) ;
+/*
+emit_funent_fnxbodylst:
+*/
+} /* end of [loop_126] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
+*/
+/*
+local: 
+global: lt_g1int_int$22$3(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = tk(4697)
+tmparg = S2Evar(tk(4697))
+tmpsub = Some(tk(4697) -> S2Eextkind(atstype_int))
+*/
+atstkind_t0ype(atstype_bool)
+ATSLIB_056_prelude__lt_g1int_int__22__3(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret33__3, atstkind_t0ype(atstype_bool)) ;
+ATStmpdec(tmp34__3, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
+*/
+ATSINSmove(tmp34__3, atspre_g1int2int_int_int(arg1)) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
+*/
+ATSINSmove(tmpret33__3, atspre_g1int_lt_int(arg0, tmp34__3)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret33__3) ;
+} /* end of [ATSLIB_056_prelude__lt_g1int_int__22__3] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5151(line=274, offs=3) -- 5217(line=279, offs=2)
+*/
+/*
+local: 
+global: add_intinf0_int$128$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = 
+tmparg = 
+tmpsub = None()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_int__128(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret324, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp325) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5133(line=273, offs=1) -- 5217(line=279, offs=2)
+*/
+ATSINSflab(__patsflab_add_intinf0_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5160(line=274, offs=12) -- 5217(line=279, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5184(line=277, offs=10) -- 5212(line=277, offs=38)
+*/
+ATSINSmove_void(tmp325, atscntrb_gmp_mpz_add2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5161(line=274, offs=13) -- 5162(line=274, offs=14)
+*/
+ATSINSmove(tmpret324, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5160(line=274, offs=12) -- 5217(line=279, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret324) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_int__128] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5151(line=274, offs=3) -- 5217(line=279, offs=2)
+*/
+/*
+local: 
+global: add_intinf0_int$128$1(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_int__128__1(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret324__1, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp325__1) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5133(line=273, offs=1) -- 5217(line=279, offs=2)
+*/
+ATSINSflab(__patsflab_add_intinf0_int):
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5160(line=274, offs=12) -- 5217(line=279, offs=2)
+*/
+/*
+letpush(beg)
+*/
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5184(line=277, offs=10) -- 5212(line=277, offs=38)
+*/
+ATSINSmove_void(tmp325__1, atscntrb_gmp_mpz_add2_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5161(line=274, offs=13) -- 5162(line=274, offs=14)
+*/
+ATSINSmove(tmpret324__1, arg0) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 5160(line=274, offs=12) -- 5217(line=279, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret324__1) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__add_intinf0_int__128__1] */
+
+#if(0)
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$130$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+/*
+imparg = 
+tmparg = 
+tmpsub = None()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__130(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret330, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp331, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp332) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp331, PMVtmpltcst(ptr_alloc<S2Ecst(mpz_vt0ype)>)()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp332, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp331, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret330, tmp331) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret330) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__130] */
+#endif // end of [TEMPLATE]
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
+*/
+/*
+local: 
+global: intinf_make_int$130$1(level=2)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = 
+tmparg = 
+tmpsub = Some()
+*/
+atstkind_type(atstype_ptrk)
+ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__130__1(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret330__1, atstkind_type(atstype_ptrk)) ;
+ATStmpdec(tmp331__1, atstkind_type(atstype_ptrk)) ;
+// ATStmpdec_void(tmp332__1) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
+*/
+ATSINSmove(tmp331__1, ATSLIB_056_prelude__ptr_alloc__2__2()) ;
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
+*/
+ATSINSmove_void(tmp332__1, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp331__1, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;
+
+/*
+letpush(end)
+*/
+
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
+*/
+ATSINSmove(tmpret330__1, tmp331__1) ;
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
+*/
+/*
+INSletpop()
+*/
+ATSfunbody_end()
+ATSreturn(tmpret330__1) ;
+} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__130__1] */
+
+/*
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+*/
+/*
+local: 
+global: ptr_alloc$2$2(level=3)
+local: 
+global: 
+*/
+ATSstatic()
+/*
+imparg = a(4806)
+tmparg = S2Evar(a(4806))
+tmpsub = Some(a(4806) -> S2Ecst(mpz_vt0ype))
+*/
+atstkind_type(atstype_ptrk)
+ATSLIB_056_prelude__ptr_alloc__2__2()
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret3__2, atstkind_type(atstype_ptrk)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+*/
+ATSINSmove(tmpret3__2, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret3__2) ;
+} /* end of [ATSLIB_056_prelude__ptr_alloc__2__2] */
+
+/*
+/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 558(line=30, offs=28) -- 580(line=31, offs=17)
+*/
+/*
+local: sum_divisors_86$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), sum_divisors_86$0(level=0), sum_divisors_ats$133$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+atstkind_t0ype(atstype_int)
+sum_divisors_ats(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret339, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 541(line=30, offs=11) -- 581(line=31, offs=18)
+*/
+ATSINSflab(__patsflab_sum_divisors_ats):
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 566(line=31, offs=3) -- 580(line=31, offs=17)
+*/
+ATSINSmove(tmpret339, sum_divisors_86(arg0)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret339) ;
+} /* end of [sum_divisors_ats] */
+
+/*
+/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 612(line=33, offs=30) -- 636(line=34, offs=19)
+*/
+/*
+local: count_divisors_81$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), divisors_36$0(level=0), count_divisors_81$0(level=0), count_divisors_ats$134$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+atstkind_t0ype(atstype_int)
+count_divisors_ats(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret340, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 593(line=33, offs=11) -- 637(line=34, offs=20)
+*/
+ATSINSflab(__patsflab_count_divisors_ats):
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 620(line=34, offs=3) -- 636(line=34, offs=19)
+*/
+ATSINSmove(tmpret340, count_divisors_81(arg0)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret340) ;
+} /* end of [count_divisors_ats] */
+
+/*
+/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 661(line=36, offs=23) -- 678(line=37, offs=12)
+*/
+/*
+local: totient_117$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), rip_95$0(level=0), prime_factors_101$0(level=0), totient_117$0(level=0), totient_ats$135$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+atstkind_t0ype(atstype_int)
+totient_ats(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret341, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 649(line=36, offs=11) -- 679(line=37, offs=13)
+*/
+ATSINSflab(__patsflab_totient_ats):
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 669(line=37, offs=3) -- 678(line=37, offs=12)
+*/
+ATSINSmove(tmpret341, totient_117(arg0)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret341) ;
+} /* end of [totient_ats] */
+
+/*
+/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 708(line=39, offs=28) -- 730(line=40, offs=17)
+*/
+/*
+local: little_omega_112$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), rip_95$0(level=0), little_omega_112$0(level=0), little_omega_ats$136$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+atstkind_t0ype(atstype_int)
+little_omega_ats(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret342, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 691(line=39, offs=11) -- 731(line=40, offs=18)
+*/
+ATSINSflab(__patsflab_little_omega_ats):
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 716(line=40, offs=3) -- 730(line=40, offs=17)
+*/
+ATSINSmove(tmpret342, little_omega_112(arg0)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret342) ;
+} /* end of [little_omega_ats] */
+
+/*
+/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 758(line=42, offs=26) -- 778(line=43, offs=15)
+*/
+/*
+local: is_perfect_93$0(level=0)
+global: witness_0$0(level=0), sqrt_int_17$0(level=0), sum_divisors_86$0(level=0), is_perfect_93$0(level=0), is_perfect_ats$137$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+atstkind_t0ype(atstype_bool)
+is_perfect_ats(atstkind_t0ype(atstype_int) arg0)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret343, atstkind_t0ype(atstype_bool)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 743(line=42, offs=11) -- 779(line=43, offs=16)
+*/
+ATSINSflab(__patsflab_is_perfect_ats):
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 766(line=43, offs=3) -- 778(line=43, offs=15)
+*/
+ATSINSmove(tmpret343, is_perfect_93(arg0)) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret343) ;
+} /* end of [is_perfect_ats] */
+
+/*
+/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 802(line=45, offs=22) -- 835(line=46, offs=25)
+*/
+/*
+local: jacobi_72$0(level=0)
+global: witness_0$0(level=0), exp_5$0(level=0), sqrt_int_17$0(level=0), is_prime_20$0(level=0), div_gt_zero_65$0(level=0), exp_mod_prime_66$0(level=0), jacobi_72$0(level=0), jacobi_ats$138$0(level=0)
+local: 
+global: 
+*/
+ATSextern()
+atstkind_t0ype(atstype_int)
+jacobi_ats(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
+{
+/* tmpvardeclst(beg) */
+ATStmpdec(tmpret344, atstkind_t0ype(atstype_int)) ;
+/* tmpvardeclst(end) */
+ATSfunbody_beg()
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 791(line=45, offs=11) -- 835(line=46, offs=25)
+*/
+ATSINSflab(__patsflab_jacobi_ats):
+/*
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/number-theory.dats: 813(line=46, offs=3) -- 835(line=46, offs=25)
+*/
+ATSINSmove(tmpret344, jacobi_72(arg0, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), arg1))) ;
+
+ATSfunbody_end()
+ATSreturn(tmpret344) ;
+} /* end of [jacobi_ats] */
+
+/*
+** for initialization(dynloading)
+*/
+ATSdynloadflag_minit(_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_number_055_theory_056_dats__dynloadflag) ;
+ATSextern()
+atsvoid_t0ype
+_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_number_055_theory_056_dats__dynload()
+{
+ATSfunbody_beg()
+ATSdynload(/*void*/)
+ATSdynloadflag_sta(
+_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_number_055_theory_056_dats__dynloadflag
+) ;
+ATSif(
+ATSCKiseqz(
+_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_number_055_theory_056_dats__dynloadflag
+)
+) ATSthen() {
+ATSdynloadset(_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_number_055_theory_056_dats__dynloadflag) ;
 /*
 dynexnlst-initize(beg)
 */
diff --git a/cbits/numerics.c b/cbits/numerics.c
--- a/cbits/numerics.c
+++ b/cbits/numerics.c
@@ -1,7 +1,7 @@
 /*
 **
 ** The C code is generated by [ATS/Postiats-0-3-8]
-** The starting compilation time is: 2018-1-15: 14h:59m
+** The starting compilation time is: 2018-1-27: 21h:42m
 **
 */
 
@@ -75,211 +75,211 @@
 staload-prologues(beg)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/basics.dats: 1636(line=50, offs=1) -- 1675(line=50, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/basics.dats: 1636(line=50, offs=1) -- 1675(line=50, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 1533(line=44, offs=1) -- 1572(line=44, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 1533(line=44, offs=1) -- 1572(line=44, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_long.dats: 1602(line=49, offs=1) -- 1641(line=49, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_long.dats: 1602(line=49, offs=1) -- 1641(line=49, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_size.dats: 1597(line=49, offs=1) -- 1636(line=49, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_size.dats: 1597(line=49, offs=1) -- 1636(line=49, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_short.dats: 1603(line=49, offs=1) -- 1642(line=49, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_short.dats: 1603(line=49, offs=1) -- 1642(line=49, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/char.dats: 1610(line=48, offs=1) -- 1649(line=48, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/char.dats: 1610(line=48, offs=1) -- 1649(line=48, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/float.dats: 1636(line=50, offs=1) -- 1675(line=50, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/float.dats: 1636(line=50, offs=1) -- 1675(line=50, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/string.dats: 1631(line=50, offs=1) -- 1670(line=50, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/string.dats: 1631(line=50, offs=1) -- 1670(line=50, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/strptr.dats: 1629(line=50, offs=1) -- 1668(line=50, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/strptr.dats: 1629(line=50, offs=1) -- 1668(line=50, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/strptr.dats: 1691(line=54, offs=1) -- 1738(line=54, offs=48)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/strptr.dats: 1691(line=54, offs=1) -- 1738(line=54, offs=48)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_ptr.dats: 1601(line=49, offs=1) -- 1640(line=49, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_ptr.dats: 1601(line=49, offs=1) -- 1640(line=49, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer_fixed.dats: 1603(line=49, offs=1) -- 1642(line=49, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer_fixed.dats: 1603(line=49, offs=1) -- 1642(line=49, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/memory.dats: 1410(line=38, offs=1) -- 1449(line=39, offs=32)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/memory.dats: 1410(line=38, offs=1) -- 1449(line=39, offs=32)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 1613(line=49, offs=1) -- 1652(line=50, offs=32)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 1613(line=49, offs=1) -- 1652(line=50, offs=32)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 1675(line=54, offs=1) -- 1721(line=55, offs=39)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 1675(line=54, offs=1) -- 1721(line=55, offs=39)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 1744(line=59, offs=1) -- 1789(line=60, offs=38)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 1744(line=59, offs=1) -- 1789(line=60, offs=38)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/stdio.sats: 1390(line=36, offs=1) -- 1437(line=39, offs=3)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/stdio.sats: 1390(line=36, offs=1) -- 1437(line=39, offs=3)
 */
 
 #include \
 "libats/libc/CATS/stdio.cats"
 /*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/stdio.sats: 1950(line=69, offs=1) -- 1999(line=71, offs=34)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/stdio.sats: 1950(line=69, offs=1) -- 1999(line=71, offs=34)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
 */
 
 #include \
 "libats/libc/CATS/sys/types.cats"
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 1871(line=66, offs=1) -- 1918(line=66, offs=48)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 1871(line=66, offs=1) -- 1918(line=66, offs=48)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/stat.sats: 1390(line=36, offs=1) -- 1440(line=39, offs=3)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/sys/stat.sats: 1390(line=36, offs=1) -- 1440(line=39, offs=3)
 */
 
 #include \
 "libats/libc/CATS/sys/stat.cats"
 /*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/stat.sats: 1756(line=58, offs=1) -- 1805(line=60, offs=34)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/sys/stat.sats: 1756(line=58, offs=1) -- 1805(line=60, offs=34)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
 */
 
 #include \
 "libats/libc/CATS/sys/types.cats"
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/filebas.dats: 15529(line=878, offs=1) -- 15566(line=879, offs=30)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/filebas.dats: 15552(line=879, offs=1) -- 15589(line=880, offs=30)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/stdio.sats: 1390(line=36, offs=1) -- 1437(line=39, offs=3)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/stdio.sats: 1390(line=36, offs=1) -- 1437(line=39, offs=3)
 */
 
 #include \
 "libats/libc/CATS/stdio.cats"
 /*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/stdio.sats: 1950(line=69, offs=1) -- 1999(line=71, offs=34)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/stdio.sats: 1950(line=69, offs=1) -- 1999(line=71, offs=34)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
 */
 
 #include \
 "libats/libc/CATS/sys/types.cats"
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/list.dats: 1529(line=44, offs=1) -- 1568(line=45, offs=32)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/list.dats: 1529(line=44, offs=1) -- 1568(line=45, offs=32)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/list.dats: 1569(line=46, offs=1) -- 1615(line=47, offs=39)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/list.dats: 1569(line=46, offs=1) -- 1615(line=47, offs=39)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/list_vt.dats: 1538(line=44, offs=1) -- 1577(line=45, offs=32)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/list_vt.dats: 1538(line=44, offs=1) -- 1577(line=45, offs=32)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/list_vt.dats: 1578(line=46, offs=1) -- 1624(line=47, offs=39)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/list_vt.dats: 1578(line=46, offs=1) -- 1624(line=47, offs=39)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/SHARE/list_vt_mergesort.dats: 1546(line=44, offs=1) -- 1585(line=44, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/SHARE/list_vt_mergesort.dats: 1546(line=44, offs=1) -- 1585(line=44, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/SHARE/list_vt_quicksort.dats: 1546(line=44, offs=1) -- 1585(line=44, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/SHARE/list_vt_quicksort.dats: 1546(line=44, offs=1) -- 1585(line=44, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/array.dats: 1534(line=44, offs=1) -- 1573(line=44, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/array.dats: 1534(line=44, offs=1) -- 1573(line=44, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/array.dats: 1574(line=45, offs=1) -- 1616(line=45, offs=43)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/array.dats: 1574(line=45, offs=1) -- 1616(line=45, offs=43)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/SHARE/array_bsearch.dats: 1531(line=44, offs=1) -- 1570(line=44, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/SHARE/array_bsearch.dats: 1531(line=44, offs=1) -- 1570(line=44, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/SHARE/array_quicksort.dats: 1531(line=44, offs=1) -- 1570(line=44, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/SHARE/array_quicksort.dats: 1531(line=44, offs=1) -- 1570(line=44, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/arrayptr.dats: 1532(line=44, offs=1) -- 1571(line=44, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/arrayptr.dats: 1532(line=44, offs=1) -- 1571(line=44, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/arrayref.dats: 1532(line=44, offs=1) -- 1571(line=44, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/arrayref.dats: 1532(line=44, offs=1) -- 1571(line=44, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/matrix.dats: 1535(line=44, offs=1) -- 1574(line=44, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/matrix.dats: 1535(line=44, offs=1) -- 1574(line=44, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/matrixptr.dats: 1538(line=44, offs=1) -- 1577(line=44, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/matrixptr.dats: 1538(line=44, offs=1) -- 1577(line=44, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/matrixref.dats: 1538(line=44, offs=1) -- 1577(line=44, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/matrixref.dats: 1538(line=44, offs=1) -- 1577(line=44, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream.dats: 1523(line=44, offs=1) -- 1562(line=44, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream.dats: 1523(line=44, offs=1) -- 1562(line=44, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/stream_vt.dats: 1523(line=44, offs=1) -- 1562(line=44, offs=40)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/stream_vt.dats: 1523(line=44, offs=1) -- 1562(line=44, offs=40)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/tostring.dats: 1528(line=44, offs=1) -- 1567(line=45, offs=32)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/tostring.dats: 1528(line=44, offs=1) -- 1567(line=45, offs=32)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/checkast.dats: 1531(line=44, offs=1) -- 1570(line=45, offs=32)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/checkast.dats: 1531(line=44, offs=1) -- 1570(line=45, offs=32)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1660(line=37, offs=1) -- 1700(line=38, offs=27)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1660(line=37, offs=1) -- 1700(line=38, offs=27)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1727(line=42, offs=1) -- 1759(line=42, offs=33)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1727(line=42, offs=1) -- 1759(line=42, offs=33)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1833(line=49, offs=1) -- 1867(line=49, offs=35)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1833(line=49, offs=1) -- 1867(line=49, offs=35)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1868(line=50, offs=1) -- 1908(line=50, offs=41)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1868(line=50, offs=1) -- 1908(line=50, offs=41)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1656(line=37, offs=1) -- 1696(line=39, offs=27)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1656(line=37, offs=1) -- 1696(line=39, offs=27)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/mydepies.hats: 192(line=16, offs=1) -- 232(line=16, offs=41)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/mydepies.hats: 192(line=16, offs=1) -- 232(line=16, offs=41)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1233(line=43, offs=3)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1233(line=43, offs=3)
 */
 
 //
@@ -287,25 +287,25 @@
 "atscntrb-libgmp/CATS/gmp.cats"
 //
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1813(line=49, offs=1) -- 1845(line=49, offs=33)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1813(line=49, offs=1) -- 1845(line=49, offs=33)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1846(line=50, offs=1) -- 1881(line=50, offs=36)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1846(line=50, offs=1) -- 1881(line=50, offs=36)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1657(line=37, offs=1) -- 1689(line=37, offs=33)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1657(line=37, offs=1) -- 1689(line=37, offs=33)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1690(line=38, offs=1) -- 1724(line=38, offs=35)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1690(line=38, offs=1) -- 1724(line=38, offs=35)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1233(line=43, offs=3)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1233(line=43, offs=3)
 */
 
 //
@@ -313,46 +313,46 @@
 "atscntrb-libgmp/CATS/gmp.cats"
 //
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/libats/libc/SATS/math.sats: 1380(line=35, offs=1) -- 1426(line=38, offs=3)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/libats/libc/SATS/math.sats: 1380(line=35, offs=1) -- 1426(line=38, offs=3)
 */
 
 #include \
 "libats/libc/CATS/math.cats"
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1660(line=37, offs=1) -- 1700(line=38, offs=27)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1660(line=37, offs=1) -- 1700(line=38, offs=27)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1727(line=42, offs=1) -- 1759(line=42, offs=33)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1727(line=42, offs=1) -- 1759(line=42, offs=33)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1833(line=49, offs=1) -- 1867(line=49, offs=35)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1833(line=49, offs=1) -- 1867(line=49, offs=35)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1868(line=50, offs=1) -- 1908(line=50, offs=41)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1868(line=50, offs=1) -- 1908(line=50, offs=41)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1656(line=37, offs=1) -- 1696(line=39, offs=27)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1656(line=37, offs=1) -- 1696(line=39, offs=27)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/mydepies.hats: 192(line=16, offs=1) -- 232(line=16, offs=41)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/mydepies.hats: 192(line=16, offs=1) -- 232(line=16, offs=41)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1233(line=43, offs=3)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1233(line=43, offs=3)
 */
 
 //
@@ -360,25 +360,25 @@
 "atscntrb-libgmp/CATS/gmp.cats"
 //
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1813(line=49, offs=1) -- 1845(line=49, offs=33)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1813(line=49, offs=1) -- 1845(line=49, offs=33)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1846(line=50, offs=1) -- 1881(line=50, offs=36)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1846(line=50, offs=1) -- 1881(line=50, offs=36)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1657(line=37, offs=1) -- 1689(line=37, offs=33)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1657(line=37, offs=1) -- 1689(line=37, offs=33)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1690(line=38, offs=1) -- 1724(line=38, offs=35)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1690(line=38, offs=1) -- 1724(line=38, offs=35)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
 */
 /*
-/usr/local/lib/ats2-postiats-0.3.8/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
 */
 /*
 staload-prologues(end)
@@ -563,7 +563,7 @@
 #endif // end of [QUALIFIED]
 
 /*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 753(line=23, offs=4) -- 808(line=24, offs=14)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 753(line=23, offs=4) -- 808(line=24, offs=14)
 */
 /*
 local: 
@@ -580,11 +580,11 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 753(line=23, offs=4) -- 808(line=24, offs=14)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 753(line=23, offs=4) -- 808(line=24, offs=14)
 */
 ATSINSflab(__patsflab_witness_0):
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 797(line=24, offs=3) -- 807(line=24, offs=13)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 797(line=24, offs=3) -- 807(line=24, offs=13)
 */
 ATSINSmove(tmpret0, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), arg0)) ;
 ATSfunbody_end()
@@ -592,7 +592,7 @@
 } /* end of [witness_0] */
 
 /*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 873(line=27, offs=5) -- 1092(line=35, offs=6)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 873(line=27, offs=5) -- 1092(line=35, offs=6)
 */
 /*
 local: 
@@ -614,49 +614,49 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 873(line=27, offs=5) -- 1092(line=35, offs=6)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 873(line=27, offs=5) -- 1092(line=35, offs=6)
 */
 ATSINSflab(__patsflab_fib_gmp_1):
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 909(line=28, offs=3) -- 1092(line=35, offs=6)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 909(line=28, offs=3) -- 1092(line=35, offs=6)
 */
 /*
 letpush(beg)
 */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 921(line=29, offs=9) -- 922(line=29, offs=10)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 921(line=29, offs=9) -- 922(line=29, offs=10)
 */
 /*
 ATSINStmpdec(tmpref2) ;
 */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 925(line=29, offs=13) -- 936(line=29, offs=24)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 925(line=29, offs=13) -- 936(line=29, offs=24)
 */
 ATSINSmove(tmpref2, ATSLIB_056_prelude__ptr_alloc__2__1()) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 945(line=30, offs=9) -- 946(line=30, offs=10)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 945(line=30, offs=9) -- 946(line=30, offs=10)
 */
 /*
 ATSINStmpdec(tmpref5) ;
 */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 977(line=30, offs=41) -- 982(line=30, offs=46)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 977(line=30, offs=41) -- 982(line=30, offs=46)
 */
 ATSINSmove(tmp6, atspre_g1int_add_int(arg0, ATSPMVi0nt(1))) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 956(line=30, offs=20) -- 983(line=30, offs=47)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 956(line=30, offs=20) -- 983(line=30, offs=47)
 */
 ATSINSmove(tmpref5, atspre_g0int2uint_int_ulint(tmp6)) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 997(line=31, offs=14) -- 1018(line=31, offs=35)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 997(line=31, offs=14) -- 1018(line=31, offs=35)
 */
 ATSINSmove_void(tmp7, atscntrb_gmp_mpz_init(ATSPMVrefarg1(ATSSELrecsin(tmpref2, atstkind_type(atstype_ptrk), atslab__2)))) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1032(line=32, offs=14) -- 1060(line=32, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1032(line=32, offs=14) -- 1060(line=32, offs=42)
 */
 ATSINSmove_void(tmp8, atscntrb_gmp_mpz_fib_uint(ATSPMVrefarg1(ATSSELrecsin(tmpref2, atstkind_type(atstype_ptrk), atslab__2)), tmpref5)) ;
 
@@ -665,11 +665,11 @@
 */
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1070(line=34, offs=5) -- 1085(line=34, offs=20)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1070(line=34, offs=5) -- 1085(line=34, offs=20)
 */
 ATSINSmove(tmpret1, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmpref2)) ;
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 909(line=28, offs=3) -- 1092(line=35, offs=6)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 909(line=28, offs=3) -- 1092(line=35, offs=6)
 */
 /*
 INSletpop()
@@ -680,7 +680,7 @@
 
 #if(0)
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
 */
 /*
 local: 
@@ -702,11 +702,11 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3708(line=184, offs=1) -- 3749(line=184, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
 */
 ATSINSmove(tmpret3, atspre_ptr_alloc_tsz(ATSPMVsizeof(atstyvar_type(a)))) ;
 
@@ -716,7 +716,7 @@
 #endif // end of [TEMPLATE]
 
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
 */
 /*
 local: 
@@ -738,11 +738,11 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3708(line=184, offs=1) -- 3749(line=184, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
 */
 ATSINSmove(tmpret3__1, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;
 
@@ -751,7 +751,7 @@
 } /* end of [ATSLIB_056_prelude__ptr_alloc__2__1] */
 
 /*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1170(line=38, offs=5) -- 1611(line=59, offs=10)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1170(line=38, offs=5) -- 1611(line=59, offs=10)
 */
 /*
 local: exp_5$0(level=0)
@@ -778,11 +778,11 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1170(line=38, offs=5) -- 1611(line=59, offs=10)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1170(line=38, offs=5) -- 1611(line=59, offs=10)
 */
 ATSINSflab(__patsflab_exp_5):
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1222(line=39, offs=3) -- 1611(line=59, offs=10)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1222(line=39, offs=3) -- 1611(line=59, offs=10)
 */
 ATScaseof_beg()
 /*
@@ -790,15 +790,15 @@
 */
 ATSbranch_beg()
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1239(line=40, offs=7) -- 1240(line=40, offs=8)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1239(line=40, offs=7) -- 1240(line=40, offs=8)
 */
 ATSINSlab(__atstmplab0):
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1191(line=38, offs=26) -- 1192(line=38, offs=27)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1191(line=38, offs=26) -- 1192(line=38, offs=27)
 */
 ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(0))) { ATSINSgoto(__atstmplab2) ; } ;
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1240(line=40, offs=8) -- 1240(line=40, offs=8)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1240(line=40, offs=8) -- 1240(line=40, offs=8)
 */
 ATSINSlab(__atstmplab1):
 /*
@@ -808,14 +808,14 @@
 ibranch-mbody:
 */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1244(line=40, offs=12) -- 1245(line=40, offs=13)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1244(line=40, offs=12) -- 1245(line=40, offs=13)
 */
 ATSINSmove(tmpret9, ATSPMVi0nt(0)) ;
 ATSbranch_end()
 
 ATSbranch_beg()
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1253(line=41, offs=8) -- 1253(line=41, offs=8)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1253(line=41, offs=8) -- 1253(line=41, offs=8)
 */
 ATSINSlab(__atstmplab2):
 /*
@@ -825,41 +825,41 @@
 ibranch-mbody:
 */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1282(line=43, offs=12) -- 1287(line=43, offs=17)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1282(line=43, offs=12) -- 1287(line=43, offs=17)
 */
 ATSINSmove(tmp10, ATSLIB_056_prelude__gt_g1int_int__6__1(arg1, ATSPMVi0nt(0))) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1279(line=43, offs=9) -- 1601(line=58, offs=12)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1279(line=43, offs=9) -- 1601(line=58, offs=12)
 */
 ATSif(
 tmp10
 ) ATSthen() {
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1303(line=44, offs=11) -- 1576(line=56, offs=14)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1303(line=44, offs=11) -- 1576(line=56, offs=14)
 */
 /*
 letpush(beg)
 */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1323(line=45, offs=17) -- 1325(line=45, offs=19)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1323(line=45, offs=17) -- 1325(line=45, offs=19)
 */
 /*
 ATSINStmpdec(tmpref15) ;
 */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1328(line=45, offs=22) -- 1334(line=45, offs=28)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1328(line=45, offs=22) -- 1334(line=45, offs=28)
 */
 ATSINSmove(tmpref15, atspre_g1int_half_int(arg1)) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1352(line=46, offs=17) -- 1354(line=46, offs=19)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1352(line=46, offs=17) -- 1354(line=46, offs=19)
 */
 /*
 ATSINStmpdec(tmpref16) ;
 */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1357(line=46, offs=22) -- 1362(line=46, offs=27)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1357(line=46, offs=22) -- 1362(line=46, offs=27)
 */
 ATSINSmove(tmpref16, atspre_g0int_mod_int(arg1, ATSPMVi0nt(2))) ;
 
@@ -868,23 +868,23 @@
 */
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1391(line=48, offs=16) -- 1397(line=48, offs=22)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1391(line=48, offs=16) -- 1397(line=48, offs=22)
 */
 ATSINSmove(tmp17, ATSLIB_056_prelude__eq_g0int_int__12__1(tmpref16, ATSPMVi0nt(0))) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1388(line=48, offs=13) -- 1562(line=55, offs=18)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1388(line=48, offs=13) -- 1562(line=55, offs=18)
 */
 ATSif(
 tmp17
 ) ATSthen() {
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1421(line=49, offs=19) -- 1426(line=49, offs=24)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1421(line=49, offs=19) -- 1426(line=49, offs=24)
 */
 ATSINSmove(tmp22, atspre_g0int_mul_int(arg0, arg0)) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1417(line=49, offs=15) -- 1431(line=49, offs=29)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1417(line=49, offs=15) -- 1431(line=49, offs=29)
 */
 ATStailcal_beg()
 ATSINSmove_tlcal(apy0, tmp22) ;
@@ -896,29 +896,29 @@
 
 } ATSelse() {
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1463(line=51, offs=15) -- 1562(line=55, offs=18)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1463(line=51, offs=15) -- 1562(line=55, offs=18)
 */
 /*
 letpush(beg)
 */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1487(line=52, offs=21) -- 1488(line=52, offs=22)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1487(line=52, offs=21) -- 1488(line=52, offs=22)
 */
 /*
 ATSINStmpdec(tmpref23) ;
 */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1499(line=52, offs=33) -- 1504(line=52, offs=38)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1499(line=52, offs=33) -- 1504(line=52, offs=38)
 */
 ATSINSmove(tmp25, atspre_g0int_mul_int(arg0, arg0)) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1495(line=52, offs=29) -- 1509(line=52, offs=43)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1495(line=52, offs=29) -- 1509(line=52, offs=43)
 */
 ATSINSmove(tmp24, exp_5(tmp25, tmpref15)) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1491(line=52, offs=25) -- 1509(line=52, offs=43)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1491(line=52, offs=25) -- 1509(line=52, offs=43)
 */
 ATSINSmove(tmpref23, atspre_g0int_mul_int(arg0, tmp24)) ;
 
@@ -927,25 +927,25 @@
 */
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1543(line=54, offs=17) -- 1544(line=54, offs=18)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1543(line=54, offs=17) -- 1544(line=54, offs=18)
 */
 ATSINSmove(tmpret9, tmpref23) ;
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1463(line=51, offs=15) -- 1562(line=55, offs=18)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1463(line=51, offs=15) -- 1562(line=55, offs=18)
 */
 /*
 INSletpop()
 */
 } /* ATSendif */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1303(line=44, offs=11) -- 1576(line=56, offs=14)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1303(line=44, offs=11) -- 1576(line=56, offs=14)
 */
 /*
 INSletpop()
 */
 } ATSelse() {
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1600(line=58, offs=11) -- 1601(line=58, offs=12)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1600(line=58, offs=11) -- 1601(line=58, offs=12)
 */
 ATSINSmove(tmpret9, ATSPMVi0nt(1)) ;
 } /* ATSendif */
@@ -962,7 +962,7 @@
 
 #if(0)
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
 */
 /*
 local: 
@@ -985,16 +985,16 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12664(line=658, offs=1) -- 12718(line=659, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
 */
 ATSINSmove(tmp12, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4703))>)(arg1)) ;
 
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
 */
 ATSINSmove(tmpret11, PMVtmpltcst(g1int_gt<S2Evar(tk(4703))>)(arg0, tmp12)) ;
 
@@ -1004,7 +1004,7 @@
 #endif // end of [TEMPLATE]
 
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
 */
 /*
 local: 
@@ -1027,16 +1027,16 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12664(line=658, offs=1) -- 12718(line=659, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
 */
 ATSINSmove(tmp12__1, atspre_g1int2int_int_int(arg1)) ;
 
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
 */
 ATSINSmove(tmpret11__1, atspre_g1int_gt_int(arg0, tmp12__1)) ;
 
@@ -1046,7 +1046,7 @@
 
 #if(0)
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
 */
 /*
 local: 
@@ -1069,16 +1069,16 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12244(line=634, offs=1) -- 12298(line=635, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
 */
 ATSINSmove(tmp19, PMVtmpltcst(g0int2int<S2Eextkind(atstype_int), S2Evar(tk(4694))>)(arg1)) ;
 
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
 */
 ATSINSmove(tmpret18, PMVtmpltcst(g0int_eq<S2Evar(tk(4694))>)(arg0, tmp19)) ;
 
@@ -1088,7 +1088,7 @@
 #endif // end of [TEMPLATE]
 
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
 */
 /*
 local: 
@@ -1111,16 +1111,16 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12244(line=634, offs=1) -- 12298(line=635, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
 */
 ATSINSmove(tmp19__1, atspre_g0int2int_int_int(arg1)) ;
 
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
 */
 ATSINSmove(tmpret18__1, atspre_g0int_eq_int(arg0, tmp19__1)) ;
 
@@ -1129,7 +1129,7 @@
 } /* end of [ATSLIB_056_prelude__eq_g0int_int__12__1] */
 
 /*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1616(line=61, offs=4) -- 1760(line=66, offs=6)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1616(line=61, offs=4) -- 1760(line=66, offs=6)
 */
 /*
 local: witness_0$0(level=0)
@@ -1149,33 +1149,33 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1616(line=61, offs=4) -- 1760(line=66, offs=6)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1616(line=61, offs=4) -- 1760(line=66, offs=6)
 */
 ATSINSflab(__patsflab_sqrt_int_17):
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1666(line=62, offs=3) -- 1760(line=66, offs=6)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1666(line=62, offs=3) -- 1760(line=66, offs=6)
 */
 /*
 letpush(beg)
 */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1678(line=63, offs=9) -- 1683(line=63, offs=14)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1678(line=63, offs=9) -- 1683(line=63, offs=14)
 */
 /*
 ATSINStmpdec(tmpref27) ;
 */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1714(line=63, offs=45) -- 1727(line=63, offs=58)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1714(line=63, offs=45) -- 1727(line=63, offs=58)
 */
 ATSINSmove(tmp29, atspre_g0int2float_int_float(arg0)) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1703(line=63, offs=34) -- 1729(line=63, offs=60)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1703(line=63, offs=34) -- 1729(line=63, offs=60)
 */
 ATSINSmove(tmp28, atslib_libats_libc_sqrt_float(tmp29)) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1691(line=63, offs=22) -- 1730(line=63, offs=61)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1691(line=63, offs=22) -- 1730(line=63, offs=61)
 */
 ATSINSmove(tmpref27, atspre_g0float2int_float_int(tmp28)) ;
 
@@ -1184,12 +1184,12 @@
 */
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1740(line=65, offs=5) -- 1753(line=65, offs=18)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1740(line=65, offs=5) -- 1753(line=65, offs=18)
 */
 ATSINSmove(tmpret26, witness_0(tmpref27)) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1666(line=62, offs=3) -- 1760(line=66, offs=6)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1666(line=62, offs=3) -- 1760(line=66, offs=6)
 */
 /*
 INSletpop()
@@ -1199,7 +1199,7 @@
 } /* end of [sqrt_int_17] */
 
 /*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1796(line=69, offs=4) -- 2381(line=92, offs=10)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1796(line=69, offs=4) -- 2381(line=92, offs=10)
 */
 /*
 local: sqrt_int_17$0(level=0)
@@ -1217,11 +1217,11 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1796(line=69, offs=4) -- 2381(line=92, offs=10)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1796(line=69, offs=4) -- 2381(line=92, offs=10)
 */
 ATSINSflab(__patsflab_is_prime_20):
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1832(line=70, offs=3) -- 2381(line=92, offs=10)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1832(line=70, offs=3) -- 2381(line=92, offs=10)
 */
 ATScaseof_beg()
 /*
@@ -1229,15 +1229,15 @@
 */
 ATSbranch_beg()
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1849(line=71, offs=7) -- 1850(line=71, offs=8)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1849(line=71, offs=7) -- 1850(line=71, offs=8)
 */
 ATSINSlab(__atstmplab3):
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1805(line=69, offs=13) -- 1806(line=69, offs=14)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1805(line=69, offs=13) -- 1806(line=69, offs=14)
 */
 ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab5) ; } ;
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1850(line=71, offs=8) -- 1850(line=71, offs=8)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1850(line=71, offs=8) -- 1850(line=71, offs=8)
 */
 ATSINSlab(__atstmplab4):
 /*
@@ -1247,14 +1247,14 @@
 ibranch-mbody:
 */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1854(line=71, offs=12) -- 1859(line=71, offs=17)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1854(line=71, offs=12) -- 1859(line=71, offs=17)
 */
 ATSINSmove(tmpret30, ATSPMVbool_false()) ;
 ATSbranch_end()
 
 ATSbranch_beg()
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1867(line=72, offs=8) -- 1867(line=72, offs=8)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1867(line=72, offs=8) -- 1867(line=72, offs=8)
 */
 ATSINSlab(__atstmplab5):
 /*
@@ -1264,7 +1264,7 @@
 ibranch-mbody:
 */
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1892(line=74, offs=9) -- 2371(line=91, offs=12)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1892(line=74, offs=9) -- 2371(line=91, offs=12)
 */
 /*
 letpush(beg)
@@ -1274,17 +1274,17 @@
 */
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2347(line=90, offs=19) -- 2357(line=90, offs=29)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2347(line=90, offs=19) -- 2357(line=90, offs=29)
 */
 ATSINSmove(tmp51, sqrt_int_17(arg0)) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2339(line=90, offs=11) -- 2359(line=90, offs=31)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2339(line=90, offs=11) -- 2359(line=90, offs=31)
 */
 ATSINSmove(tmpret30, loop_21(arg0, ATSPMVi0nt(2), tmp51)) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1892(line=74, offs=9) -- 2371(line=91, offs=12)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1892(line=74, offs=9) -- 2371(line=91, offs=12)
 */
 /*
 INSletpop()
@@ -1301,7 +1301,7 @@
 } /* end of [is_prime_20] */
 
 /*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1910(line=75, offs=15) -- 2317(line=88, offs=21)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1910(line=75, offs=15) -- 2317(line=88, offs=21)
 */
 /*
 local: loop_21$0(level=1)
@@ -1330,48 +1330,48 @@
 */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 1910(line=75, offs=15) -- 2317(line=88, offs=21)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 1910(line=75, offs=15) -- 2317(line=88, offs=21)
 */
 ATSINSflab(__patsflab_loop_21):
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2004(line=76, offs=16) -- 2013(line=76, offs=25)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2004(line=76, offs=16) -- 2013(line=76, offs=25)
 */
 ATSINSmove(tmp32, ATSLIB_056_prelude__lt_g1int_int__22__1(arg0, arg1)) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2001(line=76, offs=13) -- 2317(line=88, offs=21)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2001(line=76, offs=13) -- 2317(line=88, offs=21)
 */
 ATSif(
 tmp32
 ) ATSthen() {
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2036(line=77, offs=18) -- 2041(line=77, offs=23)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2036(line=77, offs=18) -- 2041(line=77, offs=23)
 */
 ATSINSmove(tmp40, atspre_g0int_mod_int(env0, arg0)) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2036(line=77, offs=18) -- 2045(line=77, offs=27)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2036(line=77, offs=18) -- 2045(line=77, offs=27)
 */
 ATSINSmove(tmp37, ATSLIB_056_prelude__eq_g0int_int__12__2(tmp40, ATSPMVi0nt(0))) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2033(line=77, offs=15) -- 2126(line=80, offs=35)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2033(line=77, offs=15) -- 2126(line=80, offs=35)
 */
 ATSif(
 tmp37
 ) ATSthen() {
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2067(line=78, offs=17) -- 2072(line=78, offs=22)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2067(line=78, offs=17) -- 2072(line=78, offs=22)
 */
 ATSINSmove(tmpret31, ATSPMVbool_false()) ;
 } ATSelse() {
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2113(line=80, offs=22) -- 2118(line=80, offs=27)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2113(line=80, offs=22) -- 2118(line=80, offs=27)
 */
 ATSINSmove(tmp41, atspre_g1int_add_int(arg0, ATSPMVi0nt(1))) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2108(line=80, offs=17) -- 2126(line=80, offs=35)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2108(line=80, offs=17) -- 2126(line=80, offs=35)
 */
 ATStailcal_beg()
 ATSINSmove_tlcal(apy0, tmp41) ;
@@ -1384,45 +1384,45 @@
 } /* ATSendif */
 } ATSelse() {
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2161(line=82, offs=18) -- 2170(line=82, offs=27)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2161(line=82, offs=18) -- 2170(line=82, offs=27)
 */
 ATSINSmove(tmp42, ATSLIB_056_prelude__eq_g1int_int__26__1(arg0, arg1)) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2158(line=82, offs=15) -- 2317(line=88, offs=21)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2158(line=82, offs=15) -- 2317(line=88, offs=21)
 */
 ATSif(
 tmp42
 ) ATSthen() {
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2195(line=83, offs=20) -- 2200(line=83, offs=25)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2195(line=83, offs=20) -- 2200(line=83, offs=25)
 */
 ATSINSmove(tmp50, atspre_g0int_mod_int(env0, arg0)) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2195(line=83, offs=20) -- 2204(line=83, offs=29)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2195(line=83, offs=20) -- 2204(line=83, offs=29)
 */
 ATSINSmove(tmp47, ATSLIB_056_prelude__eq_g0int_int__12__3(tmp50, ATSPMVi0nt(0))) ;
 
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2192(line=83, offs=17) -- 2277(line=86, offs=23)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2192(line=83, offs=17) -- 2277(line=86, offs=23)
 */
 ATSif(
 tmp47
 ) ATSthen() {
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2228(line=84, offs=19) -- 2233(line=84, offs=24)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2228(line=84, offs=19) -- 2233(line=84, offs=24)
 */
 ATSINSmove(tmpret31, ATSPMVbool_false()) ;
 } ATSelse() {
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2273(line=86, offs=19) -- 2277(line=86, offs=23)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2273(line=86, offs=19) -- 2277(line=86, offs=23)
 */
 ATSINSmove(tmpret31, ATSPMVbool_true()) ;
 } /* ATSendif */
 } ATSelse() {
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 2313(line=88, offs=17) -- 2317(line=88, offs=21)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/ats-src/numerics-internal.dats: 2313(line=88, offs=17) -- 2317(line=88, offs=21)
 */
 ATSINSmove(tmpret31, ATSPMVbool_true()) ;
 } /* ATSendif */
@@ -1436,7 +1436,7 @@
 
 #if(0)
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
 */
 /*
 local: 
@@ -1459,16 +1459,16 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12505(line=649, offs=1) -- 12559(line=650, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
 */
 ATSINSmove(tmp34, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4697))>)(arg1)) ;
 
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
 */
 ATSINSmove(tmpret33, PMVtmpltcst(g1int_lt<S2Evar(tk(4697))>)(arg0, tmp34)) ;
 
@@ -1478,7 +1478,7 @@
 #endif // end of [TEMPLATE]
 
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
 */
 /*
 local: 
@@ -1501,16 +1501,16 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12505(line=649, offs=1) -- 12559(line=650, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
 */
 ATSINSmove(tmp34__1, atspre_g1int2int_int_int(arg1)) ;
 
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
 */
 ATSINSmove(tmpret33__1, atspre_g1int_lt_int(arg0, tmp34__1)) ;
 
@@ -1519,7 +1519,7 @@
 } /* end of [ATSLIB_056_prelude__lt_g1int_int__22__1] */
 
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
 */
 /*
 local: 
@@ -1542,16 +1542,16 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12244(line=634, offs=1) -- 12298(line=635, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
 */
 ATSINSmove(tmp19__2, atspre_g0int2int_int_int(arg1)) ;
 
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
 */
 ATSINSmove(tmpret18__2, atspre_g0int_eq_int(arg0, tmp19__2)) ;
 
@@ -1561,7 +1561,7 @@
 
 #if(0)
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12838(line=668, offs=3) -- 12877(line=668, offs=42)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12838(line=668, offs=3) -- 12877(line=668, offs=42)
 */
 /*
 local: 
@@ -1584,16 +1584,16 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12823(line=667, offs=1) -- 12877(line=668, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12864(line=668, offs=29) -- 12875(line=668, offs=40)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12864(line=668, offs=29) -- 12875(line=668, offs=40)
 */
 ATSINSmove(tmp44, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4709))>)(arg1)) ;
 
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12847(line=668, offs=12) -- 12877(line=668, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12847(line=668, offs=12) -- 12877(line=668, offs=42)
 */
 ATSINSmove(tmpret43, PMVtmpltcst(g1int_eq<S2Evar(tk(4709))>)(arg0, tmp44)) ;
 
@@ -1603,7 +1603,7 @@
 #endif // end of [TEMPLATE]
 
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12838(line=668, offs=3) -- 12877(line=668, offs=42)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12838(line=668, offs=3) -- 12877(line=668, offs=42)
 */
 /*
 local: 
@@ -1626,16 +1626,16 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12823(line=667, offs=1) -- 12877(line=668, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12864(line=668, offs=29) -- 12875(line=668, offs=40)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12864(line=668, offs=29) -- 12875(line=668, offs=40)
 */
 ATSINSmove(tmp44__1, atspre_g1int2int_int_int(arg1)) ;
 
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12847(line=668, offs=12) -- 12877(line=668, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12847(line=668, offs=12) -- 12877(line=668, offs=42)
 */
 ATSINSmove(tmpret43__1, atspre_g1int_eq_int(arg0, tmp44__1)) ;
 
@@ -1644,7 +1644,7 @@
 } /* end of [ATSLIB_056_prelude__eq_g1int_int__26__1] */
 
 /*
-/usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
+/home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
 */
 /*
 local: 
@@ -1667,16 +1667,16 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12244(line=634, offs=1) -- 12298(line=635, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/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 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
 */
 ATSINSmove(tmp19__3, atspre_g0int2int_int_int(arg1)) ;
 
 /*
-emit_instr: loc0 = /usr/local/lib/ats2-postiats-0.3.8/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
+emit_instr: loc0 = /home/vanessa/.atspkg/0.3.8/lib/ats2-postiats-0.3.9/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
 */
 ATSINSmove(tmpret18__3, atspre_g0int_eq_int(arg0, tmp19__3)) ;
 
@@ -1685,7 +1685,7 @@
 } /* end of [ATSLIB_056_prelude__eq_g0int_int__12__3] */
 
 /*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics-ffi.dats: 437(line=21, offs=24) -- 455(line=22, offs=13)
+/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 440(line=21, offs=24) -- 458(line=22, offs=13)
 */
 /*
 local: is_prime_20$0(level=0)
@@ -1702,11 +1702,11 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics-ffi.dats: 424(line=21, offs=11) -- 456(line=22, offs=14)
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 427(line=21, offs=11) -- 459(line=22, offs=14)
 */
 ATSINSflab(__patsflab_is_prime_ats):
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics-ffi.dats: 445(line=22, offs=3) -- 455(line=22, offs=13)
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 448(line=22, offs=3) -- 458(line=22, offs=13)
 */
 ATSINSmove(tmpret52, is_prime_20(arg0)) ;
 
@@ -1715,7 +1715,7 @@
 } /* end of [is_prime_ats] */
 
 /*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics-ffi.dats: 476(line=24, offs=19) -- 496(line=25, offs=12)
+/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 479(line=24, offs=19) -- 499(line=25, offs=12)
 */
 /*
 local: exp_5$0(level=0)
@@ -1732,11 +1732,11 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics-ffi.dats: 468(line=24, offs=11) -- 496(line=25, offs=12)
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 471(line=24, offs=11) -- 499(line=25, offs=12)
 */
 ATSINSflab(__patsflab_exp_ats):
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics-ffi.dats: 487(line=25, offs=3) -- 496(line=25, offs=12)
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 490(line=25, offs=3) -- 499(line=25, offs=12)
 */
 ATSINSmove(tmpret53, exp_5(arg0, arg1)) ;
 
@@ -1745,7 +1745,7 @@
 } /* end of [exp_ats] */
 
 /*
-/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics-ffi.dats: 516(line=27, offs=19) -- 533(line=28, offs=12)
+/home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 519(line=27, offs=19) -- 536(line=28, offs=12)
 */
 /*
 local: fib_gmp_1$0(level=0)
@@ -1762,11 +1762,11 @@
 /* tmpvardeclst(end) */
 ATSfunbody_beg()
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics-ffi.dats: 508(line=27, offs=11) -- 534(line=28, offs=13)
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 511(line=27, offs=11) -- 537(line=28, offs=13)
 */
 ATSINSflab(__patsflab_fib_ats):
 /*
-emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics-ffi.dats: 524(line=28, offs=3) -- 533(line=28, offs=12)
+emit_instr: loc0 = /home/vanessa/programming/haskell/done/fast-arithmetic/ats-src/numerics.dats: 527(line=28, offs=3) -- 536(line=28, offs=12)
 */
 ATSINSmove(tmpret54, fib_gmp_1(arg0)) ;
 
@@ -1777,22 +1777,22 @@
 /*
 ** for initialization(dynloading)
 */
-ATSdynloadflag_minit(_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_numerics_055_ffi_056_dats__dynloadflag) ;
+ATSdynloadflag_minit(_057_home_057_vanessa_057_programming_057_haskell_057_done_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_fast_055_arithmetic_057_ats_055_src_057_numerics_055_ffi_056_dats__dynload()
+_057_home_057_vanessa_057_programming_057_haskell_057_done_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_fast_055_arithmetic_057_ats_055_src_057_numerics_055_ffi_056_dats__dynloadflag
+_057_home_057_vanessa_057_programming_057_haskell_057_done_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_fast_055_arithmetic_057_ats_055_src_057_numerics_055_ffi_056_dats__dynloadflag
+_057_home_057_vanessa_057_programming_057_haskell_057_done_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_fast_055_arithmetic_057_ats_055_src_057_numerics_055_ffi_056_dats__dynloadflag) ;
+ATSdynloadset(_057_home_057_vanessa_057_programming_057_haskell_057_done_057_fast_055_arithmetic_057_ats_055_src_057_numerics_056_dats__dynloadflag) ;
 /*
 dynexnlst-initize(beg)
 */
diff --git a/fast-arithmetic.cabal b/fast-arithmetic.cabal
--- a/fast-arithmetic.cabal
+++ b/fast-arithmetic.cabal
@@ -1,5 +1,5 @@
 name:                fast-arithmetic
-version:             0.3.2.0
+version:             0.3.2.1
 synopsis:            Fast functions on integers.
 description:         Fast functions for number theory and combinatorics with a high level of safety guaranteed by [ATS](http://www.ats-lang.org/). This package also provides a
                      'Storable' instance for GMP's @mpz@ type.
@@ -14,8 +14,8 @@
 extra-source-files:  ats-deps/prelude/ATS2-Postiats-include-0.3.8/ccomp/runtime/pats_ccomp_config.h
                    , ats-src/*.dats
                    , cabal.project.local
-                   , shake.hs
                    , ats-deps/contrib/atscntrb-libgmp/CATS/gmp.cats
+                   , atspkg.dhall
 extra-doc-files:     README.md
 cabal-version:       >= 1.18
 
@@ -28,13 +28,8 @@
 custom-setup
   -- ghc-options:     -threaded -rtsopts -with-rtsopts=-N
   setup-depends:   base
-                 , Cabal >= 2.0
-                 , http-client
-                 , http-client-tls
-                 , tar
-                 , zlib
-                 , directory
-                 , parallel-io
+                 , ats-setup
+                 , Cabal
 
 library
   c-sources:           cbits/numerics.c
@@ -51,14 +46,7 @@
                      , Numeric.Combinatorics
                      , Data.GMP
   other-modules:       Numeric.Common
-  if impl(ghc < 7.10)
-    build-depends:     base >= 4.7 && < 5
-                     , composition-prelude
-                     , recursion-schemes
-                     , foundation < 0.0.18
-                     , memory < 0.14.11
-  else
-    build-depends:     base >= 4.7 && < 5
+  build-depends:       base >= 4.8 && < 5
                      , composition-prelude
                      , recursion-schemes
   default-language:    Haskell2010
diff --git a/shake.hs b/shake.hs
deleted file mode 100644
--- a/shake.hs
+++ /dev/null
@@ -1,72 +0,0 @@
-#!/usr/bin/env stack
--- stack runghc --resolver lts-10.3 --package shake --package split --install-ghc
-
-import           Data.List                  (intercalate)
-import           Data.List.Split            (splitOn)
-import           Data.Maybe                 (fromMaybe)
-import           Data.Monoid
-import           Development.Shake
-import           Development.Shake.FilePath
-import           System.Exit                (ExitCode (..))
-import           System.FilePath.Posix
-
-replace :: Eq a => [a] -> [a] -> [a] -> [a]
-replace old new = intercalate new . splitOn old
-
-main :: IO ()
-main = shakeArgs shakeOptions { shakeFiles = ".shake"
-                              , shakeProgress = progressSimple
-                              , shakeThreads = 4
-                              } $ do
-
-    want [ "cbits/numerics.c"
-         , "cbits/number-theory.c"
-         , "cbits/combinatorics.c"
-         ]
-
-    "ci" ~> do
-        need ["cbits/number-theory.c", "cbits/numerics.c", "cbits/combinatorics.c"]
-        cmd_ ["cabal", "new-build"]
-        cmd_ ["cabal", "new-test"]
-        cmd_ ["cabal", "new-build", "-w", "ghc-8.0.2"]
-        cmd_ ["cabal", "new-build", "-w", "ghc-7.10.3"]
-        cmd_ ["cabal", "new-build", "-w", "ghc-7.8.4"]
-        cmd_ ["hlint", "bench", "src", "test/", "Setup.hs", "shake.hs"]
-        cmd_ ["tomlcheck", "--file", ".atsfmt.toml"]
-        cmd_ ["yamllint", ".travis.yml"]
-        cmd_ ["yamllint", ".hlint.yaml"]
-        cmd_ ["yamllint", ".stylish-haskell.yaml"]
-        cmd_ ["yamllint", ".yamllint"]
-        cmd_ ["stack", "build", "--test", "--bench", "--no-run-tests", "--no-run-benchmarks"]
-        cmd_ ["cabal", "new-haddock"]
-        cmd_ ["weeder"]
-
-    "build" %> \_ -> do
-        need ["shake.hs"]
-        cmd_ ["sn", "c"]
-        cmd_ ["cp", "shake.hs", ".shake/shake.hs"]
-        command_ [Cwd ".shake"] "ghc-8.2.2" ["-O", "shake.hs", "-o", "build", "-threaded", "-rtsopts", "-with-rtsopts=-I0 -qg -qb"]
-        cmd ["cp", "-f", ".shake/build", "."]
-
-    "//*.c" %> \out -> do
-        let patshome = "/usr/local/lib/ats2-postiats-0.3.8"
-        let preSource = dropDirectory1 out
-        let sourcePlain = preSource -<.> "dats"
-        let sourceFile = replace ".dats" "-ffi.dats" sourcePlain
-        need (("ats-src/" ++) <$> [sourceFile, sourcePlain])
-        (Exit c, Stderr err) <- command [EchoStderr False, AddEnv "PATSHOME" patshome] "patsopt" ["--output", out, "-dd", "ats-src/" ++ sourceFile, "-cc"]
-        cmd_ [Stdin err] Shell "pats-filter" -- TODO automatically build compiler?
-        if c /= ExitSuccess
-            then error "patscc failure"
-            else pure ()
-
-    "poly" ~> do
-        cmd_ ["sn", "c"]
-        removeFilesAfter "." ["//*.c", "tags"]
-        cmd ["poly", "src", "Setup.hs", "test", "bench", "shake.hs", "ats-src/"]
-
-    "clean" ~> do
-        cmd_ ["sn", "c"]
-        removeFilesAfter "." ["//*.c", "//tags"]
-        removeFilesAfter ".shake" ["//*"]
-        removeFilesAfter "ats-deps" ["//*"]
