dX:K      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJ Safe-Inferred KLMNOPQRSTUVWLRSTUVW KLMNOPQRSTUVW(c) Ross Paterson 2012 BSD-style (see the file LICENSE)ross@soi.city.ac.uk experimentalportable Safe-InferredSignature of the pass operation, introduced in Control.Monad.Trans.Writer.Signature of the listen operation, introduced in Control.Monad.Trans.Writer.Signature of the catchE operation, introduced in Control.Monad.Trans.Except.Signature of the callCC operation, introduced in Control.Monad.Trans.Cont.)(c) Ross Paterson 2013, Edward Kmett 2014 BSD-style (see the file LICENSE)ross@soi.city.ac.uk experimentalportable Safe-Inferred Lifting of the X" class to unary type constructors.Lifting of the Y" class to unary type constructors.Lifting of the Z" class to unary type constructors. Lifting of the [" class to unary type constructors.   p d is a parser for datatypes where each alternative begins with a data constructor. It parses the constructor and passes it to p=. Parsers for various constructors can be constructed with  ,  and , and combined with mappend from the Monoid class.   n c n'R matches the name of a unary data constructor and then parses its argument using \. n c n'R matches the name of a unary data constructor and then parses its argument using . n c n'T matches the name of a binary data constructor and then parses its arguments using . n d xK produces the string representation of a unary data constructor with name n and argument x, in precedence context d. n d xK produces the string representation of a unary data constructor with name n and argument x, in precedence context d. n d xL produces the string representation of a binary data constructor with name n and arguments x and y, in precedence context d.v]^ _`abcdefghijklmnopqrstuvwxyz{|}~    q]^  _`abcdefghijklmnopqrstuvwxyz{|}~(c) Ross Paterson 2010 BSD-style (see the file LICENSE)ross@soi.city.ac.uk experimentalportable Safe-InferredAn applicative functor that collects a monoid (e.g. lists) of errors. A sequence of computations fails if any of its components do, but unlike monads made with ErrorT from Control.Monad.Trans.ErrorI, these computations continue after an error, collecting all the errors.WApplicative functor formed by adding pure computations to a given applicative functor. Projection to the other functor.Report an error.A combination is  only either part is.A combination is  only if both parts are.<(C) 2013 Ross Paterson (C) 2015 Edward Kmett BSD-style (see the file LICENSE)ross@soi.city.ac.uk experimentalportable Safe-Inferred246 9A monad transformer that adds exceptions to other monads.ExceptT2 constructs a monad parameterized over two things:e - The exception type.m - The inner monad.The E function yields a computation that produces the given value, while >>=@ sequences two subcomputations, exiting on the first exception.$The parameterizable exception monad.4Computations are either exceptions or normal values.The ( function returns a normal value, while >>= exits on the first exception.FConstructor for computations in the exception monad. (The inverse of ).DExtractor for computations in the exception monad. (The inverse of ).7Map the unwrapped computation using the given function.  ( f m) = f ( m) bTransform any exceptions thrown by the computation using the given function (a specialization of ").!7Map the unwrapped computation using the given function.  (! f m) = f ( m)"MTransform any exceptions thrown by the computation using the given function.#Signal an exception value e.  (# e) =  ( e) # e >>= m = # e$Handle an exception. $ h ( m) =  m $ h (# e) = h e%Lift a callCC operation to the new monad.&Lift a listen operation to the new monad.'Lift a pass operation to the new monad.' !"#$the inner computation2a handler for exceptions in the inner computation%&' !"#$%&' !"#$%&'% !"#$%&'(c) Ross Paterson 2014 BSD-style (see the file LICENSE)ross@soi.city.ac.uk experimentalportable Safe-Inferred(Lifted sum of functors.()*()*(*) (*)(c) Russell O'Connor 2009 BSD-style (see the file LICENSE)libraries@haskell.org experimentalportable Safe-Inferred+The same functor, but with an 6 instance that performs actions in the reverse order.6Derived instance.7Derived instance.8&Try alternatives in the same order as f.9Apply f-actions in the reverse order.:Derived instance.+,-./0123456789:+,-+,-:9876543210/.+,-./0123456789:(c) Russell O'Connor 2009 BSD-style (see the file LICENSE)libraries@haskell.org experimentalportable Safe-Inferred;The same functor, but with  and ; instances that process the elements in the reverse order.FTraverse from right to left.GFold from right to left.HDerived instance.IDerived instance.JDerived instance.;<=>?@ABCDEFGHIJ;<=;<=JIHGFEDCBA@?>;<=>?@ABCDEFGHIJ      !""#$%&'()*+,-./01233456789:;<=>?@ABBCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`^abcdecdf^aghhijklmnopqrstuvwxyz{|}~^^^^^   transformers-compat-0.4.0.2Control.Monad.SignaturesData.Functor.ClassesControl.Applicative.LiftControl.Monad.Trans.ExceptData.Functor.SumControl.Applicative.BackwardsData.Functor.ReversePaths_transformers_compatPassListenCatchCallCCShow1 showsPrec1Read1 readsPrec1Ord1compare1Eq1eq1 readsData readsUnary readsUnary1 readsBinary1 showsUnary showsUnary1 showsBinary1ErrorsLiftOtherPureunLiftfailureExceptT runExceptTExceptexcept runExcept mapExcept withExcept mapExceptT withExceptTthrowEcatchE liftCallCC liftListenliftPassSumInRInL Backwardsforwards$fShow1Backwards$fRead1Backwards$fOrd1Backwards$fEq1Backwards$fShowBackwards$fReadBackwards$fOrdBackwards $fEqBackwards$fTraversableBackwards$fFoldableBackwards$fAlternativeBackwards$fApplicativeBackwards$fFunctorBackwardsReverse getReverse$fShow1Reverse$fRead1Reverse $fOrd1Reverse $fEq1Reverse $fShowReverse $fReadReverse $fOrdReverse $fEqReverse$fTraversableReverse$fFoldableReverse$fAlternativeReverse$fApplicativeReverse$fFunctorReversecatchIOversionbindirlibdirdatadir libexecdir sysconfdir getBinDir getLibDir getDataDir getLibexecDir getSysconfDirgetDataFileNamebaseGHC.ShowShowGHC.ReadReadghc-prim GHC.ClassesOrdEq readsPrecApplygetApply $fShowApply $fReadApply $fOrdApply $fEqApply$fShow1Identity$fRead1Identity$fOrd1Identity $fEq1Identity$fShow1Constant$fRead1Constant$fOrd1Constant $fEq1Constant$fShow1Product$fRead1Product $fOrd1Product $fEq1Product $fShowProduct $fReadProduct $fOrdProduct $fEqProduct$fShow1Compose$fRead1Compose $fOrd1Compose $fEq1Compose $fShowCompose $fReadCompose $fOrdCompose $fEqCompose$fShow1WriterT$fRead1WriterT $fOrd1WriterT $fEq1WriterT $fShowWriterT $fReadWriterT $fOrdWriterT $fEqWriterT$fShow1WriterT0$fRead1WriterT0$fOrd1WriterT0 $fEq1WriterT0$fShowWriterT0$fReadWriterT0 $fOrdWriterT0 $fEqWriterT0 $fShow1MaybeT $fRead1MaybeT $fOrd1MaybeT $fEq1MaybeT $fShowMaybeT $fReadMaybeT $fOrdMaybeT $fEqMaybeT $fShow1ListT $fRead1ListT $fOrd1ListT $fEq1ListT $fShowListT $fReadListT $fOrdListT $fEqListT$fShow1IdentityT$fRead1IdentityT$fOrd1IdentityT$fEq1IdentityT$fShowIdentityT$fReadIdentityT$fOrdIdentityT $fEqIdentityT $fShow1ErrorT $fRead1ErrorT $fOrd1ErrorT $fEq1ErrorT $fShowErrorT $fReadErrorT $fOrdErrorT $fEqErrorT $fShow1Either $fRead1Either $fOrd1Either $fEq1Either $fShow1(,) $fRead1(,) $fOrd1(,)$fEq1(,) $fShow1[] $fRead1[]$fOrd1[]$fEq1[] $fShow1Maybe $fRead1Maybe $fOrd1Maybe $fEq1Maybe $fOrdConstant $fEqConstant$fReadConstant$fShowConstant $fOrdIdentity $fEqIdentity$fReadIdentity$fShowIdentity$fAlternativeLift$fApplicativeLift$fTraversableLift$fFoldableLift $fFunctorLift $fShow1Lift $fRead1Lift $fOrd1Lift $fEq1Lift $fShowLift $fReadLift $fOrdLift$fEqLiftGHC.Basereturn Data.EitherLefttransformers-0.2.2.1Control.Monad.Trans.Classlift$fMonadContExceptT$fMonadRWSrwsExceptT$fMonadReaderrExceptT$fMonadStatesExceptT$fMonadWriterwExceptT$fMonadErroreExceptT$fMonadIOExceptT$fMonadTransExceptT$fMonadFixExceptT$fMonadPlusExceptT$fMonadExceptT$fAlternativeExceptT$fApplicativeExceptT$fTraversableExceptT$fFoldableExceptT$fFunctorExceptT$fShow1ExceptT$fRead1ExceptT $fOrd1ExceptT $fEq1ExceptT $fShowExceptT $fReadExceptT $fOrdExceptT $fEqExceptT$fTraversableSum $fFoldableSum $fFunctorSum $fShow1Sum $fRead1Sum $fOrd1Sum$fEq1Sum $fShowSum $fReadSum$fOrdSum$fEqSumControl.Applicative Applicative Data.FoldableFoldableData.Traversable Traversable