t.      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~            !"#$%&'()*+,-Safe ./0123456789:/56789: ./0123456789:None*9:;<=?CDLOQRT A constraint f :<: g expresses that f is subsumed by g, i.e. f& can be used to construct elements in g.(Right-associative tuple type-constructor(Right-associative tuple data-constructorGeneric ; Shortcut to <Infix operator for = >?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~<      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~    000None9:;c Generalized  =      None #29:;<=QRLogger interpreter$ Logger DSL !"#$%&'()*+,-./0123456789 !"#$)%&'(*+.,-/01234567*+,-.9$%&'() !"#8/01234567 !"#$%&'()*+,-./0123456789NoneB used for +, , and - logsC used for . logsD;Discard logs that are strictly less serious than this levelEEnable log colorisationFODefault logger forwards error messages to stderr, and other messages to stdout.GInterpreter for $@ABCDEFGM !"#$%&'()*+,-./0123456789:;<=>?@ABCD !"#$)%&'(*+.,-/01234567@ADBCEFG@ABCDEFG@ABCDEFGNoneN8Feed reference: either its URI, or its UID from databaseHIJKLMNOPQRSTUVWHIJKMLNOPQRSTUVNOPWKLMHIJQRSTUV HIJKLMNOPQRSTUVWNone 29:;<=QR^Hooks interpreter`&Triggered for each unread feed elementa Hooks DSL^_`abcd^_`abcab^_`dc^_`abcdNoneQR i/How to format outgoing mails from feed elementsk+How to write the From: header of feed mailsl.How to write the Subject: header of feed mailsm*How to write the body of feed mails (sic!)n)How to write the To: header of feed mailsq&How to authenticate to the SMTP servers!How to connect to the SMTP serverzInterpreter for a{Fill E; with the feed title and, if available, the authors' names.This function leaves Fq empty. You are expected to fill it adequately, because many SMTP servers enforce constraints on the From: email.|(Fill mail subject with the element title}Fill mail body with:)a list of links associated to the element,the element's content or description/summaryBuild mail from a given feedghijklmnopqrstuvwxyz{|}~GHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~EFghijklmnopqrstuvwxyz{|}~yxwstuvqropijklmnghz{|}~ghijklmnopqrstuvwxyz{|}~None#:QR!Where and what to write in a fileInterpreter for aWrapper around  and Generate a path  root feedtitle elementdate- elementtitle.html, where  root is the first argument[Generate an HTML page, with a title, a header and an article that contains the feed elementGenerate an HTML  header for a given feed element2Generate the HTML content for a given feed elementRoot directory for  NoneTWrap a  value in  MonadErrorWrap a  value in  MonadErrorNone 29:;<=QRHTTP client interpreterHTTP client DSLPerform an HTTP GET request NoneInterpreter for %Default manager uses TLS and no proxy8Perform an HTTP GET request and return the response body#Build an HTTP request for given URI      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ None29:;<=QRXML parsing interpreterXML parsing DSLParse XML into a K NoneA M to alter the raw XML before feeding it to the parser, depending on the feed Interpreter for (Default pre-process always forwards all sNone:DORT2How dynamic reconfiguration process should behave.Default mode is J, that is: use custom configuration file and recompile if change detected.3Describe the paths used for dynamic reconfiguration Dynamic reconfiguration settings0Launch a recompilation of the configuration file  None/:Available commandline options.Available commands.&%  None#/29:;<=DQRDatabase interpreter Database DSLGeneric database table,), None: None:DQR'Singleton type to represent feeds tableUnique key in feeds tableSet the last check time to now3Unset feed's last update and remove all read hashes!!None :DLQRTc'Print database status for given feed(s)'Register the given feed URI in database1Check for unread elements without processing them F to all feeds described by the OPML document provided in input (stdin)  N  N    None :DLOQRT Main function, meant to be used in your personal configuration file. Each argument is an interpreter functor along with an initial state.Here is an example: import Imm.Boot import Imm.Database.JsonFile import Imm.Feed import Imm.Hooks.SendMail import Imm.HTTP.Simple import Imm.Logger.Simple import Imm.XML.Simple main :: IO () main = do logger <- defaultLogger manager <- defaultManager database <- defaultDatabase imm (mkCoHttpClient, manager) (mkCoDatabase, database) (mkCoLogger, logger) (mkCoHooks, sendmail) (mkCoXmlParser, defaultPreProcess) sendmail :: SendMailSettings sendmail = SendMailSettings smtpServer formatMail formatMail :: FormatMail formatMail = FormatMail (\a b -> (defaultFormatFrom a b) { addressEmail = "user@host" } ) defaultFormatSubject defaultFormatBody (\_ _ -> [Address Nothing "user@host"]) smtpServer :: Feed -> FeedElement -> SMTPServer smtpServer _ _ = SMTPServer (Just $ Authentication PLAIN "user" "password") (StartTls "smtp.host" defaultSettingsSMTPSTARTTLS)  HTTP client interpreter (cf Imm.HTTP)Database interpreter (cf  Imm.Database)Logger interpreter (cf  Imm.Logger)Hooks interpreter (cf  Imm.Hooks)XML parsing interpreter (cf Imm.XML)     None 9:;<=DLRDefault database is stored in $XDG_CONFIG_HOME/imm/feeds.jsonInterpreter for  !"#$%&'()- !"#$%&')( !"#$%&' !"#$%&'()Nonef !"#$)%&'(*+.,-/01234567HIJKMLNOPQRSTUV^_`abc    !"#$%&'()*+,-./01234556789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWWXYZ[\]^_`abcdefghijklmnopqrsttuvwxyz{||}}~                                                         !"#$%&'()*+,-./0123456789:;<=+<>?@AB<CDEFG<HI<JK<LM<LN<CO<CP<CQ<CR<ST<SU<VW<XY<XZ<X[<X\<X]<X^<X_<X`<Xa<Xb<Xc<XdEefEegEeh<ij<ik<il<im<in<io<ip<iq<ir<is<it<iu<iv<iw<ix<iy<iz<i{<S|<S}<S~<S<S<S<S<S<S<S<S<S<C<C<C<C<C<C<C<C<<<<<<<<EeEeEeEeEeEeEeEe<<<<S<S<i<i<i<i<i<i<i<i<i<i<i<i<i<i<i<S<S<S<S<S<S<=<=<=<V<<<C<C<C<C<C<<<<<<<<<<<<C<C<C<CEEEEEEE<C<C<CEEEE<SEE<<<<VE<<<C<=@A@A@A@A@A@A@A@A@A@A@A@A@A <  <C <C <C<C<C<C<C<C<<<<<><<<<< <!<"<#<$<%<&<&<'<J(<J)<J*<J+<J,<J-<J.<J/<J0<12< 3<14<56<57<57<89<89<8:<;<<<=<=<><?<?<@<A<A<B<C<C<D<E<F<G<G<H<I<I<J<K<K<L<MN<5O<5P<5Q<RS<RT<RU<RV<WX<WY<WZ<W[<W\<V]<V^<V_<V`<Va<Vb<Vc<Vd<Ve<Vf<Vg<Vh<Vi<Vj<Vk<Vl<Vm<Vn<Vo<Vp<Vq<Vr<Vs<Vt<Vu<Vv<Vw<Vx<Vy<Vz<V{<V|<}<~<<<<<<<<<<<<<<<<S<S<S<S<S<S<=<=<=<=<H<H<H<H<H<H<H<H<H<H<H<H<H<H<H<H<H<<<<<<<<<L<L<<C<C<C<C<C<C<C<C<C<C<C<C<C<<<<R<REeEeEe      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}|~|||||||||||||||||||||||||||/@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A+@A@A@A@A@A@A @A @A@A @A @A @A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A@A @A!@A"@A#@A$@A%@A&@A'@A(@A)@A*@A+@A,@A-@A.@A/@A0@A1@A2@A3@A4@A5@A6@A7@A8@A9@A:@A;@A<@A=@A>?@A?@B?@C?@D?@E?@F?@G?@H?@I?@J?@K?@L?@M?@N?@O?@P?@Q?@R?@S?@T?@U?@V?@W?XY?XZ?X[?X\?X]?^_?^?^`?^`?^a?^b?^c?de?df?gh?gi?gj?gk?glmnomnpqrsqrtqruqrvqrwqrxqryqrzqr{qr|qr}qr~qrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqqqqmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmn         !"#$%$&$'$($)*+*,*-*.*/*0*1*2*3*4*5*678797:7;7<7=7>7?7@7A7B7C7DEFEGEHIJIKLMLNLOLPLQLRLSLTLULVLWLXLYLZ[\[][^[_[`[a[b[c[d[e[f[g[h[i[j[k[l[m[n[o[p[q[r[s[t[u[u[v[w[x[y[z[{[|[}[~[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[a[[[[[[[[[[[[[[[[[[[[[[[[[Z[     "imm-1.2.0.0-4skgNvLXrfF92SYz3dDzQb Imm.Prelude Imm.LoggerImm.Logger.SimpleImm.Feed Imm.HooksImm.Hooks.SendMailImm.Hooks.WriteFileImm.HTTPImm.HTTP.SimpleImm.XMLImm.XML.Simple Imm.DatabaseImm.Database.FeedTableImm.CoreImm.BootImm.Database.JsonFile Paths_imm Imm.Pretty Imm.ErrorImm.Dyre Imm.Options Imm.AesonImmTextLText ByteString LByteStringPairingMpairM:<:injSubinj'ContainsHNoHIdHRightHLeft:::+:*: interpretshowio<++>$fPairingMProductSumm$fPairingMSumProductm$fPairingMIdentityIdentitym$f:<:fg $fSub(,)fSum$fSubHLeftaSum $fSubHIdaa CoLoggerFlogH getLevelH setLevelH setColorizeHflushHLoggerFLogGetLevelSetLevel SetColorizeFlushLogLevelDebugInfoWarningErrorlog getLogLevel setLogLevelsetColorizeLogs flushLogslogDebuglogInfo logWarninglogError$fPairingMCoLoggerFLoggerFm$fPrettyLogLevel $fEqLogLevel $fOrdLogLevel$fReadLogLevel$fShowLogLevel$fFunctorLoggerF$fFunctorCoLoggerFLoggerSettings loggerSeterrorLoggerSetlogLevel colorizeLogs defaultLogger mkCoLogger FeedElement RssElement AtomElementFeedRssAtomFeedRefByUIDByURI getFeedTitle getElementsgetDategetTitle getHashes prettyElement$fPrettyFeedRef $fEqFeedRef $fShowFeedRef$fEqFeed $fShowFeed$fEqFeedElement$fShowFeedElementCoHooksF onNewElementHHooksF OnNewElement onNewElement$fPairingMCoHooksFHooksFm$fFunctorHooksF$fFunctorCoHooksFSendMailSettings FormatMail formatFrom formatSubject formatBodyformatTo SMTPServerAuthenticationConnectionSettingsPlainSslStartTls ServerNamePasswordUsername mkCoHooksdefaultFormatFromdefaultFormatSubjectdefaultFormatBody authenticate_withSMTPConnection buildMail$fEqConnectionSettings$fShowConnectionSettings$fEqAuthentication$fShowAuthentication$fEqSMTPServer$fShowSMTPServerWriteFileSettingsFileInfodefaultSettingsdefaultFilePathdefaultFileContent defaultHeader defaultBodyconvertAtomURI convertURI convertText convertDoc CoHttpClientFgetH HttpClientFGetget#$fPairingMCoHttpClientFHttpClientFm$fFunctorHttpClientF$fFunctorCoHttpClientFmkCoHttpClientdefaultManager CoXmlParserF parseXmlH XmlParserFParseXmlparseXml!$fPairingMCoXmlParserFXmlParserFm$fFunctorXmlParserF$fFunctorCoXmlParserF PreProcess mkCoXmlParserdefaultPreProcessDatabaseException NotCommitted NotDeletedNotFound NotInserted NotPurged NotUpdatedUnableFetchAll CoDatabaseF describeH fetchListH fetchAllHupdateH insertListH deleteListHpurgeHcommitH DatabaseFDescribe FetchListFetchAllUpdate InsertList DeleteListPurgeCommitTableKeyEntrydescribeDatabasefetch fetchListfetchAllupdateinsert insertListdelete deleteListpurgecommit$fPrettyDatabaseException$fExceptionDatabaseException$fPairingMCoDatabaseFDatabaseFm$fFunctorDatabaseF$fFunctorCoDatabaseF$fShowDatabaseException$fEqDatabaseException CoDatabaseF' DatabaseF'Database FeedStatusUnknownNew LastUpdate FeedTable DatabaseEntryentryURI entryCategoryentryReadHashesentryLastCheckFeedIDnewDatabaseEntryregister getStatus addReadHash markAsRead markAsUnread$fPrettyFeedStatus$fTableFeedTable$fPrettyFeedTable$fToJSONDatabaseEntry$fFromJSONDatabaseEntry$fPrettyDatabaseEntry$fPrettyFeedID$fToJSONFeedID$fFromJSONFeedID $fEqFeedID $fOrdFeedID $fShowFeedID$fEqDatabaseEntry$fShowDatabaseEntry$fShowFeedTable $fEqDatabase$fShowDatabase printVersionsshowFeed subscribecheckrun importOPMLimm$fExceptionInterruptedException $fEqSafeGuard$fReadSafeGuard$fShowSafeGuard$fEqInterruptedException$fReadInterruptedException$fShowInterruptedException JsonException UnableDecodeJsonFileDatabase CacheStatusEmptyCleanDirtymkJsonFileDatabasedefaultDatabase mkCoDatabase loadInCache insertInCache updateInCache deleteInCache purgeInCache$fExceptionJsonException$fPrettyJsonFileDatabase$fEqCacheStatus$fShowCacheStatus$fEqJsonException$fShowJsonExceptioncatchIOversionbindirlibdirdatadir libexecdir sysconfdir getBinDir getLibDir getDataDir getLibexecDir getSysconfDirgetDataFileNamebaseGHC.ShowControl.Monad.IO.ClassliftIO,ansi-wl-pprint-0.6.7.3-EqhsHSbxOT2xFHZZJCFwfText.PrettyPrint.ANSI.LeijenlineGHC.Base++ghc-primGHC.PrimseqGHC.Listzip System.IOprint Data.Tuplefstsnd otherwiseassertmap$GHC.Real fromIntegral realToFracData.Typeable.InternalmkAppTyGHC.EnumBoundedminBoundmaxBoundEnumenumFrom enumFromThenenumFromThenTo enumFromTofromEnumtoEnumsuccpred GHC.ClassesEq==/= GHC.FloatFloatingpiexpsqrt**logBasesincostanasinacosatansinhcoshtanhasinhacoshatanh Fractional fromRational/recipIntegral toIntegerquotremdivmodquotRemdivModMonad>>=>>returnfailFunctorfmap<$GHC.NumNum*+-negate fromIntegerabssignumOrd>=minmax><<=compareGHC.ReadReadreadList readsPrecReal toRational RealFloat floatRadix floatDigits floatRange decodeFloat encodeFloatexponent significand scaleFloatisNaN isInfiniteisDenormalizedisNegativeZeroisIEEEatan2RealFracproperFractiontruncateroundceilingfloorShow showsPrecshowListTypeable Data.StringIsString fromString Applicativepure<*>*><* Data.FoldableFoldablefoldlfoldl1foldr1maximumminimumData.Traversable TraversabletraversemapM sequenceAsequenceMonoidmemptymappendmconcat GHC.TypesBoolTrueFalseCharDoubleFloatInt integer-gmpGHC.Integer.TypeIntegerMaybeNothingJustOrderingLTEQGTRationalIOWord Data.EitherEitherLeftRightTypeRepTyCon Data.Monoid<> Data.Functor<$>Stringcontainers-0.5.7.1 Data.Map.BaseMapShowStextindentequalsspacebracketsangles<+>vsephsepPrettypretty prettyListDoc Text.Readread Alternative<|>manyemptysome MonadPlusmzeromplusData.Bifunctor BifunctorfirstsecondbimapMonadIO Control.MonadunlessforMforControl.Applicativeoptional WrappedMonad WrapMonad unwrapMonad WrappedArrow WrapArrow unwrapArrowZipList getZipListreadIOreadLn appendFileinteract getContentsgetCharputStrLnputStrputCharGHC.IO.Handle.FDstderrreadsstdoutGHC.IO.ExceptionioErrorSomeAsyncExceptionData.Functor.ConstConstgetConstforM_mapM_DualgetDualEndoappEndoAllgetAllAnygetAnygetSum getProductFirstgetFirstLastgetLastAltgetAltGHC.IOFilePath userError IOExceptionIOError GHC.Exception Exception toException fromExceptiondisplayException Data.Typeablegcast2gcast1gcasteqTcast rnfTypeRep showsTypeReptypeOf7typeOf6typeOf5typeOf4typeOf3typeOf2typeOf1typeOftypeRep typeRepArgs typeRepTyCon funResultTy splitTyConAppmkFunTy mkTyConApptypeRepFingerprintrnfTyConmkTyCon3tyConFingerprint tyConString tyConName tyConModule tyConPackage Typeable1 Typeable2 Typeable3 Typeable4 Typeable5 Typeable6 Typeable7isRightisLeftpartitionEithersrightsleftseitherData.Type.Equality:~:Refl Data.ProxyProxyData.Ord comparingDownlex readParenText.ParserCombinators.ReadPReadSvoidlcmgcd^^^oddeven showParen showStringshowCharshowsunzip3unzipzipWith3zipWithzip3!!cyclerepeatiteratescanr1scanrscanl1scanlinitlasttailhead Data.MaybemapMaybe listToMaybe maybeToList fromMaybefromJust isNothingisJustmaybeuncurrycurrysubtractasTypeOfuntil$!flip.constidwhen=<<liftA3liftA2liftA<**>GHC.Err undefinederrorWithoutStackTraceerror SomeException&&||not)chunked-data-0.3.0-10dv0jeYSRb3CFv3ILe7Mb Data.IODataIOData hGetContentshGetLine hPutStrLngetLinereadFile writeFilehPut hGetChunk'exceptions-0.8.3-5OTPYzRazb4DJ75sPncYEhControl.Monad.Catch MonadThrow handleIOError catchIOErroruninterruptibleMask_mask_ MonadCatch MonadMaskmaskuninterruptibleMask-mono-traversable-1.0.2-9v2iW0oZMaCJTS92M9o6URData.Containers SetContainer ContainerKeymemberunion intersection difference notMemberunionskeysPolyMap differenceMapintersectionMapintersectionWithMap BiPolyMapBPMKeyConstraint mapKeysWithIsMapMapValuelookup insertWith insertWithKeyinsertLookupWithKeyupdateLookupWithKeyfindWithDefault adjustWithKey updateWithKey unionsWith unionWith unionWithKey mapWithKey insertMap deleteMap singletonMap mapFromList mapToList adjustMap updateMapalterMap omapKeysWithIsSet insertSet deleteSet singletonSet setFromList setToListMonoZipozipWithozipounzip HasKeysSetKeySetkeysSetData.SequencesrepackunpackpacksortOn catMaybessortreplaceSeqLazyTextsplitSeqLazyTextreplaceSeqStrictTextsplitSeqStrictTextstripSuffixLazyBSstripPrefixLazyBSsplitSeqLazyBSstripSuffixStrictBSstripPrefixStrictBSsplitElemStrictBSdeleteBygroupAllgroup isInfixOf isSuffixOf isPrefixOf stripSuffix stripPrefix replaceSeqsplitSeq splitEleminitDeftailDef defaultSnoc defaultCons vectorSort vectorSortBydefaultSplitWhen defaultSortBydefaultReversedefaultIntersperse defaultFind singleton SemiSequenceIndexsortByreversefind intersperseconssnoc IsSequencefromListfilterindex takeWhiletake unsafeIndex unsafeDropuncons replicate dropWhiledropsplitAtspanbreak partitiongroupBy subsequences permutationsfilterM replicateM unsafeTake unsafeTail unsafeInitunsnoc lengthIndex unsafeSplitAt groupAllOntailExtailMayinitExinitMayindexEx splitWhenTextualtoLowertoUpperlinesunlineswordsunwords toCaseFold breakWord breakLine LazySequence fromChunkstoChunks fromStricttoStrictUtf8 encodeUtf8 decodeUtf8Data.MonoTraversable.Unprefixed sequence_foldMconcatfold intercalatepointnotElemelem concatMaporandproductsum foldl1Ex'foldr1Ex foldMap1ExfoldlMfor_ traverse_ compareLengthlength64lengthnullanyalltoListfoldl'foldrfoldMap0monoid-subclasses-0.4.3.1-I9u9Buha7EyKxOmt30SGrMData.Monoid.Textual TextualMonoidfromText.safe-exceptions-0.1.5.0-6HI4Z0GJ9z5EoVlrctRBFzControl.Exception.Safe catchesAsync catchesDeepcatchesisAsyncExceptionisSyncExceptiontoAsyncExceptiontoSyncExceptionbracketOnError_bracketOnErrorfinallybracket_bracket withException onExceptiontryJusttryAsync tryAnyDeeptryDeeptryAnytryIOtry handleJust handleAsync handleAnyDeep handleDeep handleAnyhandleIOhandle catchJust catchAsync catchAnyDeep catchDeepcatchAnycatch impureThrowthrowTo throwStringthrowMthrowIOthrowStringExceptionSyncExceptionWrapperAsyncExceptionWrapperHandlertextual prettyTree prettyTime prettyPerson prettyLinkprettyAtomText prettyEntry prettyItem prettyURI prettyGuidprettyAtomContenthPutDocputDoc displayIOdisplayS renderCompact renderSmart renderPrettyplain deunderline underlinedeboldbold ondullwhiteonwhite ondullcyanoncyan ondullmagenta onmagenta ondullblueonblue ondullyellowonyellow ondullgreenongreen ondullredonred ondullblackonblack dullwhitewhitedullcyancyan dullmagentamagentadullblueblue dullyellowyellow dullgreengreendullredred dullblackblackflatAltcolumnsnestingcolumnnesthardline linebreakcharalignhangfill fillBreakrationaldoublefloatintegerintboolstring backslashdotcommacolonsemidquotesquoterbracketlbracketrbracelbraceranglelanglerparenlparenencloseparensbracesdquotessquotes softbreaksoftline<$$>vcathcatfillCatcatfillSep punctuate encloseSep semiBracestupledlist SimpleDocSFailSEmptySCharSTextSLineSSGR)fast-logger-2.4.10-Kc1eCZpvL6wG1m77snocRjSystem.Log.FastLogger LoggerSetwithTimedFastLoggernewTimedFastLoggerwithFastLogger newFastLogger rmLoggerSetrenewLoggerSet flushLogStr pushLogStrLn pushLogStr newLoggerSetnewStderrLoggerSetnewStdoutLoggerSetnewFileLoggerSet FastLoggerTimedFastLoggerLogTypeLogNone LogStdout LogStderrLogFileNoRotateLogFile LogCallbackSystem.Log.FastLogger.DatesimpleTimeFormat'simpleTimeFormat newTimeCache FormattedTime TimeFormatSystem.Log.FastLogger.Filerotate FileLogSpeclog_file log_file_sizelog_backup_numberSystem.Log.FastLogger.IOdefaultBufSizeBufSizeSystem.Log.FastLogger.LogStr fromLogStr logStrLengthLogStrToLogStrtoLogStr)mime-mail-0.4.13.1-KSJYnqCFfJvK6DiIZWXn7rNetwork.Mail.Mime addressName addressEmail&HaskellNet-0.5.1-4dE9EW0EH86hgQvTo2kKjNetwork.HaskellNet.SMTP sendMimeMail2 sendMimeMail' sendMimeMailsendPlainTextMail doSMTPStreamdoSMTP doSMTPPortsendMail authenticate closeSMTP sendCommand connectStream connectSMTPconnectSMTPPortSMTPConnectionCommandAUTHNOOPQUITRSETHELOEHLOMAILRCPTDATAEXPNVRFYHELPResponseOk SystemStatus HelpMessage ServiceReadyServiceClosing UserNotLocal CannotVerifyStartMailInputServiceNotAvailableMailboxUnavailableErrorInProcessingInsufficientSystemStorage SyntaxErrorParameterErrorCommandNotImplemented BadSequenceParameterNotImplementedMailboxUnavailableErrorUserNotLocalErrorExceededStorageMailboxNotAllowedTransactionFailedNetwork.HaskellNet.AuthAuthTypePLAINLOGINCRAM_MD5-HaskellNet-SSL-0.3.3.0-IkhhW4DH47z7vDoewRSXkkNetwork.HaskellNet.SMTP.SSLdefaultSettingsSMTPSTARTTLSdefaultSettingsSMTPSSLdoSMTPSTARTTLSWithSettingsdoSMTPSTARTTLSdoSMTPSSLWithSettings doSMTPSSLconnectSMTPSTARTTLSWithSettingsconnectSMTPSTARTTLSconnectSMTPSSLWithSettingsconnectSMTPSSLNetwork.HaskellNet.SSLSettingssslPortsslMaxLineLengthsslLogToConsolesslDisableCertificateValidationquotedPrintableaddAttachmentsBSaddAttachmentBSCidaddAttachmentBSaddAttachmentsaddAttachmentCid addAttachmenthtmlPart plainPartaddPartsimpleMailInMemory simpleMail' simpleMailrenderSendMailCustomsendmailCustomCaptureOutputsendmailCustomrenderSendMail renderMail' renderAddress renderMail emptyMail randomStringBoundary unBoundaryMailmailFrommailTomailCcmailBcc mailHeaders mailPartsAddressEncodingBase64NoneQuotedPrintableTextQuotedPrintableBinary AlternativesPart partFilename partHeaderspartType partEncoding partContentHeadersfailWithliftEhttpGet makeRequest parseRequest''connection-0.2.7-KNlFfC4iF1yDmSLkNbIPcXNetwork.ConnectionconnectionIsSecureconnectionSetSecureconnectionCloseconnectionGetLineconnectionWaitForInputconnectionGetChunk'connectionGetChunk connectionGetconnectionGetExact connectionPut connectToconnectFromSocketconnectFromHandleinitConnectionContext LineTooLongHostNotResolvedHostCannotConnectNetwork.Connection.TypesConnectionParamsconnectionHostnameconnectionPortconnectionUseSecureconnectionUseSocks ProxySettingsSockSettingsSimpleSockSettingsEnvironment OtherProxy SockSettings TLSSettingsTLSSettingsSimple#settingDisableCertificateValidationsettingDisableSessionsettingUseServerName Connection connectionIDConnectionContext*http-client-0.5.6.1-GvOoM8hN6P9JLlLku8LpevNetwork.HTTP.ClientresponseTimeoutDefaultresponseTimeoutNoneresponseTimeoutMicromanagerSetProxymanagerSetSecureProxymanagerSetInsecureProxywithResponseHistoryresponseOpenHistoryHistoriedResponse hrRedirectshrFinalRequesthrFinalResponseNetwork.HTTP.Client.Core responseClose responseOpen httpNoBodyhttpLbs withResponseNetwork.HTTP.Client.Manager defaultProxyproxyEnvironmentNamedproxyEnvironmentuseProxynoProxyproxyFromRequest withManager closeManager newManagerdefaultManagerSettingsrawConnectionModifySocketSizerawConnectionModifySocketNetwork.HTTP.Client.RequestobservedStreamFile streamFilesetQueryStringsetRequestIgnoreStatusurlEncodedBodyapplyBasicProxyAuthapplyBasicAuthdefaultRequestgetUri parseRequest_ parseRequest parseUrlThrowparseUrlNetwork.HTTP.Client.Body brConsume brReadSomebrReadNetwork.HTTP.Client.ConnectionsocketConnectionmakeConnectionNetwork.HTTP.Client.CookiesgenerateCookieinsertCheckedCookiereceiveSetCookieupdateCookieJarcomputeCookieStringinsertCookiesIntoRequestevictExpiredCookies!removeExistingCookieFromCookieJardestroyCookieJarcreateCookieJar pathMatches defaultPath domainMatches isIpAddressNetwork.HTTP.Client.Types BodyReader HttpExceptionHttpExceptionRequestInvalidUrlExceptionHttpExceptionContentResponseTimeoutStatusCodeExceptionTooManyRedirectsOverlongHeadersConnectionTimeoutConnectionFailureInvalidStatusLine InvalidHeaderInternalExceptionProxyConnectExceptionNoResponseDataReceivedTlsNotSupportedWrongRequestBodyStreamSizeResponseBodyTooShortInvalidChunkHeadersIncompleteHeadersInvalidDestinationHostHttpZlibExceptionInvalidProxyEnvironmentVariableConnectionClosedCookie cookie_name cookie_valuecookie_expiry_time cookie_domain cookie_pathcookie_creation_timecookie_last_access_timecookie_persistentcookie_host_onlycookie_secure_onlycookie_http_only CookieJar proxyHost proxyPort RequestBodyRequestBodyLBS RequestBodyBSRequestBodyBuilderRequestBodyStreamRequestBodyStreamChunked RequestBodyIOPopper NeedsPopper GivesPopperRequestmethod decompresspathsecurehostport queryStringrequestHeaders requestBodyproxy redirectCount checkResponseresponseTimeout cookieJarrequestVersionresponseStatusresponseVersionresponseHeaders responseBodyresponseCookieJarManagerSettingsmanagerConnCountmanagerRawConnectionmanagerTlsConnectionmanagerResponseTimeoutmanagerRetryableExceptionmanagerWrapExceptionmanagerIdleConnectionCountmanagerModifyRequestmanagerModifyResponse ProxyOverrideManagerHasHttpManagergetHttpManagerStreamFileStatusfileSize readSoFar thisChunkSize,http-client-tls-0.3.4-CMrxRZ5zqlt6U62FTUgKyZNetwork.HTTP.Client.TLSapplyDigestAuthdisplayDigestAuthExceptionsetGlobalManagergetGlobalManager newTlsManagertlsManagerSettingsmkManagerSettingsContextmkManagerSettingsDigestAuthExceptionDigestAuthExceptionDetailsUnexpectedStatusCodeMissingWWWAuthenticateHeaderWWWAuthenticateIsNotDigest MissingRealm MissingNonce$conduit-1.2.9-DZLKUQ9W5cSLiKBqdHp2dFData.Conduit.Internal.ConduitConduit-uri-bytestring-0.2.3.1-LjP8W0Lbd6A22GuT5csXHMURI.ByteString.TypesURI&xml-types-0.3.6-LXICdFNM88rEPxfvCuWvy2Data.XML.TypesEventMode defaultModeNormal describePaths parameters recompileVanillaForceReconfigurationIgnoreReconfigurationbaseParameterswrap CliOptions optionCommandoptionDyreModeoptionLogLeveloptionColorizeLogsCheckImportRebuildUnreadRun ShowVersion Subscribe UnsubscribedefaultCommanddefaultOptions parseOptions cliOptionscommands vanillaFlagforceReconfFlagdenyReconfFlag dyreDebugdyreMasterBinary verboseFlag quietFlagconfigLabelOptionsubscribeOptionsunsubscribeOptions uriReader feedRefOption uriArgument$fPrettyCommand parseJsonURI toJsonURI StatusTable EntryTablecheckOnerunOneisRead importOPML'getFeedputBoxcellentryTableToBoxstatusTableToBoxInterruptedException SafeGuardAskConfirmationByPassConfirmationImmFCoImmFrealMainmkCoImm promptConfirm resolveTarget