-gHC_PRIM, gHC_BOOL, gHC_GENERICS, gHC_BASE, gHC_ENUM, gHC_SHOW, gHC_READ,
- gHC_NUM, gHC_INTEGER, gHC_LIST, gHC_PARR, dATA_TUP, dATA_EITHER,
- dATA_STRING, gHC_PACK, gHC_CONC, gHC_IO_BASE, gHC_ST, gHC_ARR,
- gHC_STABLE, gHC_ADDR, gHC_PTR, gHC_ERR, gHC_REAL, gHC_FLOAT,
- gHC_TOP_HANDLER, sYSTEM_IO, dYNAMIC, tYPEABLE, gENERICS, dOTNET,
- rEAD_PREC, lEX, gHC_INT, gHC_WORD, mONAD, mONAD_FIX, aRROW,
- gHC_DESUGAR, rANDOM, gHC_EXTS :: Module
-gHC_PRIM = mkPrimModule FSLIT("GHC.Prim") -- Primitive types and values
-gHC_BOOL = mkPrimModule FSLIT("GHC.Bool")
-gHC_ORDERING = mkPrimModule FSLIT("GHC.Ordering")
-gHC_GENERICS = mkPrimModule FSLIT("GHC.Generics")
-gHC_BASE = mkBaseModule FSLIT("GHC.Base")
-gHC_ENUM = mkBaseModule FSLIT("GHC.Enum")
-gHC_SHOW = mkBaseModule FSLIT("GHC.Show")
-gHC_READ = mkBaseModule FSLIT("GHC.Read")
-gHC_NUM = mkBaseModule FSLIT("GHC.Num")
-gHC_INTEGER = mkIntegerModule FSLIT("GHC.Integer")
-gHC_LIST = mkBaseModule FSLIT("GHC.List")
-gHC_PARR = mkBaseModule FSLIT("GHC.PArr")
-dATA_TUP = mkBaseModule FSLIT("Data.Tuple")
-dATA_EITHER = mkBaseModule FSLIT("Data.Either")
-dATA_STRING = mkBaseModule FSLIT("Data.String")
-gHC_PACK = mkBaseModule FSLIT("GHC.Pack")
-gHC_CONC = mkBaseModule FSLIT("GHC.Conc")
-gHC_IO_BASE = mkBaseModule FSLIT("GHC.IOBase")
-gHC_ST = mkBaseModule FSLIT("GHC.ST")
-gHC_ARR = mkBaseModule FSLIT("GHC.Arr")
-gHC_STABLE = mkBaseModule FSLIT("GHC.Stable")
-gHC_ADDR = mkBaseModule FSLIT("GHC.Addr")
-gHC_PTR = mkBaseModule FSLIT("GHC.Ptr")
-gHC_ERR = mkBaseModule FSLIT("GHC.Err")
-gHC_REAL = mkBaseModule FSLIT("GHC.Real")
-gHC_FLOAT = mkBaseModule FSLIT("GHC.Float")
-gHC_TOP_HANDLER = mkBaseModule FSLIT("GHC.TopHandler")
-sYSTEM_IO = mkBaseModule FSLIT("System.IO")
-dYNAMIC = mkBaseModule FSLIT("Data.Dynamic")
-tYPEABLE = mkBaseModule FSLIT("Data.Typeable")
-gENERICS = mkBaseModule FSLIT("Data.Generics.Basics")
-dOTNET = mkBaseModule FSLIT("GHC.Dotnet")
-rEAD_PREC = mkBaseModule FSLIT("Text.ParserCombinators.ReadPrec")
-lEX = mkBaseModule FSLIT("Text.Read.Lex")
-gHC_INT = mkBaseModule FSLIT("GHC.Int")
-gHC_WORD = mkBaseModule FSLIT("GHC.Word")
-mONAD = mkBaseModule FSLIT("Control.Monad")
-mONAD_FIX = mkBaseModule FSLIT("Control.Monad.Fix")
-aRROW = mkBaseModule FSLIT("Control.Arrow")
-gHC_DESUGAR = mkBaseModule FSLIT("GHC.Desugar")
-rANDOM = mkBaseModule FSLIT("System.Random")
-gHC_EXTS = mkBaseModule FSLIT("GHC.Exts")
+gHC_PRIM, gHC_TYPES, gHC_UNIT, gHC_ORDERING, gHC_GENERICS,
+ gHC_MAGIC,
+ gHC_CLASSES, gHC_BASE, gHC_ENUM,
+ gHC_SHOW, gHC_READ, gHC_NUM, gHC_INTEGER, gHC_INTEGER_TYPE, gHC_LIST,
+ gHC_HETMET_CODETYPES,
+ gHC_HETMET_PRIVATE,
+ gHC_HETMET_GARROW,
+ gHC_TUPLE, dATA_TUPLE, dATA_EITHER, dATA_STRING, dATA_FOLDABLE, dATA_TRAVERSABLE,
+ gHC_PACK, gHC_CONC, gHC_IO, gHC_IO_Exception,
+ gHC_ST, gHC_ARR, gHC_STABLE, gHC_ADDR, gHC_PTR, gHC_ERR, gHC_REAL,
+ gHC_FLOAT, gHC_TOP_HANDLER, sYSTEM_IO, dYNAMIC, tYPEABLE, gENERICS,
+ dOTNET, rEAD_PREC, lEX, gHC_INT, gHC_WORD, mONAD, mONAD_FIX, aRROW, cONTROL_APPLICATIVE,
+ gHC_DESUGAR, rANDOM, gHC_EXTS, cONTROL_EXCEPTION_BASE :: Module
+
+gHC_PRIM = mkPrimModule (fsLit "GHC.Prim") -- Primitive types and values
+gHC_TYPES = mkPrimModule (fsLit "GHC.Types")
+gHC_UNIT = mkPrimModule (fsLit "GHC.Unit")
+gHC_ORDERING = mkPrimModule (fsLit "GHC.Ordering")
+gHC_GENERICS = mkPrimModule (fsLit "GHC.Generics")
+gHC_MAGIC = mkPrimModule (fsLit "GHC.Magic")
+
+gHC_CLASSES = mkBaseModule (fsLit "GHC.Classes")
+gHC_BASE = mkBaseModule (fsLit "GHC.Base")
+gHC_ENUM = mkBaseModule (fsLit "GHC.Enum")
+gHC_SHOW = mkBaseModule (fsLit "GHC.Show")
+gHC_READ = mkBaseModule (fsLit "GHC.Read")
+gHC_NUM = mkBaseModule (fsLit "GHC.Num")
+gHC_INTEGER = mkIntegerModule (fsLit "GHC.Integer")
+gHC_INTEGER_TYPE= mkIntegerModule (fsLit "GHC.Integer.Type")
+gHC_HETMET_CODETYPES = mkBaseModule (fsLit "GHC.HetMet.CodeTypes")
+gHC_HETMET_PRIVATE = mkBaseModule (fsLit "GHC.HetMet.Private")
+gHC_HETMET_GARROW = mkBaseModule (fsLit "GHC.HetMet.GArrow")
+gHC_LIST = mkBaseModule (fsLit "GHC.List")
+gHC_TUPLE = mkPrimModule (fsLit "GHC.Tuple")
+dATA_TUPLE = mkBaseModule (fsLit "Data.Tuple")
+dATA_EITHER = mkBaseModule (fsLit "Data.Either")
+dATA_STRING = mkBaseModule (fsLit "Data.String")
+dATA_FOLDABLE = mkBaseModule (fsLit "Data.Foldable")
+dATA_TRAVERSABLE= mkBaseModule (fsLit "Data.Traversable")
+gHC_PACK = mkBaseModule (fsLit "GHC.Pack")
+gHC_CONC = mkBaseModule (fsLit "GHC.Conc")
+gHC_IO = mkBaseModule (fsLit "GHC.IO")
+gHC_IO_Exception = mkBaseModule (fsLit "GHC.IO.Exception")
+gHC_ST = mkBaseModule (fsLit "GHC.ST")
+gHC_ARR = mkBaseModule (fsLit "GHC.Arr")
+gHC_STABLE = mkBaseModule (fsLit "GHC.Stable")
+gHC_ADDR = mkBaseModule (fsLit "GHC.Addr")
+gHC_PTR = mkBaseModule (fsLit "GHC.Ptr")
+gHC_ERR = mkBaseModule (fsLit "GHC.Err")
+gHC_REAL = mkBaseModule (fsLit "GHC.Real")
+gHC_FLOAT = mkBaseModule (fsLit "GHC.Float")
+gHC_TOP_HANDLER = mkBaseModule (fsLit "GHC.TopHandler")
+sYSTEM_IO = mkBaseModule (fsLit "System.IO")
+dYNAMIC = mkBaseModule (fsLit "Data.Dynamic")
+tYPEABLE = mkBaseModule (fsLit "Data.Typeable")
+gENERICS = mkBaseModule (fsLit "Data.Data")
+dOTNET = mkBaseModule (fsLit "GHC.Dotnet")
+rEAD_PREC = mkBaseModule (fsLit "Text.ParserCombinators.ReadPrec")
+lEX = mkBaseModule (fsLit "Text.Read.Lex")
+gHC_INT = mkBaseModule (fsLit "GHC.Int")
+gHC_WORD = mkBaseModule (fsLit "GHC.Word")
+mONAD = mkBaseModule (fsLit "Control.Monad")
+mONAD_FIX = mkBaseModule (fsLit "Control.Monad.Fix")
+aRROW = mkBaseModule (fsLit "Control.Arrow")
+cONTROL_APPLICATIVE = mkBaseModule (fsLit "Control.Applicative")
+gHC_DESUGAR = mkBaseModule (fsLit "GHC.Desugar")
+rANDOM = mkBaseModule (fsLit "System.Random")
+gHC_EXTS = mkBaseModule (fsLit "GHC.Exts")
+cONTROL_EXCEPTION_BASE = mkBaseModule (fsLit "Control.Exception.Base")
+
+gHC_PARR :: PackageId -> Module
+gHC_PARR pkg = mkModule pkg (mkModuleNameFS (fsLit "Data.Array.Parallel"))
+
+gHC_PARR' :: Module
+gHC_PARR' = mkBaseModule (fsLit "GHC.PArr")