úÎ!A     (c) Edward Kmett 2013-2015BSD3Edward Kmett <ekmett@gmail.com> experimental non-portableNone'(02346<=HKM +Constants required for a bucketing factor b 5Precalculate constants for a given bucketing factor b$  !"#$ %&'()*+,-      !"#$ %&'()*+,-(c) Edward Kmett 2013-2015BSD3Edward Kmett <ekmett@gmail.com> experimental non-portableNone'023468=>HKMInitialize a new counter:mempty :: HyperLogLog $(3)9HyperLogLog {runHyperLogLog = fromList [0,0,0,0,0,0,0,0]}4Please note how you specify a counter size with the $(n)c invocation. Sizes of up to 16 are valid, with 7 being a likely good minimum for decent accuracy.?Let's count a list of unique items and get the latest estimate:6size (foldr insert mempty [1..10] :: HyperLogLog $(4))DApproximate {_confidence = 0.9972, _lo = 2, _estimate = 9, _hi = 17} Note how A can be used to add new observations to the approximate counter.\Insert a value that has already been hashed by whatever user defined hash function you want.Approximate size of our set./01234567  ./01234567(c) Edward Kmett 2013-2015BSD3Edward Kmett <ekmett@gmail.com> experimental non-portableNone   8      !"#$%&'()*+,-./0123456789:hyperloglog-0.3.4Data.HyperLogLog.ConfigData.HyperLogLog.TypeData.HyperLogLog ReifiesConfig reflectConfig HasConfigconfignumBits numBuckets smallRange interRangerawFactalpha bucketMaskConfigRankhll reifyConfig calcBucketcalcRanklim32HasHyperLogLog hyperLogLog HyperLogLogrunHyperLogLoginsert insertHashsizeintersectionSizecast ReifiedConfig_numBits _numBuckets _smallRange _interRange_rawFact_alpha _bucketMaskretagReifiedConfig$fReifiesConfig*SD$fReifiesConfig*D$fReifiesConfig*ReifiedConfig$fReifiesConfigNatn$fSerialConfig$fBinaryConfig$fSerializeConfig$fHasConfigConfig _HyperLogLogsipKeysiphash$fMonoidHyperLogLog$fSemigroupHyperLogLog$fHasConfigHyperLogLog$fHasHyperLogLogkHyperLogLogp$fBinaryHyperLogLog$fSerialHyperLogLog$fSerializeHyperLogLog