T4LW      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUV experimental Ertugrul Soeylemez <es@ertes.de>XAMonads with support for logging. Traditionally these are called  *writer monads*. BThe monad transformer class. Lifting computations one level down G the monad stack, or stated differently promoting a computation of the & underlying monad to the transformer. 2Promote a monadic computation to the transformer. Stateful monads. Get the current state. $Set the current state and force it. Set the current state, but don' t force it. Every monad transformer t that supports transforming t m a to  m a# can be an instance of this class. 7Monads, which support lifting base monad computations. Monads with exception support. The exception type. Raise an exception. %Run computation catching exceptions. WAMonads supporting *call-with-current-continuation* (aka callCC).  Call with current continuation. Monads supporting abortion. 9The writer monad transformer. Supports logging effects. &Pure state monad derived from StateT. -Monad transformer for stateful computations. The traditional writer monad. *The traditional writer monad transformer. CThe identity monad transformer. This monad transformer represents D computations themselves without further side effects. Unlike most B other monad transformers in this module it is not implemented in & terms of continuation passing style. !"#DMonad transformer for CPS computations with an additional exception  continuation. $%&#Pure CPS monad derived from ContT. '>The continuation passing style monad transformer. This monad 0 transformer models the most basic form of CPS. ()*?The choice monad transformer, which models, as the most common B interpretation, nondeterminism. Internally a list of choices is 0 represented as a CPS-based left-fold function. +,->The identity monad. This monad represents values themselves, $ i.e. computations without effects. ./0Run a choice computation. 1Find the first solution. 2Find all solutions. 3#Get list of solutions (faster than 2, but returns solutions  in reversed order). 42Turn a list into a computation with alternatives. 5CRun a CPS-style computation given the supplied final continuation. 66Evaluate a CPS-style computation to its final result. 7*Transform the final result along the way. 8Run a pure CPS computation. 95Evaluate a pure CPS computation to its final result. :6Modify the result of a CPS computation along the way. ;Run an $# transformer. <Run an $# transformer returning an X result. =&Run a traditional writer transformer. ><Run a traditional writer transformer and return its result. ?9Run a traditional writer transformer and return its log. @&Run a traditional writer computation. A<Run a traditional writer computation and return its result. B9Run a traditional writer computation and return its log. CRun a state transformer. D.Run a state transformer returning its result. E3Run a state transformer returning its final state. FRun a stateful computation. G1Run a stateful computation returning its result. H1Run a stateful computation returning its result. IRun a writer transformer. J0Capture the current continuation for later use. KJump to a label. L-Catch exceptions using an exception handler. M2Catch exceptions using an exception handler (flip L). N?Run a final computation regardless of whether an exception was  raised. OCGet a resource, run a computation, then release the resource, even  if an exception is raised:   bracket acquire release use CPlease note that this function behaves slightly different from the  usual Y.. If both the user and the releaser throw an / exception, the user exception is significant. PDInitialize, then run, then clean up safely, even if an exception is  raised:   bracket_ init cleanup run CPlease note that this function behaves slightly different from the  usual Z.. If both the user and the releaser throw an / exception, the user exception is significant. Q)Handy alias for lifting IO computations. RGet a certain field. S'Apply a function to the current state. T"Get a field and modify the state. U1Get a field and modify the state. Lazy version. V6Apply a function to the current state. Lazy version. [\]^_`abcdefghijklmnopqrstuvwxyz{|}~  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVW !"'()567*+,01234#$%;<CDEI=>?-./&89:FGH@ABJKLMNOP Q RSTUVW     !"!"#$%$%&'()()*+,+,-././0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUV      !!"##$%&&'(()**+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUKULVWVXVYVZV[V\]^_`_a_b_c_d_e_f_g_h_i_j_k_l_m_n_o_p_p_q_r_s_t_u_v_w_x_xyz]{]|]}]~]]]]]]]]]]]]]]]]]]]]]]]]]]]VVcontstuff-0.3.0Control.ContStuffWritabletell TransformerliftStatefulStateOfgetputputLazyRunnableArgumentrunTLiftBaseBasebase HasExceptions ExceptionraisetryLabelCallCCcallCC AbortableResultabortWriterTStateStateT getStateT OldWriter OldWriterTIdTgetIdTEitherT getEitherTContContTgetContTChoiceT getChoiceTIdgetId runChoiceT findFirstfindAll listChoiceTlistArunContT evalContT modifyContTrunContevalCont modifyCont runEitherT evalEitherT runOldWriterTevalOldWriterTexecOldWriterT runOldWriter evalOldWriter execOldWriter runStateT evalStateT execStateTrunState evalState execState runWriterTlabelCCgotocatchhandlefinallybracketbracket_iogetFieldmodify modifyFieldmodifyFieldLazy modifyLazy Data.EitherEitherControl.Exception.BaseGHC.Basefail>>=>>returnMonadFunctor Control.Monad MonadPlusControl.Applicative ApplicativeoptionalliftA3liftA2liftA<**><**><*>puremanysome<|>empty AlternativegetConstConst unwrapMonad WrapMonad WrappedMonad unwrapArrow WrapArrow WrappedArrow getZipListZipList Data.Functor<$>apliftM5liftM4liftM3liftM2liftMunlesswhen replicateM_ replicateMfoldM_foldM zipWithM_zipWithM mapAndUnzipMjoinforever<=<>=>msumforM_forMfilterMguardmapM_mapM sequence_sequence=<<mplusmzero<$fmap