úÎzsnşÇ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹Œ‘’“”•–—˜™š›œŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆ Safe-InferedÇÇÇ Safe-Infered;Low-level representation of replies from the Redis server.  È È ÈNone ÉÊËÌÍÎÏĞÑÒÓÔÕÖ× ÉÊ  ÉÊËÌÍÎÏĞÑÒÓÔÕÖ×None /Information for connnecting to a Redis server. !It is recommended to not use the  data constructor directly.  Instead use $' and update it with record syntax. For N example to connect to a password protected Redis server running on localhost $ and listening to the default port:   myConnectInfo :: ConnectInfo 8 myConnectInfo = defaultConnectInfo {connectAuth = Just "secret"} 0When the server is protected by a password, set  to Ø ? the password. Each connection will then authenticate by the &  command. DMaximum number of connections to keep open. The smallest acceptable  value is 1. @Amount of time for which an unused connection is kept open. The - smallest acceptable value is 0.5 seconds. DA threadsafe pool of network connections to a Redis server. Use the  % function to create one. !All Redis commands run in the ! monad. "7Interact with a Redis datastore specified by the given  .  Each call of "% takes a network connection from the    pool and runs the given ! action. Calls to " may thus block 2 while all connections from the pool are in use. $$Default information for connecting:   connectHost = " localhost" @ connectPort = PortNumber 6379 -- Redis default port 9 connectAuth = Nothing -- No password B connectMaxConnections = 50 -- Up to 50 connections F connectMaxIdleTime = 30 -- Keep open for 30 seconds %Opens a  + to a Redis server designated by the given  .  Ù!"ÚÛ#$%& password Ü Ù!"ÚÛ#$%&  Ù!"ÚÛ#$%&Ü Safe-Infered.Options for the L command. JRedis default .2. Equivalent to omitting all optional parameters.   SortOpts 1 { sortBy = Nothing -- omit the BY option 7 , sortLimit = (0,-1) -- return entire collection  , sortGet = [] -- omit the GET option 6 , sortOrder = Asc -- sort in ascending order F , sortAlpha = False -- sort numerically, not lexicographically  } ,'()*+,-./012345key 6key 7key 8key pivot value 9key pivot value :key ;cnt <=>key start stop ?key start stop @key start stop Akey start stop Bkey min max Ckey min max Dkey min max offset count Ekey min max offset count Fkey max min Gkey max min Hkey max min offset count Ikey max min offset count JKkey  destination Lkey İkey  destination M destination keys N destination weighted keys O destination keys P destination weighted keys Şcmd  destination keys weights ,'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLİMNOPŞ!'*)(+-,./0123456789:;<=>?@ABCDEFGHIJKLİMNOPŞ Safe-InferedXPost a message to a channel ( http://redis.io/commands/publish). Y4Listen for messages published to the given channels  ( "http://redis.io/commands/subscribe). Z:Stop listening for messages posted to the given channels  ( $http://redis.io/commands/unsubscribe). [GListen for messages published to channels matching the given patterns  ( #http://redis.io/commands/psubscribe). \LStop listening for messages posted to channels matching the given patterns  ( %http://redis.io/commands/punsubscribe). ]6Listens to published messages on subscribed channels. BThe given callback function is called for each received message. 5 Subscription changes are triggered by the returned W . To keep 3 subscriptions unchanged, the callback can return ß. Example: Subscribe to the "news" channel indefinitely.    pubSub (subscribe ["news"]) $ \ msg -> do  putStrLn $ " Message from " ++ show (msgChannel msg)  return mempty +Example: Receive a single message from the "chat" channel.   pubSub (subscribe ["chat"]) $ \ msg -> do  putStrLn $ " Message from " ++ show (msgChannel msg)  return $ unsubscribe ["chat"] QRSTUVWXchannel message Ychannel Zchannel [pattern \pattern ]Initial subscriptions. Callback function. à QRSTUVWXYZ[\] QTRUVSUVWXYZ[\]à Safe-Inferedi^_key field `key field  increment abkey ckey member dsource  destination timeout ekey  increment fkey gkey offset value hkey offset value ijmessage kkey timeout l destination key mkey db nokey start end pkey member qkey rkey offset skey min max tu keyValue vkey member wxkey  fieldValue ykey zkey  increment member {key | keyValue }source  destination ~key key seconds value € destination key key timeout ‚key ƒ„key …key field †key start stop ‡key seconds ˆ‰key Škey  decrement ‹Œkey key  scoreMember pattern host port ‘key ’key value “key value ”key value •key member –key min max —key ˜key ™key value š›key œkey field value  parameter key Ÿkey  key ¡key member ¢key £¤key newkey ¥key ¦index §key field ¨ destination key ©ª parameter value «key newkey ¬key  timestamp ­key ®key count value ¯key °key ±key start stop ²key value ³key index value ´µkey field ¶key ·source  destination member ¸¹key value ºkey start stop »key member ¼key value ½key index ¾key member ¿key ÀÁkey field value Âkey value ÃÄÅkey Ækey ”&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOP^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹Œ‘’“”•–—˜™š›œŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆi^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹Œ‘’“”•–—˜™š›œŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆ Safe-InferedÇ  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹Œ‘’“”•–—˜™š›œŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÉ!" %$&j£t¦bŸ‡¬m576Æš¤«./01234J+-,LK—:_§µ‚`˜~…xÁœkd½89‰„¼Â†®³±f}™“waªƒ‘Ä^¸´ˆi©;<=»y¶l{¨v¢·›Åp €°sz'*)(OP>?BCDE•¡º–@AFGHIc¾MN²¥Š­ro’¯eŒ|u¹h”g¿Ã‹nÀqX]QTRUVSUVWYZ[\#   á      !"#$%&'()*+,-./0123456789::;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^\_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹Œ‘’“”•–—˜™š›œŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖרÙÚÛÜİŞßàáâãäåæçèéêâëìíî hedis-0.4Database.RedisDatabase.Redis.RequestDatabase.Redis.ReplyDatabase.Redis.TypesDatabase.Redis.CoreDatabase.Redis.ManualCommandsDatabase.Redis.PubSubDatabase.Redis.Commandsnetwork-2.3.0.11NetworkService PortNumber UnixSocketPortIDNetwork.SocketHostNameReply MultiBulkBulkIntegerError SingleLineStatusQueuedZSetSetListHashStringNonePongOk RedisResultdecode ConnectInfoConnInfo connectHost connectPort connectAuthconnectMaxConnectionsconnectMaxIdleTimeConnectionLostExceptionConnectionLost ConnectionRedisrunRedis sendRequestdefaultConnectInfoconnectauth AggregateMaxMinSum SortOrderDescAscSortOptssortBy sortLimitsortGet sortOrder sortAlphaobjectRefcountobjectIdletimeobjectEncoding linsertBefore linsertAftergetType slowlogGet slowlogLen slowlogResetzrangezrangeWithscores zrevrangezrevrangeWithscores zrangebyscorezrangebyscoreWithscoreszrangebyscoreLimitzrangebyscoreWithscoresLimitzrevrangebyscorezrevrangebyscoreWithscoreszrevrangebyscoreLimitzrevrangebyscoreWithscoresLimitdefaultSortOpts sortStoresort zunionstorezunionstoreWeights zinterstorezinterstoreWeightsMessagePMessage msgPattern msgChannel msgMessagePubSubpublish subscribe unsubscribe psubscribe punsubscribepubSubflushallhdelhincrbyconfigResetstatdelzrevrank brpoplpushincrbyrpopsetrangesetbitsaveechoblpop sdiffstoremovemultigetrangesremwatchgetbitzcountquitmsetnx sismember bgrewriteaofhmsetscardzincrbysintermset rpoplpushhlensetex sunionstorebrpophgetalldbsizelpophmgetlrangeexpirelastsavellendecrbyexecmgetzaddkeysbgsaveslaveof debugObjectgetsetrpushxsetnxzrankzremrangebyscorettlhkeysrpush randomkeyspophsetnx configGethvalsexistssunionzremsmemberspingrenamedecrselecthexists sinterstoreshutdown configSetrenamenxexpireatgetlremincrzcardltrimappendlsetinfohgetsdiffsmoveflushdbsetzremrangebyranksaddlpushlindexzscorestrlenunwatchhsetlpushxdiscard debugSegfault srandmemberpersist renderRequestreplyRedisArgencode$fRedisResult[]$fRedisResult(,)$fRedisResult[]0$fRedisResultMaybe$fRedisResultBool$fRedisResultStatus$fRedisResultDouble$fRedisResultInteger$fRedisResultByteString$fRedisResultReply$fRedisArgDouble$fRedisArgInteger$fRedisArgByteStringbase Data.MaybeJustConnrecvsend"$fExceptionConnectionLostException sortInternalzstoreInternal Data.Monoidmempty$fMonoidPubSub