úε` non-portable experimental%Andy Sonnenburg <andy22286@gmail.com> Safe-Inferred      non-portable experimental%Andy Sonnenburg <andy22286@gmail.com> Safe-Inferred   non-portable experimental%Andy Sonnenburg <andy22286@gmail.com> Safe-InferredThe permutation monad The permutation applicative  Unwrap a , combining actions using the  for f.  Unwrap a , combining actions using the  for f.  A version of  that can be used with just an  for m. Lift a monad homomorphism from m to n into a monad homomorphism from  m to  n. * !"#$%&'()*+,-./0123456789:;<=>?@$ #"!$%&'()*+,-./0123456789:;<=>?@ non-portable experimental%Andy Sonnenburg <andy22286@gmail.com> Safe-Inferred non-portable experimental%Andy Sonnenburg <andy22286@gmail.com> Safe-InferredA      !"#$ %&'()*+,-./0123456789:;<=>?@ABCDEFGHI perm-0.3.0.1Control.Monad.PermControl.Applicative.PermControl.Monad.Perm.DictControl.Monad.Perm.OptionControl.Monad.Perm.BasePermTPermrunPermrunPermTliftPerm hoistPermZeroDictPlusDictUnit MonadPlus AlternativeDictMonad ApplicativeOptionReturnZerooption hoistOption$fMonadPlusOption $fMonadOption$fAlternativeOption$fApplicativeOption$fFunctorOption$fMonoidOptionbaseControl.Applicative Control.Monadtransformers-0.3.0.0Control.Monad.Trans.ClassliftBranchBindApBranchesBinTipNilChoicesumB liftBranch hoistBranches hoistBranchapP.@apBflipA2orBbindPthenPMthenBMmplusB localBranchmapB$fMonadThrowePermT$fMonadStatesPermT$fMonadReaderrPermT$fMonadIOPermT$fMonadTransPermT$fMonadPlusPermT $fMonadPermT$fAlternativePermT$fApplicativePermT$fFunctorBranch$fFunctorBranches$fFunctorPermT$fMonoidBranches