type role A phantom phantom data A (x :: k) (y :: k1) -- Defined at :3:1 A :: k -> k1 -> * type role T phantom data T (a :: k) where MkT :: forall (k :: BOX) (a :: k) a1. a1 -> T a -- Defined at :7:1