diff --git a/haskus-utils-variant.cabal b/haskus-utils-variant.cabal
--- a/haskus-utils-variant.cabal
+++ b/haskus-utils-variant.cabal
@@ -1,6 +1,6 @@
 cabal-version: 1.20
 name: haskus-utils-variant
-version: 2.1
+version: 2.1.1
 license: BSD3
 license-file: LICENSE
 copyright: Sylvain Henry 2018
diff --git a/src/lib/Haskus/Utils/EADT.hs b/src/lib/Haskus/Utils/EADT.hs
--- a/src/lib/Haskus/Utils/EADT.hs
+++ b/src/lib/Haskus/Utils/EADT.hs
@@ -84,7 +84,7 @@
 -- | Lift an EADT into another
 liftEADT :: forall e as bs.
    ( e ~ Fix (VariantF bs)
-   , LiftVariantF e as bs
+   , LiftVariantF as bs e
    , Functor (VariantF as)
    ) => EADT as -> EADT bs
 liftEADT = cata (Fix . liftVariantF)
diff --git a/src/lib/Haskus/Utils/VariantF.hs b/src/lib/Haskus/Utils/VariantF.hs
--- a/src/lib/Haskus/Utils/VariantF.hs
+++ b/src/lib/Haskus/Utils/VariantF.hs
@@ -137,14 +137,14 @@
 mapVariantF f (VariantF v) = VariantF (mapVariant @(a e) @(b e) @(ApplyAll e cs) f v)
 
 -- | xs is liftable in ys
-type LiftVariantF e xs ys =
+type LiftVariantF xs ys e =
    ( IsSubset xs ys ~ 'True
    , LiftVariant (ApplyAll e xs) (ApplyAll e ys)
    )
 
 -- | Lift a VariantF into another
-liftVariantF :: forall e as bs.
-   ( LiftVariantF e as bs
+liftVariantF :: forall as bs e.
+   ( LiftVariantF as bs e
    ) => VariantF as e -> VariantF bs e
 liftVariantF (VariantF v) = VariantF (liftVariant' v)
 
