pbkdf 1.0.0.0 → 1.1.0.0
raw patch · 22 files changed
+141/−29 lines, 22 filesbinary-addedPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
- Crypto.PBKDF.Core: pbkdf1_ :: PBKDF -> ByteString
- Crypto.PBKDF.Core: pbkdf2_ :: PBKDF -> ByteString
+ Crypto.PBKDF.Core: pbkdf1 :: PBKDF -> ByteString
+ Crypto.PBKDF.Core: pbkdf2 :: PBKDF -> ByteString
Files
- Crypto/PBKDF.hs +32/−18
- Crypto/PBKDF/Core.hs +8/−9
- dist/build/Crypto/PBKDF.hi binary
- dist/build/Crypto/PBKDF.o binary
- dist/build/Crypto/PBKDF/Core.hi binary
- dist/build/Crypto/PBKDF/Core.o binary
- dist/build/HSpbkdf-1.0.0.1.o binary
- dist/build/autogen/Paths_pbkdf.hs +34/−0
- dist/build/autogen/cabal_macros.h +51/−0
- dist/build/libHSpbkdf-1.0.0.1.a binary
- dist/build/rfc-6070/rfc-6070 too large to diff
- dist/build/rfc-6070/rfc-6070-tmp/Crypto/PBKDF.hi binary
- dist/build/rfc-6070/rfc-6070-tmp/Crypto/PBKDF.o binary
- dist/build/rfc-6070/rfc-6070-tmp/Crypto/PBKDF/Core.hi binary
- dist/build/rfc-6070/rfc-6070-tmp/Crypto/PBKDF/Core.o binary
- dist/build/rfc-6070/rfc-6070-tmp/Main.hi binary
- dist/build/rfc-6070/rfc-6070-tmp/Main.o binary
- dist/package.conf.inplace +2/−0
- dist/setup-config +2/−0
- dist/test/pbkdf-1.1.0.0-rfc-6070.log +9/−0
- dist/test/pbkdf-1.1.0.0.log +1/−0
- pbkdf.cabal +2/−2
Crypto/PBKDF.hs view
@@ -2,9 +2,25 @@ {-# LANGUAGE RecordWildCards #-} module Crypto.PBKDF - ( sha1PBKDF1+ ( + + -- + -- * Password Based Key Derivation Functions+ --+ -- $summary++ -- + -- * SHA-based PBKDF1 functions+ --++ sha1PBKDF1 , sha256PBKDF1 , sha512PBKDF1++ --+ -- * SHA-based PBKDF2 functions+ --+ , sha1PBKDF2 , sha256PBKDF2 , sha512PBKDF2@@ -14,29 +30,27 @@ import Text.Bytedump --- | Password Based Key Derivation Functions:--- This module provides stock implementations of the PBKDF functions from--- RFC-2898 based on the SHA-1, SHA-256 and SHA-256 hash functions. Each--- function takes the password and salt as a string and returns a hex--- string. To work with ByteStrings and provide your own hash and--- psuedo-random use the Crypto.PBKDF.Core that are used to implement--- these functions.+-- $summary+--+-- This module provides stock implementations of the PBKDF functions from+-- RFC-2898 (<http://www.ietf.org/rfc/rfc2898.txt>), based on the SHA-1,+-- SHA-256 and SHA-256 hash functions. Each function takes the password and+-- salt as a string and returns a hex string. To work with ByteStrings+-- and provide your own hash function use the 'Crypto.PBKDF.Core.pbkdf'+-- and 'Crypto.PBKDF.Core.pbkdf' functions on which these functions are+-- based. --- | SHA-based PBKDF1 functions- sha1PBKDF1, sha256PBKDF1, sha512PBKDF1 :: String -- ^ the password (will be encoded with UTF-8) -> String -- ^ the salt (will be encoded with UTF-8) -> Int -- ^ the iteration count -> String -- ^ the result key as a hex string-sha1PBKDF1 pw_s na_s c = dumpRawBS $ pbkdf1_ $ sha1PBKDF pw_s na_s c 0-sha256PBKDF1 pw_s na_s c = dumpRawBS $ pbkdf1_ $ sha256PBKDF pw_s na_s c 0-sha512PBKDF1 pw_s na_s c = dumpRawBS $ pbkdf1_ $ sha512PBKDF pw_s na_s c 0+sha1PBKDF1 pw_s na_s c = dumpRawBS $ pbkdf1 $ sha1PBKDF pw_s na_s c 0+sha256PBKDF1 pw_s na_s c = dumpRawBS $ pbkdf1 $ sha256PBKDF pw_s na_s c 0+sha512PBKDF1 pw_s na_s c = dumpRawBS $ pbkdf1 $ sha512PBKDF pw_s na_s c 0 --- | SHA-based PBKDF2 functions- sha1PBKDF2, sha256PBKDF2, sha512PBKDF2 :: String -- ^ the password (will be encoded with UTF-8) -> String -- ^ the salt (will be encoded with UTF-8)@@ -44,6 +58,6 @@ -> Int -- ^ the length of the key to be generated (in octets) -> String -- ^ the result key as a hex string -sha1PBKDF2 pw_s na_s c dkLen = dumpRawBS $ pbkdf2_ $ sha1PBKDF pw_s na_s c dkLen-sha256PBKDF2 pw_s na_s c dkLen = dumpRawBS $ pbkdf2_ $ sha256PBKDF pw_s na_s c dkLen-sha512PBKDF2 pw_s na_s c dkLen = dumpRawBS $ pbkdf2_ $ sha512PBKDF pw_s na_s c dkLen+sha1PBKDF2 pw_s na_s c dkLen = dumpRawBS $ pbkdf2 $ sha1PBKDF pw_s na_s c dkLen+sha256PBKDF2 pw_s na_s c dkLen = dumpRawBS $ pbkdf2 $ sha256PBKDF pw_s na_s c dkLen+sha512PBKDF2 pw_s na_s c dkLen = dumpRawBS $ pbkdf2 $ sha512PBKDF pw_s na_s c dkLen
Crypto/PBKDF/Core.hs view
@@ -8,8 +8,8 @@ , pbkdf , PBKDF(..) , PRF(..)- , pbkdf1_- , pbkdf2_+ , pbkdf1+ , pbkdf2 ) where import qualified Data.Binary as B@@ -96,15 +96,15 @@ -- | the pbkdf1_ core function -pbkdf1_ :: PBKDF -> BS.ByteString-pbkdf1_ PBKDF{..} = iterate_n pbkdf_c prf_hash $ pbkdf_P `BS.append` pbkdf_S+pbkdf1 :: PBKDF -> BS.ByteString+pbkdf1 PBKDF{..} = iterate_n pbkdf_c prf_hash $ pbkdf_P `BS.append` pbkdf_S where PRF{..} = pbkdf_PRF -- | the pbkdf2_ core function -pbkdf2_ :: PBKDF -> BS.ByteString-pbkdf2_ PBKDF{..} = BS.take pbkdf_dkLen $ BS.concat $ map f $ zip zbs ivs+pbkdf2 :: PBKDF -> BS.ByteString+pbkdf2 PBKDF{..} = BS.take pbkdf_dkLen $ BS.concat $ map f $ zip zbs ivs where f (zb,iv) = snd $ itr zb $ pbkdf_S `BS.append` iv @@ -124,9 +124,8 @@ PRF{..} = pbkdf_PRF - ivs = [ BS.pack $ drop (length os - 4) os | bno<-bnos, let os = BLC.unpack $ B.encode bno ]- where- bnos = [1..] :: [Int]+ ivs = [ BS.pack $ drop (length os - 4) os | bno<-[1..] :: [Int], + let os = BLC.unpack $ B.encode bno ] -- iterate a function over an argument k times
+ dist/build/Crypto/PBKDF.hi view
binary file changed (absent → 4774 bytes)
+ dist/build/Crypto/PBKDF.o view
binary file changed (absent → 14168 bytes)
+ dist/build/Crypto/PBKDF/Core.hi view
binary file changed (absent → 6500 bytes)
+ dist/build/Crypto/PBKDF/Core.o view
binary file changed (absent → 35464 bytes)
+ dist/build/HSpbkdf-1.0.0.1.o view
binary file changed (absent → 40530 bytes)
+ dist/build/autogen/Paths_pbkdf.hs view
@@ -0,0 +1,34 @@+module Paths_pbkdf (+ version,+ getBinDir, getLibDir, getDataDir, getLibexecDir,+ getDataFileName+ ) where++import qualified Control.Exception as Exception+import Data.Version (Version(..))+import System.Environment (getEnv)+import Prelude++catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a+catchIO = Exception.catch+++version :: Version+version = Version {versionBranch = [1,0,0,1], versionTags = []}+bindir, libdir, datadir, libexecdir :: FilePath++bindir = "/home/chris/.cabal/bin"+libdir = "/home/chris/.hubrc/heap/196/pbkdf-1.0.0.1/ghc-7.6.3"+datadir = "/home/chris/.cabal/share/pbkdf-1.0.0.1"+libexecdir = "/home/chris/.cabal/libexec"++getBinDir, getLibDir, getDataDir, getLibexecDir :: IO FilePath+getBinDir = catchIO (getEnv "pbkdf_bindir") (\_ -> return bindir)+getLibDir = catchIO (getEnv "pbkdf_libdir") (\_ -> return libdir)+getDataDir = catchIO (getEnv "pbkdf_datadir") (\_ -> return datadir)+getLibexecDir = catchIO (getEnv "pbkdf_libexecdir") (\_ -> return libexecdir)++getDataFileName :: FilePath -> IO FilePath+getDataFileName name = do+ dir <- getDataDir+ return (dir ++ "/" ++ name)
+ dist/build/autogen/cabal_macros.h view
@@ -0,0 +1,51 @@+/* DO NOT EDIT: This file is automatically generated by Cabal */++/* package base-4.6.0.1 */+#define VERSION_base "4.6.0.1"+#define MIN_VERSION_base(major1,major2,minor) (\+ (major1) < 4 || \+ (major1) == 4 && (major2) < 6 || \+ (major1) == 4 && (major2) == 6 && (minor) <= 0)++/* package binary-0.7.1.0 */+#define VERSION_binary "0.7.1.0"+#define MIN_VERSION_binary(major1,major2,minor) (\+ (major1) < 0 || \+ (major1) == 0 && (major2) < 7 || \+ (major1) == 0 && (major2) == 7 && (minor) <= 1)++/* package byteable-0.1.1 */+#define VERSION_byteable "0.1.1"+#define MIN_VERSION_byteable(major1,major2,minor) (\+ (major1) < 0 || \+ (major1) == 0 && (major2) < 1 || \+ (major1) == 0 && (major2) == 1 && (minor) <= 1)++/* package bytedump-1.0 */+#define VERSION_bytedump "1.0"+#define MIN_VERSION_bytedump(major1,major2,minor) (\+ (major1) < 1 || \+ (major1) == 1 && (major2) < 0 || \+ (major1) == 1 && (major2) == 0 && (minor) <= 0)++/* package bytestring-0.10.2.0 */+#define VERSION_bytestring "0.10.2.0"+#define MIN_VERSION_bytestring(major1,major2,minor) (\+ (major1) < 0 || \+ (major1) == 0 && (major2) < 10 || \+ (major1) == 0 && (major2) == 10 && (minor) <= 2)++/* package cryptohash-0.10.0 */+#define VERSION_cryptohash "0.10.0"+#define MIN_VERSION_cryptohash(major1,major2,minor) (\+ (major1) < 0 || \+ (major1) == 0 && (major2) < 10 || \+ (major1) == 0 && (major2) == 10 && (minor) <= 0)++/* package utf8-string-0.3.7 */+#define VERSION_utf8_string "0.3.7"+#define MIN_VERSION_utf8_string(major1,major2,minor) (\+ (major1) < 0 || \+ (major1) == 0 && (major2) < 3 || \+ (major1) == 0 && (major2) == 3 && (minor) <= 7)+
+ dist/build/libHSpbkdf-1.0.0.1.a view
binary file changed (absent → 54684 bytes)
+ dist/build/rfc-6070/rfc-6070 view
file too large to diff
+ dist/build/rfc-6070/rfc-6070-tmp/Crypto/PBKDF.hi view
binary file changed (absent → 4765 bytes)
+ dist/build/rfc-6070/rfc-6070-tmp/Crypto/PBKDF.o view
binary file changed (absent → 13336 bytes)
+ dist/build/rfc-6070/rfc-6070-tmp/Crypto/PBKDF/Core.hi view
binary file changed (absent → 6491 bytes)
+ dist/build/rfc-6070/rfc-6070-tmp/Crypto/PBKDF/Core.o view
binary file changed (absent → 34192 bytes)
+ dist/build/rfc-6070/rfc-6070-tmp/Main.hi view
binary file changed (absent → 5723 bytes)
+ dist/build/rfc-6070/rfc-6070-tmp/Main.o view
binary file changed (absent → 22976 bytes)
+ dist/package.conf.inplace view
@@ -0,0 +1,2 @@+[InstalledPackageInfo {installedPackageId = InstalledPackageId "pbkdf-1.0.0.1-inplace", sourcePackageId = PackageIdentifier {pkgName = PackageName "pbkdf", pkgVersion = Version {versionBranch = [1,0,0,1], versionTags = []}}, license = BSD3, copyright = "(C) Chris Dornan", maintainer = "chris.dornan@irisconnect.com", author = "Chris Dornan", stability = "", homepage = "https://github.com/cdornan/pbkdf", pkgUrl = "", synopsis = "Haskell implementation of the PBKDF functions from RFC-2898.", description = "The Password Based Key Derivation Functions described in RFC-2898 with a test suite to verify that it works with the test vectors published in RFC6070.", category = "Cryptography", exposed = True, exposedModules = ["Crypto.PBKDF","Crypto.PBKDF.Core"], hiddenModules = [], trusted = False, importDirs = ["/home/chris/pbkdf/dist/build"], libraryDirs = ["/home/chris/pbkdf/dist/build"], hsLibraries = ["HSpbkdf-1.0.0.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "binary-0.7.1.0-31896ab0a137305f290099de575d2a3d",InstalledPackageId "byteable-0.1.1-30374cf98c5562bc19e9be0ac073ca12",InstalledPackageId "bytedump-1.0-dfecb65989c3eab17044868ad38ffd64",InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d",InstalledPackageId "cryptohash-0.10.0-1344a0899c3b2c26c2165dc4f0e78f3a",InstalledPackageId "utf8-string-0.3.7-6b1dbe2244c34f14db95d88796c85902"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/chris/pbkdf/dist/doc/html/pbkdf/pbkdf.haddock"], haddockHTMLs = ["/home/chris/pbkdf/dist/doc/html/pbkdf"]}+]
+ dist/setup-config view
@@ -0,0 +1,2 @@+Saved package config for pbkdf-1.1.0.0 written by Cabal-1.16.0 using ghc-7.6+LocalBuildInfo {configFlags = ConfigFlags {configPrograms = [], configProgramPaths = [("hsc2hs","hsc2hs")], configProgramArgs = [], configHcFlavor = Flag GHC, configHcPath = NoFlag, configHcPkg = NoFlag, configVanillaLib = Flag True, configProfLib = Flag False, configSharedLib = Flag False, configDynExe = Flag False, configProfExe = Flag False, configConfigureArgs = [], configOptimization = Flag NormalOptimisation, configProgPrefix = Flag "", configProgSuffix = Flag "", configInstallDirs = InstallDirs {prefix = Flag "/home/chris/.cabal", bindir = NoFlag, libdir = Flag "/home/chris/.hubrc/heap/196", libsubdir = NoFlag, dynlibdir = NoFlag, libexecdir = NoFlag, progdir = NoFlag, includedir = NoFlag, datadir = NoFlag, datasubdir = NoFlag, docdir = NoFlag, mandir = NoFlag, htmldir = NoFlag, haddockdir = NoFlag}, configScratchDir = NoFlag, configExtraLibDirs = [], configExtraIncludeDirs = [], configDistPref = Flag "dist", configVerbosity = Flag Normal, configUserInstall = Flag True, configPackageDBs = [Just (SpecificPackageDB "/home/chris/.hubrc/lib/pbkdf/package.config")], configGHCiLib = Flag True, configSplitObjs = Flag False, configStripExes = Flag True, configConstraints = [Dependency (PackageName "utf8-string") (ThisVersion (Version {versionBranch = [0,3,7], versionTags = []})),Dependency (PackageName "cryptohash") (ThisVersion (Version {versionBranch = [0,10,0], versionTags = []})),Dependency (PackageName "bytestring") (ThisVersion (Version {versionBranch = [0,10,2,0], versionTags = []})),Dependency (PackageName "bytedump") (ThisVersion (Version {versionBranch = [1,0], versionTags = []})),Dependency (PackageName "byteable") (ThisVersion (Version {versionBranch = [0,1,1], versionTags = []})),Dependency (PackageName "binary") (ThisVersion (Version {versionBranch = [0,7,1,0], versionTags = []})),Dependency (PackageName "base") (ThisVersion (Version {versionBranch = [4,6,0,1], versionTags = []}))], configConfigurationsFlags = [], configTests = Flag True, configBenchmarks = Flag False, configLibCoverage = Flag False}, extraConfigArgs = [], installDirTemplates = InstallDirs {prefix = "/home/chris/.cabal", bindir = "$prefix/bin", libdir = "/home/chris/.hubrc/heap/196", libsubdir = "$pkgid/$compiler", dynlibdir = "$libdir", libexecdir = "$prefix/libexec", progdir = "$libdir/hugs/programs", includedir = "$libdir/$libsubdir/include", datadir = "$prefix/share", datasubdir = "$pkgid", docdir = "$datadir/doc/$pkgid", mandir = "$datadir/man", htmldir = "$docdir/html", haddockdir = "$htmldir"}, compiler = Compiler {compilerId = CompilerId GHC (Version {versionBranch = [7,6,3], versionTags = []}), compilerLanguages = [(Haskell98,"-XHaskell98"),(Haskell2010,"-XHaskell2010")], compilerExtensions = [(UnknownExtension "Haskell98","-XHaskell98"),(UnknownExtension "Haskell2010","-XHaskell2010"),(UnknownExtension "Unsafe","-XUnsafe"),(EnableExtension Trustworthy,"-XTrustworthy"),(EnableExtension Safe,"-XSafe"),(EnableExtension CPP,"-XCPP"),(DisableExtension CPP,"-XNoCPP"),(EnableExtension PostfixOperators,"-XPostfixOperators"),(DisableExtension PostfixOperators,"-XNoPostfixOperators"),(EnableExtension TupleSections,"-XTupleSections"),(DisableExtension TupleSections,"-XNoTupleSections"),(EnableExtension PatternGuards,"-XPatternGuards"),(DisableExtension PatternGuards,"-XNoPatternGuards"),(EnableExtension UnicodeSyntax,"-XUnicodeSyntax"),(DisableExtension UnicodeSyntax,"-XNoUnicodeSyntax"),(EnableExtension MagicHash,"-XMagicHash"),(DisableExtension MagicHash,"-XNoMagicHash"),(EnableExtension PolymorphicComponents,"-XPolymorphicComponents"),(DisableExtension PolymorphicComponents,"-XNoPolymorphicComponents"),(EnableExtension ExistentialQuantification,"-XExistentialQuantification"),(DisableExtension ExistentialQuantification,"-XNoExistentialQuantification"),(EnableExtension KindSignatures,"-XKindSignatures"),(DisableExtension KindSignatures,"-XNoKindSignatures"),(EnableExtension EmptyDataDecls,"-XEmptyDataDecls"),(DisableExtension EmptyDataDecls,"-XNoEmptyDataDecls"),(EnableExtension ParallelListComp,"-XParallelListComp"),(DisableExtension ParallelListComp,"-XNoParallelListComp"),(EnableExtension TransformListComp,"-XTransformListComp"),(DisableExtension TransformListComp,"-XNoTransformListComp"),(UnknownExtension "MonadComprehensions","-XMonadComprehensions"),(UnknownExtension "NoMonadComprehensions","-XNoMonadComprehensions"),(EnableExtension ForeignFunctionInterface,"-XForeignFunctionInterface"),(DisableExtension ForeignFunctionInterface,"-XNoForeignFunctionInterface"),(EnableExtension UnliftedFFITypes,"-XUnliftedFFITypes"),(DisableExtension UnliftedFFITypes,"-XNoUnliftedFFITypes"),(UnknownExtension "InterruptibleFFI","-XInterruptibleFFI"),(UnknownExtension "NoInterruptibleFFI","-XNoInterruptibleFFI"),(UnknownExtension "CApiFFI","-XCApiFFI"),(UnknownExtension "NoCApiFFI","-XNoCApiFFI"),(EnableExtension GHCForeignImportPrim,"-XGHCForeignImportPrim"),(DisableExtension GHCForeignImportPrim,"-XNoGHCForeignImportPrim"),(EnableExtension LiberalTypeSynonyms,"-XLiberalTypeSynonyms"),(DisableExtension LiberalTypeSynonyms,"-XNoLiberalTypeSynonyms"),(EnableExtension Rank2Types,"-XRank2Types"),(DisableExtension Rank2Types,"-XNoRank2Types"),(EnableExtension RankNTypes,"-XRankNTypes"),(DisableExtension RankNTypes,"-XNoRankNTypes"),(EnableExtension ImpredicativeTypes,"-XImpredicativeTypes"),(DisableExtension ImpredicativeTypes,"-XNoImpredicativeTypes"),(EnableExtension TypeOperators,"-XTypeOperators"),(DisableExtension TypeOperators,"-XNoTypeOperators"),(UnknownExtension "ExplicitNamespaces","-XExplicitNamespaces"),(UnknownExtension "NoExplicitNamespaces","-XNoExplicitNamespaces"),(EnableExtension RecursiveDo,"-XRecursiveDo"),(DisableExtension RecursiveDo,"-XNoRecursiveDo"),(EnableExtension DoRec,"-XDoRec"),(DisableExtension DoRec,"-XNoDoRec"),(EnableExtension Arrows,"-XArrows"),(DisableExtension Arrows,"-XNoArrows"),(UnknownExtension "ParallelArrays","-XParallelArrays"),(UnknownExtension "NoParallelArrays","-XNoParallelArrays"),(EnableExtension TemplateHaskell,"-XTemplateHaskell"),(DisableExtension TemplateHaskell,"-XNoTemplateHaskell"),(EnableExtension QuasiQuotes,"-XQuasiQuotes"),(DisableExtension QuasiQuotes,"-XNoQuasiQuotes"),(EnableExtension ImplicitPrelude,"-XImplicitPrelude"),(DisableExtension ImplicitPrelude,"-XNoImplicitPrelude"),(EnableExtension RecordWildCards,"-XRecordWildCards"),(DisableExtension RecordWildCards,"-XNoRecordWildCards"),(EnableExtension NamedFieldPuns,"-XNamedFieldPuns"),(DisableExtension NamedFieldPuns,"-XNoNamedFieldPuns"),(EnableExtension RecordPuns,"-XRecordPuns"),(DisableExtension RecordPuns,"-XNoRecordPuns"),(EnableExtension DisambiguateRecordFields,"-XDisambiguateRecordFields"),(DisableExtension DisambiguateRecordFields,"-XNoDisambiguateRecordFields"),(EnableExtension OverloadedStrings,"-XOverloadedStrings"),(DisableExtension OverloadedStrings,"-XNoOverloadedStrings"),(EnableExtension GADTs,"-XGADTs"),(DisableExtension GADTs,"-XNoGADTs"),(EnableExtension GADTSyntax,"-XGADTSyntax"),(DisableExtension GADTSyntax,"-XNoGADTSyntax"),(EnableExtension ViewPatterns,"-XViewPatterns"),(DisableExtension ViewPatterns,"-XNoViewPatterns"),(EnableExtension TypeFamilies,"-XTypeFamilies"),(DisableExtension TypeFamilies,"-XNoTypeFamilies"),(EnableExtension BangPatterns,"-XBangPatterns"),(DisableExtension BangPatterns,"-XNoBangPatterns"),(EnableExtension MonomorphismRestriction,"-XMonomorphismRestriction"),(DisableExtension MonomorphismRestriction,"-XNoMonomorphismRestriction"),(EnableExtension NPlusKPatterns,"-XNPlusKPatterns"),(DisableExtension NPlusKPatterns,"-XNoNPlusKPatterns"),(EnableExtension DoAndIfThenElse,"-XDoAndIfThenElse"),(DisableExtension DoAndIfThenElse,"-XNoDoAndIfThenElse"),(EnableExtension RebindableSyntax,"-XRebindableSyntax"),(DisableExtension RebindableSyntax,"-XNoRebindableSyntax"),(EnableExtension ConstraintKinds,"-XConstraintKinds"),(DisableExtension ConstraintKinds,"-XNoConstraintKinds"),(UnknownExtension "PolyKinds","-XPolyKinds"),(UnknownExtension "NoPolyKinds","-XNoPolyKinds"),(UnknownExtension "DataKinds","-XDataKinds"),(UnknownExtension "NoDataKinds","-XNoDataKinds"),(UnknownExtension "InstanceSigs","-XInstanceSigs"),(UnknownExtension "NoInstanceSigs","-XNoInstanceSigs"),(EnableExtension MonoPatBinds,"-XMonoPatBinds"),(DisableExtension MonoPatBinds,"-XNoMonoPatBinds"),(EnableExtension ExplicitForAll,"-XExplicitForAll"),(DisableExtension ExplicitForAll,"-XNoExplicitForAll"),(UnknownExtension "AlternativeLayoutRule","-XAlternativeLayoutRule"),(UnknownExtension "NoAlternativeLayoutRule","-XNoAlternativeLayoutRule"),(UnknownExtension "AlternativeLayoutRuleTransitional","-XAlternativeLayoutRuleTransitional"),(UnknownExtension "NoAlternativeLayoutRuleTransitional","-XNoAlternativeLayoutRuleTransitional"),(EnableExtension DatatypeContexts,"-XDatatypeContexts"),(DisableExtension DatatypeContexts,"-XNoDatatypeContexts"),(EnableExtension NondecreasingIndentation,"-XNondecreasingIndentation"),(DisableExtension NondecreasingIndentation,"-XNoNondecreasingIndentation"),(UnknownExtension "RelaxedLayout","-XRelaxedLayout"),(UnknownExtension "NoRelaxedLayout","-XNoRelaxedLayout"),(UnknownExtension "TraditionalRecordSyntax","-XTraditionalRecordSyntax"),(UnknownExtension "NoTraditionalRecordSyntax","-XNoTraditionalRecordSyntax"),(UnknownExtension "LambdaCase","-XLambdaCase"),(UnknownExtension "NoLambdaCase","-XNoLambdaCase"),(UnknownExtension "MultiWayIf","-XMultiWayIf"),(UnknownExtension "NoMultiWayIf","-XNoMultiWayIf"),(EnableExtension MonoLocalBinds,"-XMonoLocalBinds"),(DisableExtension MonoLocalBinds,"-XNoMonoLocalBinds"),(EnableExtension RelaxedPolyRec,"-XRelaxedPolyRec"),(DisableExtension RelaxedPolyRec,"-XNoRelaxedPolyRec"),(EnableExtension ExtendedDefaultRules,"-XExtendedDefaultRules"),(DisableExtension ExtendedDefaultRules,"-XNoExtendedDefaultRules"),(EnableExtension ImplicitParams,"-XImplicitParams"),(DisableExtension ImplicitParams,"-XNoImplicitParams"),(EnableExtension ScopedTypeVariables,"-XScopedTypeVariables"),(DisableExtension ScopedTypeVariables,"-XNoScopedTypeVariables"),(EnableExtension PatternSignatures,"-XPatternSignatures"),(DisableExtension PatternSignatures,"-XNoPatternSignatures"),(EnableExtension UnboxedTuples,"-XUnboxedTuples"),(DisableExtension UnboxedTuples,"-XNoUnboxedTuples"),(EnableExtension StandaloneDeriving,"-XStandaloneDeriving"),(DisableExtension StandaloneDeriving,"-XNoStandaloneDeriving"),(EnableExtension DeriveDataTypeable,"-XDeriveDataTypeable"),(DisableExtension DeriveDataTypeable,"-XNoDeriveDataTypeable"),(EnableExtension DeriveFunctor,"-XDeriveFunctor"),(DisableExtension DeriveFunctor,"-XNoDeriveFunctor"),(EnableExtension DeriveTraversable,"-XDeriveTraversable"),(DisableExtension DeriveTraversable,"-XNoDeriveTraversable"),(EnableExtension DeriveFoldable,"-XDeriveFoldable"),(DisableExtension DeriveFoldable,"-XNoDeriveFoldable"),(UnknownExtension "DeriveGeneric","-XDeriveGeneric"),(UnknownExtension "NoDeriveGeneric","-XNoDeriveGeneric"),(UnknownExtension "DefaultSignatures","-XDefaultSignatures"),(UnknownExtension "NoDefaultSignatures","-XNoDefaultSignatures"),(EnableExtension TypeSynonymInstances,"-XTypeSynonymInstances"),(DisableExtension TypeSynonymInstances,"-XNoTypeSynonymInstances"),(EnableExtension FlexibleContexts,"-XFlexibleContexts"),(DisableExtension FlexibleContexts,"-XNoFlexibleContexts"),(EnableExtension FlexibleInstances,"-XFlexibleInstances"),(DisableExtension FlexibleInstances,"-XNoFlexibleInstances"),(EnableExtension ConstrainedClassMethods,"-XConstrainedClassMethods"),(DisableExtension ConstrainedClassMethods,"-XNoConstrainedClassMethods"),(EnableExtension MultiParamTypeClasses,"-XMultiParamTypeClasses"),(DisableExtension MultiParamTypeClasses,"-XNoMultiParamTypeClasses"),(EnableExtension FunctionalDependencies,"-XFunctionalDependencies"),(DisableExtension FunctionalDependencies,"-XNoFunctionalDependencies"),(EnableExtension GeneralizedNewtypeDeriving,"-XGeneralizedNewtypeDeriving"),(DisableExtension GeneralizedNewtypeDeriving,"-XNoGeneralizedNewtypeDeriving"),(EnableExtension OverlappingInstances,"-XOverlappingInstances"),(DisableExtension OverlappingInstances,"-XNoOverlappingInstances"),(EnableExtension UndecidableInstances,"-XUndecidableInstances"),(DisableExtension UndecidableInstances,"-XNoUndecidableInstances"),(EnableExtension IncoherentInstances,"-XIncoherentInstances"),(DisableExtension IncoherentInstances,"-XNoIncoherentInstances"),(EnableExtension PackageImports,"-XPackageImports"),(DisableExtension PackageImports,"-XNoPackageImports")]}, buildDir = "dist/build", scratchDir = "dist/scratch", libraryConfig = Just (ComponentLocalBuildInfo {componentPackageDeps = [(InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",PackageIdentifier {pkgName = PackageName "base", pkgVersion = Version {versionBranch = [4,6,0,1], versionTags = []}}),(InstalledPackageId "binary-0.7.1.0-31896ab0a137305f290099de575d2a3d",PackageIdentifier {pkgName = PackageName "binary", pkgVersion = Version {versionBranch = [0,7,1,0], versionTags = []}}),(InstalledPackageId "byteable-0.1.1-30374cf98c5562bc19e9be0ac073ca12",PackageIdentifier {pkgName = PackageName "byteable", pkgVersion = Version {versionBranch = [0,1,1], versionTags = []}}),(InstalledPackageId "bytedump-1.0-dfecb65989c3eab17044868ad38ffd64",PackageIdentifier {pkgName = PackageName "bytedump", pkgVersion = Version {versionBranch = [1,0], versionTags = []}}),(InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d",PackageIdentifier {pkgName = PackageName "bytestring", pkgVersion = Version {versionBranch = [0,10,2,0], versionTags = []}}),(InstalledPackageId "cryptohash-0.10.0-1344a0899c3b2c26c2165dc4f0e78f3a",PackageIdentifier {pkgName = PackageName "cryptohash", pkgVersion = Version {versionBranch = [0,10,0], versionTags = []}}),(InstalledPackageId "utf8-string-0.3.7-6b1dbe2244c34f14db95d88796c85902",PackageIdentifier {pkgName = PackageName "utf8-string", pkgVersion = Version {versionBranch = [0,3,7], versionTags = []}})]}), executableConfigs = [], compBuildOrder = [CLibName,CTestName "rfc-6070"], testSuiteConfigs = [("rfc-6070",ComponentLocalBuildInfo {componentPackageDeps = [(InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",PackageIdentifier {pkgName = PackageName "base", pkgVersion = Version {versionBranch = [4,6,0,1], versionTags = []}}),(InstalledPackageId "binary-0.7.1.0-31896ab0a137305f290099de575d2a3d",PackageIdentifier {pkgName = PackageName "binary", pkgVersion = Version {versionBranch = [0,7,1,0], versionTags = []}}),(InstalledPackageId "byteable-0.1.1-30374cf98c5562bc19e9be0ac073ca12",PackageIdentifier {pkgName = PackageName "byteable", pkgVersion = Version {versionBranch = [0,1,1], versionTags = []}}),(InstalledPackageId "bytedump-1.0-dfecb65989c3eab17044868ad38ffd64",PackageIdentifier {pkgName = PackageName "bytedump", pkgVersion = Version {versionBranch = [1,0], versionTags = []}}),(InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d",PackageIdentifier {pkgName = PackageName "bytestring", pkgVersion = Version {versionBranch = [0,10,2,0], versionTags = []}}),(InstalledPackageId "cryptohash-0.10.0-1344a0899c3b2c26c2165dc4f0e78f3a",PackageIdentifier {pkgName = PackageName "cryptohash", pkgVersion = Version {versionBranch = [0,10,0], versionTags = []}}),(InstalledPackageId "utf8-string-0.3.7-6b1dbe2244c34f14db95d88796c85902",PackageIdentifier {pkgName = PackageName "utf8-string", pkgVersion = Version {versionBranch = [0,3,7], versionTags = []}}),(InstalledPackageId "pbkdf-1.1.0.0-inplace",PackageIdentifier {pkgName = PackageName "pbkdf", pkgVersion = Version {versionBranch = [1,1,0,0], versionTags = []}})]})], benchmarkConfigs = [], installedPkgs = PackageIndex (fromList [(InstalledPackageId "array-0.4.0.1-3b78425c10ff2dad7acf7e8c8ae014c3",InstalledPackageInfo {installedPackageId = InstalledPackageId "array-0.4.0.1-3b78425c10ff2dad7acf7e8c8ae014c3", sourcePackageId = PackageIdentifier {pkgName = PackageName "array", pkgVersion = Version {versionBranch = [0,4,0,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", synopsis = "Mutable and immutable arrays", description = "This package defines the classes @IArray@ of immutable arrays and\n@MArray@ of arrays mutable within appropriate monads, as well as\nsome instances of these classes.", category = "Data Structures", exposed = True, exposedModules = [ModuleName ["Data","Array","Base"],ModuleName ["Data","Array","IArray"],ModuleName ["Data","Array","IO"],ModuleName ["Data","Array","IO","Safe"],ModuleName ["Data","Array","IO","Internals"],ModuleName ["Data","Array","MArray"],ModuleName ["Data","Array","MArray","Safe"],ModuleName ["Data","Array","ST"],ModuleName ["Data","Array","ST","Safe"],ModuleName ["Data","Array","Storable"],ModuleName ["Data","Array","Storable","Safe"],ModuleName ["Data","Array","Storable","Internals"],ModuleName ["Data","Array","Unboxed"],ModuleName ["Data","Array","Unsafe"],ModuleName ["Data","Array"]], hiddenModules = [], trusted = False, importDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/array-0.4.0.1"], libraryDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/array-0.4.0.1"], hsLibraries = ["HSarray-0.4.0.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/array-0.4.0.1/array.haddock"], haddockHTMLs = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/array-0.4.0.1"]}),(InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageInfo {installedPackageId = InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57", sourcePackageId = PackageIdentifier {pkgName = PackageName "base", pkgVersion = Version {versionBranch = [4,6,0,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", synopsis = "Basic libraries", description = "This package contains the Prelude and its support libraries,\nand a large collection of useful libraries ranging from data\nstructures to parsing combinators and debugging utilities.", category = "", exposed = True, exposedModules = [ModuleName ["Foreign","Concurrent"],ModuleName ["GHC","Arr"],ModuleName ["GHC","Base"],ModuleName ["GHC","Char"],ModuleName ["GHC","Conc"],ModuleName ["GHC","Conc","IO"],ModuleName ["GHC","Conc","Signal"],ModuleName ["GHC","Conc","Sync"],ModuleName ["GHC","ConsoleHandler"],ModuleName ["GHC","Constants"],ModuleName ["GHC","Desugar"],ModuleName ["GHC","Enum"],ModuleName ["GHC","Environment"],ModuleName ["GHC","Err"],ModuleName ["GHC","Exception"],ModuleName ["GHC","Exts"],ModuleName ["GHC","Fingerprint"],ModuleName ["GHC","Fingerprint","Type"],ModuleName ["GHC","Float"],ModuleName ["GHC","Float","ConversionUtils"],ModuleName ["GHC","Float","RealFracMethods"],ModuleName ["GHC","Foreign"],ModuleName ["GHC","ForeignPtr"],ModuleName ["GHC","Generics"],ModuleName ["GHC","GHCi"],ModuleName ["GHC","Handle"],ModuleName ["GHC","IO"],ModuleName ["GHC","IO","Buffer"],ModuleName ["GHC","IO","BufferedIO"],ModuleName ["GHC","IO","Device"],ModuleName ["GHC","IO","Encoding"],ModuleName ["GHC","IO","Encoding","CodePage"],ModuleName ["GHC","IO","Encoding","Failure"],ModuleName ["GHC","IO","Encoding","Iconv"],ModuleName ["GHC","IO","Encoding","Latin1"],ModuleName ["GHC","IO","Encoding","Types"],ModuleName ["GHC","IO","Encoding","UTF16"],ModuleName ["GHC","IO","Encoding","UTF32"],ModuleName ["GHC","IO","Encoding","UTF8"],ModuleName ["GHC","IO","Exception"],ModuleName ["GHC","IO","FD"],ModuleName ["GHC","IO","Handle"],ModuleName ["GHC","IO","Handle","FD"],ModuleName ["GHC","IO","Handle","Internals"],ModuleName ["GHC","IO","Handle","Text"],ModuleName ["GHC","IO","Handle","Types"],ModuleName ["GHC","IO","IOMode"],ModuleName ["GHC","IOArray"],ModuleName ["GHC","IOBase"],ModuleName ["GHC","IORef"],ModuleName ["GHC","IP"],ModuleName ["GHC","Int"],ModuleName ["GHC","List"],ModuleName ["GHC","MVar"],ModuleName ["GHC","Num"],ModuleName ["GHC","PArr"],ModuleName ["GHC","Pack"],ModuleName ["GHC","Ptr"],ModuleName ["GHC","Read"],ModuleName ["GHC","Real"],ModuleName ["GHC","ST"],ModuleName ["GHC","Stack"],ModuleName ["GHC","Stats"],ModuleName ["GHC","Show"],ModuleName ["GHC","Stable"],ModuleName ["GHC","Storable"],ModuleName ["GHC","STRef"],ModuleName ["GHC","TypeLits"],ModuleName ["GHC","TopHandler"],ModuleName ["GHC","Unicode"],ModuleName ["GHC","Weak"],ModuleName ["GHC","Word"],ModuleName ["System","Timeout"],ModuleName ["GHC","Event"],ModuleName ["Control","Applicative"],ModuleName ["Control","Arrow"],ModuleName ["Control","Category"],ModuleName ["Control","Concurrent"],ModuleName ["Control","Concurrent","Chan"],ModuleName ["Control","Concurrent","MVar"],ModuleName ["Control","Concurrent","QSem"],ModuleName ["Control","Concurrent","QSemN"],ModuleName ["Control","Concurrent","SampleVar"],ModuleName ["Control","Exception"],ModuleName ["Control","Exception","Base"],ModuleName ["Control","Monad"],ModuleName ["Control","Monad","Fix"],ModuleName ["Control","Monad","Instances"],ModuleName ["Control","Monad","ST"],ModuleName ["Control","Monad","ST","Safe"],ModuleName ["Control","Monad","ST","Unsafe"],ModuleName ["Control","Monad","ST","Lazy"],ModuleName ["Control","Monad","ST","Lazy","Safe"],ModuleName ["Control","Monad","ST","Lazy","Unsafe"],ModuleName ["Control","Monad","ST","Strict"],ModuleName ["Control","Monad","Zip"],ModuleName ["Data","Bits"],ModuleName ["Data","Bool"],ModuleName ["Data","Char"],ModuleName ["Data","Complex"],ModuleName ["Data","Dynamic"],ModuleName ["Data","Either"],ModuleName ["Data","Eq"],ModuleName ["Data","Data"],ModuleName ["Data","Fixed"],ModuleName ["Data","Foldable"],ModuleName ["Data","Function"],ModuleName ["Data","Functor"],ModuleName ["Data","HashTable"],ModuleName ["Data","IORef"],ModuleName ["Data","Int"],ModuleName ["Data","Ix"],ModuleName ["Data","List"],ModuleName ["Data","Maybe"],ModuleName ["Data","Monoid"],ModuleName ["Data","Ord"],ModuleName ["Data","Ratio"],ModuleName ["Data","STRef"],ModuleName ["Data","STRef","Lazy"],ModuleName ["Data","STRef","Strict"],ModuleName ["Data","String"],ModuleName ["Data","Traversable"],ModuleName ["Data","Tuple"],ModuleName ["Data","Typeable"],ModuleName ["Data","Typeable","Internal"],ModuleName ["Data","Unique"],ModuleName ["Data","Version"],ModuleName ["Data","Word"],ModuleName ["Debug","Trace"],ModuleName ["Foreign"],ModuleName ["Foreign","C"],ModuleName ["Foreign","C","Error"],ModuleName ["Foreign","C","String"],ModuleName ["Foreign","C","Types"],ModuleName ["Foreign","ForeignPtr"],ModuleName ["Foreign","ForeignPtr","Safe"],ModuleName ["Foreign","ForeignPtr","Unsafe"],ModuleName ["Foreign","Marshal"],ModuleName ["Foreign","Marshal","Alloc"],ModuleName ["Foreign","Marshal","Array"],ModuleName ["Foreign","Marshal","Error"],ModuleName ["Foreign","Marshal","Pool"],ModuleName ["Foreign","Marshal","Safe"],ModuleName ["Foreign","Marshal","Utils"],ModuleName ["Foreign","Marshal","Unsafe"],ModuleName ["Foreign","Ptr"],ModuleName ["Foreign","Safe"],ModuleName ["Foreign","StablePtr"],ModuleName ["Foreign","Storable"],ModuleName ["Numeric"],ModuleName ["Prelude"],ModuleName ["System","Console","GetOpt"],ModuleName ["System","CPUTime"],ModuleName ["System","Environment"],ModuleName ["System","Exit"],ModuleName ["System","IO"],ModuleName ["System","IO","Error"],ModuleName ["System","IO","Unsafe"],ModuleName ["System","Info"],ModuleName ["System","Mem"],ModuleName ["System","Mem","StableName"],ModuleName ["System","Mem","Weak"],ModuleName ["System","Posix","Internals"],ModuleName ["System","Posix","Types"],ModuleName ["Text","ParserCombinators","ReadP"],ModuleName ["Text","ParserCombinators","ReadPrec"],ModuleName ["Text","Printf"],ModuleName ["Text","Read"],ModuleName ["Text","Read","Lex"],ModuleName ["Text","Show"],ModuleName ["Text","Show","Functions"],ModuleName ["Unsafe","Coerce"]], hiddenModules = [ModuleName ["GHC","Event","Array"],ModuleName ["GHC","Event","Clock"],ModuleName ["GHC","Event","Control"],ModuleName ["GHC","Event","EPoll"],ModuleName ["GHC","Event","IntMap"],ModuleName ["GHC","Event","Internal"],ModuleName ["GHC","Event","KQueue"],ModuleName ["GHC","Event","Manager"],ModuleName ["GHC","Event","PSQ"],ModuleName ["GHC","Event","Poll"],ModuleName ["GHC","Event","Thread"],ModuleName ["GHC","Event","Unique"],ModuleName ["Control","Monad","ST","Imp"],ModuleName ["Control","Monad","ST","Lazy","Imp"],ModuleName ["Foreign","ForeignPtr","Imp"],ModuleName ["System","Environment","ExecutablePath"]], trusted = False, importDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/base-4.6.0.1"], libraryDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/base-4.6.0.1"], hsLibraries = ["HSbase-4.6.0.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/base-4.6.0.1/include"], includes = ["HsBase.h"], depends = [InstalledPackageId "ghc-prim-0.3.0.0-d5221a8c8a269b66ab9a07bdc23317dd",InstalledPackageId "integer-gmp-0.5.0.0-2f15426f5b53fe4c6490832f9b20d8d7",InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/base-4.6.0.1/base.haddock"], haddockHTMLs = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/base-4.6.0.1"]}),(InstalledPackageId "binary-0.7.1.0-31896ab0a137305f290099de575d2a3d",InstalledPackageInfo {installedPackageId = InstalledPackageId "binary-0.7.1.0-31896ab0a137305f290099de575d2a3d", sourcePackageId = PackageIdentifier {pkgName = PackageName "binary", pkgVersion = Version {versionBranch = [0,7,1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "Lennart Kolmodin, Don Stewart <dons00@gmail.com>", author = "Lennart Kolmodin <kolmodin@gmail.com>", stability = "provisional", homepage = "https://github.com/kolmodin/binary", pkgUrl = "", synopsis = "Binary serialisation for Haskell values using lazy ByteStrings", description = "Efficient, pure binary serialisation using lazy ByteStrings.\nHaskell values may be encoded to and from binary formats,\nwritten to disk as binary, or sent over the network.\nThe format used can be automatically generated, or\nyou can choose to implement a custom format if needed.\nSerialisation speeds of over 1 G\\/sec have been observed,\nso this library should be suitable for high performance\nscenarios.", category = "Data, Parsing", exposed = True, exposedModules = [ModuleName ["Data","Binary"],ModuleName ["Data","Binary","Put"],ModuleName ["Data","Binary","Get"],ModuleName ["Data","Binary","Get","Internal"],ModuleName ["Data","Binary","Builder"],ModuleName ["Data","Binary","Builder","Internal"]], hiddenModules = [ModuleName ["Data","Binary","Generic"],ModuleName ["Data","Binary","Builder","Base"],ModuleName ["Data","Binary","Class"]], trusted = False, importDirs = ["/home/chris/.hubrc/heap/193/binary-0.7.1.0/ghc-7.6.3"], libraryDirs = ["/home/chris/.hubrc/heap/193/binary-0.7.1.0/ghc-7.6.3"], hsLibraries = ["HSbinary-0.7.1.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.4.0.1-3b78425c10ff2dad7acf7e8c8ae014c3",InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d",InstalledPackageId "containers-0.5.0.0-ab1dae9a94cd3cc84e7b2805636ebfa2"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/chris/.cabal/share/doc/binary-0.7.1.0/html/binary.haddock"], haddockHTMLs = ["/home/chris/.cabal/share/doc/binary-0.7.1.0/html"]}),(InstalledPackageId "builtin_rts",InstalledPackageInfo {installedPackageId = InstalledPackageId "builtin_rts", sourcePackageId = PackageIdentifier {pkgName = PackageName "rts", pkgVersion = Version {versionBranch = [1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "glasgow-haskell-users@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", synopsis = "", description = "", category = "", exposed = True, exposedModules = [], hiddenModules = [], trusted = False, importDirs = [], libraryDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3"], hsLibraries = ["HSrts"], extraLibraries = ["m","rt","dl"], extraGHCiLibraries = [], includeDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/include"], includes = ["Stg.h"], depends = [], hugsOptions = [], ccOptions = [], ldOptions = ["-u","ghczmprim_GHCziTypes_Izh_static_info","-u","ghczmprim_GHCziTypes_Czh_static_info","-u","ghczmprim_GHCziTypes_Fzh_static_info","-u","ghczmprim_GHCziTypes_Dzh_static_info","-u","base_GHCziPtr_Ptr_static_info","-u","ghczmprim_GHCziTypes_Wzh_static_info","-u","base_GHCziInt_I8zh_static_info","-u","base_GHCziInt_I16zh_static_info","-u","base_GHCziInt_I32zh_static_info","-u","base_GHCziInt_I64zh_static_info","-u","base_GHCziWord_W8zh_static_info","-u","base_GHCziWord_W16zh_static_info","-u","base_GHCziWord_W32zh_static_info","-u","base_GHCziWord_W64zh_static_info","-u","base_GHCziStable_StablePtr_static_info","-u","ghczmprim_GHCziTypes_Izh_con_info","-u","ghczmprim_GHCziTypes_Czh_con_info","-u","ghczmprim_GHCziTypes_Fzh_con_info","-u","ghczmprim_GHCziTypes_Dzh_con_info","-u","base_GHCziPtr_Ptr_con_info","-u","base_GHCziPtr_FunPtr_con_info","-u","base_GHCziStable_StablePtr_con_info","-u","ghczmprim_GHCziTypes_False_closure","-u","ghczmprim_GHCziTypes_True_closure","-u","base_GHCziPack_unpackCString_closure","-u","base_GHCziIOziException_stackOverflow_closure","-u","base_GHCziIOziException_heapOverflow_closure","-u","base_ControlziExceptionziBase_nonTermination_closure","-u","base_GHCziIOziException_blockedIndefinitelyOnMVar_closure","-u","base_GHCziIOziException_blockedIndefinitelyOnSTM_closure","-u","base_ControlziExceptionziBase_nestedAtomically_closure","-u","base_GHCziWeak_runFinalizzerBatch_closure","-u","base_GHCziTopHandler_flushStdHandles_closure","-u","base_GHCziTopHandler_runIO_closure","-u","base_GHCziTopHandler_runNonIO_closure","-u","base_GHCziConcziIO_ensureIOManagerIsRunning_closure","-u","base_GHCziConcziSync_runSparks_closure","-u","base_GHCziConcziSignal_runHandlers_closure"], frameworkDirs = [], frameworks = [], haddockInterfaces = [], haddockHTMLs = []}),(InstalledPackageId "byteable-0.1.1-30374cf98c5562bc19e9be0ac073ca12",InstalledPackageInfo {installedPackageId = InstalledPackageId "byteable-0.1.1-30374cf98c5562bc19e9be0ac073ca12", sourcePackageId = PackageIdentifier {pkgName = PackageName "byteable", pkgVersion = Version {versionBranch = [0,1,1], versionTags = []}}, license = BSD3, copyright = "Vincent Hanquez <vincent@snarc.org>", maintainer = "vincent@snarc.org", author = "Vincent Hanquez <vincent@snarc.org>", stability = "experimental", homepage = "http://github.com/vincenthz/hs-byteable", pkgUrl = "", synopsis = "Type class for sequence of bytes", description = "Abstract class to manipulate sequence of bytes\n\nThe use case of this class is abstracting manipulation of\ntypes that are just wrapping a bytestring with stronger and\nmore meaniful name.\n\nUsual definition of those types are of the form: newtype MyType = MyType ByteString", category = "Data", exposed = True, exposedModules = [ModuleName ["Data","Byteable"]], hiddenModules = [], trusted = False, importDirs = ["/home/chris/.hubrc/heap/193/byteable-0.1.1/ghc-7.6.3"], libraryDirs = ["/home/chris/.hubrc/heap/193/byteable-0.1.1/ghc-7.6.3"], hsLibraries = ["HSbyteable-0.1.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/chris/.cabal/share/doc/byteable-0.1.1/html/byteable.haddock"], haddockHTMLs = ["/home/chris/.cabal/share/doc/byteable-0.1.1/html"]}),(InstalledPackageId "bytedump-1.0-dfecb65989c3eab17044868ad38ffd64",InstalledPackageInfo {installedPackageId = InstalledPackageId "bytedump-1.0-dfecb65989c3eab17044868ad38ffd64", sourcePackageId = PackageIdentifier {pkgName = PackageName "bytedump", pkgVersion = Version {versionBranch = [1,0], versionTags = []}}, license = BSD3, copyright = "Vincent Hanquez <vincent@snarc.org>", maintainer = "Vincent Hanquez <vincent@snarc.org>", author = "Vincent Hanquez <vincent@snarc.org>", stability = "", homepage = "http://github.com/vincenthz/hs-bytedump", pkgUrl = "", synopsis = "Flexible byte dump helpers for human readers.", description = "A set of helpers to dump bytes with lots of different output formats\neasy to read for humans eyes.", category = "Debug", exposed = True, exposedModules = [ModuleName ["Text","Bytedump"]], hiddenModules = [], trusted = False, importDirs = ["/home/chris/.hubrc/heap/193/bytedump-1.0/ghc-7.6.3"], libraryDirs = ["/home/chris/.hubrc/heap/193/bytedump-1.0/ghc-7.6.3"], hsLibraries = ["HSbytedump-1.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/chris/.cabal/share/doc/bytedump-1.0/html/bytedump.haddock"], haddockHTMLs = ["/home/chris/.cabal/share/doc/bytedump-1.0/html"]}),(InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d",InstalledPackageInfo {installedPackageId = InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d", sourcePackageId = PackageIdentifier {pkgName = PackageName "bytestring", pkgVersion = Version {versionBranch = [0,10,2,0], versionTags = []}}, license = BSD3, copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2012,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2011.", maintainer = "Don Stewart <dons00@gmail.com>,\nDuncan Coutts <duncan@community.haskell.org>", author = "Don Stewart,\nDuncan Coutts", stability = "", homepage = "", pkgUrl = "", synopsis = "Fast, compact, strict and lazy byte strings with a list interface", description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteStrin'g functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS", category = "Data", exposed = True, exposedModules = [ModuleName ["Data","ByteString"],ModuleName ["Data","ByteString","Char8"],ModuleName ["Data","ByteString","Unsafe"],ModuleName ["Data","ByteString","Internal"],ModuleName ["Data","ByteString","Lazy"],ModuleName ["Data","ByteString","Lazy","Char8"],ModuleName ["Data","ByteString","Lazy","Internal"],ModuleName ["Data","ByteString","Builder"],ModuleName ["Data","ByteString","Builder","Extra"],ModuleName ["Data","ByteString","Builder","Prim"],ModuleName ["Data","ByteString","Builder","Internal"],ModuleName ["Data","ByteString","Builder","Prim","Internal"],ModuleName ["Data","ByteString","Lazy","Builder"],ModuleName ["Data","ByteString","Lazy","Builder","Extras"],ModuleName ["Data","ByteString","Lazy","Builder","ASCII"]], hiddenModules = [ModuleName ["Data","ByteString","Builder","ASCII"],ModuleName ["Data","ByteString","Builder","Prim","Binary"],ModuleName ["Data","ByteString","Builder","Prim","ASCII"],ModuleName ["Data","ByteString","Builder","Prim","Internal","Floating"],ModuleName ["Data","ByteString","Builder","Prim","Internal","UncheckedShifts"],ModuleName ["Data","ByteString","Builder","Prim","Internal","Base16"]], trusted = False, importDirs = ["/home/chris/.hubrc/heap/193/bytestring-0.10.2.0/ghc-7.6.3"], libraryDirs = ["/home/chris/.hubrc/heap/193/bytestring-0.10.2.0/ghc-7.6.3"], hsLibraries = ["HSbytestring-0.10.2.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/home/chris/.hubrc/heap/193/bytestring-0.10.2.0/ghc-7.6.3/include"], includes = ["fpstring.h"], depends = [InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "deepseq-1.3.0.1-5cc4cd89bdc2e8f6db1833d95ec36926",InstalledPackageId "ghc-prim-0.3.0.0-d5221a8c8a269b66ab9a07bdc23317dd"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/chris/.cabal/share/doc/bytestring-0.10.2.0/html/bytestring.haddock"], haddockHTMLs = ["/home/chris/.cabal/share/doc/bytestring-0.10.2.0/html"]}),(InstalledPackageId "containers-0.5.0.0-ab1dae9a94cd3cc84e7b2805636ebfa2",InstalledPackageInfo {installedPackageId = InstalledPackageId "containers-0.5.0.0-ab1dae9a94cd3cc84e7b2805636ebfa2", sourcePackageId = PackageIdentifier {pkgName = PackageName "containers", pkgVersion = Version {versionBranch = [0,5,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "fox@ucw.cz", author = "", stability = "", homepage = "", pkgUrl = "", synopsis = "Assorted concrete container types", description = "This package contains efficient general-purpose implementations\nof various basic immutable container types. The declared cost of\neach operation is either worst-case or amortized, but remains\nvalid even if structures are shared.", category = "Data Structures", exposed = True, exposedModules = [ModuleName ["Data","Graph"],ModuleName ["Data","Sequence"],ModuleName ["Data","Tree"],ModuleName ["Data","IntMap"],ModuleName ["Data","IntMap","Lazy"],ModuleName ["Data","IntMap","Strict"],ModuleName ["Data","IntSet"],ModuleName ["Data","Map"],ModuleName ["Data","Map","Lazy"],ModuleName ["Data","Map","Strict"],ModuleName ["Data","Set"]], hiddenModules = [ModuleName ["Data","IntMap","Base"],ModuleName ["Data","IntSet","Base"],ModuleName ["Data","Map","Base"],ModuleName ["Data","Set","Base"],ModuleName ["Data","StrictPair"]], trusted = False, importDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/containers-0.5.0.0"], libraryDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/containers-0.5.0.0"], hsLibraries = ["HScontainers-0.5.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.4.0.1-3b78425c10ff2dad7acf7e8c8ae014c3",InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "deepseq-1.3.0.1-5cc4cd89bdc2e8f6db1833d95ec36926",InstalledPackageId "ghc-prim-0.3.0.0-d5221a8c8a269b66ab9a07bdc23317dd"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/containers-0.5.0.0/containers.haddock"], haddockHTMLs = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/containers-0.5.0.0"]}),(InstalledPackageId "cryptohash-0.10.0-1344a0899c3b2c26c2165dc4f0e78f3a",InstalledPackageInfo {installedPackageId = InstalledPackageId "cryptohash-0.10.0-1344a0899c3b2c26c2165dc4f0e78f3a", sourcePackageId = PackageIdentifier {pkgName = PackageName "cryptohash", pkgVersion = Version {versionBranch = [0,10,0], versionTags = []}}, license = BSD3, copyright = "Vincent Hanquez <vincent@snarc.org>", maintainer = "Vincent Hanquez <vincent@snarc.org>", author = "Vincent Hanquez <vincent@snarc.org>", stability = "", homepage = "http://github.com/vincenthz/hs-cryptohash", pkgUrl = "", synopsis = "collection of crypto hashes, fast, pure and practical", description = "A collection of crypto hashes, with a practical incremental and one-pass, pure APIs,\nwith performance close to the fastest implementations available in others languages.\n\nThe implementations are made in C with a haskell FFI wrapper that hide the C implementation.\n\nSimple examples using the unified API:\n\n> import Crypto.Hash\n>\n> sha1 :: ByteString -> Digest SHA1\n> sha1 = hash\n>\n> hexSha3_512 :: ByteString -> String\n> hexSha3_512 bs = show (hash bs :: Digest SHA3_512)\n\nSimple examples using the module API:\n\n> import qualified Crypto.Hash.SHA1 as SHA1\n>\n> main = putStrLn $ show $ SHA1.hash (Data.ByteString.pack [1..256])\n\n> import qualified Crypto.Hash.SHA3 as SHA3\n>\n> main = putStrLn $ show $ digest\n> where digest = SHA3.finalize ctx\n> ctx = foldl' SHA3.update iCtx (map Data.ByteString.pack [ [1,2,3], [4,5,6] ]\n> iCtx = SHA3.init 224", category = "Data, Cryptography", exposed = True, exposedModules = [ModuleName ["Crypto","Hash"],ModuleName ["Crypto","Hash","Types"],ModuleName ["Crypto","Hash","SHA1"],ModuleName ["Crypto","Hash","SHA224"],ModuleName ["Crypto","Hash","SHA256"],ModuleName ["Crypto","Hash","SHA384"],ModuleName ["Crypto","Hash","SHA512"],ModuleName ["Crypto","Hash","SHA512t"],ModuleName ["Crypto","Hash","SHA3"],ModuleName ["Crypto","Hash","MD2"],ModuleName ["Crypto","Hash","MD4"],ModuleName ["Crypto","Hash","MD5"],ModuleName ["Crypto","Hash","RIPEMD160"],ModuleName ["Crypto","Hash","Skein256"],ModuleName ["Crypto","Hash","Skein512"],ModuleName ["Crypto","Hash","Tiger"],ModuleName ["Crypto","Hash","Whirlpool"],ModuleName ["Crypto","MAC","HMAC"]], hiddenModules = [ModuleName ["Crypto","Hash","Utils"],ModuleName ["Crypto","Hash","Utils","Cpu"],ModuleName ["Crypto","Hash","Internal"]], trusted = False, importDirs = ["/home/chris/.hubrc/heap/193/cryptohash-0.10.0/ghc-7.6.3"], libraryDirs = ["/home/chris/.hubrc/heap/193/cryptohash-0.10.0/ghc-7.6.3"], hsLibraries = ["HScryptohash-0.10.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "byteable-0.1.1-30374cf98c5562bc19e9be0ac073ca12",InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d",InstalledPackageId "ghc-prim-0.3.0.0-d5221a8c8a269b66ab9a07bdc23317dd"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/chris/.cabal/share/doc/cryptohash-0.10.0/html/cryptohash.haddock"], haddockHTMLs = ["/home/chris/.cabal/share/doc/cryptohash-0.10.0/html"]}),(InstalledPackageId "deepseq-1.3.0.1-5cc4cd89bdc2e8f6db1833d95ec36926",InstalledPackageInfo {installedPackageId = InstalledPackageId "deepseq-1.3.0.1-5cc4cd89bdc2e8f6db1833d95ec36926", sourcePackageId = PackageIdentifier {pkgName = PackageName "deepseq", pkgVersion = Version {versionBranch = [1,3,0,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", synopsis = "Deep evaluation of data structures", description = "This package provides methods for fully evaluating data structures\n(\\\"deep evaluation\\\"). Deep evaluation is often used for adding\nstrictness to a program, e.g. in order to force pending exceptions,\nremove space leaks, or force lazy I/O to happen. It is also useful\nin parallel programs, to ensure pending work does not migrate to the\nwrong thread.\n\nThe primary use of this package is via the 'deepseq' function, a\n\\\"deep\\\" version of 'seq'. It is implemented on top of an 'NFData'\ntypeclass (\\\"Normal Form Data\\\", data structures with no unevaluated\ncomponents) which defines strategies for fully evaluating different\ndata types.\n", category = "Control", exposed = True, exposedModules = [ModuleName ["Control","DeepSeq"]], hiddenModules = [], trusted = False, importDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/deepseq-1.3.0.1"], libraryDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/deepseq-1.3.0.1"], hsLibraries = ["HSdeepseq-1.3.0.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.4.0.1-3b78425c10ff2dad7acf7e8c8ae014c3",InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/deepseq-1.3.0.1/deepseq.haddock"], haddockHTMLs = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/deepseq-1.3.0.1"]}),(InstalledPackageId "ghc-prim-0.3.0.0-d5221a8c8a269b66ab9a07bdc23317dd",InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-prim-0.3.0.0-d5221a8c8a269b66ab9a07bdc23317dd", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc-prim", pkgVersion = Version {versionBranch = [0,3,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", synopsis = "GHC primitives", description = "GHC primitives.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Prim"],ModuleName ["GHC","Classes"],ModuleName ["GHC","CString"],ModuleName ["GHC","Debug"],ModuleName ["GHC","Magic"],ModuleName ["GHC","PrimopWrappers"],ModuleName ["GHC","IntWord64"],ModuleName ["GHC","Tuple"],ModuleName ["GHC","Types"]], hiddenModules = [], trusted = False, importDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/ghc-prim-0.3.0.0"], libraryDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/ghc-prim-0.3.0.0"], hsLibraries = ["HSghc-prim-0.3.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/ghc-prim-0.3.0.0/ghc-prim.haddock"], haddockHTMLs = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/ghc-prim-0.3.0.0"]}),(InstalledPackageId "integer-gmp-0.5.0.0-2f15426f5b53fe4c6490832f9b20d8d7",InstalledPackageInfo {installedPackageId = InstalledPackageId "integer-gmp-0.5.0.0-2f15426f5b53fe4c6490832f9b20d8d7", sourcePackageId = PackageIdentifier {pkgName = PackageName "integer-gmp", pkgVersion = Version {versionBranch = [0,5,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", synopsis = "Integer library based on GMP", description = "This package contains an Integer library based on GMP.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Integer"],ModuleName ["GHC","Integer","GMP","Internals"],ModuleName ["GHC","Integer","GMP","Prim"],ModuleName ["GHC","Integer","Logarithms"],ModuleName ["GHC","Integer","Logarithms","Internals"]], hiddenModules = [ModuleName ["GHC","Integer","Type"]], trusted = False, importDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/integer-gmp-0.5.0.0"], libraryDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/integer-gmp-0.5.0.0"], hsLibraries = ["HSinteger-gmp-0.5.0.0"], extraLibraries = ["gmp"], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "ghc-prim-0.3.0.0-d5221a8c8a269b66ab9a07bdc23317dd"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/integer-gmp-0.5.0.0/integer-gmp.haddock"], haddockHTMLs = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/integer-gmp-0.5.0.0"]}),(InstalledPackageId "utf8-string-0.3.7-6b1dbe2244c34f14db95d88796c85902",InstalledPackageInfo {installedPackageId = InstalledPackageId "utf8-string-0.3.7-6b1dbe2244c34f14db95d88796c85902", sourcePackageId = PackageIdentifier {pkgName = PackageName "utf8-string", pkgVersion = Version {versionBranch = [0,3,7], versionTags = []}}, license = BSD3, copyright = "", maintainer = "emertens@galois.com", author = "Eric Mertens", stability = "", homepage = "http://github.com/glguy/utf8-string/", pkgUrl = "", synopsis = "Support for reading and writing UTF8 Strings", description = "A UTF8 layer for IO and Strings. The utf8-string\npackage provides operations for encoding UTF8\nstrings to Word8 lists and back, and for reading and\nwriting UTF8 without truncation.", category = "Codec", exposed = True, exposedModules = [ModuleName ["Codec","Binary","UTF8","String"],ModuleName ["Codec","Binary","UTF8","Generic"],ModuleName ["System","IO","UTF8"],ModuleName ["System","Environment","UTF8"],ModuleName ["Data","String","UTF8"],ModuleName ["Data","ByteString","UTF8"],ModuleName ["Data","ByteString","Lazy","UTF8"]], hiddenModules = [], trusted = False, importDirs = ["/home/chris/.hubrc/heap/193/utf8-string-0.3.7/ghc-7.6.3"], libraryDirs = ["/home/chris/.hubrc/heap/193/utf8-string-0.3.7/ghc-7.6.3"], hsLibraries = ["HSutf8-string-0.3.7"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/chris/.cabal/share/doc/utf8-string-0.3.7/html/utf8-string.haddock"], haddockHTMLs = ["/home/chris/.cabal/share/doc/utf8-string-0.3.7/html"]})]) (fromList [(PackageName "array",fromList [(Version {versionBranch = [0,4,0,1], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "array-0.4.0.1-3b78425c10ff2dad7acf7e8c8ae014c3", sourcePackageId = PackageIdentifier {pkgName = PackageName "array", pkgVersion = Version {versionBranch = [0,4,0,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", synopsis = "Mutable and immutable arrays", description = "This package defines the classes @IArray@ of immutable arrays and\n@MArray@ of arrays mutable within appropriate monads, as well as\nsome instances of these classes.", category = "Data Structures", exposed = True, exposedModules = [ModuleName ["Data","Array","Base"],ModuleName ["Data","Array","IArray"],ModuleName ["Data","Array","IO"],ModuleName ["Data","Array","IO","Safe"],ModuleName ["Data","Array","IO","Internals"],ModuleName ["Data","Array","MArray"],ModuleName ["Data","Array","MArray","Safe"],ModuleName ["Data","Array","ST"],ModuleName ["Data","Array","ST","Safe"],ModuleName ["Data","Array","Storable"],ModuleName ["Data","Array","Storable","Safe"],ModuleName ["Data","Array","Storable","Internals"],ModuleName ["Data","Array","Unboxed"],ModuleName ["Data","Array","Unsafe"],ModuleName ["Data","Array"]], hiddenModules = [], trusted = False, importDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/array-0.4.0.1"], libraryDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/array-0.4.0.1"], hsLibraries = ["HSarray-0.4.0.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/array-0.4.0.1/array.haddock"], haddockHTMLs = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/array-0.4.0.1"]}])]),(PackageName "base",fromList [(Version {versionBranch = [4,6,0,1], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57", sourcePackageId = PackageIdentifier {pkgName = PackageName "base", pkgVersion = Version {versionBranch = [4,6,0,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", synopsis = "Basic libraries", description = "This package contains the Prelude and its support libraries,\nand a large collection of useful libraries ranging from data\nstructures to parsing combinators and debugging utilities.", category = "", exposed = True, exposedModules = [ModuleName ["Foreign","Concurrent"],ModuleName ["GHC","Arr"],ModuleName ["GHC","Base"],ModuleName ["GHC","Char"],ModuleName ["GHC","Conc"],ModuleName ["GHC","Conc","IO"],ModuleName ["GHC","Conc","Signal"],ModuleName ["GHC","Conc","Sync"],ModuleName ["GHC","ConsoleHandler"],ModuleName ["GHC","Constants"],ModuleName ["GHC","Desugar"],ModuleName ["GHC","Enum"],ModuleName ["GHC","Environment"],ModuleName ["GHC","Err"],ModuleName ["GHC","Exception"],ModuleName ["GHC","Exts"],ModuleName ["GHC","Fingerprint"],ModuleName ["GHC","Fingerprint","Type"],ModuleName ["GHC","Float"],ModuleName ["GHC","Float","ConversionUtils"],ModuleName ["GHC","Float","RealFracMethods"],ModuleName ["GHC","Foreign"],ModuleName ["GHC","ForeignPtr"],ModuleName ["GHC","Generics"],ModuleName ["GHC","GHCi"],ModuleName ["GHC","Handle"],ModuleName ["GHC","IO"],ModuleName ["GHC","IO","Buffer"],ModuleName ["GHC","IO","BufferedIO"],ModuleName ["GHC","IO","Device"],ModuleName ["GHC","IO","Encoding"],ModuleName ["GHC","IO","Encoding","CodePage"],ModuleName ["GHC","IO","Encoding","Failure"],ModuleName ["GHC","IO","Encoding","Iconv"],ModuleName ["GHC","IO","Encoding","Latin1"],ModuleName ["GHC","IO","Encoding","Types"],ModuleName ["GHC","IO","Encoding","UTF16"],ModuleName ["GHC","IO","Encoding","UTF32"],ModuleName ["GHC","IO","Encoding","UTF8"],ModuleName ["GHC","IO","Exception"],ModuleName ["GHC","IO","FD"],ModuleName ["GHC","IO","Handle"],ModuleName ["GHC","IO","Handle","FD"],ModuleName ["GHC","IO","Handle","Internals"],ModuleName ["GHC","IO","Handle","Text"],ModuleName ["GHC","IO","Handle","Types"],ModuleName ["GHC","IO","IOMode"],ModuleName ["GHC","IOArray"],ModuleName ["GHC","IOBase"],ModuleName ["GHC","IORef"],ModuleName ["GHC","IP"],ModuleName ["GHC","Int"],ModuleName ["GHC","List"],ModuleName ["GHC","MVar"],ModuleName ["GHC","Num"],ModuleName ["GHC","PArr"],ModuleName ["GHC","Pack"],ModuleName ["GHC","Ptr"],ModuleName ["GHC","Read"],ModuleName ["GHC","Real"],ModuleName ["GHC","ST"],ModuleName ["GHC","Stack"],ModuleName ["GHC","Stats"],ModuleName ["GHC","Show"],ModuleName ["GHC","Stable"],ModuleName ["GHC","Storable"],ModuleName ["GHC","STRef"],ModuleName ["GHC","TypeLits"],ModuleName ["GHC","TopHandler"],ModuleName ["GHC","Unicode"],ModuleName ["GHC","Weak"],ModuleName ["GHC","Word"],ModuleName ["System","Timeout"],ModuleName ["GHC","Event"],ModuleName ["Control","Applicative"],ModuleName ["Control","Arrow"],ModuleName ["Control","Category"],ModuleName ["Control","Concurrent"],ModuleName ["Control","Concurrent","Chan"],ModuleName ["Control","Concurrent","MVar"],ModuleName ["Control","Concurrent","QSem"],ModuleName ["Control","Concurrent","QSemN"],ModuleName ["Control","Concurrent","SampleVar"],ModuleName ["Control","Exception"],ModuleName ["Control","Exception","Base"],ModuleName ["Control","Monad"],ModuleName ["Control","Monad","Fix"],ModuleName ["Control","Monad","Instances"],ModuleName ["Control","Monad","ST"],ModuleName ["Control","Monad","ST","Safe"],ModuleName ["Control","Monad","ST","Unsafe"],ModuleName ["Control","Monad","ST","Lazy"],ModuleName ["Control","Monad","ST","Lazy","Safe"],ModuleName ["Control","Monad","ST","Lazy","Unsafe"],ModuleName ["Control","Monad","ST","Strict"],ModuleName ["Control","Monad","Zip"],ModuleName ["Data","Bits"],ModuleName ["Data","Bool"],ModuleName ["Data","Char"],ModuleName ["Data","Complex"],ModuleName ["Data","Dynamic"],ModuleName ["Data","Either"],ModuleName ["Data","Eq"],ModuleName ["Data","Data"],ModuleName ["Data","Fixed"],ModuleName ["Data","Foldable"],ModuleName ["Data","Function"],ModuleName ["Data","Functor"],ModuleName ["Data","HashTable"],ModuleName ["Data","IORef"],ModuleName ["Data","Int"],ModuleName ["Data","Ix"],ModuleName ["Data","List"],ModuleName ["Data","Maybe"],ModuleName ["Data","Monoid"],ModuleName ["Data","Ord"],ModuleName ["Data","Ratio"],ModuleName ["Data","STRef"],ModuleName ["Data","STRef","Lazy"],ModuleName ["Data","STRef","Strict"],ModuleName ["Data","String"],ModuleName ["Data","Traversable"],ModuleName ["Data","Tuple"],ModuleName ["Data","Typeable"],ModuleName ["Data","Typeable","Internal"],ModuleName ["Data","Unique"],ModuleName ["Data","Version"],ModuleName ["Data","Word"],ModuleName ["Debug","Trace"],ModuleName ["Foreign"],ModuleName ["Foreign","C"],ModuleName ["Foreign","C","Error"],ModuleName ["Foreign","C","String"],ModuleName ["Foreign","C","Types"],ModuleName ["Foreign","ForeignPtr"],ModuleName ["Foreign","ForeignPtr","Safe"],ModuleName ["Foreign","ForeignPtr","Unsafe"],ModuleName ["Foreign","Marshal"],ModuleName ["Foreign","Marshal","Alloc"],ModuleName ["Foreign","Marshal","Array"],ModuleName ["Foreign","Marshal","Error"],ModuleName ["Foreign","Marshal","Pool"],ModuleName ["Foreign","Marshal","Safe"],ModuleName ["Foreign","Marshal","Utils"],ModuleName ["Foreign","Marshal","Unsafe"],ModuleName ["Foreign","Ptr"],ModuleName ["Foreign","Safe"],ModuleName ["Foreign","StablePtr"],ModuleName ["Foreign","Storable"],ModuleName ["Numeric"],ModuleName ["Prelude"],ModuleName ["System","Console","GetOpt"],ModuleName ["System","CPUTime"],ModuleName ["System","Environment"],ModuleName ["System","Exit"],ModuleName ["System","IO"],ModuleName ["System","IO","Error"],ModuleName ["System","IO","Unsafe"],ModuleName ["System","Info"],ModuleName ["System","Mem"],ModuleName ["System","Mem","StableName"],ModuleName ["System","Mem","Weak"],ModuleName ["System","Posix","Internals"],ModuleName ["System","Posix","Types"],ModuleName ["Text","ParserCombinators","ReadP"],ModuleName ["Text","ParserCombinators","ReadPrec"],ModuleName ["Text","Printf"],ModuleName ["Text","Read"],ModuleName ["Text","Read","Lex"],ModuleName ["Text","Show"],ModuleName ["Text","Show","Functions"],ModuleName ["Unsafe","Coerce"]], hiddenModules = [ModuleName ["GHC","Event","Array"],ModuleName ["GHC","Event","Clock"],ModuleName ["GHC","Event","Control"],ModuleName ["GHC","Event","EPoll"],ModuleName ["GHC","Event","IntMap"],ModuleName ["GHC","Event","Internal"],ModuleName ["GHC","Event","KQueue"],ModuleName ["GHC","Event","Manager"],ModuleName ["GHC","Event","PSQ"],ModuleName ["GHC","Event","Poll"],ModuleName ["GHC","Event","Thread"],ModuleName ["GHC","Event","Unique"],ModuleName ["Control","Monad","ST","Imp"],ModuleName ["Control","Monad","ST","Lazy","Imp"],ModuleName ["Foreign","ForeignPtr","Imp"],ModuleName ["System","Environment","ExecutablePath"]], trusted = False, importDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/base-4.6.0.1"], libraryDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/base-4.6.0.1"], hsLibraries = ["HSbase-4.6.0.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/base-4.6.0.1/include"], includes = ["HsBase.h"], depends = [InstalledPackageId "ghc-prim-0.3.0.0-d5221a8c8a269b66ab9a07bdc23317dd",InstalledPackageId "integer-gmp-0.5.0.0-2f15426f5b53fe4c6490832f9b20d8d7",InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/base-4.6.0.1/base.haddock"], haddockHTMLs = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/base-4.6.0.1"]}])]),(PackageName "binary",fromList [(Version {versionBranch = [0,7,1,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "binary-0.7.1.0-31896ab0a137305f290099de575d2a3d", sourcePackageId = PackageIdentifier {pkgName = PackageName "binary", pkgVersion = Version {versionBranch = [0,7,1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "Lennart Kolmodin, Don Stewart <dons00@gmail.com>", author = "Lennart Kolmodin <kolmodin@gmail.com>", stability = "provisional", homepage = "https://github.com/kolmodin/binary", pkgUrl = "", synopsis = "Binary serialisation for Haskell values using lazy ByteStrings", description = "Efficient, pure binary serialisation using lazy ByteStrings.\nHaskell values may be encoded to and from binary formats,\nwritten to disk as binary, or sent over the network.\nThe format used can be automatically generated, or\nyou can choose to implement a custom format if needed.\nSerialisation speeds of over 1 G\\/sec have been observed,\nso this library should be suitable for high performance\nscenarios.", category = "Data, Parsing", exposed = True, exposedModules = [ModuleName ["Data","Binary"],ModuleName ["Data","Binary","Put"],ModuleName ["Data","Binary","Get"],ModuleName ["Data","Binary","Get","Internal"],ModuleName ["Data","Binary","Builder"],ModuleName ["Data","Binary","Builder","Internal"]], hiddenModules = [ModuleName ["Data","Binary","Generic"],ModuleName ["Data","Binary","Builder","Base"],ModuleName ["Data","Binary","Class"]], trusted = False, importDirs = ["/home/chris/.hubrc/heap/193/binary-0.7.1.0/ghc-7.6.3"], libraryDirs = ["/home/chris/.hubrc/heap/193/binary-0.7.1.0/ghc-7.6.3"], hsLibraries = ["HSbinary-0.7.1.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.4.0.1-3b78425c10ff2dad7acf7e8c8ae014c3",InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d",InstalledPackageId "containers-0.5.0.0-ab1dae9a94cd3cc84e7b2805636ebfa2"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/chris/.cabal/share/doc/binary-0.7.1.0/html/binary.haddock"], haddockHTMLs = ["/home/chris/.cabal/share/doc/binary-0.7.1.0/html"]}])]),(PackageName "byteable",fromList [(Version {versionBranch = [0,1,1], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "byteable-0.1.1-30374cf98c5562bc19e9be0ac073ca12", sourcePackageId = PackageIdentifier {pkgName = PackageName "byteable", pkgVersion = Version {versionBranch = [0,1,1], versionTags = []}}, license = BSD3, copyright = "Vincent Hanquez <vincent@snarc.org>", maintainer = "vincent@snarc.org", author = "Vincent Hanquez <vincent@snarc.org>", stability = "experimental", homepage = "http://github.com/vincenthz/hs-byteable", pkgUrl = "", synopsis = "Type class for sequence of bytes", description = "Abstract class to manipulate sequence of bytes\n\nThe use case of this class is abstracting manipulation of\ntypes that are just wrapping a bytestring with stronger and\nmore meaniful name.\n\nUsual definition of those types are of the form: newtype MyType = MyType ByteString", category = "Data", exposed = True, exposedModules = [ModuleName ["Data","Byteable"]], hiddenModules = [], trusted = False, importDirs = ["/home/chris/.hubrc/heap/193/byteable-0.1.1/ghc-7.6.3"], libraryDirs = ["/home/chris/.hubrc/heap/193/byteable-0.1.1/ghc-7.6.3"], hsLibraries = ["HSbyteable-0.1.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/chris/.cabal/share/doc/byteable-0.1.1/html/byteable.haddock"], haddockHTMLs = ["/home/chris/.cabal/share/doc/byteable-0.1.1/html"]}])]),(PackageName "bytedump",fromList [(Version {versionBranch = [1,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "bytedump-1.0-dfecb65989c3eab17044868ad38ffd64", sourcePackageId = PackageIdentifier {pkgName = PackageName "bytedump", pkgVersion = Version {versionBranch = [1,0], versionTags = []}}, license = BSD3, copyright = "Vincent Hanquez <vincent@snarc.org>", maintainer = "Vincent Hanquez <vincent@snarc.org>", author = "Vincent Hanquez <vincent@snarc.org>", stability = "", homepage = "http://github.com/vincenthz/hs-bytedump", pkgUrl = "", synopsis = "Flexible byte dump helpers for human readers.", description = "A set of helpers to dump bytes with lots of different output formats\neasy to read for humans eyes.", category = "Debug", exposed = True, exposedModules = [ModuleName ["Text","Bytedump"]], hiddenModules = [], trusted = False, importDirs = ["/home/chris/.hubrc/heap/193/bytedump-1.0/ghc-7.6.3"], libraryDirs = ["/home/chris/.hubrc/heap/193/bytedump-1.0/ghc-7.6.3"], hsLibraries = ["HSbytedump-1.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/chris/.cabal/share/doc/bytedump-1.0/html/bytedump.haddock"], haddockHTMLs = ["/home/chris/.cabal/share/doc/bytedump-1.0/html"]}])]),(PackageName "bytestring",fromList [(Version {versionBranch = [0,10,2,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d", sourcePackageId = PackageIdentifier {pkgName = PackageName "bytestring", pkgVersion = Version {versionBranch = [0,10,2,0], versionTags = []}}, license = BSD3, copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2012,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2011.", maintainer = "Don Stewart <dons00@gmail.com>,\nDuncan Coutts <duncan@community.haskell.org>", author = "Don Stewart,\nDuncan Coutts", stability = "", homepage = "", pkgUrl = "", synopsis = "Fast, compact, strict and lazy byte strings with a list interface", description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteStrin'g functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS", category = "Data", exposed = True, exposedModules = [ModuleName ["Data","ByteString"],ModuleName ["Data","ByteString","Char8"],ModuleName ["Data","ByteString","Unsafe"],ModuleName ["Data","ByteString","Internal"],ModuleName ["Data","ByteString","Lazy"],ModuleName ["Data","ByteString","Lazy","Char8"],ModuleName ["Data","ByteString","Lazy","Internal"],ModuleName ["Data","ByteString","Builder"],ModuleName ["Data","ByteString","Builder","Extra"],ModuleName ["Data","ByteString","Builder","Prim"],ModuleName ["Data","ByteString","Builder","Internal"],ModuleName ["Data","ByteString","Builder","Prim","Internal"],ModuleName ["Data","ByteString","Lazy","Builder"],ModuleName ["Data","ByteString","Lazy","Builder","Extras"],ModuleName ["Data","ByteString","Lazy","Builder","ASCII"]], hiddenModules = [ModuleName ["Data","ByteString","Builder","ASCII"],ModuleName ["Data","ByteString","Builder","Prim","Binary"],ModuleName ["Data","ByteString","Builder","Prim","ASCII"],ModuleName ["Data","ByteString","Builder","Prim","Internal","Floating"],ModuleName ["Data","ByteString","Builder","Prim","Internal","UncheckedShifts"],ModuleName ["Data","ByteString","Builder","Prim","Internal","Base16"]], trusted = False, importDirs = ["/home/chris/.hubrc/heap/193/bytestring-0.10.2.0/ghc-7.6.3"], libraryDirs = ["/home/chris/.hubrc/heap/193/bytestring-0.10.2.0/ghc-7.6.3"], hsLibraries = ["HSbytestring-0.10.2.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/home/chris/.hubrc/heap/193/bytestring-0.10.2.0/ghc-7.6.3/include"], includes = ["fpstring.h"], depends = [InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "deepseq-1.3.0.1-5cc4cd89bdc2e8f6db1833d95ec36926",InstalledPackageId "ghc-prim-0.3.0.0-d5221a8c8a269b66ab9a07bdc23317dd"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/chris/.cabal/share/doc/bytestring-0.10.2.0/html/bytestring.haddock"], haddockHTMLs = ["/home/chris/.cabal/share/doc/bytestring-0.10.2.0/html"]}])]),(PackageName "containers",fromList [(Version {versionBranch = [0,5,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "containers-0.5.0.0-ab1dae9a94cd3cc84e7b2805636ebfa2", sourcePackageId = PackageIdentifier {pkgName = PackageName "containers", pkgVersion = Version {versionBranch = [0,5,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "fox@ucw.cz", author = "", stability = "", homepage = "", pkgUrl = "", synopsis = "Assorted concrete container types", description = "This package contains efficient general-purpose implementations\nof various basic immutable container types. The declared cost of\neach operation is either worst-case or amortized, but remains\nvalid even if structures are shared.", category = "Data Structures", exposed = True, exposedModules = [ModuleName ["Data","Graph"],ModuleName ["Data","Sequence"],ModuleName ["Data","Tree"],ModuleName ["Data","IntMap"],ModuleName ["Data","IntMap","Lazy"],ModuleName ["Data","IntMap","Strict"],ModuleName ["Data","IntSet"],ModuleName ["Data","Map"],ModuleName ["Data","Map","Lazy"],ModuleName ["Data","Map","Strict"],ModuleName ["Data","Set"]], hiddenModules = [ModuleName ["Data","IntMap","Base"],ModuleName ["Data","IntSet","Base"],ModuleName ["Data","Map","Base"],ModuleName ["Data","Set","Base"],ModuleName ["Data","StrictPair"]], trusted = False, importDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/containers-0.5.0.0"], libraryDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/containers-0.5.0.0"], hsLibraries = ["HScontainers-0.5.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.4.0.1-3b78425c10ff2dad7acf7e8c8ae014c3",InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "deepseq-1.3.0.1-5cc4cd89bdc2e8f6db1833d95ec36926",InstalledPackageId "ghc-prim-0.3.0.0-d5221a8c8a269b66ab9a07bdc23317dd"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/containers-0.5.0.0/containers.haddock"], haddockHTMLs = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/containers-0.5.0.0"]}])]),(PackageName "cryptohash",fromList [(Version {versionBranch = [0,10,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "cryptohash-0.10.0-1344a0899c3b2c26c2165dc4f0e78f3a", sourcePackageId = PackageIdentifier {pkgName = PackageName "cryptohash", pkgVersion = Version {versionBranch = [0,10,0], versionTags = []}}, license = BSD3, copyright = "Vincent Hanquez <vincent@snarc.org>", maintainer = "Vincent Hanquez <vincent@snarc.org>", author = "Vincent Hanquez <vincent@snarc.org>", stability = "", homepage = "http://github.com/vincenthz/hs-cryptohash", pkgUrl = "", synopsis = "collection of crypto hashes, fast, pure and practical", description = "A collection of crypto hashes, with a practical incremental and one-pass, pure APIs,\nwith performance close to the fastest implementations available in others languages.\n\nThe implementations are made in C with a haskell FFI wrapper that hide the C implementation.\n\nSimple examples using the unified API:\n\n> import Crypto.Hash\n>\n> sha1 :: ByteString -> Digest SHA1\n> sha1 = hash\n>\n> hexSha3_512 :: ByteString -> String\n> hexSha3_512 bs = show (hash bs :: Digest SHA3_512)\n\nSimple examples using the module API:\n\n> import qualified Crypto.Hash.SHA1 as SHA1\n>\n> main = putStrLn $ show $ SHA1.hash (Data.ByteString.pack [1..256])\n\n> import qualified Crypto.Hash.SHA3 as SHA3\n>\n> main = putStrLn $ show $ digest\n> where digest = SHA3.finalize ctx\n> ctx = foldl' SHA3.update iCtx (map Data.ByteString.pack [ [1,2,3], [4,5,6] ]\n> iCtx = SHA3.init 224", category = "Data, Cryptography", exposed = True, exposedModules = [ModuleName ["Crypto","Hash"],ModuleName ["Crypto","Hash","Types"],ModuleName ["Crypto","Hash","SHA1"],ModuleName ["Crypto","Hash","SHA224"],ModuleName ["Crypto","Hash","SHA256"],ModuleName ["Crypto","Hash","SHA384"],ModuleName ["Crypto","Hash","SHA512"],ModuleName ["Crypto","Hash","SHA512t"],ModuleName ["Crypto","Hash","SHA3"],ModuleName ["Crypto","Hash","MD2"],ModuleName ["Crypto","Hash","MD4"],ModuleName ["Crypto","Hash","MD5"],ModuleName ["Crypto","Hash","RIPEMD160"],ModuleName ["Crypto","Hash","Skein256"],ModuleName ["Crypto","Hash","Skein512"],ModuleName ["Crypto","Hash","Tiger"],ModuleName ["Crypto","Hash","Whirlpool"],ModuleName ["Crypto","MAC","HMAC"]], hiddenModules = [ModuleName ["Crypto","Hash","Utils"],ModuleName ["Crypto","Hash","Utils","Cpu"],ModuleName ["Crypto","Hash","Internal"]], trusted = False, importDirs = ["/home/chris/.hubrc/heap/193/cryptohash-0.10.0/ghc-7.6.3"], libraryDirs = ["/home/chris/.hubrc/heap/193/cryptohash-0.10.0/ghc-7.6.3"], hsLibraries = ["HScryptohash-0.10.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "byteable-0.1.1-30374cf98c5562bc19e9be0ac073ca12",InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d",InstalledPackageId "ghc-prim-0.3.0.0-d5221a8c8a269b66ab9a07bdc23317dd"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/chris/.cabal/share/doc/cryptohash-0.10.0/html/cryptohash.haddock"], haddockHTMLs = ["/home/chris/.cabal/share/doc/cryptohash-0.10.0/html"]}])]),(PackageName "deepseq",fromList [(Version {versionBranch = [1,3,0,1], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "deepseq-1.3.0.1-5cc4cd89bdc2e8f6db1833d95ec36926", sourcePackageId = PackageIdentifier {pkgName = PackageName "deepseq", pkgVersion = Version {versionBranch = [1,3,0,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", synopsis = "Deep evaluation of data structures", description = "This package provides methods for fully evaluating data structures\n(\\\"deep evaluation\\\"). Deep evaluation is often used for adding\nstrictness to a program, e.g. in order to force pending exceptions,\nremove space leaks, or force lazy I/O to happen. It is also useful\nin parallel programs, to ensure pending work does not migrate to the\nwrong thread.\n\nThe primary use of this package is via the 'deepseq' function, a\n\\\"deep\\\" version of 'seq'. It is implemented on top of an 'NFData'\ntypeclass (\\\"Normal Form Data\\\", data structures with no unevaluated\ncomponents) which defines strategies for fully evaluating different\ndata types.\n", category = "Control", exposed = True, exposedModules = [ModuleName ["Control","DeepSeq"]], hiddenModules = [], trusted = False, importDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/deepseq-1.3.0.1"], libraryDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/deepseq-1.3.0.1"], hsLibraries = ["HSdeepseq-1.3.0.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.4.0.1-3b78425c10ff2dad7acf7e8c8ae014c3",InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/deepseq-1.3.0.1/deepseq.haddock"], haddockHTMLs = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/deepseq-1.3.0.1"]}])]),(PackageName "ghc-prim",fromList [(Version {versionBranch = [0,3,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-prim-0.3.0.0-d5221a8c8a269b66ab9a07bdc23317dd", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc-prim", pkgVersion = Version {versionBranch = [0,3,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", synopsis = "GHC primitives", description = "GHC primitives.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Prim"],ModuleName ["GHC","Classes"],ModuleName ["GHC","CString"],ModuleName ["GHC","Debug"],ModuleName ["GHC","Magic"],ModuleName ["GHC","PrimopWrappers"],ModuleName ["GHC","IntWord64"],ModuleName ["GHC","Tuple"],ModuleName ["GHC","Types"]], hiddenModules = [], trusted = False, importDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/ghc-prim-0.3.0.0"], libraryDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/ghc-prim-0.3.0.0"], hsLibraries = ["HSghc-prim-0.3.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/ghc-prim-0.3.0.0/ghc-prim.haddock"], haddockHTMLs = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/ghc-prim-0.3.0.0"]}])]),(PackageName "integer-gmp",fromList [(Version {versionBranch = [0,5,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "integer-gmp-0.5.0.0-2f15426f5b53fe4c6490832f9b20d8d7", sourcePackageId = PackageIdentifier {pkgName = PackageName "integer-gmp", pkgVersion = Version {versionBranch = [0,5,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", synopsis = "Integer library based on GMP", description = "This package contains an Integer library based on GMP.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Integer"],ModuleName ["GHC","Integer","GMP","Internals"],ModuleName ["GHC","Integer","GMP","Prim"],ModuleName ["GHC","Integer","Logarithms"],ModuleName ["GHC","Integer","Logarithms","Internals"]], hiddenModules = [ModuleName ["GHC","Integer","Type"]], trusted = False, importDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/integer-gmp-0.5.0.0"], libraryDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/integer-gmp-0.5.0.0"], hsLibraries = ["HSinteger-gmp-0.5.0.0"], extraLibraries = ["gmp"], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "ghc-prim-0.3.0.0-d5221a8c8a269b66ab9a07bdc23317dd"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/integer-gmp-0.5.0.0/integer-gmp.haddock"], haddockHTMLs = ["/usr/hs/ghc/7.6.3/share/doc/ghc/html/libraries/integer-gmp-0.5.0.0"]}])]),(PackageName "rts",fromList [(Version {versionBranch = [1,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "builtin_rts", sourcePackageId = PackageIdentifier {pkgName = PackageName "rts", pkgVersion = Version {versionBranch = [1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "glasgow-haskell-users@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", synopsis = "", description = "", category = "", exposed = True, exposedModules = [], hiddenModules = [], trusted = False, importDirs = [], libraryDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3"], hsLibraries = ["HSrts"], extraLibraries = ["m","rt","dl"], extraGHCiLibraries = [], includeDirs = ["/usr/hs/ghc/7.6.3/lib/ghc-7.6.3/include"], includes = ["Stg.h"], depends = [], hugsOptions = [], ccOptions = [], ldOptions = ["-u","ghczmprim_GHCziTypes_Izh_static_info","-u","ghczmprim_GHCziTypes_Czh_static_info","-u","ghczmprim_GHCziTypes_Fzh_static_info","-u","ghczmprim_GHCziTypes_Dzh_static_info","-u","base_GHCziPtr_Ptr_static_info","-u","ghczmprim_GHCziTypes_Wzh_static_info","-u","base_GHCziInt_I8zh_static_info","-u","base_GHCziInt_I16zh_static_info","-u","base_GHCziInt_I32zh_static_info","-u","base_GHCziInt_I64zh_static_info","-u","base_GHCziWord_W8zh_static_info","-u","base_GHCziWord_W16zh_static_info","-u","base_GHCziWord_W32zh_static_info","-u","base_GHCziWord_W64zh_static_info","-u","base_GHCziStable_StablePtr_static_info","-u","ghczmprim_GHCziTypes_Izh_con_info","-u","ghczmprim_GHCziTypes_Czh_con_info","-u","ghczmprim_GHCziTypes_Fzh_con_info","-u","ghczmprim_GHCziTypes_Dzh_con_info","-u","base_GHCziPtr_Ptr_con_info","-u","base_GHCziPtr_FunPtr_con_info","-u","base_GHCziStable_StablePtr_con_info","-u","ghczmprim_GHCziTypes_False_closure","-u","ghczmprim_GHCziTypes_True_closure","-u","base_GHCziPack_unpackCString_closure","-u","base_GHCziIOziException_stackOverflow_closure","-u","base_GHCziIOziException_heapOverflow_closure","-u","base_ControlziExceptionziBase_nonTermination_closure","-u","base_GHCziIOziException_blockedIndefinitelyOnMVar_closure","-u","base_GHCziIOziException_blockedIndefinitelyOnSTM_closure","-u","base_ControlziExceptionziBase_nestedAtomically_closure","-u","base_GHCziWeak_runFinalizzerBatch_closure","-u","base_GHCziTopHandler_flushStdHandles_closure","-u","base_GHCziTopHandler_runIO_closure","-u","base_GHCziTopHandler_runNonIO_closure","-u","base_GHCziConcziIO_ensureIOManagerIsRunning_closure","-u","base_GHCziConcziSync_runSparks_closure","-u","base_GHCziConcziSignal_runHandlers_closure"], frameworkDirs = [], frameworks = [], haddockInterfaces = [], haddockHTMLs = []}])]),(PackageName "utf8-string",fromList [(Version {versionBranch = [0,3,7], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "utf8-string-0.3.7-6b1dbe2244c34f14db95d88796c85902", sourcePackageId = PackageIdentifier {pkgName = PackageName "utf8-string", pkgVersion = Version {versionBranch = [0,3,7], versionTags = []}}, license = BSD3, copyright = "", maintainer = "emertens@galois.com", author = "Eric Mertens", stability = "", homepage = "http://github.com/glguy/utf8-string/", pkgUrl = "", synopsis = "Support for reading and writing UTF8 Strings", description = "A UTF8 layer for IO and Strings. The utf8-string\npackage provides operations for encoding UTF8\nstrings to Word8 lists and back, and for reading and\nwriting UTF8 without truncation.", category = "Codec", exposed = True, exposedModules = [ModuleName ["Codec","Binary","UTF8","String"],ModuleName ["Codec","Binary","UTF8","Generic"],ModuleName ["System","IO","UTF8"],ModuleName ["System","Environment","UTF8"],ModuleName ["Data","String","UTF8"],ModuleName ["Data","ByteString","UTF8"],ModuleName ["Data","ByteString","Lazy","UTF8"]], hiddenModules = [], trusted = False, importDirs = ["/home/chris/.hubrc/heap/193/utf8-string-0.3.7/ghc-7.6.3"], libraryDirs = ["/home/chris/.hubrc/heap/193/utf8-string-0.3.7/ghc-7.6.3"], hsLibraries = ["HSutf8-string-0.3.7"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57",InstalledPackageId "bytestring-0.10.2.0-549a72f0bff415b032e292cfc821925d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/chris/.cabal/share/doc/utf8-string-0.3.7/html/utf8-string.haddock"], haddockHTMLs = ["/home/chris/.cabal/share/doc/utf8-string-0.3.7/html"]}])])]), pkgDescrFile = Just "./pbkdf.cabal", localPkgDescr = PackageDescription {package = PackageIdentifier {pkgName = PackageName "pbkdf", pkgVersion = Version {versionBranch = [1,1,0,0], versionTags = []}}, license = BSD3, licenseFile = "LICENSE", copyright = "(C) Chris Dornan", maintainer = "chris.dornan@irisconnect.com", author = "Chris Dornan", stability = "", testedWith = [], homepage = "https://github.com/cdornan/pbkdf", pkgUrl = "", bugReports = "", sourceRepos = [SourceRepo {repoKind = RepoThis, repoType = Just Git, repoLocation = Just "https://github.com/cdornan/pbkdf.git", repoModule = Nothing, repoBranch = Nothing, repoTag = Just "1.1.0.0", repoSubdir = Nothing},SourceRepo {repoKind = RepoHead, repoType = Just Git, repoLocation = Just "https://github.com/cdornan/pbkdf.git", repoModule = Nothing, repoBranch = Nothing, repoTag = Nothing, repoSubdir = Nothing}], synopsis = "Haskell implementation of the PBKDF functions from RFC-2898.", description = "The Password Based Key Derivation Functions described in RFC-2898 with a test suite to verify that it works with the test vectors published in RFC6070.", category = "Cryptography", customFieldsPD = [], buildDepends = [Dependency (PackageName "base") (IntersectVersionRanges (IntersectVersionRanges (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [4,5], versionTags = []})) (LaterVersion (Version {versionBranch = [4,5], versionTags = []}))) (EarlierVersion (Version {versionBranch = [5,0], versionTags = []}))) (ThisVersion (Version {versionBranch = [4,6,0,1], versionTags = []}))) (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [4,5], versionTags = []})) (LaterVersion (Version {versionBranch = [4,5], versionTags = []}))) (ThisVersion (Version {versionBranch = [4,6,0,1], versionTags = []})))),Dependency (PackageName "binary") (IntersectVersionRanges (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,5], versionTags = []})) (LaterVersion (Version {versionBranch = [0,5], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,7,1,0], versionTags = []}))) (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,5], versionTags = []})) (LaterVersion (Version {versionBranch = [0,5], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,7,1,0], versionTags = []})))),Dependency (PackageName "byteable") (IntersectVersionRanges (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,1], versionTags = []})) (LaterVersion (Version {versionBranch = [0,1], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,1,1], versionTags = []}))) (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,1], versionTags = []})) (LaterVersion (Version {versionBranch = [0,1], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,1,1], versionTags = []})))),Dependency (PackageName "bytedump") (IntersectVersionRanges (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [1,0], versionTags = []})) (LaterVersion (Version {versionBranch = [1,0], versionTags = []}))) (ThisVersion (Version {versionBranch = [1,0], versionTags = []}))) (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [1,0], versionTags = []})) (LaterVersion (Version {versionBranch = [1,0], versionTags = []}))) (ThisVersion (Version {versionBranch = [1,0], versionTags = []})))),Dependency (PackageName "bytestring") (IntersectVersionRanges (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,9], versionTags = []})) (LaterVersion (Version {versionBranch = [0,9], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,10,2,0], versionTags = []}))) (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,9], versionTags = []})) (LaterVersion (Version {versionBranch = [0,9], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,10,2,0], versionTags = []})))),Dependency (PackageName "cryptohash") (IntersectVersionRanges (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,10], versionTags = []})) (LaterVersion (Version {versionBranch = [0,10], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,10,0], versionTags = []}))) (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,10], versionTags = []})) (LaterVersion (Version {versionBranch = [0,10], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,10,0], versionTags = []})))),Dependency (PackageName "pbkdf") AnyVersion,Dependency (PackageName "utf8-string") (IntersectVersionRanges (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,3,7], versionTags = []})) (LaterVersion (Version {versionBranch = [0,3,7], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,3,7], versionTags = []}))) (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,3,7], versionTags = []})) (LaterVersion (Version {versionBranch = [0,3,7], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,3,7], versionTags = []}))))], specVersionRaw = Right (UnionVersionRanges (ThisVersion (Version {versionBranch = [1,14], versionTags = []})) (LaterVersion (Version {versionBranch = [1,14], versionTags = []}))), buildType = Just Simple, library = Just (Library {exposedModules = [ModuleName ["Crypto","PBKDF"],ModuleName ["Crypto","PBKDF","Core"]], libExposed = True, libBuildInfo = BuildInfo {buildable = True, buildTools = [], cppOptions = [], ccOptions = [], ldOptions = [], pkgconfigDepends = [], frameworks = [], cSources = [], hsSourceDirs = ["."], otherModules = [], defaultLanguage = Just Haskell2010, otherLanguages = [], defaultExtensions = [], otherExtensions = [], oldExtensions = [], extraLibs = [], extraLibDirs = [], includeDirs = [], includes = [], installIncludes = [], options = [(GHC,["-Wall"])], ghcProfOptions = [], ghcSharedOptions = [], customFieldsBI = [], targetBuildDepends = [Dependency (PackageName "base") (IntersectVersionRanges (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [4,5], versionTags = []})) (LaterVersion (Version {versionBranch = [4,5], versionTags = []}))) (EarlierVersion (Version {versionBranch = [5,0], versionTags = []}))) (ThisVersion (Version {versionBranch = [4,6,0,1], versionTags = []}))),Dependency (PackageName "binary") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,5], versionTags = []})) (LaterVersion (Version {versionBranch = [0,5], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,7,1,0], versionTags = []}))),Dependency (PackageName "byteable") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,1], versionTags = []})) (LaterVersion (Version {versionBranch = [0,1], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,1,1], versionTags = []}))),Dependency (PackageName "bytedump") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [1,0], versionTags = []})) (LaterVersion (Version {versionBranch = [1,0], versionTags = []}))) (ThisVersion (Version {versionBranch = [1,0], versionTags = []}))),Dependency (PackageName "bytestring") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,9], versionTags = []})) (LaterVersion (Version {versionBranch = [0,9], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,10,2,0], versionTags = []}))),Dependency (PackageName "cryptohash") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,10], versionTags = []})) (LaterVersion (Version {versionBranch = [0,10], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,10,0], versionTags = []}))),Dependency (PackageName "utf8-string") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,3,7], versionTags = []})) (LaterVersion (Version {versionBranch = [0,3,7], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,3,7], versionTags = []})))]}}), executables = [], testSuites = [TestSuite {testName = "rfc-6070", testInterface = TestSuiteExeV10 (Version {versionBranch = [1,0], versionTags = []}) "rfc6070.hs", testBuildInfo = BuildInfo {buildable = True, buildTools = [], cppOptions = [], ccOptions = [], ldOptions = [], pkgconfigDepends = [], frameworks = [], cSources = [], hsSourceDirs = ["."], otherModules = [], defaultLanguage = Just Haskell2010, otherLanguages = [], defaultExtensions = [], otherExtensions = [], oldExtensions = [], extraLibs = [], extraLibDirs = [], includeDirs = [], includes = [], installIncludes = [], options = [(GHC,["-Wall"])], ghcProfOptions = [], ghcSharedOptions = [], customFieldsBI = [], targetBuildDepends = [Dependency (PackageName "base") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [4,5], versionTags = []})) (LaterVersion (Version {versionBranch = [4,5], versionTags = []}))) (ThisVersion (Version {versionBranch = [4,6,0,1], versionTags = []}))),Dependency (PackageName "binary") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,5], versionTags = []})) (LaterVersion (Version {versionBranch = [0,5], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,7,1,0], versionTags = []}))),Dependency (PackageName "byteable") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,1], versionTags = []})) (LaterVersion (Version {versionBranch = [0,1], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,1,1], versionTags = []}))),Dependency (PackageName "bytedump") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [1,0], versionTags = []})) (LaterVersion (Version {versionBranch = [1,0], versionTags = []}))) (ThisVersion (Version {versionBranch = [1,0], versionTags = []}))),Dependency (PackageName "bytestring") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,9], versionTags = []})) (LaterVersion (Version {versionBranch = [0,9], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,10,2,0], versionTags = []}))),Dependency (PackageName "cryptohash") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,10], versionTags = []})) (LaterVersion (Version {versionBranch = [0,10], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,10,0], versionTags = []}))),Dependency (PackageName "pbkdf") AnyVersion,Dependency (PackageName "utf8-string") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [0,3,7], versionTags = []})) (LaterVersion (Version {versionBranch = [0,3,7], versionTags = []}))) (ThisVersion (Version {versionBranch = [0,3,7], versionTags = []})))]}, testEnabled = True}], benchmarks = [], dataFiles = [], dataDir = "", extraSrcFiles = [], extraTmpFiles = []}, withPrograms = [("alex",ConfiguredProgram {programId = "alex", programVersion = Just (Version {versionBranch = [3,0,2], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/alex"}}),("ar",ConfiguredProgram {programId = "ar", programVersion = Nothing, programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/hs/binutils/bin/ar"}}),("gcc",ConfiguredProgram {programId = "gcc", programVersion = Just (Version {versionBranch = [4,6,1], versionTags = []}), programDefaultArgs = ["-Wl,--hash-size=31","-Wl,--reduce-memory-overheads"], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/hs/gcc/bin/gcc"}}),("ghc",ConfiguredProgram {programId = "ghc", programVersion = Just (Version {versionBranch = [7,6,3], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ghc"}}),("ghc-pkg",ConfiguredProgram {programId = "ghc-pkg", programVersion = Just (Version {versionBranch = [7,6,3], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ghc-pkg"}}),("haddock",ConfiguredProgram {programId = "haddock", programVersion = Just (Version {versionBranch = [2,13,2], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/haddock"}}),("happy",ConfiguredProgram {programId = "happy", programVersion = Just (Version {versionBranch = [1,18,9], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/happy"}}),("hpc",ConfiguredProgram {programId = "hpc", programVersion = Just (Version {versionBranch = [0,6], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/hpc"}}),("hsc2hs",ConfiguredProgram {programId = "hsc2hs", programVersion = Just (Version {versionBranch = [0,67], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = UserSpecified {locationPath = "/usr/bin/hsc2hs"}}),("hscolour",ConfiguredProgram {programId = "hscolour", programVersion = Just (Version {versionBranch = [1,20], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/home/chris/.cabal/bin/HsColour"}}),("ld",ConfiguredProgram {programId = "ld", programVersion = Nothing, programDefaultArgs = ["-x","--hash-size=31","--reduce-memory-overheads"], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/hs/binutils/bin/ld"}}),("pkg-config",ConfiguredProgram {programId = "pkg-config", programVersion = Just (Version {versionBranch = [0,23], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/pkg-config"}}),("ranlib",ConfiguredProgram {programId = "ranlib", programVersion = Nothing, programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/hs/binutils/bin/ranlib"}}),("strip",ConfiguredProgram {programId = "strip", programVersion = Nothing, programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/hs/binutils/bin/strip"}}),("tar",ConfiguredProgram {programId = "tar", programVersion = Nothing, programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/bin/tar"}})], withPackageDB = [GlobalPackageDB,UserPackageDB,SpecificPackageDB "/home/chris/.hubrc/lib/pbkdf/package.config"], withVanillaLib = True, withProfLib = False, withSharedLib = False, withDynExe = False, withProfExe = False, withOptimization = NormalOptimisation, withGHCiLib = True, splitObjs = False, stripExes = True, progPrefix = "", progSuffix = ""}
+ dist/test/pbkdf-1.1.0.0-rfc-6070.log view
@@ -0,0 +1,9 @@+Test suite rfc-6070: RUNNING...+"password" "salt" 1 (20) : passed+"password" "salt" 2 (20) : passed+"password" "salt" 4096 (20) : passed+"password" "salt" 16777216 (20) : passed+"passwordPASSWORDpassword" "saltSALTsaltSALTsaltSALTsaltSALTsalt" 4096 (25) : passed+"pass\NULword" "sa\NULlt" 4096 (16) : passed+Test suite rfc-6070: PASS+Test suite logged to: dist/test/pbkdf-1.1.0.0-rfc-6070.log
+ dist/test/pbkdf-1.1.0.0.log view
@@ -0,0 +1,1 @@+PackageLog {package = PackageIdentifier {pkgName = PackageName "pbkdf", pkgVersion = Version {versionBranch = [1,1,0,0], versionTags = []}}, compiler = CompilerId GHC (Version {versionBranch = [7,6,3], versionTags = []}), platform = Platform X86_64 Linux, testSuites = [TestSuiteLog {testSuiteName = "rfc-6070", testLogs = TestLog {testName = "rfc-6070", testOptionsReturned = [], testResult = Pass}, logFile = "dist/test/pbkdf-1.1.0.0-rfc-6070.log"}]}
pbkdf.cabal view
@@ -1,5 +1,5 @@ Name: pbkdf-Version: 1.0.0.0+Version: 1.1.0.0 Synopsis: Haskell implementation of the PBKDF functions from RFC-2898. Description: The Password Based Key Derivation Functions described in RFC-2898 with a test suite to verify that it works with the test vectors published in RFC6070. Homepage: https://github.com/cdornan/pbkdf@@ -16,7 +16,7 @@ Source-repository this type: git location: https://github.com/cdornan/pbkdf.git- tag: 1.0.0.0+ tag: 1.1.0.0 Source-repository head type: git