{-# LANGUAGE TypeFamilies
           , KindSignatures
           , RankNTypes
           #-}

type family PF a :: (* -> *) -> * -> *

class Ix a where
    type Es a :: * -> *
    from  :: a          -> PF a (Es a) a

crash :: (forall n. Es a n) -> a
crash = from
