{-# LANGUAGE ExistentialQuantification #-}

data Foo
  = forall a. MkFoo a (a -> Bool)
  | forall a. Eq a => MkBar a

data Bar = forall x y.
         Bar x y x y

data Baz = forall x y.
         Baz x y x
             y
