Control.Supermonad.Constrained
class Bind m n p
class Return m
class Fail m
class CFunctor f
type family Monad m :: Constraint where ...