import DataCon ( dataConSig, dataConFieldLabels,
dataConSourceArity
)
-import Id ( isDataConWrapId_maybe )
import Type ( isTauTy, mkTyConApp, mkClassPred, boxedTypeKind )
import Subst ( substTy, substClasses )
import TysPrim ( charPrimTy, intPrimTy, floatPrimTy,