h&APU0      !"#$%&'()*+,-./ Safe-Inferred4"%&()*-/135689:;?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  Safe-Inferred4"%&()*-/135689:; Focus a m (Maybe a) lookupAndDelete = lookup <* deletefocusReproduces the behaviour of  Data.Map. http://hackage.haskell.org/package/containers-0.6.0.1/docs/Data-Map-Lazy.html#v:membermember.focusReproduces the behaviour of  Data.Map. http://hackage.haskell.org/package/containers-0.6.0.1/docs/Data-Map-Lazy.html#v:lookuplookup.focusReproduces the behaviour of  Data.Map. http://hackage.haskell.org/package/containers-0.6.0.1/docs/Data-Map-Lazy.html#v:findWithDefaultfindWithDefault with a better name. focusReproduces the behaviour of  Data.Map. http://hackage.haskell.org/package/containers-0.6.0.1/docs/Data-Map-Lazy.html#v:deletedelete. focus-Lookup an element and delete it if it exists.Same as  <*  . focusReproduces the behaviour of  Data.Map. http://hackage.haskell.org/package/containers-0.6.0.1/docs/Data-Map-Lazy.html#v:insertinsert. focusReproduces the behaviour of  Data.Map. http://hackage.haskell.org/package/containers-0.6.0.1/docs/Data-Map-Lazy.html#v:insertWith insertWith with a better name. focusReproduces the behaviour of  Data.Map. http://hackage.haskell.org/package/containers-0.6.0.1/docs/Data-Map-Lazy.html#v:alteralter.focusReproduces the behaviour of  Data.Map. http://hackage.haskell.org/package/containers-0.6.0.1/docs/Data-Map-Lazy.html#v:adjustadjust.focusReproduces the behaviour of  Data.Map. http://hackage.haskell.org/package/containers-0.6.0.1/docs/Data-Map-Lazy.html#v:updateupdate.focus)Same as all of the following expressions:'f g -> fmap (fmap f) lookup <* adjust g f g -> liftStateFn (f &&& g) f g -> liftStateFn ((,)  $ f  * g)focusLift a pure state monad.focus&Lift a pure state-monad-like function.focusLift pure functions which handle the cases of presence and absence of the element.focusLift pure functions which handle the cases of presence and absence of the element and produce no result.focusA monadic version of .focusA monadic version of  .focusA monadic version of  .focusA monadic version of  .focusA monadic version of .focusA monadic version of .focusLift monadic functions which handle the cases of presence and absence of the element.focusLift monadic functions which handle the cases of presence and absence of the element and produce no result.focusMap the Focus input.focus"Extends the output with the input.focus-Extends the output with the change performed. focusExtends the output with a projection on the change that was performed.!focusExtends the output with a flag, signaling whether a change, which is not , has been introduced."focus7Extends the output with a flag, signaling whether the  change has been introduced.#focusExtends the output with a flag, signaling whether an item will be inserted. That is, it didn't exist before and a  change is introduced.$focusExtend the output with a flag, signaling how the size will be affected by the change.%focus Focus on the contents of a TVar.$focus Decreasedfocus Didn't changefocus Increased&  !"#$%&  !"#$%       !"#$%&'()*+,-./01234561781791:;1<=1>?1>@12A12B4CD1EF1GH4CI12J1KL12M45N1OP1OQ1RS1TU1VW1VX12Y1Z[1Z\1Z]1Z^1Z_1Z`1Za1Zb1Zc1Zd1Ze1Zf4gh4gi4gj1kl1km1kn1ko1kp1kq1kr1ks1kt1ku1kv1kw1kx1ky1kz1k{1k|1k}1k~1k1k1k1k1O1O1O1O1O1O1O1O1O1O1O1O12121212111111111111111121212111111114g4g4g4g4g4g4g4g111111O1O1k1k1k1k1k1k1k1k1k1k1k1k1k1k1k1O1O1O1O1O1O11111111111111111212121212121111111111111111111111111212121212121212444124444111111144441O1O451:4411111111141V1V41111111111111111111111111111111111111111111111111111111111K11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111R1R1R1R1R1R1R1R1R1R1R1R1R1R111G1G1G1G1G1G1G1G1G1G1G1G1G11111111111111111111111111111111111111111111111111<1<1<1<1<1<1<1<1<1<1<1<1<1<1<1<1<1<1<1<1<1<1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111T1T1T1T1T1T1T1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E111111111111111111111111111111111111111111111111111111111111111111E1E1E1E1E1E1E1E1E1E1E1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 11111111111111111 1111111111111111111111111111111111111111111111111:1:1:1:1V1V1V1111111111111111111111111111111  1  1  1  1 1  1 1 1 1 1  1  1  1  1  1  1  1  1  1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1  1k 1k 1k 1 1 1 1 1 1 1 1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1  1 1 1 1  1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1O 1O 1O 1O 1O 1O 1O 1O 1O 1O 1 1  1 1 1 1  1 1 1 1 1 1 1 1 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 1717 17 17 17 17 17 17 17 17 17 17 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1> 1> 1> 1 1 1 1 1 1 1 1 1  1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 4g 4g 4g                   $focus-1.0.3.2-6XsFABink33H6w3BXOtR0MFocus Focus.PreludeChangeLeaveRemoveSetmemberlookuplookupWithDefaultdeletelookupAndDeleteinsert insertOrMergealteradjustupdateaccessAndAdjust liftState liftStateFncases unitCaseslookupWithDefaultMinsertMinsertOrMergeMalterMadjustMupdateMcasesM unitCasesM mappingInputextractingInputextractingChangeprojectingChangetestingIfModifiestestingIfRemovestestingIfInsertstestingSizeChange onTVarValue$fMonoidChange$fSemigroupChange$fMonadTransFocus $fMonadFocus$fApplicativeFocus$fFunctorChange $fEqChange $fOrdChange $fShowChange$fFunctorFocusbaseGHC.Base++ghc-primGHC.PrimseqGHC.Listfilterzip GHC.Stable newStablePtr System.IOprint Data.Tuplefstsnd otherwiseassert GHC.MagiclazyGHC.IO.Exception assertError Debug.TracetraceinlinemapGHC.Exts groupWith$coerceGHC.Real fromIntegral realToFrac Control.Monadguard Data.DynamictoDyn Unsafe.CoerceunsafeEqualityProof unsafeCoerce#joinGHC.EnumBoundedmaxBoundminBoundEnumsuccpredenumFromThenTo enumFromTo enumFromThenenumFromfromEnumtoEnum GHC.ClassesEq==/= GHC.FloatFloatingtanhtansqrtsinhsinpilogBaselog1pexplog1plog1mexplogexpm1expcoshcosatanhatanasinhasinacosh**acos Fractionalrecip fromRational/IntegralremquotRemquotmoddivMod toIntegerdivMonad>>>>=return Data.DataDatatoConstrgunfoldgmapTgmapQrgmapQlgmapQigmapQgmapMpgmapMogmapMgfoldl dataTypeOf dataCast1 dataCast2Functorfmap<$GHC.NumNumsignumabs*+negate fromInteger-Ord<<=>maxmincompare>=GHC.ReadReadreadPrec readListPrec readsPrecreadListReal toRational RealFloat significand scaleFloatisNegativeZeroisNaN isInfiniteisIEEEisDenormalized floatRange floatRadix floatDigitsexponent encodeFloatatan2 decodeFloatRealFractruncateroundproperFractionceilingfloorGHC.ShowShowshowListshow showsPrecGHC.IxIx rangeSizerangeinRangeindexData.Typeable.InternalTypeableControl.Monad.FixMonadFixmfixControl.Monad.Fail MonadFailfail Data.StringIsString fromString ApplicativeliftA2<**><*>pure Data.FoldableFoldablefoldr'foldMap'foldMapfoldsumproductnullminimummaximumfoldr1foldl1foldl'elemtoListfoldrlengthfoldlData.Traversable TraversabletraversesequencemapM sequenceA GHC.GenericsGeneric Semigroupstimes<>sconcatMonoidmconcatmemptymappend GHC.TypesBoolFalseTrueStringCharDoubleFloatIntGHC.IntInt8Int16Int32Int64 ghc-bignumGHC.Num.IntegerInteger GHC.MaybeMaybeJustNothingOrderingGTLTEQRatioRational RealWorld StablePtrIOWordGHC.WordWord8Word16Word32Word64GHC.PtrPtrFunPtr Data.EitherEitherRightLeft CoercibleUnsafeEquality UnsafeReflTyConData.Functor.ComposeCompose getCompose Data.ComplexComplex:+realPartpolarphasemkPolar magnitudeimagPart conjugatecis Data.FixedUniPicoNanoMilliMicro HasResolution resolutionFixedMkFixedE9E6E3E2E12E1E0DeciCenti showFixedmod'divMod'div'Data.Semigroup WrappedMonoid WrapMonoid unwrapMonoidMingetMinMaxgetMaxLastgetLastFirstgetFirstArgMinArgMaxArg mtimesDefaultdiffcycle1sortWithFixityInfixPrefixDataTypeDataRepNoRepCharRepAlgRepIntRepFloatRep ConstrRep IntConstr FloatConstr AlgConstr CharConstrConstrConIndex tyconUQname tyconModule showConstr repConstr readConstr mkRealConstr mkNoRepTypemkIntegralConstr mkIntType mkFloatType mkDataType mkConstrTagmkConstr mkCharType mkCharConstrmaxConstrIndex isNorepType isAlgType indexConstr fromConstrM fromConstrB fromConstr dataTypeRep dataTypeNamedataTypeConstrs constrType constrRep constrIndex constrFixity constrFieldsSystem.TimeoutTimeouttimeoutControl.ConcurrentthreadWaitWriteSTMthreadWaitWritethreadWaitReadSTMthreadWaitReadrunInUnboundThreadrunInBoundThreadrtsSupportsBoundThreadsisCurrentThreadBoundforkOSWithUnmaskforkOS forkFinallyControl.Concurrent.ChanChanwriteList2Chan writeChanreadChannewChangetChanContentsdupChanControl.Concurrent.QSemQSemwaitQSem signalQSemnewQSemControl.Concurrent.QSemNQSemN waitQSemN signalQSemNnewQSemNControl.Monad.IO.ClassMonadIOliftIO Data.RatioapproxRational Data.STRef modifySTRef' modifySTRef Data.UniqueUnique newUnique hashUniqueGHC.StableName StableNamemakeStableNamehashStableName eqStableNameSystem.Environment withProgNamewithArgsunsetEnvsetEnv lookupEnv getProgNamegetEnvironmentgetEnvgetArgs!System.Environment.ExecutablePathgetExecutablePath System.ExitexitWith exitSuccess exitFailuredie System.MemperformMinorGCperformMajorGC performGC Text.PrintfprintfhPrintf zipWithM_zipWithMunless replicateM_ replicateMmfilter mapAndUnzipMforeverfoldM_foldMfilterM>=><=<<$!> Data.Version showVersion parseVersion traceStack traceShowM traceShowId traceShow traceMarkerIO traceMarkertraceMtraceIdtraceIO traceEventIO traceEvent putTraceMsg flushEventLog mapAccumR mapAccumLforMforfoldMapDefault fmapDefaultControl.ApplicativeZipList getZipList WrappedMonad WrapMonad unwrapMonad WrappedArrow WrapArrow unwrapArrowoptional Control.ArrowKleisli runKleisli ArrowZero zeroArrow ArrowPlus<+> ArrowMonad ArrowLooploop ArrowChoicerightleft|||+++ ArrowApplyappArrowsecond&&&first***arrreturnAleftApp^>>^<<>>^<<^Data.Functor.IdentityIdentity runIdentity writeFilereadLnreadIO readFile'readFileputStrLnputStrputChar"openTempFileWithDefaultPermissions openTempFile(openBinaryTempFileWithDefaultPermissionsopenBinaryTempFilelocaleEncodinginteracthReadyhPrintgetLine getContents' getContentsgetCharfixIO appendFile GHC.IO.Handle HandlePosnisEOFhTellhShowhSetPosnhSetNewlineMode hSetFileSize hSetEncodinghSetEcho hSetBufferinghSetBinaryModehSeek hLookAhead hIsWritablehIsTerminalDevice hIsSeekable hIsReadablehIsOpenhIsEOF hIsClosedhGetPosn hGetEncodinghGetEcho hGetBuffering hFileSizehCloseGHC.IO.StdHandleswithFilewithBinaryFilestdinstderropenFileopenBinaryFile GHC.Conc.IO threadDelay registerDelayioManagerCapabilitiesChangedensureIOManagerIsRunning closeFdWithGHC.Conc.SignalSignal HandlerFun setHandler runHandlersControl.Concurrent.MVarwithMVarMaskedwithMVarswapMVar modifyMVar_modifyMVarMasked_modifyMVarMasked modifyMVar mkWeakMVaraddMVarFinalizerGHC.IO.Handle.Text hWaitForInput hPutStrLnhPutStrhPutCharhPutBufNonBlockinghPutBufhGetLine hGetContents' hGetContentshGetChar hGetBufSomehGetBufNonBlockinghGetBufGHC.IO.Encodingutf8_bomutf8utf32leutf32beutf32utf16leutf16beutf16mkTextEncodinglatin1char8System.IO.Unsafe unsafeFixIOControl.ExceptionHandlercatchesallowInterruptControl.Monad.ST.ImpfixSTSystem.IO.Error userErrorType tryIOErrorresourceVanishedErrorTypepermissionErrorType modifyIOError mkIOErrorisUserErrorType isUserErrorisResourceVanishedErrorTypeisResourceVanishedErrorisPermissionErrorTypeisPermissionErrorisIllegalOperationErrorTypeisIllegalOperationisFullErrorType isFullErrorisEOFErrorType isEOFErrorisDoesNotExistErrorTypeisDoesNotExistErrorisAlreadyInUseErrorTypeisAlreadyInUseErrorisAlreadyExistsErrorTypeisAlreadyExistsErrorioeSetLocation ioeSetHandleioeSetFileNameioeSetErrorTypeioeSetErrorStringioeGetLocation ioeGetHandleioeGetFileNameioeGetErrorTypeioeGetErrorStringillegalOperationErrorType fullErrorType eofErrorTypedoesNotExistErrorType catchIOErrorannotateIOErroralreadyInUseErrorTypealreadyExistsErrorTypeControl.Exception.Base TypeError RecUpdError RecSelError RecConErrorPatternMatchFailNonTermination NoMethodErrorNestedAtomicallytryJusttry onException mapException handleJusthandlefinally catchJustbracket_bracketOnErrorbracket GHC.Conc.Sync ThreadStatus ThreadRunningThreadFinished ThreadBlocked ThreadDiedThreadIdTVarSTMPrimMVar BlockReason BlockedOnSTMBlockedOnOther BlockedOnMVarBlockedOnForeignCallBlockedOnBlackHoleBlockedOnExceptionyield writeTVar unsafeIOToSTMthrowTothrowSTM threadStatusthreadCapabilitysetUncaughtExceptionHandlersetNumCapabilitiessetAllocationCounter runSparksretryreportStackOverflowreportHeapOverflow reportError readTVarIOreadTVarpseqparorElse numSparksnumCapabilities newTVarIOnewTVarnewStablePtrPrimMVar myThreadIdmkWeakThreadId labelThread killThreadgetUncaughtExceptionHandlergetNumProcessorsgetNumCapabilitiesgetAllocationCounterforkOnWithUnmaskforkOnforkIOWithUnmaskforkIOenableAllocationLimitdisableAllocationLimit childHandlercatchSTM atomicallyDynamic fromDynamicfromDyn dynTypeRepdynApplydynAppSomeAsyncException IOErrorType UserErrorUnsupportedOperationUnsatisfiedConstraints TimeExpired SystemErrorResourceVanishedResourceExhausted ResourceBusy ProtocolErrorPermissionDenied OtherError NoSuchThingInvalidArgument InterruptedInappropriateTypeIllegalOperation HardwareFaultEOF AlreadyExistsFixIOExceptionExitCode ExitFailure ExitSuccessDeadlockCompactionFailedBlockedIndefinitelyOnSTMBlockedIndefinitelyOnMVarAsyncException UserInterrupt ThreadKilled HeapOverflow StackOverflowAssertionFailedArrayExceptionIndexOutOfBoundsUndefinedElementAllocationLimitExceededuntangle stackOverflow ioExceptionioError heapOverflowcannotCompactPinnedcannotCompactMutablecannotCompactFunctionblockedIndefinitelyOnSTMblockedIndefinitelyOnMVarasyncExceptionToExceptionasyncExceptionFromExceptionallocationLimitExceededhFlushstdoutGHC.IO.Handle.Types NewlineModeoutputNLinputNLNewlineCRLFLFHandle BufferMode NoBufferingBlockBuffering LineBufferinguniversalNewlineModenoNewlineTranslationnativeNewlineMode nativeNewline GHC.IO.DeviceSeekMode SeekFromEnd AbsoluteSeek RelativeSeek Data.IORef modifyIORef' modifyIORef mkWeakIORefatomicWriteIORefatomicModifyIORefGHC.IO.Encoding.Types TextEncodingForeign.ForeignPtr.ImpnewForeignPtrEnv newForeignPtrmallocForeignPtrArray0mallocForeignPtrArrayGHC.ForeignPtr ForeignPtr FinalizerPtrFinalizerEnvPtrwithForeignPtrtouchForeignPtrplusForeignPtrnewForeignPtr_mallocForeignPtrBytesmallocForeignPtrfinalizeForeignPtrcastForeignPtraddForeignPtrFinalizerEnvaddForeignPtrFinalizer GHC.IORefIORef writeIORef readIORefnewIORefatomicModifyIORef'GHC.IO MaskingStateUnmaskedMaskedInterruptibleMaskedUninterruptibleFilePathuninterruptibleMask_uninterruptibleMaskthrowIOstToIOmask_mask interruptiblegetMaskingStateevaluatecatch IOExceptionioe_type ioe_location ioe_handle ioe_filename ioe_errnoIOErrorioe_description userErrorunsupportedOperation GHC.Exception ErrorCallErrorCallWithLocationthrowGHC.Exception.Type Exception toExceptiondisplayException fromExceptionArithExceptionRatioZeroDenominatorLossOfPrecision DivideByZeroDenormal UnderflowOverflow Data.TypeableTypeRep typeRepTyContypeRepFingerprint typeRepArgstypeReptypeOf7typeOf6typeOf5typeOf4typeOf3typeOf2typeOf1typeOf splitTyConApp showsTypeRep rnfTypeRepmkFunTygcast2gcast1gcast funResultTyeqTcast tyConPackage tyConName tyConModuletyConFingerprint trLiftedReprnfTyConData.Functor.ConstConstgetConst traverse_ sequence_ sequenceA_ornotElemmsum minimumBy maximumBymapM_for_forM_foldrMfoldlMfind concatMapconcatasumanyandall Data.OldListzipWith7zipWith6zipWith5zipWith4zip7zip6zip5zip4wordsunzip7unzip6unzip5unzip4unwordsunlinesunionByunionunfoldr transposetails subsequences stripPrefixsortBysort singleton permutations partitionnubBynublines isSuffixOf isPrefixOf isInfixOf intersperse intersectBy intersect intercalateinsertByinitsgroupBygroup genericTakegenericSplitAtgenericReplicate genericLength genericIndex genericDrop findIndices findIndex elemIndices elemIndex dropWhileEnddeleteFirstsBydeleteBy\\ Data.MonoidApgetApData.Semigroup.InternalSumgetSumProduct getProductEndoappEndoDualgetDualAnygetAnyAltgetAltAllgetAll stimesMonoidstimesIdempotentData.OrdDowngetDown comparingclamp Foreign.PtrWordPtrIntPtr wordPtrToPtr ptrToWordPtr ptrToIntPtr intPtrToPtrfreeHaskellFunPtrForeign.StorableStorable pokeElemOff pokeByteOffpoke peekElemOffpeek peekByteOff freeStablePtrdeRefStablePtrcastStablePtrToPtrcastPtrToStablePtrunsafeCoerceUnliftedunsafeCoerceAddr unsafeCoerce Data.BitsXorgetXorIorgetIorIffgetIffAndgetAndoneBits Data.Char isSeparatorisNumberisMarkisLetter digitToInt Text.Readreads readMaybe readEitherreadrightspartitionEithersleftsisRightisLeft fromRightfromLefteither Data.ProxyProxyKProxy asProxyTypeOfControl.CategoryCategoryid.>>><<<Data.Type.Equality:~~:HRefl:~:Refl GHC.IO.IOModeIOMode WriteMode ReadWriteMode AppendModeReadModeplusPtrnullPtr nullFunPtrminusPtrcastPtrToFunPtrcastPtrcastFunPtrToPtr castFunPtralignPtrNumericshowOct showIntAtBaseshowIntshowHex showHFloat showGFloatAlt showGFloat showFFloatAlt showFFloat showEFloatshowBin readSignedreadOctreadIntreadHex readFloatreadDecreadBin readParen readLitChar lexLitChar lexDigitslexText.ParserCombinators.ReadPReadS showFloatfromRat floatToDigits byteSwap64 byteSwap32 byteSwap16 bitReverse8 bitReverse64 bitReverse32 bitReverse16 GHC.UnicodeGeneralCategoryUppercaseLetterTitlecaseLetter SurrogateSpacingCombiningMarkSpace PrivateUseParagraphSeparator OtherSymbolOtherPunctuation OtherNumber OtherLetterOpenPunctuation NotAssignedNonSpacingMarkModifierSymbolModifierLetter MathSymbolLowercaseLetter LineSeparator LetterNumber InitialQuoteFormat FinalQuote EnclosingMark DecimalNumberDashPunctuationCurrencySymbolConnectorPunctuationControlClosePunctuationtoUppertoTitletoLowerisUpperisSymbolisSpace isPunctuationisPrint isOctDigitisLowerisLatin1 isHexDigitisDigit isControl isAsciiUpper isAsciiLowerisAscii isAlphaNumisAlphageneralCategoryGHC.Bits FiniteBits finiteBitSizecountLeadingZeroscountTrailingZerosBitszeroBitsxor unsafeShiftR unsafeShiftLtestBitshiftRshiftLshiftsetBitrotateRrotateLrotatepopCountisSigned complementBit complementclearBit bitSizeMaybebitSizebit.&..|.toIntegralSizedtestBitDefaultpopCountDefault bitDefault showSignedodd numeratorlcmgcdeven denominator^^^%GHC.Charchr GHC.STRefSTRef writeSTRef readSTRefnewSTRefGHC.STSTrunSTShowSshows showString showParen showLitCharshowChar intToDigitzipWith3zipWithzip3unzip3unzip takeWhiletaketailsplitAtspanscanr1scanrscanl1scanl'scanlreverse replicaterepeatlastiterate'iterateinitheadfoldl1' dropWhiledropcyclebreak!! Data.Maybe maybeToListmaybemapMaybe listToMaybe isNothingisJust fromMaybefromJust catMaybes Data.Boolbool Data.Functiononfix& Data.Functorvoid<&><$>$>uncurryswapcurryVersion versionTags versionBranch makeVersion GHC.IO.UnsafeunsafePerformIOunsafeInterleaveIOunsafeDupablePerformIOGHC.MVarMVar tryTakeMVar tryReadMVar tryPutMVartakeMVarreadMVarputMVarnewMVar newEmptyMVar isEmptyMVarsubtract MonadPlusmplusmzero Alternativesomemany<|>emptywhenuntilordliftM5liftM4liftM3liftM2liftMliftA3liftAflipconstasTypeOfap=<<<**>$!GHC.Err undefinederrorWithoutStackTraceerrorstimesIdempotentMonoid SomeException&&not||transformers-0.5.6.2!Control.Monad.Trans.Writer.StrictWriterT runWriterTWriter runWriter mapWriterT mapWriter execWriterT execWriter Control.Monad.Trans.State.StrictStateT runStateTState withStateT withStaterunState mapStateTmapState execStateT execState evalStateT evalStateControl.Monad.Trans.ReaderReaderT runReaderTReader withReaderT withReader runReader mapReaderT mapReaderaskControl.Monad.Trans.MaybeMaybeT runMaybeTmaybeToExceptT mapMaybeTliftPass liftListen liftCatch liftCallCCexceptToMaybeTControl.Monad.Trans.ExceptExceptTExcept withExceptT withExceptthrowE runExceptT runExcept mapExceptT mapExceptexceptcatchEControl.Monad.Trans.ContContTrunContTCont withContTwithContshiftTrunContresetTresetmapContTmapCont liftLocal evalContTevalContcontControl.Monad.Trans.Class MonadTranslift