-import Type
-import CoreSyn
-import Literal
-import TysWiredIn ( tupleCon )
-import Name ( mkLocalName, mkSysLocalName, mkCompoundName,
- occNameString, Name, OccName, NamedThing(..)
+import TysWiredIn ( boolTy )
+import Type ( Type, ThetaType,
+ mkDictTy, mkTyConApp, mkTyVarTys, mkFunTys, mkFunTy, mkSigmaTy,
+ isUnLiftedType, substFlexiTheta,
+ splitSigmaTy, splitFunTy_maybe, splitAlgTyConApp,
+ splitFunTys, splitForAllTys
+ )
+import TyCon ( TyCon, isNewTyCon, tyConDataCons, isDataTyCon )
+import Class ( Class, classBigSig, classTyCon )
+import Var ( Id, TyVar, VarDetails(..), mkId )
+import VarEnv ( zipVarEnv )
+import Const ( Con(..) )
+import Name ( mkCompoundName, mkWiredInIdName,
+ mkWorkerName, mkSuperDictSelName,
+ Name, NamedThing(..),
+ )
+import PrimOp ( PrimOp, primOpType, primOpStr, primOpUniq )
+import DataCon ( DataCon, dataConStrictMarks, dataConFieldLabels,
+ dataConArgTys, dataConSig