úÎw?      !"#$%&'()*+,-./0123456789:;<=> ,A representation of a contravariant functor #An adjunction from Hask^op to Hask   Op (f a) b ~ Hask a (g b)  rightAdjunct unit = id  leftAdjunct counit = id  :Represent a contravariant functor that has a left adjoint ?'This gives rise to the Cont Bool monad @-This adjunction gives rise to the Cont monad    MPTCs, fundeps provisionalEdward Kmett <ekmett@gmail.com>     #An adjunction from Hask to Hask^op   Hask (f a) b ~ Op a (g b)  rightAdjunct unit = id  leftAdjunct counit = id rank 2 types, MPTCs, fundeps experimentalEdward Kmett <ekmett@gmail.com> %An adjunction between Hask and Hask.  rightAdjunct unit = id  leftAdjunct counit = id    MPTCs, fundeps provisionalEdward Kmett <ekmett@gmail.com> !"#$% !"#$%#%$ !" !"!"#$%MPTCs, fundeps provisionalEdward Kmett <ekmett@gmail.com>&'()*+AiExploiting this instance requires that we have the missing Traversables for Identity, (,)e and IdentityT &'()*+)+*&'(&'('()*+rank-2 types, MPTCs experimentalEdward Kmett <ekmett@gmail.com>,-./0123B45678 ,-./012345678 /012345,-.678 ,-.-./01012345678MPTCs, fundeps provisionalEdward Kmett <ekmett@gmail.com>9:;<=>9:;<=><>=9:;9:;:;<=>C             ! !""#$$%&'()*+,-./01adjunctions-0.3.1%Data.Functor.Contravariant.AdjunctionControl.Monad.Contra)Data.Functor.Contravariant.DualAdjunctionData.Functor.AdjunctionControl.Comonad.Trans.AdjointControl.Monad.Trans.AdjointData.Functor.ZapControl.Comonad.ContraRepresentationrepunrep Adjunctionunitcounit leftAdjunct rightAdjunct repAdjunctionrepFlippedAdjunctionContraT runContraTContracontra runContraDualAdjunctionunitOpcounitOp leftAdjunctOprightAdjunctOpAdjointT runAdjointTAdjointadjoint runAdjointBizap bizapWithZapzapWithzapflipZap zapAdjunction composeZapbizap flipBizapbizapProductSum$fAdjunctionPredicatePredicate$fAdjunctionOpOp$fMonadTransAdjointTstrength