`/WQW      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVRAAn explicit representation for continuations that store a value. WBClassifies monads that support aborting the program and returning  a given final result of type i. 8Abort the program with the given value as final result. 7Classifies monads that support handling of exceptions. 1Convert computations that may raise an exception < into computations that do not raise exception but instead, 5 yield a tagged results. Exceptions are tagged with Left, ) successful computations are tagged with Right. 8Classifies monads that support collecting the output of  a sub-computation. +Collect the output from a sub-computation. :Classifies monads that support changing the context for a  sub-computation. :Change the context for the duration of a sub-computation. 6Classifies monads that provide access to a computation's continuation. "Capture the current continuation. :Classifies monads that support raising exceptions of type i. Raise an exception. ;Classifies monads that propagate a state component of type i. Get the state. Set the state. 2Classifies monads that can collect values of type i. Add a value to the collection. ;Classifies monads that provide access to a context of type i. Get the context. +Promote a computation from the base monad. 1Promote a computation from the underlying monad. 6Add support for continuations within a prompt of type i. X"Add support for multiple answers. YZ[\#Add support for exceptions of type i. ](Add support for threading state of type i. ^_`*Add support for collecting values of type i.  The type i5 should be a monoid, whose unit is used to represent B a lack of a value, and whose binary operation is used to combine  multiple values. 5 This transformer is strict in its output component. ab.Add support for propagating a context of type i. c0Adds no new features. Useful as a placeholder. d&Computation with no effects (strict). e Computations with no effects. f!$The current version of the library. "&Get the result of a pure computation. #-Get the result of a pure strict computation. $Remove an identity layer. %3Execute a reader computation in the given context. &Execute a writer computation. . Returns the result and the collected output. ';Execute a stateful computation in the given initial state. 8 The second component of the result is the final state. ('Execute a computation with exceptions. $ Successful results are tagged with g, % exceptional results are tagged with h. )8Execute a computation that may return multiple answers. # The resulting computation returns i  if no answers were found, or Just (answer,new_comp),  where answer is an answer, and new_comp is a computation  that may produce more answers. ? The search is depth-first and left-biased with respect to the  j operation. *8Execute a computation that may return multiple answers,  returning at most one answer. +8Execute a computation that may return multiple answers, " collecting all possible answers. ,3Execute a computation with the given continuation. klmnopqrst-"Capture the current continuation.  This function is like u, except that it also captures . the current continuation. Later, we can use . to repeat the J computation from this point onwards but with a possibly different value. .?Change the value passed to a previously captured continuation. /%Apply a function to the environment. - Useful for accessing environmnt components. 0,Add content the output and return a result. 1&Update the state and return a result. 2+Updates the state with the given function. 3-Either raise an exception or return a value.  h2 values signify the we should raise an exception,  g values indicate success. 4:Modify the environment for the duration of a computation. 5$Modify the output of a computation. 66Modify the exception that was risen by a computation. 7IApply the given exception handler, if a computation raises an exception. _vwxuyz{|}~j  !"#$%&'()*+,-./012345678   -."#$%&'(,)*+/01234567!8    !"#$%&'()*+,-./012345678)An isomorphism between (usually) monads. B Typically the constructor and selector of a newtype delcaration. 9:Derive the implementation of  from z. ;Derive the implementation of u from y. <Derive the implementation of w from y. =>Derive the implementation of  from . ?Derive the implementation of  from . @Derive the implementation of  from . ADerive the implementation of  from  . BDerive the implementation of  from  . CDerive the implementation of   from  . DDerive the implementation of   from  . EFDerive the implementation of  from . GDerive the implementation of  from . HDerive the implementation of  from . IDerive the implementation of  from {. JDerive the implementation of j from {. KDerive the implementation of  from . LDerive the implementation of  from . 89:;<=>?@ABCDEFGHIJKL89:;<=>?@ABCDEFGHIJKL899:;<=>?@ABCDEFGHIJKLMNOPQRSTUVivwxuyz{|}~j  !"#$%&'()*+,-./01234567MNOPQRSTUV QPONMRSTUV MNOPQRSTUV      !"#$%&'()*+,-./0123456789:;<<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abbcdefghijkijlimniopqrstuvwxyzi{|i{}i{~i{i{i{ioioioioioioioioioioioioioioioioioioioioioioioioioioioioioioioi{iidmonadLib-3.5.2MonadLibMonadLib.DeriveMonadLib.MonadsLabelAbortMabort RunExceptionMtry RunWriterMcollect RunReaderMlocalContMcallCC ExceptionMraiseStateMgetsetWriterMputReaderMaskBaseMinBaseMonadTliftContTChoiceT ExceptionTStateTWriterTReaderTIdTLiftIdversionrunIdrunLiftrunIdT runReaderT runWriterT runStateT runExceptionT runChoiceTfindOnefindAllrunContTlabelCCjumpasksputssetssets_raises mapReader mapWriter mapExceptionhandleIso derive_fmap derive_return derive_bind derive_fail derive_mfix derive_ask derive_put derive_get derive_set derive_raise derive_callCC derive_abort derive_localderive_collect derive_try derive_mzero derive_mplus derive_lift derive_inBaseCont ExceptionStateWriterReader runReader runWriterrunState runExceptionrunContLabC ChoiceEffChoiceAnswerNoAnswerXSPWunWRITLIbase Data.EitherRightLeft Data.MaybeNothing Control.Monadmplust_inBaset_returnt_failt_mzerot_askt_putt_gett_sett_raiset_abortGHC.Basereturnfail>>=>>MonadFunctor MonadPlusapliftM5liftM4liftM3liftM2liftMunlesswhen replicateM_ replicateMfoldM_foldM zipWithM_zipWithM mapAndUnzipMjoinforever<=<>=>msumforM_forMfilterMguardmapM_mapM sequence_sequence=<<mzerofmapcloseopenControl.Monad.FixmfixMonadFixC'unCX'unXS'unSW'R'unRiso_Riso_Wiso_Siso_Xiso_C