h$9/-      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklm n o p q r s t u v w x y z { | } ~                                                                                                                                                                                                                  Safe-Inferred'(/>?  multistateIn contrast to MonadMultiReader, MonadMultiGet is defined for State too, so it corresponds to read-access of any kind.9Note however that for MultiRWS, only the values from the state part can be accessed via  MonadMultiGet', due to limitations of the design of MultiRWS; and of the type system. This is issue is resolved in the MultiGST type. multistate-Access to a specific type in the environment. Safe-Inferred'(/>?  multistateAll methods must be defined.,The idea is: Any monad stack is instance of MonadMultiReader a, iff the stack contains a MultiReaderT x with a element of x. multistate-Access to a specific type in the environment. Safe-Inferred'(/>? \ Safe-Inferred'(/>?    Safe-Inferred'(/>?   5 Safe-Inferred'(/>?  multistate=for get/put of a value in a HList, with type-directed lookup.   Safe-Inferred'(/>?$ multistate2A MultiWriter transformer carrying an empty state.% multistate,A Writer transformer monad patameterized by:=x - The list of types that can be written (Monoid instances).m - The inner monad.% corresponds to mtl's 0, but can contain a heterogenous list of types.This heterogenous list is represented using Types.Data.List, i.e:'[] - The empty list,a ': b - A list where a is an arbitrary type and b is the rest list. For example, 1MultiWriterT '[Int, Bool] :: (* -> *) -> (* -> *)9is a Writer transformer containing the types [Int, Bool].( multistateA raw extractor of the contained HList (i.e. the complete state).* multistateMap both the return value and the state of a computation using the given function. #$%&'()*+,-./0123456789%&'$# +,-./0123456789*() Safe-Inferred'(/>?I multistate2A MultiWriter transformer carrying an empty state.J multistate,A Writer transformer monad patameterized by:=x - The list of types that can be written (Monoid instances).m - The inner monad.J corresponds to mtl's 0, but can contain a heterogenous list of types.This heterogenous list is represented using Types.Data.List, i.e:'[] - The empty list,a ': b - A list where a is an arbitrary type and b is the rest list. For example, 1MultiWriterT '[Int, Bool] :: (* -> *) -> (* -> *)9is a Writer transformer containing the types [Int, Bool].M multistateA raw extractor of the contained HList (i.e. the complete state).O multistateMap both the return value and the state of a computation using the given function. HIJKLMNOPQRSTUVWXYZ[\]^JKLIH PQRSTUVWXYZ[\]^OMN Safe-Inferred'(/>? HIJKLMNOPQRSTUVWXYZ[\]JKLIH PQRSTUVWXYZ[\]OMN  Safe-Inferred'(/>?*m multistateA state monad parameterized by the list of types x of the state to carry. Similar to State s = StateT s Identityn multistate1A MultiState transformer carrying an empty state.o multistate+A State transformer monad patameterized by:-x - The list of types constituting the state,m - The inner monad.o corresponds to mtl's 0, but can contain a heterogenous list of types.This heterogenous list is represented using Types.Data.List, i.e:'[] - The empty list,a ': b - A list where a is an arbitrary type and b is the rest list. For example, 0MultiStateT '[Int, Bool] :: (* -> *) -> (* -> *)4is a State wrapper containing the types [Int, Bool].r multistateA raw extractor of the contained HList (i.e. the complete state).t multistateMap both the return value and the state of a computation using the given function.$mnopqrstuvwxyz{|}~$opqnmuvwxyz{|}~trs  Safe-Inferred'(/>?q multistateA state monad parameterized by the list of types x of the state to carry. Similar to State s = StateT s Identity multistate1A MultiState transformer carrying an empty state. multistate+A State transformer monad patameterized by:-x - The list of types constituting the state,m - The inner monad. corresponds to mtl's 0, but can contain a heterogenous list of types.This heterogenous list is represented using Types.Data.List, i.e:'[] - The empty list,a ': b - A list where a is an arbitrary type and b is the rest list. For example, 0MultiStateT '[Int, Bool] :: (* -> *) -> (* -> *)4is a State wrapper containing the types [Int, Bool]. multistateA raw extractor of the contained HList (i.e. the complete state). multistateMap both the return value and the state of a computation using the given function.$$ Safe-Inferred'(/>?7$$  Safe-Inferred'(/>?#R multistateA reader monad parameterized by the list of types x of the environment / input to carry. Similar to Reader r = ReaderT r Identity multistate2A MultiReader transformer carrying an empty state. multistate,A Reader transformer monad patameterized by:x - The list of types constituting the environment / input (to be read),m - The inner monad. corresponds to mtl's 0, but can contain a heterogenous list of types.This heterogenous list is represented using Types.Data.List, i.e:'[] - The empty list,a ': b - A list where a is an arbitrary type and b is the rest list. For example, 1MultiReaderT '[Int, Bool] :: (* -> *) -> (* -> *)9is a Reader transformer containing the types [Int, Bool]. multistateA raw extractor of the contained HList (i.e. the complete Reader). multistateMap both the return value and the environment of a computation using the given function.?Note that there is a difference to mtl's ReaderT, where it is not$ possible to modify the environment.  Safe-Inferred'(/>?(5 multistateA reader monad parameterized by the list of types x of the environment / input to carry. Similar to Reader r = ReaderT r Identity multistate2A MultiReader transformer carrying an empty state. multistate,A Reader transformer monad patameterized by:x - The list of types constituting the environment / input (to be read),m - The inner monad. corresponds to mtl's 0, but can contain a heterogenous list of types.This heterogenous list is represented using Types.Data.List, i.e:'[] - The empty list,a ': b - A list where a is an arbitrary type and b is the rest list. For example, 1MultiReaderT '[Int, Bool] :: (* -> *) -> (* -> *)9is a Reader transformer containing the types [Int, Bool]. multistateA raw extractor of the contained HList (i.e. the complete Reader). multistateMap both the return value and the environment of a computation using the given function.?Note that there is a difference to mtl's ReaderT, where it is not$ possible to modify the environment. Safe-Inferred'(/>?(  Safe-Inferred'(/>?)T; ;  Safe-Inferred'(/>?*t; ;  Safe-Inferred'(/>?+; ; None'(-/>?,None'(/>?-$ $ None'(/>?-( ( None'(/>?.& &  !"#$%&'()*+,-./0123456789:;<<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]:;<<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\] ^ _ ` ` a > ? b c d e f g h i j k l m n o p q r s t u v w x y O z { | } ~           ^ _ ` ` a > ? b c d e f g h i j k l m n o p q r s t u v w x y O z { | } ~                > ?           y                     > ?           y                                G H I J K L M N k l m n o p q r s t u v  w y  O  x                       GHIJKLMNklmnopqrstuvwyOx>>)multistate-0.8.0.4-AIapMeX75MSIKnoAcU0JXM"Control.Monad.Trans.MultiGet.Class%Control.Monad.Trans.MultiReader.Class$Control.Monad.Trans.MultiState.Class%Control.Monad.Trans.MultiWriter.ClassData.HList.HListData.HList.ContainsType&Control.Monad.Trans.MultiWriter.Strict$Control.Monad.Trans.MultiWriter.Lazy%Control.Monad.Trans.MultiState.Strict#Control.Monad.Trans.MultiState.Lazy&Control.Monad.Trans.MultiReader.Strict$Control.Monad.Trans.MultiReader.Lazy#Control.Monad.Trans.MultiRWS.Strict!Control.Monad.Trans.MultiRWS.Lazy#Control.Monad.Trans.MultiGST.Strict!Control.Monad.Trans.MultiGST.LazyControl.Monad.Trans.MultiWriterControl.Monad.Trans.MultiStateControl.Monad.Trans.MultiReaderControl.Monad.Trans.MultiRWS#Control.Monad.Trans.MultiGST.CommonControl.Monad.Trans.MultiGST MonadMultiGetmGet$fMonadMultiGetatMonadMultiReadermAsk$fMonadMultiReaderatMonadMultiStatemSet$fMonadMultiStateatMonadMultiWritermTell$fMonadMultiWriteratHInithInithSplitAppendHListHNil:+:hAppend $fEqHList $fEqHList0 $fMonoidHList$fMonoidHList0$fSemigroupHList$fSemigroupHList0 $fShowHList $fShowHList0$fHInit: $fHInit[] ContainsType setHListElem getHListElem$fContainsTypea:$fContainsTypea:0 MultiWriterMultiWriterTNull MultiWriterTrunMultiWriterTRawmGetRawmPutRawmapMultiWriterTrunMultiWriterTrunMultiWriterTAWrunMultiWriterTWArunMultiWriterTWrunMultiWriterTNilrunMultiWriterTNil_withMultiWriterwithMultiWriterAWwithMultiWriterWAwithMultiWriterWwithMultiWriterswithMultiWritersAWwithMultiWritersWAwithMultiWritersW inflateWriter$fMonadBaseControlbMultiWriterT$fMonadTransControlMultiWriterT$fMonadBasebMultiWriterT$fMonadPlusMultiWriterT$fAlternativeMultiWriterT$fMonadIOMultiWriterT$fMonadWriterwMultiWriterT$fMonadStatesMultiWriterT$fMonadFixMultiWriterT$fMonadMultiWriteraMultiWriterT$fMonadTransMultiWriterT$fMonadMultiWriterT$fApplicativeMultiWriterT$fFunctorMultiWriterT MultiStateMultiStateTNull MultiStateTrunMultiStateTRawmapMultiStateTrunMultiStateTrunMultiStateTASrunMultiStateTSArunMultiStateTArunMultiStateTSrunMultiStateT_runMultiStateTNilrunMultiStateTNil_withMultiStatewithMultiStateASwithMultiStateSAwithMultiStateAwithMultiStateSwithMultiState_withMultiStateswithMultiStatesASwithMultiStatesSAwithMultiStatesAwithMultiStatesSwithMultiStates_withoutMultiState inflateState inflateReader$fMonadBaseControlbMultiStateT$fMonadTransControlMultiStateT$fMonadBasebMultiStateT$fMonadPlusMultiStateT$fAlternativeMultiStateT$fMonadIOMultiStateT$fMonadWriterwMultiStateT$fMonadStatesMultiStateT$fMonadFixMultiStateT$fMonadMultiStateaMultiStateT$fMonadMultiGetaMultiStateT$fMonadTransMultiStateT$fMonadMultiStateT$fApplicativeMultiStateT$fFunctorMultiStateT MultiReaderMultiReaderTNull MultiReaderTrunMultiReaderTRawmapMultiReaderTrunMultiReaderTrunMultiReaderT_runMultiReaderTNilrunMultiReaderTNil_withMultiReaderwithMultiReader_withMultiReaderswithMultiReaders_withoutMultiReader$fMonadBaseControlbMultiReaderT$fMonadTransControlMultiReaderT$fMonadBasebMultiReaderT$fMonadPlusMultiReaderT$fAlternativeMultiReaderT$fMonadIOMultiReaderT$fMonadWriterwMultiReaderT$fMonadStatesMultiReaderT$fMonadFixMultiReaderT$fMonadMultiGetaMultiReaderT$fMonadMultiReaderaMultiReaderT$fMonadTransMultiReaderT$fMonadMultiReaderT$fApplicativeMultiReaderT$fFunctorMultiReaderTMultiRWS MultiRWSTNull MultiRWSTrunMultiRWSTRaw runMultiRWSTrunMultiRWSTASW runMultiRWSTWrunMultiRWSTAWrunMultiRWSTSWrunMultiRWSTNilrunMultiRWSTNil_inflateMultiReaderinflateMultiWriterinflateMultiStatemGetRawRmPutRawRmGetRawWmPutRawWmGetRawSmPutRawS mapMultiRWST$fMonadBaseControlbMultiRWST$fMonadTransControlMultiRWST$fMonadBasebMultiRWST$fMonadPlusMultiRWST$fAlternativeMultiRWST$fMonadIOMultiRWST$fMonadFixMultiRWST$fMonadMultiStateaMultiRWST$fMonadMultiGetaMultiRWST$fMonadMultiWriteraMultiRWST$fMonadMultiReaderaMultiRWST$fMonadTransMultiRWST$fMonadMultiRWST$fApplicativeMultiRWST$fFunctorMultiRWSTContainsWriter ContainsStateContainsReader CanReadWriteGettableSettableTellableMultiGST MultiGSTTNull MultiGSTTrunMultiGSTTRawrunMultiGSTTNilrunMultiGSTTNil_ withReader withReader_ withWriter withWriterAW withWriterWA withWriterW withState withStateAS withStateSA withStateA withStateS withState_withoutmSetRaw mapMultiGSTT$fMonadMultiWriteraMultiGSTT$fMonadMultiStateaMultiGSTT$fMonadMultiGetaMultiGSTT$fFunctorMultiGSTT$fApplicativeMultiGSTT$fMonadMultiGSTT$fMonadTransMultiGSTT withReaders$fMonadIOMultiGSTT$fAlternativeMultiGSTT$fMonadPlusMultiGSTTtransformers-0.5.6.2!Control.Monad.Trans.Writer.StrictWriterTControl.Monad.Trans.Writer.Lazy Control.Monad.Trans.State.StrictStateTControl.Monad.Trans.State.LazyControl.Monad.Trans.ReaderReaderTHListMGettableClassHListMGettableOnlyhListMGettableOnlyAppendMReaders HListMReadersAppendMHListM:+-::++::-+:HNilMCanWriteConstraintHListMContainsreadHListMElemwriteHListMElemHListMContainsImplicationCanReadWriteFlag GettableFlag SettableFlag TellableFlag