diff --git a/103/lib/ag/CoreRun/AbsSyn.ag b/103/lib/ag/CoreRun/AbsSyn.ag
--- a/103/lib/ag/CoreRun/AbsSyn.ag
+++ b/103/lib/ag/CoreRun/AbsSyn.ag
@@ -46,7 +46,7 @@
   -- | Thunk		expr			: Exp		-- expressed as parameterless Lam
 
   -- expr in a context to which must be returned (i.e. no tail rec)
-  | Ret			expr			: Exp
+  -- | Ret			expr			: Exp
   -- expr in a case alternative result context (with local bindings to be removed)
   | RetCase		nrBinds			: {Int}
   				expr			: Exp
diff --git a/103/lib/pkg/array-1.0.0.0/103/cr/plain/Data/Array.hi b/103/lib/pkg/array-1.0.0.0/103/cr/plain/Data/Array.hi
Binary files a/103/lib/pkg/array-1.0.0.0/103/cr/plain/Data/Array.hi and b/103/lib/pkg/array-1.0.0.0/103/cr/plain/Data/Array.hi differ
diff --git a/103/lib/pkg/array-1.0.0.0/103/cr/plain/installed-pkg-config b/103/lib/pkg/array-1.0.0.0/103/cr/plain/installed-pkg-config
--- a/103/lib/pkg/array-1.0.0.0/103/cr/plain/installed-pkg-config
+++ b/103/lib/pkg/array-1.0.0.0/103/cr/plain/installed-pkg-config
@@ -1,2 +1,2 @@
 exposed-modules: Data.Array
-build-depends: uhcbase-1.1.7.3 base-3.0.0.0
+build-depends: uhcbase-1.1.7.4 base-3.0.0.0
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Applicative.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Applicative.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Applicative.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Applicative.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Arrow.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Arrow.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Arrow.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Arrow.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Category.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Category.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Category.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Category.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Fix.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Fix.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Fix.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Fix.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Instances.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Instances.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Instances.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Instances.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST/Lazy.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST/Lazy.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST/Lazy.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST/Lazy.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Bool.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Bool.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Bool.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Bool.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Complex.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Complex.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Complex.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Complex.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Dynamic.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Dynamic.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Dynamic.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Dynamic.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Eq.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Eq.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Eq.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Eq.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Foldable.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Foldable.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Foldable.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Foldable.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Function.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Function.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Function.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Function.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ix.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ix.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ix.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ix.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Monoid.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Monoid.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Monoid.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Monoid.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ord.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ord.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ord.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ord.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ratio.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ratio.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ratio.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ratio.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/String.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/String.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/String.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/String.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Traversable.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Traversable.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Traversable.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Traversable.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Numeric.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Numeric.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Numeric.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Numeric.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Prelude.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Prelude.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Prelude.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Prelude.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Console/GetOpt.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Console/GetOpt.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Console/GetOpt.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Console/GetOpt.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Exit.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Exit.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Exit.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Exit.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadP.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadP.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadP.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadP.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadPrec.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadPrec.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadPrec.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadPrec.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read/Lex.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read/Lex.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read/Lex.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read/Lex.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show/Functions.hi b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show/Functions.hi
Binary files a/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show/Functions.hi and b/103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show/Functions.hi differ
diff --git a/103/lib/pkg/base-3.0.0.0/103/cr/plain/installed-pkg-config b/103/lib/pkg/base-3.0.0.0/103/cr/plain/installed-pkg-config
--- a/103/lib/pkg/base-3.0.0.0/103/cr/plain/installed-pkg-config
+++ b/103/lib/pkg/base-3.0.0.0/103/cr/plain/installed-pkg-config
@@ -1,2 +1,2 @@
 exposed-modules: Control.Applicative Control.Arrow Control.Category Control.Monad.Fix Control.Monad.Instances Control.Monad.ST.Lazy Control.Monad.ST Data.Bool Data.Complex Data.Dynamic Data.Eq Data.Foldable Data.Function Data.Ix Data.Monoid Data.Ord Data.Ratio Data.String Data.Traversable Numeric Prelude System.Console.GetOpt System.Environment System.Exit Text.ParserCombinators.ReadP Text.ParserCombinators.ReadPrec Text.Read.Lex Text.Read Text.Show.Functions Text.Show
-build-depends: uhcbase-1.1.7.3
+build-depends: uhcbase-1.1.7.4
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Control/Monad.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Control/Monad.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Control/Monad.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Control/Monad.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Control/Monad.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Control/Monad.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Bits.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Bits.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Bits.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Bits.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Bits.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Bits.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Char.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Char.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Char.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Char.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Char.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Char.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Either.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Either.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Either.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Either.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Either.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Either.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/IORef.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/IORef.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/IORef.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/IORef.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/IORef.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/IORef.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/List.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/List.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/List.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/List.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/List.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/List.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Maybe.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Maybe.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Maybe.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Maybe.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Maybe.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Maybe.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Typeable.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Typeable.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Typeable.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Typeable.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Typeable.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Typeable.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Debug/Trace.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Debug/Trace.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Debug/Trace.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Debug/Trace.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Debug/Trace.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Debug/Trace.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/Ptr.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/Ptr.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/Ptr.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/Ptr.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/Ptr.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/Ptr.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/StablePtr.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/StablePtr.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/StablePtr.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/StablePtr.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/StablePtr.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/StablePtr.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Error.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Error.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Error.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Error.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Error.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Error.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Fix.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Fix.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Fix.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Fix.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Fix.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Fix.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Unsafe.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Unsafe.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Unsafe.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Unsafe.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Unsafe.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Unsafe.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Array.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Array.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Array.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Array.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Array.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Array.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Base.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Base.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Base.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Base.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Base.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Base.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bits.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bits.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bits.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bits.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bits.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bits.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bounded.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bounded.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bounded.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bounded.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bounded.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bounded.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/BoxArray.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/BoxArray.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/BoxArray.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/BoxArray.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/BoxArray.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/BoxArray.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Char.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Char.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Char.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Char.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Char.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Char.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Enum.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Enum.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Enum.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Enum.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Enum.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Enum.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Eq.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Eq.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Eq.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Eq.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Eq.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Eq.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Float.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Float.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Float.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Float.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Float.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Float.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/GC.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/GC.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/GC.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/GC.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/GC.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/GC.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics/Tuple.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics/Tuple.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics/Tuple.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics/Tuple.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics/Tuple.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics/Tuple.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Handle.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Handle.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Handle.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Handle.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Handle.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Handle.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IO.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IO.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IO.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IO.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IO.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IO.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IOBase.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IOBase.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IOBase.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IOBase.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IOBase.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IOBase.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ix.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ix.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ix.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ix.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ix.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ix.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/LazyST.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/LazyST.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/LazyST.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/LazyST.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/LazyST.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/LazyST.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MVar.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MVar.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MVar.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MVar.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MVar.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MVar.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MutVar.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MutVar.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MutVar.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MutVar.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MutVar.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MutVar.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/OldException.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/OldException.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/OldException.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/OldException.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/OldException.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/OldException.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ord.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ord.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ord.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ord.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ord.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ord.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Prims.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Prims.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Prims.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Prims.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Prims.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Prims.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ptr.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ptr.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ptr.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ptr.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ptr.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ptr.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Read.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Read.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Read.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Read.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Read.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Read.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Real.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Real.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Real.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Real.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Real.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Real.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Run.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Run.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Run.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Run.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Run.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Run.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/ST.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/ST.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/ST.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/ST.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/ST.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/ST.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/STRef.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/STRef.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/STRef.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/STRef.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/STRef.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/STRef.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Show.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Show.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Show.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Show.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Show.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Show.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StablePtr.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StablePtr.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StablePtr.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StablePtr.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StablePtr.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StablePtr.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StackTrace.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StackTrace.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StackTrace.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StackTrace.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StackTrace.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StackTrace.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Types.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Types.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Types.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Types.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Types.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Types.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Weak.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Weak.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Weak.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Weak.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Weak.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Weak.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/WeakPtr.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/WeakPtr.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/WeakPtr.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/WeakPtr.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/WeakPtr.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/WeakPtr.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Unsafe/Coerce.cr b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Unsafe/Coerce.cr
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Unsafe/Coerce.cr and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Unsafe/Coerce.hi b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Unsafe/Coerce.hi
deleted file mode 100644
Binary files a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Unsafe/Coerce.hi and /dev/null differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/CTypes.h b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/CTypes.h
deleted file mode 100644
--- a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/CTypes.h
+++ /dev/null
@@ -1,231 +0,0 @@
-{- --------------------------------------------------------------------------
-// Dirty CPP hackery for CTypes/CTypesISO
-//
-// (c) The FFI task force, 2000
-// --------------------------------------------------------------------------
--}
-
-#ifndef CTYPES__H
-#define CTYPES__H
-
-#include "Typeable.h"
-
-{-
-// As long as there is no automatic derivation of classes for newtypes we resort
-// to extremely dirty cpp-hackery.   :-P   Some care has to be taken when the
-// macros below are modified, otherwise the layout rule will bite you.
--}
-
---  // A hacked version for GHC follows the Haskell 98 version...
-#ifndef __GLASGOW_HASKELL__
-
-#define NEWTYPE_TYPE_NODERIVING(T,B) \
-newtype T = T B ; 
-
-#define NEWTYPE_TYPE(T,B) \
-newtype T = T B deriving (Eq, Ord) ; 
-
-#define ARITHMETIC_TYPE_INSTANCES(T,C,S,B) \
-INSTANCE_NUM(T) ; \
-INSTANCE_REAL(T) ; \
-INSTANCE_READ(T,B) ; \
-INSTANCE_SHOW(T,B) ; \
-INSTANCE_ENUM(T) ; \
-INSTANCE_STORABLE(T) ; \
-INSTANCE_TYPEABLE0(T,C,S) ;
-
-#define INTEGRAL_TYPE_INSTANCES(T,C,S,B) \
-INSTANCE_BOUNDED(T) ; \
-INSTANCE_INTEGRAL(T) ; \
-INSTANCE_BITS(T)
-
-#define ARITHMETIC_TYPE(T,C,S,B) \
-NEWTYPE_TYPE(T,B) ; \
-ARITHMETIC_TYPE_INSTANCES(T,C,S,B) ;
-
-#define INTEGRAL_TYPE(T,C,S,B) \
-ARITHMETIC_TYPE(T,C,S,B) ; \
-INTEGRAL_TYPE_INSTANCES(T,C,S,B)
-
-#define FLOATING_TYPE(T,C,S,B) \
-ARITHMETIC_TYPE(T,C,S,B) ; \
-INSTANCE_FRACTIONAL(T) ; \
-INSTANCE_FLOATING(T) ; \
-INSTANCE_REALFRAC(T) ; \
-INSTANCE_REALFLOAT(T)
-
-#ifndef __GLASGOW_HASKELL__
-#define fakeMap map
-#endif
-
-#define INSTANCE_READ(T,B) \
-instance Read T where { \
-   readsPrec p s = fakeMap (\(x, t) -> (T x, t)) (readsPrec p s) }
-
-#define INSTANCE_SHOW(T,B) \
-instance Show T where { \
-   showsPrec p (T x) = showsPrec p x }
-
-#define INSTANCE_NUM(T) \
-instance Num T where { \
-   (T i) + (T j) = T (i + j) ; \
-   (T i) - (T j) = T (i - j) ; \
-   (T i) * (T j) = T (i * j) ; \
-   negate  (T i) = T (negate i) ; \
-   abs     (T i) = T (abs    i) ; \
-   signum  (T i) = T (signum i) ; \
-   fromInteger x = T (fromInteger x) }
-
-#define INSTANCE_EQ(T) \
-instance Eq T where { \
-   (T x1) == (T x2) = x1 == x2 }
-
-#define INSTANCE_ORD(T) \
-instance Ord T where { \
-   (T x1) `compare` (T x2) = x1 `compare` x2 }
-
-#define INSTANCE_BOUNDED(T) \
-instance Bounded T where { \
-   minBound = T minBound ; \
-   maxBound = T maxBound }
-
-#define INSTANCE_ENUM(T) \
-instance Enum T where { \
-   succ           (T i)             = T (succ i) ; \
-   pred           (T i)             = T (pred i) ; \
-   toEnum               x           = T (toEnum x) ; \
-   fromEnum       (T i)             = fromEnum i ; \
-   enumFrom       (T i)             = fakeMap T (enumFrom i) ; \
-   enumFromThen   (T i) (T j)       = fakeMap T (enumFromThen i j) ; \
-   enumFromTo     (T i) (T j)       = fakeMap T (enumFromTo i j) ; \
-   enumFromThenTo (T i) (T j) (T k) = fakeMap T (enumFromThenTo i j k) }
-
-#define INSTANCE_REAL(T) \
-instance Real T where { \
-   toRational (T i) = toRational i }
-
-#define INSTANCE_INTEGRAL(T) \
-instance Integral T where { \
-   (T i) `quot`    (T j) = T (i `quot` j) ; \
-   (T i) `rem`     (T j) = T (i `rem`  j) ; \
-   (T i) `div`     (T j) = T (i `div`  j) ; \
-   (T i) `mod`     (T j) = T (i `mod`  j) ; \
-   (T i) `quotRem` (T j) = let (q,r) = i `quotRem` j in (T q, T r) ; \
-   (T i) `divMod`  (T j) = let (d,m) = i `divMod`  j in (T d, T m) ; \
-   toInteger (T i)       = toInteger i }
-
-#define INSTANCE_BITS(T) \
-instance Bits T where { \
-  (T x) .&.     (T y)   = T (x .&.   y) ; \
-  (T x) .|.     (T y)   = T (x .|.   y) ; \
-  (T x) `xor`   (T y)   = T (x `xor` y) ; \
-  complement    (T x)   = T (complement x) ; \
-  shift         (T x) n = T (shift x n) ; \
-  rotate        (T x) n = T (rotate x n) ; \
-  bit                 n = T (bit n) ; \
-  setBit        (T x) n = T (setBit x n) ; \
-  clearBit      (T x) n = T (clearBit x n) ; \
-  complementBit (T x) n = T (complementBit x n) ; \
-  testBit       (T x) n = testBit x n ; \
-  bitSize       (T x)   = bitSize x ; \
-  isSigned      (T x)   = isSigned x }
-
-#define INSTANCE_FRACTIONAL(T) \
-instance Fractional T where { \
-   (T x) / (T y)  = T (x / y) ; \
-   recip   (T x)  = T (recip x) ; \
-   fromRational r = T (fromRational r) }
-
-#define INSTANCE_FLOATING(T) \
-instance Floating T where { \
-   pi                    = pi ; \
-   exp   (T x)           = T (exp   x) ; \
-   log   (T x)           = T (log   x) ; \
-   sqrt  (T x)           = T (sqrt  x) ; \
-   (T x) **        (T y) = T (x ** y) ; \
-   (T x) `logBase` (T y) = T (x `logBase` y) ; \
-   sin   (T x)           = T (sin   x) ; \
-   cos   (T x)           = T (cos   x) ; \
-   tan   (T x)           = T (tan   x) ; \
-   asin  (T x)           = T (asin  x) ; \
-   acos  (T x)           = T (acos  x) ; \
-   atan  (T x)           = T (atan  x) ; \
-   sinh  (T x)           = T (sinh  x) ; \
-   cosh  (T x)           = T (cosh  x) ; \
-   tanh  (T x)           = T (tanh  x) ; \
-   asinh (T x)           = T (asinh x) ; \
-   acosh (T x)           = T (acosh x) ; \
-   atanh (T x)           = T (atanh x) }
-
-#define INSTANCE_REALFRAC(T) \
-instance RealFrac T where { \
-   properFraction (T x) = let (m,y) = properFraction x in (m, T y) ; \
-   truncate (T x) = truncate x ; \
-   round    (T x) = round x ; \
-   ceiling  (T x) = ceiling x ; \
-   floor    (T x) = floor x }
-
-#define INSTANCE_REALFLOAT(T) \
-instance RealFloat T where { \
-   floatRadix     (T x) = floatRadix x ; \
-   floatDigits    (T x) = floatDigits x ; \
-   floatRange     (T x) = floatRange x ; \
-   decodeFloat    (T x) = decodeFloat x ; \
-   encodeFloat m n      = T (encodeFloat m n) ; \
-   exponent       (T x) = exponent x ; \
-   significand    (T x) = T (significand  x) ; \
-   scaleFloat n   (T x) = T (scaleFloat n x) ; \
-   isNaN          (T x) = isNaN x ; \
-   isInfinite     (T x) = isInfinite x ; \
-   isDenormalized (T x) = isDenormalized x ; \
-   isNegativeZero (T x) = isNegativeZero x ; \
-   isIEEE         (T x) = isIEEE x ; \
-   (T x) `atan2`  (T y) = T (x `atan2` y) }
-
-#define INSTANCE_STORABLE(T) \
-instance Storable T where { \
-   sizeOf    (T x)       = sizeOf x ; \
-   alignment (T x)       = alignment x ; \
-   peekElemOff a i       = liftM T (peekElemOff (castPtr a) i) ; \
-   pokeElemOff a i (T x) = pokeElemOff (castPtr a) i x }
-
-#else /* __GLASGOW_HASKELL__ */
-
---  // GHC can derive any class for a newtype, so we make use of that here...
-
-#define ARITHMETIC_CLASSES  Eq,Ord,Num,Enum,Storable,Real
-#define INTEGRAL_CLASSES Bounded,Integral,Bits
-#define FLOATING_CLASSES Fractional,Floating,RealFrac,RealFloat
-
-#define ARITHMETIC_TYPE(T,C,S,B) \
-newtype T = T B deriving (ARITHMETIC_CLASSES); \
-INSTANCE_READ(T,B); \
-INSTANCE_SHOW(T,B); \
-INSTANCE_TYPEABLE0(T,C,S) ;
-
-#define INTEGRAL_TYPE(T,C,S,B) \
-newtype T = T B deriving (ARITHMETIC_CLASSES, INTEGRAL_CLASSES); \
-INSTANCE_READ(T,B); \
-INSTANCE_SHOW(T,B); \
-INSTANCE_TYPEABLE0(T,C,S) ;
-
-#define FLOATING_TYPE(T,C,S,B) \
-newtype T = T B deriving (ARITHMETIC_CLASSES, FLOATING_CLASSES); \
-INSTANCE_READ(T,B); \
-INSTANCE_SHOW(T,B); \
-INSTANCE_TYPEABLE0(T,C,S) ;
-
-#define INSTANCE_READ(T,B) \
-instance Read T where { \
-   readsPrec            = unsafeCoerce# (readsPrec :: Int -> ReadS B); \
-   readList             = unsafeCoerce# (readList  :: ReadS [B]); }
-
-#define INSTANCE_SHOW(T,B) \
-instance Show T where { \
-   showsPrec            = unsafeCoerce# (showsPrec :: Int -> B -> ShowS); \
-   show                 = unsafeCoerce# (show :: B -> String); \
-   showList             = unsafeCoerce# (showList :: [B] -> ShowS); }
-
-#endif /* __GLASGOW_HASKELL__ */
-
-#endif
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/HsBase.h b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/HsBase.h
deleted file mode 100644
--- a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/HsBase.h
+++ /dev/null
@@ -1,757 +0,0 @@
-/* -----------------------------------------------------------------------------
- *
- * (c) The University of Glasgow 2001-2004
- *
- * Definitions for package `base' which are visible in Haskell land.
- *
- * Adapted for use in EHC
- *
- * ---------------------------------------------------------------------------*/
-
-#ifndef __HSBASE_H__
-#define __HSBASE_H__
-
-#include "HsBaseConfig.h"
-#ifdef __UHC_BUILDS_O__
-#include "rts.h"
-#endif
-
-/* ultra-evil... */
-#undef PACKAGE_BUGREPORT
-#undef PACKAGE_NAME
-#undef PACKAGE_STRING
-#undef PACKAGE_TARNAME
-#undef PACKAGE_VERSION
-
-/* Needed to get the macro version of errno on some OSs (eg. Solaris).
-   We must do this, because these libs are only compiled once, but
-   must work in both single-threaded and multi-threaded programs. */
-#define _REENTRANT 1
-
-#ifndef __UHC__
-#include "HsFFI.h"
-#endif /* !__UHC__ */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <math.h>
-
-#if HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#if HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#if HAVE_SYS_STAT_H
-#include <sys/stat.h>
-#endif
-#if HAVE_FCNTL_H
-# include <fcntl.h>
-#endif
-#if HAVE_TERMIOS_H
-#include <termios.h>
-#endif
-#if HAVE_SIGNAL_H
-#include <signal.h>
-/* Ultra-ugly: OpenBSD uses broken macros for sigemptyset and sigfillset (missing casts) */
-#if __OpenBSD__
-#undef sigemptyset
-#undef sigfillset
-#endif
-#endif
-#if HAVE_ERRNO_H
-#include <errno.h>
-#endif
-#if HAVE_STRING_H
-#include <string.h>
-#endif
-#if HAVE_DIRENT_H
-#include <dirent.h>
-#endif
-#if HAVE_UTIME_H
-#include <utime.h>
-#endif
-#if HAVE_SYS_UTSNAME_H
-#include <sys/utsname.h>
-#endif
-#if HAVE_GETTIMEOFDAY
-#  if HAVE_SYS_TIME_H
-#   include <sys/time.h>
-#  endif
-#elif HAVE_GETCLOCK
-# if HAVE_SYS_TIMERS_H
-#  define POSIX_4D9 1
-#  include <sys/timers.h>
-# endif
-#endif
-#if HAVE_TIME_H
-#include <time.h>
-#endif
-#if HAVE_SYS_TIMEB_H
-#include <sys/timeb.h>
-#endif
-#if HAVE_WINDOWS_H
-#include <windows.h>
-#endif
-#if HAVE_SYS_TIMES_H
-#include <sys/times.h>
-#endif
-#if HAVE_WINSOCK_H && defined(__MINGW32__)
-#include <winsock.h>
-#endif
-#if HAVE_LIMITS_H
-#include <limits.h>
-#endif
-#if HAVE_WCTYPE_H
-#include <wctype.h>
-#endif
-#if HAVE_INTTYPES_H
-# include <inttypes.h>
-#elif HAVE_STDINT_H
-# include <stdint.h>
-#endif
-
-#if !defined(__MINGW32__) && !defined(irix_HOST_OS)
-# if HAVE_SYS_RESOURCE_H
-#  include <sys/resource.h>
-# endif
-#endif
-
-#if !HAVE_GETRUSAGE && HAVE_SYS_SYSCALL_H
-# include <sys/syscall.h>
-# if defined(SYS_GETRUSAGE)	/* hpux_HOST_OS */
-#  define getrusage(a, b)  syscall(SYS_GETRUSAGE, a, b)
-#  define HAVE_GETRUSAGE 1
-# endif
-#endif
-
-/* For System */
-#if HAVE_SYS_WAIT_H
-#include <sys/wait.h>
-#endif
-#if HAVE_VFORK_H
-#include <vfork.h>
-#endif
-
-#ifndef __UHC__
-#include "dirUtils.h"
-#endif
-#ifndef __UHC__
-#include "WCsubst.h"
-#endif /* !__UHC__ */
-
-#if defined(__MINGW32__)
-/* in Win32Utils.c */
-extern void maperrno (void);
-extern HsWord64 getUSecOfDay(void);
-#endif
-
-#if defined(__MINGW32__)
-#include <io.h>
-#include <fcntl.h>
-#include <shlobj.h>
-#include <share.h>
-#endif
-
-#if HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#endif
-
-/* in inputReady.c */
-extern int fdReady(int fd, int write, int msecs, int isSock);
-
-#ifndef __UHC__
-/* in Signals.c */
-extern HsInt nocldstop;
-#endif /* !__UHC__ */
-
-#ifndef __UHC__
-/* -----------------------------------------------------------------------------
-   64-bit operations, defined in longlong.c
-   -------------------------------------------------------------------------- */
-
-#ifdef SUPPORT_LONG_LONGS
-
-HsBool hs_gtWord64 (HsWord64, HsWord64);
-HsBool hs_geWord64 (HsWord64, HsWord64);
-HsBool hs_eqWord64 (HsWord64, HsWord64);
-HsBool hs_neWord64 (HsWord64, HsWord64);
-HsBool hs_ltWord64 (HsWord64, HsWord64);
-HsBool hs_leWord64 (HsWord64, HsWord64);
-
-HsBool hs_gtInt64 (HsInt64, HsInt64);
-HsBool hs_geInt64 (HsInt64, HsInt64);
-HsBool hs_eqInt64 (HsInt64, HsInt64);
-HsBool hs_neInt64 (HsInt64, HsInt64);
-HsBool hs_ltInt64 (HsInt64, HsInt64);
-HsBool hs_leInt64 (HsInt64, HsInt64);
-
-HsWord64 hs_remWord64  (HsWord64, HsWord64);
-HsWord64 hs_quotWord64 (HsWord64, HsWord64);
-
-HsInt64 hs_remInt64    (HsInt64, HsInt64);
-HsInt64 hs_quotInt64   (HsInt64, HsInt64);
-HsInt64 hs_negateInt64 (HsInt64);
-HsInt64 hs_plusInt64   (HsInt64, HsInt64);
-HsInt64 hs_minusInt64  (HsInt64, HsInt64);
-HsInt64 hs_timesInt64  (HsInt64, HsInt64);
-
-HsWord64 hs_and64  (HsWord64, HsWord64);
-HsWord64 hs_or64   (HsWord64, HsWord64);
-HsWord64 hs_xor64  (HsWord64, HsWord64);
-HsWord64 hs_not64  (HsWord64);
-
-HsWord64 hs_uncheckedShiftL64   (HsWord64, HsInt);
-HsWord64 hs_uncheckedShiftRL64  (HsWord64, HsInt);
-HsInt64  hs_uncheckedIShiftL64  (HsInt64, HsInt);
-HsInt64  hs_uncheckedIShiftRA64 (HsInt64, HsInt);
-HsInt64  hs_uncheckedIShiftRL64 (HsInt64, HsInt);
-
-HsInt64  hs_intToInt64    (HsInt);
-HsInt    hs_int64ToInt    (HsInt64);
-HsWord64 hs_int64ToWord64 (HsInt64);
-HsWord64 hs_wordToWord64  (HsWord);
-HsWord   hs_word64ToWord  (HsWord64);
-HsInt64  hs_word64ToInt64 (HsWord64);
-
-HsWord64 hs_integerToWord64 (HsInt sa, StgByteArray /* Really: mp_limb_t* */ da);
-HsInt64  hs_integerToInt64 (HsInt sa, StgByteArray /* Really: mp_limb_t* */ da);
-
-#endif /* SUPPORT_LONG_LONGS */
-#endif /* !__UHC__ */
-
-/* -----------------------------------------------------------------------------
-   INLINE functions.
-
-   These functions are given as inlines here for when compiling via C,
-   but we also generate static versions into the cbits library for
-   when compiling to native code.
-   -------------------------------------------------------------------------- */
-
-#ifndef INLINE
-# if defined(_MSC_VER)
-#  define INLINE extern __inline
-# else
-#  define INLINE static inline
-# endif
-#endif
-
-INLINE int __hscore_get_errno(void) { return errno; }
-INLINE void __hscore_set_errno(int e) { errno = e; }
-
-#if !defined(_MSC_VER)
-INLINE int __hscore_s_isreg(mode_t m)  { return S_ISREG(m);  }
-INLINE int __hscore_s_isdir(mode_t m)  { return S_ISDIR(m);  }
-INLINE int __hscore_s_isfifo(mode_t m) { return S_ISFIFO(m); }
-INLINE int __hscore_s_isblk(mode_t m)  { return S_ISBLK(m);  }
-INLINE int __hscore_s_ischr(mode_t m)  { return S_ISCHR(m);  }
-#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
-INLINE int __hscore_s_issock(mode_t m) { return S_ISSOCK(m); }
-#endif
-#endif
-
-#if ( !defined(_MSC_VER) && !defined(__MINGW32__) && !defined(_WIN32) ) || defined(__CYGWIN__)
-INLINE int
-__hscore_sigemptyset( sigset_t *set )
-{ return sigemptyset(set); }
-
-INLINE int
-__hscore_sigfillset( sigset_t *set )
-{ return sigfillset(set); }
-
-INLINE int
-__hscore_sigaddset( sigset_t * set, int s )
-{ return sigaddset(set,s); }
-
-INLINE int
-__hscore_sigdelset( sigset_t * set, int s )
-{ return sigdelset(set,s); }
-
-INLINE int
-__hscore_sigismember( sigset_t * set, int s )
-{ return sigismember(set,s); }
-#endif
-
-INLINE void *
-__hscore_memcpy_dst_off( char *dst, int dst_off, char *src, size_t sz )
-{ return memcpy(dst+dst_off, src, sz); }
-
-INLINE void *
-__hscore_memcpy_src_off( char *dst, char *src, int src_off, size_t sz )
-{ return memcpy(dst, src+src_off, sz); }
-
-INLINE HsBool
-__hscore_supportsTextMode()
-{
-#if defined(_MSC_VER) || defined(__MINGW32__) || defined(_WIN32)
-  return HS_BOOL_FALSE;
-#else
-  return HS_BOOL_TRUE;
-#endif
-}
-
-INLINE HsInt
-__hscore_bufsiz()
-{
-  return BUFSIZ;
-}
-
-INLINE int
-__hscore_seek_cur()
-{
-  return SEEK_CUR;
-}
-
-INLINE int
-__hscore_o_binary()
-{
-#if defined(_MSC_VER)
-  return O_BINARY;
-#else
-  return CONST_O_BINARY;
-#endif
-}
-
-INLINE int
-__hscore_o_rdonly()
-{
-#ifdef O_RDONLY
-  return O_RDONLY;
-#else
-  return 0;
-#endif
-}
-
-INLINE int
-__hscore_o_wronly( void )
-{
-#ifdef O_WRONLY
-  return O_WRONLY;
-#else
-  return 0;
-#endif
-}
-
-INLINE int
-__hscore_o_rdwr( void )
-{
-#ifdef O_RDWR
-  return O_RDWR;
-#else
-  return 0;
-#endif
-}
-
-INLINE int
-__hscore_o_append( void )
-{
-#ifdef O_APPEND
-  return O_APPEND;
-#else
-  return 0;
-#endif
-}
-
-INLINE int
-__hscore_o_creat( void )
-{
-#ifdef O_CREAT
-  return O_CREAT;
-#else
-  return 0;
-#endif
-}
-
-INLINE int
-__hscore_o_excl( void )
-{
-#ifdef O_EXCL
-  return O_EXCL;
-#else
-  return 0;
-#endif
-}
-
-INLINE int
-__hscore_o_trunc( void )
-{
-#ifdef O_TRUNC
-  return O_TRUNC;
-#else
-  return 0;
-#endif
-}
-
-INLINE int
-__hscore_o_noctty( void )
-{
-#ifdef O_NOCTTY
-  return O_NOCTTY;
-#else
-  return 0;
-#endif
-}
-
-INLINE int
-__hscore_o_nonblock( void )
-{
-#ifdef O_NONBLOCK
-  return O_NONBLOCK;
-#else
-  return 0;
-#endif
-}
-
-INLINE int
-__hscore_seek_set( void )
-{
-  return SEEK_SET;
-}
-
-INLINE int
-__hscore_seek_end( void )
-{
-  return SEEK_END;
-}
-
-INLINE int
-__hscore_ftruncate( int fd, off_t where )
-{
-#if defined(HAVE_FTRUNCATE)
-  return ftruncate(fd,where);
-#elif defined(HAVE__CHSIZE)
-  return _chsize(fd,where);
-#else
-// ToDo: we should use _chsize_s() on Windows which allows a 64-bit
-// offset, but it doesn't seem to be available from mingw at this time 
-// --SDM (01/2008)
-#error at least ftruncate or _chsize functions are required to build
-#endif
-}
-
-#ifndef __UHC__
-INLINE int
-__hscore_setmode( int fd, HsBool toBin )
-{
-#if defined(_MSC_VER) || defined(__MINGW32__) || defined(_WIN32)
-  return setmode(fd,(toBin == HS_BOOL_TRUE) ? _O_BINARY : _O_TEXT);
-#else
-  return 0;
-#endif
-}
-#endif /* !__UHC__ */
-
-#if __GLASGOW_HASKELL__
-
-INLINE int
-__hscore_PrelHandle_write( int fd, void *ptr, HsInt off, int sz )
-{
-  return write(fd,(char *)ptr + off, sz);
-}
-
-INLINE int
-__hscore_PrelHandle_read( int fd, void *ptr, HsInt off, int sz )
-{
-  return read(fd,(char *)ptr + off, sz);
-
-}
-
-#if defined(_MSC_VER) || defined(__MINGW32__) || defined(_WIN32)
-INLINE int
-__hscore_PrelHandle_send( int fd, void *ptr, HsInt off, int sz )
-{
-    return send(fd,(char *)ptr + off, sz, 0);
-}
-
-INLINE int
-__hscore_PrelHandle_recv( int fd, void *ptr, HsInt off, int sz )
-{
-    return recv(fd,(char *)ptr + off, sz, 0);
-}
-#endif
-
-#endif /* __GLASGOW_HASKELL__ */
-
-INLINE int
-__hscore_mkdir( char *pathName, int mode )
-{
-#if ( defined(_MSC_VER) || defined(__MINGW32__) || defined(_WIN32) ) && !defined(__CYGWIN__)
-  return mkdir(pathName);
-#else
-  return mkdir(pathName,mode);
-#endif
-}
-
-INLINE int
-__hscore_lstat( const char *fname, struct stat *st )
-{
-#if HAVE_LSTAT
-  return lstat(fname, st);
-#else
-  return stat(fname, st);
-#endif
-}
-
-INLINE char *
-__hscore_d_name( struct dirent* d )
-{
-  return (d->d_name);
-}
-
-INLINE int
-__hscore_end_of_dir( void )
-{
-  return READDIR_ERRNO_EOF;
-}
-
-INLINE void
-__hscore_free_dirent(struct dirent *dEnt)
-{
-#if HAVE_READDIR_R
-  free(dEnt);
-#endif
-}
-
-#if defined(__MINGW32__)
-// We want the versions of stat/fstat/lseek that use 64-bit offsets,
-// and you have to ask for those explicitly.  Unfortunately there
-// doesn't seem to be a 64-bit version of truncate/ftruncate, so while
-// hFileSize and hSeek will work with large files, hSetFileSize will not.
-#define stat(file,buf)       _stati64(file,buf)
-#define fstat(fd,buf)        _fstati64(fd,buf)
-typedef struct _stati64 struct_stat;
-typedef off64_t stsize_t;
-#else
-typedef struct stat struct_stat;
-typedef off_t stsize_t;
-#endif
-
-INLINE HsInt
-__hscore_sizeof_stat( void )
-{
-  return sizeof(struct_stat);
-}
-
-INLINE time_t __hscore_st_mtime ( struct_stat* st ) { return st->st_mtime; }
-INLINE stsize_t __hscore_st_size  ( struct_stat* st ) { return st->st_size; }
-#if !defined(_MSC_VER)
-INLINE mode_t __hscore_st_mode  ( struct_stat* st ) { return st->st_mode; }
-INLINE dev_t  __hscore_st_dev  ( struct_stat* st ) { return st->st_dev; }
-INLINE ino_t  __hscore_st_ino  ( struct_stat* st ) { return st->st_ino; }
-#endif
-
-#if HAVE_TERMIOS_H
-INLINE tcflag_t __hscore_lflag( struct termios* ts ) { return ts->c_lflag; }
-
-INLINE void
-__hscore_poke_lflag( struct termios* ts, tcflag_t t ) { ts->c_lflag = t; }
-
-INLINE unsigned char*
-__hscore_ptr_c_cc( struct termios* ts )
-{ return (unsigned char*) &ts->c_cc; }
-
-INLINE HsInt
-__hscore_sizeof_termios( void )
-{
-#ifndef __MINGW32__
-  return sizeof(struct termios);
-#else
-  return 0;
-#endif
-}
-#endif
-
-//sizeof_sigset_t is also use on windows systems which define tcflat_t. Why exclude it?
-// #if !defined(_MSC_VER) && !defined(__MINGW32__) && !defined(_WIN32)
-INLINE HsInt
-__hscore_sizeof_sigset_t( void )
-{
-  return sizeof(sigset_t);
-}
-// #endif
-
-INLINE int
-__hscore_echo( void )
-{
-#ifdef ECHO
-  return ECHO;
-#else
-  return 0;
-#endif
-
-}
-
-INLINE int
-__hscore_tcsanow( void )
-{
-#ifdef TCSANOW
-  return TCSANOW;
-#else
-  return 0;
-#endif
-
-}
-
-INLINE int
-__hscore_icanon( void )
-{
-#ifdef ICANON
-  return ICANON;
-#else
-  return 0;
-#endif
-}
-
-INLINE int __hscore_vmin( void )
-{
-#ifdef VMIN
-  return VMIN;
-#else
-  return 0;
-#endif
-}
-
-INLINE int __hscore_vtime( void )
-{
-#ifdef VTIME
-  return VTIME;
-#else
-  return 0;
-#endif
-}
-
-INLINE int __hscore_sigttou( void )
-{
-#ifdef SIGTTOU
-  return SIGTTOU;
-#else
-  return 0;
-#endif
-}
-
-INLINE int __hscore_sig_block( void )
-{
-#ifdef SIG_BLOCK
-  return SIG_BLOCK;
-#else
-  return 0;
-#endif
-}
-
-INLINE int __hscore_sig_setmask( void )
-{
-#ifdef SIG_SETMASK
-  return SIG_SETMASK;
-#else
-  return 0;
-#endif
-}
-
-INLINE int
-__hscore_f_getfl( void )
-{
-#ifdef F_GETFL
-  return F_GETFL;
-#else
-  return 0;
-#endif
-}
-
-INLINE int
-__hscore_f_setfl( void )
-{
-#ifdef F_SETFL
-  return F_SETFL;
-#else
-  return 0;
-#endif
-}
-
-// defined in rts/RtsStartup.c.
-extern void* __hscore_get_saved_termios(int fd);
-extern void __hscore_set_saved_termios(int fd, void* ts);
-
-INLINE int __hscore_hs_fileno (FILE *f) { return fileno (f); }
-
-INLINE int __hscore_open(char *file, int how, mode_t mode) {
-#ifdef __MINGW32__
-	if ((how & O_WRONLY) || (how & O_RDWR) || (how & O_APPEND))
-	  return _sopen(file,how,_SH_DENYRW,mode);
-	else
-	  return _sopen(file,how,_SH_DENYWR,mode);
-#else
-	return open(file,how,mode);
-#endif
-}
-
-// These are wrapped because on some OSs (eg. Linux) they are
-// macros which redirect to the 64-bit-off_t versions when large file
-// support is enabled.
-//
-#if defined(__MINGW32__)
-INLINE off64_t __hscore_lseek(int fd, off64_t off, int whence) {
-	return (_lseeki64(fd,off,whence));
-}
-#else
-INLINE off_t __hscore_lseek(int fd, off_t off, int whence) {
-	return (lseek(fd,off,whence));
-}
-#endif
-
-INLINE HsInt __hscore_stat(char *file, struct_stat *buf) {
-	return (stat(file,buf));
-}
-
-INLINE HsInt __hscore_fstat(int fd, struct_stat *buf) {
-	return (fstat(fd,buf));
-}
-
-// select-related stuff
-
-#if !defined(__MINGW32__)
-INLINE int  hsFD_SETSIZE(void) { return FD_SETSIZE; }
-INLINE int  hsFD_ISSET(int fd, fd_set *fds) { return FD_ISSET(fd, fds); }
-INLINE void hsFD_SET(int fd, fd_set *fds) { FD_SET(fd, fds); }
-INLINE HsInt sizeof_fd_set(void) { return sizeof(fd_set); }
-extern void hsFD_ZERO(fd_set *fds);
-#endif
-
-// gettimeofday()-related
-
-#if !defined(__MINGW32__)
-
-INLINE HsInt sizeofTimeVal(void) { return sizeof(struct timeval); }
-
-INLINE HsWord64 getUSecOfDay(void)
-{
-    struct timeval tv;
-    gettimeofday(&tv, (struct timezone *) NULL);
-    // Don't forget to cast *before* doing the arithmetic, otherwise
-    // the arithmetic happens at the type of tv_sec, which is probably
-    // only 'int'.
-    return ((HsWord64)tv.tv_sec * 1000000 + (HsWord64)tv.tv_usec);
-}
-
-INLINE void setTimevalTicks(struct timeval *p, HsWord64 usecs)
-{
-    p->tv_sec  = usecs / 1000000;
-    p->tv_usec = usecs % 1000000;
-}
-#endif /* !defined(__MINGW32__) */
-
-/* ToDo: write a feature test that doesn't assume 'environ' to
- *    be in scope at link-time. */
-extern char** environ;
-INLINE char **__hscore_environ() { return environ; }
-
-/* lossless conversions between pointers and integral types */
-INLINE void *    __hscore_from_uintptr(uintptr_t n) { return (void *)n; }
-INLINE void *    __hscore_from_intptr (intptr_t n)  { return (void *)n; }
-INLINE uintptr_t __hscore_to_uintptr  (void *p)     { return (uintptr_t)p; }
-INLINE intptr_t  __hscore_to_intptr   (void *p)     { return (intptr_t)p; }
-
-void errorBelch2(const char*s, char *t);
-void debugBelch2(const char*s, char *t);
-
-#endif /* __HSBASE_H__ */
-
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/HsBaseConfig.h b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/HsBaseConfig.h
deleted file mode 100644
--- a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/HsBaseConfig.h
+++ /dev/null
@@ -1,944 +0,0 @@
-/* ehclib/uhcbase/include/HsBaseConfig.h.  Generated from HsBaseConfig.h.in by configure.  */
-#ifndef HSBASECONFIG_H
-#define HSBASECONFIG_H
-
-#include "MachDeps.h"
-
-/********************************************************************/
-/**** Sizes                                                      ****/
-/********************************************************************/
-
-#if SIZEOF_INTPTR_T == 8
-#define HTYPE_INTPTR_T 			Int64
-#define HTYPE_UINTPTR_T 		Word64
-#else
-#define HTYPE_INTPTR_T 			Int32
-#define HTYPE_UINTPTR_T 		Word32
-#endif
-
-/* also here: typedef int sig_atomic_t
- */
-#if SIZEOF_INT == 8
-#define HTYPE_INT 				Int64
-#define HTYPE_UNSIGNED_INT 		Word64
-#define HTYPE_SIG_ATOMIC_T 		Word64
-#else
-#define HTYPE_INT 				Int32
-#define HTYPE_UNSIGNED_INT 		Word32
-#define HTYPE_SIG_ATOMIC_T 		Word32
-#endif
-
-#if SIZEOF_LONG == 8
-#define HTYPE_LONG 				Int64
-#define HTYPE_UNSIGNED_LONG 	Word64
-#else
-#define HTYPE_LONG 				Int32
-#define HTYPE_UNSIGNED_LONG 	Word32
-#endif
-
-#if SIZEOF_VOID_P == 8
-#define HTYPE_PTRDIFF_T 		Int64
-#else
-#define HTYPE_PTRDIFF_T 		Int32
-#endif
-
-#if SIZEOF_CLOCK_T == 8
-#define HTYPE_CLOCK_T 			Word64
-#else
-#define HTYPE_CLOCK_T 			Word32
-#endif
-
-#if SIZEOF_TIME_T == 8
-#define HTYPE_TIME_T 			Word64
-#else
-#define HTYPE_TIME_T 			Word32
-#endif
-
-#if SIZEOF_USECONDS_T == 8
-#define HTYPE_USECONDS_T 		Word64
-#else
-#define HTYPE_USECONDS_T 		Word32
-#endif
-
-#if SIZEOF_SIZE_T == 8
-#define HTYPE_SIZE_T 			Word64
-#else
-#define HTYPE_SIZE_T 			Word32
-#endif
-
-#if SIZEOF_WCHAR_T == 1
-#define HTYPE_WCHAR_T 			Word8
-#elif SIZEOF_WCHAR_T == 2
-#define HTYPE_WCHAR_T 			Word16
-#else
-#define HTYPE_WCHAR_T 			Word32
-#endif
-
-
-
-/* Define to Haskell type for char */
-#define HTYPE_CHAR Int8
-
-/* Define to Haskell type for double */
-#define HTYPE_DOUBLE Double
-
-/* Define to Haskell type for float */
-#define HTYPE_FLOAT Float
-
-/* Define to Haskell type for intmax_t */
-#define HTYPE_INTMAX_T Int64
-
-/* Define to Haskell type for long long */
-#define HTYPE_LONG_LONG Int64
-
-/* Define to Haskell type for short */
-#define HTYPE_SHORT Int16
-
-/* Define to Haskell type for signed char */
-#define HTYPE_SIGNED_CHAR Int8
-
-/* Define to Haskell type for uintmax_t */
-#define HTYPE_UINTMAX_T Word64
-
-/* Define to Haskell type for unsigned char */
-#define HTYPE_UNSIGNED_CHAR Word8
-
-/* Define to Haskell type for unsigned long long */
-#define HTYPE_UNSIGNED_LONG_LONG Word64
-
-/* Define to Haskell type for unsigned short */
-#define HTYPE_UNSIGNED_SHORT Word16
-
-
-
-/********************************************************************/
-/**** System tupes                                               ****/
-/********************************************************************/
-
-#ifdef SIZEOF_DEV_T
-# if SIZEOF_DEV_T == 8
-#  define HTYPE_DEV_T 			Word64
-# elif SIZEOF_DEV_T == 4
-#  define HTYPE_DEV_T 			Word32
-# elif SIZEOF_DEV_T == 2
-#  define HTYPE_DEV_T 			Word16
-# else
-# endif
-#endif
-
-#ifdef SIZEOF_INO_T
-# if SIZEOF_INO_T == 8
-#  define HTYPE_INO_T 			Word64
-# elif SIZEOF_INO_T == 4
-#  define HTYPE_INO_T 			Word32
-# elif SIZEOF_INO_T == 2
-#  define HTYPE_INO_T 			Word16
-# else
-# endif
-#endif
-
-#ifdef SIZEOF_MODE_T
-# if SIZEOF_MODE_T == 8
-#  define HTYPE_MODE_T 			Word64
-# elif SIZEOF_MODE_T == 4
-#  define HTYPE_MODE_T 			Word32
-# elif SIZEOF_MODE_T == 2
-#  define HTYPE_MODE_T 			Word16
-# else
-# endif
-#endif
-
-#ifdef SIZEOF_OFF_T
-# if SIZEOF_OFF_T == 8
-#  define HTYPE_OFF_T 			Word64
-# elif SIZEOF_OFF_T == 4
-#  define HTYPE_OFF_T 			Word32
-# elif SIZEOF_OFF_T == 2
-#  define HTYPE_OFF_T 			Word16
-# else
-# endif
-#endif
-
-#ifdef SIZEOF_PID_T
-# if SIZEOF_PID_T == 8
-#  define HTYPE_PID_T 			Word64
-# elif SIZEOF_PID_T == 4
-#  define HTYPE_PID_T 			Word32
-# elif SIZEOF_PID_T == 2
-#  define HTYPE_PID_T 			Word16
-# else
-# endif
-#endif
-
-#ifdef SIZEOF_SSIZE_T
-# if SIZEOF_SSIZE_T == 8
-#  define HTYPE_SSIZE_T 			Word64
-# elif SIZEOF_SSIZE_T == 4
-#  define HTYPE_SSIZE_T 			Word32
-# elif SIZEOF_SSIZE_T == 2
-#  define HTYPE_SSIZE_T 			Word16
-# else
-# endif
-#endif
-
-#ifdef SIZEOF_GID_T
-# if SIZEOF_GID_T == 8
-#  define HTYPE_GID_T 			Word64
-# elif SIZEOF_GID_T == 4
-#  define HTYPE_GID_T 			Word32
-# elif SIZEOF_GID_T == 2
-#  define HTYPE_GID_T 			Word16
-# else
-# endif
-#endif
-
-#ifdef SIZEOF_NLINK_T
-# if SIZEOF_NLINK_T == 8
-#  define HTYPE_NLINK_T 			Word64
-# elif SIZEOF_NLINK_T == 4
-#  define HTYPE_NLINK_T 			Word32
-# elif SIZEOF_NLINK_T == 2
-#  define HTYPE_NLINK_T 			Word16
-# else
-# endif
-#endif
-
-#ifdef SIZEOF_UID_T
-# if SIZEOF_UID_T == 8
-#  define HTYPE_UID_T 			Word64
-# elif SIZEOF_UID_T == 4
-#  define HTYPE_UID_T 			Word32
-# elif SIZEOF_UID_T == 2
-#  define HTYPE_UID_T 			Word16
-# else
-# endif
-#endif
-
-#ifdef SIZEOF_CC_T
-# if SIZEOF_CC_T == 8
-#  define HTYPE_CC_T 			Word64
-# elif SIZEOF_CC_T == 4
-#  define HTYPE_CC_T 			Word32
-# elif SIZEOF_CC_T == 2
-#  define HTYPE_CC_T 			Word16
-# else
-# endif
-#endif
-
-#ifdef SIZEOF_SPEED_T
-# if SIZEOF_SPEED_T == 8
-#  define HTYPE_SPEED_T 			Word64
-# elif SIZEOF_SPEED_T == 4
-#  define HTYPE_SPEED_T 			Word32
-# elif SIZEOF_SPEED_T == 2
-#  define HTYPE_SPEED_T 			Word16
-# else
-# endif
-#endif
-
-#ifdef SIZEOF_TCFLAG_T
-# if SIZEOF_TCFLAG_T == 8
-#  define HTYPE_TCFLAG_T 			Word64
-# elif SIZEOF_TCFLAG_T == 4
-#  define HTYPE_TCFLAG_T 			Word32
-# elif SIZEOF_TCFLAG_T == 2
-#  define HTYPE_TCFLAG_T 			Word16
-# else
-# endif
-#endif
-
-#ifdef SIZEOF_RLIM_T
-# if SIZEOF_RLIM_T == 8
-#  define HTYPE_RLIM_T 			Word64
-# elif SIZEOF_RLIM_T == 4
-#  define HTYPE_RLIM_T 			Word32
-# elif SIZEOF_RLIM_T == 2
-#  define HTYPE_RLIM_T 			Word16
-# else
-# endif
-#endif
-
-/********************************************************************/
-/**** Presence of include files                                  ****/
-/********************************************************************/
-
-#define HAVE_DIRENT_H 1
-#define HAVE_ERRNO_H 1
-#define HAVE_FCNTL_H 1
-#define HAVE_INTTYPES_H 1
-#define HAVE_LIMITS_H 1
-#define HAVE_SIGNAL_H 1
-#define HAVE_STDINT_H 1
-#define HAVE_STRING_H 1
-#define HAVE_SYS_RESOURCE_H 1
-#define HAVE_SYS_SELECT_H 1
-#define HAVE_SYS_STAT_H 1
-#define HAVE_SYS_SYSCALL_H 1
-#define HAVE_SYS_TIME_H 1
-#define HAVE_SYS_TIMEB_H 1
-/* #undef HAVE_SYS_TIMERS_H */
-#define HAVE_SYS_TIMES_H 1
-#define HAVE_SYS_TYPES_H 1
-#define HAVE_SYS_UTSNAME_H 1
-#define HAVE_SYS_WAIT_H 1
-#define HAVE_TERMIOS_H 1
-#define HAVE_TIME_H 1
-#define HAVE_UNISTD_H 1
-#define HAVE_UTIME_H 1
-/* #undef HAVE_VFORK_H */
-#define HAVE_WCTYPE_H 1
-/* #undef HAVE_WINDOWS_H */
-/* #undef HAVE_WINSOCK_H */
-
-/* #undef HAVE__CHSIZE */
-#define HAVE_FTRUNCATE 1
-/* #undef HAVE_GETCLOCK */
-#define HAVE_GETRUSAGE 1
-#define HAVE_GETTIMEOFDAY 1
-#define HAVE_LSTAT 1
-#define HAVE_READDIR_R 1
-
-/********************************************************************/
-/**** Runtime types                                              ****/
-/********************************************************************/
-
-#ifdef __UHC_BUILDS_O__
-
-#if defined(__UHC_TARGET_BC__) || defined(__UHC_TARGET_C__)
-// # define HsBool				Word
-// # define HsInt				Word
-// # define HsWord64			Word64
-// # define HsWord32			Word32
-// # define HsWord16			Word16
-// # define HsWord8			Word8
-// # ifdef __UHC_TARGET_BC__
-// #  define HS_BOOL_FALSE		gb_False
-// #  define HS_BOOL_TRUE		gb_True
-// # else
-// #  define HS_BOOL_FALSE		0
-// #  define HS_BOOL_TRUE		1
-// # endif
-#endif /* __UHC_TARGET_BC__ */
-
-#endif /* __UHC_BUILDS_O__ */
-
-/********************************************************************/
-/**** Read dir EOF error                                         ****/
-/********************************************************************/
-
-/* See remarks in GHC, libraries/base/aclocal.m4: MinGW platform returns non 0 value. We ignore that */
-#define	READDIR_ERRNO_EOF	0
-
-/********************************************************************/
-/**** C errors                                                   ****/
-/********************************************************************/
-
-/* (1) Assume errno.h is already included */
-/* (2) Error codes like EADV are not present on all platforms, so a dummy value is provided, this should be done for all codes */
-
-/* The value of E2BIG. */
-#if !defined(E2BIG)
-#define E2BIG 10000
-#endif
-#define CONST_E2BIG E2BIG
-
-/* The value of EACCES. */
-#if !defined(EACCES)
-#define EACCES 10000
-#endif
-#define CONST_EACCES EACCES
-
-/* The value of EADDRINUSE. */
-#if !defined(EADDRINUSE)
-#define EADDRINUSE 10000
-#endif
-#define CONST_EADDRINUSE EADDRINUSE
-
-/* The value of EADDRNOTAVAIL. */
-#define CONST_EADDRNOTAVAIL EADDRNOTAVAIL
-
-/* The value of EADV. */
-#if !defined(EADV)
-#define EADV 10000
-#endif
-#define CONST_EADV EADV
-
-/* The value of EAFNOSUPPORT. */
-#if !defined(EAFNOSUPPORT)
-#define EAFNOSUPPORT 10000
-#endif
-#define CONST_EAFNOSUPPORT EAFNOSUPPORT
-
-/* The value of EAGAIN. */
-#if !defined(EAGAIN)
-#define EAGAIN 10000
-#endif
-#define CONST_EAGAIN EAGAIN
-
-/* The value of EALREADY. */
-#if !defined(EALREADY)
-#define EALREADY 10000
-#endif
-#define CONST_EALREADY EALREADY
-
-/* The value of EBADF. */
-#if !defined(EBADF)
-#define EBADF 10000
-#endif
-#define CONST_EBADF EBADF
-
-/* The value of EBADMSG. */
-#if !defined(EBADMSG)
-#define EBADMSG 10000
-#endif
-#define CONST_EBADMSG EBADMSG
-
-/* The value of EBADRPC. */
-#if !defined(EBADRPC)
-#define EBADRPC 10000
-#endif
-#define CONST_EBADRPC EBADRPC
-
-/* The value of EBUSY. */
-#if !defined(EBUSY)
-#define EBUSY 10000
-#endif
-#define CONST_EBUSY EBUSY
-
-/* The value of ECHILD. */
-#if !defined(ECHILD)
-#define ECHILD 10000
-#endif
-#define CONST_ECHILD ECHILD
-
-/* The value of ECOMM. */
-#if !defined(ECOMM)
-#define ECOMM 10000
-#endif
-#define CONST_ECOMM ECOMM
-
-/* The value of ECONNABORTED. */
-#if !defined(ECONNABORTED)
-#define ECONNABORTED 10000
-#endif
-#define CONST_ECONNABORTED ECONNABORTED
-
-/* The value of ECONNREFUSED. */
-#if !defined(ECONNREFUSED)
-#define ECONNREFUSED 10000
-#endif
-#define CONST_ECONNREFUSED ECONNREFUSED
-
-/* The value of ECONNRESET. */
-#if !defined(ECONNRESET)
-#define ECONNRESET 10000
-#endif
-#define CONST_ECONNRESET ECONNRESET
-
-/* The value of EDEADLK. */
-#if !defined(EDEADLK)
-#define EDEADLK 10000
-#endif
-#define CONST_EDEADLK EDEADLK
-
-/* The value of EDESTADDRREQ. */
-#if !defined(EDESTADDRREQ)
-#define EDESTADDRREQ 10000
-#endif
-#define CONST_EDESTADDRREQ EDESTADDRREQ
-
-/* The value of EDIRTY. */
-#if !defined(EDIRTY)
-#define EDIRTY 10000
-#endif
-#define CONST_EDIRTY EDIRTY
-
-/* The value of EDOM. */
-#if !defined(EDOM)
-#define EDOM 10000
-#endif
-#define CONST_EDOM EDOM
-
-/* The value of EDQUOT. */
-#if !defined(EDQUOT)
-#define EDQUOT 10000
-#endif
-#define CONST_EDQUOT EDQUOT
-
-/* The value of EEXIST. */
-#if !defined(EEXIST)
-#define EEXIST 10000
-#endif
-#define CONST_EEXIST EEXIST
-
-/* The value of EFAULT. */
-#if !defined(EFAULT)
-#define EFAULT 10000
-#endif
-#define CONST_EFAULT EFAULT
-
-/* The value of EFBIG. */
-#if !defined(EFBIG)
-#define EFBIG 10000
-#endif
-#define CONST_EFBIG EFBIG
-
-/* The value of EFTYPE. */
-#if !defined(EFTYPE)
-#define EFTYPE 10000
-#endif
-#define CONST_EFTYPE EFTYPE
-
-/* The value of EHOSTDOWN. */
-#if !defined(EHOSTDOWN)
-#define EHOSTDOWN 10000
-#endif
-#define CONST_EHOSTDOWN EHOSTDOWN
-
-/* The value of EHOSTUNREACH. */
-#if !defined(EHOSTUNREACH)
-#define EHOSTUNREACH 10000
-#endif
-#define CONST_EHOSTUNREACH EHOSTUNREACH
-
-/* The value of EIDRM. */
-#if !defined(EIDRM)
-#define EIDRM 10000
-#endif
-#define CONST_EIDRM EIDRM
-
-/* The value of EILSEQ. */
-#if !defined(EILSEQ)
-#define EILSEQ 10000
-#endif
-#define CONST_EILSEQ EILSEQ
-
-/* The value of EINPROGRESS. */
-#if !defined(EINPROGRESS)
-#define EINPROGRESS 10000
-#endif
-#define CONST_EINPROGRESS EINPROGRESS
-
-/* The value of EINTR. */
-#if !defined(EINTR)
-#define EINTR 10000
-#endif
-#define CONST_EINTR EINTR
-
-/* The value of EINVAL. */
-#if !defined(EINVAL)
-#define EINVAL 10000
-#endif
-#define CONST_EINVAL EINVAL
-
-/* The value of EIO. */
-#if !defined(EIO)
-#define EIO 10000
-#endif
-#define CONST_EIO EIO
-
-/* The value of EISCONN. */
-#if !defined(EISCONN)
-#define EISCONN 10000
-#endif
-#define CONST_EISCONN EISCONN
-
-/* The value of EISDIR. */
-#if !defined(EISDIR)
-#define EISDIR 10000
-#endif
-#define CONST_EISDIR EISDIR
-
-/* The value of ELOOP. */
-#if !defined(ELOOP)
-#define ELOOP 10000
-#endif
-#define CONST_ELOOP ELOOP
-
-/* The value of EMFILE. */
-#if !defined(EMFILE)
-#define EMFILE 10000
-#endif
-#define CONST_EMFILE EMFILE
-
-/* The value of EMLINK. */
-#if !defined(EMLINK)
-#define EMLINK 10000
-#endif
-#define CONST_EMLINK EMLINK
-
-/* The value of EMSGSIZE. */
-#if !defined(EMSGSIZE)
-#define EMSGSIZE 10000
-#endif
-#define CONST_EMSGSIZE EMSGSIZE
-
-/* The value of EMULTIHOP. */
-#if !defined(EMULTIHOP)
-#define EMULTIHOP 10000
-#endif
-#define CONST_EMULTIHOP EMULTIHOP
-
-/* The value of ENAMETOOLONG. */
-#if !defined(ENAMETOOLONG)
-#define ENAMETOOLONG 10000
-#endif
-#define CONST_ENAMETOOLONG ENAMETOOLONG
-
-/* The value of ENETDOWN. */
-#if !defined(ENETDOWN)
-#define ENETDOWN 10000
-#endif
-#define CONST_ENETDOWN ENETDOWN
-
-/* The value of ENETRESET. */
-#if !defined(ENETRESET)
-#define ENETRESET 10000
-#endif
-#define CONST_ENETRESET ENETRESET
-
-/* The value of ENETUNREACH. */
-#if !defined(ENETUNREACH)
-#define ENETUNREACH 10000
-#endif
-#define CONST_ENETUNREACH ENETUNREACH
-
-/* The value of ENFILE. */
-#if !defined(ENFILE)
-#define ENFILE 10000
-#endif
-#define CONST_ENFILE ENFILE
-
-/* The value of ENOBUFS. */
-#if !defined(ENOBUFS)
-#define ENOBUFS 10000
-#endif
-#define CONST_ENOBUFS ENOBUFS
-
-/* The value of ENOCIGAR. */
-#if !defined(ENOCIGAR)
-#define ENOCIGAR 10000
-#endif
-#define CONST_ENOCIGAR ENOCIGAR
-
-/* The value of ENODATA. */
-#if !defined(ENODATA)
-#define ENODATA 10000
-#endif
-#define CONST_ENODATA ENODATA
-
-/* The value of ENODEV. */
-#if !defined(ENODEV)
-#define ENODEV 10000
-#endif
-#define CONST_ENODEV ENODEV
-
-/* The value of ENOENT. */
-#if !defined(ENOENT)
-#define ENOENT 10000
-#endif
-#define CONST_ENOENT ENOENT
-
-/* The value of ENOEXEC. */
-#if !defined(ENOEXEC)
-#define ENOEXEC 10000
-#endif
-#define CONST_ENOEXEC ENOEXEC
-
-/* The value of ENOLCK. */
-#if !defined(ENOLCK)
-#define ENOLCK 10000
-#endif
-#define CONST_ENOLCK ENOLCK
-
-/* The value of ENOLINK. */
-#if !defined(ENOLINK)
-#define ENOLINK 10000
-#endif
-#define CONST_ENOLINK ENOLINK
-
-/* The value of ENOMEM. */
-#if !defined(ENOMEM)
-#define ENOMEM 10000
-#endif
-#define CONST_ENOMEM ENOMEM
-
-/* The value of ENOMSG. */
-#if !defined(ENOMSG)
-#define ENOMSG 10000
-#endif
-#define CONST_ENOMSG ENOMSG
-
-/* The value of ENONET. */
-#if !defined(ENONET)
-#define ENONET 10000
-#endif
-#define CONST_ENONET ENONET
-
-/* The value of ENOPROTOOPT. */
-#if !defined(ENOPROTOOPT)
-#define ENOPROTOOPT 10000
-#endif
-#define CONST_ENOPROTOOPT ENOPROTOOPT
-
-/* The value of ENOSPC. */
-#if !defined(ENOSPC)
-#define ENOSPC 10000
-#endif
-#define CONST_ENOSPC ENOSPC
-
-/* The value of ENOSR. */
-#if !defined(ENOSR)
-#define ENOSR 10000
-#endif
-#define CONST_ENOSR ENOSR
-
-/* The value of ENOSTR. */
-#if !defined(ENOSTR)
-#define ENOSTR 10000
-#endif
-#define CONST_ENOSTR ENOSTR
-
-/* The value of ENOSYS. */
-#if !defined(ENOSYS)
-#define ENOSYS 10000
-#endif
-#define CONST_ENOSYS ENOSYS
-
-/* The value of ENOTBLK. */
-#if !defined(ENOTBLK)
-#define ENOTBLK 10000
-#endif
-#define CONST_ENOTBLK ENOTBLK
-
-/* The value of ENOTCONN. */
-#if !defined(ENOTCONN)
-#define ENOTCONN 10000
-#endif
-#define CONST_ENOTCONN ENOTCONN
-
-/* The value of ENOTDIR. */
-#if !defined(ENOTDIR)
-#define ENOTDIR 10000
-#endif
-#define CONST_ENOTDIR ENOTDIR
-
-/* The value of ENOTEMPTY. */
-#if !defined(ENOTEMPTY)
-#define ENOTEMPTY 10000
-#endif
-#define CONST_ENOTEMPTY ENOTEMPTY
-
-/* The value of ENOTSOCK. */
-#if !defined(ENOTSOCK)
-#define ENOTSOCK 10000
-#endif
-#define CONST_ENOTSOCK ENOTSOCK
-
-/* The value of ENOTTY. */
-#if !defined(ENOTTY)
-#define ENOTTY 10000
-#endif
-#define CONST_ENOTTY ENOTTY
-
-/* The value of ENXIO. */
-#if !defined(ENXIO)
-#define ENXIO 10000
-#endif
-#define CONST_ENXIO ENXIO
-
-/* The value of EOPNOTSUPP. */
-#if !defined(EOPNOTSUPP)
-#define EOPNOTSUPP 10000
-#endif
-#define CONST_EOPNOTSUPP EOPNOTSUPP
-
-/* The value of EPERM. */
-#if !defined(EPERM)
-#define EPERM 10000
-#endif
-#define CONST_EPERM EPERM
-
-/* The value of EPFNOSUPPORT. */
-#if !defined(EPFNOSUPPORT)
-#define EPFNOSUPPORT 10000
-#endif
-#define CONST_EPFNOSUPPORT EPFNOSUPPORT
-
-/* The value of EPIPE. */
-#if !defined(EPIPE)
-#define EPIPE 10000
-#endif
-#define CONST_EPIPE EPIPE
-
-/* The value of EPROCLIM. */
-#if !defined(EPROCLIM)
-#define EPROCLIM 10000
-#endif
-#define CONST_EPROCLIM EPROCLIM
-
-/* The value of EPROCUNAVAIL. */
-#if !defined(EPROCUNAVAIL)
-#define EPROCUNAVAIL 10000
-#endif
-#define CONST_EPROCUNAVAIL EPROCUNAVAIL
-
-/* The value of EPROGMISMATCH. */
-#if !defined(EPROGMISMATCH)
-#define EPROGMISMATCH 10000
-#endif
-#define CONST_EPROGMISMATCH EPROGMISMATCH
-
-/* The value of EPROGUNAVAIL. */
-#if !defined(EPROGUNAVAIL)
-#define EPROGUNAVAIL 10000
-#endif
-#define CONST_EPROGUNAVAIL EPROGUNAVAIL
-
-/* The value of EPROTO. */
-#if !defined(EPROTO)
-#define EPROTO 10000
-#endif
-#define CONST_EPROTO EPROTO
-
-/* The value of EPROTONOSUPPORT. */
-#if !defined(EPROTONOSUPPORT)
-#define EPROTONOSUPPORT 10000
-#endif
-#define CONST_EPROTONOSUPPORT EPROTONOSUPPORT
-
-/* The value of EPROTOTYPE. */
-#if !defined(EPROTOTYPE)
-#define EPROTOTYPE 10000
-#endif
-#define CONST_EPROTOTYPE EPROTOTYPE
-
-/* The value of ERANGE. */
-#if !defined(ERANGE)
-#define ERANGE 10000
-#endif
-#define CONST_ERANGE ERANGE
-
-/* The value of EREMCHG. */
-#if !defined(EREMCHG)
-#define EREMCHG 10000
-#endif
-#define CONST_EREMCHG EREMCHG
-
-/* The value of EREMOTE. */
-#if !defined(EREMOTE)
-#define EREMOTE 10000
-#endif
-#define CONST_EREMOTE EREMOTE
-
-/* The value of EROFS. */
-#if !defined(EROFS)
-#define EROFS 10000
-#endif
-#define CONST_EROFS EROFS
-
-/* The value of ERPCMISMATCH. */
-#if !defined(ERPCMISMATCH)
-#define ERPCMISMATCH 10000
-#endif
-#define CONST_ERPCMISMATCH ERPCMISMATCH
-
-/* The value of ERREMOTE. */
-#if !defined(ERREMOTE)
-#define ERREMOTE 10000
-#endif
-#define CONST_ERREMOTE ERREMOTE
-
-/* The value of ESHUTDOWN. */
-#if !defined(ESHUTDOWN)
-#define ESHUTDOWN 10000
-#endif
-#define CONST_ESHUTDOWN ESHUTDOWN
-
-/* The value of ESOCKTNOSUPPORT. */
-#if !defined(ESOCKTNOSUPPORT)
-#define ESOCKTNOSUPPORT 10000
-#endif
-#define CONST_ESOCKTNOSUPPORT ESOCKTNOSUPPORT
-
-/* The value of ESPIPE. */
-#if !defined(ESPIPE)
-#define ESPIPE 10000
-#endif
-#define CONST_ESPIPE ESPIPE
-
-/* The value of ESRCH. */
-#if !defined(ESRCH)
-#define ESRCH 10000
-#endif
-#define CONST_ESRCH ESRCH
-
-/* The value of ESRMNT. */
-#if !defined(ESRMNT)
-#define ESRMNT 10000
-#endif
-#define CONST_ESRMNT ESRMNT
-
-/* The value of ESTALE. */
-#if !defined(ESTALE)
-#define ESTALE 10000
-#endif
-#define CONST_ESTALE ESTALE
-
-/* The value of ETIME. */
-#if !defined(ETIME)
-#define ETIME 10000
-#endif
-#define CONST_ETIME ETIME
-
-/* The value of ETIMEDOUT. */
-#if !defined(ETIMEDOUT)
-#define ETIMEDOUT 10000
-#endif
-#define CONST_ETIMEDOUT ETIMEDOUT
-
-/* The value of ETOOMANYREFS. */
-#if !defined(ETOOMANYREFS)
-#define ETOOMANYREFS 10000
-#endif
-#define CONST_ETOOMANYREFS ETOOMANYREFS
-
-/* The value of ETXTBSY. */
-#if !defined(ETXTBSY)
-#define ETXTBSY 10000
-#endif
-#define CONST_ETXTBSY ETXTBSY
-
-/* The value of EUSERS. */
-#if !defined(EUSERS)
-#define EUSERS 10000
-#endif
-#define CONST_EUSERS EUSERS
-
-/* The value of EWOULDBLOCK. */
-#if !defined(EWOULDBLOCK)
-#define EWOULDBLOCK 10000
-#endif
-#define CONST_EWOULDBLOCK EWOULDBLOCK
-
-/* The value of EXDEV. */
-#if !defined(EXDEV)
-#define EXDEV 10000
-#endif
-#define CONST_EXDEV EXDEV
-
-/* The value of O_BINARY. */
-#if !defined(O_BINARY)
-#define O_BINARY 10000
-#endif
-#define CONST_O_BINARY O_BINARY
-
-/* The value of SIGINT. */
-#if !defined(SIGINT)
-#define SIGINT 10000
-#endif
-#define CONST_SIGINT SIGINT
-
-
-#endif
-
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/IntLikeInstance.h b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/IntLikeInstance.h
deleted file mode 100644
--- a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/IntLikeInstance.h
+++ /dev/null
@@ -1,242 +0,0 @@
-{- --------------------------------------------------------------------------
-// Macros to help make various instances for Int like types (Int8, ...).
-//
-// Primitives are defined by 2 forms of macros:
-//  - starting with PRIMS_  : name of Haskell function and primitive is the same
-//  - starting with PRIMS2_ : name of primitive is given explicitly, to allow sharing between primitives
-// --------------------------------------------------------------------------
--}
-
--- define conversion primitives
-#define PRIMS_CONVERSION_INTEGER(tycon,primIntegerTo,primToInteger) \
-foreign import prim primIntegerTo :: Integer -> tycon ; \
-foreign import prim primToInteger :: tycon -> Integer 
-
-#define PRIMS2_CONVERSION_INTEGER(tycon,primIntegerTo,primIntegerToNm,primToInteger,primToIntegerNm) \
-foreign import prim primIntegerToNm primIntegerTo :: Integer -> tycon ; \
-foreign import prim primToIntegerNm primToInteger :: tycon -> Integer 
-
-#define PRIMS_CONVERSION_INT(tycon,primIntTo,primToInt) \
-foreign import prim primIntTo     :: Int -> tycon ; \
-foreign import prim primToInt     :: tycon -> Int 
-
-
--- define Eq primitives
-#define PRIMS_EQ(tycon,primEq,primNe) \
-foreign import prim primEq      :: tycon -> tycon -> Bool ; \
-foreign import prim primNe      :: tycon -> tycon -> Bool 
-
-#define PRIMS2_EQ(tycon,primEq,primEqNm,primNe,primNeNm) \
-foreign import prim primEqNm primEq     :: tycon -> tycon -> Bool ; \
-foreign import prim primNeNm primNe     :: tycon -> tycon -> Bool
-
-
--- define Eq instance
-#define INSTANCE_EQ(tycon,primEq,primNe) \
-instance Eq tycon where \
-  { (==) = primEq ; \
-  	(/=) = primNe \
-  }
-
-
--- define Ord primitives
-
-#define PRIMS_ORD(tycon,primCmp,primLt,primGt,primLe,primGe) \
-foreign import prim primCmp     :: tycon -> tycon -> Ordering ; \
-foreign import prim primLt      :: tycon -> tycon -> Bool ; \
-foreign import prim primGt      :: tycon -> tycon -> Bool ; \
-foreign import prim primLe      :: tycon -> tycon -> Bool ; \
-foreign import prim primGe      :: tycon -> tycon -> Bool 
-
-#define PRIMS2_ORD(tycon,primCmp,primCmpNm,primLt,primLtNm,primGt,primGtNm,primLe,primLeNm,primGe,primGeNm) \
-foreign import prim primCmpNm primCmp     :: tycon -> tycon -> Ordering ; \
-foreign import prim primLtNm primLt      :: tycon -> tycon -> Bool ; \
-foreign import prim primGtNm primGt      :: tycon -> tycon -> Bool ; \
-foreign import prim primLeNm primLe      :: tycon -> tycon -> Bool ; \
-foreign import prim primGeNm primGe      :: tycon -> tycon -> Bool 
-
-
--- define Ord instance
-
-#define INSTANCE_ORD(tycon,primCmp,primLt,primGt,primLe,primGe) \
-instance Ord tycon where \
-  { compare = primCmp \
-  ; (<) = primLt \
-  ; (>) = primGt \
-  ; (<=) = primLe \
-  ; (>=) = primGe \
-  }
-
-
--- define Bounded primitives
-#define PRIMS_BOUNDED(tycon,primMin,primMax) \
-foreign import prim primMin     :: tycon ; \
-foreign import prim primMax     :: tycon 
-
-
--- define Bounded instance
-#define INSTANCE_BOUNDED(tycon,primMin,primMax) \
-instance Bounded tycon where \
-  { minBound = primMin \
-  ; maxBound = primMax \
-  }
-
-
--- define Num primitives
-#define PRIMS_NUM(tycon,primAdd,primSub,primMul,primNeg) \
-foreign import prim primAdd       :: tycon -> tycon -> tycon ; \
-foreign import prim primSub       :: tycon -> tycon -> tycon ; \
-foreign import prim primMul       :: tycon -> tycon -> tycon ; \
-foreign import prim primNeg       :: tycon -> tycon 
-
-#define PRIMS2_NUM(tycon,primAdd,primAddNm,primSub,primSubNm,primMul,primMulNm,primNeg,primNegNm) \
-foreign import prim primAddNm 			primAdd       :: tycon -> tycon -> tycon ; \
-foreign import prim primSubNm 			primSub       :: tycon -> tycon -> tycon ; \
-foreign import prim primMulNm 			primMul       :: tycon -> tycon -> tycon ; \
-foreign import prim primNegNm 			primNeg       :: tycon -> tycon 
-
-
--- define Num instance
-#define INSTANCE_NUM(tycon,primAdd,primSub,primMul,primNeg,primIntegerTo,primIntTo) \
-instance Num tycon where \
-  { (+)         = primAdd \
-  ; (-)         = primSub \
-  ; (*)         = primMul \
-  ; negate      = primNeg \
-  ; fromInteger = primIntegerTo \
-  ; fromInt     = primIntTo \
-  ; abs         = absReal \
-  ; signum      = signumReal \
-  }
-
-
--- define Enum instance
-#define INSTANCE_ENUM(tycon,primToEnum,primFromEnum) \
-instance Enum tycon where \
-  { succ           = boundedSucc \
-  ; pred           = boundedPred \
-  ; toEnum         = primToEnum \
-  ; fromEnum       = primFromEnum \
-  ; enumFrom       = boundedEnumFrom \
-  ; enumFromTo     = boundedEnumFromTo \
-  ; enumFromThen   = boundedEnumFromThen \
-  ; enumFromThenTo = boundedEnumFromThenTo \
-  }
-
-
--- define Real instance
-#define INSTANCE_REAL(tycon) \
-instance Real tycon where \
-  { toRational x = toInteger x % 1 \
-  }
-
-
--- define Integral primitives
-#define PRIMS_INTEGRAL1(tycon,primDiv,primMod,primQuot,primRem) \
-foreign import prim primDiv       :: tycon -> tycon -> tycon ; \
-foreign import prim primMod       :: tycon -> tycon -> tycon ; \
-foreign import prim primQuot      :: tycon -> tycon -> tycon ; \
-foreign import prim primRem       :: tycon -> tycon -> tycon 
-
-#define PRIMS2_INTEGRAL1(tycon,primDiv,primDivNm,primMod,primModNm,primQuot,primQuotNm,primRem,primRemNm) \
-foreign import prim primDivNm 			primDiv       :: tycon -> tycon -> tycon ; \
-foreign import prim primModNm 			primMod       :: tycon -> tycon -> tycon ; \
-foreign import prim primQuotNm 			primQuot      :: tycon -> tycon -> tycon ; \
-foreign import prim primRemNm 			primRem       :: tycon -> tycon -> tycon 
-
-#define PRIMS_INTEGRAL2(tycon,primDiv,primMod,primDivMod,primQuot,primRem,primQuotRem) \
-PRIMS_INTEGRAL1(tycon,primDiv,primMod,primQuot,primRem) ; \
-foreign import prim primDivMod    :: tycon -> tycon -> (tycon,tycon) ; \
-foreign import prim primQuotRem   :: tycon -> tycon -> (tycon,tycon) 
-
-#define PRIMS2_INTEGRAL2(tycon,primDiv,primDivNm,primMod,primModNm,primDivMod,primDivModNm,primQuot,primQuotNm,primRem,primRemNm,primQuotRem,primQuotRemNm) \
-PRIMS2_INTEGRAL1(tycon,primDiv,primDivNm,primMod,primModNm,primQuot,primQuotNm,primRem,primQuotRemNm) ; \
-foreign import prim primDivModNm 	primDivMod    :: tycon -> tycon -> (tycon,tycon) ; \
-foreign import prim primQuotRemNm 	primQuotRem   :: tycon -> tycon -> (tycon,tycon) 
-
-
--- define Integral instance, assume default for divMod
-#define INSTANCE_INTEGRAL1(tycon,primDiv,primMod,primQuot,primRem,primToInteger,primToInt) \
-instance Integral tycon where \
-  { quotRem d m \
-              = (primQuot d m, primRem d m) \
-  ; div       = primDiv \
-  ; quot      = primQuot \
-  ; rem       = primRem \
-  ; mod       = primMod \
-  ; toInteger = primToInteger \
-  ; toInt     = primToInt \
-  }
-
-#define INSTANCE_INTEGRAL2(tycon,primDiv,primMod,primDivMod,primQuot,primRem,primQuotRem,primToInteger,primToInt) \
-instance Integral tycon where \
-  { divMod    = primDivMod \
-  ; quotRem   = primQuotRem \
-  ; div       = primDiv \
-  ; quot      = primQuot \
-  ; rem       = primRem \
-  ; mod       = primMod \
-  ; toInteger = primToInteger \
-  ; toInt     = primToInt \
-  }
-
-
--- define Show instance
-#define INSTANCE_SHOW(tycon) \
-instance Show tycon where \
-  { show = show . toInteger \
-  }
-
-
--- define Read instance
-#define INSTANCE_READ(tycon) \
-instance Read tycon where \
-  { readsPrec p = readSigned readDec \
-  }
-
-
--- define Bits primitives
-#define PRIMS_BITLOGIC(tycon,primAnd,primOr,primXor) \
-foreign import prim primAnd       	:: tycon -> tycon -> tycon ; \
-foreign import prim primOr       	:: tycon -> tycon -> tycon ; \
-foreign import prim primXor      	:: tycon -> tycon -> tycon
-
-#define PRIMS_BITSHIFT(tycon,primComplement,primShiftLeft,primShiftRight,primRotateLeft,primRotateRight) \
-foreign import prim primComplement	:: tycon -> tycon ; \
-foreign import prim primShiftLeft  	:: tycon -> Int -> tycon ; \
-foreign import prim primShiftRight 	:: tycon -> Int -> tycon ; \
-foreign import prim primRotateLeft  :: tycon -> Int -> tycon ; \
-foreign import prim primRotateRight :: tycon -> Int -> tycon
-
-#define PRIMS2_BITLOGIC(tycon,primAnd,primAndNm,primOr,primOrNm,primXor,primXorNm) \
-foreign import prim primAndNm       	primAnd       	:: tycon -> tycon -> tycon ; \
-foreign import prim primOrNm       		primOr       	:: tycon -> tycon -> tycon ; \
-foreign import prim primXorNm      		primXor      	:: tycon -> tycon -> tycon
-
-#define PRIMS2_BITSHIFT(tycon,primComplement,primComplementNm,primShiftLeft,primShiftLeftNm,primShiftRight,primShiftRightNm,primRotateLeft,primRotateLeftNm,primRotateRight,primRotateRightNm) \
-foreign import prim primComplementNm	primComplement	:: tycon -> tycon ; \
-foreign import prim primShiftLeftNm  	primShiftLeft  	:: tycon -> Int -> tycon ; \
-foreign import prim primShiftRightNm 	primShiftRight 	:: tycon -> Int -> tycon ; \
-foreign import prim primRotateLeftNm  	primRotateLeft  :: tycon -> Int -> tycon ; \
-foreign import prim primRotateRightNm 	primRotateRight :: tycon -> Int -> tycon
-
--- define Bits instance
-#define INSTANCE_BITS1(tycon,size,signed,primAnd,primOr,primXor,primComplement,primShiftLeft,primShiftRight,primRotateLeft,primRotateRight) \
-instance Bits tycon where \
-  { (.&.)   	= primAnd \
-  ; (.|.)   	= primOr \
-  ; xor	   		= primXor \
-  ; complement  = primComplement \
-  ; shiftL      = primShiftLeft \
-  ; shiftR      = primShiftRight \
-  ; rotateL     = primRotateLeft \
-  ; rotateR     = primRotateRight \
-  ; bitSize _   = size \
-  ; isSigned _  = signed \
-  }
-
-
-
-
-
-
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/MachDeps.h b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/MachDeps.h
deleted file mode 100644
--- a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/MachDeps.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/* ehclib/uhcbase/include/MachDeps.h.  Generated from MachDeps.h.in by configure.  */
-#ifndef MACHDEPS_H
-#define MACHDEPS_H
-
-#define SIZEOF_INTPTR_T 8
-#define SIZEOF_CHAR 1
-#define SIZEOF_SHORT 2
-#define SIZEOF_INT 4
-#define SIZEOF_LONG 8
-#define SIZEOF_LONG_LONG 8
-#define SIZEOF_FLOAT 4
-#define SIZEOF_DOUBLE 8
-#define SIZEOF_UNSIGNED_CHAR 1
-#define SIZEOF_UNSIGNED_SHORT 2
-#define SIZEOF_UNSIGNED_INT 4
-#define SIZEOF_UNSIGNED_LONG 8
-#define SIZEOF_UNSIGNED_LONG_LONG 8
-#define SIZEOF_VOID_P 8
-
-#define SIZEOF_DEV_T 4
-#define SIZEOF_INO_T 8
-#define SIZEOF_OFF_T 8
-#define SIZEOF_MODE_T 2
-#define SIZEOF_PID_T 4
-#define SIZEOF_SSIZE_T 8
-#define SIZEOF_GID_T 4
-#define SIZEOF_NLINK_T 2
-#define SIZEOF_UID_T 4
-#define SIZEOF_RLIM_T 8
-#define SIZEOF_CLOCK_T 8
-#define SIZEOF_TIME_T 8
-#define SIZEOF_SIZE_T 8
-#define SIZEOF_WCHAR_T 4
-
-#define SIZEOF_CC_T 1
-#define SIZEOF_SPEED_T 8
-#define SIZEOF_TCFLAG_T 8
-
-#define ALIGNOF_INTPTR_T 8
-#define ALIGNOF_CHAR 1
-#define ALIGNOF_SHORT 2
-#define ALIGNOF_INT 4
-#define ALIGNOF_LONG 8
-#define ALIGNOF_LONG_LONG 8
-#define ALIGNOF_FLOAT 4
-#define ALIGNOF_DOUBLE 8
-#define ALIGNOF_UNSIGNED_CHAR 1
-#define ALIGNOF_UNSIGNED_SHORT 2
-#define ALIGNOF_UNSIGNED_INT 4
-#define ALIGNOF_UNSIGNED_LONG 8
-#define ALIGNOF_UNSIGNED_LONG_LONG 8
-#define ALIGNOF_VOID_P 8
-
-#define ALIGNOF_UINT8_T 1
-#define ALIGNOF_UINT16_T 2
-#define ALIGNOF_UINT32_T 4
-#define ALIGNOF_UINT64_T 8
-
-#if SIZEOF_INTPTR_T == 8
-#define USE_64_BITS 1
-#define USE_32_BITS 0
-#else
-#define USE_64_BITS 0
-#define USE_32_BITS 1
-#endif
-
-#ifdef __UHC_TARGET_BC__
-#define BITSIZEOF_WORDTAG		1
-#else
-#define BITSIZEOF_WORDTAG		0
-#endif
-
-#define SIZEOF_HSCHAR           SIZEOF_INTPTR_T
-#define ALIGNMENT_HSCHAR        ALIGNOF_UINT32_T
-
-#define SIZEOF_HSINT            SIZEOF_INTPTR_T
-#define ALIGNMENT_HSINT         ALIGNOF_INTPTR_T
-
-#define SIZEOF_HSWORD			SIZEOF_INTPTR_T
-#define ALIGNMENT_HSWORD		ALIGNOF_INTPTR_T
-
-#define SIZEOF_HSDOUBLE			SIZEOF_DOUBLE
-#define ALIGNMENT_HSDOUBLE		ALIGNOF_DOUBLE
-
-#define SIZEOF_HSFLOAT			SIZEOF_FLOAT
-#define ALIGNMENT_HSFLOAT		ALIGNOF_FLOAT
-
-#define SIZEOF_HSPTR            SIZEOF_VOID_P
-#define ALIGNMENT_HSPTR         ALIGNOF_VOID_P
-
-#define SIZEOF_HSFUNPTR         SIZEOF_VOID_P
-#define ALIGNMENT_HSFUNPTR      ALIGNOF_VOID_P
-
-#define SIZEOF_HSFOREIGNPTR     SIZEOF_VOID_P
-#define ALIGNMENT_HSFOREIGNPTR  ALIGNOF_VOID_P
-
-#define SIZEOF_HSSTABLEPTR      SIZEOF_VOID_P
-#define ALIGNMENT_HSSTABLEPTR   ALIGNOF_VOID_P
-
-#define SIZEOF_INT8             8
-#define ALIGNMENT_INT8          ALIGNOF_UINT8_T
-
-#define SIZEOF_WORD8            8
-#define ALIGNMENT_WORD8         ALIGNOF_UINT8_T
-
-#define SIZEOF_INT16            16
-#define ALIGNMENT_INT16         ALIGNOF_UINT16_T
-
-#define SIZEOF_WORD16           16
-#define ALIGNMENT_WORD16        ALIGNOF_UINT16_T
-
-#define SIZEOF_INT32            32
-#define ALIGNMENT_INT32         ALIGNOF_UINT32_T
-
-#define SIZEOF_WORD32           32
-#define ALIGNMENT_WORD32        ALIGNOF_UINT32_T
-
-#define SIZEOF_INT64            64
-#define ALIGNMENT_INT64         ALIGNOF_UINT64_T
-
-#define SIZEOF_WORD64           64
-#define ALIGNMENT_WORD64        ALIGNOF_UINT64_T
-
-
-#endif
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/TupleInstance.h b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/TupleInstance.h
deleted file mode 100644
--- a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/TupleInstance.h
+++ /dev/null
@@ -1,147 +0,0 @@
-{- --------------------------------------------------------------------------
-// Macros to help make various instances for tuples.
-// A kind of poor mans deriving.
-//
-// --------------------------------------------------------------------------
--}
-
-#define	COMMA	,
-
-{- --------------------------------------------------------------------------
-// 2 tuple, 1 unary op
-// --------------------------------------------------------------------------
--}
-#define TUPLE2_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) \
-instance (clscon a, clscon b) => clscon (a,b) where \
-  { op1 op1preArg (a,b) op1postArg \
-      = pre \
-            op1subop a \
-        sep op1subop b \
-        post \
-  }
-
-{- --------------------------------------------------------------------------
-// 3 tuple, 1 unary op
-// --------------------------------------------------------------------------
--}
-#define TUPLE3_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) \
-instance (clscon a, clscon b, clscon c) => clscon (a,b,c) where \
-  { op1 op1preArg (a,b,c) op1postArg \
-      = pre \
-            op1subop a \
-        sep op1subop b \
-        sep op1subop c \
-        post \
-  }
-
-{- --------------------------------------------------------------------------
-// 4 tuple, 1 unary op
-// --------------------------------------------------------------------------
--}
-#define TUPLE4_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) \
-instance (clscon a, clscon b, clscon c, clscon d) => clscon (a,b,c,d) where \
-  { op1 op1preArg (a,b,c,d) op1postArg \
-      = pre \
-            op1subop a \
-        sep op1subop b \
-        sep op1subop c \
-        sep op1subop d \
-        post \
-  }
-
-{- --------------------------------------------------------------------------
-// 5 tuple, 1 unary op
-// --------------------------------------------------------------------------
--}
-#define TUPLE5_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) \
-instance (clscon a, clscon b, clscon c, clscon d, clscon e) => clscon (a,b,c,d,e) where \
-  { op1 op1preArg (a,b,c,d,e) op1postArg \
-      = pre \
-            op1subop a \
-        sep op1subop b \
-        sep op1subop c \
-        sep op1subop d \
-        sep op1subop e \
-        post \
-  }
-
-{- --------------------------------------------------------------------------
-// Set of 2..n tuple, 1 unary op
-// --------------------------------------------------------------------------
--}
-#define TUPLE_UNOP1_INSTANCES(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) \
-{ TUPLE2_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) ;\
-  TUPLE3_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) ;\
-  TUPLE4_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) ;\
-  TUPLE5_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) \
-}
-
-{- --------------------------------------------------------------------------
-// 2 tuple, 1 binary op
-// --------------------------------------------------------------------------
--}
-#define TUPLE2_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) \
-instance (clscon a, clscon b) => clscon (a,b) where \
-  { (a1,b1) op1 (a2,b2) \
-      = pre \
-            a1 op1subop a2 \
-        sep b1 op1subop b2 \
-        post \
-  }
-
-{- --------------------------------------------------------------------------
-// 3 tuple, 1 binary op
-// --------------------------------------------------------------------------
--}
-#define TUPLE3_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) \
-instance (clscon a, clscon b, clscon c) => clscon (a,b,c) where \
-  { (a1,b1,c1) op1 (a2,b2,c2) \
-      = pre \
-            a1 op1subop a2 \
-        sep b1 op1subop b2 \
-        sep c1 op1subop c2 \
-        post \
-  }
-
-{- --------------------------------------------------------------------------
-// 4 tuple, 1 binary op
-// --------------------------------------------------------------------------
--}
-#define TUPLE4_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) \
-instance (clscon a, clscon b, clscon c, clscon d) => clscon (a,b,c,d) where \
-  { (a1,b1,c1,d1) op1 (a2,b2,c2,d2) \
-      = pre \
-            a1 op1subop a2 \
-        sep b1 op1subop b2 \
-        sep c1 op1subop c2 \
-        sep d1 op1subop d2 \
-        post \
-  }
-
-{- --------------------------------------------------------------------------
-// 5 tuple, 1 binary op
-// --------------------------------------------------------------------------
--}
-#define TUPLE5_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) \
-instance (clscon a, clscon b, clscon c, clscon d, clscon e) => clscon (a,b,c,d,e) where \
-  { (a1,b1,c1,d1,e1) op1 (a2,b2,c2,d2,e2) \
-      = pre \
-            a1 op1subop a2 \
-        sep b1 op1subop b2 \
-        sep c1 op1subop c2 \
-        sep d1 op1subop d2 \
-        sep e1 op1subop e2 \
-        post \
-  }
-
-{- --------------------------------------------------------------------------
-// Set of 2..n tuple, 1 binary op
-// --------------------------------------------------------------------------
--}
-#define TUPLE_BINOP1_INSTANCES(clscon,op1,op1subop,pre,sep,post) \
-{ TUPLE2_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) ;\
-  TUPLE3_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) ;\
-  TUPLE4_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) ;\
-  TUPLE5_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) \
-}
-
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/Typeable.h b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/Typeable.h
deleted file mode 100644
--- a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/Typeable.h
+++ /dev/null
@@ -1,149 +0,0 @@
-{- --------------------------------------------------------------------------
-// Macros to help make Typeable instances.
-//
-// INSTANCE_TYPEABLEn(tc,tcname,"tc") defines
-//
-//	instance Typeable/n/ tc
-//	instance Typeable a => Typeable/n-1/ (tc a)
-//	instance (Typeable a, Typeable b) => Typeable/n-2/ (tc a b)
-//	...
-//	instance (Typeable a1, ..., Typeable an) => Typeable (tc a1 ... an)
-// --------------------------------------------------------------------------
--}
-
-#ifndef TYPEABLE_H
-#define TYPEABLE_H
-
-#define INSTANCE_TYPEABLE0(tycon,tcname,str) \
-tcname :: TyCon; \
-tcname = mkTyCon str; \
-instance Typeable tycon where { typeOf _ = mkTyConApp tcname [] }
-
-#ifdef __GLASGOW_HASKELL__
-
---  // For GHC, the extra instances follow from general instance declarations
---  // defined in Data.Typeable.
-
-#define INSTANCE_TYPEABLE1(tycon,tcname,str) \
-tcname :: TyCon; \
-tcname = mkTyCon str; \
-instance Typeable1 tycon where { typeOf1 _ = mkTyConApp tcname [] }
-
-#define INSTANCE_TYPEABLE2(tycon,tcname,str) \
-tcname :: TyCon; \
-tcname = mkTyCon str; \
-instance Typeable2 tycon where { typeOf2 _ = mkTyConApp tcname [] }
-
-#define INSTANCE_TYPEABLE3(tycon,tcname,str) \
-tcname :: TyCon; \
-tcname = mkTyCon str; \
-instance Typeable3 tycon where { typeOf3 _ = mkTyConApp tcname [] }
-
-#define INSTANCE_TYPEABLE4(tycon,tcname,str) \
-tcname :: TyCon; \
-tcname = mkTyCon str; \
-instance Typeable4 tycon where { typeOf4 _ = mkTyConApp tcname [] }
-
-#define INSTANCE_TYPEABLE5(tycon,tcname,str) \
-tcname :: TyCon; \
-tcname = mkTyCon str; \
-instance Typeable5 tycon where { typeOf5 _ = mkTyConApp tcname [] }
-
-#define INSTANCE_TYPEABLE6(tycon,tcname,str) \
-tcname :: TyCon; \
-tcname = mkTyCon str; \
-instance Typeable6 tycon where { typeOf6 _ = mkTyConApp tcname [] }
-
-#define INSTANCE_TYPEABLE7(tycon,tcname,str) \
-tcname :: TyCon; \
-tcname = mkTyCon str; \
-instance Typeable7 tycon where { typeOf7 _ = mkTyConApp tcname [] }
-
-#else /* !__GLASGOW_HASKELL__ */
-
-#define INSTANCE_TYPEABLE1(tycon,tcname,str) \
-tcname = mkTyCon str; \
-instance Typeable1 tycon where { typeOf1 _ = mkTyConApp tcname [] }; \
-instance Typeable a => Typeable (tycon a) where { typeOf = typeOfDefault }
-
-#define INSTANCE_TYPEABLE2(tycon,tcname,str) \
-tcname = mkTyCon str; \
-instance Typeable2 tycon where { typeOf2 _ = mkTyConApp tcname [] }; \
-instance Typeable a => Typeable1 (tycon a) where { \
-  typeOf1 = typeOf1Default }; \
-instance (Typeable a, Typeable b) => Typeable (tycon a b) where { \
-  typeOf = typeOfDefault }
-
-#define INSTANCE_TYPEABLE3(tycon,tcname,str) \
-tcname = mkTyCon str; \
-instance Typeable3 tycon where { typeOf3 _ = mkTyConApp tcname [] }; \
-instance Typeable a => Typeable2 (tycon a) where { \
-  typeOf2 = typeOf2Default }; \
-instance (Typeable a, Typeable b) => Typeable1 (tycon a b) where { \
-  typeOf1 = typeOf1Default }; \
-instance (Typeable a, Typeable b, Typeable c) => Typeable (tycon a b c) where { \
-  typeOf = typeOfDefault }
-
-#define INSTANCE_TYPEABLE4(tycon,tcname,str) \
-tcname = mkTyCon str; \
-instance Typeable4 tycon where { typeOf4 _ = mkTyConApp tcname [] }; \
-instance Typeable a => Typeable3 (tycon a) where { \
-  typeOf3 = typeOf3Default }; \
-instance (Typeable a, Typeable b) => Typeable2 (tycon a b) where { \
-  typeOf2 = typeOf2Default }; \
-instance (Typeable a, Typeable b, Typeable c) => Typeable1 (tycon a b c) where { \
-  typeOf1 = typeOf1Default }; \
-instance (Typeable a, Typeable b, Typeable c, Typeable d) => Typeable (tycon a b c d) where { \
-  typeOf = typeOfDefault }
-
-#define INSTANCE_TYPEABLE5(tycon,tcname,str) \
-tcname = mkTyCon str; \
-instance Typeable5 tycon where { typeOf5 _ = mkTyConApp tcname [] }; \
-instance Typeable a => Typeable4 (tycon a) where { \
-  typeOf4 = typeOf4Default }; \
-instance (Typeable a, Typeable b) => Typeable3 (tycon a b) where { \
-  typeOf3 = typeOf3Default }; \
-instance (Typeable a, Typeable b, Typeable c) => Typeable2 (tycon a b c) where { \
-  typeOf2 = typeOf2Default }; \
-instance (Typeable a, Typeable b, Typeable c, Typeable d) => Typeable1 (tycon a b c d) where { \
-  typeOf1 = typeOf1Default }; \
-instance (Typeable a, Typeable b, Typeable c, Typeable d, Typeable e) => Typeable (tycon a b c d e) where { \
-  typeOf = typeOfDefault }
-
-#define INSTANCE_TYPEABLE6(tycon,tcname,str) \
-tcname = mkTyCon str; \
-instance Typeable6 tycon where { typeOf6 _ = mkTyConApp tcname [] }; \
-instance Typeable a => Typeable5 (tycon a) where { \
-  typeOf5 = typeOf5Default }; \
-instance (Typeable a, Typeable b) => Typeable4 (tycon a b) where { \
-  typeOf4 = typeOf4Default }; \
-instance (Typeable a, Typeable b, Typeable c) => Typeable3 (tycon a b c) where { \
-  typeOf3 = typeOf3Default }; \
-instance (Typeable a, Typeable b, Typeable c, Typeable d) => Typeable2 (tycon a b c d) where { \
-  typeOf2 = typeOf2Default }; \
-instance (Typeable a, Typeable b, Typeable c, Typeable d, Typeable e) => Typeable1 (tycon a b c d e) where { \
-  typeOf1 = typeOf1Default }; \
-instance (Typeable a, Typeable b, Typeable c, Typeable d, Typeable e, Typeable f) => Typeable (tycon a b c d e f) where { \
-  typeOf = typeOfDefault }
-
-#define INSTANCE_TYPEABLE7(tycon,tcname,str) \
-tcname = mkTyCon str; \
-instance Typeable7 tycon where { typeOf7 _ = mkTyConApp tcname [] }; \
-instance Typeable a => Typeable6 (tycon a) where { \
-  typeOf6 = typeOf6Default }; \
-instance (Typeable a, Typeable b) => Typeable5 (tycon a b) where { \
-  typeOf5 = typeOf5Default }; \
-instance (Typeable a, Typeable b, Typeable c) => Typeable4 (tycon a b c) where { \
-  typeOf4 = typeOf4Default }; \
-instance (Typeable a, Typeable b, Typeable c, Typeable d) => Typeable3 (tycon a b c d) where { \
-  typeOf3 = typeOf3Default }; \
-instance (Typeable a, Typeable b, Typeable c, Typeable d, Typeable e) => Typeable2 (tycon a b c d e) where { \
-  typeOf2 = typeOf2Default }; \
-instance (Typeable a, Typeable b, Typeable c, Typeable d, Typeable e, Typeable f) => Typeable1 (tycon a b c d e f) where { \
-  typeOf1 = typeOf1Default }; \
-instance (Typeable a, Typeable b, Typeable c, Typeable d, Typeable e, Typeable f, Typeable g) => Typeable (tycon a b c d e f g) where { \
-  typeOf = typeOfDefault }
-
-#endif /* !__GLASGOW_HASKELL__ */
-
-#endif
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/dirUtils.h b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/dirUtils.h
deleted file mode 100644
--- a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/dirUtils.h
+++ /dev/null
@@ -1,11 +0,0 @@
-/* 
- * (c) The University of Glasgow 2002
- *
- * Directory Runtime Support
- */
-#ifndef __DIRUTILS_H__
-#define __DIRUTILS_H__
-
-extern int __hscore_readdir(DIR *dirPtr, struct dirent **pDirEnt);
-
-#endif /* __DIRUTILS_H__ */
diff --git a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/installed-pkg-config b/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/installed-pkg-config
deleted file mode 100644
--- a/103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/installed-pkg-config
+++ /dev/null
@@ -1,2 +0,0 @@
-exposed-modules: Control.Monad Data.Bits Data.Char Data.Either Data.Int Data.IORef Data.List Data.Maybe Data.Typeable Data.Word Debug.Trace Foreign.C.Error Foreign.C.String Foreign.C.Types Foreign.C Foreign.ForeignPtr Foreign.Marshal.Alloc Foreign.Marshal.Array Foreign.Marshal.Error Foreign.Marshal.Pool Foreign.Marshal.Utils Foreign.Marshal Foreign.Ptr Foreign.StablePtr Foreign.Storable Foreign System.IO.Error System.IO.Fix System.IO.Unsafe System.IO System.Posix.Internals System.Posix.Types UHC.Array UHC.Base UHC.Bits UHC.Bounded UHC.BoxArray UHC.ByteArray UHC.Char UHC.Conc UHC.Enum UHC.Eq UHC.Float UHC.ForeignPtr UHC.GC UHC.Generics.Tuple UHC.Generics UHC.Handle UHC.Int UHC.IO UHC.IOBase UHC.Ix UHC.LazyST UHC.MutVar UHC.MVar UHC.OldException UHC.OldIO UHC.Ord UHC.Prims UHC.Ptr UHC.Read UHC.Real UHC.Run UHC.Show UHC.ST UHC.StablePtr UHC.StackTrace UHC.Storable UHC.STRef UHC.Types UHC.Weak UHC.WeakPtr UHC.Word Unsafe.Coerce
-build-depends: 
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Control/Monad.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Control/Monad.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Control/Monad.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Control/Monad.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Control/Monad.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Control/Monad.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Bits.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Bits.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Bits.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Bits.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Bits.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Bits.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Char.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Char.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Char.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Char.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Char.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Char.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Either.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Either.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Either.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Either.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Either.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Either.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/IORef.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/IORef.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/IORef.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/IORef.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/IORef.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/IORef.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/List.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/List.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/List.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/List.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/List.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/List.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Maybe.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Maybe.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Maybe.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Maybe.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Maybe.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Maybe.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Typeable.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Typeable.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Typeable.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Typeable.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Typeable.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Typeable.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Debug/Trace.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Debug/Trace.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Debug/Trace.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Debug/Trace.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Debug/Trace.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Debug/Trace.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/Ptr.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/Ptr.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/Ptr.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/Ptr.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/Ptr.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/Ptr.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/StablePtr.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/StablePtr.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/StablePtr.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/StablePtr.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/StablePtr.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/StablePtr.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Error.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Error.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Error.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Error.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Error.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Error.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Fix.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Fix.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Fix.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Fix.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Fix.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Fix.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Unsafe.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Unsafe.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Unsafe.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Unsafe.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Unsafe.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Unsafe.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Array.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Array.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Array.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Array.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Array.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Array.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Base.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Base.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Base.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Base.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Base.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Base.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bits.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bits.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bits.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bits.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bits.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bits.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bounded.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bounded.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bounded.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bounded.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bounded.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bounded.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/BoxArray.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/BoxArray.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/BoxArray.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/BoxArray.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/BoxArray.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/BoxArray.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Char.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Char.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Char.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Char.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Char.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Char.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Enum.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Enum.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Enum.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Enum.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Enum.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Enum.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Eq.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Eq.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Eq.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Eq.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Eq.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Eq.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Float.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Float.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Float.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Float.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Float.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Float.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/GC.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/GC.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/GC.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/GC.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/GC.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/GC.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics/Tuple.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics/Tuple.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics/Tuple.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics/Tuple.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics/Tuple.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics/Tuple.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Handle.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Handle.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Handle.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Handle.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Handle.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Handle.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IO.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IO.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IO.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IO.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IO.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IO.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IOBase.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IOBase.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IOBase.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IOBase.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IOBase.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IOBase.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ix.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ix.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ix.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ix.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ix.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ix.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/LazyST.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/LazyST.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/LazyST.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/LazyST.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/LazyST.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/LazyST.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MVar.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MVar.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MVar.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MVar.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MVar.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MVar.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MutVar.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MutVar.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MutVar.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MutVar.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MutVar.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MutVar.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/OldException.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/OldException.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/OldException.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/OldException.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/OldException.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/OldException.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ord.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ord.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ord.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ord.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ord.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ord.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Prims.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Prims.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Prims.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Prims.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Prims.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Prims.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ptr.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ptr.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ptr.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ptr.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ptr.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ptr.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Read.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Read.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Read.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Read.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Read.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Read.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Real.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Real.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Real.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Real.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Real.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Real.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Run.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Run.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Run.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Run.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Run.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Run.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/ST.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/ST.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/ST.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/ST.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/ST.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/ST.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/STRef.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/STRef.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/STRef.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/STRef.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/STRef.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/STRef.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Show.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Show.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Show.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Show.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Show.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Show.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StablePtr.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StablePtr.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StablePtr.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StablePtr.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StablePtr.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StablePtr.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StackTrace.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StackTrace.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StackTrace.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StackTrace.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StackTrace.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StackTrace.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Types.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Types.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Types.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Types.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Types.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Types.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Weak.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Weak.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Weak.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Weak.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Weak.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Weak.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/WeakPtr.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/WeakPtr.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/WeakPtr.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/WeakPtr.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/WeakPtr.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/WeakPtr.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Unsafe/Coerce.cr b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Unsafe/Coerce.cr
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Unsafe/Coerce.cr differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Unsafe/Coerce.hi b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Unsafe/Coerce.hi
new file mode 100644
Binary files /dev/null and b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Unsafe/Coerce.hi differ
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/CTypes.h b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/CTypes.h
new file mode 100644
--- /dev/null
+++ b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/CTypes.h
@@ -0,0 +1,231 @@
+{- --------------------------------------------------------------------------
+// Dirty CPP hackery for CTypes/CTypesISO
+//
+// (c) The FFI task force, 2000
+// --------------------------------------------------------------------------
+-}
+
+#ifndef CTYPES__H
+#define CTYPES__H
+
+#include "Typeable.h"
+
+{-
+// As long as there is no automatic derivation of classes for newtypes we resort
+// to extremely dirty cpp-hackery.   :-P   Some care has to be taken when the
+// macros below are modified, otherwise the layout rule will bite you.
+-}
+
+--  // A hacked version for GHC follows the Haskell 98 version...
+#ifndef __GLASGOW_HASKELL__
+
+#define NEWTYPE_TYPE_NODERIVING(T,B) \
+newtype T = T B ; 
+
+#define NEWTYPE_TYPE(T,B) \
+newtype T = T B deriving (Eq, Ord) ; 
+
+#define ARITHMETIC_TYPE_INSTANCES(T,C,S,B) \
+INSTANCE_NUM(T) ; \
+INSTANCE_REAL(T) ; \
+INSTANCE_READ(T,B) ; \
+INSTANCE_SHOW(T,B) ; \
+INSTANCE_ENUM(T) ; \
+INSTANCE_STORABLE(T) ; \
+INSTANCE_TYPEABLE0(T,C,S) ;
+
+#define INTEGRAL_TYPE_INSTANCES(T,C,S,B) \
+INSTANCE_BOUNDED(T) ; \
+INSTANCE_INTEGRAL(T) ; \
+INSTANCE_BITS(T)
+
+#define ARITHMETIC_TYPE(T,C,S,B) \
+NEWTYPE_TYPE(T,B) ; \
+ARITHMETIC_TYPE_INSTANCES(T,C,S,B) ;
+
+#define INTEGRAL_TYPE(T,C,S,B) \
+ARITHMETIC_TYPE(T,C,S,B) ; \
+INTEGRAL_TYPE_INSTANCES(T,C,S,B)
+
+#define FLOATING_TYPE(T,C,S,B) \
+ARITHMETIC_TYPE(T,C,S,B) ; \
+INSTANCE_FRACTIONAL(T) ; \
+INSTANCE_FLOATING(T) ; \
+INSTANCE_REALFRAC(T) ; \
+INSTANCE_REALFLOAT(T)
+
+#ifndef __GLASGOW_HASKELL__
+#define fakeMap map
+#endif
+
+#define INSTANCE_READ(T,B) \
+instance Read T where { \
+   readsPrec p s = fakeMap (\(x, t) -> (T x, t)) (readsPrec p s) }
+
+#define INSTANCE_SHOW(T,B) \
+instance Show T where { \
+   showsPrec p (T x) = showsPrec p x }
+
+#define INSTANCE_NUM(T) \
+instance Num T where { \
+   (T i) + (T j) = T (i + j) ; \
+   (T i) - (T j) = T (i - j) ; \
+   (T i) * (T j) = T (i * j) ; \
+   negate  (T i) = T (negate i) ; \
+   abs     (T i) = T (abs    i) ; \
+   signum  (T i) = T (signum i) ; \
+   fromInteger x = T (fromInteger x) }
+
+#define INSTANCE_EQ(T) \
+instance Eq T where { \
+   (T x1) == (T x2) = x1 == x2 }
+
+#define INSTANCE_ORD(T) \
+instance Ord T where { \
+   (T x1) `compare` (T x2) = x1 `compare` x2 }
+
+#define INSTANCE_BOUNDED(T) \
+instance Bounded T where { \
+   minBound = T minBound ; \
+   maxBound = T maxBound }
+
+#define INSTANCE_ENUM(T) \
+instance Enum T where { \
+   succ           (T i)             = T (succ i) ; \
+   pred           (T i)             = T (pred i) ; \
+   toEnum               x           = T (toEnum x) ; \
+   fromEnum       (T i)             = fromEnum i ; \
+   enumFrom       (T i)             = fakeMap T (enumFrom i) ; \
+   enumFromThen   (T i) (T j)       = fakeMap T (enumFromThen i j) ; \
+   enumFromTo     (T i) (T j)       = fakeMap T (enumFromTo i j) ; \
+   enumFromThenTo (T i) (T j) (T k) = fakeMap T (enumFromThenTo i j k) }
+
+#define INSTANCE_REAL(T) \
+instance Real T where { \
+   toRational (T i) = toRational i }
+
+#define INSTANCE_INTEGRAL(T) \
+instance Integral T where { \
+   (T i) `quot`    (T j) = T (i `quot` j) ; \
+   (T i) `rem`     (T j) = T (i `rem`  j) ; \
+   (T i) `div`     (T j) = T (i `div`  j) ; \
+   (T i) `mod`     (T j) = T (i `mod`  j) ; \
+   (T i) `quotRem` (T j) = let (q,r) = i `quotRem` j in (T q, T r) ; \
+   (T i) `divMod`  (T j) = let (d,m) = i `divMod`  j in (T d, T m) ; \
+   toInteger (T i)       = toInteger i }
+
+#define INSTANCE_BITS(T) \
+instance Bits T where { \
+  (T x) .&.     (T y)   = T (x .&.   y) ; \
+  (T x) .|.     (T y)   = T (x .|.   y) ; \
+  (T x) `xor`   (T y)   = T (x `xor` y) ; \
+  complement    (T x)   = T (complement x) ; \
+  shift         (T x) n = T (shift x n) ; \
+  rotate        (T x) n = T (rotate x n) ; \
+  bit                 n = T (bit n) ; \
+  setBit        (T x) n = T (setBit x n) ; \
+  clearBit      (T x) n = T (clearBit x n) ; \
+  complementBit (T x) n = T (complementBit x n) ; \
+  testBit       (T x) n = testBit x n ; \
+  bitSize       (T x)   = bitSize x ; \
+  isSigned      (T x)   = isSigned x }
+
+#define INSTANCE_FRACTIONAL(T) \
+instance Fractional T where { \
+   (T x) / (T y)  = T (x / y) ; \
+   recip   (T x)  = T (recip x) ; \
+   fromRational r = T (fromRational r) }
+
+#define INSTANCE_FLOATING(T) \
+instance Floating T where { \
+   pi                    = pi ; \
+   exp   (T x)           = T (exp   x) ; \
+   log   (T x)           = T (log   x) ; \
+   sqrt  (T x)           = T (sqrt  x) ; \
+   (T x) **        (T y) = T (x ** y) ; \
+   (T x) `logBase` (T y) = T (x `logBase` y) ; \
+   sin   (T x)           = T (sin   x) ; \
+   cos   (T x)           = T (cos   x) ; \
+   tan   (T x)           = T (tan   x) ; \
+   asin  (T x)           = T (asin  x) ; \
+   acos  (T x)           = T (acos  x) ; \
+   atan  (T x)           = T (atan  x) ; \
+   sinh  (T x)           = T (sinh  x) ; \
+   cosh  (T x)           = T (cosh  x) ; \
+   tanh  (T x)           = T (tanh  x) ; \
+   asinh (T x)           = T (asinh x) ; \
+   acosh (T x)           = T (acosh x) ; \
+   atanh (T x)           = T (atanh x) }
+
+#define INSTANCE_REALFRAC(T) \
+instance RealFrac T where { \
+   properFraction (T x) = let (m,y) = properFraction x in (m, T y) ; \
+   truncate (T x) = truncate x ; \
+   round    (T x) = round x ; \
+   ceiling  (T x) = ceiling x ; \
+   floor    (T x) = floor x }
+
+#define INSTANCE_REALFLOAT(T) \
+instance RealFloat T where { \
+   floatRadix     (T x) = floatRadix x ; \
+   floatDigits    (T x) = floatDigits x ; \
+   floatRange     (T x) = floatRange x ; \
+   decodeFloat    (T x) = decodeFloat x ; \
+   encodeFloat m n      = T (encodeFloat m n) ; \
+   exponent       (T x) = exponent x ; \
+   significand    (T x) = T (significand  x) ; \
+   scaleFloat n   (T x) = T (scaleFloat n x) ; \
+   isNaN          (T x) = isNaN x ; \
+   isInfinite     (T x) = isInfinite x ; \
+   isDenormalized (T x) = isDenormalized x ; \
+   isNegativeZero (T x) = isNegativeZero x ; \
+   isIEEE         (T x) = isIEEE x ; \
+   (T x) `atan2`  (T y) = T (x `atan2` y) }
+
+#define INSTANCE_STORABLE(T) \
+instance Storable T where { \
+   sizeOf    (T x)       = sizeOf x ; \
+   alignment (T x)       = alignment x ; \
+   peekElemOff a i       = liftM T (peekElemOff (castPtr a) i) ; \
+   pokeElemOff a i (T x) = pokeElemOff (castPtr a) i x }
+
+#else /* __GLASGOW_HASKELL__ */
+
+--  // GHC can derive any class for a newtype, so we make use of that here...
+
+#define ARITHMETIC_CLASSES  Eq,Ord,Num,Enum,Storable,Real
+#define INTEGRAL_CLASSES Bounded,Integral,Bits
+#define FLOATING_CLASSES Fractional,Floating,RealFrac,RealFloat
+
+#define ARITHMETIC_TYPE(T,C,S,B) \
+newtype T = T B deriving (ARITHMETIC_CLASSES); \
+INSTANCE_READ(T,B); \
+INSTANCE_SHOW(T,B); \
+INSTANCE_TYPEABLE0(T,C,S) ;
+
+#define INTEGRAL_TYPE(T,C,S,B) \
+newtype T = T B deriving (ARITHMETIC_CLASSES, INTEGRAL_CLASSES); \
+INSTANCE_READ(T,B); \
+INSTANCE_SHOW(T,B); \
+INSTANCE_TYPEABLE0(T,C,S) ;
+
+#define FLOATING_TYPE(T,C,S,B) \
+newtype T = T B deriving (ARITHMETIC_CLASSES, FLOATING_CLASSES); \
+INSTANCE_READ(T,B); \
+INSTANCE_SHOW(T,B); \
+INSTANCE_TYPEABLE0(T,C,S) ;
+
+#define INSTANCE_READ(T,B) \
+instance Read T where { \
+   readsPrec            = unsafeCoerce# (readsPrec :: Int -> ReadS B); \
+   readList             = unsafeCoerce# (readList  :: ReadS [B]); }
+
+#define INSTANCE_SHOW(T,B) \
+instance Show T where { \
+   showsPrec            = unsafeCoerce# (showsPrec :: Int -> B -> ShowS); \
+   show                 = unsafeCoerce# (show :: B -> String); \
+   showList             = unsafeCoerce# (showList :: [B] -> ShowS); }
+
+#endif /* __GLASGOW_HASKELL__ */
+
+#endif
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/HsBase.h b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/HsBase.h
new file mode 100644
--- /dev/null
+++ b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/HsBase.h
@@ -0,0 +1,757 @@
+/* -----------------------------------------------------------------------------
+ *
+ * (c) The University of Glasgow 2001-2004
+ *
+ * Definitions for package `base' which are visible in Haskell land.
+ *
+ * Adapted for use in EHC
+ *
+ * ---------------------------------------------------------------------------*/
+
+#ifndef __HSBASE_H__
+#define __HSBASE_H__
+
+#include "HsBaseConfig.h"
+#ifdef __UHC_BUILDS_O__
+#include "rts.h"
+#endif
+
+/* ultra-evil... */
+#undef PACKAGE_BUGREPORT
+#undef PACKAGE_NAME
+#undef PACKAGE_STRING
+#undef PACKAGE_TARNAME
+#undef PACKAGE_VERSION
+
+/* Needed to get the macro version of errno on some OSs (eg. Solaris).
+   We must do this, because these libs are only compiled once, but
+   must work in both single-threaded and multi-threaded programs. */
+#define _REENTRANT 1
+
+#ifndef __UHC__
+#include "HsFFI.h"
+#endif /* !__UHC__ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <math.h>
+
+#if HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#if HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#if HAVE_SYS_STAT_H
+#include <sys/stat.h>
+#endif
+#if HAVE_FCNTL_H
+# include <fcntl.h>
+#endif
+#if HAVE_TERMIOS_H
+#include <termios.h>
+#endif
+#if HAVE_SIGNAL_H
+#include <signal.h>
+/* Ultra-ugly: OpenBSD uses broken macros for sigemptyset and sigfillset (missing casts) */
+#if __OpenBSD__
+#undef sigemptyset
+#undef sigfillset
+#endif
+#endif
+#if HAVE_ERRNO_H
+#include <errno.h>
+#endif
+#if HAVE_STRING_H
+#include <string.h>
+#endif
+#if HAVE_DIRENT_H
+#include <dirent.h>
+#endif
+#if HAVE_UTIME_H
+#include <utime.h>
+#endif
+#if HAVE_SYS_UTSNAME_H
+#include <sys/utsname.h>
+#endif
+#if HAVE_GETTIMEOFDAY
+#  if HAVE_SYS_TIME_H
+#   include <sys/time.h>
+#  endif
+#elif HAVE_GETCLOCK
+# if HAVE_SYS_TIMERS_H
+#  define POSIX_4D9 1
+#  include <sys/timers.h>
+# endif
+#endif
+#if HAVE_TIME_H
+#include <time.h>
+#endif
+#if HAVE_SYS_TIMEB_H
+#include <sys/timeb.h>
+#endif
+#if HAVE_WINDOWS_H
+#include <windows.h>
+#endif
+#if HAVE_SYS_TIMES_H
+#include <sys/times.h>
+#endif
+#if HAVE_WINSOCK_H && defined(__MINGW32__)
+#include <winsock.h>
+#endif
+#if HAVE_LIMITS_H
+#include <limits.h>
+#endif
+#if HAVE_WCTYPE_H
+#include <wctype.h>
+#endif
+#if HAVE_INTTYPES_H
+# include <inttypes.h>
+#elif HAVE_STDINT_H
+# include <stdint.h>
+#endif
+
+#if !defined(__MINGW32__) && !defined(irix_HOST_OS)
+# if HAVE_SYS_RESOURCE_H
+#  include <sys/resource.h>
+# endif
+#endif
+
+#if !HAVE_GETRUSAGE && HAVE_SYS_SYSCALL_H
+# include <sys/syscall.h>
+# if defined(SYS_GETRUSAGE)	/* hpux_HOST_OS */
+#  define getrusage(a, b)  syscall(SYS_GETRUSAGE, a, b)
+#  define HAVE_GETRUSAGE 1
+# endif
+#endif
+
+/* For System */
+#if HAVE_SYS_WAIT_H
+#include <sys/wait.h>
+#endif
+#if HAVE_VFORK_H
+#include <vfork.h>
+#endif
+
+#ifndef __UHC__
+#include "dirUtils.h"
+#endif
+#ifndef __UHC__
+#include "WCsubst.h"
+#endif /* !__UHC__ */
+
+#if defined(__MINGW32__)
+/* in Win32Utils.c */
+extern void maperrno (void);
+extern HsWord64 getUSecOfDay(void);
+#endif
+
+#if defined(__MINGW32__)
+#include <io.h>
+#include <fcntl.h>
+#include <shlobj.h>
+#include <share.h>
+#endif
+
+#if HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#endif
+
+/* in inputReady.c */
+extern int fdReady(int fd, int write, int msecs, int isSock);
+
+#ifndef __UHC__
+/* in Signals.c */
+extern HsInt nocldstop;
+#endif /* !__UHC__ */
+
+#ifndef __UHC__
+/* -----------------------------------------------------------------------------
+   64-bit operations, defined in longlong.c
+   -------------------------------------------------------------------------- */
+
+#ifdef SUPPORT_LONG_LONGS
+
+HsBool hs_gtWord64 (HsWord64, HsWord64);
+HsBool hs_geWord64 (HsWord64, HsWord64);
+HsBool hs_eqWord64 (HsWord64, HsWord64);
+HsBool hs_neWord64 (HsWord64, HsWord64);
+HsBool hs_ltWord64 (HsWord64, HsWord64);
+HsBool hs_leWord64 (HsWord64, HsWord64);
+
+HsBool hs_gtInt64 (HsInt64, HsInt64);
+HsBool hs_geInt64 (HsInt64, HsInt64);
+HsBool hs_eqInt64 (HsInt64, HsInt64);
+HsBool hs_neInt64 (HsInt64, HsInt64);
+HsBool hs_ltInt64 (HsInt64, HsInt64);
+HsBool hs_leInt64 (HsInt64, HsInt64);
+
+HsWord64 hs_remWord64  (HsWord64, HsWord64);
+HsWord64 hs_quotWord64 (HsWord64, HsWord64);
+
+HsInt64 hs_remInt64    (HsInt64, HsInt64);
+HsInt64 hs_quotInt64   (HsInt64, HsInt64);
+HsInt64 hs_negateInt64 (HsInt64);
+HsInt64 hs_plusInt64   (HsInt64, HsInt64);
+HsInt64 hs_minusInt64  (HsInt64, HsInt64);
+HsInt64 hs_timesInt64  (HsInt64, HsInt64);
+
+HsWord64 hs_and64  (HsWord64, HsWord64);
+HsWord64 hs_or64   (HsWord64, HsWord64);
+HsWord64 hs_xor64  (HsWord64, HsWord64);
+HsWord64 hs_not64  (HsWord64);
+
+HsWord64 hs_uncheckedShiftL64   (HsWord64, HsInt);
+HsWord64 hs_uncheckedShiftRL64  (HsWord64, HsInt);
+HsInt64  hs_uncheckedIShiftL64  (HsInt64, HsInt);
+HsInt64  hs_uncheckedIShiftRA64 (HsInt64, HsInt);
+HsInt64  hs_uncheckedIShiftRL64 (HsInt64, HsInt);
+
+HsInt64  hs_intToInt64    (HsInt);
+HsInt    hs_int64ToInt    (HsInt64);
+HsWord64 hs_int64ToWord64 (HsInt64);
+HsWord64 hs_wordToWord64  (HsWord);
+HsWord   hs_word64ToWord  (HsWord64);
+HsInt64  hs_word64ToInt64 (HsWord64);
+
+HsWord64 hs_integerToWord64 (HsInt sa, StgByteArray /* Really: mp_limb_t* */ da);
+HsInt64  hs_integerToInt64 (HsInt sa, StgByteArray /* Really: mp_limb_t* */ da);
+
+#endif /* SUPPORT_LONG_LONGS */
+#endif /* !__UHC__ */
+
+/* -----------------------------------------------------------------------------
+   INLINE functions.
+
+   These functions are given as inlines here for when compiling via C,
+   but we also generate static versions into the cbits library for
+   when compiling to native code.
+   -------------------------------------------------------------------------- */
+
+#ifndef INLINE
+# if defined(_MSC_VER)
+#  define INLINE extern __inline
+# else
+#  define INLINE static inline
+# endif
+#endif
+
+INLINE int __hscore_get_errno(void) { return errno; }
+INLINE void __hscore_set_errno(int e) { errno = e; }
+
+#if !defined(_MSC_VER)
+INLINE int __hscore_s_isreg(mode_t m)  { return S_ISREG(m);  }
+INLINE int __hscore_s_isdir(mode_t m)  { return S_ISDIR(m);  }
+INLINE int __hscore_s_isfifo(mode_t m) { return S_ISFIFO(m); }
+INLINE int __hscore_s_isblk(mode_t m)  { return S_ISBLK(m);  }
+INLINE int __hscore_s_ischr(mode_t m)  { return S_ISCHR(m);  }
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
+INLINE int __hscore_s_issock(mode_t m) { return S_ISSOCK(m); }
+#endif
+#endif
+
+#if ( !defined(_MSC_VER) && !defined(__MINGW32__) && !defined(_WIN32) ) || defined(__CYGWIN__)
+INLINE int
+__hscore_sigemptyset( sigset_t *set )
+{ return sigemptyset(set); }
+
+INLINE int
+__hscore_sigfillset( sigset_t *set )
+{ return sigfillset(set); }
+
+INLINE int
+__hscore_sigaddset( sigset_t * set, int s )
+{ return sigaddset(set,s); }
+
+INLINE int
+__hscore_sigdelset( sigset_t * set, int s )
+{ return sigdelset(set,s); }
+
+INLINE int
+__hscore_sigismember( sigset_t * set, int s )
+{ return sigismember(set,s); }
+#endif
+
+INLINE void *
+__hscore_memcpy_dst_off( char *dst, int dst_off, char *src, size_t sz )
+{ return memcpy(dst+dst_off, src, sz); }
+
+INLINE void *
+__hscore_memcpy_src_off( char *dst, char *src, int src_off, size_t sz )
+{ return memcpy(dst, src+src_off, sz); }
+
+INLINE HsBool
+__hscore_supportsTextMode()
+{
+#if defined(_MSC_VER) || defined(__MINGW32__) || defined(_WIN32)
+  return HS_BOOL_FALSE;
+#else
+  return HS_BOOL_TRUE;
+#endif
+}
+
+INLINE HsInt
+__hscore_bufsiz()
+{
+  return BUFSIZ;
+}
+
+INLINE int
+__hscore_seek_cur()
+{
+  return SEEK_CUR;
+}
+
+INLINE int
+__hscore_o_binary()
+{
+#if defined(_MSC_VER)
+  return O_BINARY;
+#else
+  return CONST_O_BINARY;
+#endif
+}
+
+INLINE int
+__hscore_o_rdonly()
+{
+#ifdef O_RDONLY
+  return O_RDONLY;
+#else
+  return 0;
+#endif
+}
+
+INLINE int
+__hscore_o_wronly( void )
+{
+#ifdef O_WRONLY
+  return O_WRONLY;
+#else
+  return 0;
+#endif
+}
+
+INLINE int
+__hscore_o_rdwr( void )
+{
+#ifdef O_RDWR
+  return O_RDWR;
+#else
+  return 0;
+#endif
+}
+
+INLINE int
+__hscore_o_append( void )
+{
+#ifdef O_APPEND
+  return O_APPEND;
+#else
+  return 0;
+#endif
+}
+
+INLINE int
+__hscore_o_creat( void )
+{
+#ifdef O_CREAT
+  return O_CREAT;
+#else
+  return 0;
+#endif
+}
+
+INLINE int
+__hscore_o_excl( void )
+{
+#ifdef O_EXCL
+  return O_EXCL;
+#else
+  return 0;
+#endif
+}
+
+INLINE int
+__hscore_o_trunc( void )
+{
+#ifdef O_TRUNC
+  return O_TRUNC;
+#else
+  return 0;
+#endif
+}
+
+INLINE int
+__hscore_o_noctty( void )
+{
+#ifdef O_NOCTTY
+  return O_NOCTTY;
+#else
+  return 0;
+#endif
+}
+
+INLINE int
+__hscore_o_nonblock( void )
+{
+#ifdef O_NONBLOCK
+  return O_NONBLOCK;
+#else
+  return 0;
+#endif
+}
+
+INLINE int
+__hscore_seek_set( void )
+{
+  return SEEK_SET;
+}
+
+INLINE int
+__hscore_seek_end( void )
+{
+  return SEEK_END;
+}
+
+INLINE int
+__hscore_ftruncate( int fd, off_t where )
+{
+#if defined(HAVE_FTRUNCATE)
+  return ftruncate(fd,where);
+#elif defined(HAVE__CHSIZE)
+  return _chsize(fd,where);
+#else
+// ToDo: we should use _chsize_s() on Windows which allows a 64-bit
+// offset, but it doesn't seem to be available from mingw at this time 
+// --SDM (01/2008)
+#error at least ftruncate or _chsize functions are required to build
+#endif
+}
+
+#ifndef __UHC__
+INLINE int
+__hscore_setmode( int fd, HsBool toBin )
+{
+#if defined(_MSC_VER) || defined(__MINGW32__) || defined(_WIN32)
+  return setmode(fd,(toBin == HS_BOOL_TRUE) ? _O_BINARY : _O_TEXT);
+#else
+  return 0;
+#endif
+}
+#endif /* !__UHC__ */
+
+#if __GLASGOW_HASKELL__
+
+INLINE int
+__hscore_PrelHandle_write( int fd, void *ptr, HsInt off, int sz )
+{
+  return write(fd,(char *)ptr + off, sz);
+}
+
+INLINE int
+__hscore_PrelHandle_read( int fd, void *ptr, HsInt off, int sz )
+{
+  return read(fd,(char *)ptr + off, sz);
+
+}
+
+#if defined(_MSC_VER) || defined(__MINGW32__) || defined(_WIN32)
+INLINE int
+__hscore_PrelHandle_send( int fd, void *ptr, HsInt off, int sz )
+{
+    return send(fd,(char *)ptr + off, sz, 0);
+}
+
+INLINE int
+__hscore_PrelHandle_recv( int fd, void *ptr, HsInt off, int sz )
+{
+    return recv(fd,(char *)ptr + off, sz, 0);
+}
+#endif
+
+#endif /* __GLASGOW_HASKELL__ */
+
+INLINE int
+__hscore_mkdir( char *pathName, int mode )
+{
+#if ( defined(_MSC_VER) || defined(__MINGW32__) || defined(_WIN32) ) && !defined(__CYGWIN__)
+  return mkdir(pathName);
+#else
+  return mkdir(pathName,mode);
+#endif
+}
+
+INLINE int
+__hscore_lstat( const char *fname, struct stat *st )
+{
+#if HAVE_LSTAT
+  return lstat(fname, st);
+#else
+  return stat(fname, st);
+#endif
+}
+
+INLINE char *
+__hscore_d_name( struct dirent* d )
+{
+  return (d->d_name);
+}
+
+INLINE int
+__hscore_end_of_dir( void )
+{
+  return READDIR_ERRNO_EOF;
+}
+
+INLINE void
+__hscore_free_dirent(struct dirent *dEnt)
+{
+#if HAVE_READDIR_R
+  free(dEnt);
+#endif
+}
+
+#if defined(__MINGW32__)
+// We want the versions of stat/fstat/lseek that use 64-bit offsets,
+// and you have to ask for those explicitly.  Unfortunately there
+// doesn't seem to be a 64-bit version of truncate/ftruncate, so while
+// hFileSize and hSeek will work with large files, hSetFileSize will not.
+#define stat(file,buf)       _stati64(file,buf)
+#define fstat(fd,buf)        _fstati64(fd,buf)
+typedef struct _stati64 struct_stat;
+typedef off64_t stsize_t;
+#else
+typedef struct stat struct_stat;
+typedef off_t stsize_t;
+#endif
+
+INLINE HsInt
+__hscore_sizeof_stat( void )
+{
+  return sizeof(struct_stat);
+}
+
+INLINE time_t __hscore_st_mtime ( struct_stat* st ) { return st->st_mtime; }
+INLINE stsize_t __hscore_st_size  ( struct_stat* st ) { return st->st_size; }
+#if !defined(_MSC_VER)
+INLINE mode_t __hscore_st_mode  ( struct_stat* st ) { return st->st_mode; }
+INLINE dev_t  __hscore_st_dev  ( struct_stat* st ) { return st->st_dev; }
+INLINE ino_t  __hscore_st_ino  ( struct_stat* st ) { return st->st_ino; }
+#endif
+
+#if HAVE_TERMIOS_H
+INLINE tcflag_t __hscore_lflag( struct termios* ts ) { return ts->c_lflag; }
+
+INLINE void
+__hscore_poke_lflag( struct termios* ts, tcflag_t t ) { ts->c_lflag = t; }
+
+INLINE unsigned char*
+__hscore_ptr_c_cc( struct termios* ts )
+{ return (unsigned char*) &ts->c_cc; }
+
+INLINE HsInt
+__hscore_sizeof_termios( void )
+{
+#ifndef __MINGW32__
+  return sizeof(struct termios);
+#else
+  return 0;
+#endif
+}
+#endif
+
+//sizeof_sigset_t is also use on windows systems which define tcflat_t. Why exclude it?
+// #if !defined(_MSC_VER) && !defined(__MINGW32__) && !defined(_WIN32)
+INLINE HsInt
+__hscore_sizeof_sigset_t( void )
+{
+  return sizeof(sigset_t);
+}
+// #endif
+
+INLINE int
+__hscore_echo( void )
+{
+#ifdef ECHO
+  return ECHO;
+#else
+  return 0;
+#endif
+
+}
+
+INLINE int
+__hscore_tcsanow( void )
+{
+#ifdef TCSANOW
+  return TCSANOW;
+#else
+  return 0;
+#endif
+
+}
+
+INLINE int
+__hscore_icanon( void )
+{
+#ifdef ICANON
+  return ICANON;
+#else
+  return 0;
+#endif
+}
+
+INLINE int __hscore_vmin( void )
+{
+#ifdef VMIN
+  return VMIN;
+#else
+  return 0;
+#endif
+}
+
+INLINE int __hscore_vtime( void )
+{
+#ifdef VTIME
+  return VTIME;
+#else
+  return 0;
+#endif
+}
+
+INLINE int __hscore_sigttou( void )
+{
+#ifdef SIGTTOU
+  return SIGTTOU;
+#else
+  return 0;
+#endif
+}
+
+INLINE int __hscore_sig_block( void )
+{
+#ifdef SIG_BLOCK
+  return SIG_BLOCK;
+#else
+  return 0;
+#endif
+}
+
+INLINE int __hscore_sig_setmask( void )
+{
+#ifdef SIG_SETMASK
+  return SIG_SETMASK;
+#else
+  return 0;
+#endif
+}
+
+INLINE int
+__hscore_f_getfl( void )
+{
+#ifdef F_GETFL
+  return F_GETFL;
+#else
+  return 0;
+#endif
+}
+
+INLINE int
+__hscore_f_setfl( void )
+{
+#ifdef F_SETFL
+  return F_SETFL;
+#else
+  return 0;
+#endif
+}
+
+// defined in rts/RtsStartup.c.
+extern void* __hscore_get_saved_termios(int fd);
+extern void __hscore_set_saved_termios(int fd, void* ts);
+
+INLINE int __hscore_hs_fileno (FILE *f) { return fileno (f); }
+
+INLINE int __hscore_open(char *file, int how, mode_t mode) {
+#ifdef __MINGW32__
+	if ((how & O_WRONLY) || (how & O_RDWR) || (how & O_APPEND))
+	  return _sopen(file,how,_SH_DENYRW,mode);
+	else
+	  return _sopen(file,how,_SH_DENYWR,mode);
+#else
+	return open(file,how,mode);
+#endif
+}
+
+// These are wrapped because on some OSs (eg. Linux) they are
+// macros which redirect to the 64-bit-off_t versions when large file
+// support is enabled.
+//
+#if defined(__MINGW32__)
+INLINE off64_t __hscore_lseek(int fd, off64_t off, int whence) {
+	return (_lseeki64(fd,off,whence));
+}
+#else
+INLINE off_t __hscore_lseek(int fd, off_t off, int whence) {
+	return (lseek(fd,off,whence));
+}
+#endif
+
+INLINE HsInt __hscore_stat(char *file, struct_stat *buf) {
+	return (stat(file,buf));
+}
+
+INLINE HsInt __hscore_fstat(int fd, struct_stat *buf) {
+	return (fstat(fd,buf));
+}
+
+// select-related stuff
+
+#if !defined(__MINGW32__)
+INLINE int  hsFD_SETSIZE(void) { return FD_SETSIZE; }
+INLINE int  hsFD_ISSET(int fd, fd_set *fds) { return FD_ISSET(fd, fds); }
+INLINE void hsFD_SET(int fd, fd_set *fds) { FD_SET(fd, fds); }
+INLINE HsInt sizeof_fd_set(void) { return sizeof(fd_set); }
+extern void hsFD_ZERO(fd_set *fds);
+#endif
+
+// gettimeofday()-related
+
+#if !defined(__MINGW32__)
+
+INLINE HsInt sizeofTimeVal(void) { return sizeof(struct timeval); }
+
+INLINE HsWord64 getUSecOfDay(void)
+{
+    struct timeval tv;
+    gettimeofday(&tv, (struct timezone *) NULL);
+    // Don't forget to cast *before* doing the arithmetic, otherwise
+    // the arithmetic happens at the type of tv_sec, which is probably
+    // only 'int'.
+    return ((HsWord64)tv.tv_sec * 1000000 + (HsWord64)tv.tv_usec);
+}
+
+INLINE void setTimevalTicks(struct timeval *p, HsWord64 usecs)
+{
+    p->tv_sec  = usecs / 1000000;
+    p->tv_usec = usecs % 1000000;
+}
+#endif /* !defined(__MINGW32__) */
+
+/* ToDo: write a feature test that doesn't assume 'environ' to
+ *    be in scope at link-time. */
+extern char** environ;
+INLINE char **__hscore_environ() { return environ; }
+
+/* lossless conversions between pointers and integral types */
+INLINE void *    __hscore_from_uintptr(uintptr_t n) { return (void *)n; }
+INLINE void *    __hscore_from_intptr (intptr_t n)  { return (void *)n; }
+INLINE uintptr_t __hscore_to_uintptr  (void *p)     { return (uintptr_t)p; }
+INLINE intptr_t  __hscore_to_intptr   (void *p)     { return (intptr_t)p; }
+
+void errorBelch2(const char*s, char *t);
+void debugBelch2(const char*s, char *t);
+
+#endif /* __HSBASE_H__ */
+
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/HsBaseConfig.h b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/HsBaseConfig.h
new file mode 100644
--- /dev/null
+++ b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/HsBaseConfig.h
@@ -0,0 +1,944 @@
+/* ehclib/uhcbase/include/HsBaseConfig.h.  Generated from HsBaseConfig.h.in by configure.  */
+#ifndef HSBASECONFIG_H
+#define HSBASECONFIG_H
+
+#include "MachDeps.h"
+
+/********************************************************************/
+/**** Sizes                                                      ****/
+/********************************************************************/
+
+#if SIZEOF_INTPTR_T == 8
+#define HTYPE_INTPTR_T 			Int64
+#define HTYPE_UINTPTR_T 		Word64
+#else
+#define HTYPE_INTPTR_T 			Int32
+#define HTYPE_UINTPTR_T 		Word32
+#endif
+
+/* also here: typedef int sig_atomic_t
+ */
+#if SIZEOF_INT == 8
+#define HTYPE_INT 				Int64
+#define HTYPE_UNSIGNED_INT 		Word64
+#define HTYPE_SIG_ATOMIC_T 		Word64
+#else
+#define HTYPE_INT 				Int32
+#define HTYPE_UNSIGNED_INT 		Word32
+#define HTYPE_SIG_ATOMIC_T 		Word32
+#endif
+
+#if SIZEOF_LONG == 8
+#define HTYPE_LONG 				Int64
+#define HTYPE_UNSIGNED_LONG 	Word64
+#else
+#define HTYPE_LONG 				Int32
+#define HTYPE_UNSIGNED_LONG 	Word32
+#endif
+
+#if SIZEOF_VOID_P == 8
+#define HTYPE_PTRDIFF_T 		Int64
+#else
+#define HTYPE_PTRDIFF_T 		Int32
+#endif
+
+#if SIZEOF_CLOCK_T == 8
+#define HTYPE_CLOCK_T 			Word64
+#else
+#define HTYPE_CLOCK_T 			Word32
+#endif
+
+#if SIZEOF_TIME_T == 8
+#define HTYPE_TIME_T 			Word64
+#else
+#define HTYPE_TIME_T 			Word32
+#endif
+
+#if SIZEOF_USECONDS_T == 8
+#define HTYPE_USECONDS_T 		Word64
+#else
+#define HTYPE_USECONDS_T 		Word32
+#endif
+
+#if SIZEOF_SIZE_T == 8
+#define HTYPE_SIZE_T 			Word64
+#else
+#define HTYPE_SIZE_T 			Word32
+#endif
+
+#if SIZEOF_WCHAR_T == 1
+#define HTYPE_WCHAR_T 			Word8
+#elif SIZEOF_WCHAR_T == 2
+#define HTYPE_WCHAR_T 			Word16
+#else
+#define HTYPE_WCHAR_T 			Word32
+#endif
+
+
+
+/* Define to Haskell type for char */
+#define HTYPE_CHAR Int8
+
+/* Define to Haskell type for double */
+#define HTYPE_DOUBLE Double
+
+/* Define to Haskell type for float */
+#define HTYPE_FLOAT Float
+
+/* Define to Haskell type for intmax_t */
+#define HTYPE_INTMAX_T Int64
+
+/* Define to Haskell type for long long */
+#define HTYPE_LONG_LONG Int64
+
+/* Define to Haskell type for short */
+#define HTYPE_SHORT Int16
+
+/* Define to Haskell type for signed char */
+#define HTYPE_SIGNED_CHAR Int8
+
+/* Define to Haskell type for uintmax_t */
+#define HTYPE_UINTMAX_T Word64
+
+/* Define to Haskell type for unsigned char */
+#define HTYPE_UNSIGNED_CHAR Word8
+
+/* Define to Haskell type for unsigned long long */
+#define HTYPE_UNSIGNED_LONG_LONG Word64
+
+/* Define to Haskell type for unsigned short */
+#define HTYPE_UNSIGNED_SHORT Word16
+
+
+
+/********************************************************************/
+/**** System tupes                                               ****/
+/********************************************************************/
+
+#ifdef SIZEOF_DEV_T
+# if SIZEOF_DEV_T == 8
+#  define HTYPE_DEV_T 			Word64
+# elif SIZEOF_DEV_T == 4
+#  define HTYPE_DEV_T 			Word32
+# elif SIZEOF_DEV_T == 2
+#  define HTYPE_DEV_T 			Word16
+# else
+# endif
+#endif
+
+#ifdef SIZEOF_INO_T
+# if SIZEOF_INO_T == 8
+#  define HTYPE_INO_T 			Word64
+# elif SIZEOF_INO_T == 4
+#  define HTYPE_INO_T 			Word32
+# elif SIZEOF_INO_T == 2
+#  define HTYPE_INO_T 			Word16
+# else
+# endif
+#endif
+
+#ifdef SIZEOF_MODE_T
+# if SIZEOF_MODE_T == 8
+#  define HTYPE_MODE_T 			Word64
+# elif SIZEOF_MODE_T == 4
+#  define HTYPE_MODE_T 			Word32
+# elif SIZEOF_MODE_T == 2
+#  define HTYPE_MODE_T 			Word16
+# else
+# endif
+#endif
+
+#ifdef SIZEOF_OFF_T
+# if SIZEOF_OFF_T == 8
+#  define HTYPE_OFF_T 			Word64
+# elif SIZEOF_OFF_T == 4
+#  define HTYPE_OFF_T 			Word32
+# elif SIZEOF_OFF_T == 2
+#  define HTYPE_OFF_T 			Word16
+# else
+# endif
+#endif
+
+#ifdef SIZEOF_PID_T
+# if SIZEOF_PID_T == 8
+#  define HTYPE_PID_T 			Word64
+# elif SIZEOF_PID_T == 4
+#  define HTYPE_PID_T 			Word32
+# elif SIZEOF_PID_T == 2
+#  define HTYPE_PID_T 			Word16
+# else
+# endif
+#endif
+
+#ifdef SIZEOF_SSIZE_T
+# if SIZEOF_SSIZE_T == 8
+#  define HTYPE_SSIZE_T 			Word64
+# elif SIZEOF_SSIZE_T == 4
+#  define HTYPE_SSIZE_T 			Word32
+# elif SIZEOF_SSIZE_T == 2
+#  define HTYPE_SSIZE_T 			Word16
+# else
+# endif
+#endif
+
+#ifdef SIZEOF_GID_T
+# if SIZEOF_GID_T == 8
+#  define HTYPE_GID_T 			Word64
+# elif SIZEOF_GID_T == 4
+#  define HTYPE_GID_T 			Word32
+# elif SIZEOF_GID_T == 2
+#  define HTYPE_GID_T 			Word16
+# else
+# endif
+#endif
+
+#ifdef SIZEOF_NLINK_T
+# if SIZEOF_NLINK_T == 8
+#  define HTYPE_NLINK_T 			Word64
+# elif SIZEOF_NLINK_T == 4
+#  define HTYPE_NLINK_T 			Word32
+# elif SIZEOF_NLINK_T == 2
+#  define HTYPE_NLINK_T 			Word16
+# else
+# endif
+#endif
+
+#ifdef SIZEOF_UID_T
+# if SIZEOF_UID_T == 8
+#  define HTYPE_UID_T 			Word64
+# elif SIZEOF_UID_T == 4
+#  define HTYPE_UID_T 			Word32
+# elif SIZEOF_UID_T == 2
+#  define HTYPE_UID_T 			Word16
+# else
+# endif
+#endif
+
+#ifdef SIZEOF_CC_T
+# if SIZEOF_CC_T == 8
+#  define HTYPE_CC_T 			Word64
+# elif SIZEOF_CC_T == 4
+#  define HTYPE_CC_T 			Word32
+# elif SIZEOF_CC_T == 2
+#  define HTYPE_CC_T 			Word16
+# else
+# endif
+#endif
+
+#ifdef SIZEOF_SPEED_T
+# if SIZEOF_SPEED_T == 8
+#  define HTYPE_SPEED_T 			Word64
+# elif SIZEOF_SPEED_T == 4
+#  define HTYPE_SPEED_T 			Word32
+# elif SIZEOF_SPEED_T == 2
+#  define HTYPE_SPEED_T 			Word16
+# else
+# endif
+#endif
+
+#ifdef SIZEOF_TCFLAG_T
+# if SIZEOF_TCFLAG_T == 8
+#  define HTYPE_TCFLAG_T 			Word64
+# elif SIZEOF_TCFLAG_T == 4
+#  define HTYPE_TCFLAG_T 			Word32
+# elif SIZEOF_TCFLAG_T == 2
+#  define HTYPE_TCFLAG_T 			Word16
+# else
+# endif
+#endif
+
+#ifdef SIZEOF_RLIM_T
+# if SIZEOF_RLIM_T == 8
+#  define HTYPE_RLIM_T 			Word64
+# elif SIZEOF_RLIM_T == 4
+#  define HTYPE_RLIM_T 			Word32
+# elif SIZEOF_RLIM_T == 2
+#  define HTYPE_RLIM_T 			Word16
+# else
+# endif
+#endif
+
+/********************************************************************/
+/**** Presence of include files                                  ****/
+/********************************************************************/
+
+#define HAVE_DIRENT_H 1
+#define HAVE_ERRNO_H 1
+#define HAVE_FCNTL_H 1
+#define HAVE_INTTYPES_H 1
+#define HAVE_LIMITS_H 1
+#define HAVE_SIGNAL_H 1
+#define HAVE_STDINT_H 1
+#define HAVE_STRING_H 1
+#define HAVE_SYS_RESOURCE_H 1
+#define HAVE_SYS_SELECT_H 1
+#define HAVE_SYS_STAT_H 1
+#define HAVE_SYS_SYSCALL_H 1
+#define HAVE_SYS_TIME_H 1
+#define HAVE_SYS_TIMEB_H 1
+/* #undef HAVE_SYS_TIMERS_H */
+#define HAVE_SYS_TIMES_H 1
+#define HAVE_SYS_TYPES_H 1
+#define HAVE_SYS_UTSNAME_H 1
+#define HAVE_SYS_WAIT_H 1
+#define HAVE_TERMIOS_H 1
+#define HAVE_TIME_H 1
+#define HAVE_UNISTD_H 1
+#define HAVE_UTIME_H 1
+/* #undef HAVE_VFORK_H */
+#define HAVE_WCTYPE_H 1
+/* #undef HAVE_WINDOWS_H */
+/* #undef HAVE_WINSOCK_H */
+
+/* #undef HAVE__CHSIZE */
+#define HAVE_FTRUNCATE 1
+/* #undef HAVE_GETCLOCK */
+#define HAVE_GETRUSAGE 1
+#define HAVE_GETTIMEOFDAY 1
+#define HAVE_LSTAT 1
+#define HAVE_READDIR_R 1
+
+/********************************************************************/
+/**** Runtime types                                              ****/
+/********************************************************************/
+
+#ifdef __UHC_BUILDS_O__
+
+#if defined(__UHC_TARGET_BC__) || defined(__UHC_TARGET_C__)
+// # define HsBool				Word
+// # define HsInt				Word
+// # define HsWord64			Word64
+// # define HsWord32			Word32
+// # define HsWord16			Word16
+// # define HsWord8			Word8
+// # ifdef __UHC_TARGET_BC__
+// #  define HS_BOOL_FALSE		gb_False
+// #  define HS_BOOL_TRUE		gb_True
+// # else
+// #  define HS_BOOL_FALSE		0
+// #  define HS_BOOL_TRUE		1
+// # endif
+#endif /* __UHC_TARGET_BC__ */
+
+#endif /* __UHC_BUILDS_O__ */
+
+/********************************************************************/
+/**** Read dir EOF error                                         ****/
+/********************************************************************/
+
+/* See remarks in GHC, libraries/base/aclocal.m4: MinGW platform returns non 0 value. We ignore that */
+#define	READDIR_ERRNO_EOF	0
+
+/********************************************************************/
+/**** C errors                                                   ****/
+/********************************************************************/
+
+/* (1) Assume errno.h is already included */
+/* (2) Error codes like EADV are not present on all platforms, so a dummy value is provided, this should be done for all codes */
+
+/* The value of E2BIG. */
+#if !defined(E2BIG)
+#define E2BIG 10000
+#endif
+#define CONST_E2BIG E2BIG
+
+/* The value of EACCES. */
+#if !defined(EACCES)
+#define EACCES 10000
+#endif
+#define CONST_EACCES EACCES
+
+/* The value of EADDRINUSE. */
+#if !defined(EADDRINUSE)
+#define EADDRINUSE 10000
+#endif
+#define CONST_EADDRINUSE EADDRINUSE
+
+/* The value of EADDRNOTAVAIL. */
+#define CONST_EADDRNOTAVAIL EADDRNOTAVAIL
+
+/* The value of EADV. */
+#if !defined(EADV)
+#define EADV 10000
+#endif
+#define CONST_EADV EADV
+
+/* The value of EAFNOSUPPORT. */
+#if !defined(EAFNOSUPPORT)
+#define EAFNOSUPPORT 10000
+#endif
+#define CONST_EAFNOSUPPORT EAFNOSUPPORT
+
+/* The value of EAGAIN. */
+#if !defined(EAGAIN)
+#define EAGAIN 10000
+#endif
+#define CONST_EAGAIN EAGAIN
+
+/* The value of EALREADY. */
+#if !defined(EALREADY)
+#define EALREADY 10000
+#endif
+#define CONST_EALREADY EALREADY
+
+/* The value of EBADF. */
+#if !defined(EBADF)
+#define EBADF 10000
+#endif
+#define CONST_EBADF EBADF
+
+/* The value of EBADMSG. */
+#if !defined(EBADMSG)
+#define EBADMSG 10000
+#endif
+#define CONST_EBADMSG EBADMSG
+
+/* The value of EBADRPC. */
+#if !defined(EBADRPC)
+#define EBADRPC 10000
+#endif
+#define CONST_EBADRPC EBADRPC
+
+/* The value of EBUSY. */
+#if !defined(EBUSY)
+#define EBUSY 10000
+#endif
+#define CONST_EBUSY EBUSY
+
+/* The value of ECHILD. */
+#if !defined(ECHILD)
+#define ECHILD 10000
+#endif
+#define CONST_ECHILD ECHILD
+
+/* The value of ECOMM. */
+#if !defined(ECOMM)
+#define ECOMM 10000
+#endif
+#define CONST_ECOMM ECOMM
+
+/* The value of ECONNABORTED. */
+#if !defined(ECONNABORTED)
+#define ECONNABORTED 10000
+#endif
+#define CONST_ECONNABORTED ECONNABORTED
+
+/* The value of ECONNREFUSED. */
+#if !defined(ECONNREFUSED)
+#define ECONNREFUSED 10000
+#endif
+#define CONST_ECONNREFUSED ECONNREFUSED
+
+/* The value of ECONNRESET. */
+#if !defined(ECONNRESET)
+#define ECONNRESET 10000
+#endif
+#define CONST_ECONNRESET ECONNRESET
+
+/* The value of EDEADLK. */
+#if !defined(EDEADLK)
+#define EDEADLK 10000
+#endif
+#define CONST_EDEADLK EDEADLK
+
+/* The value of EDESTADDRREQ. */
+#if !defined(EDESTADDRREQ)
+#define EDESTADDRREQ 10000
+#endif
+#define CONST_EDESTADDRREQ EDESTADDRREQ
+
+/* The value of EDIRTY. */
+#if !defined(EDIRTY)
+#define EDIRTY 10000
+#endif
+#define CONST_EDIRTY EDIRTY
+
+/* The value of EDOM. */
+#if !defined(EDOM)
+#define EDOM 10000
+#endif
+#define CONST_EDOM EDOM
+
+/* The value of EDQUOT. */
+#if !defined(EDQUOT)
+#define EDQUOT 10000
+#endif
+#define CONST_EDQUOT EDQUOT
+
+/* The value of EEXIST. */
+#if !defined(EEXIST)
+#define EEXIST 10000
+#endif
+#define CONST_EEXIST EEXIST
+
+/* The value of EFAULT. */
+#if !defined(EFAULT)
+#define EFAULT 10000
+#endif
+#define CONST_EFAULT EFAULT
+
+/* The value of EFBIG. */
+#if !defined(EFBIG)
+#define EFBIG 10000
+#endif
+#define CONST_EFBIG EFBIG
+
+/* The value of EFTYPE. */
+#if !defined(EFTYPE)
+#define EFTYPE 10000
+#endif
+#define CONST_EFTYPE EFTYPE
+
+/* The value of EHOSTDOWN. */
+#if !defined(EHOSTDOWN)
+#define EHOSTDOWN 10000
+#endif
+#define CONST_EHOSTDOWN EHOSTDOWN
+
+/* The value of EHOSTUNREACH. */
+#if !defined(EHOSTUNREACH)
+#define EHOSTUNREACH 10000
+#endif
+#define CONST_EHOSTUNREACH EHOSTUNREACH
+
+/* The value of EIDRM. */
+#if !defined(EIDRM)
+#define EIDRM 10000
+#endif
+#define CONST_EIDRM EIDRM
+
+/* The value of EILSEQ. */
+#if !defined(EILSEQ)
+#define EILSEQ 10000
+#endif
+#define CONST_EILSEQ EILSEQ
+
+/* The value of EINPROGRESS. */
+#if !defined(EINPROGRESS)
+#define EINPROGRESS 10000
+#endif
+#define CONST_EINPROGRESS EINPROGRESS
+
+/* The value of EINTR. */
+#if !defined(EINTR)
+#define EINTR 10000
+#endif
+#define CONST_EINTR EINTR
+
+/* The value of EINVAL. */
+#if !defined(EINVAL)
+#define EINVAL 10000
+#endif
+#define CONST_EINVAL EINVAL
+
+/* The value of EIO. */
+#if !defined(EIO)
+#define EIO 10000
+#endif
+#define CONST_EIO EIO
+
+/* The value of EISCONN. */
+#if !defined(EISCONN)
+#define EISCONN 10000
+#endif
+#define CONST_EISCONN EISCONN
+
+/* The value of EISDIR. */
+#if !defined(EISDIR)
+#define EISDIR 10000
+#endif
+#define CONST_EISDIR EISDIR
+
+/* The value of ELOOP. */
+#if !defined(ELOOP)
+#define ELOOP 10000
+#endif
+#define CONST_ELOOP ELOOP
+
+/* The value of EMFILE. */
+#if !defined(EMFILE)
+#define EMFILE 10000
+#endif
+#define CONST_EMFILE EMFILE
+
+/* The value of EMLINK. */
+#if !defined(EMLINK)
+#define EMLINK 10000
+#endif
+#define CONST_EMLINK EMLINK
+
+/* The value of EMSGSIZE. */
+#if !defined(EMSGSIZE)
+#define EMSGSIZE 10000
+#endif
+#define CONST_EMSGSIZE EMSGSIZE
+
+/* The value of EMULTIHOP. */
+#if !defined(EMULTIHOP)
+#define EMULTIHOP 10000
+#endif
+#define CONST_EMULTIHOP EMULTIHOP
+
+/* The value of ENAMETOOLONG. */
+#if !defined(ENAMETOOLONG)
+#define ENAMETOOLONG 10000
+#endif
+#define CONST_ENAMETOOLONG ENAMETOOLONG
+
+/* The value of ENETDOWN. */
+#if !defined(ENETDOWN)
+#define ENETDOWN 10000
+#endif
+#define CONST_ENETDOWN ENETDOWN
+
+/* The value of ENETRESET. */
+#if !defined(ENETRESET)
+#define ENETRESET 10000
+#endif
+#define CONST_ENETRESET ENETRESET
+
+/* The value of ENETUNREACH. */
+#if !defined(ENETUNREACH)
+#define ENETUNREACH 10000
+#endif
+#define CONST_ENETUNREACH ENETUNREACH
+
+/* The value of ENFILE. */
+#if !defined(ENFILE)
+#define ENFILE 10000
+#endif
+#define CONST_ENFILE ENFILE
+
+/* The value of ENOBUFS. */
+#if !defined(ENOBUFS)
+#define ENOBUFS 10000
+#endif
+#define CONST_ENOBUFS ENOBUFS
+
+/* The value of ENOCIGAR. */
+#if !defined(ENOCIGAR)
+#define ENOCIGAR 10000
+#endif
+#define CONST_ENOCIGAR ENOCIGAR
+
+/* The value of ENODATA. */
+#if !defined(ENODATA)
+#define ENODATA 10000
+#endif
+#define CONST_ENODATA ENODATA
+
+/* The value of ENODEV. */
+#if !defined(ENODEV)
+#define ENODEV 10000
+#endif
+#define CONST_ENODEV ENODEV
+
+/* The value of ENOENT. */
+#if !defined(ENOENT)
+#define ENOENT 10000
+#endif
+#define CONST_ENOENT ENOENT
+
+/* The value of ENOEXEC. */
+#if !defined(ENOEXEC)
+#define ENOEXEC 10000
+#endif
+#define CONST_ENOEXEC ENOEXEC
+
+/* The value of ENOLCK. */
+#if !defined(ENOLCK)
+#define ENOLCK 10000
+#endif
+#define CONST_ENOLCK ENOLCK
+
+/* The value of ENOLINK. */
+#if !defined(ENOLINK)
+#define ENOLINK 10000
+#endif
+#define CONST_ENOLINK ENOLINK
+
+/* The value of ENOMEM. */
+#if !defined(ENOMEM)
+#define ENOMEM 10000
+#endif
+#define CONST_ENOMEM ENOMEM
+
+/* The value of ENOMSG. */
+#if !defined(ENOMSG)
+#define ENOMSG 10000
+#endif
+#define CONST_ENOMSG ENOMSG
+
+/* The value of ENONET. */
+#if !defined(ENONET)
+#define ENONET 10000
+#endif
+#define CONST_ENONET ENONET
+
+/* The value of ENOPROTOOPT. */
+#if !defined(ENOPROTOOPT)
+#define ENOPROTOOPT 10000
+#endif
+#define CONST_ENOPROTOOPT ENOPROTOOPT
+
+/* The value of ENOSPC. */
+#if !defined(ENOSPC)
+#define ENOSPC 10000
+#endif
+#define CONST_ENOSPC ENOSPC
+
+/* The value of ENOSR. */
+#if !defined(ENOSR)
+#define ENOSR 10000
+#endif
+#define CONST_ENOSR ENOSR
+
+/* The value of ENOSTR. */
+#if !defined(ENOSTR)
+#define ENOSTR 10000
+#endif
+#define CONST_ENOSTR ENOSTR
+
+/* The value of ENOSYS. */
+#if !defined(ENOSYS)
+#define ENOSYS 10000
+#endif
+#define CONST_ENOSYS ENOSYS
+
+/* The value of ENOTBLK. */
+#if !defined(ENOTBLK)
+#define ENOTBLK 10000
+#endif
+#define CONST_ENOTBLK ENOTBLK
+
+/* The value of ENOTCONN. */
+#if !defined(ENOTCONN)
+#define ENOTCONN 10000
+#endif
+#define CONST_ENOTCONN ENOTCONN
+
+/* The value of ENOTDIR. */
+#if !defined(ENOTDIR)
+#define ENOTDIR 10000
+#endif
+#define CONST_ENOTDIR ENOTDIR
+
+/* The value of ENOTEMPTY. */
+#if !defined(ENOTEMPTY)
+#define ENOTEMPTY 10000
+#endif
+#define CONST_ENOTEMPTY ENOTEMPTY
+
+/* The value of ENOTSOCK. */
+#if !defined(ENOTSOCK)
+#define ENOTSOCK 10000
+#endif
+#define CONST_ENOTSOCK ENOTSOCK
+
+/* The value of ENOTTY. */
+#if !defined(ENOTTY)
+#define ENOTTY 10000
+#endif
+#define CONST_ENOTTY ENOTTY
+
+/* The value of ENXIO. */
+#if !defined(ENXIO)
+#define ENXIO 10000
+#endif
+#define CONST_ENXIO ENXIO
+
+/* The value of EOPNOTSUPP. */
+#if !defined(EOPNOTSUPP)
+#define EOPNOTSUPP 10000
+#endif
+#define CONST_EOPNOTSUPP EOPNOTSUPP
+
+/* The value of EPERM. */
+#if !defined(EPERM)
+#define EPERM 10000
+#endif
+#define CONST_EPERM EPERM
+
+/* The value of EPFNOSUPPORT. */
+#if !defined(EPFNOSUPPORT)
+#define EPFNOSUPPORT 10000
+#endif
+#define CONST_EPFNOSUPPORT EPFNOSUPPORT
+
+/* The value of EPIPE. */
+#if !defined(EPIPE)
+#define EPIPE 10000
+#endif
+#define CONST_EPIPE EPIPE
+
+/* The value of EPROCLIM. */
+#if !defined(EPROCLIM)
+#define EPROCLIM 10000
+#endif
+#define CONST_EPROCLIM EPROCLIM
+
+/* The value of EPROCUNAVAIL. */
+#if !defined(EPROCUNAVAIL)
+#define EPROCUNAVAIL 10000
+#endif
+#define CONST_EPROCUNAVAIL EPROCUNAVAIL
+
+/* The value of EPROGMISMATCH. */
+#if !defined(EPROGMISMATCH)
+#define EPROGMISMATCH 10000
+#endif
+#define CONST_EPROGMISMATCH EPROGMISMATCH
+
+/* The value of EPROGUNAVAIL. */
+#if !defined(EPROGUNAVAIL)
+#define EPROGUNAVAIL 10000
+#endif
+#define CONST_EPROGUNAVAIL EPROGUNAVAIL
+
+/* The value of EPROTO. */
+#if !defined(EPROTO)
+#define EPROTO 10000
+#endif
+#define CONST_EPROTO EPROTO
+
+/* The value of EPROTONOSUPPORT. */
+#if !defined(EPROTONOSUPPORT)
+#define EPROTONOSUPPORT 10000
+#endif
+#define CONST_EPROTONOSUPPORT EPROTONOSUPPORT
+
+/* The value of EPROTOTYPE. */
+#if !defined(EPROTOTYPE)
+#define EPROTOTYPE 10000
+#endif
+#define CONST_EPROTOTYPE EPROTOTYPE
+
+/* The value of ERANGE. */
+#if !defined(ERANGE)
+#define ERANGE 10000
+#endif
+#define CONST_ERANGE ERANGE
+
+/* The value of EREMCHG. */
+#if !defined(EREMCHG)
+#define EREMCHG 10000
+#endif
+#define CONST_EREMCHG EREMCHG
+
+/* The value of EREMOTE. */
+#if !defined(EREMOTE)
+#define EREMOTE 10000
+#endif
+#define CONST_EREMOTE EREMOTE
+
+/* The value of EROFS. */
+#if !defined(EROFS)
+#define EROFS 10000
+#endif
+#define CONST_EROFS EROFS
+
+/* The value of ERPCMISMATCH. */
+#if !defined(ERPCMISMATCH)
+#define ERPCMISMATCH 10000
+#endif
+#define CONST_ERPCMISMATCH ERPCMISMATCH
+
+/* The value of ERREMOTE. */
+#if !defined(ERREMOTE)
+#define ERREMOTE 10000
+#endif
+#define CONST_ERREMOTE ERREMOTE
+
+/* The value of ESHUTDOWN. */
+#if !defined(ESHUTDOWN)
+#define ESHUTDOWN 10000
+#endif
+#define CONST_ESHUTDOWN ESHUTDOWN
+
+/* The value of ESOCKTNOSUPPORT. */
+#if !defined(ESOCKTNOSUPPORT)
+#define ESOCKTNOSUPPORT 10000
+#endif
+#define CONST_ESOCKTNOSUPPORT ESOCKTNOSUPPORT
+
+/* The value of ESPIPE. */
+#if !defined(ESPIPE)
+#define ESPIPE 10000
+#endif
+#define CONST_ESPIPE ESPIPE
+
+/* The value of ESRCH. */
+#if !defined(ESRCH)
+#define ESRCH 10000
+#endif
+#define CONST_ESRCH ESRCH
+
+/* The value of ESRMNT. */
+#if !defined(ESRMNT)
+#define ESRMNT 10000
+#endif
+#define CONST_ESRMNT ESRMNT
+
+/* The value of ESTALE. */
+#if !defined(ESTALE)
+#define ESTALE 10000
+#endif
+#define CONST_ESTALE ESTALE
+
+/* The value of ETIME. */
+#if !defined(ETIME)
+#define ETIME 10000
+#endif
+#define CONST_ETIME ETIME
+
+/* The value of ETIMEDOUT. */
+#if !defined(ETIMEDOUT)
+#define ETIMEDOUT 10000
+#endif
+#define CONST_ETIMEDOUT ETIMEDOUT
+
+/* The value of ETOOMANYREFS. */
+#if !defined(ETOOMANYREFS)
+#define ETOOMANYREFS 10000
+#endif
+#define CONST_ETOOMANYREFS ETOOMANYREFS
+
+/* The value of ETXTBSY. */
+#if !defined(ETXTBSY)
+#define ETXTBSY 10000
+#endif
+#define CONST_ETXTBSY ETXTBSY
+
+/* The value of EUSERS. */
+#if !defined(EUSERS)
+#define EUSERS 10000
+#endif
+#define CONST_EUSERS EUSERS
+
+/* The value of EWOULDBLOCK. */
+#if !defined(EWOULDBLOCK)
+#define EWOULDBLOCK 10000
+#endif
+#define CONST_EWOULDBLOCK EWOULDBLOCK
+
+/* The value of EXDEV. */
+#if !defined(EXDEV)
+#define EXDEV 10000
+#endif
+#define CONST_EXDEV EXDEV
+
+/* The value of O_BINARY. */
+#if !defined(O_BINARY)
+#define O_BINARY 10000
+#endif
+#define CONST_O_BINARY O_BINARY
+
+/* The value of SIGINT. */
+#if !defined(SIGINT)
+#define SIGINT 10000
+#endif
+#define CONST_SIGINT SIGINT
+
+
+#endif
+
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/IntLikeInstance.h b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/IntLikeInstance.h
new file mode 100644
--- /dev/null
+++ b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/IntLikeInstance.h
@@ -0,0 +1,242 @@
+{- --------------------------------------------------------------------------
+// Macros to help make various instances for Int like types (Int8, ...).
+//
+// Primitives are defined by 2 forms of macros:
+//  - starting with PRIMS_  : name of Haskell function and primitive is the same
+//  - starting with PRIMS2_ : name of primitive is given explicitly, to allow sharing between primitives
+// --------------------------------------------------------------------------
+-}
+
+-- define conversion primitives
+#define PRIMS_CONVERSION_INTEGER(tycon,primIntegerTo,primToInteger) \
+foreign import prim primIntegerTo :: Integer -> tycon ; \
+foreign import prim primToInteger :: tycon -> Integer 
+
+#define PRIMS2_CONVERSION_INTEGER(tycon,primIntegerTo,primIntegerToNm,primToInteger,primToIntegerNm) \
+foreign import prim primIntegerToNm primIntegerTo :: Integer -> tycon ; \
+foreign import prim primToIntegerNm primToInteger :: tycon -> Integer 
+
+#define PRIMS_CONVERSION_INT(tycon,primIntTo,primToInt) \
+foreign import prim primIntTo     :: Int -> tycon ; \
+foreign import prim primToInt     :: tycon -> Int 
+
+
+-- define Eq primitives
+#define PRIMS_EQ(tycon,primEq,primNe) \
+foreign import prim primEq      :: tycon -> tycon -> Bool ; \
+foreign import prim primNe      :: tycon -> tycon -> Bool 
+
+#define PRIMS2_EQ(tycon,primEq,primEqNm,primNe,primNeNm) \
+foreign import prim primEqNm primEq     :: tycon -> tycon -> Bool ; \
+foreign import prim primNeNm primNe     :: tycon -> tycon -> Bool
+
+
+-- define Eq instance
+#define INSTANCE_EQ(tycon,primEq,primNe) \
+instance Eq tycon where \
+  { (==) = primEq ; \
+  	(/=) = primNe \
+  }
+
+
+-- define Ord primitives
+
+#define PRIMS_ORD(tycon,primCmp,primLt,primGt,primLe,primGe) \
+foreign import prim primCmp     :: tycon -> tycon -> Ordering ; \
+foreign import prim primLt      :: tycon -> tycon -> Bool ; \
+foreign import prim primGt      :: tycon -> tycon -> Bool ; \
+foreign import prim primLe      :: tycon -> tycon -> Bool ; \
+foreign import prim primGe      :: tycon -> tycon -> Bool 
+
+#define PRIMS2_ORD(tycon,primCmp,primCmpNm,primLt,primLtNm,primGt,primGtNm,primLe,primLeNm,primGe,primGeNm) \
+foreign import prim primCmpNm primCmp     :: tycon -> tycon -> Ordering ; \
+foreign import prim primLtNm primLt      :: tycon -> tycon -> Bool ; \
+foreign import prim primGtNm primGt      :: tycon -> tycon -> Bool ; \
+foreign import prim primLeNm primLe      :: tycon -> tycon -> Bool ; \
+foreign import prim primGeNm primGe      :: tycon -> tycon -> Bool 
+
+
+-- define Ord instance
+
+#define INSTANCE_ORD(tycon,primCmp,primLt,primGt,primLe,primGe) \
+instance Ord tycon where \
+  { compare = primCmp \
+  ; (<) = primLt \
+  ; (>) = primGt \
+  ; (<=) = primLe \
+  ; (>=) = primGe \
+  }
+
+
+-- define Bounded primitives
+#define PRIMS_BOUNDED(tycon,primMin,primMax) \
+foreign import prim primMin     :: tycon ; \
+foreign import prim primMax     :: tycon 
+
+
+-- define Bounded instance
+#define INSTANCE_BOUNDED(tycon,primMin,primMax) \
+instance Bounded tycon where \
+  { minBound = primMin \
+  ; maxBound = primMax \
+  }
+
+
+-- define Num primitives
+#define PRIMS_NUM(tycon,primAdd,primSub,primMul,primNeg) \
+foreign import prim primAdd       :: tycon -> tycon -> tycon ; \
+foreign import prim primSub       :: tycon -> tycon -> tycon ; \
+foreign import prim primMul       :: tycon -> tycon -> tycon ; \
+foreign import prim primNeg       :: tycon -> tycon 
+
+#define PRIMS2_NUM(tycon,primAdd,primAddNm,primSub,primSubNm,primMul,primMulNm,primNeg,primNegNm) \
+foreign import prim primAddNm 			primAdd       :: tycon -> tycon -> tycon ; \
+foreign import prim primSubNm 			primSub       :: tycon -> tycon -> tycon ; \
+foreign import prim primMulNm 			primMul       :: tycon -> tycon -> tycon ; \
+foreign import prim primNegNm 			primNeg       :: tycon -> tycon 
+
+
+-- define Num instance
+#define INSTANCE_NUM(tycon,primAdd,primSub,primMul,primNeg,primIntegerTo,primIntTo) \
+instance Num tycon where \
+  { (+)         = primAdd \
+  ; (-)         = primSub \
+  ; (*)         = primMul \
+  ; negate      = primNeg \
+  ; fromInteger = primIntegerTo \
+  ; fromInt     = primIntTo \
+  ; abs         = absReal \
+  ; signum      = signumReal \
+  }
+
+
+-- define Enum instance
+#define INSTANCE_ENUM(tycon,primToEnum,primFromEnum) \
+instance Enum tycon where \
+  { succ           = boundedSucc \
+  ; pred           = boundedPred \
+  ; toEnum         = primToEnum \
+  ; fromEnum       = primFromEnum \
+  ; enumFrom       = boundedEnumFrom \
+  ; enumFromTo     = boundedEnumFromTo \
+  ; enumFromThen   = boundedEnumFromThen \
+  ; enumFromThenTo = boundedEnumFromThenTo \
+  }
+
+
+-- define Real instance
+#define INSTANCE_REAL(tycon) \
+instance Real tycon where \
+  { toRational x = toInteger x % 1 \
+  }
+
+
+-- define Integral primitives
+#define PRIMS_INTEGRAL1(tycon,primDiv,primMod,primQuot,primRem) \
+foreign import prim primDiv       :: tycon -> tycon -> tycon ; \
+foreign import prim primMod       :: tycon -> tycon -> tycon ; \
+foreign import prim primQuot      :: tycon -> tycon -> tycon ; \
+foreign import prim primRem       :: tycon -> tycon -> tycon 
+
+#define PRIMS2_INTEGRAL1(tycon,primDiv,primDivNm,primMod,primModNm,primQuot,primQuotNm,primRem,primRemNm) \
+foreign import prim primDivNm 			primDiv       :: tycon -> tycon -> tycon ; \
+foreign import prim primModNm 			primMod       :: tycon -> tycon -> tycon ; \
+foreign import prim primQuotNm 			primQuot      :: tycon -> tycon -> tycon ; \
+foreign import prim primRemNm 			primRem       :: tycon -> tycon -> tycon 
+
+#define PRIMS_INTEGRAL2(tycon,primDiv,primMod,primDivMod,primQuot,primRem,primQuotRem) \
+PRIMS_INTEGRAL1(tycon,primDiv,primMod,primQuot,primRem) ; \
+foreign import prim primDivMod    :: tycon -> tycon -> (tycon,tycon) ; \
+foreign import prim primQuotRem   :: tycon -> tycon -> (tycon,tycon) 
+
+#define PRIMS2_INTEGRAL2(tycon,primDiv,primDivNm,primMod,primModNm,primDivMod,primDivModNm,primQuot,primQuotNm,primRem,primRemNm,primQuotRem,primQuotRemNm) \
+PRIMS2_INTEGRAL1(tycon,primDiv,primDivNm,primMod,primModNm,primQuot,primQuotNm,primRem,primQuotRemNm) ; \
+foreign import prim primDivModNm 	primDivMod    :: tycon -> tycon -> (tycon,tycon) ; \
+foreign import prim primQuotRemNm 	primQuotRem   :: tycon -> tycon -> (tycon,tycon) 
+
+
+-- define Integral instance, assume default for divMod
+#define INSTANCE_INTEGRAL1(tycon,primDiv,primMod,primQuot,primRem,primToInteger,primToInt) \
+instance Integral tycon where \
+  { quotRem d m \
+              = (primQuot d m, primRem d m) \
+  ; div       = primDiv \
+  ; quot      = primQuot \
+  ; rem       = primRem \
+  ; mod       = primMod \
+  ; toInteger = primToInteger \
+  ; toInt     = primToInt \
+  }
+
+#define INSTANCE_INTEGRAL2(tycon,primDiv,primMod,primDivMod,primQuot,primRem,primQuotRem,primToInteger,primToInt) \
+instance Integral tycon where \
+  { divMod    = primDivMod \
+  ; quotRem   = primQuotRem \
+  ; div       = primDiv \
+  ; quot      = primQuot \
+  ; rem       = primRem \
+  ; mod       = primMod \
+  ; toInteger = primToInteger \
+  ; toInt     = primToInt \
+  }
+
+
+-- define Show instance
+#define INSTANCE_SHOW(tycon) \
+instance Show tycon where \
+  { show = show . toInteger \
+  }
+
+
+-- define Read instance
+#define INSTANCE_READ(tycon) \
+instance Read tycon where \
+  { readsPrec p = readSigned readDec \
+  }
+
+
+-- define Bits primitives
+#define PRIMS_BITLOGIC(tycon,primAnd,primOr,primXor) \
+foreign import prim primAnd       	:: tycon -> tycon -> tycon ; \
+foreign import prim primOr       	:: tycon -> tycon -> tycon ; \
+foreign import prim primXor      	:: tycon -> tycon -> tycon
+
+#define PRIMS_BITSHIFT(tycon,primComplement,primShiftLeft,primShiftRight,primRotateLeft,primRotateRight) \
+foreign import prim primComplement	:: tycon -> tycon ; \
+foreign import prim primShiftLeft  	:: tycon -> Int -> tycon ; \
+foreign import prim primShiftRight 	:: tycon -> Int -> tycon ; \
+foreign import prim primRotateLeft  :: tycon -> Int -> tycon ; \
+foreign import prim primRotateRight :: tycon -> Int -> tycon
+
+#define PRIMS2_BITLOGIC(tycon,primAnd,primAndNm,primOr,primOrNm,primXor,primXorNm) \
+foreign import prim primAndNm       	primAnd       	:: tycon -> tycon -> tycon ; \
+foreign import prim primOrNm       		primOr       	:: tycon -> tycon -> tycon ; \
+foreign import prim primXorNm      		primXor      	:: tycon -> tycon -> tycon
+
+#define PRIMS2_BITSHIFT(tycon,primComplement,primComplementNm,primShiftLeft,primShiftLeftNm,primShiftRight,primShiftRightNm,primRotateLeft,primRotateLeftNm,primRotateRight,primRotateRightNm) \
+foreign import prim primComplementNm	primComplement	:: tycon -> tycon ; \
+foreign import prim primShiftLeftNm  	primShiftLeft  	:: tycon -> Int -> tycon ; \
+foreign import prim primShiftRightNm 	primShiftRight 	:: tycon -> Int -> tycon ; \
+foreign import prim primRotateLeftNm  	primRotateLeft  :: tycon -> Int -> tycon ; \
+foreign import prim primRotateRightNm 	primRotateRight :: tycon -> Int -> tycon
+
+-- define Bits instance
+#define INSTANCE_BITS1(tycon,size,signed,primAnd,primOr,primXor,primComplement,primShiftLeft,primShiftRight,primRotateLeft,primRotateRight) \
+instance Bits tycon where \
+  { (.&.)   	= primAnd \
+  ; (.|.)   	= primOr \
+  ; xor	   		= primXor \
+  ; complement  = primComplement \
+  ; shiftL      = primShiftLeft \
+  ; shiftR      = primShiftRight \
+  ; rotateL     = primRotateLeft \
+  ; rotateR     = primRotateRight \
+  ; bitSize _   = size \
+  ; isSigned _  = signed \
+  }
+
+
+
+
+
+
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/MachDeps.h b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/MachDeps.h
new file mode 100644
--- /dev/null
+++ b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/MachDeps.h
@@ -0,0 +1,125 @@
+/* ehclib/uhcbase/include/MachDeps.h.  Generated from MachDeps.h.in by configure.  */
+#ifndef MACHDEPS_H
+#define MACHDEPS_H
+
+#define SIZEOF_INTPTR_T 8
+#define SIZEOF_CHAR 1
+#define SIZEOF_SHORT 2
+#define SIZEOF_INT 4
+#define SIZEOF_LONG 8
+#define SIZEOF_LONG_LONG 8
+#define SIZEOF_FLOAT 4
+#define SIZEOF_DOUBLE 8
+#define SIZEOF_UNSIGNED_CHAR 1
+#define SIZEOF_UNSIGNED_SHORT 2
+#define SIZEOF_UNSIGNED_INT 4
+#define SIZEOF_UNSIGNED_LONG 8
+#define SIZEOF_UNSIGNED_LONG_LONG 8
+#define SIZEOF_VOID_P 8
+
+#define SIZEOF_DEV_T 4
+#define SIZEOF_INO_T 8
+#define SIZEOF_OFF_T 8
+#define SIZEOF_MODE_T 2
+#define SIZEOF_PID_T 4
+#define SIZEOF_SSIZE_T 8
+#define SIZEOF_GID_T 4
+#define SIZEOF_NLINK_T 2
+#define SIZEOF_UID_T 4
+#define SIZEOF_RLIM_T 8
+#define SIZEOF_CLOCK_T 8
+#define SIZEOF_TIME_T 8
+#define SIZEOF_SIZE_T 8
+#define SIZEOF_WCHAR_T 4
+
+#define SIZEOF_CC_T 1
+#define SIZEOF_SPEED_T 8
+#define SIZEOF_TCFLAG_T 8
+
+#define ALIGNOF_INTPTR_T 8
+#define ALIGNOF_CHAR 1
+#define ALIGNOF_SHORT 2
+#define ALIGNOF_INT 4
+#define ALIGNOF_LONG 8
+#define ALIGNOF_LONG_LONG 8
+#define ALIGNOF_FLOAT 4
+#define ALIGNOF_DOUBLE 8
+#define ALIGNOF_UNSIGNED_CHAR 1
+#define ALIGNOF_UNSIGNED_SHORT 2
+#define ALIGNOF_UNSIGNED_INT 4
+#define ALIGNOF_UNSIGNED_LONG 8
+#define ALIGNOF_UNSIGNED_LONG_LONG 8
+#define ALIGNOF_VOID_P 8
+
+#define ALIGNOF_UINT8_T 1
+#define ALIGNOF_UINT16_T 2
+#define ALIGNOF_UINT32_T 4
+#define ALIGNOF_UINT64_T 8
+
+#if SIZEOF_INTPTR_T == 8
+#define USE_64_BITS 1
+#define USE_32_BITS 0
+#else
+#define USE_64_BITS 0
+#define USE_32_BITS 1
+#endif
+
+#ifdef __UHC_TARGET_BC__
+#define BITSIZEOF_WORDTAG		1
+#else
+#define BITSIZEOF_WORDTAG		0
+#endif
+
+#define SIZEOF_HSCHAR           SIZEOF_INTPTR_T
+#define ALIGNMENT_HSCHAR        ALIGNOF_UINT32_T
+
+#define SIZEOF_HSINT            SIZEOF_INTPTR_T
+#define ALIGNMENT_HSINT         ALIGNOF_INTPTR_T
+
+#define SIZEOF_HSWORD			SIZEOF_INTPTR_T
+#define ALIGNMENT_HSWORD		ALIGNOF_INTPTR_T
+
+#define SIZEOF_HSDOUBLE			SIZEOF_DOUBLE
+#define ALIGNMENT_HSDOUBLE		ALIGNOF_DOUBLE
+
+#define SIZEOF_HSFLOAT			SIZEOF_FLOAT
+#define ALIGNMENT_HSFLOAT		ALIGNOF_FLOAT
+
+#define SIZEOF_HSPTR            SIZEOF_VOID_P
+#define ALIGNMENT_HSPTR         ALIGNOF_VOID_P
+
+#define SIZEOF_HSFUNPTR         SIZEOF_VOID_P
+#define ALIGNMENT_HSFUNPTR      ALIGNOF_VOID_P
+
+#define SIZEOF_HSFOREIGNPTR     SIZEOF_VOID_P
+#define ALIGNMENT_HSFOREIGNPTR  ALIGNOF_VOID_P
+
+#define SIZEOF_HSSTABLEPTR      SIZEOF_VOID_P
+#define ALIGNMENT_HSSTABLEPTR   ALIGNOF_VOID_P
+
+#define SIZEOF_INT8             8
+#define ALIGNMENT_INT8          ALIGNOF_UINT8_T
+
+#define SIZEOF_WORD8            8
+#define ALIGNMENT_WORD8         ALIGNOF_UINT8_T
+
+#define SIZEOF_INT16            16
+#define ALIGNMENT_INT16         ALIGNOF_UINT16_T
+
+#define SIZEOF_WORD16           16
+#define ALIGNMENT_WORD16        ALIGNOF_UINT16_T
+
+#define SIZEOF_INT32            32
+#define ALIGNMENT_INT32         ALIGNOF_UINT32_T
+
+#define SIZEOF_WORD32           32
+#define ALIGNMENT_WORD32        ALIGNOF_UINT32_T
+
+#define SIZEOF_INT64            64
+#define ALIGNMENT_INT64         ALIGNOF_UINT64_T
+
+#define SIZEOF_WORD64           64
+#define ALIGNMENT_WORD64        ALIGNOF_UINT64_T
+
+
+#endif
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/TupleInstance.h b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/TupleInstance.h
new file mode 100644
--- /dev/null
+++ b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/TupleInstance.h
@@ -0,0 +1,147 @@
+{- --------------------------------------------------------------------------
+// Macros to help make various instances for tuples.
+// A kind of poor mans deriving.
+//
+// --------------------------------------------------------------------------
+-}
+
+#define	COMMA	,
+
+{- --------------------------------------------------------------------------
+// 2 tuple, 1 unary op
+// --------------------------------------------------------------------------
+-}
+#define TUPLE2_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) \
+instance (clscon a, clscon b) => clscon (a,b) where \
+  { op1 op1preArg (a,b) op1postArg \
+      = pre \
+            op1subop a \
+        sep op1subop b \
+        post \
+  }
+
+{- --------------------------------------------------------------------------
+// 3 tuple, 1 unary op
+// --------------------------------------------------------------------------
+-}
+#define TUPLE3_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) \
+instance (clscon a, clscon b, clscon c) => clscon (a,b,c) where \
+  { op1 op1preArg (a,b,c) op1postArg \
+      = pre \
+            op1subop a \
+        sep op1subop b \
+        sep op1subop c \
+        post \
+  }
+
+{- --------------------------------------------------------------------------
+// 4 tuple, 1 unary op
+// --------------------------------------------------------------------------
+-}
+#define TUPLE4_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) \
+instance (clscon a, clscon b, clscon c, clscon d) => clscon (a,b,c,d) where \
+  { op1 op1preArg (a,b,c,d) op1postArg \
+      = pre \
+            op1subop a \
+        sep op1subop b \
+        sep op1subop c \
+        sep op1subop d \
+        post \
+  }
+
+{- --------------------------------------------------------------------------
+// 5 tuple, 1 unary op
+// --------------------------------------------------------------------------
+-}
+#define TUPLE5_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) \
+instance (clscon a, clscon b, clscon c, clscon d, clscon e) => clscon (a,b,c,d,e) where \
+  { op1 op1preArg (a,b,c,d,e) op1postArg \
+      = pre \
+            op1subop a \
+        sep op1subop b \
+        sep op1subop c \
+        sep op1subop d \
+        sep op1subop e \
+        post \
+  }
+
+{- --------------------------------------------------------------------------
+// Set of 2..n tuple, 1 unary op
+// --------------------------------------------------------------------------
+-}
+#define TUPLE_UNOP1_INSTANCES(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) \
+{ TUPLE2_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) ;\
+  TUPLE3_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) ;\
+  TUPLE4_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) ;\
+  TUPLE5_UNOP1_INSTANCE(clscon,op1,op1preArg,op1postArg,op1subop,pre,sep,post) \
+}
+
+{- --------------------------------------------------------------------------
+// 2 tuple, 1 binary op
+// --------------------------------------------------------------------------
+-}
+#define TUPLE2_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) \
+instance (clscon a, clscon b) => clscon (a,b) where \
+  { (a1,b1) op1 (a2,b2) \
+      = pre \
+            a1 op1subop a2 \
+        sep b1 op1subop b2 \
+        post \
+  }
+
+{- --------------------------------------------------------------------------
+// 3 tuple, 1 binary op
+// --------------------------------------------------------------------------
+-}
+#define TUPLE3_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) \
+instance (clscon a, clscon b, clscon c) => clscon (a,b,c) where \
+  { (a1,b1,c1) op1 (a2,b2,c2) \
+      = pre \
+            a1 op1subop a2 \
+        sep b1 op1subop b2 \
+        sep c1 op1subop c2 \
+        post \
+  }
+
+{- --------------------------------------------------------------------------
+// 4 tuple, 1 binary op
+// --------------------------------------------------------------------------
+-}
+#define TUPLE4_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) \
+instance (clscon a, clscon b, clscon c, clscon d) => clscon (a,b,c,d) where \
+  { (a1,b1,c1,d1) op1 (a2,b2,c2,d2) \
+      = pre \
+            a1 op1subop a2 \
+        sep b1 op1subop b2 \
+        sep c1 op1subop c2 \
+        sep d1 op1subop d2 \
+        post \
+  }
+
+{- --------------------------------------------------------------------------
+// 5 tuple, 1 binary op
+// --------------------------------------------------------------------------
+-}
+#define TUPLE5_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) \
+instance (clscon a, clscon b, clscon c, clscon d, clscon e) => clscon (a,b,c,d,e) where \
+  { (a1,b1,c1,d1,e1) op1 (a2,b2,c2,d2,e2) \
+      = pre \
+            a1 op1subop a2 \
+        sep b1 op1subop b2 \
+        sep c1 op1subop c2 \
+        sep d1 op1subop d2 \
+        sep e1 op1subop e2 \
+        post \
+  }
+
+{- --------------------------------------------------------------------------
+// Set of 2..n tuple, 1 binary op
+// --------------------------------------------------------------------------
+-}
+#define TUPLE_BINOP1_INSTANCES(clscon,op1,op1subop,pre,sep,post) \
+{ TUPLE2_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) ;\
+  TUPLE3_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) ;\
+  TUPLE4_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) ;\
+  TUPLE5_BINOP1_INSTANCE(clscon,op1,op1subop,pre,sep,post) \
+}
+
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/Typeable.h b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/Typeable.h
new file mode 100644
--- /dev/null
+++ b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/Typeable.h
@@ -0,0 +1,149 @@
+{- --------------------------------------------------------------------------
+// Macros to help make Typeable instances.
+//
+// INSTANCE_TYPEABLEn(tc,tcname,"tc") defines
+//
+//	instance Typeable/n/ tc
+//	instance Typeable a => Typeable/n-1/ (tc a)
+//	instance (Typeable a, Typeable b) => Typeable/n-2/ (tc a b)
+//	...
+//	instance (Typeable a1, ..., Typeable an) => Typeable (tc a1 ... an)
+// --------------------------------------------------------------------------
+-}
+
+#ifndef TYPEABLE_H
+#define TYPEABLE_H
+
+#define INSTANCE_TYPEABLE0(tycon,tcname,str) \
+tcname :: TyCon; \
+tcname = mkTyCon str; \
+instance Typeable tycon where { typeOf _ = mkTyConApp tcname [] }
+
+#ifdef __GLASGOW_HASKELL__
+
+--  // For GHC, the extra instances follow from general instance declarations
+--  // defined in Data.Typeable.
+
+#define INSTANCE_TYPEABLE1(tycon,tcname,str) \
+tcname :: TyCon; \
+tcname = mkTyCon str; \
+instance Typeable1 tycon where { typeOf1 _ = mkTyConApp tcname [] }
+
+#define INSTANCE_TYPEABLE2(tycon,tcname,str) \
+tcname :: TyCon; \
+tcname = mkTyCon str; \
+instance Typeable2 tycon where { typeOf2 _ = mkTyConApp tcname [] }
+
+#define INSTANCE_TYPEABLE3(tycon,tcname,str) \
+tcname :: TyCon; \
+tcname = mkTyCon str; \
+instance Typeable3 tycon where { typeOf3 _ = mkTyConApp tcname [] }
+
+#define INSTANCE_TYPEABLE4(tycon,tcname,str) \
+tcname :: TyCon; \
+tcname = mkTyCon str; \
+instance Typeable4 tycon where { typeOf4 _ = mkTyConApp tcname [] }
+
+#define INSTANCE_TYPEABLE5(tycon,tcname,str) \
+tcname :: TyCon; \
+tcname = mkTyCon str; \
+instance Typeable5 tycon where { typeOf5 _ = mkTyConApp tcname [] }
+
+#define INSTANCE_TYPEABLE6(tycon,tcname,str) \
+tcname :: TyCon; \
+tcname = mkTyCon str; \
+instance Typeable6 tycon where { typeOf6 _ = mkTyConApp tcname [] }
+
+#define INSTANCE_TYPEABLE7(tycon,tcname,str) \
+tcname :: TyCon; \
+tcname = mkTyCon str; \
+instance Typeable7 tycon where { typeOf7 _ = mkTyConApp tcname [] }
+
+#else /* !__GLASGOW_HASKELL__ */
+
+#define INSTANCE_TYPEABLE1(tycon,tcname,str) \
+tcname = mkTyCon str; \
+instance Typeable1 tycon where { typeOf1 _ = mkTyConApp tcname [] }; \
+instance Typeable a => Typeable (tycon a) where { typeOf = typeOfDefault }
+
+#define INSTANCE_TYPEABLE2(tycon,tcname,str) \
+tcname = mkTyCon str; \
+instance Typeable2 tycon where { typeOf2 _ = mkTyConApp tcname [] }; \
+instance Typeable a => Typeable1 (tycon a) where { \
+  typeOf1 = typeOf1Default }; \
+instance (Typeable a, Typeable b) => Typeable (tycon a b) where { \
+  typeOf = typeOfDefault }
+
+#define INSTANCE_TYPEABLE3(tycon,tcname,str) \
+tcname = mkTyCon str; \
+instance Typeable3 tycon where { typeOf3 _ = mkTyConApp tcname [] }; \
+instance Typeable a => Typeable2 (tycon a) where { \
+  typeOf2 = typeOf2Default }; \
+instance (Typeable a, Typeable b) => Typeable1 (tycon a b) where { \
+  typeOf1 = typeOf1Default }; \
+instance (Typeable a, Typeable b, Typeable c) => Typeable (tycon a b c) where { \
+  typeOf = typeOfDefault }
+
+#define INSTANCE_TYPEABLE4(tycon,tcname,str) \
+tcname = mkTyCon str; \
+instance Typeable4 tycon where { typeOf4 _ = mkTyConApp tcname [] }; \
+instance Typeable a => Typeable3 (tycon a) where { \
+  typeOf3 = typeOf3Default }; \
+instance (Typeable a, Typeable b) => Typeable2 (tycon a b) where { \
+  typeOf2 = typeOf2Default }; \
+instance (Typeable a, Typeable b, Typeable c) => Typeable1 (tycon a b c) where { \
+  typeOf1 = typeOf1Default }; \
+instance (Typeable a, Typeable b, Typeable c, Typeable d) => Typeable (tycon a b c d) where { \
+  typeOf = typeOfDefault }
+
+#define INSTANCE_TYPEABLE5(tycon,tcname,str) \
+tcname = mkTyCon str; \
+instance Typeable5 tycon where { typeOf5 _ = mkTyConApp tcname [] }; \
+instance Typeable a => Typeable4 (tycon a) where { \
+  typeOf4 = typeOf4Default }; \
+instance (Typeable a, Typeable b) => Typeable3 (tycon a b) where { \
+  typeOf3 = typeOf3Default }; \
+instance (Typeable a, Typeable b, Typeable c) => Typeable2 (tycon a b c) where { \
+  typeOf2 = typeOf2Default }; \
+instance (Typeable a, Typeable b, Typeable c, Typeable d) => Typeable1 (tycon a b c d) where { \
+  typeOf1 = typeOf1Default }; \
+instance (Typeable a, Typeable b, Typeable c, Typeable d, Typeable e) => Typeable (tycon a b c d e) where { \
+  typeOf = typeOfDefault }
+
+#define INSTANCE_TYPEABLE6(tycon,tcname,str) \
+tcname = mkTyCon str; \
+instance Typeable6 tycon where { typeOf6 _ = mkTyConApp tcname [] }; \
+instance Typeable a => Typeable5 (tycon a) where { \
+  typeOf5 = typeOf5Default }; \
+instance (Typeable a, Typeable b) => Typeable4 (tycon a b) where { \
+  typeOf4 = typeOf4Default }; \
+instance (Typeable a, Typeable b, Typeable c) => Typeable3 (tycon a b c) where { \
+  typeOf3 = typeOf3Default }; \
+instance (Typeable a, Typeable b, Typeable c, Typeable d) => Typeable2 (tycon a b c d) where { \
+  typeOf2 = typeOf2Default }; \
+instance (Typeable a, Typeable b, Typeable c, Typeable d, Typeable e) => Typeable1 (tycon a b c d e) where { \
+  typeOf1 = typeOf1Default }; \
+instance (Typeable a, Typeable b, Typeable c, Typeable d, Typeable e, Typeable f) => Typeable (tycon a b c d e f) where { \
+  typeOf = typeOfDefault }
+
+#define INSTANCE_TYPEABLE7(tycon,tcname,str) \
+tcname = mkTyCon str; \
+instance Typeable7 tycon where { typeOf7 _ = mkTyConApp tcname [] }; \
+instance Typeable a => Typeable6 (tycon a) where { \
+  typeOf6 = typeOf6Default }; \
+instance (Typeable a, Typeable b) => Typeable5 (tycon a b) where { \
+  typeOf5 = typeOf5Default }; \
+instance (Typeable a, Typeable b, Typeable c) => Typeable4 (tycon a b c) where { \
+  typeOf4 = typeOf4Default }; \
+instance (Typeable a, Typeable b, Typeable c, Typeable d) => Typeable3 (tycon a b c d) where { \
+  typeOf3 = typeOf3Default }; \
+instance (Typeable a, Typeable b, Typeable c, Typeable d, Typeable e) => Typeable2 (tycon a b c d e) where { \
+  typeOf2 = typeOf2Default }; \
+instance (Typeable a, Typeable b, Typeable c, Typeable d, Typeable e, Typeable f) => Typeable1 (tycon a b c d e f) where { \
+  typeOf1 = typeOf1Default }; \
+instance (Typeable a, Typeable b, Typeable c, Typeable d, Typeable e, Typeable f, Typeable g) => Typeable (tycon a b c d e f g) where { \
+  typeOf = typeOfDefault }
+
+#endif /* !__GLASGOW_HASKELL__ */
+
+#endif
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/dirUtils.h b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/dirUtils.h
new file mode 100644
--- /dev/null
+++ b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/dirUtils.h
@@ -0,0 +1,11 @@
+/* 
+ * (c) The University of Glasgow 2002
+ *
+ * Directory Runtime Support
+ */
+#ifndef __DIRUTILS_H__
+#define __DIRUTILS_H__
+
+extern int __hscore_readdir(DIR *dirPtr, struct dirent **pDirEnt);
+
+#endif /* __DIRUTILS_H__ */
diff --git a/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/installed-pkg-config b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/installed-pkg-config
new file mode 100644
--- /dev/null
+++ b/103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/installed-pkg-config
@@ -0,0 +1,2 @@
+exposed-modules: Control.Monad Data.Bits Data.Char Data.Either Data.Int Data.IORef Data.List Data.Maybe Data.Typeable Data.Word Debug.Trace Foreign.C.Error Foreign.C.String Foreign.C.Types Foreign.C Foreign.ForeignPtr Foreign.Marshal.Alloc Foreign.Marshal.Array Foreign.Marshal.Error Foreign.Marshal.Pool Foreign.Marshal.Utils Foreign.Marshal Foreign.Ptr Foreign.StablePtr Foreign.Storable Foreign System.IO.Error System.IO.Fix System.IO.Unsafe System.IO System.Posix.Internals System.Posix.Types UHC.Array UHC.Base UHC.Bits UHC.Bounded UHC.BoxArray UHC.ByteArray UHC.Char UHC.Conc UHC.Enum UHC.Eq UHC.Float UHC.ForeignPtr UHC.GC UHC.Generics.Tuple UHC.Generics UHC.Handle UHC.Int UHC.IO UHC.IOBase UHC.Ix UHC.LazyST UHC.MutVar UHC.MVar UHC.OldException UHC.OldIO UHC.Ord UHC.Prims UHC.Ptr UHC.Read UHC.Real UHC.Run UHC.Show UHC.ST UHC.StablePtr UHC.StackTrace UHC.Storable UHC.STRef UHC.Types UHC.Weak UHC.WeakPtr UHC.Word Unsafe.Coerce
+build-depends: 
diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,5 +1,12 @@
 # Changelog
 
+## 1.1.7.4
+
+- [core] Detection of yes/no ANormal form of parsed Core and corresponding no/yes transformation (not tested for cases where it matters; unknown whether this is good enough for codegen to work properly)
+- [cleanup] Removal of src/ruler from source tree (has its own repo)
+- [api] Added better documentation and one small example program
+- [api] Fix issue #36 (wrong runtime behaviour and/or crashes)
+
 ## 1.1.7.3 - 20141127
 
 - [core] Core running engine works (FFI stuff still to be done).
diff --git a/src/UHC/Light/Compiler/Config.hs b/src/UHC/Light/Compiler/Config.hs
--- a/src/UHC/Light/Compiler/Config.hs
+++ b/src/UHC/Light/Compiler/Config.hs
@@ -64,12 +64,12 @@
       , verMajor            = "1"
       , verMinor            = "1"
       , verMinorMinor       = "7"
-      , verMinorMinorMinor  = "3"
+      , verMinorMinorMinor  = "4"
       , verQuality          = "alpha"
       , verShort            = "1.1"
       , verMedium           = "1.1.7"
-      , verFull             = "1.1.7.3"
-      , verAsNumber         = "1173"
+      , verFull             = "1.1.7.4"
+      , verAsNumber         = "1174"
       , verProg             = "ehc"
       }
 
diff --git a/src/UHC/Light/Compiler/ConfigInstall.hs b/src/UHC/Light/Compiler/ConfigInstall.hs
--- a/src/UHC/Light/Compiler/ConfigInstall.hs
+++ b/src/UHC/Light/Compiler/ConfigInstall.hs
@@ -11,7 +11,7 @@
 cppOpts  = fst $ parseCmdLineOpts Cmd_CPP "-Wno-invalid-pp-token"
 -- cppOpts  = showCmdLineOpts cppOpts'
 
-ehcSvnRevision = "master@2f2d76bc15"
+ehcSvnRevision = "master@b0046838b1"
 
 ehcDefaultInplaceInstallDir = "/Volumes/Work/Programming/uhc/EHC/install"
 
diff --git a/src/UHC/Light/Compiler/Core/API.hs b/src/UHC/Light/Compiler/Core/API.hs
--- a/src/UHC/Light/Compiler/Core/API.hs
+++ b/src/UHC/Light/Compiler/Core/API.hs
@@ -1,20 +1,28 @@
 {-# LINE 2 "src/ehc/Core/API.chs" #-}
 
--- | Core Public API (provisional, to be refactored)
+-- | Core Public API (provisional)
 --
 -- Intended for constructing basic Core Programs. Use the binary serialization from `UHC.Util.Binary`
 -- to produce a core file, which can be compiled by UHC.
+-- You will need to install the full UHC Compiler Suite in addition to uhc-light for this, and Core support
+-- in UHC has to be enabled (use the @--enable-core-asinpoutp@ configure option). See <https://github.com/UU-ComputerScience/uhc> for more details.
 --
+-- A small example program can be found at <https://github.com/UU-ComputerScience/uhc/tree/master/EHC/demo/CoreApi/> .
+-- In general, it is also a good idea to see what kind of Core UHC generates for Haskell files. To do this,
+-- call UHC with the option @--coreopt=dump@. This will produce an additional XXX.tcr file which you can
+-- read in any text editor. It may also be a good idea to add the @NoGenericDeriving@ pragma
+-- to your haskell files, as this will make the produced Core code much smaller.
+--
 -- Restrictions:
 --
 --  - Extendable data types are not supported
 --  - Generated code is not (type-)checked, might cause runtime crashes
 --  - Core parsing/Pretty printing is incomplete and might be partially broken.
---
--- TODO:
--- - Constructor applications (mkCon) always have to be fully saturated. (move to acoreTagTup)
--- - Haskell constructor names must be unambigous per module (mkHSCTag)
-
+--    The pretty printing should work good enough for dumping generated core
+--    code as debug output.
+--  - Calling Haskell functions which use the haskell class system is not (yet?) supported.
+--  - Avoiding name clashes is the responsibility of the user. The behaviour if duplicate
+--    names exists is undefined.
 module UHC.Light.Compiler.Core.API
   (
   -- * Core AST
@@ -323,7 +331,18 @@
     -> [EC.CDeclMeta]      -- ^ The meta information.
     -> EC.CExpr            -- ^ The body of the module.
     -> EC.CModule
-mkModule = EC.CModule_Mod
+mkModule mod exps imps meta body =
+  EC.CModule_Mod mod exps imps meta body'
+  -- TODO this is a work around, it forces UHC to recognize that
+  -- this core file is not yet lambda-lifted.
+  -- See issue #36.
+  where body' = mkLet1Plain dummyName (mkApp
+                    (mkLam [mkUniqueHsName prefix [] "dummy-arg"] unit)
+                    [ unit ]
+                    ) body
+        unit = mkUnit defaultEHCOpts
+        dummyName = hsnUniqifyStr HsNameUniqifier_CoreAPI prefix $ hsnPrefixQual mod (hsnFromString "dummy")
+        prefix = "nl.uu.uhc.core-api.lambda-lift-fix"
 
 -- | Creates an import.
 mkImport :: HsName -- ^ The module to import.
diff --git a/src/UHC/Light/Compiler/Core/Check.hs b/src/UHC/Light/Compiler/Core/Check.hs
--- a/src/UHC/Light/Compiler/Core/Check.hs
+++ b/src/UHC/Light/Compiler/Core/Check.hs
@@ -1,7 +1,8 @@
 
 
 -- UUAGC 0.9.50.2 (build/103/lib-ehc/UHC/Light/Compiler/Core/Check.ag)
-module UHC.Light.Compiler.Core.Check(cmodCheck', Inh_CodeAGItf (..), Syn_CodeAGItf (..)) where
+module UHC.Light.Compiler.Core.Check(NotYetTransformed (..), NotYetTransformedS
+, cmodCheck', Inh_CodeAGItf (..), Syn_CodeAGItf (..)) where
 
 import UHC.Light.Compiler.Base.HsName.Builtin
 import UHC.Light.Compiler.Base.Common
@@ -39,6 +40,16 @@
 
 
 
+-- | What not yet has been transformed in the given Core, absence means some aspect has been transformed everywhere
+data NotYetTransformed
+  = NotYetTransformed_LambdaLifted
+  | NotYetTransformed_ANormal
+  deriving (Eq, Ord, Show, Enum, Bounded)
+
+type NotYetTransformedS = Set.Set NotYetTransformed
+
+
+
 cmodCheck'
   :: Inh_CodeAGItf
      -> CModule
@@ -115,7 +126,7 @@
                  (case (True) of
                   { _exprOisTopApp ->
                   (case (expr_ _exprOdataGam _exprOevalCtx _exprOisTopApp _exprOisTopTup _exprOlev _exprOopts _exprOwhatAbove) of
-                   { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIisLamLifted,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprIundefNmMp,_exprIwhatBelow) ->
+                   { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprInotYetTransformed,_exprIundefNmMp,_exprIwhatBelow) ->
                        (case (_lhsIopts) of
                         { _patOopts ->
                         (case (_lev) of
@@ -222,9 +233,9 @@
          errs                 : ErrSq
          hasMain              : Bool
          isFreeOfLam          : Bool
-         isLamLifted          : Bool
          modDefsRel           : ModEntRel
          nm                   : HsName
+         notYetTransformed    : NotYetTransformedS
          undefNmMp            : UndefNmMp
    alternatives:
       alternative Bind:
@@ -243,7 +254,7 @@
                CBindCateg ->
                Int ->
                EHCOpts ->
-               ( ErrSq,Bool,Bool,Bool,ModEntRel,HsName,UndefNmMp)
+               ( ErrSq,Bool,Bool,ModEntRel,HsName,NotYetTransformedS,UndefNmMp)
 sem_CBind_Bind :: HsName ->
                   T_CBoundL ->
                   T_CBind
@@ -269,23 +280,23 @@
                (case (nm_) of
                 { _bindAspectsOnm ->
                 (case (bindAspects_ _bindAspectsOdataGam _bindAspectsOevalCtx _bindAspectsOisGlobal _bindAspectsOletBindingsCateg _bindAspectsOlev _bindAspectsOnm _bindAspectsOopts) of
-                 { ( _bindAspectsIerrs,_bindAspectsIisFreeOfLam,_bindAspectsIisLamLifted,_bindAspectsIundefNmMp) ->
+                 { ( _bindAspectsIerrs,_bindAspectsIisFreeOfLam,_bindAspectsInotYetTransformed,_bindAspectsIundefNmMp) ->
                      (case (_bindAspectsIerrs) of
                       { _lhsOerrs ->
                       (case (nm_ == hsnMain) of
                        { _lhsOhasMain ->
                        (case (_bindAspectsIisFreeOfLam) of
                         { _lhsOisFreeOfLam ->
-                        (case (_bindAspectsIisLamLifted) of
-                         { _lhsOisLamLifted ->
-                         (case (let o = IdOcc nm_ IdOcc_Val
-                                in  Rel.fromList [ (hsnQualified (ioccNm o), ModEnt IdOcc_Val o Set.empty emptyRange) ]) of
-                          { _lhsOmodDefsRel ->
-                          (case (nm_) of
-                           { _lhsOnm ->
+                        (case (let o = IdOcc nm_ IdOcc_Val
+                               in  Rel.fromList [ (hsnQualified (ioccNm o), ModEnt IdOcc_Val o Set.empty emptyRange) ]) of
+                         { _lhsOmodDefsRel ->
+                         (case (nm_) of
+                          { _lhsOnm ->
+                          (case (_bindAspectsInotYetTransformed) of
+                           { _lhsOnotYetTransformed ->
                            (case (_bindAspectsIundefNmMp) of
                             { _lhsOundefNmMp ->
-                            ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOmodDefsRel,_lhsOnm,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                            ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOmodDefsRel,_lhsOnm,_lhsOnotYetTransformed,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 -- CBindAnn ----------------------------------------------------
 {-
    visit 0:
@@ -407,8 +418,8 @@
          errs                 : ErrSq
          hasMain              : Bool
          isFreeOfLam          : Bool
-         isLamLifted          : Bool
          modDefsRel           : ModEntRel
+         notYetTransformed    : NotYetTransformedS
          undefNmMp            : UndefNmMp
    alternatives:
       alternative Cons:
@@ -428,7 +439,7 @@
                 CBindCateg ->
                 Int ->
                 EHCOpts ->
-                ( ErrSq,Bool,Bool,Bool,ModEntRel,UndefNmMp)
+                ( ErrSq,Bool,Bool,ModEntRel,NotYetTransformedS,UndefNmMp)
 sem_CBindL_Cons :: T_CBind ->
                    T_CBindL ->
                    T_CBindL
@@ -452,7 +463,7 @@
               (case (_lhsIdataGam) of
                { _tlOdataGam ->
                (case (tl_ _tlOdataGam _tlOevalCtx _tlOisGlobal _tlOletBindingsCateg _tlOlev _tlOopts) of
-                { ( _tlIerrs,_tlIhasMain,_tlIisFreeOfLam,_tlIisLamLifted,_tlImodDefsRel,_tlIundefNmMp) ->
+                { ( _tlIerrs,_tlIhasMain,_tlIisFreeOfLam,_tlImodDefsRel,_tlInotYetTransformed,_tlIundefNmMp) ->
                     (case (_lhsIopts) of
                      { _hdOopts ->
                      (case (_lhsIlev) of
@@ -466,20 +477,20 @@
                          (case (_lhsIdataGam) of
                           { _hdOdataGam ->
                           (case (hd_ _hdOdataGam _hdOevalCtx _hdOisGlobal _hdOletBindingsCateg _hdOlev _hdOopts) of
-                           { ( _hdIerrs,_hdIhasMain,_hdIisFreeOfLam,_hdIisLamLifted,_hdImodDefsRel,_hdInm,_hdIundefNmMp) ->
+                           { ( _hdIerrs,_hdIhasMain,_hdIisFreeOfLam,_hdImodDefsRel,_hdInm,_hdInotYetTransformed,_hdIundefNmMp) ->
                                (case (_hdIerrs `Seq.union` _tlIerrs) of
                                 { _lhsOerrs ->
                                 (case (_hdIhasMain || _tlIhasMain) of
                                  { _lhsOhasMain ->
                                  (case (_hdIisFreeOfLam && _tlIisFreeOfLam) of
                                   { _lhsOisFreeOfLam ->
-                                  (case (_hdIisLamLifted && _tlIisLamLifted) of
-                                   { _lhsOisLamLifted ->
-                                   (case (_hdImodDefsRel `Rel.union` _tlImodDefsRel) of
-                                    { _lhsOmodDefsRel ->
+                                  (case (_hdImodDefsRel `Rel.union` _tlImodDefsRel) of
+                                   { _lhsOmodDefsRel ->
+                                   (case (_hdInotYetTransformed `Set.union` _tlInotYetTransformed) of
+                                    { _lhsOnotYetTransformed ->
                                     (case (_hdIundefNmMp `undefmpUnion` _tlIundefNmMp) of
                                      { _lhsOundefNmMp ->
-                                     ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOmodDefsRel,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                     ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CBindL_Nil :: T_CBindL
 sem_CBindL_Nil =
     (\ _lhsIdataGam
@@ -494,13 +505,13 @@
            { _lhsOhasMain ->
            (case (True) of
             { _lhsOisFreeOfLam ->
-            (case (True) of
-             { _lhsOisLamLifted ->
-             (case (Rel.empty) of
-              { _lhsOmodDefsRel ->
+            (case (Rel.empty) of
+             { _lhsOmodDefsRel ->
+             (case (Set.empty) of
+              { _lhsOnotYetTransformed ->
               (case (Map.empty) of
                { _lhsOundefNmMp ->
-               ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOmodDefsRel,_lhsOundefNmMp) }) }) }) }) }) }))
+               ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp) }) }) }) }) }) }))
 -- CBound ------------------------------------------------------
 {-
    visit 0:
@@ -517,7 +528,8 @@
       synthesized attributes:
          errs                 : ErrSq
          isFreeOfLam          : Bool
-         isLamLifted          : Bool
+         isSimple             : Bool
+         notYetTransformed    : NotYetTransformedS
          undefNmMp            : UndefNmMp
    alternatives:
       alternative Bind:
@@ -525,7 +537,8 @@
          child expr           : CExpr 
          visit 0:
             local whatAbove   : {WhatExpr}
-            local isLamLifted : _
+            local isSimple    : _
+            local bindNotYetTransformed : _
       alternative Meta:
          child aspectKeyS     : {ACoreBindAspectKeyS}
          child cmetas         : CMetas 
@@ -539,7 +552,8 @@
          child expr           : CExpr 
          visit 0:
             local whatAbove   : {WhatExpr}
-            local isLamLifted : _
+            local isSimple    : _
+            local bindNotYetTransformed : _
       alternative Ty:
          child aspectKeyS     : {ACoreBindAspectKeyS}
          child ty             : {Ty}
@@ -576,7 +590,7 @@
                 Int ->
                 HsName ->
                 EHCOpts ->
-                ( ErrSq,Bool,Bool,UndefNmMp)
+                ( ErrSq,Bool,Bool,NotYetTransformedS,UndefNmMp)
 sem_CBound_Bind :: T_CMetas ->
                    T_CExpr ->
                    T_CBound
@@ -607,7 +621,7 @@
                 (case (True) of
                  { _exprOisTopApp ->
                  (case (expr_ _exprOdataGam _exprOevalCtx _exprOisTopApp _exprOisTopTup _exprOlev _exprOopts _exprOwhatAbove) of
-                  { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIisLamLifted,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprIundefNmMp,_exprIwhatBelow) ->
+                  { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprInotYetTransformed,_exprIundefNmMp,_exprIwhatBelow) ->
                       (case (_lhsIopts) of
                        { _bindMetaOopts ->
                        (case (_lhsIlev) of
@@ -620,15 +634,27 @@
                                { _lhsOerrs ->
                                (case (_bindMetaIisFreeOfLam && _exprIisFreeOfLam) of
                                 { _lhsOisFreeOfLam ->
-                                (case (if whatExprIsLam _exprIwhatBelow
-                                       then _lhsIisGlobal && _exprIlamBodyIsFreeOfLam
-                                       else _exprIisFreeOfLam) of
-                                 { _isLamLifted ->
-                                 (case (_isLamLifted) of
-                                  { _lhsOisLamLifted ->
-                                  (case (_bindMetaIundefNmMp `undefmpUnion` _exprIundefNmMp) of
-                                   { _lhsOundefNmMp ->
-                                   ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                (case (case _exprIwhatBelow of
+                                           ExprIsVar _     -> True
+                                           ExprIsInt _     -> True
+                                           ExprIsOtherWHNF -> True
+                                           _               -> False) of
+                                 { _isSimple ->
+                                 (case (_isSimple) of
+                                  { _lhsOisSimple ->
+                                  (case (if whatExprIsLam _exprIwhatBelow
+                                         then if _lhsIisGlobal && _exprIlamBodyIsFreeOfLam
+                                              then Set.empty
+                                              else Set.singleton NotYetTransformed_LambdaLifted
+                                         else if _exprIisFreeOfLam
+                                              then Set.empty
+                                              else Set.singleton NotYetTransformed_LambdaLifted) of
+                                   { _bindNotYetTransformed ->
+                                   (case (Set.unions [_bindNotYetTransformed, _exprInotYetTransformed]) of
+                                    { _lhsOnotYetTransformed ->
+                                    (case (_bindMetaIundefNmMp `undefmpUnion` _exprIundefNmMp) of
+                                     { _lhsOundefNmMp ->
+                                     ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOisSimple,_lhsOnotYetTransformed,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CBound_Meta :: ACoreBindAspectKeyS ->
                    T_CMetas ->
                    T_CBound
@@ -654,11 +680,13 @@
                   { _lhsOerrs ->
                   (case (_cmetasIisFreeOfLam) of
                    { _lhsOisFreeOfLam ->
-                   (case (True) of
-                    { _lhsOisLamLifted ->
-                    (case (_cmetasIundefNmMp) of
-                     { _lhsOundefNmMp ->
-                     ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOundefNmMp) }) }) }) }) }) }) }) }))
+                   (case (False) of
+                    { _lhsOisSimple ->
+                    (case (Set.empty) of
+                     { _lhsOnotYetTransformed ->
+                     (case (_cmetasIundefNmMp) of
+                      { _lhsOundefNmMp ->
+                      ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOisSimple,_lhsOnotYetTransformed,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }))
 sem_CBound_RelevTy :: ACoreBindAspectKeyS ->
                       RelevTy ->
                       T_CBound
@@ -676,11 +704,13 @@
           { _lhsOerrs ->
           (case (True) of
            { _lhsOisFreeOfLam ->
-           (case (True) of
-            { _lhsOisLamLifted ->
-            (case (Map.empty) of
-             { _lhsOundefNmMp ->
-             ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOundefNmMp) }) }) }) }))
+           (case (False) of
+            { _lhsOisSimple ->
+            (case (Set.empty) of
+             { _lhsOnotYetTransformed ->
+             (case (Map.empty) of
+              { _lhsOundefNmMp ->
+              ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOisSimple,_lhsOnotYetTransformed,_lhsOundefNmMp) }) }) }) }) }))
 sem_CBound_Val :: ACoreBindAspectKeyS ->
                   MetaLev ->
                   CLbl ->
@@ -713,20 +743,32 @@
                 (case (_lhsIdataGam) of
                  { _exprOdataGam ->
                  (case (expr_ _exprOdataGam _exprOevalCtx _exprOisTopApp _exprOisTopTup _exprOlev _exprOopts _exprOwhatAbove) of
-                  { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIisLamLifted,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprIundefNmMp,_exprIwhatBelow) ->
+                  { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprInotYetTransformed,_exprIundefNmMp,_exprIwhatBelow) ->
                       (case (_exprIerrs) of
                        { _lhsOerrs ->
                        (case (_exprIisFreeOfLam) of
                         { _lhsOisFreeOfLam ->
-                        (case (if whatExprIsLam _exprIwhatBelow
-                               then _lhsIisGlobal && _exprIlamBodyIsFreeOfLam
-                               else _exprIisFreeOfLam) of
-                         { _isLamLifted ->
-                         (case (_isLamLifted) of
-                          { _lhsOisLamLifted ->
-                          (case (_exprIundefNmMp) of
-                           { _lhsOundefNmMp ->
-                           ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                        (case (case _exprIwhatBelow of
+                                   ExprIsVar _     -> True
+                                   ExprIsInt _     -> True
+                                   ExprIsOtherWHNF -> True
+                                   _               -> False) of
+                         { _isSimple ->
+                         (case (_isSimple) of
+                          { _lhsOisSimple ->
+                          (case (if whatExprIsLam _exprIwhatBelow
+                                 then if _lhsIisGlobal && _exprIlamBodyIsFreeOfLam
+                                      then Set.empty
+                                      else Set.singleton NotYetTransformed_LambdaLifted
+                                 else if _exprIisFreeOfLam
+                                      then Set.empty
+                                      else Set.singleton NotYetTransformed_LambdaLifted) of
+                           { _bindNotYetTransformed ->
+                           (case (Set.unions [_bindNotYetTransformed, _exprInotYetTransformed]) of
+                            { _lhsOnotYetTransformed ->
+                            (case (_exprIundefNmMp) of
+                             { _lhsOundefNmMp ->
+                             ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOisSimple,_lhsOnotYetTransformed,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CBound_Ty :: ACoreBindAspectKeyS ->
                  Ty ->
                  T_CBound
@@ -744,11 +786,13 @@
           { _lhsOerrs ->
           (case (True) of
            { _lhsOisFreeOfLam ->
-           (case (True) of
-            { _lhsOisLamLifted ->
-            (case (Map.empty) of
-             { _lhsOundefNmMp ->
-             ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOundefNmMp) }) }) }) }))
+           (case (False) of
+            { _lhsOisSimple ->
+            (case (Set.empty) of
+             { _lhsOnotYetTransformed ->
+             (case (Map.empty) of
+              { _lhsOundefNmMp ->
+              ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOisSimple,_lhsOnotYetTransformed,_lhsOundefNmMp) }) }) }) }) }))
 sem_CBound_FFE :: FFIWay ->
                   ForeignEnt ->
                   T_CExpr ->
@@ -781,16 +825,18 @@
                 (case (True) of
                  { _exprOisTopApp ->
                  (case (expr_ _exprOdataGam _exprOevalCtx _exprOisTopApp _exprOisTopTup _exprOlev _exprOopts _exprOwhatAbove) of
-                  { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIisLamLifted,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprIundefNmMp,_exprIwhatBelow) ->
+                  { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprInotYetTransformed,_exprIundefNmMp,_exprIwhatBelow) ->
                       (case (_exprIerrs) of
                        { _lhsOerrs ->
                        (case (_exprIisFreeOfLam) of
                         { _lhsOisFreeOfLam ->
-                        (case (_exprIisLamLifted) of
-                         { _lhsOisLamLifted ->
-                         (case (_exprIundefNmMp) of
-                          { _lhsOundefNmMp ->
-                          ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                        (case (False) of
+                         { _lhsOisSimple ->
+                         (case (_exprInotYetTransformed) of
+                          { _lhsOnotYetTransformed ->
+                          (case (_exprIundefNmMp) of
+                           { _lhsOundefNmMp ->
+                           ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOisSimple,_lhsOnotYetTransformed,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 -- CBoundL -----------------------------------------------------
 {-
    visit 0:
@@ -805,7 +851,7 @@
       synthesized attributes:
          errs                 : ErrSq
          isFreeOfLam          : Bool
-         isLamLifted          : Bool
+         notYetTransformed    : NotYetTransformedS
          undefNmMp            : UndefNmMp
    alternatives:
       alternative Cons:
@@ -826,7 +872,7 @@
                  Int ->
                  HsName ->
                  EHCOpts ->
-                 ( ErrSq,Bool,Bool,UndefNmMp)
+                 ( ErrSq,Bool,NotYetTransformedS,UndefNmMp)
 sem_CBoundL_Cons :: T_CBound ->
                     T_CBoundL ->
                     T_CBoundL
@@ -853,7 +899,7 @@
                (case (_lhsIdataGam) of
                 { _tlOdataGam ->
                 (case (tl_ _tlOdataGam _tlOevalCtx _tlOisGlobal _tlOletBindingsCateg _tlOlev _tlOnm _tlOopts) of
-                 { ( _tlIerrs,_tlIisFreeOfLam,_tlIisLamLifted,_tlIundefNmMp) ->
+                 { ( _tlIerrs,_tlIisFreeOfLam,_tlInotYetTransformed,_tlIundefNmMp) ->
                      (case (_lhsIopts) of
                       { _hdOopts ->
                       (case (_lhsInm) of
@@ -873,16 +919,16 @@
                              (case (True) of
                               { _hdOisTopApp ->
                               (case (hd_ _hdOdataGam _hdOevalCtx _hdOisGlobal _hdOisTopApp _hdOisTopTup _hdOletBindingsCateg _hdOlev _hdOnm _hdOopts) of
-                               { ( _hdIerrs,_hdIisFreeOfLam,_hdIisLamLifted,_hdIundefNmMp) ->
+                               { ( _hdIerrs,_hdIisFreeOfLam,_hdIisSimple,_hdInotYetTransformed,_hdIundefNmMp) ->
                                    (case (_hdIerrs `Seq.union` _tlIerrs) of
                                     { _lhsOerrs ->
                                     (case (_hdIisFreeOfLam && _tlIisFreeOfLam) of
                                      { _lhsOisFreeOfLam ->
-                                     (case (_hdIisLamLifted && _tlIisLamLifted) of
-                                      { _lhsOisLamLifted ->
+                                     (case (_hdInotYetTransformed `Set.union` _tlInotYetTransformed) of
+                                      { _lhsOnotYetTransformed ->
                                       (case (_hdIundefNmMp `undefmpUnion` _tlIundefNmMp) of
                                        { _lhsOundefNmMp ->
-                                       ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                       ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOnotYetTransformed,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CBoundL_Nil :: T_CBoundL
 sem_CBoundL_Nil =
     (\ _lhsIdataGam
@@ -896,11 +942,11 @@
           { _lhsOerrs ->
           (case (True) of
            { _lhsOisFreeOfLam ->
-           (case (True) of
-            { _lhsOisLamLifted ->
+           (case (Set.empty) of
+            { _lhsOnotYetTransformed ->
             (case (Map.empty) of
              { _lhsOundefNmMp ->
-             ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOundefNmMp) }) }) }) }))
+             ( _lhsOerrs,_lhsOisFreeOfLam,_lhsOnotYetTransformed,_lhsOundefNmMp) }) }) }) }))
 -- CDataCon ----------------------------------------------------
 {-
    visit 0:
@@ -1147,9 +1193,9 @@
          errs                 : ErrSq
          hasMain              : Bool
          isFreeOfLam          : Bool
-         isLamLifted          : Bool
          lamBodyIsFreeOfLam   : Bool
          modDefsRel           : ModEntRel
+         notYetTransformed    : NotYetTransformedS
          undefNmMp            : UndefNmMp
          whatBelow            : WhatExpr
    alternatives:
@@ -1198,6 +1244,7 @@
             local isTopTup    : _
             local isGlobal    : _
             local whatAbove   : {WhatExpr}
+            local appNotYetTransformed : _
             local whatBelow   : _
       alternative Lam:
          child bind           : CBind 
@@ -1359,7 +1406,7 @@
                Int ->
                EHCOpts ->
                WhatExpr ->
-               ( ErrSq,Bool,Bool,Bool,Bool,ModEntRel,UndefNmMp,WhatExpr)
+               ( ErrSq,Bool,Bool,Bool,ModEntRel,NotYetTransformedS,UndefNmMp,WhatExpr)
 sem_CExpr_Var :: ACoreBindRef ->
                  T_CExpr
 sem_CExpr_Var ref_ =
@@ -1376,12 +1423,12 @@
            { _lhsOhasMain ->
            (case (True) of
             { _lhsOisFreeOfLam ->
-            (case (True) of
-             { _lhsOisLamLifted ->
-             (case (False) of
-              { _lhsOlamBodyIsFreeOfLam ->
-              (case (Rel.empty) of
-               { _lhsOmodDefsRel ->
+            (case (False) of
+             { _lhsOlamBodyIsFreeOfLam ->
+             (case (Rel.empty) of
+              { _lhsOmodDefsRel ->
+              (case (Set.empty) of
+               { _lhsOnotYetTransformed ->
                (case (Map.empty) of
                 { _lhsOundefNmMp ->
                 (case (acbrefNm ref_) of
@@ -1390,7 +1437,7 @@
                   { _whatBelow ->
                   (case (_whatBelow) of
                    { _lhsOwhatBelow ->
-                   ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }))
+                   ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }))
 sem_CExpr_Int :: Int ->
                  T_CExpr
 sem_CExpr_Int int_ =
@@ -1407,19 +1454,19 @@
            { _lhsOhasMain ->
            (case (True) of
             { _lhsOisFreeOfLam ->
-            (case (True) of
-             { _lhsOisLamLifted ->
-             (case (False) of
-              { _lhsOlamBodyIsFreeOfLam ->
-              (case (Rel.empty) of
-               { _lhsOmodDefsRel ->
+            (case (False) of
+             { _lhsOlamBodyIsFreeOfLam ->
+             (case (Rel.empty) of
+              { _lhsOmodDefsRel ->
+              (case (Set.empty) of
+               { _lhsOnotYetTransformed ->
                (case (Map.empty) of
                 { _lhsOundefNmMp ->
                 (case (ExprIsInt int_) of
                  { _whatBelow ->
                  (case (_whatBelow) of
                   { _lhsOwhatBelow ->
-                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
+                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
 sem_CExpr_Char :: Char ->
                   T_CExpr
 sem_CExpr_Char char_ =
@@ -1436,19 +1483,19 @@
            { _lhsOhasMain ->
            (case (True) of
             { _lhsOisFreeOfLam ->
-            (case (True) of
-             { _lhsOisLamLifted ->
-             (case (False) of
-              { _lhsOlamBodyIsFreeOfLam ->
-              (case (Rel.empty) of
-               { _lhsOmodDefsRel ->
+            (case (False) of
+             { _lhsOlamBodyIsFreeOfLam ->
+             (case (Rel.empty) of
+              { _lhsOmodDefsRel ->
+              (case (Set.empty) of
+               { _lhsOnotYetTransformed ->
                (case (Map.empty) of
                 { _lhsOundefNmMp ->
                 (case (ExprIsOtherWHNF) of
                  { _whatBelow ->
                  (case (_whatBelow) of
                   { _lhsOwhatBelow ->
-                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
+                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
 sem_CExpr_String :: String ->
                     T_CExpr
 sem_CExpr_String str_ =
@@ -1465,19 +1512,19 @@
            { _lhsOhasMain ->
            (case (True) of
             { _lhsOisFreeOfLam ->
-            (case (True) of
-             { _lhsOisLamLifted ->
-             (case (False) of
-              { _lhsOlamBodyIsFreeOfLam ->
-              (case (Rel.empty) of
-               { _lhsOmodDefsRel ->
+            (case (False) of
+             { _lhsOlamBodyIsFreeOfLam ->
+             (case (Rel.empty) of
+              { _lhsOmodDefsRel ->
+              (case (Set.empty) of
+               { _lhsOnotYetTransformed ->
                (case (Map.empty) of
                 { _lhsOundefNmMp ->
                 (case (ExprIsOtherWHNF) of
                  { _whatBelow ->
                  (case (_whatBelow) of
                   { _lhsOwhatBelow ->
-                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
+                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
 sem_CExpr_Integer :: Integer ->
                      T_CExpr
 sem_CExpr_Integer integer_ =
@@ -1494,19 +1541,19 @@
            { _lhsOhasMain ->
            (case (True) of
             { _lhsOisFreeOfLam ->
-            (case (True) of
-             { _lhsOisLamLifted ->
-             (case (False) of
-              { _lhsOlamBodyIsFreeOfLam ->
-              (case (Rel.empty) of
-               { _lhsOmodDefsRel ->
+            (case (False) of
+             { _lhsOlamBodyIsFreeOfLam ->
+             (case (Rel.empty) of
+              { _lhsOmodDefsRel ->
+              (case (Set.empty) of
+               { _lhsOnotYetTransformed ->
                (case (Map.empty) of
                 { _lhsOundefNmMp ->
                 (case (ExprIsOtherWHNF) of
                  { _whatBelow ->
                  (case (_whatBelow) of
                   { _lhsOwhatBelow ->
-                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
+                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
 sem_CExpr_Tup :: CTag ->
                  T_CExpr
 sem_CExpr_Tup tag_ =
@@ -1523,19 +1570,19 @@
            { _lhsOhasMain ->
            (case (True) of
             { _lhsOisFreeOfLam ->
-            (case (True) of
-             { _lhsOisLamLifted ->
-             (case (False) of
-              { _lhsOlamBodyIsFreeOfLam ->
-              (case (Rel.empty) of
-               { _lhsOmodDefsRel ->
+            (case (False) of
+             { _lhsOlamBodyIsFreeOfLam ->
+             (case (Rel.empty) of
+              { _lhsOmodDefsRel ->
+              (case (Set.empty) of
+               { _lhsOnotYetTransformed ->
                (case (Map.empty) of
                 { _lhsOundefNmMp ->
                 (case (ExprIsTup tag_) of
                  { _whatBelow ->
                  (case (_whatBelow) of
                   { _lhsOwhatBelow ->
-                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
+                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
 sem_CExpr_Let :: CBindCateg ->
                  T_CBindL ->
                  T_CExpr ->
@@ -1573,7 +1620,7 @@
                    (case (_lhsIdataGam) of
                     { _bodyOdataGam ->
                     (case (body_ _bodyOdataGam _bodyOevalCtx _bodyOisTopApp _bodyOisTopTup _bodyOlev _bodyOopts _bodyOwhatAbove) of
-                     { ( _bodyIerrs,_bodyIhasMain,_bodyIisFreeOfLam,_bodyIisLamLifted,_bodyIlamBodyIsFreeOfLam,_bodyImodDefsRel,_bodyIundefNmMp,_bodyIwhatBelow) ->
+                     { ( _bodyIerrs,_bodyIhasMain,_bodyIisFreeOfLam,_bodyIlamBodyIsFreeOfLam,_bodyImodDefsRel,_bodyInotYetTransformed,_bodyIundefNmMp,_bodyIwhatBelow) ->
                          (case (_lhsIopts) of
                           { _bindsOopts ->
                           (case (categ_) of
@@ -1591,26 +1638,26 @@
                                 (case (_lhsIlev + 1) of
                                  { _bindsOlev ->
                                  (case (binds_ _bindsOdataGam _bindsOevalCtx _bindsOisGlobal _bindsOletBindingsCateg _bindsOlev _bindsOopts) of
-                                  { ( _bindsIerrs,_bindsIhasMain,_bindsIisFreeOfLam,_bindsIisLamLifted,_bindsImodDefsRel,_bindsIundefNmMp) ->
+                                  { ( _bindsIerrs,_bindsIhasMain,_bindsIisFreeOfLam,_bindsImodDefsRel,_bindsInotYetTransformed,_bindsIundefNmMp) ->
                                       (case (_bindsIerrs `Seq.union` _bodyIerrs) of
                                        { _lhsOerrs ->
                                        (case (_bindsIhasMain || _bodyIhasMain) of
                                         { _lhsOhasMain ->
                                         (case (_bindsIisFreeOfLam && _bodyIisFreeOfLam) of
                                          { _lhsOisFreeOfLam ->
-                                         (case (_bindsIisLamLifted && _bodyIisLamLifted) of
-                                          { _lhsOisLamLifted ->
-                                          (case (False) of
-                                           { _lhsOlamBodyIsFreeOfLam ->
-                                           (case (_bindsImodDefsRel `Rel.union` _bodyImodDefsRel) of
-                                            { _lhsOmodDefsRel ->
+                                         (case (False) of
+                                          { _lhsOlamBodyIsFreeOfLam ->
+                                          (case (_bindsImodDefsRel `Rel.union` _bodyImodDefsRel) of
+                                           { _lhsOmodDefsRel ->
+                                           (case (_bindsInotYetTransformed `Set.union` _bodyInotYetTransformed) of
+                                            { _lhsOnotYetTransformed ->
                                             (case (_bindsIundefNmMp `undefmpUnion` _bodyIundefNmMp) of
                                              { _lhsOundefNmMp ->
                                              (case (ExprIsOther) of
                                               { _whatBelow ->
                                               (case (_whatBelow) of
                                                { _lhsOwhatBelow ->
-                                               ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                               ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CExpr_App :: T_CExpr ->
                  T_CBound ->
                  T_CExpr
@@ -1647,7 +1694,7 @@
                     (case (True) of
                      { _argOisTopApp ->
                      (case (arg_ _argOdataGam _argOevalCtx _argOisGlobal _argOisTopApp _argOisTopTup _argOletBindingsCateg _argOlev _argOnm _argOopts) of
-                      { ( _argIerrs,_argIisFreeOfLam,_argIisLamLifted,_argIundefNmMp) ->
+                      { ( _argIerrs,_argIisFreeOfLam,_argIisSimple,_argInotYetTransformed,_argIundefNmMp) ->
                           (case (maybe (ExprIsApp 1 ExprIsOther) (\(a,w) -> ExprIsApp (a + 1) w) $ whatExprMbApp _lhsIwhatAbove) of
                            { _whatAbove ->
                            (case (_whatAbove) of
@@ -1665,26 +1712,28 @@
                                  (case (False) of
                                   { _funcOisTopApp ->
                                   (case (func_ _funcOdataGam _funcOevalCtx _funcOisTopApp _funcOisTopTup _funcOlev _funcOopts _funcOwhatAbove) of
-                                   { ( _funcIerrs,_funcIhasMain,_funcIisFreeOfLam,_funcIisLamLifted,_funcIlamBodyIsFreeOfLam,_funcImodDefsRel,_funcIundefNmMp,_funcIwhatBelow) ->
+                                   { ( _funcIerrs,_funcIhasMain,_funcIisFreeOfLam,_funcIlamBodyIsFreeOfLam,_funcImodDefsRel,_funcInotYetTransformed,_funcIundefNmMp,_funcIwhatBelow) ->
                                        (case (_funcIerrs `Seq.union` _argIerrs) of
                                         { _lhsOerrs ->
                                         (case (_funcIhasMain) of
                                          { _lhsOhasMain ->
                                          (case (_funcIisFreeOfLam && _argIisFreeOfLam) of
                                           { _lhsOisFreeOfLam ->
-                                          (case (_funcIisLamLifted && _argIisLamLifted) of
-                                           { _lhsOisLamLifted ->
-                                           (case (False) of
-                                            { _lhsOlamBodyIsFreeOfLam ->
-                                            (case (_funcImodDefsRel) of
-                                             { _lhsOmodDefsRel ->
-                                             (case (_funcIundefNmMp `undefmpUnion` _argIundefNmMp) of
-                                              { _lhsOundefNmMp ->
-                                              (case (maybe (ExprIsApp 1 _funcIwhatBelow) (\(a,w) -> ExprIsApp (a + 1) w) $ whatExprMbApp _funcIwhatBelow) of
-                                               { _whatBelow ->
-                                               (case (_whatBelow) of
-                                                { _lhsOwhatBelow ->
-                                                ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                          (case (False) of
+                                           { _lhsOlamBodyIsFreeOfLam ->
+                                           (case (_funcImodDefsRel) of
+                                            { _lhsOmodDefsRel ->
+                                            (case (if _argIisSimple then Set.empty else Set.singleton NotYetTransformed_ANormal) of
+                                             { _appNotYetTransformed ->
+                                             (case (Set.unions [_appNotYetTransformed, _funcInotYetTransformed, _argInotYetTransformed]) of
+                                              { _lhsOnotYetTransformed ->
+                                              (case (_funcIundefNmMp `undefmpUnion` _argIundefNmMp) of
+                                               { _lhsOundefNmMp ->
+                                               (case (maybe (ExprIsApp 1 _funcIwhatBelow) (\(a,w) -> ExprIsApp (a + 1) w) $ whatExprMbApp _funcIwhatBelow) of
+                                                { _whatBelow ->
+                                                (case (_whatBelow) of
+                                                 { _lhsOwhatBelow ->
+                                                 ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CExpr_Lam :: T_CBind ->
                  T_CExpr ->
                  T_CExpr
@@ -1722,7 +1771,7 @@
                    (case (_lhsIdataGam) of
                     { _bodyOdataGam ->
                     (case (body_ _bodyOdataGam _bodyOevalCtx _bodyOisTopApp _bodyOisTopTup _bodyOlev _bodyOopts _bodyOwhatAbove) of
-                     { ( _bodyIerrs,_bodyIhasMain,_bodyIisFreeOfLam,_bodyIisLamLifted,_bodyIlamBodyIsFreeOfLam,_bodyImodDefsRel,_bodyIundefNmMp,_bodyIwhatBelow) ->
+                     { ( _bodyIerrs,_bodyIhasMain,_bodyIisFreeOfLam,_bodyIlamBodyIsFreeOfLam,_bodyImodDefsRel,_bodyInotYetTransformed,_bodyIundefNmMp,_bodyIwhatBelow) ->
                          (case (_lhsIopts) of
                           { _bindOopts ->
                           (case (_lev) of
@@ -1740,28 +1789,28 @@
                                 (case (_lhsIdataGam) of
                                  { _bindOdataGam ->
                                  (case (bind_ _bindOdataGam _bindOevalCtx _bindOisGlobal _bindOletBindingsCateg _bindOlev _bindOopts) of
-                                  { ( _bindIerrs,_bindIhasMain,_bindIisFreeOfLam,_bindIisLamLifted,_bindImodDefsRel,_bindInm,_bindIundefNmMp) ->
+                                  { ( _bindIerrs,_bindIhasMain,_bindIisFreeOfLam,_bindImodDefsRel,_bindInm,_bindInotYetTransformed,_bindIundefNmMp) ->
                                       (case (_bindIerrs `Seq.union` _bodyIerrs) of
                                        { _lhsOerrs ->
                                        (case (_bindIhasMain || _bodyIhasMain) of
                                         { _lhsOhasMain ->
                                         (case (False) of
                                          { _lhsOisFreeOfLam ->
-                                         (case (_bindIisLamLifted && _bodyIisLamLifted) of
-                                          { _lhsOisLamLifted ->
-                                          (case (if whatExprIsLam _bodyIwhatBelow
-                                                 then _bodyIlamBodyIsFreeOfLam
-                                                 else _bodyIisFreeOfLam) of
-                                           { _lhsOlamBodyIsFreeOfLam ->
-                                           (case (_bindImodDefsRel `Rel.union` _bodyImodDefsRel) of
-                                            { _lhsOmodDefsRel ->
+                                         (case (if whatExprIsLam _bodyIwhatBelow
+                                                then _bodyIlamBodyIsFreeOfLam
+                                                else _bodyIisFreeOfLam) of
+                                          { _lhsOlamBodyIsFreeOfLam ->
+                                          (case (_bindImodDefsRel `Rel.union` _bodyImodDefsRel) of
+                                           { _lhsOmodDefsRel ->
+                                           (case (_bindInotYetTransformed `Set.union` _bodyInotYetTransformed) of
+                                            { _lhsOnotYetTransformed ->
                                             (case (_bindIundefNmMp `undefmpUnion` _bodyIundefNmMp) of
                                              { _lhsOundefNmMp ->
                                              (case (maybe (ExprIsLam 1 Nothing) (\a -> ExprIsLam (a + 1) Nothing) $ whatExprMbLam _bodyIwhatBelow) of
                                               { _whatBelow ->
                                               (case (_whatBelow) of
                                                { _lhsOwhatBelow ->
-                                               ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                               ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CExpr_Case :: T_CExpr ->
                   T_CAltL ->
                   T_CExpr ->
@@ -1795,7 +1844,7 @@
                   (case (_lhsIdataGam) of
                    { _dfltOdataGam ->
                    (case (dflt_ _dfltOdataGam _dfltOevalCtx _dfltOisTopApp _dfltOisTopTup _dfltOlev _dfltOopts _dfltOwhatAbove) of
-                    { ( _dfltIerrs,_dfltIhasMain,_dfltIisFreeOfLam,_dfltIisLamLifted,_dfltIlamBodyIsFreeOfLam,_dfltImodDefsRel,_dfltIundefNmMp,_dfltIwhatBelow) ->
+                    { ( _dfltIerrs,_dfltIhasMain,_dfltIisFreeOfLam,_dfltIlamBodyIsFreeOfLam,_dfltImodDefsRel,_dfltInotYetTransformed,_dfltIundefNmMp,_dfltIwhatBelow) ->
                         (case (_lhsIopts) of
                          { _altsOopts ->
                          (case (_lhsIlev) of
@@ -1821,26 +1870,26 @@
                                        (case (_lhsIdataGam) of
                                         { _exprOdataGam ->
                                         (case (expr_ _exprOdataGam _exprOevalCtx _exprOisTopApp _exprOisTopTup _exprOlev _exprOopts _exprOwhatAbove) of
-                                         { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIisLamLifted,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprIundefNmMp,_exprIwhatBelow) ->
+                                         { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprInotYetTransformed,_exprIundefNmMp,_exprIwhatBelow) ->
                                              (case (_exprIerrs `Seq.union` _altsIerrs `Seq.union` _dfltIerrs) of
                                               { _lhsOerrs ->
                                               (case (_exprIhasMain || _dfltIhasMain) of
                                                { _lhsOhasMain ->
                                                (case (_exprIisFreeOfLam && _altsIisFreeOfLam && _dfltIisFreeOfLam) of
                                                 { _lhsOisFreeOfLam ->
-                                                (case (_exprIisLamLifted && _dfltIisLamLifted) of
-                                                 { _lhsOisLamLifted ->
-                                                 (case (False) of
-                                                  { _lhsOlamBodyIsFreeOfLam ->
-                                                  (case (_exprImodDefsRel `Rel.union` _dfltImodDefsRel) of
-                                                   { _lhsOmodDefsRel ->
+                                                (case (False) of
+                                                 { _lhsOlamBodyIsFreeOfLam ->
+                                                 (case (_exprImodDefsRel `Rel.union` _dfltImodDefsRel) of
+                                                  { _lhsOmodDefsRel ->
+                                                  (case (_exprInotYetTransformed `Set.union` _dfltInotYetTransformed) of
+                                                   { _lhsOnotYetTransformed ->
                                                    (case (_exprIundefNmMp `undefmpUnion` _altsIundefNmMp `undefmpUnion` _dfltIundefNmMp) of
                                                     { _lhsOundefNmMp ->
                                                     (case (ExprIsOther) of
                                                      { _whatBelow ->
                                                      (case (_whatBelow) of
                                                       { _lhsOwhatBelow ->
-                                                      ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                                      ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CExpr_CaseAltFail :: CaseAltFailReason ->
                          T_CExpr ->
                          T_CExpr
@@ -1873,24 +1922,24 @@
                   (case (_lhsIdataGam) of
                    { _errorExprOdataGam ->
                    (case (errorExpr_ _errorExprOdataGam _errorExprOevalCtx _errorExprOisTopApp _errorExprOisTopTup _errorExprOlev _errorExprOopts _errorExprOwhatAbove) of
-                    { ( _errorExprIerrs,_errorExprIhasMain,_errorExprIisFreeOfLam,_errorExprIisLamLifted,_errorExprIlamBodyIsFreeOfLam,_errorExprImodDefsRel,_errorExprIundefNmMp,_errorExprIwhatBelow) ->
+                    { ( _errorExprIerrs,_errorExprIhasMain,_errorExprIisFreeOfLam,_errorExprIlamBodyIsFreeOfLam,_errorExprImodDefsRel,_errorExprInotYetTransformed,_errorExprIundefNmMp,_errorExprIwhatBelow) ->
                         (case (_errorExprIerrs) of
                          { _lhsOerrs ->
                          (case (_errorExprIhasMain) of
                           { _lhsOhasMain ->
                           (case (_errorExprIisFreeOfLam) of
                            { _lhsOisFreeOfLam ->
-                           (case (_errorExprIisLamLifted) of
-                            { _lhsOisLamLifted ->
-                            (case (False) of
-                             { _lhsOlamBodyIsFreeOfLam ->
-                             (case (_errorExprImodDefsRel) of
-                              { _lhsOmodDefsRel ->
+                           (case (False) of
+                            { _lhsOlamBodyIsFreeOfLam ->
+                            (case (_errorExprImodDefsRel) of
+                             { _lhsOmodDefsRel ->
+                             (case (_errorExprInotYetTransformed) of
+                              { _lhsOnotYetTransformed ->
                               (case (_errorExprIundefNmMp) of
                                { _lhsOundefNmMp ->
                                (case (_errorExprIwhatBelow) of
                                 { _lhsOwhatBelow ->
-                                ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CExpr_TupDel :: T_CExpr ->
                     CTag ->
                     HsName ->
@@ -1925,7 +1974,7 @@
                   (case (_lhsIdataGam) of
                    { _offsetOdataGam ->
                    (case (offset_ _offsetOdataGam _offsetOevalCtx _offsetOisTopApp _offsetOisTopTup _offsetOlev _offsetOopts _offsetOwhatAbove) of
-                    { ( _offsetIerrs,_offsetIhasMain,_offsetIisFreeOfLam,_offsetIisLamLifted,_offsetIlamBodyIsFreeOfLam,_offsetImodDefsRel,_offsetIundefNmMp,_offsetIwhatBelow) ->
+                    { ( _offsetIerrs,_offsetIhasMain,_offsetIisFreeOfLam,_offsetIlamBodyIsFreeOfLam,_offsetImodDefsRel,_offsetInotYetTransformed,_offsetIundefNmMp,_offsetIwhatBelow) ->
                         (case (_whatAbove) of
                          { _exprOwhatAbove ->
                          (case (_lhsIopts) of
@@ -1941,26 +1990,26 @@
                               (case (False) of
                                { _exprOisTopTup ->
                                (case (expr_ _exprOdataGam _exprOevalCtx _exprOisTopApp _exprOisTopTup _exprOlev _exprOopts _exprOwhatAbove) of
-                                { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIisLamLifted,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprIundefNmMp,_exprIwhatBelow) ->
+                                { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprInotYetTransformed,_exprIundefNmMp,_exprIwhatBelow) ->
                                     (case (_exprIerrs `Seq.union` _offsetIerrs) of
                                      { _lhsOerrs ->
                                      (case (_exprIhasMain || _offsetIhasMain) of
                                       { _lhsOhasMain ->
                                       (case (_exprIisFreeOfLam && _offsetIisFreeOfLam) of
                                        { _lhsOisFreeOfLam ->
-                                       (case (_exprIisLamLifted && _offsetIisLamLifted) of
-                                        { _lhsOisLamLifted ->
-                                        (case (False) of
-                                         { _lhsOlamBodyIsFreeOfLam ->
-                                         (case (_exprImodDefsRel `Rel.union` _offsetImodDefsRel) of
-                                          { _lhsOmodDefsRel ->
+                                       (case (False) of
+                                        { _lhsOlamBodyIsFreeOfLam ->
+                                        (case (_exprImodDefsRel `Rel.union` _offsetImodDefsRel) of
+                                         { _lhsOmodDefsRel ->
+                                         (case (_exprInotYetTransformed `Set.union` _offsetInotYetTransformed) of
+                                          { _lhsOnotYetTransformed ->
                                           (case (_exprIundefNmMp `undefmpUnion` _offsetIundefNmMp) of
                                            { _lhsOundefNmMp ->
                                            (case (ExprIsOther) of
                                             { _whatBelow ->
                                             (case (_whatBelow) of
                                              { _lhsOwhatBelow ->
-                                             ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                             ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CExpr_TupIns :: T_CExpr ->
                     CTag ->
                     HsName ->
@@ -1996,7 +2045,7 @@
                   (case (_lhsIdataGam) of
                    { _fldExprOdataGam ->
                    (case (fldExpr_ _fldExprOdataGam _fldExprOevalCtx _fldExprOisTopApp _fldExprOisTopTup _fldExprOlev _fldExprOopts _fldExprOwhatAbove) of
-                    { ( _fldExprIerrs,_fldExprIhasMain,_fldExprIisFreeOfLam,_fldExprIisLamLifted,_fldExprIlamBodyIsFreeOfLam,_fldExprImodDefsRel,_fldExprIundefNmMp,_fldExprIwhatBelow) ->
+                    { ( _fldExprIerrs,_fldExprIhasMain,_fldExprIisFreeOfLam,_fldExprIlamBodyIsFreeOfLam,_fldExprImodDefsRel,_fldExprInotYetTransformed,_fldExprIundefNmMp,_fldExprIwhatBelow) ->
                         (case (_whatAbove) of
                          { _offsetOwhatAbove ->
                          (case (_lhsIopts) of
@@ -2012,7 +2061,7 @@
                               (case (_lhsIdataGam) of
                                { _offsetOdataGam ->
                                (case (offset_ _offsetOdataGam _offsetOevalCtx _offsetOisTopApp _offsetOisTopTup _offsetOlev _offsetOopts _offsetOwhatAbove) of
-                                { ( _offsetIerrs,_offsetIhasMain,_offsetIisFreeOfLam,_offsetIisLamLifted,_offsetIlamBodyIsFreeOfLam,_offsetImodDefsRel,_offsetIundefNmMp,_offsetIwhatBelow) ->
+                                { ( _offsetIerrs,_offsetIhasMain,_offsetIisFreeOfLam,_offsetIlamBodyIsFreeOfLam,_offsetImodDefsRel,_offsetInotYetTransformed,_offsetIundefNmMp,_offsetIwhatBelow) ->
                                     (case (_whatAbove) of
                                      { _exprOwhatAbove ->
                                      (case (_lhsIopts) of
@@ -2028,26 +2077,26 @@
                                           (case (False) of
                                            { _exprOisTopTup ->
                                            (case (expr_ _exprOdataGam _exprOevalCtx _exprOisTopApp _exprOisTopTup _exprOlev _exprOopts _exprOwhatAbove) of
-                                            { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIisLamLifted,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprIundefNmMp,_exprIwhatBelow) ->
+                                            { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprInotYetTransformed,_exprIundefNmMp,_exprIwhatBelow) ->
                                                 (case (_exprIerrs `Seq.union` _offsetIerrs `Seq.union` _fldExprIerrs) of
                                                  { _lhsOerrs ->
                                                  (case (_exprIhasMain || _offsetIhasMain || _fldExprIhasMain) of
                                                   { _lhsOhasMain ->
                                                   (case (_exprIisFreeOfLam && _offsetIisFreeOfLam && _fldExprIisFreeOfLam) of
                                                    { _lhsOisFreeOfLam ->
-                                                   (case (_exprIisLamLifted && _offsetIisLamLifted && _fldExprIisLamLifted) of
-                                                    { _lhsOisLamLifted ->
-                                                    (case (False) of
-                                                     { _lhsOlamBodyIsFreeOfLam ->
-                                                     (case (_exprImodDefsRel `Rel.union` _offsetImodDefsRel `Rel.union` _fldExprImodDefsRel) of
-                                                      { _lhsOmodDefsRel ->
+                                                   (case (False) of
+                                                    { _lhsOlamBodyIsFreeOfLam ->
+                                                    (case (_exprImodDefsRel `Rel.union` _offsetImodDefsRel `Rel.union` _fldExprImodDefsRel) of
+                                                     { _lhsOmodDefsRel ->
+                                                     (case (_exprInotYetTransformed `Set.union` _offsetInotYetTransformed `Set.union` _fldExprInotYetTransformed) of
+                                                      { _lhsOnotYetTransformed ->
                                                       (case (_exprIundefNmMp `undefmpUnion` _offsetIundefNmMp `undefmpUnion` _fldExprIundefNmMp) of
                                                        { _lhsOundefNmMp ->
                                                        (case (ExprIsOther) of
                                                         { _whatBelow ->
                                                         (case (_whatBelow) of
                                                          { _lhsOwhatBelow ->
-                                                         ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                                         ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CExpr_TupUpd :: T_CExpr ->
                     CTag ->
                     HsName ->
@@ -2083,7 +2132,7 @@
                   (case (_lhsIdataGam) of
                    { _fldExprOdataGam ->
                    (case (fldExpr_ _fldExprOdataGam _fldExprOevalCtx _fldExprOisTopApp _fldExprOisTopTup _fldExprOlev _fldExprOopts _fldExprOwhatAbove) of
-                    { ( _fldExprIerrs,_fldExprIhasMain,_fldExprIisFreeOfLam,_fldExprIisLamLifted,_fldExprIlamBodyIsFreeOfLam,_fldExprImodDefsRel,_fldExprIundefNmMp,_fldExprIwhatBelow) ->
+                    { ( _fldExprIerrs,_fldExprIhasMain,_fldExprIisFreeOfLam,_fldExprIlamBodyIsFreeOfLam,_fldExprImodDefsRel,_fldExprInotYetTransformed,_fldExprIundefNmMp,_fldExprIwhatBelow) ->
                         (case (_whatAbove) of
                          { _offsetOwhatAbove ->
                          (case (_lhsIopts) of
@@ -2099,7 +2148,7 @@
                               (case (_lhsIdataGam) of
                                { _offsetOdataGam ->
                                (case (offset_ _offsetOdataGam _offsetOevalCtx _offsetOisTopApp _offsetOisTopTup _offsetOlev _offsetOopts _offsetOwhatAbove) of
-                                { ( _offsetIerrs,_offsetIhasMain,_offsetIisFreeOfLam,_offsetIisLamLifted,_offsetIlamBodyIsFreeOfLam,_offsetImodDefsRel,_offsetIundefNmMp,_offsetIwhatBelow) ->
+                                { ( _offsetIerrs,_offsetIhasMain,_offsetIisFreeOfLam,_offsetIlamBodyIsFreeOfLam,_offsetImodDefsRel,_offsetInotYetTransformed,_offsetIundefNmMp,_offsetIwhatBelow) ->
                                     (case (_whatAbove) of
                                      { _exprOwhatAbove ->
                                      (case (_lhsIopts) of
@@ -2115,26 +2164,26 @@
                                           (case (False) of
                                            { _exprOisTopTup ->
                                            (case (expr_ _exprOdataGam _exprOevalCtx _exprOisTopApp _exprOisTopTup _exprOlev _exprOopts _exprOwhatAbove) of
-                                            { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIisLamLifted,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprIundefNmMp,_exprIwhatBelow) ->
+                                            { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprInotYetTransformed,_exprIundefNmMp,_exprIwhatBelow) ->
                                                 (case (_exprIerrs `Seq.union` _offsetIerrs `Seq.union` _fldExprIerrs) of
                                                  { _lhsOerrs ->
                                                  (case (_exprIhasMain || _offsetIhasMain || _fldExprIhasMain) of
                                                   { _lhsOhasMain ->
                                                   (case (_exprIisFreeOfLam && _offsetIisFreeOfLam && _fldExprIisFreeOfLam) of
                                                    { _lhsOisFreeOfLam ->
-                                                   (case (_exprIisLamLifted && _offsetIisLamLifted && _fldExprIisLamLifted) of
-                                                    { _lhsOisLamLifted ->
-                                                    (case (False) of
-                                                     { _lhsOlamBodyIsFreeOfLam ->
-                                                     (case (_exprImodDefsRel `Rel.union` _offsetImodDefsRel `Rel.union` _fldExprImodDefsRel) of
-                                                      { _lhsOmodDefsRel ->
+                                                   (case (False) of
+                                                    { _lhsOlamBodyIsFreeOfLam ->
+                                                    (case (_exprImodDefsRel `Rel.union` _offsetImodDefsRel `Rel.union` _fldExprImodDefsRel) of
+                                                     { _lhsOmodDefsRel ->
+                                                     (case (_exprInotYetTransformed `Set.union` _offsetInotYetTransformed `Set.union` _fldExprInotYetTransformed) of
+                                                      { _lhsOnotYetTransformed ->
                                                       (case (_exprIundefNmMp `undefmpUnion` _offsetIundefNmMp `undefmpUnion` _fldExprIundefNmMp) of
                                                        { _lhsOundefNmMp ->
                                                        (case (ExprIsOther) of
                                                         { _whatBelow ->
                                                         (case (_whatBelow) of
                                                          { _lhsOwhatBelow ->
-                                                         ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                                         ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CExpr_FFI :: FFIWay ->
                  String ->
                  ForeignEnt ->
@@ -2154,19 +2203,19 @@
            { _lhsOhasMain ->
            (case (True) of
             { _lhsOisFreeOfLam ->
-            (case (True) of
-             { _lhsOisLamLifted ->
-             (case (False) of
-              { _lhsOlamBodyIsFreeOfLam ->
-              (case (Rel.empty) of
-               { _lhsOmodDefsRel ->
+            (case (False) of
+             { _lhsOlamBodyIsFreeOfLam ->
+             (case (Rel.empty) of
+              { _lhsOmodDefsRel ->
+              (case (Set.empty) of
+               { _lhsOnotYetTransformed ->
                (case (Map.empty) of
                 { _lhsOundefNmMp ->
                 (case (ExprIsFFI) of
                  { _whatBelow ->
                  (case (_whatBelow) of
                   { _lhsOwhatBelow ->
-                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
+                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
 sem_CExpr_Dbg :: String ->
                  T_CExpr
 sem_CExpr_Dbg info_ =
@@ -2183,19 +2232,19 @@
            { _lhsOhasMain ->
            (case (True) of
             { _lhsOisFreeOfLam ->
-            (case (True) of
-             { _lhsOisLamLifted ->
-             (case (False) of
-              { _lhsOlamBodyIsFreeOfLam ->
-              (case (Rel.empty) of
-               { _lhsOmodDefsRel ->
+            (case (False) of
+             { _lhsOlamBodyIsFreeOfLam ->
+             (case (Rel.empty) of
+              { _lhsOmodDefsRel ->
+              (case (Set.empty) of
+               { _lhsOnotYetTransformed ->
                (case (Map.empty) of
                 { _lhsOundefNmMp ->
                 (case (ExprIsOther) of
                  { _whatBelow ->
                  (case (_whatBelow) of
                   { _lhsOwhatBelow ->
-                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
+                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
 sem_CExpr_Hole :: UID ->
                   T_CExpr
 sem_CExpr_Hole uid_ =
@@ -2212,19 +2261,19 @@
            { _lhsOhasMain ->
            (case (True) of
             { _lhsOisFreeOfLam ->
-            (case (True) of
-             { _lhsOisLamLifted ->
-             (case (False) of
-              { _lhsOlamBodyIsFreeOfLam ->
-              (case (Rel.empty) of
-               { _lhsOmodDefsRel ->
+            (case (False) of
+             { _lhsOlamBodyIsFreeOfLam ->
+             (case (Rel.empty) of
+              { _lhsOmodDefsRel ->
+              (case (Set.empty) of
+               { _lhsOnotYetTransformed ->
                (case (Map.empty) of
                 { _lhsOundefNmMp ->
                 (case (ExprIsOther) of
                  { _whatBelow ->
                  (case (_whatBelow) of
                   { _lhsOwhatBelow ->
-                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
+                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
 sem_CExpr_HoleLet :: UID ->
                      T_CExpr ->
                      T_CExpr
@@ -2257,26 +2306,26 @@
                   (case (_lhsIdataGam) of
                    { _bodyOdataGam ->
                    (case (body_ _bodyOdataGam _bodyOevalCtx _bodyOisTopApp _bodyOisTopTup _bodyOlev _bodyOopts _bodyOwhatAbove) of
-                    { ( _bodyIerrs,_bodyIhasMain,_bodyIisFreeOfLam,_bodyIisLamLifted,_bodyIlamBodyIsFreeOfLam,_bodyImodDefsRel,_bodyIundefNmMp,_bodyIwhatBelow) ->
+                    { ( _bodyIerrs,_bodyIhasMain,_bodyIisFreeOfLam,_bodyIlamBodyIsFreeOfLam,_bodyImodDefsRel,_bodyInotYetTransformed,_bodyIundefNmMp,_bodyIwhatBelow) ->
                         (case (_bodyIerrs) of
                          { _lhsOerrs ->
                          (case (_bodyIhasMain) of
                           { _lhsOhasMain ->
                           (case (_bodyIisFreeOfLam) of
                            { _lhsOisFreeOfLam ->
-                           (case (_bodyIisLamLifted) of
-                            { _lhsOisLamLifted ->
-                            (case (False) of
-                             { _lhsOlamBodyIsFreeOfLam ->
-                             (case (_bodyImodDefsRel) of
-                              { _lhsOmodDefsRel ->
+                           (case (False) of
+                            { _lhsOlamBodyIsFreeOfLam ->
+                            (case (_bodyImodDefsRel) of
+                             { _lhsOmodDefsRel ->
+                             (case (_bodyInotYetTransformed) of
+                              { _lhsOnotYetTransformed ->
                               (case (_bodyIundefNmMp) of
                                { _lhsOundefNmMp ->
                                (case (ExprIsOther) of
                                 { _whatBelow ->
                                 (case (_whatBelow) of
                                  { _lhsOwhatBelow ->
-                                 ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                 ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CExpr_CoeArg :: T_CExpr
 sem_CExpr_CoeArg =
     (\ _lhsIdataGam
@@ -2292,19 +2341,19 @@
            { _lhsOhasMain ->
            (case (True) of
             { _lhsOisFreeOfLam ->
-            (case (True) of
-             { _lhsOisLamLifted ->
-             (case (False) of
-              { _lhsOlamBodyIsFreeOfLam ->
-              (case (Rel.empty) of
-               { _lhsOmodDefsRel ->
+            (case (False) of
+             { _lhsOlamBodyIsFreeOfLam ->
+             (case (Rel.empty) of
+              { _lhsOmodDefsRel ->
+              (case (Set.empty) of
+               { _lhsOnotYetTransformed ->
                (case (Map.empty) of
                 { _lhsOundefNmMp ->
                 (case (ExprIsOther) of
                  { _whatBelow ->
                  (case (_whatBelow) of
                   { _lhsOwhatBelow ->
-                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
+                  ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }))
 sem_CExpr_ImplsApp :: T_CExpr ->
                       ImplsVarId ->
                       T_CExpr
@@ -2337,26 +2386,26 @@
                   (case (_lhsIdataGam) of
                    { _funcOdataGam ->
                    (case (func_ _funcOdataGam _funcOevalCtx _funcOisTopApp _funcOisTopTup _funcOlev _funcOopts _funcOwhatAbove) of
-                    { ( _funcIerrs,_funcIhasMain,_funcIisFreeOfLam,_funcIisLamLifted,_funcIlamBodyIsFreeOfLam,_funcImodDefsRel,_funcIundefNmMp,_funcIwhatBelow) ->
+                    { ( _funcIerrs,_funcIhasMain,_funcIisFreeOfLam,_funcIlamBodyIsFreeOfLam,_funcImodDefsRel,_funcInotYetTransformed,_funcIundefNmMp,_funcIwhatBelow) ->
                         (case (_funcIerrs) of
                          { _lhsOerrs ->
                          (case (_funcIhasMain) of
                           { _lhsOhasMain ->
                           (case (_funcIisFreeOfLam) of
                            { _lhsOisFreeOfLam ->
-                           (case (_funcIisLamLifted) of
-                            { _lhsOisLamLifted ->
-                            (case (False) of
-                             { _lhsOlamBodyIsFreeOfLam ->
-                             (case (_funcImodDefsRel) of
-                              { _lhsOmodDefsRel ->
+                           (case (False) of
+                            { _lhsOlamBodyIsFreeOfLam ->
+                            (case (_funcImodDefsRel) of
+                             { _lhsOmodDefsRel ->
+                             (case (_funcInotYetTransformed) of
+                              { _lhsOnotYetTransformed ->
                               (case (_funcIundefNmMp) of
                                { _lhsOundefNmMp ->
                                (case (ExprIsOther) of
                                 { _whatBelow ->
                                 (case (_whatBelow) of
                                  { _lhsOwhatBelow ->
-                                 ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                 ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CExpr_ImplsLam :: ImplsVarId ->
                       T_CExpr ->
                       T_CExpr
@@ -2389,26 +2438,26 @@
                   (case (_lhsIdataGam) of
                    { _bodyOdataGam ->
                    (case (body_ _bodyOdataGam _bodyOevalCtx _bodyOisTopApp _bodyOisTopTup _bodyOlev _bodyOopts _bodyOwhatAbove) of
-                    { ( _bodyIerrs,_bodyIhasMain,_bodyIisFreeOfLam,_bodyIisLamLifted,_bodyIlamBodyIsFreeOfLam,_bodyImodDefsRel,_bodyIundefNmMp,_bodyIwhatBelow) ->
+                    { ( _bodyIerrs,_bodyIhasMain,_bodyIisFreeOfLam,_bodyIlamBodyIsFreeOfLam,_bodyImodDefsRel,_bodyInotYetTransformed,_bodyIundefNmMp,_bodyIwhatBelow) ->
                         (case (_bodyIerrs) of
                          { _lhsOerrs ->
                          (case (_bodyIhasMain) of
                           { _lhsOhasMain ->
                           (case (_bodyIisFreeOfLam) of
                            { _lhsOisFreeOfLam ->
-                           (case (_bodyIisLamLifted) of
-                            { _lhsOisLamLifted ->
-                            (case (False) of
-                             { _lhsOlamBodyIsFreeOfLam ->
-                             (case (_bodyImodDefsRel) of
-                              { _lhsOmodDefsRel ->
+                           (case (False) of
+                            { _lhsOlamBodyIsFreeOfLam ->
+                            (case (_bodyImodDefsRel) of
+                             { _lhsOmodDefsRel ->
+                             (case (_bodyInotYetTransformed) of
+                              { _lhsOnotYetTransformed ->
                               (case (_bodyIundefNmMp) of
                                { _lhsOundefNmMp ->
                                (case (ExprIsOther) of
                                 { _whatBelow ->
                                 (case (_whatBelow) of
                                  { _lhsOwhatBelow ->
-                                 ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                 ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 sem_CExpr_Ann :: T_CExprAnn ->
                  T_CExpr ->
                  T_CExpr
@@ -2435,7 +2484,7 @@
                (case (_lhsIdataGam) of
                 { _exprOdataGam ->
                 (case (expr_ _exprOdataGam _exprOevalCtx _exprOisTopApp _exprOisTopTup _exprOlev _exprOopts _exprOwhatAbove) of
-                 { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIisLamLifted,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprIundefNmMp,_exprIwhatBelow) ->
+                 { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprInotYetTransformed,_exprIundefNmMp,_exprIwhatBelow) ->
                      (case (_lhsIopts) of
                       { _annOopts ->
                       (case (_lhsIlev) of
@@ -2450,17 +2499,17 @@
                                { _lhsOhasMain ->
                                (case (_annIisFreeOfLam && _exprIisFreeOfLam) of
                                 { _lhsOisFreeOfLam ->
-                                (case (_exprIisLamLifted) of
-                                 { _lhsOisLamLifted ->
-                                 (case (False) of
-                                  { _lhsOlamBodyIsFreeOfLam ->
-                                  (case (_exprImodDefsRel) of
-                                   { _lhsOmodDefsRel ->
+                                (case (False) of
+                                 { _lhsOlamBodyIsFreeOfLam ->
+                                 (case (_exprImodDefsRel) of
+                                  { _lhsOmodDefsRel ->
+                                  (case (_exprInotYetTransformed) of
+                                   { _lhsOnotYetTransformed ->
                                    (case (_annIundefNmMp `undefmpUnion` _exprIundefNmMp) of
                                     { _lhsOundefNmMp ->
                                     (case (_exprIwhatBelow) of
                                      { _lhsOwhatBelow ->
-                                     ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                     ( _lhsOerrs,_lhsOhasMain,_lhsOisFreeOfLam,_lhsOlamBodyIsFreeOfLam,_lhsOmodDefsRel,_lhsOnotYetTransformed,_lhsOundefNmMp,_lhsOwhatBelow) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 -- CExprAnn ----------------------------------------------------
 {-
    visit 0:
@@ -2866,8 +2915,8 @@
          hasMain              : Bool
          impModNmL            : [HsName]
          isFreeOfLam          : Bool
-         isLamLifted          : Bool
          mod                  : Mod
+         notYetTransformed    : NotYetTransformedS
          realModuleNm         : HsName
          undefNmMp            : UndefNmMp
    alternatives:
@@ -2892,7 +2941,7 @@
                  Int ->
                  HsName ->
                  EHCOpts ->
-                 ( ErrSq,DataGam,Bool,([HsName]),Bool,Bool,Mod,HsName,UndefNmMp)
+                 ( ErrSq,DataGam,Bool,([HsName]),Bool,Mod,NotYetTransformedS,HsName,UndefNmMp)
 sem_CModule_Mod :: HsName ->
                    T_CExportL ->
                    T_CImportL ->
@@ -2925,7 +2974,7 @@
                       (case (True) of
                        { _exprOisTopApp ->
                        (case (expr_ _exprOdataGam _exprOevalCtx _exprOisTopApp _exprOisTopTup _exprOlev _exprOopts _exprOwhatAbove) of
-                        { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIisLamLifted,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprIundefNmMp,_exprIwhatBelow) ->
+                        { ( _exprIerrs,_exprIhasMain,_exprIisFreeOfLam,_exprIlamBodyIsFreeOfLam,_exprImodDefsRel,_exprInotYetTransformed,_exprIundefNmMp,_exprIwhatBelow) ->
                             (case (imports_) of
                              { ( _importsIerrs,_importsIimpModNmL,_importsImodImpL,_importsIundefNmMp) ->
                                  (case (exports_) of
@@ -2940,17 +2989,17 @@
                                           { _lhsOimpModNmL ->
                                           (case (_exprIisFreeOfLam) of
                                            { _lhsOisFreeOfLam ->
-                                           (case (_exprIisLamLifted) of
-                                            { _lhsOisLamLifted ->
-                                            (case (moduleNm_) of
-                                             { _realModuleNm ->
-                                             (case (Mod _realModuleNm                     (Just _realModuleNm) (Just _exportsImodExpL) _importsImodImpL _exprImodDefsRel Rel.empty []) of
-                                              { _lhsOmod ->
+                                           (case (moduleNm_) of
+                                            { _realModuleNm ->
+                                            (case (Mod _realModuleNm                     (Just _realModuleNm) (Just _exportsImodExpL) _importsImodImpL _exprImodDefsRel Rel.empty []) of
+                                             { _lhsOmod ->
+                                             (case (_exprInotYetTransformed) of
+                                              { _lhsOnotYetTransformed ->
                                               (case (_realModuleNm) of
                                                { _lhsOrealModuleNm ->
                                                (case (_exportsIundefNmMp `undefmpUnion` _importsIundefNmMp `undefmpUnion` _declMetasIundefNmMp `undefmpUnion` _exprIundefNmMp) of
                                                 { _lhsOundefNmMp ->
-                                                ( _lhsOerrs,_lhsOgathDataGam,_lhsOhasMain,_lhsOimpModNmL,_lhsOisFreeOfLam,_lhsOisLamLifted,_lhsOmod,_lhsOrealModuleNm,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                                ( _lhsOerrs,_lhsOgathDataGam,_lhsOhasMain,_lhsOimpModNmL,_lhsOisFreeOfLam,_lhsOmod,_lhsOnotYetTransformed,_lhsOrealModuleNm,_lhsOundefNmMp) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
 -- CPat --------------------------------------------------------
 {-
    visit 0:
@@ -3150,7 +3199,7 @@
                       (case (acoreBindcategPlain) of
                        { _bindOletBindingsCateg ->
                        (case (bind_ _bindOdataGam _bindOevalCtx _bindOisGlobal _bindOletBindingsCateg _bindOlev _bindOopts) of
-                        { ( _bindIerrs,_bindIhasMain,_bindIisFreeOfLam,_bindIisLamLifted,_bindImodDefsRel,_bindInm,_bindIundefNmMp) ->
+                        { ( _bindIerrs,_bindIhasMain,_bindIisFreeOfLam,_bindImodDefsRel,_bindInm,_bindInotYetTransformed,_bindIundefNmMp) ->
                             (case (ExprIsOther) of
                              { _whatAbove ->
                              (case (_whatAbove) of
@@ -3168,7 +3217,7 @@
                                    (case (True) of
                                     { _offsetOisTopApp ->
                                     (case (offset_ _offsetOdataGam _offsetOevalCtx _offsetOisTopApp _offsetOisTopTup _offsetOlev _offsetOopts _offsetOwhatAbove) of
-                                     { ( _offsetIerrs,_offsetIhasMain,_offsetIisFreeOfLam,_offsetIisLamLifted,_offsetIlamBodyIsFreeOfLam,_offsetImodDefsRel,_offsetIundefNmMp,_offsetIwhatBelow) ->
+                                     { ( _offsetIerrs,_offsetIhasMain,_offsetIisFreeOfLam,_offsetIlamBodyIsFreeOfLam,_offsetImodDefsRel,_offsetInotYetTransformed,_offsetIundefNmMp,_offsetIwhatBelow) ->
                                          (case (_offsetIerrs `Seq.union` _bindIerrs `Seq.union` _fldAnnsIerrs) of
                                           { _lhsOerrs ->
                                           (case (_bindInm) of
@@ -3319,8 +3368,8 @@
          gathDataGam          : DataGam
          hasMain              : Bool
          impModNmL            : [HsName]
-         isLamLifted          : Bool
          mod                  : Mod
+         notYetTransformed    : NotYetTransformedS
          realModuleNm         : HsName
    alternatives:
       alternative AGItf:
@@ -3335,15 +3384,15 @@
 type T_CodeAGItf = DataGam ->
                    HsName ->
                    EHCOpts ->
-                   ( ErrSq,DataGam,Bool,([HsName]),Bool,Mod,HsName)
+                   ( ErrSq,DataGam,Bool,([HsName]),Mod,NotYetTransformedS,HsName)
 data Inh_CodeAGItf = Inh_CodeAGItf {dataGam_Inh_CodeAGItf :: !(DataGam),moduleNm_Inh_CodeAGItf :: !(HsName),opts_Inh_CodeAGItf :: !(EHCOpts)}
-data Syn_CodeAGItf = Syn_CodeAGItf {errs_Syn_CodeAGItf :: !(ErrSq),gathDataGam_Syn_CodeAGItf :: !(DataGam),hasMain_Syn_CodeAGItf :: !(Bool),impModNmL_Syn_CodeAGItf :: !(([HsName])),isLamLifted_Syn_CodeAGItf :: !(Bool),mod_Syn_CodeAGItf :: !(Mod),realModuleNm_Syn_CodeAGItf :: !(HsName)}
+data Syn_CodeAGItf = Syn_CodeAGItf {errs_Syn_CodeAGItf :: !(ErrSq),gathDataGam_Syn_CodeAGItf :: !(DataGam),hasMain_Syn_CodeAGItf :: !(Bool),impModNmL_Syn_CodeAGItf :: !(([HsName])),mod_Syn_CodeAGItf :: !(Mod),notYetTransformed_Syn_CodeAGItf :: !(NotYetTransformedS),realModuleNm_Syn_CodeAGItf :: !(HsName)}
 wrap_CodeAGItf :: T_CodeAGItf ->
                   Inh_CodeAGItf ->
                   Syn_CodeAGItf
 wrap_CodeAGItf sem (Inh_CodeAGItf _lhsIdataGam _lhsImoduleNm _lhsIopts) =
-    (let ( _lhsOerrs,_lhsOgathDataGam,_lhsOhasMain,_lhsOimpModNmL,_lhsOisLamLifted,_lhsOmod,_lhsOrealModuleNm) = sem _lhsIdataGam _lhsImoduleNm _lhsIopts
-     in  (Syn_CodeAGItf _lhsOerrs _lhsOgathDataGam _lhsOhasMain _lhsOimpModNmL _lhsOisLamLifted _lhsOmod _lhsOrealModuleNm))
+    (let ( _lhsOerrs,_lhsOgathDataGam,_lhsOhasMain,_lhsOimpModNmL,_lhsOmod,_lhsOnotYetTransformed,_lhsOrealModuleNm) = sem _lhsIdataGam _lhsImoduleNm _lhsIopts
+     in  (Syn_CodeAGItf _lhsOerrs _lhsOgathDataGam _lhsOhasMain _lhsOimpModNmL _lhsOmod _lhsOnotYetTransformed _lhsOrealModuleNm))
 sem_CodeAGItf_AGItf :: T_CModule ->
                        T_CodeAGItf
 sem_CodeAGItf_AGItf module_ =
@@ -3359,7 +3408,7 @@
             (case (cLevModule) of
              { _moduleOlev ->
              (case (module_ _moduleOdataGam _moduleOlev _moduleOmoduleNm _moduleOopts) of
-              { ( _moduleIerrs,_moduleIgathDataGam,_moduleIhasMain,_moduleIimpModNmL,_moduleIisFreeOfLam,_moduleIisLamLifted,_moduleImod,_moduleIrealModuleNm,_moduleIundefNmMp) ->
+              { ( _moduleIerrs,_moduleIgathDataGam,_moduleIhasMain,_moduleIimpModNmL,_moduleIisFreeOfLam,_moduleImod,_moduleInotYetTransformed,_moduleIrealModuleNm,_moduleIundefNmMp) ->
                   (case (_moduleIerrs) of
                    { _lhsOerrs ->
                    (case (_moduleIgathDataGam) of
@@ -3368,10 +3417,10 @@
                      { _lhsOhasMain ->
                      (case (_moduleIimpModNmL) of
                       { _lhsOimpModNmL ->
-                      (case (_moduleIisLamLifted) of
-                       { _lhsOisLamLifted ->
-                       (case (_moduleImod) of
-                        { _lhsOmod ->
+                      (case (_moduleImod) of
+                       { _lhsOmod ->
+                       (case (_moduleInotYetTransformed) of
+                        { _lhsOnotYetTransformed ->
                         (case (_moduleIrealModuleNm) of
                          { _lhsOrealModuleNm ->
-                         ( _lhsOerrs,_lhsOgathDataGam,_lhsOhasMain,_lhsOimpModNmL,_lhsOisLamLifted,_lhsOmod,_lhsOrealModuleNm) }) }) }) }) }) }) }) }) }) }) }) }))
+                         ( _lhsOerrs,_lhsOgathDataGam,_lhsOhasMain,_lhsOimpModNmL,_lhsOmod,_lhsOnotYetTransformed,_lhsOrealModuleNm) }) }) }) }) }) }) }) }) }) }) }) }))
diff --git a/src/UHC/Light/Compiler/Core/ToCoreRun.hs b/src/UHC/Light/Compiler/Core/ToCoreRun.hs
--- a/src/UHC/Light/Compiler/Core/ToCoreRun.hs
+++ b/src/UHC/Light/Compiler/Core/ToCoreRun.hs
@@ -95,7 +95,7 @@
 
 -- | Construct application
 mkApp :: CR.Exp -> CR.CRArray CR.Exp -> CR.Exp
-mkApp f as = CR.Exp_App (CR.Exp_Ret $ CR.Exp_Force f) as
+mkApp f as = CR.Exp_App ({- CR.Exp_Ret $ -} CR.Exp_Force f) as
 
 
 
@@ -803,8 +803,6 @@
             local refOffsetExpr : _
          visit 1:
             local tailCtx     : _
-            local isToBeReturned : _
-            local creMkReturned : _
             local nm2refNew   : _
             local isToBeALam  : _
             local stackDepthMaxThunked : _
@@ -834,8 +832,6 @@
             local refOffsetExpr : _
          visit 1:
             local tailCtx     : _
-            local isToBeReturned : _
-            local creMkReturned : _
             local nm2refNew   : _
             local isToBeALam  : _
             local stackDepthMaxThunked : _
@@ -955,50 +951,44 @@
                                                      { _exprOtailCtx ->
                                                      (case (_lhsInm2ref) of
                                                       { _exprOnm2ref ->
-                                                      (case (case _lhsIevalCtx of
-                                                                   EvalCtx_Eval -> True
-                                                                   _            -> False) of
-                                                       { _isToBeReturned ->
-                                                       (case (if _isToBeReturned then CR.Exp_Ret else id) of
-                                                        { _creMkReturned ->
-                                                        (case (if _isToBeThunked then _exprInm2refGath else Map.empty) of
-                                                         { _nm2refNew ->
-                                                         (case (_isToBeThunked || whatExprIsLam _exprIwhatBelow) of
-                                                          { _isToBeALam ->
-                                                          (case (if _isToBeALam then 0                 else _lhsIstackDepth) of
-                                                           { _exprOstackDepth ->
-                                                           (case (_lhsIopts) of
-                                                            { _exprOopts ->
-                                                            (case (_lhsIevalCtx) of
-                                                             { _exprOevalCtx ->
-                                                             (case (True) of
-                                                              { _exprOisTopTup ->
-                                                              (case (True) of
-                                                               { _exprOisTopApp ->
-                                                               (case (expr_2 _exprOevalCtx _exprOisTopApp _exprOisTopTup _exprOnm2ref _exprOopts _exprOstackDepth _exprOtailCtx) of
-                                                                { ( _exprIappFunKind,_exprIcrb,_exprIcre,_exprIcreAppArgL,_exprIcreAppFun,_exprIcreLamArgL,_exprIcreLamBody,_exprIcrse,_exprImbFFIApp,_exprImbLam,_exprImbVar,_exprIrefOffsetMax,_exprIstackDepth,_exprIstackDepthMax) ->
-                                                                    (case (max _exprIstackDepth _exprIstackDepthMax) of
-                                                                     { _stackDepthMaxThunked ->
-                                                                     (case (case _toBe of
-                                                                                ToBe_Forced   -> tailrec _tailCtx . CR.Exp_Force
-                                                                                ToBe_Thunked  -> CR.Exp_Lam (Just _lhsInm) _lev 0 (_exprIrefOffsetMax) (_stackDepthMaxThunked) (CR.nm2RefMpInverse _nm2refNew)
-                                                                                ToBe_LeftAsIs -> id) of
-                                                                      { _creMkForce ->
-                                                                      (case (_creMkReturned $ _creMkForce _exprIcre) of
-                                                                       { _creBind ->
-                                                                       (case ([( _lhsInm, _creBind )]) of
-                                                                        { _crb ->
-                                                                        (case (_crb) of
-                                                                         { _lhsOcrb ->
-                                                                         (case (if _isToBeThunked then _lhsIrefOffset else max _exprIrefOffset _exprIrefOffsetMax) of
-                                                                          { _lhsOrefOffsetMax ->
-                                                                          (case (if _isToBeALam then _lhsIstackDepth+1 else _exprIstackDepth) of
-                                                                           { _stackDepthExpr ->
-                                                                           (case (_stackDepthExpr) of
-                                                                            { _lhsOstackDepth ->
-                                                                            (case (if _isToBeALam then _stackDepthExpr else _stackDepthMaxThunked) of
-                                                                             { _lhsOstackDepthMax ->
-                                                                             ( _lhsOcrb,_lhsOrefOffsetMax,_lhsOstackDepth,_lhsOstackDepthMax) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                                      (case (if _isToBeThunked then _exprInm2refGath else Map.empty) of
+                                                       { _nm2refNew ->
+                                                       (case (_isToBeThunked || whatExprIsLam _exprIwhatBelow) of
+                                                        { _isToBeALam ->
+                                                        (case (if _isToBeALam then 0                 else _lhsIstackDepth) of
+                                                         { _exprOstackDepth ->
+                                                         (case (_lhsIopts) of
+                                                          { _exprOopts ->
+                                                          (case (_lhsIevalCtx) of
+                                                           { _exprOevalCtx ->
+                                                           (case (True) of
+                                                            { _exprOisTopTup ->
+                                                            (case (True) of
+                                                             { _exprOisTopApp ->
+                                                             (case (expr_2 _exprOevalCtx _exprOisTopApp _exprOisTopTup _exprOnm2ref _exprOopts _exprOstackDepth _exprOtailCtx) of
+                                                              { ( _exprIappFunKind,_exprIcrb,_exprIcre,_exprIcreAppArgL,_exprIcreAppFun,_exprIcreLamArgL,_exprIcreLamBody,_exprIcrse,_exprImbFFIApp,_exprImbLam,_exprImbVar,_exprIrefOffsetMax,_exprIstackDepth,_exprIstackDepthMax) ->
+                                                                  (case (max _exprIstackDepth _exprIstackDepthMax) of
+                                                                   { _stackDepthMaxThunked ->
+                                                                   (case (case _toBe of
+                                                                              ToBe_Forced   -> tailrec _tailCtx . CR.Exp_Force
+                                                                              ToBe_Thunked  -> CR.Exp_Lam (Just _lhsInm) _lev 0 (_exprIrefOffsetMax) (_stackDepthMaxThunked) (CR.nm2RefMpInverse _nm2refNew)
+                                                                              ToBe_LeftAsIs -> id) of
+                                                                    { _creMkForce ->
+                                                                    (case (_creMkForce _exprIcre) of
+                                                                     { _creBind ->
+                                                                     (case ([( _lhsInm, _creBind )]) of
+                                                                      { _crb ->
+                                                                      (case (_crb) of
+                                                                       { _lhsOcrb ->
+                                                                       (case (if _isToBeThunked then _lhsIrefOffset else max _exprIrefOffset _exprIrefOffsetMax) of
+                                                                        { _lhsOrefOffsetMax ->
+                                                                        (case (if _isToBeALam then _lhsIstackDepth+1 else _exprIstackDepth) of
+                                                                         { _stackDepthExpr ->
+                                                                         (case (_stackDepthExpr) of
+                                                                          { _lhsOstackDepth ->
+                                                                          (case (if _isToBeALam then _stackDepthExpr else _stackDepthMaxThunked) of
+                                                                           { _lhsOstackDepthMax ->
+                                                                           ( _lhsOcrb,_lhsOrefOffsetMax,_lhsOstackDepth,_lhsOstackDepthMax) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
                                       in  sem_CBound_Bind_1)) of
                                { ( sem_CBound_1) ->
                                ( _lhsOnm2refGath,_lhsOrefOffset,sem_CBound_1) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
@@ -1154,50 +1144,44 @@
                                                      { _exprOtailCtx ->
                                                      (case (_lhsInm2ref) of
                                                       { _exprOnm2ref ->
-                                                      (case (case _lhsIevalCtx of
-                                                                   EvalCtx_Eval -> True
-                                                                   _            -> False) of
-                                                       { _isToBeReturned ->
-                                                       (case (if _isToBeReturned then CR.Exp_Ret else id) of
-                                                        { _creMkReturned ->
-                                                        (case (if _isToBeThunked then _exprInm2refGath else Map.empty) of
-                                                         { _nm2refNew ->
-                                                         (case (_isToBeThunked || whatExprIsLam _exprIwhatBelow) of
-                                                          { _isToBeALam ->
-                                                          (case (if _isToBeALam then 0                 else _lhsIstackDepth) of
-                                                           { _exprOstackDepth ->
-                                                           (case (_lhsIopts) of
-                                                            { _exprOopts ->
-                                                            (case (_lhsIisTopTup) of
-                                                             { _exprOisTopTup ->
-                                                             (case (_lhsIisTopApp) of
-                                                              { _exprOisTopApp ->
-                                                              (case (_lhsIevalCtx) of
-                                                               { _exprOevalCtx ->
-                                                               (case (expr_2 _exprOevalCtx _exprOisTopApp _exprOisTopTup _exprOnm2ref _exprOopts _exprOstackDepth _exprOtailCtx) of
-                                                                { ( _exprIappFunKind,_exprIcrb,_exprIcre,_exprIcreAppArgL,_exprIcreAppFun,_exprIcreLamArgL,_exprIcreLamBody,_exprIcrse,_exprImbFFIApp,_exprImbLam,_exprImbVar,_exprIrefOffsetMax,_exprIstackDepth,_exprIstackDepthMax) ->
-                                                                    (case (max _exprIstackDepth _exprIstackDepthMax) of
-                                                                     { _stackDepthMaxThunked ->
-                                                                     (case (case _toBe of
-                                                                                ToBe_Forced   -> tailrec _tailCtx . CR.Exp_Force
-                                                                                ToBe_Thunked  -> CR.Exp_Lam (Just _lhsInm) _lev 0 (_exprIrefOffsetMax) (_stackDepthMaxThunked) (CR.nm2RefMpInverse _nm2refNew)
-                                                                                ToBe_LeftAsIs -> id) of
-                                                                      { _creMkForce ->
-                                                                      (case (_creMkReturned $ _creMkForce _exprIcre) of
-                                                                       { _creBind ->
-                                                                       (case ([( _lhsInm, _creBind )]) of
-                                                                        { _crb ->
-                                                                        (case (_crb) of
-                                                                         { _lhsOcrb ->
-                                                                         (case (if _isToBeThunked then _lhsIrefOffset else max _exprIrefOffset _exprIrefOffsetMax) of
-                                                                          { _lhsOrefOffsetMax ->
-                                                                          (case (if _isToBeALam then _lhsIstackDepth+1 else _exprIstackDepth) of
-                                                                           { _stackDepthExpr ->
-                                                                           (case (_stackDepthExpr) of
-                                                                            { _lhsOstackDepth ->
-                                                                            (case (if _isToBeALam then _stackDepthExpr else _stackDepthMaxThunked) of
-                                                                             { _lhsOstackDepthMax ->
-                                                                             ( _lhsOcrb,_lhsOrefOffsetMax,_lhsOstackDepth,_lhsOstackDepthMax) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
+                                                      (case (if _isToBeThunked then _exprInm2refGath else Map.empty) of
+                                                       { _nm2refNew ->
+                                                       (case (_isToBeThunked || whatExprIsLam _exprIwhatBelow) of
+                                                        { _isToBeALam ->
+                                                        (case (if _isToBeALam then 0                 else _lhsIstackDepth) of
+                                                         { _exprOstackDepth ->
+                                                         (case (_lhsIopts) of
+                                                          { _exprOopts ->
+                                                          (case (_lhsIisTopTup) of
+                                                           { _exprOisTopTup ->
+                                                           (case (_lhsIisTopApp) of
+                                                            { _exprOisTopApp ->
+                                                            (case (_lhsIevalCtx) of
+                                                             { _exprOevalCtx ->
+                                                             (case (expr_2 _exprOevalCtx _exprOisTopApp _exprOisTopTup _exprOnm2ref _exprOopts _exprOstackDepth _exprOtailCtx) of
+                                                              { ( _exprIappFunKind,_exprIcrb,_exprIcre,_exprIcreAppArgL,_exprIcreAppFun,_exprIcreLamArgL,_exprIcreLamBody,_exprIcrse,_exprImbFFIApp,_exprImbLam,_exprImbVar,_exprIrefOffsetMax,_exprIstackDepth,_exprIstackDepthMax) ->
+                                                                  (case (max _exprIstackDepth _exprIstackDepthMax) of
+                                                                   { _stackDepthMaxThunked ->
+                                                                   (case (case _toBe of
+                                                                              ToBe_Forced   -> tailrec _tailCtx . CR.Exp_Force
+                                                                              ToBe_Thunked  -> CR.Exp_Lam (Just _lhsInm) _lev 0 (_exprIrefOffsetMax) (_stackDepthMaxThunked) (CR.nm2RefMpInverse _nm2refNew)
+                                                                              ToBe_LeftAsIs -> id) of
+                                                                    { _creMkForce ->
+                                                                    (case (_creMkForce _exprIcre) of
+                                                                     { _creBind ->
+                                                                     (case ([( _lhsInm, _creBind )]) of
+                                                                      { _crb ->
+                                                                      (case (_crb) of
+                                                                       { _lhsOcrb ->
+                                                                       (case (if _isToBeThunked then _lhsIrefOffset else max _exprIrefOffset _exprIrefOffsetMax) of
+                                                                        { _lhsOrefOffsetMax ->
+                                                                        (case (if _isToBeALam then _lhsIstackDepth+1 else _exprIstackDepth) of
+                                                                         { _stackDepthExpr ->
+                                                                         (case (_stackDepthExpr) of
+                                                                          { _lhsOstackDepth ->
+                                                                          (case (if _isToBeALam then _stackDepthExpr else _stackDepthMaxThunked) of
+                                                                           { _lhsOstackDepthMax ->
+                                                                           ( _lhsOcrb,_lhsOrefOffsetMax,_lhsOstackDepth,_lhsOstackDepthMax) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
                                       in  sem_CBound_Val_1)) of
                                { ( sem_CBound_1) ->
                                ( _lhsOnm2refGath,_lhsOrefOffset,sem_CBound_1) }) }) }) }) }) }) }) }) }) }) }) }) }) }))
diff --git a/src/UHC/Light/Compiler/Core/Trf.hs b/src/UHC/Light/Compiler/Core/Trf.hs
--- a/src/UHC/Light/Compiler/Core/Trf.hs
+++ b/src/UHC/Light/Compiler/Core/Trf.hs
@@ -13,6 +13,7 @@
 import UHC.Light.Compiler.CodeGen.ValAccess as VA
 import UHC.Light.Compiler.LamInfo
 import UHC.Light.Compiler.Core
+import UHC.Light.Compiler.Core.Check
 import UHC.Light.Compiler.Core.Trf.RenUniq
 import UHC.Light.Compiler.Core.Trf.ANormal
 import UHC.Light.Compiler.Core.Trf.InlineLetAlias
@@ -35,13 +36,15 @@
 
 
 
-{-# LINE 77 "src/ehc/Core/Trf.chs" #-}
+
+
+{-# LINE 79 "src/ehc/Core/Trf.chs" #-}
 type TrfCore = TrfState CModule TrfCoreExtra
 
 emptyTrfCore :: TrfCore
 emptyTrfCore = mkEmptyTrfState emptyCModule emptyTrfCoreExtra
 
-{-# LINE 84 "src/ehc/Core/Trf.chs" #-}
+{-# LINE 86 "src/ehc/Core/Trf.chs" #-}
 data TrfCoreExtra
   = TrfCoreExtra
       { trfcoreInhLamMp         :: LamMp        -- from context, possibly overridden from gathered one
@@ -49,7 +52,8 @@
       , trfcoreExpNmOffMp       :: !HsName2FldMp
       , trfcoreExtraExports     :: !FvS             -- extra exported names, introduced by transformations
       , trfcoreECUState			:: !EHCompileUnitState
-      , trfcoreIsLamLifted      :: !Bool
+      -- , trfcoreIsLamLifted      :: !Bool
+      , trfcoreNotYetTransformed:: !NotYetTransformedS
       }
 
 emptyTrfCoreExtra :: TrfCoreExtra
@@ -58,19 +62,24 @@
                        Map.empty
                        Set.empty
                        ECUS_Unknown
-                       False
+                       -- False
+                       (Set.fromList [minBound .. maxBound])
 
-{-# LINE 116 "src/ehc/Core/Trf.chs" #-}
+{-# LINE 124 "src/ehc/Core/Trf.chs" #-}
 -- | Perform Core transformations.
 --   The 'optScope' tells at which compilation phase (per module, whole program) the transformations are done, default only per module
 trfCore :: EHCOpts -> OptimizationScope -> DataGam -> HsName -> TrfCore -> TrfCore
 trfCore opts optimScope dataGam modNm trfcore
   -- = execState trf trfcore
   = runTrf opts modNm ehcOptDumpCoreStages (optimScope `elem`) trfcore trf
-  where isFromCoreSrc = ecuStateIsCore $ trfcoreECUState    $ trfstExtra trfcore
-        isLamLifted   =                  trfcoreIsLamLifted $ trfstExtra trfcore
-        noOptims      = ehcOptOptimizationLevel opts <= OptimizationLevel_Off
-        isCoreTarget  = targetIsCore $ ehcOptTarget opts
+  where isFromCoreSrc 		= ecuStateIsCore $ trfcoreECUState $ trfstExtra trfcore
+        notYetTransformed	= trfcoreNotYetTransformed         $ trfstExtra trfcore
+        isNotLamLifted		= NotYetTransformed_LambdaLifted `Set.member` notYetTransformed
+        isNotANormal  		= NotYetTransformed_ANormal      `Set.member` notYetTransformed
+        isLamLifted   		= not isNotLamLifted
+        isANormal     		= not isNotANormal
+        noOptims      		= ehcOptOptimizationLevel opts <= OptimizationLevel_Off
+        isCoreTarget  		= targetIsCore $ ehcOptTarget opts
         isUnOptimCoreTarget = isCoreTarget && noOptims
         trf
           = do { -- initial is just to obtain Core for dumping stages
@@ -145,7 +154,7 @@
                    ; t_elim_trivapp
                    }
 
-               ; when (isUnOptimCoreTarget || not isLamLifted) $ do
+               ; when (isUnOptimCoreTarget || isNotLamLifted || isNotANormal) $ do
                    {
 					 -- put in A-normal form, where args to app only may be identifiers
 				   ; u1 <- freshInfUID
@@ -153,7 +162,7 @@
                    }
 
 
-               ; when (not isLamLifted && not isUnOptimCoreTarget) $ do
+               ; when (isNotLamLifted && not isUnOptimCoreTarget) $ do
                    {
 					 -- pass all globals used in lambda explicit as argument
 				   ; t_lam_asarg
diff --git a/src/UHC/Light/Compiler/CoreRun.hs b/src/UHC/Light/Compiler/CoreRun.hs
--- a/src/UHC/Light/Compiler/CoreRun.hs
+++ b/src/UHC/Light/Compiler/CoreRun.hs
@@ -166,7 +166,6 @@
          | Exp_App {func_Exp_App :: !(Exp),args_Exp_App :: !((CRArray Exp))}
          | Exp_Lam {mbNm_Exp_Lam :: !((Maybe HsName)),lev_Exp_Lam :: !(Int),nrArgs_Exp_Lam :: !(Int),nrBinds_Exp_Lam :: !(Int),stkDepth_Exp_Lam :: !(Int),ref2nm_Exp_Lam :: !(Ref2Nm),body_Exp_Lam :: !(Exp)}
          | Exp_Force {expr_Exp_Force :: !(Exp)}
-         | Exp_Ret {expr_Exp_Ret :: !(Exp)}
          | Exp_RetCase {nrBinds_Exp_RetCase :: !(Int),expr_Exp_RetCase :: !(Exp)}
          | Exp_Tail {expr_Exp_Tail :: !(Exp)}
          | Exp_Case {expr_Exp_Case :: !(SExp),alts_Exp_Case :: !((CRArray Alt))}
diff --git a/src/UHC/Light/Compiler/CoreRun/Pretty.hs b/src/UHC/Light/Compiler/CoreRun/Pretty.hs
--- a/src/UHC/Light/Compiler/CoreRun/Pretty.hs
+++ b/src/UHC/Light/Compiler/CoreRun/Pretty.hs
@@ -199,8 +199,6 @@
             local inhpp       : _
       alternative Force:
          child expr           : Exp 
-      alternative Ret:
-         child expr           : Exp 
       alternative RetCase:
          child nrBinds        : {Int}
          child expr           : Exp 
@@ -230,8 +228,6 @@
     (sem_Exp_Lam _mbNm _lev _nrArgs _nrBinds _stkDepth _ref2nm (sem_Exp _body))
 sem_Exp (Exp_Force _expr) =
     (sem_Exp_Force (sem_Exp _expr))
-sem_Exp (Exp_Ret _expr) =
-    (sem_Exp_Ret (sem_Exp _expr))
 sem_Exp (Exp_RetCase _nrBinds _expr) =
     (sem_Exp_RetCase _nrBinds (sem_Exp _expr))
 sem_Exp (Exp_Tail _expr) =
@@ -329,17 +325,6 @@
           (case (expr_ _exprOinhpp) of
            { ( _exprIpp) ->
                (case ("eval" >|< ppParens _exprIpp) of
-                { _lhsOpp ->
-                ( _lhsOpp) }) }) }))
-sem_Exp_Ret :: T_Exp ->
-               T_Exp
-sem_Exp_Ret expr_ =
-    (\ _lhsIinhpp ->
-         (case (_lhsIinhpp) of
-          { _exprOinhpp ->
-          (case (expr_ _exprOinhpp) of
-           { ( _exprIpp) ->
-               (case ("ret" >|< ppParens _exprIpp) of
                 { _lhsOpp ->
                 ( _lhsOpp) }) }) }))
 sem_Exp_RetCase :: Int ->
diff --git a/src/UHC/Light/Compiler/CoreRun/Run.hs b/src/UHC/Light/Compiler/CoreRun/Run.hs
--- a/src/UHC/Light/Compiler/CoreRun/Run.hs
+++ b/src/UHC/Light/Compiler/CoreRun/Run.hs
@@ -58,10 +58,17 @@
   -- | Setup whatever needs to be setup
   rsemSetup :: EHCOpts -> [Mod] -> Mod -> RunT' r s v m ()
 
-  -- | Set tracing on/off
-  rsemSetTrace :: Bool -> RunT' r s v m ()
-  rsemSetTrace _ = return ()
+  -- | Setup tracing
+  rsemSetupTracing :: EHCOpts -> RunT' r s v m ()
+  rsemSetupTracing opts = do
+        let dotr  = CoreOpt_RunTrace `elem` ehcOptCoreOpts opts
+            dotre = CoreOpt_RunTraceExtensive `elem` ehcOptCoreOpts opts
+        rsemSetTrace (dotre || dotr) dotre
 
+  -- | Set tracing on/off, 2nd param to tell to do it extensively
+  rsemSetTrace :: Bool -> Bool -> RunT' r s v m ()
+  rsemSetTrace _ _ = return ()
+
   -- | Exp
   rsemExp :: Exp -> RunT' r s v m a
 
@@ -104,18 +111,18 @@
   rsemGcLeaveRootLevel = return ()
   {-# INLINE rsemGcLeaveRootLevel #-}
 
-{-# LINE 136 "src/ehc/CoreRun/Run.chs" #-}
+{-# LINE 143 "src/ehc/CoreRun/Run.chs" #-}
 -- type RunT' s m a = ErrorT Err (RWST r w s m) a
 -- type RunT        m a = RunT' RunRd RunWr RunSt m a
 -- type RunT' s m a = ErrorT Err (StateT s m) a
 type RunT' r s v m a = ErrorT Err (RWST r () s m) a
 type RunT      v m a = RunT' RunRd RunSt v m a
 
-{-# LINE 148 "src/ehc/CoreRun/Run.chs" #-}
+{-# LINE 155 "src/ehc/CoreRun/Run.chs" #-}
 err :: (RunSem r s v m a, PP msg) => msg -> RunT' r s v m b
 err msg = throwError $ rngLift emptyRange Err_PP $ pp msg
 
-{-# LINE 158 "src/ehc/CoreRun/Run.chs" #-}
+{-# LINE 165 "src/ehc/CoreRun/Run.chs" #-}
 runCoreRun
   :: forall r s v m a .
      (RunSem r s v m a)
@@ -135,7 +142,7 @@
             r s
   return e
 
-{-# LINE 183 "src/ehc/CoreRun/Run.chs" #-}
+{-# LINE 190 "src/ehc/CoreRun/Run.chs" #-}
 modifyIORefM :: IORef a -> (a -> IO a) -> IO ()
 modifyIORefM r m = readIORef r >>= m >>= writeIORef r
 {-# INLINE modifyIORefM #-}
diff --git a/src/UHC/Light/Compiler/CoreRun/Run/Val.hs b/src/UHC/Light/Compiler/CoreRun/Run/Val.hs
--- a/src/UHC/Light/Compiler/CoreRun/Run/Val.hs
+++ b/src/UHC/Light/Compiler/CoreRun/Run/Val.hs
@@ -672,6 +672,7 @@
       -- , renvFrSP		:: !(IORef Int)					-- ^ top of expr stack embedded in higher end of top frame
       , renvHeap		:: !Heap						-- ^ heap
       , renvDoTrace		:: !Bool
+      , renvDoTraceExt	:: !Bool						-- ^ when tracing, do it extensively?
       , renvGcRootStack	:: !(IORef [[RVal]])			-- ^ stack of roots for GC, use is optional
       }
 
@@ -682,9 +683,9 @@
   hp <- newHeap hpSz
   -- sp <- newIORef 0
   rtst <- newIORef []
-  return $ RValEnv V.empty st tp hp False rtst
+  return $ RValEnv V.empty st tp hp False False rtst
 
-{-# LINE 756 "src/ehc/CoreRun/Run/Val.chs" #-}
+{-# LINE 757 "src/ehc/CoreRun/Run/Val.chs" #-}
 -- | Get the top most frame from the stack, 'nullPtr' if absent
 renvTopFrameM :: (RunSem RValCxt RValEnv RVal m x) => RValT m HpPtr
 renvTopFrameM = do
@@ -692,7 +693,7 @@
   liftIO $ readIORef tf
 {-# INLINE renvTopFrameM #-}
 
-{-# LINE 765 "src/ehc/CoreRun/Run/Val.chs" #-}
+{-# LINE 766 "src/ehc/CoreRun/Run/Val.chs" #-}
 -- | Get all non empty stack frames, still split up in (possibly null) top frame and rest of stack
 renvAllFrameM' :: (RunSem RValCxt RValEnv RVal m x) => RValT m (Maybe HpPtr,[HpPtr])
 renvAllFrameM' = do
@@ -707,7 +708,7 @@
   (mbtop,st) <- renvAllFrameM'
   return $ maybe [] (:[]) mbtop ++ st
 
-{-# LINE 781 "src/ehc/CoreRun/Run/Val.chs" #-}
+{-# LINE 782 "src/ehc/CoreRun/Run/Val.chs" #-}
 -- | Dump environment
 dumpPpEnvM :: (RunSem RValCxt RValEnv RVal m x) => Bool -> RValT m PP_Doc
 dumpPpEnvM extensive = do
@@ -748,18 +749,18 @@
     ppb hp k v = (liftIO $ ppRValWithHp hp v) >>= \vpp -> return $ k >|< ":" >#< vpp
     ppa off hp sz vs = forM [0 .. sz - 1] $ \i -> liftIO (MV.read vs i) >>= ppb hp (i + off)
 
-{-# LINE 823 "src/ehc/CoreRun/Run/Val.chs" #-}
+{-# LINE 824 "src/ehc/CoreRun/Run/Val.chs" #-}
 -- | Dump environment
 dumpEnvM :: (RunSem RValCxt RValEnv RVal m x) => Bool -> RValT m ()
 dumpEnvM extensive = dumpPpEnvM extensive >>= \p -> liftIO $ putPPLn p >> hFlush stdout
 
-{-# LINE 833 "src/ehc/CoreRun/Run/Val.chs" #-}
+{-# LINE 834 "src/ehc/CoreRun/Run/Val.chs" #-}
 -- | Update top frame
 updTopFrameM :: (RunSem RValCxt RValEnv RVal m x) => (RVal -> RValT m RVal) -> RValT m ()
 updTopFrameM f = renvTopFrameM >>= flip heapUpdM f
 {-# INLINE updTopFrameM #-}
 
-{-# LINE 845 "src/ehc/CoreRun/Run/Val.chs" #-}
+{-# LINE 846 "src/ehc/CoreRun/Run/Val.chs" #-}
 -- | Push on the stack embedded in the top frame
 renvFrStkPush' :: RunSem RValCxt RValEnv RVal m x => (Int -> RValMV -> v -> IO Int) -> v -> RValT m ()
 renvFrStkPush' pushvOn v = do
@@ -795,7 +796,7 @@
 renvFrStkReversePushV = renvFrStkPush' (\sp frvs vs -> mvecReverseFillFromV sp frvs vs >> return (sp + V.length vs))
 {-# INLINE renvFrStkReversePushV #-}
 
-{-# LINE 882 "src/ehc/CoreRun/Run/Val.chs" #-}
+{-# LINE 883 "src/ehc/CoreRun/Run/Val.chs" #-}
 -- | Pop from the stack embedded in the top frame
 renvFrStkPop' :: RunSem RValCxt RValEnv RVal m x => (RValMV -> Int -> IO v) -> Int -> RValT m v
 renvFrStkPop' popvFrom sz = do
@@ -839,19 +840,23 @@
 renvFrStkReversePopMV sz = (liftIO $ mvecAlloc sz) >>= \vs -> renvFrStkReversePopInMV 0 sz vs >> return vs
 {-# INLINE renvFrStkReversePopMV #-}
 
-{-# LINE 931 "src/ehc/CoreRun/Run/Val.chs" #-}
+{-# LINE 932 "src/ehc/CoreRun/Run/Val.chs" #-}
 -- | Trace
 rsemTr' :: (PP msg, RunSem RValCxt RValEnv RVal m x) => Bool -> msg -> RValT m ()
-rsemTr' dumpExtensive msg = whenM (gets renvDoTrace) $ do
-    liftIO $ putStrLn $ show $ pp msg
-    dumpEnvM dumpExtensive
-    liftIO $ hFlush stdout
+rsemTr' dumpExtensive msg = do
+    env <- get
+    when (renvDoTrace env) $ do
+      liftIO $ putStrLn $ show $ pp msg
+      dumpEnvM (dumpExtensive || renvDoTraceExt env)
+      liftIO $ hFlush stdout
+{- INLINE rsemTr' #-}
 
 -- | Trace
 rsemTr :: (PP msg, RunSem RValCxt RValEnv RVal m x) => msg -> RValT m ()
 rsemTr = rsemTr' False
+{- INLINE rsemTr #-}
 
-{-# LINE 948 "src/ehc/CoreRun/Run/Val.chs" #-}
+{-# LINE 953 "src/ehc/CoreRun/Run/Val.chs" #-}
 -- | RunT' variant for Val
 type RValT m a = RunT' RValCxt RValEnv RVal m a
 -- type RValT m a = RunT' () () RValEnv m a
diff --git a/src/UHC/Light/Compiler/CoreRun/Run/Val/RunExplStk.hs b/src/UHC/Light/Compiler/CoreRun/Run/Val/RunExplStk.hs
--- a/src/UHC/Light/Compiler/CoreRun/Run/Val/RunExplStk.hs
+++ b/src/UHC/Light/Compiler/CoreRun/Run/Val/RunExplStk.hs
@@ -105,7 +105,7 @@
 cmodRun :: (RunSem RValCxt RValEnv RVal m ()) => EHCOpts -> Mod -> RValT m ()
 cmodRun opts (Mod_Mod {body_Mod_Mod=e}) = do
   -- dumpEnvM True
-  rsemExp e
+  mustReturn $ rsemExp e
   -- v <- renvFrStkPop1
   -- return v
 
@@ -173,13 +173,14 @@
 {-# SPECIALIZE rvalExplStkExp :: RunSem RValCxt RValEnv RVal IO () => Exp -> RValT IO () #-}
 -- {-# INLINE rvalExplStkExp #-}
 rvalExplStkExp e = do
-  -- rsemTr' False $ ">E:" >#< e
   -- e' <- case e of
   case e of
     -- app, call
     Exp_App f as -> do
-        vecReverseForM_ as rsemExp
-        rsemExp f >>= rsemPop >>= ptr2valM >>= \f' -> rvalExplStkApp f' (emptyExplArgs {eaStk=V.length as})
+        f' <- mustReturn $ do
+          vecReverseForM_ as rsemExp
+          rsemExp f
+        rsemPop f' >>= ptr2valM >>= \f' -> rvalExplStkApp f' (emptyExplArgs {eaStk=V.length as})
 
     -- heap node
     Exp_Tup t as -> do
@@ -188,16 +189,16 @@
 
     -- lam as is, being a heap allocated thunk when 0 args are required
     Exp_Lam {nrArgs_Exp_Lam=na, mbNm_Exp_Lam=mn}
-      | na == 0   -> mk (RVal_Thunk mn) >>= heapAllocAsPtrM >>= rsemPush
-      | otherwise -> mk (RVal_Lam   mn) >>= heapAllocAsPtrM >>= rsemPush
+      | na == 0   -> mk RVal_Thunk
+      | otherwise -> mk RVal_Lam
       where mk rv = do
              sl <- renvTopFrameM
              slref <- liftIO $ newIORef sl
-             return $ rv e slref
+             heapAllocAsPtrM (rv mn e slref) >>= rsemPush
 
     -- let
     Exp_Let {firstOff_Exp_Let=fillFrom, ref2nm_Exp_Let=r2n, binds_Exp_Let=bs, body_Exp_Let=b} -> do
-        V.forM_ bs rsemExp
+        mustReturn $ V.forM_ bs rsemExp
         rsemExp b
 
     -- case, scrutinee already evaluated
@@ -211,7 +212,7 @@
     Exp_Force e -> rsemExp e >>= rsemPop >>= rsemEvl
 
     -- setup for context requiring a return (TBD: should be done via CPS style, but is other issue)
-    Exp_Ret e -> mustReturn $ rsemExp e
+    -- Exp_Ret e -> mustReturn $ rsemExp e
 
     -- setup for context requiring a return from case alternative
     Exp_RetCase _ e -> rsemExp e
@@ -227,15 +228,14 @@
 
     e -> err $ "CoreRun.Run.Val.RunExplStk.rvalExplStkExp:" >#< e
 
-  -- rsemTr' False $ "<E:" >#< (e) -- >-< e')
   -- return e'
 
-{-# LINE 265 "src/ehc/CoreRun/Run/Val/RunExplStk.chs" #-}
+{-# LINE 273 "src/ehc/CoreRun/Run/Val/RunExplStk.chs" #-}
 instance
     ( Monad m, MonadIO m, Functor m
     ) => RunSem RValCxt RValEnv RVal m ()
   where
-    -- {-# SPECIALIZE instance RunSem RValCxt RValEnv RVal IO () #-}
+    {-# SPECIALIZE instance RunSem RValCxt RValEnv RVal IO () #-}
     rsemInitial = do
       s <- liftIO $ newRValEnv 1000 -- 100000 --
       return (emptyRValCxt, s, undefined)
@@ -259,10 +259,10 @@
         -- use the main module's stackframe for evaluating 'main'
         explStkPushFrameM $ ms' V.! mainModNr
         rsemGcLeaveRootLevel
-        rsemSetTrace $ CoreOpt_RunTrace `elem` ehcOptCoreOpts opts
+        rsemSetupTracing opts
 
-    rsemSetTrace doTrace = modify $ \env ->
-      env {renvDoTrace = doTrace}
+    rsemSetTrace doTrace doExtensive = modify $ \env ->
+      env {renvDoTrace = doTrace, renvDoTraceExt = doExtensive}
 
     rsemExp = rvalExplStkExp
 
diff --git a/src/UHC/Light/Compiler/CoreRun/Run/Val/RunImplStk.hs b/src/UHC/Light/Compiler/CoreRun/Run/Val/RunImplStk.hs
--- a/src/UHC/Light/Compiler/CoreRun/Run/Val/RunImplStk.hs
+++ b/src/UHC/Light/Compiler/CoreRun/Run/Val/RunImplStk.hs
@@ -75,7 +75,7 @@
 cmodRun :: (RunSem RValCxt RValEnv RVal m RVal) => EHCOpts -> Mod -> RValT m RVal
 cmodRun opts (Mod_Mod {body_Mod_Mod=e}) = do
   -- dumpEnvM True
-  v <- rsemExp e
+  v <- mustReturn $ rsemExp e
   return v
 
 {-# LINE 110 "src/ehc/CoreRun/Run/Val/RunImplStk.chs" #-}
@@ -131,13 +131,11 @@
 -- {-# SPECIALIZE rvalImplStkExp :: RunSem RValCxt RValEnv RVal IO RVal => Exp -> RValT IO RVal #-}
 {-# INLINE rvalImplStkExp #-}
 rvalImplStkExp e = do
-  -- rsemTr $ "E:" >#< e
-  -- e' <- case e of
   case e of
     -- app, call
     Exp_App f as -> do
-        f' <- {- mustReturn $ -} rsemExp f {- >>= rsemEvl -}
-        V.mapM rsemExp as >>= (liftIO . V.thaw) >>= rvalImplStkApp f'
+        f' <- mustReturn $ rsemExp f {- >>= rsemEvl -}
+        (mustReturn $ V.mapM rsemExp as) >>= (liftIO . V.thaw) >>= rvalImplStkApp f'
 
     -- heap node
     Exp_Tup t as -> do
@@ -155,7 +153,7 @@
 
     -- let
     Exp_Let {firstOff_Exp_Let=fillFrom, ref2nm_Exp_Let=r2n, binds_Exp_Let=bs, body_Exp_Let=b} -> do
-        bs' <- (liftIO . V.thaw) =<< V.forM bs rsemExp
+        bs' <- mustReturn $ (liftIO . V.thaw) =<< V.forM bs rsemExp
         fr <- renvTopFrameM >>= heapGetM -- >>= rsemDeref
         fillFrameM fillFrom bs' fr
         rsemExp b
@@ -169,7 +167,7 @@
     Exp_Force e -> rsemExp e >>= rsemPop >>= rsemEvl
 
     -- setup for context requiring a return (TBD: should be done via CPS style, but is other issue)
-    Exp_Ret e -> mustReturn $ rsemExp e
+    -- Exp_Ret e -> mustReturn $ rsemExp e
 
     -- setup for context requiring a return from case alternative
     Exp_RetCase _ e -> rsemExp e
@@ -185,11 +183,9 @@
 
     e -> err $ "CoreRun.Run.Val.RunExplStk.rvalImplStkExp:" >#< e
 
-  -- rsemTr $ "E->:" >#< (e >-< e')
-  -- return e'
 
 
-{-# LINE 223 "src/ehc/CoreRun/Run/Val/RunImplStk.chs" #-}
+{-# LINE 229 "src/ehc/CoreRun/Run/Val/RunImplStk.chs" #-}
 instance
     ( Monad m, MonadIO m, Functor m
     ) => RunSem RValCxt RValEnv RVal m RVal
@@ -209,11 +205,11 @@
           liftIO $ MV.write ms nr p
         ms' <- liftIO $ V.freeze ms
         modify $ \env -> env {renvGlobals = ms'}
-        rsemSetTrace $ CoreOpt_RunTrace `elem` ehcOptCoreOpts opts
+        rsemSetupTracing opts
         -- return RVal_None
 
-    rsemSetTrace doTrace = modify $ \env ->
-      env {renvDoTrace = doTrace}
+    rsemSetTrace doTrace doExtensive = modify $ \env ->
+      env {renvDoTrace = doTrace, renvDoTraceExt = doExtensive}
 
     rsemExp = rvalImplStkExp
 
diff --git a/src/UHC/Light/Compiler/EHC/CompilePhase/Transformations.hs b/src/UHC/Light/Compiler/EHC/CompilePhase/Transformations.hs
--- a/src/UHC/Light/Compiler/EHC/CompilePhase/Transformations.hs
+++ b/src/UHC/Light/Compiler/EHC/CompilePhase/Transformations.hs
@@ -41,14 +41,16 @@
                              , trfstUniq            	= crsiNextUID crsi
                              , trfstExtra = emptyTrfCoreExtra
                                  { trfcoreECUState		= ecuState ecu
-                                 , trfcoreIsLamLifted	= maybe False Core2ChkSem.isLamLifted_Syn_CodeAGItf $ ecuMbCoreSemMod ecu
+                                 -- , trfcoreIsLamLifted	= maybe False Core2ChkSem.isLamLifted_Syn_CodeAGItf $ ecuMbCoreSemMod ecu
+                                 , trfcoreNotYetTransformed
+                                 						= maybe (trfcoreNotYetTransformed emptyTrfCoreExtra) Core2ChkSem.notYetTransformed_Syn_CodeAGItf $ ecuMbCoreSemMod ecu
                                  , trfcoreExpNmOffMp    = crsiExpNmOffMpDbg "cpTransformCore" modNm crsi
 								 , trfcoreInhLamMp      = Core2GrSem.lamMp_Inh_CodeAGItf $ crsiCoreInh crsi
                                  }
                              }
               trfcoreOut = trfCore opts optimScope (Core2GrSem.dataGam_Inh_CodeAGItf $ crsiCoreInh crsi) modNm trfcoreIn
 
-       -- ; lift $ putStrLn $ "cpTransformCore trfcoreIsLamLifted: " ++ show (trfcoreIsLamLifted $ trfstExtra trfcoreIn)
+       -- ; lift $ putStrLn $ "cpTransformCore trfcoreNotYetTransformed: " ++ show (trfcoreNotYetTransformed $ trfstExtra trfcoreIn)
          -- put back result: Core
        ; cpUpdCU modNm $! ecuStoreCore (trfstMod trfcoreOut)
 
diff --git a/src/UHC/Light/Compiler/Opts.hs b/src/UHC/Light/Compiler/Opts.hs
--- a/src/UHC/Light/Compiler/Opts.hs
+++ b/src/UHC/Light/Compiler/Opts.hs
@@ -107,13 +107,14 @@
   show CoreOpt_Run            	    = "run"
   show CoreOpt_RunDump            	= "dump-run"
   show CoreOpt_RunTrace            	= "run-trace"
+  show CoreOpt_RunTraceExtensive	= "run-trace-extensive"
   show CoreOpt_RunPPNames           = "run-ppnames"
   show _      						= "-"
 
 coreOptMp :: Map.Map String CoreOpt
 coreOptMp = str2stMpWithOmit [CoreOpt_NONE]
 
-{-# LINE 178 "src/ehc/Opts.chs" #-}
+{-# LINE 179 "src/ehc/Opts.chs" #-}
 instance Show PgmExec where
   show PgmExec_CPP      = "P"
   show PgmExec_C        = "c"
@@ -122,36 +123,36 @@
 pgmExecMp :: Map.Map String PgmExec
 pgmExecMp = str2stMp
 
-{-# LINE 194 "src/ehc/Opts.chs" #-}
+{-# LINE 195 "src/ehc/Opts.chs" #-}
 -- do something with whole program
 ehcOptWholeProgOptimizationScope :: EHCOpts -> Bool
 ehcOptWholeProgOptimizationScope opts
   = ehcOptOptimizationScope opts > OptimizationScope_PerModule
 
-{-# LINE 201 "src/ehc/Opts.chs" #-}
+{-# LINE 202 "src/ehc/Opts.chs" #-}
 -- compatibility option
 ehcOptEarlyModMerge :: EHCOpts -> Bool
 ehcOptEarlyModMerge opts
   = ehcOptOptimizationScope opts >= OptimizationScope_WholeCore
 
-{-# LINE 208 "src/ehc/Opts.chs" #-}
+{-# LINE 209 "src/ehc/Opts.chs" #-}
 -- do whole program analysis, with HPT
 ehcOptWholeProgHPTAnalysis :: EHCOpts -> Bool
 ehcOptWholeProgHPTAnalysis opts
   = False
 
-{-# LINE 256 "src/ehc/Opts.chs" #-}
+{-# LINE 257 "src/ehc/Opts.chs" #-}
 -- generate Core
 ehcOptEmitCore :: EHCOpts -> Bool
 ehcOptEmitCore opts
   = ehcOptWholeProgHPTAnalysis opts || targetIsCore (ehcOptTarget opts)
 
-{-# LINE 274 "src/ehc/Opts.chs" #-}
+{-# LINE 275 "src/ehc/Opts.chs" #-}
 -- | optimizes a particular option
 ehcOptOptimizes :: Optimize -> EHCOpts -> Bool
 ehcOptOptimizes o opts = o `Set.member` ehcOptOptimizations opts
 
-{-# LINE 284 "src/ehc/Opts.chs" #-}
+{-# LINE 285 "src/ehc/Opts.chs" #-}
 -- | The default EHC options.
 defaultEHCOpts
   = emptyEHCOpts
@@ -160,7 +161,7 @@
       	  ]
       }
 
-{-# LINE 300 "src/ehc/Opts.chs" #-}
+{-# LINE 301 "src/ehc/Opts.chs" #-}
 ehcCmdLineOpts
   =  [  Option "h"  ["help"]                (NoArg oHelp)                           "print this help (then stop)"
      ,  Option ""   ["version"]             (NoArg oVersion)                        "print version info (then stop)"
@@ -220,7 +221,7 @@
                                                                                     "pgm: alternate executable used by compiler, currently only P (preprocessing)"
      ,  Option ""   ["coreopt"]             (ReqArg oOptCore "opt[,...]")           ("opts (specific) for core: " ++ showStr2stMp coreOptMp)
      ]
-{-# LINE 477 "src/ehc/Opts.chs" #-}
+{-# LINE 478 "src/ehc/Opts.chs" #-}
   where  oPretty     ms  o =  case ms of
                                 Just "-"     -> o { ehcOptShowEH       = False     }
                                 Just "no"    -> o { ehcOptShowEH       = False     }
@@ -381,14 +382,14 @@
                                                                               nub $ ehcOptCmdLineOpts o ++ fst (parseCmdLineOpts cmd s) }
          oPgmExec     cmd     s o   = o { ehcOptPgmExecMp                   = Map.insert cmd s $ ehcOptPgmExecMp o }
 
-{-# LINE 774 "src/ehc/Opts.chs" #-}
+{-# LINE 775 "src/ehc/Opts.chs" #-}
 intArg  tr = ReqArg (optInt tr) "<nr>"
 
 optInt :: (EHCOpts -> Int -> EHCOpts) -> String -> EHCOpts -> EHCOpts
 optInt tr s o
  = tr o $ read s
 
-{-# LINE 782 "src/ehc/Opts.chs" #-}
+{-# LINE 783 "src/ehc/Opts.chs" #-}
 -- | What kind of optional args are allowed
 data OptArgAllow
   = OptArgAllow_Bool
@@ -398,13 +399,13 @@
 optArgAllAllow :: [OptArgAllow]
 optArgAllAllow = [minBound .. maxBound]
 
-{-# LINE 793 "src/ehc/Opts.chs" #-}
+{-# LINE 794 "src/ehc/Opts.chs" #-}
 -- | An optional arg, universal type for all occurring variants
 data OptArg
   = OptArg_Bool     Bool
   | OptArg_Int      Int
 
-{-# LINE 800 "src/ehc/Opts.chs" #-}
+{-# LINE 801 "src/ehc/Opts.chs" #-}
 optArgTake :: [OptArgAllow] -> String -> Maybe (OptArg,String)
 optArgTake allow s
   = case s of
@@ -425,7 +426,7 @@
   where yesInt = OptArgAllow_Int `elem` allow
         noInt  = not yesInt
 
-{-# LINE 822 "src/ehc/Opts.chs" #-}
+{-# LINE 823 "src/ehc/Opts.chs" #-}
 optBooleanTake :: String -> Maybe (Bool,String)
 optBooleanTake s
   = case optArgTake [OptArgAllow_Bool] s of
@@ -441,22 +442,22 @@
 boolArgStr = "Bool"
 boolArg tr = OptArg (optBoolean tr) boolArgStr
 
-{-# LINE 843 "src/ehc/Opts.chs" #-}
+{-# LINE 844 "src/ehc/Opts.chs" #-}
 oPriv                o b = o { ehcOptPriv           = b }
 
-{-# LINE 847 "src/ehc/Opts.chs" #-}
+{-# LINE 848 "src/ehc/Opts.chs" #-}
 optDumpCoreStages    o b = o { ehcOptDumpCoreStages = b }
 
-{-# LINE 855 "src/ehc/Opts.chs" #-}
+{-# LINE 856 "src/ehc/Opts.chs" #-}
 oSetGenTrampoline	 o b = o { ehcOptGenTrampoline_ = b }
 
-{-# LINE 875 "src/ehc/Opts.chs" #-}
+{-# LINE 876 "src/ehc/Opts.chs" #-}
 oStopAtCoreError     o b = o { ehcDebugStopAtCoreError     = b }
 
-{-# LINE 879 "src/ehc/Opts.chs" #-}
+{-# LINE 880 "src/ehc/Opts.chs" #-}
 oStopAtHIError       o b = o { ehcDebugStopAtHIError       = b }
 
-{-# LINE 887 "src/ehc/Opts.chs" #-}
+{-# LINE 888 "src/ehc/Opts.chs" #-}
 -- | Apply the cmdline opts description to a EHCOpts, returning Nothing when there were no options
 ehcCmdLineOptsApply :: [EHCOpts -> EHCOpts] -> [String] -> EHCOpts -> (Maybe EHCOpts, [String], [String])
 ehcCmdLineOptsApply postopts args opts
@@ -464,7 +465,7 @@
   where oo@(o,n,errs)  = getOpt Permute ehcCmdLineOpts args
         o' = o ++ postopts
 
-{-# LINE 900 "src/ehc/Opts.chs" #-}
+{-# LINE 901 "src/ehc/Opts.chs" #-}
 optsDiscrRecompileRepr :: EHCOpts -> String
 optsDiscrRecompileRepr opts
   = concat
@@ -478,12 +479,12 @@
       ]
   where o m v = if v then m else ""
 
-{-# LINE 921 "src/ehc/Opts.chs" #-}
+{-# LINE 922 "src/ehc/Opts.chs" #-}
 data FIOBind
   = FIOBindYes | FIOBindNoBut TyVarIdS
   deriving (Show)
 
-{-# LINE 927 "src/ehc/Opts.chs" #-}
+{-# LINE 928 "src/ehc/Opts.chs" #-}
 data FIOpts =  FIOpts   {  fioLeaveRInst     ::  !Bool                ,  fioBindRFirst           ::  !Bool
                         ,  fioBindLFirst     ::  !Bool                ,  fioBindLBeforeR         ::  !Bool
                         ,  fioMode           ::  !FIMode              ,  fioUniq                 ::  !UID
@@ -496,7 +497,7 @@
                         ,  fiMbMkErrClash    ::  Maybe (Ty -> Ty -> Err) -- alternate error construction for type clash
                         }
 
-{-# LINE 961 "src/ehc/Opts.chs" #-}
+{-# LINE 962 "src/ehc/Opts.chs" #-}
 fioBindNoSet :: FIOBind -> TyVarIdS
 fioBindNoSet (FIOBindNoBut s) = s
 fioBindNoSet _                = Set.empty
@@ -505,7 +506,7 @@
 fioBindIsYes FIOBindYes = True
 fioBindIsYes _          = False
 
-{-# LINE 971 "src/ehc/Opts.chs" #-}
+{-# LINE 972 "src/ehc/Opts.chs" #-}
 strongFIOpts :: FIOpts
 strongFIOpts =  FIOpts  {  fioLeaveRInst     =   False               ,  fioBindRFirst           =   True
                         ,  fioBindLFirst     =   True                ,  fioBindLBeforeR         =   True
@@ -519,11 +520,11 @@
                         ,  fiMbMkErrClash    =   Nothing
                         }
 
-{-# LINE 1001 "src/ehc/Opts.chs" #-}
+{-# LINE 1002 "src/ehc/Opts.chs" #-}
 instance Show FIOpts where
   show o =  "FIOpts"
 
-{-# LINE 1006 "src/ehc/Opts.chs" #-}
+{-# LINE 1007 "src/ehc/Opts.chs" #-}
 instance PP FIOpts where
   pp   o =  "FIOpts{"
             >#< "leaveRInst=" >|< pp (fioLeaveRInst o)
@@ -534,33 +535,33 @@
             >#< "allowRPredElim=" >|< pp (fioAllowRPredElim o)
             >#< "}"
 
-{-# LINE 1022 "src/ehc/Opts.chs" #-}
+{-# LINE 1023 "src/ehc/Opts.chs" #-}
 instLFIOpts :: FIOpts
 instLFIOpts = strongFIOpts {fioBindRFirst = False}
 
-{-# LINE 1027 "src/ehc/Opts.chs" #-}
+{-# LINE 1028 "src/ehc/Opts.chs" #-}
 instLRFIOpts :: FIOpts
 instLRFIOpts = strongFIOpts {fioBindRFirst = False, fioBindLFirst = False}
 
-{-# LINE 1032 "src/ehc/Opts.chs" #-}
+{-# LINE 1033 "src/ehc/Opts.chs" #-}
 unifyFIOpts :: FIOpts
 unifyFIOpts = strongFIOpts {fioMode = FitUnify}
 
 instFIOpts :: FIOpts
 instFIOpts = instLFIOpts {fioLeaveRInst = True, fioBindLFirst = False}
 
-{-# LINE 1051 "src/ehc/Opts.chs" #-}
+{-# LINE 1052 "src/ehc/Opts.chs" #-}
 weakFIOpts :: FIOpts
 weakFIOpts = fioMkWeak strongFIOpts
 
-{-# LINE 1056 "src/ehc/Opts.chs" #-}
+{-# LINE 1057 "src/ehc/Opts.chs" #-}
 predFIOpts :: FIOpts
 predFIOpts = strongFIOpts {fioPredAsTy = True, fioLeaveRInst = True}
 
 implFIOpts  :: FIOpts
 implFIOpts = strongFIOpts {fioAllowRPredElim = False}
 
-{-# LINE 1064 "src/ehc/Opts.chs" #-}
+{-# LINE 1065 "src/ehc/Opts.chs" #-}
 fioSwapOpts :: FIOpts -> FIOpts
 fioSwapOpts fio
   = fio
@@ -574,24 +575,24 @@
 fioSwapPolarity :: Polarity -> FIOpts -> FIOpts
 fioSwapPolarity pol fio = fio {fioMode = fimSwapPol pol (fioMode fio)}
 
-{-# LINE 1081 "src/ehc/Opts.chs" #-}
+{-# LINE 1082 "src/ehc/Opts.chs" #-}
 fioMkStrong :: FIOpts -> FIOpts
 fioMkStrong fi = fi {fioLeaveRInst = False, fioBindRFirst = True, fioBindLFirst = True}
 
-{-# LINE 1086 "src/ehc/Opts.chs" #-}
+{-# LINE 1087 "src/ehc/Opts.chs" #-}
 fioMkWeak :: FIOpts -> FIOpts
 fioMkWeak fi = fi {fioLeaveRInst = True, fioBindRFirst = False}
 
-{-# LINE 1091 "src/ehc/Opts.chs" #-}
+{-# LINE 1092 "src/ehc/Opts.chs" #-}
 -- | Adapt options for extracting final ty
 fioMkFinal :: FIOpts -> FIOpts
 fioMkFinal fi = fi {fioBindLFirst = False, fioBindRFirst = False, fioExpandEqTyVar = True}
 
-{-# LINE 1097 "src/ehc/Opts.chs" #-}
+{-# LINE 1098 "src/ehc/Opts.chs" #-}
 fioMkUnify :: FIOpts -> FIOpts
 fioMkUnify fi = fi {fioMode = FitUnify}
 
-{-# LINE 1106 "src/ehc/Opts.chs" #-}
+{-# LINE 1107 "src/ehc/Opts.chs" #-}
 fioIsSubsume :: FIOpts -> Bool
 fioIsSubsume fio =  case fioMode fio of {FitSubLR -> True ; _ -> False}
 
diff --git a/src/UHC/Light/Compiler/Opts/Base.hs b/src/UHC/Light/Compiler/Opts/Base.hs
--- a/src/UHC/Light/Compiler/Opts/Base.hs
+++ b/src/UHC/Light/Compiler/Opts/Base.hs
@@ -86,10 +86,11 @@
   | CoreOpt_Run					-- run after compilation
   | CoreOpt_RunDump				-- dump CoreRun
   | CoreOpt_RunTrace			-- trace during running CoreRun
+  | CoreOpt_RunTraceExtensive	-- trace during running CoreRun, with extensive info, implies CoreOpt_RunTrace
   | CoreOpt_RunPPNames			-- when dump/run CoreRun print names instead of
   deriving (Eq,Enum,Bounded)
 
-{-# LINE 170 "src/ehc/Opts/Base.chs" #-}
+{-# LINE 171 "src/ehc/Opts/Base.chs" #-}
 -- | Pgm (internal program used) options, in particular alternate internal shell commands
 data PgmExec
   = PgmExec_CPP				-- alternate CPP
@@ -97,7 +98,7 @@
   | PgmExec_Linker			-- alternate linker
   deriving (Eq,Ord,Enum,Bounded)
 
-{-# LINE 179 "src/ehc/Opts/Base.chs" #-}
+{-# LINE 180 "src/ehc/Opts/Base.chs" #-}
 -- | Wrapper around options, adding semantics for adapting cmd specific behavior
 data ExecOpt
   = ExecOpt_Plain String						-- ^ plain option
@@ -106,7 +107,7 @@
 execOptsPlain :: [ExecOpt] -> [String]
 execOptsPlain o = [ s | ExecOpt_Plain s <- o ]
 
-{-# LINE 195 "src/ehc/Opts/Base.chs" #-}
+{-# LINE 196 "src/ehc/Opts/Base.chs" #-}
 -- | The options to use.
 data EHCOpts
   = EHCOpts
@@ -190,7 +191,7 @@
       												-- default options for commands
       }
 
-{-# LINE 360 "src/ehc/Opts/Base.chs" #-}
+{-# LINE 361 "src/ehc/Opts/Base.chs" #-}
 emptyEHCOpts
   = EHCOpts
       {  ehcOptTrace            =   \_ x -> x
@@ -263,14 +264,14 @@
       ,  ehcOptExecOptsMp		=   Map.empty
       }
 
-{-# LINE 531 "src/ehc/Opts/Base.chs" #-}
+{-# LINE 532 "src/ehc/Opts/Base.chs" #-}
 ehcOptTarget :: EHCOpts -> Target
 ehcOptTarget = maybeOk (\s -> panic ("ehcOptTarget: " ++ s)) id  . ehcOptMbTarget
 
 ehcOptTargetFlavor :: EHCOpts -> TargetFlavor
 ehcOptTargetFlavor = maybeOk (\s -> panic ("ehcOptTargetFlavor: " ++ s)) id . ehcOptMbTargetFlavor
 
-{-# LINE 539 "src/ehc/Opts/Base.chs" #-}
+{-# LINE 540 "src/ehc/Opts/Base.chs" #-}
 -- | Generate system F (20120421 AD: very much under construction)
 ehcOptCoreSysF :: EHCOpts -> Bool
 ehcOptCoreSysF _    = False
@@ -287,7 +288,7 @@
 ehcOptCoreSysFCheckOnlyVal :: EHCOpts -> Bool
 ehcOptCoreSysFCheckOnlyVal opts = ehcOptCoreSysFCheck opts
 
-{-# LINE 573 "src/ehc/Opts/Base.chs" #-}
+{-# LINE 574 "src/ehc/Opts/Base.chs" #-}
 -- generate bytecode
 ehcOptEmitExecBytecode :: EHCOpts -> Bool
 ehcOptEmitExecBytecode _ = False
@@ -295,12 +296,12 @@
 ehcOptEmitBytecode :: EHCOpts -> Bool
 ehcOptEmitBytecode _ = False
 
-{-# LINE 630 "src/ehc/Opts/Base.chs" #-}
+{-# LINE 631 "src/ehc/Opts/Base.chs" #-}
 -- | Check Cmm
 ehcOptCmmCheck :: EHCOpts -> Bool
 ehcOptCmmCheck _    = False
 
-{-# LINE 640 "src/ehc/Opts/Base.chs" #-}
+{-# LINE 641 "src/ehc/Opts/Base.chs" #-}
 -- | Via Core -> Grin -> CMM -> JS ?
 ehcOptIsViaGrinCmmJavaScript :: EHCOpts -> Bool
 ehcOptIsViaGrinCmmJavaScript opts
@@ -312,31 +313,31 @@
   = targetIsViaCoreJavaScript t
   where t = ehcOptTarget opts
 
-{-# LINE 661 "src/ehc/Opts/Base.chs" #-}
+{-# LINE 662 "src/ehc/Opts/Base.chs" #-}
 ehcOptIsViaCmm :: EHCOpts -> Bool
 ehcOptIsViaCmm opts = ehcOptIsViaGrinCmmJavaScript opts
 {-# INLINE ehcOptIsViaCmm #-}
 
-{-# LINE 667 "src/ehc/Opts/Base.chs" #-}
+{-# LINE 668 "src/ehc/Opts/Base.chs" #-}
 ehcOptIsViaGrin :: EHCOpts -> Bool
 ehcOptIsViaGrin opts = ehcOptIsViaGrinCmmJavaScript opts || targetIsGrinBytecode t || targetDoesHPTAnalysis t
   where t = ehcOptTarget opts
 
-{-# LINE 677 "src/ehc/Opts/Base.chs" #-}
+{-# LINE 678 "src/ehc/Opts/Base.chs" #-}
 ehcOptBuiltin :: EHCOpts -> (EHBuiltinNames -> x) -> x
 ehcOptBuiltin o f = f $ ehcOptBuiltinNames o
 
 ehcOptBuiltin2 :: EHCOpts -> (EHBuiltinNames -> Int -> HsName) -> Int -> HsName
 ehcOptBuiltin2 o f i = f (ehcOptBuiltinNames o) i
 
-{-# LINE 689 "src/ehc/Opts/Base.chs" #-}
+{-# LINE 690 "src/ehc/Opts/Base.chs" #-}
 -- | Either fromJust with a possible panic, or with a default value (when debugging)
 ehcOptFromJust :: EHCOpts -> String -> a -> Maybe a -> a
 ehcOptFromJust opts panicMsg n m
   | ehcOptDebug opts = maybe n id m
   | otherwise        = panicJust panicMsg m
 
-{-# LINE 701 "src/ehc/Opts/Base.chs" #-}
+{-# LINE 702 "src/ehc/Opts/Base.chs" #-}
 -- | Do linking into executable?
 ehcOptDoExecLinking :: EHCOpts -> Bool
 ehcOptDoExecLinking opts = ehcOptLinkingStyle opts == LinkingStyle_Exec
diff --git a/src/UHC/Light/Compiler/SourceCodeSig.hs b/src/UHC/Light/Compiler/SourceCodeSig.hs
--- a/src/UHC/Light/Compiler/SourceCodeSig.hs
+++ b/src/UHC/Light/Compiler/SourceCodeSig.hs
@@ -1,3 +1,3 @@
 module UHC.Light.Compiler.SourceCodeSig where
-sig = "91ec134501c89c7338c1ba5c8f79b3d9"
-timestamp = "20141127 +0100 174525"
+sig = "e362a66c2b262f178ba80e9829fe11ef"
+timestamp = "20141203 +0100 194158"
diff --git a/uhc-light.cabal b/uhc-light.cabal
--- a/uhc-light.cabal
+++ b/uhc-light.cabal
@@ -1,5 +1,5 @@
 Name:				uhc-light
-Version:			1.1.7.3
+Version:			1.1.7.4
 License:			BSD3
 Copyright:			Utrecht University, Department of Information and Computing Sciences, Software Technology group
 Build-Type:			 Simple 
@@ -12,7 +12,7 @@
 Synopsis:			Part of UHC packaged as cabal/hackage installable library
 Description:		A 'light' variant of UHC including only an API and an executable for compiling to Core representation. This version is just to test the infrastructure. Later versions will provide a fleshing out of the API etc..
 Cabal-Version:      >= 1.8
-data-files:          103/lib/ag/AnaDomain/AbsSyn.ag,103/lib/ag/Cmm/AbsSyn.ag,103/lib/ag/Core/AbsSyn.ag,103/lib/ag/CoreRun/AbsSyn.ag,103/lib/ag/EH/AbsSyn.ag,103/lib/ag/Error/AbsSyn.ag,103/lib/ag/Foreign/AbsSyn.ag,103/lib/ag/GrinByteCode/AbsSyn.ag,103/lib/ag/GrinCode/AbsSyn.ag,103/lib/ag/HS/AbsSyn.ag,103/lib/ag/JavaScript/AbsSyn.ag,103/lib/ag/JVMClass/AbsSyn.ag,103/lib/ag/LLVM/AbsSyn.ag,103/lib/ag/Silly/AbsSyn.ag,103/lib/ag/Ty/AbsSyn.ag,103/lib/ag/TyCore/AbsSyn.ag,103/lib/pkg/array-1.0.0.0/103/cr/plain/Data/Array.cr,103/lib/pkg/array-1.0.0.0/103/cr/plain/Data/Array.hi,103/lib/pkg/array-1.0.0.0/103/cr/plain/installed-pkg-config,103/lib/pkg/base-3.0.0.0/103/cr/plain/CompileAll,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Applicative.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Applicative.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Arrow.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Arrow.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Category.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Category.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Fix.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Fix.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Instances.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Instances.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST/Lazy.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST/Lazy.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Bool.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Bool.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Complex.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Complex.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Dynamic.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Dynamic.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Eq.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Eq.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Foldable.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Foldable.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Function.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Function.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ix.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ix.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Monoid.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Monoid.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ord.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ord.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ratio.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ratio.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/String.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/String.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Traversable.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Traversable.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/include/consUtils.h,103/lib/pkg/base-3.0.0.0/103/cr/plain/installed-pkg-config,103/lib/pkg/base-3.0.0.0/103/cr/plain/Numeric.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Numeric.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Prelude.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Prelude.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Console/GetOpt.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Console/GetOpt.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Exit.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Exit.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadP.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadP.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadPrec.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadPrec.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read/Lex.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read/Lex.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show/Functions.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show/Functions.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Control/Monad.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Control/Monad.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Bits.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Bits.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Char.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Char.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Either.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Either.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/IORef.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/IORef.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/List.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/List.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Maybe.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Maybe.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Typeable.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Data/Typeable.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Debug/Trace.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Debug/Trace.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/Ptr.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/Ptr.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/StablePtr.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Foreign/StablePtr.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/CTypes.h,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/dirUtils.h,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/HsBase.h,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/HsBaseConfig.h,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/IntLikeInstance.h,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/MachDeps.h,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/TupleInstance.h,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/include/Typeable.h,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/installed-pkg-config,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Error.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Error.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Fix.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Fix.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Unsafe.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO/Unsafe.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/System/IO.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Array.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Array.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Base.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Base.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bits.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bits.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bounded.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Bounded.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/BoxArray.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/BoxArray.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Char.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Char.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Enum.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Enum.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Eq.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Eq.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Float.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Float.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/GC.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/GC.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics/Tuple.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics/Tuple.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Generics.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Handle.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Handle.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IO.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IO.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IOBase.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/IOBase.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ix.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ix.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/LazyST.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/LazyST.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MutVar.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MutVar.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MVar.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/MVar.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/OldException.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/OldException.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ord.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ord.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Prims.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Prims.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ptr.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Ptr.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Read.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Read.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Real.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Real.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Run.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Run.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Show.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Show.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/ST.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/ST.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StablePtr.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StablePtr.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StackTrace.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/StackTrace.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/STRef.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/STRef.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Types.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Types.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Weak.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/Weak.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/WeakPtr.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/UHC/WeakPtr.hi,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Unsafe/Coerce.cr,103/lib/pkg/uhcbase-1.1.7.3/103/cr/plain/Unsafe/Coerce.hi 
+data-files:          103/lib/ag/AnaDomain/AbsSyn.ag,103/lib/ag/Cmm/AbsSyn.ag,103/lib/ag/Core/AbsSyn.ag,103/lib/ag/CoreRun/AbsSyn.ag,103/lib/ag/EH/AbsSyn.ag,103/lib/ag/Error/AbsSyn.ag,103/lib/ag/Foreign/AbsSyn.ag,103/lib/ag/GrinByteCode/AbsSyn.ag,103/lib/ag/GrinCode/AbsSyn.ag,103/lib/ag/HS/AbsSyn.ag,103/lib/ag/JavaScript/AbsSyn.ag,103/lib/ag/JVMClass/AbsSyn.ag,103/lib/ag/LLVM/AbsSyn.ag,103/lib/ag/Silly/AbsSyn.ag,103/lib/ag/Ty/AbsSyn.ag,103/lib/ag/TyCore/AbsSyn.ag,103/lib/pkg/array-1.0.0.0/103/cr/plain/Data/Array.cr,103/lib/pkg/array-1.0.0.0/103/cr/plain/Data/Array.hi,103/lib/pkg/array-1.0.0.0/103/cr/plain/installed-pkg-config,103/lib/pkg/base-3.0.0.0/103/cr/plain/CompileAll,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Applicative.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Applicative.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Arrow.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Arrow.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Category.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Category.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Fix.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Fix.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Instances.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/Instances.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST/Lazy.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST/Lazy.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Control/Monad/ST.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Bool.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Bool.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Complex.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Complex.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Dynamic.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Dynamic.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Eq.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Eq.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Foldable.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Foldable.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Function.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Function.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ix.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ix.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Monoid.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Monoid.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ord.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ord.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ratio.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Ratio.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/String.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/String.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Traversable.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Data/Traversable.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/include/consUtils.h,103/lib/pkg/base-3.0.0.0/103/cr/plain/installed-pkg-config,103/lib/pkg/base-3.0.0.0/103/cr/plain/Numeric.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Numeric.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Prelude.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Prelude.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Console/GetOpt.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Console/GetOpt.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Exit.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/System/Exit.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadP.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadP.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadPrec.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/ParserCombinators/ReadPrec.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read/Lex.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read/Lex.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Read.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show/Functions.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show/Functions.hi,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show.cr,103/lib/pkg/base-3.0.0.0/103/cr/plain/Text/Show.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Control/Monad.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Control/Monad.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Bits.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Bits.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Char.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Char.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Either.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Either.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/IORef.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/IORef.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/List.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/List.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Maybe.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Maybe.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Typeable.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Data/Typeable.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Debug/Trace.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Debug/Trace.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/Ptr.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/Ptr.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/StablePtr.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Foreign/StablePtr.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/CTypes.h,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/dirUtils.h,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/HsBase.h,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/HsBaseConfig.h,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/IntLikeInstance.h,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/MachDeps.h,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/TupleInstance.h,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/include/Typeable.h,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/installed-pkg-config,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Error.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Error.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Fix.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Fix.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Unsafe.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO/Unsafe.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/System/IO.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Array.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Array.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Base.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Base.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bits.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bits.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bounded.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Bounded.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/BoxArray.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/BoxArray.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Char.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Char.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Enum.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Enum.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Eq.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Eq.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Float.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Float.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/GC.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/GC.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics/Tuple.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics/Tuple.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Generics.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Handle.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Handle.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IO.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IO.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IOBase.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/IOBase.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ix.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ix.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/LazyST.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/LazyST.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MutVar.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MutVar.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MVar.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/MVar.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/OldException.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/OldException.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ord.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ord.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Prims.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Prims.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ptr.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Ptr.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Read.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Read.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Real.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Real.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Run.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Run.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Show.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Show.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/ST.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/ST.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StablePtr.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StablePtr.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StackTrace.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/StackTrace.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/STRef.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/STRef.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Types.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Types.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Weak.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/Weak.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/WeakPtr.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/UHC/WeakPtr.hi,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Unsafe/Coerce.cr,103/lib/pkg/uhcbase-1.1.7.4/103/cr/plain/Unsafe/Coerce.hi 
 extra-source-files:  changelog.md 
 
 Library
@@ -24,6 +24,6 @@
 
 Executable uhcl
   Hs-Source-Dirs:       src
-  Build-Depends:		uhc-light==1.1.7.3, fgl,hashable>=1.1&&<1.3,uhc-util>=0.1.3.7,base>=4&&<5,vector,syb,uulib,network,binary,mtl,directory,containers,array,process,primitive,binary,syb,bytestring,uulib>=0.9.12,old-locale
+  Build-Depends:		uhc-light==1.1.7.4, fgl,hashable>=1.1&&<1.3,uhc-util>=0.1.3.7,base>=4&&<5,vector,syb,uulib,network,binary,mtl,directory,containers,array,process,primitive,binary,syb,bytestring,uulib>=0.9.12,old-locale
   Extensions:			RankNTypes,MultiParamTypeClasses,FunctionalDependencies,UndecidableInstances,DeriveDataTypeable,OverlappingInstances,LiberalTypeSynonyms,StandaloneDeriving,FlexibleContexts,FlexibleInstances,TypeSynonymInstances,ScopedTypeVariables
   Main-Is:           	EHC.hs
