module Control.Monad.Syntax.Five where (=====<<) :: Monad m => (a -> b -> c -> d -> e -> m f) -> m a -> b -> c -> d -> e -> m f =====<< :: forall (m :: * -> *) a b c d e f. Monad m => (a -> b -> c -> d -> e -> m f) -> m a -> b -> c -> d -> e -> m f (=====<<) a -> b -> c -> d -> e -> m f mf m a x b b c c d d e e = m a x forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= (\a a -> a -> b -> c -> d -> e -> m f mf a a b b c c d d e e) infixr 1 =====<< (=.===<<) :: Monad m => (a -> b -> c -> d -> e -> m f) -> m b -> a -> c -> d -> e -> m f =.===<< :: forall (m :: * -> *) a b c d e f. Monad m => (a -> b -> c -> d -> e -> m f) -> m b -> a -> c -> d -> e -> m f (=.===<<) a -> b -> c -> d -> e -> m f mf m b x a a c c d d e e = m b x forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= (\b b -> a -> b -> c -> d -> e -> m f mf a a b b c c d d e e) infixr 1 =.===<< (==.==<<) :: Monad m => (a -> b -> c -> d -> e -> m f) -> m c -> a -> b -> d -> e -> m f ==.==<< :: forall (m :: * -> *) a b c d e f. Monad m => (a -> b -> c -> d -> e -> m f) -> m c -> a -> b -> d -> e -> m f (==.==<<) a -> b -> c -> d -> e -> m f mf m c x a a b b d d e e = m c x forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= (\c c -> a -> b -> c -> d -> e -> m f mf a a b b c c d d e e) infixr 1 ==.==<< (===.=<<) :: Monad m => (a -> b -> c -> d -> e -> m f) -> m d -> a -> b -> c -> e -> m f ===.=<< :: forall (m :: * -> *) a b c d e f. Monad m => (a -> b -> c -> d -> e -> m f) -> m d -> a -> b -> c -> e -> m f (===.=<<) a -> b -> c -> d -> e -> m f mf m d x a a b b c c e e = m d x forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= (\d d -> a -> b -> c -> d -> e -> m f mf a a b b c c d d e e) infixr 1 ===.=<< (====.<<) :: Monad m => (a -> b -> c -> d -> e -> m f) -> m e -> a -> b -> c -> d -> m f ====.<< :: forall (m :: * -> *) a b c d e f. Monad m => (a -> b -> c -> d -> e -> m f) -> m e -> a -> b -> c -> d -> m f (====.<<) a -> b -> c -> d -> e -> m f mf m e x a a b b c c d d = m e x forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= a -> b -> c -> d -> e -> m f mf a a b b c c d d infixr 1 ====.<<