úÎŽÜ;      !"#$%&'()*+,-./0123456789:Safe,FQV$ )A monad in the category of monads, using  from  as the analog of ; and  as the analog of (<): \embed lift = id embed f (lift m) = f m embed g (embed f t) = embed (\m -> embed g (f m)) tEmbed a newly created  layer within an existing layer is analogous to (<)+A functor in the category of monads, using  as the analog of =: 0hoist (f . g) = hoist f . hoist g hoist id = idLift a monad morphism from m to n$ into a monad morphism from (t m) to (t n)The first argument to T must be a monad morphism, even though the type system does not enforce thisA function that  generalizes the > base monad to be any monad. Squash two  layers into a single layer is analogous to ? Compose two  layer-building functions() is analogous to (@) Equivalent to () with the arguments flipped( ) is analogous to (A)  An infix operator equivalent to ( ) is analogous to (<) Equivalent to ( ) with the arguments flipped( ) is analogous to (B)   2 2 2 2Safe;<=>?Fƒ$"Composition of monad transformers.'#Transform the computation inside a $.$%&'$%&'$%&$9 %9 C      !"#$%&'())*+,-./0123456789:;<=>?@A?@B?@C?DE?@F?GH?GI?@JK!mmorph-1.1.1-Dt6dbUs60mFxSkDItiwBControl.Monad.MorphControl.Monad.Trans.Compose+transformers-0.5.5.0-1bbDhu8ypp8LC8lJMFju65Control.Monad.Trans.Classlift MonadTransMMonadembedMFunctorhoist generalizesquash>|><|<=<||>=$fMFunctorTYPELift$fMFunctorTYPEBackwards$fMFunctorTYPEProduct$fMFunctorTYPECompose$fMFunctorTYPEWriterT$fMFunctorTYPEWriterT0$fMFunctorTYPEStateT$fMFunctorTYPEStateT0$fMFunctorTYPERWST$fMFunctorTYPERWST0$fMFunctorTYPEReaderT$fMFunctorTYPEMaybeT$fMFunctorTYPEListT$fMFunctorTYPEIdentityT$fMFunctorTYPEExceptT$fMFunctorTYPEErrorT$fMMonadWriterT$fMMonadWriterT0$fMMonadReaderT$fMMonadMaybeT $fMMonadListT$fMMonadIdentityT$fMMonadExceptT$fMMonadErrorTComposeT getComposeT mapComposeT$fMonadWriterwComposeT$fMonadStatesComposeT$fMonadReaderrComposeT$fMonadRWSrwsComposeT$fMonadErroreComposeT$fMonadContComposeT$fTraversableComposeT$fFoldableComposeT$fMonadIOComposeT$fMonadPlusComposeT$fMonadComposeT$fAlternativeComposeT$fApplicativeComposeT$fFunctorComposeT$fMonadTransComposeT $fEqComposeT $fOrdComposeT$fReadComposeT$fShowComposeTbaseGHC.Basereturn=<<fmapData.Functor.IdentityIdentityjoin Control.Monad>=><=<>>=