diff --git a/LICENSE b/LICENSE
new file mode 100644
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,14 @@
+Copyright (c) 2010, Anthonin Bonnefoy 
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
diff --git a/README.textile b/README.textile
new file mode 100644
--- /dev/null
+++ b/README.textile
@@ -0,0 +1,78 @@
+Shaker is a build tool which allow to compile and launch test on haskell project with some features like continuous action similar to SBT.
+For now, all configuration are made via cabal. Shaker will read cabal configuration to discover source directories, compilation options and targets to compile.
+
+h2. Installation 
+
+You can either install shaker using cabal-install or by building it yourself.
+
+1. Using cabal-install
+
+<pre>
+cabal install shaker 
+</pre>
+
+2. Building from sources
+
+<pre>
+runhaskell Setup.hs configure && runhaskell Setup.hs build && runhaskell Setup.hs install
+</pre>
+
+h2. Usage
+
+The cabal configuration file should be generated beforehand. 
+<pre>
+runhaskell Setup.hs configure
+</pre>
+If you change your cabal configuration, you need to recreate the configuration file. 
+
+h3. Execution
+In the root of your project, launch
+<pre>
+shaker
+</pre>
+An interactive prompt will allow you to execute differents action.
+
+h3. Action execution
+
+h4. Simple Execution
+An action can be launched normally, by entering the action name 
+<pre>
+Compile
+</pre>
+It will compile the projet and give the control back.
+
+h4. Multiple action execution
+You can specify multiple action to execute.
+<pre>
+Clean Compile
+</pre>
+It will clean all .o and .hi files before Compiling the project.
+
+h4. Continuous action
+A continuous action will execute the action when a changement on files has been detected.
+Every action are elligible to continuous action, you simply need to prefix them with '~'
+
+<pre>
+~Compile
+</pre>
+It will compile the project every time a change in the code has been detected.
+To get control back, simply enter a character.
+
+h3. Actions available
+
+h4. Compile
+
+Compile the project. Targets of the compilation are main file (in case of executable) or exposed modules (in case of library).
+
+h4. FullCompile
+
+Compile all hs files found in source directory. It is usefull to compile test sources.
+
+h4. Clean
+
+Clean the directory containing .o and .hi files.
+
+h4. Quit 
+
+Exit the application.
+
diff --git a/Setup.hs b/Setup.hs
new file mode 100644
--- /dev/null
+++ b/Setup.hs
@@ -0,0 +1,16 @@
+#!/usr/bin/env runhaskell
+
+import Distribution.PackageDescription
+import System.FilePath
+import System
+import Distribution.Simple
+import Distribution.Simple.LocalBuildInfo
+
+main = defaultMainWithHooks hooks
+  where hooks = simpleUserHooks { runTests = runTests' }
+
+
+runTests' :: Args -> Bool -> PackageDescription -> LocalBuildInfo -> IO ()
+runTests' _ _ _ lbi = system testprog >> return ()
+  where testprog = (buildDir lbi) </> "test" </> "test" 
+
diff --git a/TODO b/TODO
new file mode 100644
--- /dev/null
+++ b/TODO
@@ -0,0 +1,31 @@
+TODO : 
+  Big refactoring : Better model for information representation, better separations!
+  Make action take parameters from command line
+  Implement QuickCheck Action
+  Optimisation possible by saving the files to listen
+  Clean module export
+  Cabal Integration : 
+    Propose which composant (Library? Executable?) to build
+  Trap ctrl+c
+  Correct import module (only import necessary functions)
+  Create action command
+  Use a monad writer for cabal information extraction
+  Extract extra-source-dirs
+
+Done : 
+  bug : ~Compile launche two fork the first time
+  Convert InputShaker parameter to Monad
+  Support multi action
+  Implement Clean
+  FileListen should take a list of directory
+  A more flexible action plugin system
+  Enhanced command-line interface (use haskell-line?)
+  Support Completion
+  Use hlint on the project
+  Configure cabal
+  Externalize configuration
+  Cabal Integration : 
+    Get config through cabal api
+  Exclude main methods from fullCompile 
+  If no source dir is specified, an error is throwed
+
diff --git a/shaker.cabal b/shaker.cabal
new file mode 100644
--- /dev/null
+++ b/shaker.cabal
@@ -0,0 +1,146 @@
+name: shaker
+version: 0.1
+cabal-version: >= 1.8
+build-type: Custom
+license: BSD3
+license-file: LICENSE
+copyright: Copyright (c) 2010 Anthonin Bonnefoy
+author: Anthonin Bonnefoy
+maintainer: anthonin.bonnefoy@gmail.com
+homepage: http://github.com/bonnefoa/Shaker
+bug-reports: http://github.com/bonnefoa/Shaker/issues 
+Stability:alpha
+Tested-With:GHC == 6.12.1
+category: Development
+synopsis: simple and interactive command-line build tool
+description: 
+  Shaker is a build tool which allow to compile an haskell project with some features like continuous action similar to SBT.
+  .
+  For the moment, all configuration are made via cabal. Shaker will read cabal configuration to discover source directories, compilation options and targets to compile.
+  .
+  /Usage/
+  .
+  The cabal configuration file should be generated beforehand with /runhaskell Setup.hs configure/. If you change your cabal configuration, you need to recreate the configuration file. 
+  .
+  /Execution/
+  .
+  In the root of your haskell project, launch shaker. An interactive prompt will allow you to execute differents action.
+  .
+  /Action execution/
+  .
+  [@Simple Execution@] An action can be launched normally, by entering the action name 
+  .
+  [@Multiple action execution@] You can specify multiple action to execute simply by separating action by spaces.
+  .
+  [@Continuous Action@] A continuous action will execute the action when a changement on files has been detected.
+  Every action are elligible to continuous action, you simply need to prefix them with '~'
+  .
+  /Available actions/
+  .
+  [@Compile@] Compile the project. Targets of the compilation are main file (in case of executable) or exposed modules (in case of library).
+  .
+  [@FullCompile@] Compile all hs files found in source directory. It is usefull to compile test sources.
+  .
+  [@Clean@] Clean the directory containing .o and .hi files.
+  .
+  [@Quit@] Exit the application.
+  . 
+  /Examples/
+  .
+  [@% Compile@] Simply compile the project
+  .
+  [@% Clean Compile@] Clean and compile the project
+  .
+  [@% ~Compile@] Switch to continuous mode and will compile the project when sources are modified.
+  .
+  [@% ~Clean Compile@] Switch to continuous mode and will clean and compile the project when sources are modified.
+extra-source-files: README.textile TODO testsuite/tests/resources/invalidMain/dist/setup-config
+    testsuite/tests/resources/invalidMain/src/Main.hs
+    testsuite/tests/resources/invalidMain/tests/Dummy.hs
+    testsuite/tests/resources/invalidMain/invalidMain.cabal
+    testsuite/tests/resources/cabalTest/dist/setup-config
+    testsuite/tests/resources/cabalTest/cabalTest.cabal
+    testsuite/tests/resources/cabalTest/src/Main.hs
+    testsuite/tests/resources/cabalTest/src/CabalTest.hs
+    testsuite/tests/resources/noSourceConfig/noHsSource.hs
+    testsuite/tests/resources/noSourceConfig/noHsSource.cabal
+    testsuite/tests/resources/noSourceConfig/dist/setup-config
+
+source-repository head
+  type:     git
+  location: git://github.com/bonnefoa/Shaker.git 
+
+source-repository this
+  type:     git
+  location: git://github.com/bonnefoa/Shaker.git 
+  tag:      0.1
+
+Executable shaker
+  Main-Is: Shaker.hs
+  ghc-options: -Wall
+  hs-source-dirs: src 
+  other-modules: 
+    Shaker.Parser
+    Shaker.Action.Clean
+    Shaker.Action.Standard
+    Shaker.Action.Quickcheck
+    Shaker.Action.Compile
+    Shaker.Conductor
+    Shaker.Config
+    Shaker.PluginConfig
+    Shaker.Regex
+    Shaker.Cli
+    Shaker.Io
+    Shaker.Cabal.CabalInfo
+    Shaker.Type
+    Shaker.Listener
+  build-depends: base >= 4.1 && < 5 ,
+                 Cabal >= 1.8.0.2,
+                 containers >= 0.3,
+                 haskeline >= 0.6.0.0 
+                 ,directory >= 1.0.1.0,
+                 filepath >= 1.1,
+                 ghc >= 6,
+                 ghc-paths >= 0.1,
+                 haskell98 >= 1.0,
+                 mtl >= 1.0,
+                 parsec >= 3.0,
+                 regex-posix >= 0.94.1,
+                 old-time >= 1.0.0
+                 ,bytestring >= 0.9.1.5
+
+flag test
+  description: Build test program.
+  default:     False
+
+Executable test
+  hs-source-dirs:  src, testsuite/tests 
+  main-is:         RunTest.hs
+  other-modules: 
+    Shaker.RegexTest
+    Shaker.Properties
+    Shaker.Action.CompileTest
+    Shaker.IoTest
+    Shaker.CliTest
+    Shaker.ParserTest
+    Shaker.Cabal.CabalInfoTest
+    Shaker.ListenerTest
+    Shaker.ConductorTest
+  build-depends: base >= 4.1,
+                 Cabal >= 1.8.0.2,
+                 containers >= 0.3,
+                 haskeline >= 0.6.0.0 
+                 ,directory >= 1.0.1.0,
+                 filepath >= 1.1,
+                 ghc >= 6,
+                 ghc-paths >= 0.1,
+                 haskell98 >= 1.0,
+                 mtl >= 1.0,
+                 parsec >= 3.0,
+                 regex-posix >= 0.94.1,
+                 old-time >= 1.0.0
+                 ,bytestring >= 0.9.1.5
+                 ,HUnit >= 1.2.2.1
+                 ,QuickCheck >= 2.1.1.1
+  if !flag(test)
+    buildable:     False
diff --git a/src/Shaker.hs b/src/Shaker.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker.hs
@@ -0,0 +1,15 @@
+module Main
+ where
+
+import Shaker.Conductor
+import Shaker.Config
+import Shaker.Cabal.CabalInfo
+import Control.Monad.Reader
+
+main :: IO()
+main = do
+  inputState <- defaultInputState
+  cab <- defaultCabalInput 
+  runReaderT (initThread inputState) cab
+
+    
diff --git a/src/Shaker/Action/Clean.hs b/src/Shaker/Action/Clean.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker/Action/Clean.hs
@@ -0,0 +1,17 @@
+-- | Clean action is responsible to delete directory containing temporary .o and .hi files 
+module Shaker.Action.Clean
+ where
+
+import Shaker.Type
+import System.Directory
+import Control.Monad.Trans 
+import Control.Monad.Reader
+
+runClean :: Plugin 
+runClean = do
+       toClean <- asks $ map cfCompileTarget . compileInputs
+       lift$  mapM_ action toClean 
+    where action toClean = do
+                   ex <- doesDirectoryExist toClean
+                   if ex then removeDirectoryRecursive toClean  
+                         else putStrLn "" 
diff --git a/src/Shaker/Action/Compile.hs b/src/Shaker/Action/Compile.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker/Action/Compile.hs
@@ -0,0 +1,62 @@
+module Shaker.Action.Compile(
+    runCompile
+    ,runFullCompile
+  )
+ where
+
+import Data.List 
+import GHC
+import DynFlags 
+import GHC.Paths
+import Shaker.Io
+import Shaker.Type
+import Control.Monad.Trans 
+import Control.Monad.Reader
+
+-- |Run haskell compilation on given file input 
+runCompile :: Plugin
+runCompile = asks compileInputs >>=  mapM runSingleCompileInput >> return ()
+
+runSingleCompileInput :: CompileInput -> Shaker IO()
+runSingleCompileInput (CompileInput sourceDir desc targetInput procFlags strflags inputTargetFiles) = do
+        lift $ putStrLn "-------------------------------------"
+        lift $ putStrLn $ concat ["   --------- ", desc," ---------"]
+        targetFiles <- checkTargetFiles inputTargetFiles 
+        lift $ putStrLn $ concat ["   --------- ", "Compiling target : "++ show targetFiles," ---------"]
+        lift $ defaultErrorHandler defaultDynFlags $ 
+                       runGhc (Just libdir) $ do
+                       dflags <- getSessionDynFlags
+                       (newFlags,_,_) <- parseDynamicFlags dflags (map noLoc strflags)
+	               _ <- setSessionDynFlags $ procFlags $ setSourceAndTarget sourceDir targetInput newFlags
+                       target <- mapM (`guessTarget` Nothing) targetFiles
+                       setTargets target
+        	       _ <- load LoadAllTargets
+                       return ()
+ 
+runFullCompile :: Plugin
+runFullCompile = setCompileInputForAllHsSources >>= \a -> 
+  runSingleCompileInput a >> 
+  return () 
+
+-- | Fill the target files to all files in listenerInput if empty
+checkTargetFiles :: [String] -> Shaker IO([String])
+checkTargetFiles [] = do 
+        (ListenerInput fli _) <- asks listenerInput 
+        files <- lift $ recurseMultipleListFiles fli
+        lift $ filterM (\a -> not `liftM` isFileContainingMain a) files
+checkTargetFiles l = return l
+
+setSourceAndTarget :: [String] -> String ->DynFlags -> DynFlags
+setSourceAndTarget sources target dflags = dflags{
+    importPaths = sources
+    ,objectDir = Just target
+    ,hiDir = Just target
+  }
+
+setCompileInputForAllHsSources :: Shaker IO CompileInput
+setCompileInputForAllHsSources = do 
+  (cpIn:_) <- asks compileInputs
+  filePaths <- lift $ recurseMultipleListFiles $ map (\a -> FileListenInfo a defaultExclude defaultHaskellPatterns ) (cfSourceDirs cpIn)
+  toExcludeFiles <- lift $ filterM isFileContainingMain filePaths
+  return  $ cpIn {cfTargetFiles = filePaths \\ toExcludeFiles , cfDescription ="Full compilation"  }
+
diff --git a/src/Shaker/Action/Quickcheck.hs b/src/Shaker/Action/Quickcheck.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker/Action/Quickcheck.hs
@@ -0,0 +1,64 @@
+module Shaker.Action.Quickcheck
+ where
+
+import GHC
+import DynFlags 
+import GHC.Paths
+import Shaker.Io
+import Shaker.Type
+import Control.Monad.Trans 
+import Control.Monad.Reader
+{-
+runQuickcheck :: Shaker IO String
+runQuickcheck = do
+        (CompileInput sourceDir targetInput procFlags strflags) <-  asks compileInput 
+        (ListenerInput fli _) <- asks listenerInput 
+        targetFiles <-  lift $ recurseMultipleListFiles fli
+        lift $ defaultErrorHandler defaultDynFlags $ 
+                       runGhc (Just libdir) $ do
+                       dflags <- getSessionDynFlags
+                       (newFlags,_,_) <- parseDynamicFlags dflags (map noLoc strflags)
+	               _ <- setSessionDynFlags $ procFlags $ setSourceAndTarget sourceDir targetInput newFlags
+                       target <- mapM (`guessTarget` Nothing) targetFiles
+                       setTargets target
+        	       _ <- load LoadAllTargets
+                       modSum <- getModSummary $ mkModuleName "B"
+                       p <- parseModule modSum
+                       t <- typecheckModule p
+                       d <- desugarModule t
+                       l <- loadModule d
+                       n <- getNamesInScope
+                       c <- return $ coreModule d
+                       g <- getModuleGraph
+                       mapM showModule g     
+                       print $ showSDoc ( ppr (parsedSource d,"/n-----/n",  typecheckedSource d)        res )
+-}
+
+example = defaultErrorHandler defaultDynFlags $ do
+    runGhc (Just libdir) $ do
+    dflags <- getSessionDynFlags
+    (newFlags,_,_) <- parseDynamicFlags dflags (map noLoc ["-itestsuite/tests","-isrc/","-package ghc"])
+    setSessionDynFlags newFlags
+    target <- guessTarget "Shaker.CliTest" Nothing
+    setTargets [target]
+    load LoadAllTargets
+    modSum <- getModSummary $ mkModuleName "Shaker.CliTest"
+    p <- parseModule modSum
+ --   liftIO $ putStrLn $ show p 
+    t <- typecheckModule p
+--    liftIO $ putStrLn $ show t 
+    d <- desugarModule t
+    l <- loadModule d
+    n <- getNamesInScope
+    c <- return $ coreModule d
+    g <- getModuleGraph
+    mapM showModule g     
+    return $ (parsedSource d,"/n-----/n",  typecheckedSource d)
+
+setSourceAndTarget :: [String] -> String ->DynFlags -> DynFlags
+setSourceAndTarget sources target dflags = dflags{
+    importPaths = sources
+    ,objectDir = Just target
+    ,hiDir = Just target
+  }
+
diff --git a/src/Shaker/Action/Standard.hs b/src/Shaker/Action/Standard.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker/Action/Standard.hs
@@ -0,0 +1,27 @@
+module Shaker.Action.Standard
+ where
+
+import Shaker.Type
+import qualified Data.Map as M
+import Control.Monad.Trans
+import Control.Monad.Reader
+
+runHelp ::  Plugin
+runHelp = do 
+  commands <- asks commandMap 
+  lift $ do   
+  putStrLn "Following actions are available : "
+  print $ M.keys commands
+  putStrLn "use ~[actionName] for continuous launch"
+
+runExit :: Plugin
+runExit = lift $ putStrLn "Exiting"
+
+runStartAction :: Plugin
+runStartAction = lift $ 
+  putStrLn "---------- Begin action -------------------------"
+
+runEndAction :: Plugin
+runEndAction = lift $ 
+  putStrLn "---------- End action ---------------------------"
+
diff --git a/src/Shaker/Cabal/CabalInfo.hs b/src/Shaker/Cabal/CabalInfo.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker/Cabal/CabalInfo.hs
@@ -0,0 +1,141 @@
+-- | Allow to use cabal configuration (generated via the configure action of cabal).
+-- Source directories and compilation options will be reused by Shaker.
+module Shaker.Cabal.CabalInfo
+ where
+
+import Shaker.Io(FileListenInfo(..),defaultHaskellPatterns,defaultExclude)
+import Shaker.Type
+import Shaker.Config
+import Distribution.Simple.Configure (getPersistBuildConfig)
+import Distribution.Simple.LocalBuildInfo (LocalBuildInfo, localPkgDescr)
+import Distribution.ModuleName
+import Distribution.PackageDescription(
+  BuildInfo,targetBuildDepends,options,libBuildInfo,library,Library,hsSourceDirs,exposedModules, extensions, 
+  Executable,buildInfo, modulePath, executables, exeName
+  )
+import DynFlags(
+    DynFlags, verbosity, ghcLink, packageFlags, outputFile, hiDir, objectDir ,importPaths
+    ,PackageFlag (ExposePackage)
+    ,GhcLink (NoLink)
+  )
+import System.FilePath          ( (</>))
+import System.Directory (doesFileExist)
+import Distribution.Compiler(CompilerFlavor(GHC))
+import Distribution.Package (Dependency(Dependency), PackageName(PackageName))
+import Data.Maybe
+import Data.List(nub,isSuffixOf)
+import Control.Monad 
+
+-- | Read the build information from cabal and output a shakerInput from it
+defaultCabalInput :: IO ShakerInput
+defaultCabalInput = readConf >>=
+ checkInvalidMain . localBuildInfoToShakerInput
+
+readConf :: IO LocalBuildInfo
+readConf = getPersistBuildConfig "dist"
+
+-- | Extract useful information from localBuildInfo to a ShakerInput
+localBuildInfoToShakerInput :: LocalBuildInfo -> ShakerInput
+localBuildInfoToShakerInput lbi = defaultInput {
+    compileInputs = cplInputs
+    ,listenerInput = compileInputsToListenerInput cplInputs
+  }
+  where cplInputs = localBuildInfoToCompileInputs lbi
+
+compileInputsToListenerInput :: [CompileInput] -> ListenerInput
+compileInputsToListenerInput cplInputs = defaultListenerInput {
+        fileListenInfo = nub $ map (\a -> FileListenInfo a defaultExclude  defaultHaskellPatterns) concatSources
+ } 
+ where concatSources = concatMap cfSourceDirs cplInputs
+       
+-- * Converter to CompileInput
+
+-- | Extract informations : Convert executable and library to 
+-- compile inputs
+localBuildInfoToCompileInputs :: LocalBuildInfo -> [CompileInput]
+localBuildInfoToCompileInputs lbi = executableAndLibToCompileInput (library pkgDescription) (executables pkgDescription)
+ where pkgDescription = localPkgDescr lbi
+
+
+-- | Dispatch the processing depending of the library content
+executableAndLibToCompileInput :: Maybe Library -> [Executable] -> [CompileInput]
+executableAndLibToCompileInput Nothing exes = 
+  map executableToCompileInput exes
+executableAndLibToCompileInput (Just lib) exes = 
+  libraryToCompileInput lib : map executableToCompileInput exes
+
+-- | Convert a cabal executable to a compileInput
+-- The target of compilation will the main file
+executableToCompileInput :: Executable -> CompileInput
+executableToCompileInput executable = defaultCompileInput { 
+  cfSourceDirs = mySourceDir
+  ,cfDescription = "Executable : " ++ exeName executable
+  ,cfCommandLineFlags = getCompileOptions bldInfo
+  ,cfTargetFiles = map (</> modulePath executable ) mySourceDir
+  ,cfDynFlags = toDynFlags mySourceDir (getLibDependencies bldInfo)
+  }
+  where bldInfo = buildInfo executable
+        mySourceDir = hsSourceDirs bldInfo
+
+-- | Convert a cabal library to a compileInput
+-- The target of compilation will be all exposed modules
+libraryToCompileInput :: Library -> CompileInput
+libraryToCompileInput lib = defaultCompileInput {
+  cfSourceDirs = mySourceDir
+  ,cfDescription = "Library : " ++ show myModules
+  ,cfCommandLineFlags = getCompileOptions bldInfo
+  ,cfTargetFiles = myModules
+  ,cfDynFlags = toDynFlags mySourceDir (getLibDependencies bldInfo)
+ }
+ where bldInfo = libBuildInfo lib
+       myModules = map convertModuleNameToString $ exposedModules lib
+       mySourceDir = hsSourceDirs bldInfo
+
+-- | Create a dynFlags for ghc from a source directory and 
+-- a liste of packages
+toDynFlags :: [String] -> [String] -> DynFlags -> DynFlags
+toDynFlags sourceDirs packagesToExpose dnFlags = dnFlags {
+  importPaths = sourceDirs
+  ,outputFile = Just "target/Main"
+  ,objectDir = Just "target"
+  ,hiDir = Just "target"
+  ,verbosity = 1
+  ,ghcLink = NoLink
+  ,packageFlags = map ExposePackage packagesToExpose 
+  } 
+
+-- * Helper methods
+
+getCompileOptions :: BuildInfo -> [String]
+getCompileOptions myLibBuildInfo = ghcOptions ++ ghcExtensions
+ where ghcOptions = fromMaybe [] $ lookup GHC (options myLibBuildInfo)
+       ghcExtensions = map (\a -> "-X"++ show a) (extensions myLibBuildInfo)
+
+getLibDependencies :: BuildInfo -> [String]
+getLibDependencies bi = map getPackageName $ targetBuildDepends bi 
+
+getPackageName :: Dependency -> String
+getPackageName (Dependency (PackageName pn) _) = pn
+
+convertModuleNameToString :: ModuleName -> String
+convertModuleNameToString modName
+ | null modArr = ""
+ | otherwise = foldr1 (\w s -> w ++ '.':s) modArr
+   where modArr = components modName 
+
+
+-- | Check and filter all invalid main definission
+checkInvalidMain :: ShakerInput -> IO ShakerInput 
+checkInvalidMain shIn = mapM checkInvalidMain' (compileInputs shIn) >>= \newCplInp ->
+  return $ shIn {compileInputs = newCplInp  }
+
+checkInvalidMain' :: CompileInput -> IO CompileInput
+checkInvalidMain' cplInput
+ | any (".hs" `isSuffixOf`) oldTargets = do
+    newTargets <- filterM doesFileExist oldTargets
+    return cplInput {cfTargetFiles = newTargets}
+ | otherwise = return cplInput
+  where oldTargets = cfTargetFiles cplInput
+
+
+
diff --git a/src/Shaker/Cli.hs b/src/Shaker/Cli.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker/Cli.hs
@@ -0,0 +1,73 @@
+-- | Command line manager
+-- This manager will listen to the standard input as soon as the MVar token is filled.
+-- Then, it will fill another MVar (input) with the parsed command.
+-- Autocompletion is supported throught haskeline configuration.
+module Shaker.Cli(
+  getInput
+  ,listActions
+  ,InputState(..)
+)
+ where
+
+import Shaker.Parser
+import Shaker.Type
+import Control.Concurrent
+import Control.Monad.Trans
+import System.Console.Haskeline
+import qualified Data.Map as M
+import Data.List
+import Control.Monad.Reader
+ 
+-- | The input mvar is used to push the parsed command
+type Input = MVar Command
+-- | Token is used to manage the token between action executor and command-line listener
+type Token = MVar Int
+
+data InputState = InputState {  
+  input :: Input,
+  token :: Token
+}
+
+-- | Listen to keyboard input and parse command
+getInput :: InputState -> Shaker IO()
+getInput inSt = do
+        shIn <- ask 
+        lift $ runInputT (myDefaultSettings shIn) $ processInput shIn inSt
+
+-- | Execute the entered command 
+processInput :: ShakerInput ->  InputState -> InputT IO()
+processInput shIn (InputState inputMv tokenMv) = do
+  _ <- lift $ takeMVar tokenMv 
+  minput <- getInputLine "% "
+  case minput of 
+     Nothing -> return()
+     Just str -> lift $ tryPutMVar inputMv (parseCommand shIn str) >> return() 
+
+-- * Auto-completion management 
+
+-- | Settings for haskeline
+myDefaultSettings :: MonadIO m => ShakerInput-> Settings m
+myDefaultSettings shIn = Settings {
+  complete = completeAction shIn,
+  historyFile = Nothing,
+  autoAddHistory = True
+}
+
+completeAction :: Monad m => ShakerInput -> CompletionFunc m
+completeAction shIn = completeWord (Just '\\') "\"'~" (listActions shIn)
+
+listActions :: Monad m => ShakerInput -> String -> m [Completion]
+listActions shIn str = return $ autocompleteFunction (commandMap shIn) str
+
+autocompleteFunction :: CommandMap  -> String -> [Completion]
+autocompleteFunction cmdMap [] = map simpleCompletion $ M.keys cmdMap
+autocompleteFunction cmdMap cliInput = map simpleCompletion  compleListProp
+  where inpWords = words cliInput
+        lastWord = last inpWords 
+        listProp = filter (lastWord `isPrefixOf`) $ M.keys cmdMap
+        commonPref = unwords (init inpWords)
+        compleListProp = trimList $ map  (\a -> commonPref ++ " " ++ a) listProp
+
+trimList :: [String] -> [String]
+trimList = map (dropWhile (== ' '))
+
diff --git a/src/Shaker/Conductor.hs b/src/Shaker/Conductor.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker/Conductor.hs
@@ -0,0 +1,66 @@
+-- | Conductor is responsible to control the command-line listener, 
+-- the listener manager and the action to execute
+module Shaker.Conductor(
+ initThread
+)
+  where
+
+import Shaker.Type
+import Control.Monad
+import Control.Concurrent
+import Shaker.Listener
+import Shaker.Cli
+import qualified Data.Map as M
+import Control.Monad.Reader
+import Data.Maybe
+ 
+-- | Initialize the master thread 
+-- Once the master thread is finished, all input threads are killed
+initThread :: InputState -> Shaker IO()
+initThread inputState = do
+  act <- asks $ runReaderT (getInput inputState) 
+  procId <- lift $ forkIO $ forever act
+  mainThread inputState 
+  lift $ killThread procId
+ 
+-- | The main thread. 
+-- Loop until a Quit action is called
+mainThread :: InputState -> Shaker IO()
+mainThread st@(InputState inputMv tokenMv) = do
+  _ <- lift $ tryPutMVar tokenMv 42
+  cmd <- lift $ takeMVar inputMv
+  executeCommand cmd  
+  case cmd of
+       Command _ [Quit] -> return ()
+       _ ->  mainThread st
+
+-- | Continuously execute the given action until a keyboard input is done
+listenManager :: Shaker IO() -> Shaker IO()
+listenManager fun = do
+  shIn <- ask 
+  lift $ action shIn 
+  where action shIn = do
+          -- Setup keyboard listener
+          endToken <- newEmptyMVar 
+          procCharListener <- forkIO $ getChar >>= putMVar endToken
+          -- Setup source listener
+          listenState <- initialize (listenerInput shIn)
+          -- Run the action
+          procId <-  forkIO $ forever $ threadExecutor listenState (runReaderT fun shIn)
+          _ <- readMVar endToken 
+          mapM_ killThread  $  [procId,procCharListener] ++ threadIds listenState
+  
+-- | Execute the given action when the modified MVar is filled
+threadExecutor :: ListenState -> IO() -> IO ThreadId
+threadExecutor listenState fun = takeMVar (modifiedFiles listenState) >> forkIO fun 
+
+-- | Execute Given Command in a new thread
+executeCommand :: Command -> Shaker IO()
+executeCommand (Command OneShot act) = executeAction act 
+executeCommand (Command Continuous act) = listenManager ( executeAction act ) >> return () 
+
+-- | Execute given action
+executeAction :: [Action] -> Shaker IO()
+executeAction acts = do
+   thePluginMap <- asks pluginMap
+   sequence_ $ mapMaybe (`M.lookup` thePluginMap) acts 
diff --git a/src/Shaker/Config.hs b/src/Shaker/Config.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker/Config.hs
@@ -0,0 +1,57 @@
+-- | Contains the default configuration of shaker
+module Shaker.Config
+ where
+
+import Shaker.Type
+import Shaker.PluginConfig
+import Shaker.Io(FileListenInfo(..),defaultHaskellPatterns)
+import Shaker.Cli(InputState(..))
+import DynFlags
+import Control.Concurrent
+
+
+defaultInput ::ShakerInput  
+defaultInput = ShakerInput {
+  compileInputs = [defaultCompileInput],
+  listenerInput = defaultListenerInput,
+  pluginMap = defaultPluginMap,
+  commandMap = defaultCommandMap
+  }
+
+-- | Default compilation argument.
+-- Wall is activated by default
+defaultCompileInput :: CompileInput
+defaultCompileInput = CompileInput {
+  cfSourceDirs= ["src/","testsuite/tests/"]
+  ,cfDescription = "Default Compilation"
+  ,cfCompileTarget =  "target"  
+  ,cfDynFlags = defaultCompileFlags  
+  ,cfCommandLineFlags = ["-Wall"]
+  ,cfTargetFiles = []
+}
+
+-- | default dynamics flags
+-- the sources are expected to be in src as described in <http://www.haskell.org/haskellwiki/structure_of_a_haskell_project>
+-- the result of compilation (.o and .hi) are placed in the target/ directory
+-- there is no main linkage by default to allow faster compilation feedback
+defaultCompileFlags :: (DynFlags -> DynFlags)
+defaultCompileFlags = \a-> a  {
+    verbosity = 1
+    ,ghcLink = NoLink
+} 
+
+-- | The default Listener configuration
+-- Listened sources are all haskell sources in src/ and testsuite/
+-- The default delay is 2 sec
+defaultListenerInput :: ListenerInput                                   
+defaultListenerInput = ListenerInput {
+    fileListenInfo= [FileListenInfo "src/" [] defaultHaskellPatterns, FileListenInfo "testsuite/" [] defaultHaskellPatterns ]
+    ,delay = 2000000
+    }
+
+defaultInputState :: IO InputState
+defaultInputState = do
+  inputMv <- newEmptyMVar 
+  tokenMv <- newEmptyMVar  
+  return InputState { input = inputMv, token =  tokenMv } 
+
diff --git a/src/Shaker/Io.hs b/src/Shaker/Io.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker/Io.hs
@@ -0,0 +1,96 @@
+module Shaker.Io(
+  listModifiedAndCreatedFiles
+  ,getCurrentFpCl
+  ,recurseMultipleListFiles
+  ,listFiles
+  ,recurseListFiles 
+  ,FileInfo(FileInfo)
+  ,FileListenInfo(..)
+  ,isFileContaining
+  ,isFileContainingMain
+  ,defaultHaskellPatterns
+  ,defaultExclude
+)
+ where
+ 
+import qualified Data.ByteString.Lazy.Char8 as L 
+import Control.Monad
+import System.Directory
+import Data.List
+import Shaker.Regex
+import System.Time
+
+-- | Represents directory to listen 
+data FileListenInfo = FileListenInfo{
+  dir :: FilePath     -- ^ location of the listened directory
+  ,ignore :: [String] -- ^ ignore patterns
+  ,include :: [String] -- ^include patterns
+  }
+  deriving (Show,Eq)
+
+-- |Agregate a FilePath with its modification time
+data FileInfo = FileInfo FilePath ClockTime 
+  deriving (Show,Eq)
+
+-- |Get the tuples of (newFiles,modifiedFiles) from given list of directory
+listModifiedAndCreatedFiles :: [FileListenInfo] -> [FileInfo] -> IO ([FileInfo],[FileInfo])
+listModifiedAndCreatedFiles job curFiles = do
+   lstNewAndModifier <- mapM (`listModifiedAndCreatedFiles'` curFiles) job
+   return $ foldl1 (\(a,b) (c,d) -> (a++c,b++d)) lstNewAndModifier
+   
+-- |Get the tuples of (newFiles,modifiedFiles) from given directory
+listModifiedAndCreatedFiles' :: FileListenInfo -> [FileInfo] -> IO([FileInfo],[FileInfo])
+listModifiedAndCreatedFiles' fileListen oldFileInfo = do
+  curFileInfo <- getCurrentFpCl fileListen
+  return (curFileInfo, curFileInfo \\ oldFileInfo)
+
+-- |Get the list of FileInfo of the given directory
+getCurrentFpCl :: FileListenInfo -> IO [FileInfo]
+getCurrentFpCl fileListen = do 
+      lstFp <- recurseListFiles fileListen 
+      lstCl <- mapM getModificationTime lstFp 
+      zipWithM (\a b->return (FileInfo a b)) lstFp lstCl
+                  
+-- |List files in the given directory 
+-- Files matching one regexp in the ignore argument are excluded
+listFiles :: FileListenInfo -> IO[FilePath]
+listFiles (FileListenInfo inputDir inputIgnore inputInclude) = do
+    curDir <- canonicalizePath inputDir 
+    res <- getDirectoryContents curDir
+    return $ filteredList curDir res
+    where filteredList curDir res = processListWithRegexp (convertToFullPath curDir res) inputIgnore inputInclude
+
+recurseMultipleListFiles :: [FileListenInfo] -> IO [FilePath]
+recurseMultipleListFiles flis = liftM concat $ mapM recurseListFiles flis
+
+-- | Recursively list all files
+recurseListFiles :: FileListenInfo -> IO [FilePath]
+recurseListFiles fli@(FileListenInfo inputDir _ _) = do
+  curDir <- canonicalizePath inputDir
+  content <- getDirectoryContents curDir
+  directories <- filterM doesDirectoryExist (convertToFullPath curDir (removeDotDirectory content) ) 
+  sub <- mapM (\a -> recurseListFiles fli{dir=a}) directories
+  curListFiles <-  listFiles fli
+  return $ curListFiles ++ concat sub
+
+isFileContainingMain :: FilePath -> IO Bool
+isFileContainingMain fp = isFileContaining fp (L.pack "main" `L.isPrefixOf`)
+
+isFileContaining :: FilePath -> (L.ByteString -> Bool) -> IO Bool
+isFileContaining fp pat = do
+   byStr <- L.readFile fp
+   return $ any pat $ L.lines byStr
+
+
+convertToFullPath :: FilePath -> [FilePath] -> [FilePath]
+convertToFullPath absDir = map (\a-> concat [absDir, "/",a]) 
+
+removeDotDirectory :: [String] -> [String]
+removeDotDirectory = filter (not . isSuffixOf "."  ) 
+
+defaultHaskellPatterns :: [String]
+defaultHaskellPatterns = [".*\\.hs$"]
+
+defaultExclude :: [String]
+defaultExclude =  [".*Setup\\.hs$"]
+
diff --git a/src/Shaker/Listener.hs b/src/Shaker/Listener.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker/Listener.hs
@@ -0,0 +1,65 @@
+module Shaker.Listener(
+  listen
+  ,initialize
+  ,schedule
+  ,updateFileStat
+  ,ListenState(ListenState,threadIds,modifiedFiles,currentFiles)
+)
+where
+
+import Control.Monad
+import Control.Concurrent.MVar
+import Control.Concurrent
+import Shaker.Type
+import Shaker.Io
+
+-- | MVar used to store currentFiles listed
+type CurrentFiles = MVar [FileInfo]
+-- | MVar used to store modifiedFiles since the last check
+type ModifiedFiles = MVar [FileInfo]
+-- | MVar used to pass action to the directory scanner
+type Job = MVar [FileListenInfo]
+
+-- | Agregate all information of listener
+data ListenState = ListenState {
+  currentFiles :: CurrentFiles  -- ^ Files found in the last check
+  ,modifiedFiles :: ModifiedFiles -- ^ Differences between last and before last check
+  ,threadIds :: [ThreadId] -- ^ List of all forks id initialized
+}
+
+-- | initialize the mvar and launch forks
+initialize :: ListenerInput -> IO ListenState
+initialize lstInput = do
+  mC <- newMVar [] 
+  mM <- newEmptyMVar
+  mJ <- newEmptyMVar 
+  idLst <- forkIO $ forever $ listen mC mM mJ
+  idSch <- forkIO $ forever $ schedule lstInput mJ
+  return $ ListenState mC mM [idLst,idSch]
+
+-- | manage the job box. Fill it with a job every delay
+schedule :: ListenerInput -> Job -> IO()
+schedule lstInput mJ = do
+  putMVar mJ $ fileListenInfo lstInput
+  threadDelay $ delay lstInput
+  return ()
+     
+-- | listen to the job box and process the job
+listen :: CurrentFiles -> ModifiedFiles -> Job -> IO ()
+listen mC mM mJ = do 
+  job <- takeMVar mJ
+  curFiles <- readMVar mC 
+  (newFiles,modFiles) <- listModifiedAndCreatedFiles job curFiles
+  updateFileStat mC mM newFiles modFiles 
+  return ()
+
+-- | Update the files status
+updateFileStat :: CurrentFiles -> ModifiedFiles -> [FileInfo] -> [FileInfo] -> IO ()
+updateFileStat _ _ _ [] = return ()
+updateFileStat mC mM curFiles curMod = do
+  _ <- swapMVar mC curFiles 
+  putMVar mM curMod 
+  return()  
+
+
+
diff --git a/src/Shaker/Parser.hs b/src/Shaker/Parser.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker/Parser.hs
@@ -0,0 +1,43 @@
+module Shaker.Parser(
+  parseCommand
+)
+ where
+
+import Text.ParserCombinators.Parsec
+import Shaker.Type
+import qualified Data.Map as M
+
+-- | Parse the given string to a Command
+parseCommand :: ShakerInput -> String -> Command
+parseCommand shIn str = 
+  case (parse (typeCommand $ commandMap shIn) "parseCommand" str) of
+    Left _ -> Command OneShot [Help]
+    Right val -> val
+
+-- | Parse a Command
+typeCommand :: CommandMap -> GenParser Char st Command
+typeCommand cmMap = typeDuration >>= \dur ->
+  typeMultipleAction cmMap >>= \acts ->
+  return (Command dur acts)
+
+
+typeMultipleAction :: CommandMap -> GenParser Char st [Action]
+typeMultipleAction cmMap = many (typeAction cmMap) >>= \res ->
+  case res of 
+       [] -> return [Help]
+       _ -> return res
+
+-- | Parse to an action
+typeAction :: CommandMap -> GenParser Char st Action
+typeAction cmMap = skipMany (char ' ') >>
+  choice (parseMapAction cmMap)  >>= \res ->
+  skipMany (char ' ') >> return res
+
+-- | Parse the continuous tag (~)
+typeDuration :: GenParser Char st Duration
+typeDuration = skipMany (char ' ') >>
+  option OneShot (char '~' >> return Continuous)
+
+parseMapAction :: CommandMap -> [GenParser Char st Action]
+parseMapAction cmMap = map (\(k,v) -> try (string k) >> return v) (M.toList cmMap)
+
diff --git a/src/Shaker/PluginConfig.hs b/src/Shaker/PluginConfig.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker/PluginConfig.hs
@@ -0,0 +1,33 @@
+-- | Register available actions and how they will be called
+module Shaker.PluginConfig
+ where
+
+import qualified Data.Map as M (fromList)
+import Shaker.Type
+import Shaker.Action.Compile
+import Shaker.Action.Clean
+import Shaker.Action.Standard
+
+-- | The default plugin map contains mapping for compile, help and exit action 
+defaultPluginMap :: PluginMap
+defaultPluginMap = M.fromList $ map (\(a,b) -> (a, runStartAction >> b >> runEndAction)) list
+  where list = [
+                (Compile,runCompile ),
+                (FullCompile,runFullCompile ),
+                (Help,runHelp),
+                (Clean,runClean),
+                (Quit,runExit)
+              ]
+
+defaultCommandMap :: CommandMap 
+defaultCommandMap = M.fromList list
+  where list = [
+            ("Compile",Compile),
+            ("FullCompile",FullCompile),
+            ("Help", Help),
+--            ("QuickCheck",QuickCheck),
+            ("Clean",Clean),
+            ("q",Quit),
+            ("Quit",Quit)
+          ]
+
diff --git a/src/Shaker/Regex.hs b/src/Shaker/Regex.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker/Regex.hs
@@ -0,0 +1,20 @@
+module Shaker.Regex
+where
+
+import Text.Regex.Posix
+import Data.List
+
+processListWithRegexp :: [String] -> [String] -> [String] -> [String]
+processListWithRegexp list [] [] = list
+processListWithRegexp list ignore [] = nub $ list \\ getExcluded list ignore 
+processListWithRegexp list [] include = nub $ getIncluded list include
+processListWithRegexp list ignore include = 
+  nub $ getIncluded list include \\ getExcluded list ignore 
+
+getExcluded :: [String] -> [String] -> [String]
+getExcluded list patterns = filter funExclude list
+ where funExclude el = any (el =~) patterns
+
+getIncluded :: [String] -> [String] -> [String]
+getIncluded list patterns = filter funInclude list
+  where funInclude el = any (el =~) patterns
diff --git a/src/Shaker/Type.hs b/src/Shaker/Type.hs
new file mode 100644
--- /dev/null
+++ b/src/Shaker/Type.hs
@@ -0,0 +1,66 @@
+module Shaker.Type
+ where
+
+import DynFlags(DynFlags)
+import Shaker.Io(FileListenInfo)
+import qualified Data.Map as M
+import Control.Monad.Reader
+
+type Shaker  = ReaderT ShakerInput 
+
+-- | Duration define the life span of an action
+data Duration = 
+	OneShot     -- ^Execute the action and give back control
+	| Continuous-- ^Execute the action when a source file modification is done until it is stopped
+	deriving (Show,Eq)
+
+-- | Action represents the differents actions realisable by shaker
+data Action = 
+	Compile -- ^ Compile sources with ghc
+	| FullCompile -- ^ Compile all hs sources with ghc
+	| QuickCheck -- ^ Execute quickcheck properties
+	| Help -- ^ Display the help
+	| Quit -- ^ Exit shaker
+	| Clean -- ^ Delete generated 
+  deriving (Show,Eq,Ord)
+
+-- | Command agregate a duration with an action
+data Command = Command Duration [Action]
+  deriving (Show,Eq)
+
+-- | Represents the global configuration of the system
+data ShakerInput = ShakerInput {
+  compileInputs :: [CompileInput]
+  ,listenerInput :: ListenerInput
+  ,pluginMap :: PluginMap
+  ,commandMap :: CommandMap
+}
+  
+-- | Configuration flags to pass to the ghc compiler
+data CompileInput = CompileInput{
+  cfSourceDirs :: [String] -- ^ Source directory of haskell files
+  ,cfDescription :: String -- ^ Desctipition of the compile input (executable or library if comming from cabal)
+  ,cfCompileTarget :: String  -- ^ Destination of .o and .hi files
+  ,cfDynFlags :: (DynFlags->DynFlags) -- ^ A transform fonction wich will takes the DynFlags of the current ghc session and change some values
+  ,cfCommandLineFlags :: [String]  -- ^ The command line to pass options to pass to the ghc compiler
+  ,cfTargetFiles :: [String] -- ^ List of files or list of modules to compile
+}
+
+instance Show CompileInput 
+ where show (CompileInput src desc _ _ commandLine target) = 
+         concat ["CompileInput |source : ",show src," |desc : ",desc," |cmdLine : ",show commandLine," |targetfiles : ", show target]
+
+-- | Configuration of the continuous listener
+data ListenerInput = ListenerInput {
+  fileListenInfo :: [FileListenInfo] -- ^ The files to listen
+  ,delay :: Int  -- ^ Delay beetween 2 check in microsecond
+}
+  
+-- | Represents the mapping beetween an action and the function to execute
+type PluginMap = M.Map Action Plugin
+-- | Represents the mapping between the command-line input and the action
+type CommandMap = M.Map String Action 
+-- | Represents an action of shaker
+type Plugin = Shaker  IO()
+
+
diff --git a/testsuite/tests/RunTest.hs b/testsuite/tests/RunTest.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/RunTest.hs
@@ -0,0 +1,58 @@
+module Main
+ where
+import Shaker.Cabal.CabalInfoTest
+import Shaker.Action.CompileTest
+import Shaker.CliTest
+import Shaker.ListenerTest
+import Shaker.ParserTest
+import Shaker.RegexTest
+import Shaker.IoTest
+import Test.QuickCheck
+import Test.HUnit
+import Control.Monad.Trans
+
+main :: IO()
+main = do 
+  mapM_ liftIO propLists
+  mapM_ liftIO testLists
+
+propLists :: [IO()]
+propLists =[ 
+    putStrLn "prop_completeWord ">> quickCheck prop_completeWord,
+    putStrLn "prop_partialWords ">> quickCheck prop_partialWords,
+    putStrLn "prop_completeMultipleWords ">> quickCheck prop_completeMultipleWords,
+    putStrLn "prop_partialMultipleWords ">> quickCheck prop_partialMultipleWords,
+    putStrLn "prop_listFiles ">> quickCheck prop_listFiles,
+    putStrLn "prop_listFilesWithIgnoreAll ">> quickCheck prop_listFilesWithIgnoreAll,
+    putStrLn "prop_listFilesWithIgnore ">> quickCheck prop_listFilesWithIgnore,
+    putStrLn "prop_listFilesWithIncludeAll ">> quickCheck prop_listFilesWithIncludeAll,
+    putStrLn "prop_listModifiedFiles ">> quickCheck prop_listModifiedFiles,
+    putStrLn "prop_listCreatedFiles ">> quickCheck prop_listCreatedFiles,
+    putStrLn "prop_listModifiedAndCreatedFiles ">> quickCheck prop_listModifiedAndCreatedFiles,
+    putStrLn "prop_updateFileStat ">> quickCheck prop_updateFileStat,
+    putStrLn "prop_schedule ">> quickCheck prop_schedule,
+    putStrLn "prop_listen ">> quickCheck prop_listen,
+    putStrLn "prop_parseDefaultAction ">> quickCheck prop_parseDefaultAction,
+    putStrLn "prop_parseCommand ">> quickCheck prop_parseCommand,
+    putStrLn "prop_filterListAll ">> quickCheck prop_filterListAll,
+    putStrLn "prop_filterListNone ">> quickCheck prop_filterListNone,
+    putStrLn "prop_filterListPartial ">> quickCheck prop_filterListPartial,
+    putStrLn "prop_includeAll ">> quickCheck prop_includeAll,
+    putStrLn "prop_getIncludedAll_all ">> quickCheck prop_getIncludedAll_all,
+    putStrLn "prop_getIncludedAll_none ">> quickCheck prop_getIncludedAll_none
+  ]
+
+testLists :: [IO Counts]
+testLists = [
+   putStrLn "testRunCompileProject" >> runTestTT testRunCompileProject,
+   putStrLn "testParseCabalConfig " >> runTestTT testParseCabalConfig ,
+   putStrLn "testInvalidMainShouldBeExcluded " >> runTestTT testInvalidMainShouldBeExcluded ,
+   putStrLn "testCompileWithLocalSource " >> runTestTT testCompileWithLocalSource ,
+   putStrLn "testProjectCabalContentWithLocalSource " >> runTestTT testProjectCabalContentWithLocalSource ,
+   putStrLn "testRecurseListFiles " >> runTestTT testRecurseListFiles ,
+   putStrLn "testListFiles " >> runTestTT testListFiles ,
+   putStrLn "testListHsFiles " >> runTestTT testListHsFiles ,
+   putStrLn "testIsFileContainingMain " >> runTestTT testIsFileContainingMain ,
+   putStrLn "testIsFileNotContainingMain " >> runTestTT testIsFileNotContainingMain 
+  ]
+
diff --git a/testsuite/tests/Shaker/Action/CompileTest.hs b/testsuite/tests/Shaker/Action/CompileTest.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/Shaker/Action/CompileTest.hs
@@ -0,0 +1,26 @@
+module Shaker.Action.CompileTest
+ where
+
+import Shaker.Action.Compile
+import Test.HUnit
+import System.Directory
+import Shaker.Config 
+import Control.Monad.Reader
+import Shaker.Type
+  
+testRunCompileProject :: Test
+testRunCompileProject = TestCase $ 
+  runReaderT runCompile  testInputShaker  >> 
+  getDirectoryContents "target/Shaker" >>= \cont ->
+  doesFileExist "target/Shaker/Action/CompileTest.o" >>= \ex ->
+  doesFileExist "target/Shaker/Action/CompileTest.hi" >>= \ex2 ->
+  assertBool ("File .o and hi should exists "++ show cont) (ex && ex2)
+
+testInputShaker :: ShakerInput
+testInputShaker = defaultInput {
+  compileInputs = [defaultCompileInput {
+       cfCommandLineFlags = ["-package ghc"]
+     }]
+}
+
+  
diff --git a/testsuite/tests/Shaker/Cabal/CabalInfoTest.hs b/testsuite/tests/Shaker/Cabal/CabalInfoTest.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/Shaker/Cabal/CabalInfoTest.hs
@@ -0,0 +1,65 @@
+module Shaker.Cabal.CabalInfoTest
+ where 
+
+import Control.Monad.Reader
+import System.Directory
+import Shaker.Action.Compile
+import Shaker.Action.Clean
+import Shaker.Type
+import Shaker.Io
+import Test.HUnit
+import Control.Exception
+import Shaker.Cabal.CabalInfo
+import GHC(DynFlags(DynFlags))
+import DynFlags(
+    DynFlags, verbosity, ghcLink, packageFlags, outputFile, hiDir, objectDir ,importPaths
+    ,PackageFlag (ExposePackage)
+    ,GhcLink (NoLink)
+  )
+
+testParseCabalConfig :: Test
+testParseCabalConfig = TestCase $ runTestOnDirectory "testsuite/tests/resources/cabalTest" $ do  
+  shIn <- defaultCabalInput
+  let cplInps@(cplLib:cplExe:[]) = compileInputs shIn
+  length cplInps == 2 @? "Should have two compile input, one executable and one library, got "++ show ( length cplInps)
+  cfSourceDirs cplLib == ["src"] @? "source dir should be src, got " ++ show (cfSourceDirs cplLib)
+  cfCommandLineFlags cplLib == ["-Wall"] @? "command line flags should be -Wall, got " ++ show ( cfCommandLineFlags cplLib)
+  cfTargetFiles cplLib == ["CabalTest"]  @? "targetFiles should be CabalTest, got "++ show ( cfTargetFiles cplLib)
+  cfTargetFiles cplExe == ["src/Main.hs"]  @? "targetFiles should be src/Main.hs, got "++ show ( cfTargetFiles cplExe)
+  let dFlags = cfDynFlags cplExe DynFlags{}
+  importPaths dFlags == ["src"] @? "importPaths should be src, got "++ show (importPaths dFlags)
+  packageFlags dFlags == [ExposePackage "ghc"] @? "Expected : ExposePackage ghc. No show instance so figure it yourself... (/me being lazy)" 
+  let (ListenerInput (flLib:[]) _) = listenerInput shIn
+  dir flLib == "src" @? "Expected : src, got " ++ show  flLib
+
+testInvalidMainShouldBeExcluded :: Test
+testInvalidMainShouldBeExcluded = TestCase $ runTestOnDirectory "testsuite/tests/resources/invalidMain" $ do
+ shIn <- defaultCabalInput
+ let (cplExe:[]) = compileInputs shIn
+ cfTargetFiles cplExe == ["src/Main.hs"] @? "since tests/Main.hs is invalid, should have only src/Main.hs, got " ++ show (cfTargetFiles cplExe)
+
+testCompileWithLocalSource :: Test
+testCompileWithLocalSource = TestCase $ runTestOnDirectory "testsuite/tests/resources/noSourceConfig" $ do
+ shIn <- defaultCabalInput
+ runReaderT runCompile shIn
+ ex <- doesFileExist "target/Main.o" 
+ runReaderT runClean shIn
+ ex2 <- doesFileExist "target/Main.o" 
+ ex && not ex2 @? "file main should exist and be cleaned"
+
+
+testProjectCabalContentWithLocalSource :: Test
+testProjectCabalContentWithLocalSource = TestCase $
+    runTestOnDirectory "testsuite/tests/resources/noSourceConfig" $ do
+    shIn <- defaultCabalInput
+    let cplInps@(cplInp:_) = compileInputs shIn
+    length cplInps == 1 @? "Should have one compile input, got "++ show (length cplInps)
+    let targs = cfTargetFiles cplInp
+    targs == ["./noHsSource.hs"] @? "Expected [\"./noHsSource.hs\"] got " ++ show cplInp
+
+runTestOnDirectory :: FilePath -> Assertion -> Assertion
+runTestOnDirectory fp fun = do
+  oldDir <- getCurrentDirectory 
+  setCurrentDirectory fp
+  finally fun (setCurrentDirectory oldDir)
+
diff --git a/testsuite/tests/Shaker/CliTest.hs b/testsuite/tests/Shaker/CliTest.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/Shaker/CliTest.hs
@@ -0,0 +1,46 @@
+module Shaker.CliTest
+ where
+
+import Control.Monad
+import Test.QuickCheck 
+import Test.QuickCheck.Monadic
+import Shaker.Type
+import Shaker.Cli
+import Shaker.Config
+import Shaker.Properties()
+import System.Console.Haskeline.Completion
+
+instance Arbitrary Action where
+  arbitrary = elements [Compile,Quit,Help]
+
+data ActionInt = ActionInt Action Int
+  deriving (Show)
+instance Arbitrary ActionInt where
+  arbitrary = ActionInt `liftM` arbitrary
+                        `ap` elements [1..6]
+
+checkRes :: Monad m => String -> String -> PropertyM m ()
+checkRes incomplete expected = do
+  proposedActions <- listActions defaultInput incomplete
+  assert $ any (\a -> replacement a == expected) proposedActions
+
+prop_completeWord :: Action -> Property
+prop_completeWord act = monadicIO $ checkRes str str 
+  where str = show act
+
+prop_partialWords :: ActionInt -> Property
+prop_partialWords (ActionInt act num) = monadicIO $ checkRes incomplete strAct 
+  where strAct = show act 
+        incomplete = take num strAct
+
+prop_completeMultipleWords :: [Action] -> Property
+prop_completeMultipleWords acts = (not . null) acts ==> monadicIO $ checkRes cliInput cliInput 
+  where cliInput = unwords (map show acts)
+
+prop_partialMultipleWords :: [Action] -> ActionInt -> Property
+prop_partialMultipleWords acts (ActionInt act num) = (not . null) acts ==> monadicIO $ checkRes cliInput expected
+  where cliInput = strActs ++ " " ++ take num strAct
+        strAct = show act 
+        strActs =unwords $ map show acts 
+        expected = unwords [strActs,strAct] 
+
diff --git a/testsuite/tests/Shaker/ConductorTest.hs b/testsuite/tests/Shaker/ConductorTest.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/Shaker/ConductorTest.hs
@@ -0,0 +1,5 @@
+module Shaker.ConductorTest
+ where
+
+import Shaker.Conductor
+
diff --git a/testsuite/tests/Shaker/IoTest.hs b/testsuite/tests/Shaker/IoTest.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/Shaker/IoTest.hs
@@ -0,0 +1,84 @@
+module Shaker.IoTest
+ where
+
+import Shaker.Io
+import System.Time
+import Data.List
+import Test.QuickCheck 
+import Test.QuickCheck.Monadic 
+import Test.HUnit hiding (assert)
+
+aTimeDiff :: TimeDiff
+aTimeDiff = TimeDiff { tdYear = 0, tdMonth = 0, tdDay = 0, tdHour =0, tdMin=0, tdSec = -1, tdPicosec =0 }
+
+modifyFileInfoClock :: FileInfo -> FileInfo
+modifyFileInfoClock (FileInfo fp cl) = FileInfo fp (addToClockTime aTimeDiff cl)
+
+abstractTestListFiles :: FileListenInfo -> ([FilePath] -> [FilePath] -> Bool) -> Property
+abstractTestListFiles fli predicat = monadicIO action
+  where action = do
+               lstFile <- run $ listFiles fli{ignore= []}
+               r <- run $listFiles fli
+               assert $ predicat lstFile r 
+
+prop_listFiles :: FileListenInfo -> Property
+prop_listFiles fli = abstractTestListFiles fli{ignore=[]} (\_ b -> length b>2)
+
+prop_listFilesWithIgnoreAll :: FileListenInfo -> Property
+prop_listFilesWithIgnoreAll fli = abstractTestListFiles fli{ignore= [".*"], include=[]} (\_ b -> b==[])
+
+prop_listFilesWithIgnore :: FileListenInfo -> Property
+prop_listFilesWithIgnore fli = abstractTestListFiles fli{ignore= ["\\.$"], include=[]} (\a b-> length a == length b + 2)
+
+prop_listFilesWithIncludeAll :: FileListenInfo -> Property
+prop_listFilesWithIncludeAll fli = abstractTestListFiles fli{include=[".*"]} (\a b->length a >= length b)
+
+testModifiedFiles :: FileListenInfo -> ([FileInfo] -> [FileInfo]) -> ([FileInfo] -> [FileInfo] ->Bool) -> Property
+testModifiedFiles fli proc predicat= monadicIO action
+  where action = do 
+               curList <- run $ getCurrentFpCl fli 
+               (_,newList) <- run $ listModifiedAndCreatedFiles [fli] (proc curList)
+               assert $ predicat curList newList 
+
+prop_listModifiedFiles :: FileListenInfo -> Property
+prop_listModifiedFiles fli = 
+  testModifiedFiles fli (map modifyFileInfoClock) (\a b -> length a == length b)
+
+prop_listCreatedFiles :: FileListenInfo -> Property
+prop_listCreatedFiles fli = 
+  testModifiedFiles fli init (\_ b -> length b==1)
+
+prop_listModifiedAndCreatedFiles :: FileListenInfo -> Property
+prop_listModifiedAndCreatedFiles fli = 
+  testModifiedFiles fli (map modifyFileInfoClock . init) (\a b -> length a == length b)
+
+testRecurseListFiles :: Test
+testRecurseListFiles = TestCase $ 
+  recurseListFiles (FileListenInfo "." ["\\.$"] []) >>= \res ->
+  assertBool ("Should contains IoTest.hs file "++show res) $
+    any ("IoTest.hs" `isSuffixOf`) res
+  
+testListFiles :: Test
+testListFiles = TestCase $ 
+  listFiles (FileListenInfo "." [] []) >>= \res ->
+  assertBool ("Should contains src dir"++show res) $
+    any ("src" `isSuffixOf`) res
+  
+testListHsFiles :: Test
+testListHsFiles = TestCase $
+  recurseListFiles (FileListenInfo "." [] [".*\\.hs$"]) >>= \res ->
+  assertBool ("Should only contains hs files " ++ show res) $
+    all (".hs" `isSuffixOf`) res
+
+testIsFileContainingMain :: Test
+testIsFileContainingMain = TestCase $ do
+  res <- isFileContainingMain "src/Shaker.hs" 
+  assertBool "File Shaker.hs should contain main methods" res
+
+testIsFileNotContainingMain :: Test
+testIsFileNotContainingMain = TestCase $ do
+  res <- isFileContainingMain "src/Shaker/Config.hs"
+  assertBool "File Config.hs should not contain main methods" $ not res
+
+
+
diff --git a/testsuite/tests/Shaker/ListenerTest.hs b/testsuite/tests/Shaker/ListenerTest.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/Shaker/ListenerTest.hs
@@ -0,0 +1,38 @@
+module Shaker.ListenerTest
+where
+
+import Control.Concurrent
+import Shaker.Listener
+import Shaker.Properties()
+import Test.QuickCheck 
+import Test.QuickCheck.Monadic 
+import Shaker.Type
+import Shaker.Io
+
+prop_updateFileStat :: [FileInfo] ->[FileInfo] -> Property
+prop_updateFileStat curF curM = not (null curM) ==>
+  monadicIO $ do
+          mC <- run $ newMVar []
+          mM <- run newEmptyMVar 
+          run (updateFileStat mC mM curF curM) 
+          mCurF <- run $ readMVar mC
+          assert $  curF == mCurF
+
+prop_schedule :: FileListenInfo -> Property
+prop_schedule fli = monadicIO $ do 
+                   mJ <- run newEmptyMVar 
+  		   run $ schedule (ListenerInput [fli] 0) mJ
+  		   res <- run (tryTakeMVar mJ)
+		   assert $ res == Just [fli]
+
+prop_listen :: FileListenInfo -> Property
+prop_listen fli = monadicIO $ do
+        expected <- run $ getCurrentFpCl fli
+	mC <- run $ newMVar []
+	mM <- run newEmptyMVar 
+	mJ <- run $ newMVar [fli]
+	run $ listen mC mM mJ
+	Just res <- run $ tryTakeMVar mC
+	assert $ expected == res
+
+
diff --git a/testsuite/tests/Shaker/ParserTest.hs b/testsuite/tests/Shaker/ParserTest.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/Shaker/ParserTest.hs
@@ -0,0 +1,48 @@
+module Shaker.ParserTest
+ where
+
+import Test.QuickCheck
+import Shaker.Type
+import Shaker.Parser
+import Shaker.Config
+import Shaker.PluginConfig
+import Data.Map (toList)
+ 
+prop_parseDefaultAction :: String -> Bool
+prop_parseDefaultAction act = res == Command OneShot [Help]
+  where res = parseCommand defaultInput ('x' :act )
+
+prop_parseCommand :: CommandString -> Bool
+prop_parseCommand (CommandString str expCom) = parsed == expCom 
+  where parsed = parseCommand defaultInput str
+
+-- * Arbitrary instances 
+
+-- | Command with corresponding string to be parsed
+data CommandString = CommandString {
+        comStr :: String 
+        ,command::Command 
+} deriving (Show)
+-- | Action paired with expected string to be parsed
+data ActionString = ActionString {
+       cfActionStr :: String 
+       ,cfAction :: Action
+} deriving (Show)
+
+instance Arbitrary ActionString where
+  arbitrary = elements $ map (uncurry ActionString) (toList defaultCommandMap)
+
+instance Arbitrary CommandString where
+  arbitrary = do 
+    dur <- elements [Continuous,OneShot]
+    actionStrings <- listOf1 arbitrary
+    return CommandString {
+        comStr = getStringFromDurationAndAction dur actionStrings
+        ,command = Command dur (map cfAction actionStrings) 
+    }
+
+getStringFromDurationAndAction :: Duration -> [ActionString] -> String
+getStringFromDurationAndAction dur acts  =
+     foldl (\a b-> a ++ " " ++ cfActionStr b ++ " " ) (seed dur) acts
+     where seed Continuous = "~"
+           seed _ = ""
diff --git a/testsuite/tests/Shaker/Properties.hs b/testsuite/tests/Shaker/Properties.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/Shaker/Properties.hs
@@ -0,0 +1,33 @@
+module Shaker.Properties
+ where 
+
+import Control.Monad
+import Test.QuickCheck 
+import System.Time
+import Shaker.Type
+import Shaker.Io
+
+instance Arbitrary TimeDiff where
+   arbitrary =  TimeDiff `liftM` elements tab
+			 `ap` elements tab
+			 `ap` elements tab
+			 `ap` elements tab
+			 `ap` elements tab
+			 `ap` elements tab
+			 `ap` elements (map fromIntegral tab)
+     where tab = [1..10] 
+
+instance Arbitrary ClockTime where
+   arbitrary = TOD `liftM` elements [1..1000]
+		   `ap` elements [1..1000]
+
+instance Arbitrary FileListenInfo where 
+   arbitrary = FileListenInfo `liftM` elements ["src","testsuite"]
+			      `ap` listOf (elements ["\\.$","ab"])
+			      `ap` elements [[],[".*"]]
+
+instance Arbitrary FileInfo where
+   arbitrary = arbitrary >>= \cl ->
+               elements [".",".."] >>= \ele ->
+               return $ FileInfo ele cl
+
diff --git a/testsuite/tests/Shaker/RegexTest.hs b/testsuite/tests/Shaker/RegexTest.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/Shaker/RegexTest.hs
@@ -0,0 +1,24 @@
+module Shaker.RegexTest
+ where
+import Shaker.Regex
+import Data.List 
+
+prop_filterListAll :: [String] ->Bool
+prop_filterListAll list = processListWithRegexp list [".*"] [] == []
+
+prop_filterListNone :: [String] ->Bool
+prop_filterListNone list = processListWithRegexp list [] [] == list
+
+prop_filterListPartial :: [String] -> Bool
+prop_filterListPartial list = length list >= length filtered
+        where filtered = processListWithRegexp list ["[a-z0-9]*"] []
+
+prop_includeAll :: [String] -> Bool
+prop_includeAll list = processListWithRegexp list [] [".*"] == nub list
+
+prop_getIncludedAll_all :: [String] -> Bool
+prop_getIncludedAll_all list = getIncluded list [".*"] == list
+
+prop_getIncludedAll_none :: [String] -> Bool
+prop_getIncludedAll_none list = getIncluded list [] == []
+
diff --git a/testsuite/tests/resources/cabalTest/cabalTest.cabal b/testsuite/tests/resources/cabalTest/cabalTest.cabal
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/resources/cabalTest/cabalTest.cabal
@@ -0,0 +1,18 @@
+Name:     cabalTest
+Version:  0.0.1
+cabal-version: >= 1.8
+build-type: Simple
+
+Executable cabalTest
+  Main-Is: Main.hs
+  ghc-options: -Wall
+  hs-source-dirs: src
+  build-depends: ghc >= 6
+
+Library 
+  exposed-modules: CabalTest
+  ghc-options: -Wall
+  hs-source-dirs: src 
+  build-depends: ghc >= 6
+
+
diff --git a/testsuite/tests/resources/cabalTest/dist/setup-config b/testsuite/tests/resources/cabalTest/dist/setup-config
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/resources/cabalTest/dist/setup-config
@@ -0,0 +1,2 @@
+Saved package config for cabalTest-0.0.1 written by Cabal-1.8.0.2 using ghc-6.12
+LocalBuildInfo {installDirTemplates = InstallDirs {prefix = "/usr/local", bindir = "$prefix/bin", libdir = "$prefix/lib", 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 = [6,12,1], versionTags = []}), compilerExtensions = [(CPP,"-XCPP"),(PostfixOperators,"-XPostfixOperators"),(UnknownExtension "TupleSections","-XTupleSections"),(PatternGuards,"-XPatternGuards"),(UnicodeSyntax,"-XUnicodeSyntax"),(MagicHash,"-XMagicHash"),(PolymorphicComponents,"-XPolymorphicComponents"),(ExistentialQuantification,"-XExistentialQuantification"),(KindSignatures,"-XKindSignatures"),(EmptyDataDecls,"-XEmptyDataDecls"),(ParallelListComp,"-XParallelListComp"),(TransformListComp,"-XTransformListComp"),(ForeignFunctionInterface,"-XForeignFunctionInterface"),(UnliftedFFITypes,"-XUnliftedFFITypes"),(UnknownExtension "GHCForeignImportPrim","-XGHCForeignImportPrim"),(LiberalTypeSynonyms,"-XLiberalTypeSynonyms"),(Rank2Types,"-XRank2Types"),(RankNTypes,"-XRankNTypes"),(ImpredicativeTypes,"-XImpredicativeTypes"),(TypeOperators,"-XTypeOperators"),(RecursiveDo,"-XRecursiveDo"),(UnknownExtension "DoRec","-XDoRec"),(Arrows,"-XArrows"),(UnknownExtension "PArr","-XPArr"),(TemplateHaskell,"-XTemplateHaskell"),(QuasiQuotes,"-XQuasiQuotes"),(Generics,"-XGenerics"),(NoImplicitPrelude,"-XNoImplicitPrelude"),(RecordWildCards,"-XRecordWildCards"),(NamedFieldPuns,"-XNamedFieldPuns"),(RecordPuns,"-XRecordPuns"),(DisambiguateRecordFields,"-XDisambiguateRecordFields"),(OverloadedStrings,"-XOverloadedStrings"),(GADTs,"-XGADTs"),(ViewPatterns,"-XViewPatterns"),(TypeFamilies,"-XTypeFamilies"),(BangPatterns,"-XBangPatterns"),(NoMonomorphismRestriction,"-XNoMonomorphismRestriction"),(UnknownExtension "NPlusKPatterns","-XNPlusKPatterns"),(NoMonoPatBinds,"-XNoMonoPatBinds"),(UnknownExtension "ExplicitForAll","-XExplicitForAll"),(UnknownExtension "MonoLocalBinds","-XMonoLocalBinds"),(RelaxedPolyRec,"-XRelaxedPolyRec"),(ExtendedDefaultRules,"-XExtendedDefaultRules"),(ImplicitParams,"-XImplicitParams"),(ScopedTypeVariables,"-XScopedTypeVariables"),(PatternSignatures,"-XPatternSignatures"),(UnboxedTuples,"-XUnboxedTuples"),(StandaloneDeriving,"-XStandaloneDeriving"),(DeriveDataTypeable,"-XDeriveDataTypeable"),(UnknownExtension "DeriveFunctor","-XDeriveFunctor"),(UnknownExtension "DeriveTraversable","-XDeriveTraversable"),(UnknownExtension "DeriveFoldable","-XDeriveFoldable"),(TypeSynonymInstances,"-XTypeSynonymInstances"),(FlexibleContexts,"-XFlexibleContexts"),(FlexibleInstances,"-XFlexibleInstances"),(ConstrainedClassMethods,"-XConstrainedClassMethods"),(MultiParamTypeClasses,"-XMultiParamTypeClasses"),(FunctionalDependencies,"-XFunctionalDependencies"),(GeneralizedNewtypeDeriving,"-XGeneralizedNewtypeDeriving"),(OverlappingInstances,"-XOverlappingInstances"),(UndecidableInstances,"-XUndecidableInstances"),(IncoherentInstances,"-XIncoherentInstances"),(PackageImports,"-XPackageImports"),(NewQualifiedOperators,"-XNewQualifiedOperators")]}, buildDir = "dist/build", scratchDir = "dist/scratch", libraryConfig = Just (ComponentLocalBuildInfo {componentPackageDeps = [(InstalledPackageId "ghc-6.12.1-f94cf9a4e78a37cbe95dfc7fe6c1c623",PackageIdentifier {pkgName = PackageName "ghc", pkgVersion = Version {versionBranch = [6,12,1], versionTags = []}})]}), executableConfigs = [("cabalTest",ComponentLocalBuildInfo {componentPackageDeps = [(InstalledPackageId "ghc-6.12.1-f94cf9a4e78a37cbe95dfc7fe6c1c623",PackageIdentifier {pkgName = PackageName "ghc", pkgVersion = Version {versionBranch = [6,12,1], versionTags = []}})]})], installedPkgs = PackageIndex (fromList [(InstalledPackageId "Cabal-1.8.0.2-72f6eafc7def741b28f6ec75d2686d14",InstalledPackageInfo {installedPackageId = InstalledPackageId "Cabal-1.8.0.2-72f6eafc7def741b28f6ec75d2686d14", sourcePackageId = PackageIdentifier {pkgName = PackageName "Cabal", pkgVersion = Version {versionBranch = [1,8,0,2], versionTags = []}}, license = BSD3, copyright = "2003-2006, Isaac Jones\n2005-2009, Duncan Coutts", maintainer = "cabal-devel@haskell.org", author = "Isaac Jones <ijones@syntaxpolice.org>\nDuncan Coutts <duncan@haskell.org>", stability = "", homepage = "http://www.haskell.org/cabal/", pkgUrl = "", description = "The Haskell Common Architecture for Building Applications and\nLibraries: a framework defining a common interface for authors to more\neasily build their Haskell applications in a portable way.\n\nThe Haskell Cabal is part of a larger infrastructure for distributing,\norganizing, and cataloging Haskell libraries and tools.", category = "Distribution", exposed = True, exposedModules = [ModuleName ["Distribution","Compiler"],ModuleName ["Distribution","InstalledPackageInfo"],ModuleName ["Distribution","License"],ModuleName ["Distribution","Make"],ModuleName ["Distribution","ModuleName"],ModuleName ["Distribution","Package"],ModuleName ["Distribution","PackageDescription"],ModuleName ["Distribution","PackageDescription","Configuration"],ModuleName ["Distribution","PackageDescription","Parse"],ModuleName ["Distribution","PackageDescription","Check"],ModuleName ["Distribution","ParseUtils"],ModuleName ["Distribution","ReadE"],ModuleName ["Distribution","Simple"],ModuleName ["Distribution","Simple","Build"],ModuleName ["Distribution","Simple","Build","Macros"],ModuleName ["Distribution","Simple","Build","PathsModule"],ModuleName ["Distribution","Simple","BuildPaths"],ModuleName ["Distribution","Simple","Command"],ModuleName ["Distribution","Simple","Compiler"],ModuleName ["Distribution","Simple","Configure"],ModuleName ["Distribution","Simple","GHC"],ModuleName ["Distribution","Simple","LHC"],ModuleName ["Distribution","Simple","Haddock"],ModuleName ["Distribution","Simple","Hugs"],ModuleName ["Distribution","Simple","Install"],ModuleName ["Distribution","Simple","InstallDirs"],ModuleName ["Distribution","Simple","JHC"],ModuleName ["Distribution","Simple","LocalBuildInfo"],ModuleName ["Distribution","Simple","NHC"],ModuleName ["Distribution","Simple","PackageIndex"],ModuleName ["Distribution","Simple","PreProcess"],ModuleName ["Distribution","Simple","PreProcess","Unlit"],ModuleName ["Distribution","Simple","Program"],ModuleName ["Distribution","Simple","Program","Ar"],ModuleName ["Distribution","Simple","Program","Builtin"],ModuleName ["Distribution","Simple","Program","Db"],ModuleName ["Distribution","Simple","Program","HcPkg"],ModuleName ["Distribution","Simple","Program","Ld"],ModuleName ["Distribution","Simple","Program","Run"],ModuleName ["Distribution","Simple","Program","Script"],ModuleName ["Distribution","Simple","Program","Types"],ModuleName ["Distribution","Simple","Register"],ModuleName ["Distribution","Simple","Setup"],ModuleName ["Distribution","Simple","SrcDist"],ModuleName ["Distribution","Simple","UserHooks"],ModuleName ["Distribution","Simple","Utils"],ModuleName ["Distribution","System"],ModuleName ["Distribution","Text"],ModuleName ["Distribution","Verbosity"],ModuleName ["Distribution","Version"],ModuleName ["Distribution","Compat","ReadP"],ModuleName ["Language","Haskell","Extension"]], hiddenModules = [ModuleName ["Distribution","GetOpt"],ModuleName ["Distribution","Compat","Exception"],ModuleName ["Distribution","Compat","CopyFile"],ModuleName ["Distribution","Compat","TempFile"],ModuleName ["Distribution","Simple","GHC","IPI641"],ModuleName ["Distribution","Simple","GHC","IPI642"]], importDirs = ["/usr/lib/ghc-6.12.1/Cabal-1.8.0.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/Cabal-1.8.0.2"], hsLibraries = ["HSCabal-1.8.0.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c",InstalledPackageId "pretty-1.0.1.1-2bfa34c699efff7eed4d6297a2dac12d",InstalledPackageId "process-1.0.1.2-8b5308cb23fbdc3c2df27e298550937f",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/Cabal-1.8.0.2/Cabal.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/Cabal-1.8.0.2"]}),(InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageInfo {installedPackageId = InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98", sourcePackageId = PackageIdentifier {pkgName = PackageName "array", pkgVersion = Version {versionBranch = [0,3,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", 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","Internals"],ModuleName ["Data","Array","MArray"],ModuleName ["Data","Array","ST"],ModuleName ["Data","Array","Storable"],ModuleName ["Data","Array","Unboxed"],ModuleName ["Data","Array"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/array-0.3.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/array-0.3.0.0"], hsLibraries = ["HSarray-0.3.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/array-0.3.0.0/array.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/array-0.3.0.0"]}),(InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageInfo {installedPackageId = InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d", sourcePackageId = PackageIdentifier {pkgName = PackageName "base", pkgVersion = Version {versionBranch = [4,2,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", 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","Classes"],ModuleName ["GHC","Conc"],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","Float"],ModuleName ["GHC","ForeignPtr"],ModuleName ["GHC","MVar"],ModuleName ["GHC","IO"],ModuleName ["GHC","IO","IOMode"],ModuleName ["GHC","IO","Buffer"],ModuleName ["GHC","IO","Device"],ModuleName ["GHC","IO","BufferedIO"],ModuleName ["GHC","IO","FD"],ModuleName ["GHC","IO","Exception"],ModuleName ["GHC","IO","Encoding"],ModuleName ["GHC","IO","Encoding","Latin1"],ModuleName ["GHC","IO","Encoding","UTF8"],ModuleName ["GHC","IO","Encoding","UTF16"],ModuleName ["GHC","IO","Encoding","UTF32"],ModuleName ["GHC","IO","Encoding","Types"],ModuleName ["GHC","IO","Encoding","Iconv"],ModuleName ["GHC","IO","Encoding","CodePage"],ModuleName ["GHC","IO","Handle"],ModuleName ["GHC","IO","Handle","Types"],ModuleName ["GHC","IO","Handle","Internals"],ModuleName ["GHC","IO","Handle","FD"],ModuleName ["GHC","IO","Handle","Text"],ModuleName ["GHC","IOBase"],ModuleName ["GHC","Handle"],ModuleName ["GHC","IORef"],ModuleName ["GHC","IOArray"],ModuleName ["GHC","Int"],ModuleName ["GHC","List"],ModuleName ["GHC","Num"],ModuleName ["GHC","PArr"],ModuleName ["GHC","Pack"],ModuleName ["GHC","Ptr"],ModuleName ["GHC","Read"],ModuleName ["GHC","Real"],ModuleName ["GHC","ST"],ModuleName ["GHC","STRef"],ModuleName ["GHC","Show"],ModuleName ["GHC","Stable"],ModuleName ["GHC","Storable"],ModuleName ["GHC","TopHandler"],ModuleName ["GHC","Unicode"],ModuleName ["GHC","Weak"],ModuleName ["GHC","Word"],ModuleName ["System","Timeout"],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","OldException"],ModuleName ["Control","Monad"],ModuleName ["Control","Monad","Fix"],ModuleName ["Control","Monad","Instances"],ModuleName ["Control","Monad","ST"],ModuleName ["Control","Monad","ST","Lazy"],ModuleName ["Control","Monad","ST","Strict"],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","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","Marshal"],ModuleName ["Foreign","Marshal","Alloc"],ModuleName ["Foreign","Marshal","Array"],ModuleName ["Foreign","Marshal","Error"],ModuleName ["Foreign","Marshal","Pool"],ModuleName ["Foreign","Marshal","Utils"],ModuleName ["Foreign","Ptr"],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 = [], importDirs = ["/usr/lib/ghc-6.12.1/base-4.2.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/base-4.2.0.0"], hsLibraries = ["HSbase-4.2.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/base-4.2.0.0/include"], includes = ["HsBase.h"], depends = [InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990",InstalledPackageId "integer-gmp-0.2.0.0-fa82a0df93dc30b4a7c5654dd7c68cf4",InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/base-4.2.0.0/base.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/base-4.2.0.0"]}),(InstalledPackageId "bin-package-db-0.0.0.0-0c559ebe951f9972c4e6dfe5ebd4ce6a",InstalledPackageInfo {installedPackageId = InstalledPackageId "bin-package-db-0.0.0.0-0c559ebe951f9972c4e6dfe5ebd4ce6a", sourcePackageId = PackageIdentifier {pkgName = PackageName "bin-package-db", pkgVersion = Version {versionBranch = [0,0,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "cvs-ghc@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "", category = "", exposed = True, exposedModules = [ModuleName ["Distribution","InstalledPackageInfo","Binary"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/bin-package-db-0.0.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/bin-package-db-0.0.0.0"], hsLibraries = ["HSbin-package-db-0.0.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "Cabal-1.8.0.2-72f6eafc7def741b28f6ec75d2686d14",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "ghc-binary-0.5.0.2-359d07c3fa596bee47da084cc306672c"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/bin-package-db-0.0.0.0/bin-package-db.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/bin-package-db-0.0.0.0"]}),(InstalledPackageId "builtin_ffi",InstalledPackageInfo {installedPackageId = InstalledPackageId "builtin_ffi", sourcePackageId = PackageIdentifier {pkgName = PackageName "ffi", pkgVersion = Version {versionBranch = [1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "glasgow-haskell-users@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "", category = "", exposed = True, exposedModules = [], hiddenModules = [], importDirs = [], libraryDirs = ["/usr/lib/ghc-6.12.1"], hsLibraries = ["HSffi"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/include"], includes = [], depends = [], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = [], haddockHTMLs = []}),(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 = "", description = "", category = "", exposed = True, exposedModules = [], hiddenModules = [], importDirs = [], libraryDirs = ["/usr/lib/ghc-6.12.1"], hsLibraries = ["HSrts"], extraLibraries = ["m","rt","dl"], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/include"], includes = ["Stg.h"], depends = [InstalledPackageId "builtin_ffi"], 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","base_GHCziWord_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_GHCziBool_False_closure","-u","ghczmprim_GHCziBool_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_runIO_closure","-u","base_GHCziTopHandler_runNonIO_closure","-u","base_GHCziConc_ensureIOManagerIsRunning_closure","-u","base_GHCziConc_runSparks_closure","-u","base_GHCziConc_runHandlers_closure"], frameworkDirs = [], frameworks = [], haddockInterfaces = [], haddockHTMLs = []}),(InstalledPackageId "bytestring-0.9.1.5-2d4a9d624c3be86b70c04730e5f12aca",InstalledPackageInfo {installedPackageId = InstalledPackageId "bytestring-0.9.1.5-2d4a9d624c3be86b70c04730e5f12aca", sourcePackageId = PackageIdentifier {pkgName = PackageName "bytestring", pkgVersion = Version {versionBranch = [0,9,1,5], versionTags = []}}, license = BSD3, copyright = "Copyright (c) Don Stewart   2005-2009,\n(c) Duncan Coutts 2006-2009,\n(c) David Roundy  2003-2005.", maintainer = "dons@galois.com, duncan@haskell.org", author = "Don Stewart, Duncan Coutts", stability = "", homepage = "http://www.cse.unsw.edu.au/~dons/fps.html", pkgUrl = "", description = "A time and space-efficient implementation of byte vectors using\npacked Word8 arrays, suitable for high performance use, both in terms\nof large data quantities, or high speed requirements. Byte vectors\nare encoded as strict 'Word8' arrays of bytes, and lazy lists of\nstrict chunks, held in a 'ForeignPtr', and can be passed between C\nand Haskell with little effort.\n\nTest coverage data for this library is available at:\n<http://code.haskell.org/~dons/tests/bytestring/hpc_index.html>", 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","Fusion"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/bytestring-0.9.1.5"], libraryDirs = ["/usr/lib/ghc-6.12.1/bytestring-0.9.1.5"], hsLibraries = ["HSbytestring-0.9.1.5"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/bytestring-0.9.1.5/include"], includes = ["fpstring.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/bytestring.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5"]}),(InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageInfo {installedPackageId = InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411", sourcePackageId = PackageIdentifier {pkgName = PackageName "containers", pkgVersion = Version {versionBranch = [0,3,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", 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","IntMap"],ModuleName ["Data","IntSet"],ModuleName ["Data","Map"],ModuleName ["Data","Sequence"],ModuleName ["Data","Set"],ModuleName ["Data","Tree"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/containers-0.3.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/containers-0.3.0.0"], hsLibraries = ["HScontainers-0.3.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/containers-0.3.0.0/containers.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/containers-0.3.0.0"]}),(InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageInfo {installedPackageId = InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c", sourcePackageId = PackageIdentifier {pkgName = PackageName "directory", pkgVersion = Version {versionBranch = [1,0,1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package provides a library for handling directories.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Directory"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/directory-1.0.1.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/directory-1.0.1.0"], hsLibraries = ["HSdirectory-1.0.1.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/directory-1.0.1.0/include"], includes = ["HsDirectory.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/directory-1.0.1.0/directory.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/directory-1.0.1.0"]}),(InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageInfo {installedPackageId = InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87", sourcePackageId = PackageIdentifier {pkgName = PackageName "filepath", pkgVersion = Version {versionBranch = [1,1,0,3], versionTags = []}}, license = BSD3, copyright = "", maintainer = "", author = "Neil Mitchell", stability = "", homepage = "http://www-users.cs.york.ac.uk/~ndm/filepath/", pkgUrl = "", description = "", category = "System", exposed = True, exposedModules = [ModuleName ["System","FilePath"],ModuleName ["System","FilePath","Posix"],ModuleName ["System","FilePath","Windows"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/filepath-1.1.0.3"], libraryDirs = ["/usr/lib/ghc-6.12.1/filepath-1.1.0.3"], hsLibraries = ["HSfilepath-1.1.0.3"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/filepath-1.1.0.3/filepath.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/filepath-1.1.0.3"]}),(InstalledPackageId "ghc-6.12.1-f94cf9a4e78a37cbe95dfc7fe6c1c623",InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-6.12.1-f94cf9a4e78a37cbe95dfc7fe6c1c623", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc", pkgVersion = Version {versionBranch = [6,12,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "glasgow-haskell-users@haskell.org", author = "The GHC Team", stability = "", homepage = "http://www.haskell.org/ghc/", pkgUrl = "", description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.", category = "Development", exposed = False, exposedModules = [ModuleName ["AsmCodeGen"],ModuleName ["TargetReg"],ModuleName ["NCGMonad"],ModuleName ["Instruction"],ModuleName ["Size"],ModuleName ["Reg"],ModuleName ["RegClass"],ModuleName ["PprBase"],ModuleName ["PIC"],ModuleName ["Platform"],ModuleName ["Alpha","Regs"],ModuleName ["Alpha","RegInfo"],ModuleName ["Alpha","Instr"],ModuleName ["Alpha","CodeGen"],ModuleName ["X86","Regs"],ModuleName ["X86","RegInfo"],ModuleName ["X86","Instr"],ModuleName ["X86","Cond"],ModuleName ["X86","Ppr"],ModuleName ["X86","CodeGen"],ModuleName ["PPC","Regs"],ModuleName ["PPC","RegInfo"],ModuleName ["PPC","Instr"],ModuleName ["PPC","Cond"],ModuleName ["PPC","Ppr"],ModuleName ["PPC","CodeGen"],ModuleName ["SPARC","Base"],ModuleName ["SPARC","Regs"],ModuleName ["SPARC","RegPlate"],ModuleName ["SPARC","Imm"],ModuleName ["SPARC","AddrMode"],ModuleName ["SPARC","Cond"],ModuleName ["SPARC","Instr"],ModuleName ["SPARC","Stack"],ModuleName ["SPARC","ShortcutJump"],ModuleName ["SPARC","Ppr"],ModuleName ["SPARC","CodeGen"],ModuleName ["SPARC","CodeGen","Amode"],ModuleName ["SPARC","CodeGen","Base"],ModuleName ["SPARC","CodeGen","CCall"],ModuleName ["SPARC","CodeGen","CondCode"],ModuleName ["SPARC","CodeGen","Gen32"],ModuleName ["SPARC","CodeGen","Gen64"],ModuleName ["SPARC","CodeGen","Sanity"],ModuleName ["SPARC","CodeGen","Expand"],ModuleName ["RegAlloc","Liveness"],ModuleName ["RegAlloc","Graph","Main"],ModuleName ["RegAlloc","Graph","Stats"],ModuleName ["RegAlloc","Graph","ArchBase"],ModuleName ["RegAlloc","Graph","ArchX86"],ModuleName ["RegAlloc","Graph","Coalesce"],ModuleName ["RegAlloc","Graph","Spill"],ModuleName ["RegAlloc","Graph","SpillClean"],ModuleName ["RegAlloc","Graph","SpillCost"],ModuleName ["RegAlloc","Graph","TrivColorable"],ModuleName ["RegAlloc","Linear","Main"],ModuleName ["RegAlloc","Linear","JoinToTargets"],ModuleName ["RegAlloc","Linear","State"],ModuleName ["RegAlloc","Linear","Stats"],ModuleName ["RegAlloc","Linear","FreeRegs"],ModuleName ["RegAlloc","Linear","StackMap"],ModuleName ["RegAlloc","Linear","Base"],ModuleName ["RegAlloc","Linear","X86","FreeRegs"],ModuleName ["RegAlloc","Linear","PPC","FreeRegs"],ModuleName ["RegAlloc","Linear","SPARC","FreeRegs"],ModuleName ["DsMeta"],ModuleName ["TcSplice"],ModuleName ["Convert"],ModuleName ["ByteCodeAsm"],ModuleName ["ByteCodeFFI"],ModuleName ["ByteCodeGen"],ModuleName ["ByteCodeInstr"],ModuleName ["ByteCodeItbls"],ModuleName ["ByteCodeLink"],ModuleName ["Debugger"],ModuleName ["LibFFI"],ModuleName ["Linker"],ModuleName ["ObjLink"],ModuleName ["RtClosureInspect"],ModuleName ["BasicTypes"],ModuleName ["DataCon"],ModuleName ["Demand"],ModuleName ["Exception"],ModuleName ["Id"],ModuleName ["IdInfo"],ModuleName ["Literal"],ModuleName ["MkId"],ModuleName ["Module"],ModuleName ["Name"],ModuleName ["NameEnv"],ModuleName ["NameSet"],ModuleName ["NewDemand"],ModuleName ["OccName"],ModuleName ["RdrName"],ModuleName ["SrcLoc"],ModuleName ["UniqSupply"],ModuleName ["Unique"],ModuleName ["Var"],ModuleName ["VarEnv"],ModuleName ["VarSet"],ModuleName ["BlockId"],ModuleName ["CLabel"],ModuleName ["Cmm"],ModuleName ["CmmBrokenBlock"],ModuleName ["CmmBuildInfoTables"],ModuleName ["CmmCPS"],ModuleName ["CmmCPSGen"],ModuleName ["CmmCPSZ"],ModuleName ["CmmCallConv"],ModuleName ["CmmCommonBlockElimZ"],ModuleName ["CmmContFlowOpt"],ModuleName ["CmmCvt"],ModuleName ["CmmExpr"],ModuleName ["CmmInfo"],ModuleName ["CmmLex"],ModuleName ["CmmLint"],ModuleName ["CmmLive"],ModuleName ["CmmLiveZ"],ModuleName ["CmmOpt"],ModuleName ["CmmParse"],ModuleName ["CmmProcPoint"],ModuleName ["CmmProcPointZ"],ModuleName ["CmmSpillReload"],ModuleName ["CmmStackLayout"],ModuleName ["CmmTx"],ModuleName ["CmmUtils"],ModuleName ["CmmZipUtil"],ModuleName ["DFMonad"],ModuleName ["Dataflow"],ModuleName ["MkZipCfg"],ModuleName ["MkZipCfgCmm"],ModuleName ["OptimizationFuel"],ModuleName ["PprC"],ModuleName ["PprCmm"],ModuleName ["PprCmmZ"],ModuleName ["StackColor"],ModuleName ["StackPlacements"],ModuleName ["ZipCfg"],ModuleName ["ZipCfgCmmRep"],ModuleName ["ZipCfgExtras"],ModuleName ["ZipDataflow"],ModuleName ["Bitmap"],ModuleName ["CgBindery"],ModuleName ["CgCallConv"],ModuleName ["CgCase"],ModuleName ["CgClosure"],ModuleName ["CgCon"],ModuleName ["CgExpr"],ModuleName ["CgForeignCall"],ModuleName ["CgHeapery"],ModuleName ["CgHpc"],ModuleName ["CgInfoTbls"],ModuleName ["CgLetNoEscape"],ModuleName ["CgMonad"],ModuleName ["CgParallel"],ModuleName ["CgPrimOp"],ModuleName ["CgProf"],ModuleName ["CgStackery"],ModuleName ["CgTailCall"],ModuleName ["CgTicky"],ModuleName ["CgUtils"],ModuleName ["StgCmm"],ModuleName ["StgCmmBind"],ModuleName ["StgCmmClosure"],ModuleName ["StgCmmCon"],ModuleName ["StgCmmEnv"],ModuleName ["StgCmmExpr"],ModuleName ["StgCmmForeign"],ModuleName ["StgCmmGran"],ModuleName ["StgCmmHeap"],ModuleName ["StgCmmHpc"],ModuleName ["StgCmmLayout"],ModuleName ["StgCmmMonad"],ModuleName ["StgCmmPrim"],ModuleName ["StgCmmProf"],ModuleName ["StgCmmTicky"],ModuleName ["StgCmmUtils"],ModuleName ["ClosureInfo"],ModuleName ["CodeGen"],ModuleName ["SMRep"],ModuleName ["CoreArity"],ModuleName ["CoreFVs"],ModuleName ["CoreLint"],ModuleName ["CorePrep"],ModuleName ["CoreSubst"],ModuleName ["CoreSyn"],ModuleName ["CoreTidy"],ModuleName ["CoreUnfold"],ModuleName ["CoreUtils"],ModuleName ["ExternalCore"],ModuleName ["MkCore"],ModuleName ["MkExternalCore"],ModuleName ["PprCore"],ModuleName ["PprExternalCore"],ModuleName ["CprAnalyse"],ModuleName ["Check"],ModuleName ["Coverage"],ModuleName ["Desugar"],ModuleName ["DsArrows"],ModuleName ["DsBinds"],ModuleName ["DsCCall"],ModuleName ["DsExpr"],ModuleName ["DsForeign"],ModuleName ["DsGRHSs"],ModuleName ["DsListComp"],ModuleName ["DsMonad"],ModuleName ["DsUtils"],ModuleName ["Match"],ModuleName ["MatchCon"],ModuleName ["MatchLit"],ModuleName ["HsBinds"],ModuleName ["HsDecls"],ModuleName ["HsDoc"],ModuleName ["HsExpr"],ModuleName ["HsImpExp"],ModuleName ["HsLit"],ModuleName ["HsPat"],ModuleName ["HsSyn"],ModuleName ["HsTypes"],ModuleName ["HsUtils"],ModuleName ["BinIface"],ModuleName ["BuildTyCl"],ModuleName ["IfaceEnv"],ModuleName ["IfaceSyn"],ModuleName ["IfaceType"],ModuleName ["LoadIface"],ModuleName ["MkIface"],ModuleName ["TcIface"],ModuleName ["Annotations"],ModuleName ["BreakArray"],ModuleName ["CmdLineParser"],ModuleName ["CodeOutput"],ModuleName ["Config"],ModuleName ["Constants"],ModuleName ["DriverMkDepend"],ModuleName ["DriverPhases"],ModuleName ["DriverPipeline"],ModuleName ["DynFlags"],ModuleName ["ErrUtils"],ModuleName ["Finder"],ModuleName ["GHC"],ModuleName ["HeaderInfo"],ModuleName ["HscMain"],ModuleName ["HscStats"],ModuleName ["HscTypes"],ModuleName ["InteractiveEval"],ModuleName ["PackageConfig"],ModuleName ["Packages"],ModuleName ["PprTyThing"],ModuleName ["StaticFlags"],ModuleName ["StaticFlagParser"],ModuleName ["SysTools"],ModuleName ["TidyPgm"],ModuleName ["Ctype"],ModuleName ["HaddockUtils"],ModuleName ["LexCore"],ModuleName ["Lexer"],ModuleName ["Parser"],ModuleName ["ParserCore"],ModuleName ["ParserCoreUtils"],ModuleName ["RdrHsSyn"],ModuleName ["ForeignCall"],ModuleName ["PrelInfo"],ModuleName ["PrelNames"],ModuleName ["PrelRules"],ModuleName ["PrimOp"],ModuleName ["TysPrim"],ModuleName ["TysWiredIn"],ModuleName ["CostCentre"],ModuleName ["SCCfinal"],ModuleName ["RnBinds"],ModuleName ["RnEnv"],ModuleName ["RnExpr"],ModuleName ["RnHsDoc"],ModuleName ["RnHsSyn"],ModuleName ["RnNames"],ModuleName ["RnPat"],ModuleName ["RnSource"],ModuleName ["RnTypes"],ModuleName ["CoreMonad"],ModuleName ["CSE"],ModuleName ["FloatIn"],ModuleName ["FloatOut"],ModuleName ["LiberateCase"],ModuleName ["OccurAnal"],ModuleName ["SAT"],ModuleName ["SetLevels"],ModuleName ["SimplCore"],ModuleName ["SimplEnv"],ModuleName ["SimplMonad"],ModuleName ["SimplUtils"],ModuleName ["Simplify"],ModuleName ["SRT"],ModuleName ["SimplStg"],ModuleName ["StgStats"],ModuleName ["Rules"],ModuleName ["SpecConstr"],ModuleName ["Specialise"],ModuleName ["CoreToStg"],ModuleName ["StgLint"],ModuleName ["StgSyn"],ModuleName ["DmdAnal"],ModuleName ["SaAbsInt"],ModuleName ["SaLib"],ModuleName ["StrictAnal"],ModuleName ["WorkWrap"],ModuleName ["WwLib"],ModuleName ["FamInst"],ModuleName ["Inst"],ModuleName ["TcAnnotations"],ModuleName ["TcArrows"],ModuleName ["TcBinds"],ModuleName ["TcClassDcl"],ModuleName ["TcDefaults"],ModuleName ["TcDeriv"],ModuleName ["TcEnv"],ModuleName ["TcExpr"],ModuleName ["TcForeign"],ModuleName ["TcGenDeriv"],ModuleName ["TcHsSyn"],ModuleName ["TcHsType"],ModuleName ["TcInstDcls"],ModuleName ["TcMType"],ModuleName ["TcMatches"],ModuleName ["TcPat"],ModuleName ["TcRnDriver"],ModuleName ["TcRnMonad"],ModuleName ["TcRnTypes"],ModuleName ["TcRules"],ModuleName ["TcSimplify"],ModuleName ["TcTyClsDecls"],ModuleName ["TcTyDecls"],ModuleName ["TcTyFuns"],ModuleName ["TcType"],ModuleName ["TcUnify"],ModuleName ["Class"],ModuleName ["Coercion"],ModuleName ["FamInstEnv"],ModuleName ["FunDeps"],ModuleName ["Generics"],ModuleName ["InstEnv"],ModuleName ["TyCon"],ModuleName ["Type"],ModuleName ["TypeRep"],ModuleName ["Unify"],ModuleName ["Bag"],ModuleName ["Binary"],ModuleName ["BufWrite"],ModuleName ["Digraph"],ModuleName ["Encoding"],ModuleName ["FastBool"],ModuleName ["FastFunctions"],ModuleName ["FastMutInt"],ModuleName ["FastString"],ModuleName ["FastTypes"],ModuleName ["Fingerprint"],ModuleName ["FiniteMap"],ModuleName ["GraphBase"],ModuleName ["GraphColor"],ModuleName ["GraphOps"],ModuleName ["GraphPpr"],ModuleName ["IOEnv"],ModuleName ["Interval"],ModuleName ["LazyUniqFM"],ModuleName ["ListSetOps"],ModuleName ["Maybes"],ModuleName ["MonadUtils"],ModuleName ["OrdList"],ModuleName ["Outputable"],ModuleName ["Panic"],ModuleName ["Pretty"],ModuleName ["Serialized"],ModuleName ["State"],ModuleName ["StringBuffer"],ModuleName ["UniqFM"],ModuleName ["UniqSet"],ModuleName ["Util"],ModuleName ["VectBuiltIn"],ModuleName ["VectCore"],ModuleName ["VectMonad"],ModuleName ["VectType"],ModuleName ["VectUtils"],ModuleName ["Vectorise"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/ghc-6.12.1"], libraryDirs = ["/usr/lib/ghc-6.12.1/ghc-6.12.1"], hsLibraries = ["HSghc-6.12.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/ghc-6.12.1/include"], includes = [], depends = [InstalledPackageId "Cabal-1.8.0.2-72f6eafc7def741b28f6ec75d2686d14",InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "bin-package-db-0.0.0.0-0c559ebe951f9972c4e6dfe5ebd4ce6a",InstalledPackageId "bytestring-0.9.1.5-2d4a9d624c3be86b70c04730e5f12aca",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "hpc-0.5.0.4-9509a7b9efea6f1b5464702328eb4b44",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c",InstalledPackageId "process-1.0.1.2-8b5308cb23fbdc3c2df27e298550937f",InstalledPackageId "template-haskell-2.4.0.0-92d419f5a3bd03d1c021561d3b29c041",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/ghc-6.12.1/ghc.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/ghc-6.12.1"]}),(InstalledPackageId "ghc-binary-0.5.0.2-359d07c3fa596bee47da084cc306672c",InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-binary-0.5.0.2-359d07c3fa596bee47da084cc306672c", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc-binary", pkgVersion = Version {versionBranch = [0,5,0,2], versionTags = []}}, license = BSD3, copyright = "", maintainer = "Lennart Kolmodin, Don Stewart <dons@galois.com>", author = "Lennart Kolmodin <kolmodin@dtek.chalmers.se>", stability = "provisional", homepage = "http://code.haskell.org/binary/", pkgUrl = "", 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.\nSerialisation speeds of over 1 G\\/sec have been observed,\nso this library should be suitable for high performance\nscenarios.", category = "Data, Parsing", exposed = False, exposedModules = [ModuleName ["Data","Binary"],ModuleName ["Data","Binary","Put"],ModuleName ["Data","Binary","Get"],ModuleName ["Data","Binary","Builder"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/ghc-binary-0.5.0.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/ghc-binary-0.5.0.2"], hsLibraries = ["HSghc-binary-0.5.0.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "bytestring-0.9.1.5-2d4a9d624c3be86b70c04730e5f12aca",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/ghc-binary-0.5.0.2/ghc-binary.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/ghc-binary-0.5.0.2"]}),(InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990",InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc-prim", pkgVersion = Version {versionBranch = [0,2,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "GHC primitives.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Prim"],ModuleName ["GHC","Bool"],ModuleName ["GHC","Debug"],ModuleName ["GHC","Generics"],ModuleName ["GHC","Ordering"],ModuleName ["GHC","PrimopWrappers"],ModuleName ["GHC","IntWord32"],ModuleName ["GHC","IntWord64"],ModuleName ["GHC","Tuple"],ModuleName ["GHC","Types"],ModuleName ["GHC","Unit"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/ghc-prim-0.2.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/ghc-prim-0.2.0.0"], hsLibraries = ["HSghc-prim-0.2.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/ghc-prim.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0"]}),(InstalledPackageId "hpc-0.5.0.4-9509a7b9efea6f1b5464702328eb4b44",InstalledPackageInfo {installedPackageId = InstalledPackageId "hpc-0.5.0.4-9509a7b9efea6f1b5464702328eb4b44", sourcePackageId = PackageIdentifier {pkgName = PackageName "hpc", pkgVersion = Version {versionBranch = [0,5,0,4], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "Andy Gill", stability = "", homepage = "", pkgUrl = "", description = "", category = "Control", exposed = True, exposedModules = [ModuleName ["Trace","Hpc","Util"],ModuleName ["Trace","Hpc","Mix"],ModuleName ["Trace","Hpc","Tix"],ModuleName ["Trace","Hpc","Reflect"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/hpc-0.5.0.4"], libraryDirs = ["/usr/lib/ghc-6.12.1/hpc-0.5.0.4"], hsLibraries = ["HShpc-0.5.0.4"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/hpc-0.5.0.4/hpc.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/hpc-0.5.0.4"]}),(InstalledPackageId "integer-gmp-0.2.0.0-fa82a0df93dc30b4a7c5654dd7c68cf4",InstalledPackageInfo {installedPackageId = InstalledPackageId "integer-gmp-0.2.0.0-fa82a0df93dc30b4a7c5654dd7c68cf4", sourcePackageId = PackageIdentifier {pkgName = PackageName "integer-gmp", pkgVersion = Version {versionBranch = [0,2,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains an Integer library based on GMP.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Integer"],ModuleName ["GHC","Integer","GMP","Internals"]], hiddenModules = [ModuleName ["GHC","Integer","Type"]], importDirs = ["/usr/lib/ghc-6.12.1/integer-gmp-0.2.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/integer-gmp-0.2.0.0"], hsLibraries = ["HSinteger-gmp-0.2.0.0"], extraLibraries = ["gmp"], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/integer-gmp-0.2.0.0/integer-gmp.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/integer-gmp-0.2.0.0"]}),(InstalledPackageId "old-locale-1.0.0.2-ef43da9d308528e2994f68a00a6ea03f",InstalledPackageInfo {installedPackageId = InstalledPackageId "old-locale-1.0.0.2-ef43da9d308528e2994f68a00a6ea03f", sourcePackageId = PackageIdentifier {pkgName = PackageName "old-locale", pkgVersion = Version {versionBranch = [1,0,0,2], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package provides the old locale library.\nFor new code, the new locale library is recommended.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Locale"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/old-locale-1.0.0.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/old-locale-1.0.0.2"], hsLibraries = ["HSold-locale-1.0.0.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/old-locale-1.0.0.2/old-locale.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/old-locale-1.0.0.2"]}),(InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c",InstalledPackageInfo {installedPackageId = InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c", sourcePackageId = PackageIdentifier {pkgName = PackageName "old-time", pkgVersion = Version {versionBranch = [1,0,0,3], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package provides the old time library.\nFor new code, the new time library is recommended.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Time"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/old-time-1.0.0.3"], libraryDirs = ["/usr/lib/ghc-6.12.1/old-time-1.0.0.3"], hsLibraries = ["HSold-time-1.0.0.3"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/old-time-1.0.0.3/include"], includes = ["HsTime.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "old-locale-1.0.0.2-ef43da9d308528e2994f68a00a6ea03f"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/old-time-1.0.0.3/old-time.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/old-time-1.0.0.3"]}),(InstalledPackageId "pretty-1.0.1.1-2bfa34c699efff7eed4d6297a2dac12d",InstalledPackageInfo {installedPackageId = InstalledPackageId "pretty-1.0.1.1-2bfa34c699efff7eed4d6297a2dac12d", sourcePackageId = PackageIdentifier {pkgName = PackageName "pretty", pkgVersion = Version {versionBranch = [1,0,1,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains John Hughes's pretty-printing library,\nheavily modified by Simon Peyton Jones.", category = "Text", exposed = True, exposedModules = [ModuleName ["Text","PrettyPrint"],ModuleName ["Text","PrettyPrint","HughesPJ"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/pretty-1.0.1.1"], libraryDirs = ["/usr/lib/ghc-6.12.1/pretty-1.0.1.1"], hsLibraries = ["HSpretty-1.0.1.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/pretty-1.0.1.1/pretty.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/pretty-1.0.1.1"]}),(InstalledPackageId "process-1.0.1.2-8b5308cb23fbdc3c2df27e298550937f",InstalledPackageInfo {installedPackageId = InstalledPackageId "process-1.0.1.2-8b5308cb23fbdc3c2df27e298550937f", sourcePackageId = PackageIdentifier {pkgName = PackageName "process", pkgVersion = Version {versionBranch = [1,0,1,2], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains libraries for dealing with system processes.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Process","Internals"],ModuleName ["System","Process"],ModuleName ["System","Cmd"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/process-1.0.1.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/process-1.0.1.2"], hsLibraries = ["HSprocess-1.0.1.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/process-1.0.1.2/include"], includes = ["runProcess.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/process-1.0.1.2/process.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/process-1.0.1.2"]}),(InstalledPackageId "template-haskell-2.4.0.0-92d419f5a3bd03d1c021561d3b29c041",InstalledPackageInfo {installedPackageId = InstalledPackageId "template-haskell-2.4.0.0-92d419f5a3bd03d1c021561d3b29c041", sourcePackageId = PackageIdentifier {pkgName = PackageName "template-haskell", pkgVersion = Version {versionBranch = [2,4,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "Facilities for manipulating Haskell source code using Template Haskell.", category = "", exposed = True, exposedModules = [ModuleName ["Language","Haskell","TH","Syntax","Internals"],ModuleName ["Language","Haskell","TH","Syntax"],ModuleName ["Language","Haskell","TH","PprLib"],ModuleName ["Language","Haskell","TH","Ppr"],ModuleName ["Language","Haskell","TH","Lib"],ModuleName ["Language","Haskell","TH","Quote"],ModuleName ["Language","Haskell","TH"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/template-haskell-2.4.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/template-haskell-2.4.0.0"], hsLibraries = ["HStemplate-haskell-2.4.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "pretty-1.0.1.1-2bfa34c699efff7eed4d6297a2dac12d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/template-haskell-2.4.0.0/template-haskell.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/template-haskell-2.4.0.0"]}),(InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e",InstalledPackageInfo {installedPackageId = InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e", sourcePackageId = PackageIdentifier {pkgName = PackageName "unix", pkgVersion = Version {versionBranch = [2,4,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package gives you access to the set of operating system\nservices standardised by POSIX 1003.1b (or the IEEE Portable\nOperating System Interface for Computing Environments -\nIEEE Std. 1003.1).\n\nThe package is not supported under Windows (except under Cygwin).", category = "System", exposed = True, exposedModules = [ModuleName ["System","Posix"],ModuleName ["System","Posix","DynamicLinker","Module"],ModuleName ["System","Posix","DynamicLinker","Prim"],ModuleName ["System","Posix","Directory"],ModuleName ["System","Posix","DynamicLinker"],ModuleName ["System","Posix","Env"],ModuleName ["System","Posix","Error"],ModuleName ["System","Posix","Files"],ModuleName ["System","Posix","IO"],ModuleName ["System","Posix","Process"],ModuleName ["System","Posix","Process","Internals"],ModuleName ["System","Posix","Resource"],ModuleName ["System","Posix","Temp"],ModuleName ["System","Posix","Terminal"],ModuleName ["System","Posix","Time"],ModuleName ["System","Posix","Unistd"],ModuleName ["System","Posix","User"],ModuleName ["System","Posix","Signals"],ModuleName ["System","Posix","Signals","Exts"],ModuleName ["System","Posix","Semaphore"],ModuleName ["System","Posix","SharedMem"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/unix-2.4.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/unix-2.4.0.0"], hsLibraries = ["HSunix-2.4.0.0"], extraLibraries = ["rt","util","dl"], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/unix-2.4.0.0/include"], includes = ["HsUnix.h","execvpe.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/unix-2.4.0.0/unix.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/unix-2.4.0.0"]})]) (fromList [(PackageName "Cabal",fromList [(Version {versionBranch = [1,8,0,2], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "Cabal-1.8.0.2-72f6eafc7def741b28f6ec75d2686d14", sourcePackageId = PackageIdentifier {pkgName = PackageName "Cabal", pkgVersion = Version {versionBranch = [1,8,0,2], versionTags = []}}, license = BSD3, copyright = "2003-2006, Isaac Jones\n2005-2009, Duncan Coutts", maintainer = "cabal-devel@haskell.org", author = "Isaac Jones <ijones@syntaxpolice.org>\nDuncan Coutts <duncan@haskell.org>", stability = "", homepage = "http://www.haskell.org/cabal/", pkgUrl = "", description = "The Haskell Common Architecture for Building Applications and\nLibraries: a framework defining a common interface for authors to more\neasily build their Haskell applications in a portable way.\n\nThe Haskell Cabal is part of a larger infrastructure for distributing,\norganizing, and cataloging Haskell libraries and tools.", category = "Distribution", exposed = True, exposedModules = [ModuleName ["Distribution","Compiler"],ModuleName ["Distribution","InstalledPackageInfo"],ModuleName ["Distribution","License"],ModuleName ["Distribution","Make"],ModuleName ["Distribution","ModuleName"],ModuleName ["Distribution","Package"],ModuleName ["Distribution","PackageDescription"],ModuleName ["Distribution","PackageDescription","Configuration"],ModuleName ["Distribution","PackageDescription","Parse"],ModuleName ["Distribution","PackageDescription","Check"],ModuleName ["Distribution","ParseUtils"],ModuleName ["Distribution","ReadE"],ModuleName ["Distribution","Simple"],ModuleName ["Distribution","Simple","Build"],ModuleName ["Distribution","Simple","Build","Macros"],ModuleName ["Distribution","Simple","Build","PathsModule"],ModuleName ["Distribution","Simple","BuildPaths"],ModuleName ["Distribution","Simple","Command"],ModuleName ["Distribution","Simple","Compiler"],ModuleName ["Distribution","Simple","Configure"],ModuleName ["Distribution","Simple","GHC"],ModuleName ["Distribution","Simple","LHC"],ModuleName ["Distribution","Simple","Haddock"],ModuleName ["Distribution","Simple","Hugs"],ModuleName ["Distribution","Simple","Install"],ModuleName ["Distribution","Simple","InstallDirs"],ModuleName ["Distribution","Simple","JHC"],ModuleName ["Distribution","Simple","LocalBuildInfo"],ModuleName ["Distribution","Simple","NHC"],ModuleName ["Distribution","Simple","PackageIndex"],ModuleName ["Distribution","Simple","PreProcess"],ModuleName ["Distribution","Simple","PreProcess","Unlit"],ModuleName ["Distribution","Simple","Program"],ModuleName ["Distribution","Simple","Program","Ar"],ModuleName ["Distribution","Simple","Program","Builtin"],ModuleName ["Distribution","Simple","Program","Db"],ModuleName ["Distribution","Simple","Program","HcPkg"],ModuleName ["Distribution","Simple","Program","Ld"],ModuleName ["Distribution","Simple","Program","Run"],ModuleName ["Distribution","Simple","Program","Script"],ModuleName ["Distribution","Simple","Program","Types"],ModuleName ["Distribution","Simple","Register"],ModuleName ["Distribution","Simple","Setup"],ModuleName ["Distribution","Simple","SrcDist"],ModuleName ["Distribution","Simple","UserHooks"],ModuleName ["Distribution","Simple","Utils"],ModuleName ["Distribution","System"],ModuleName ["Distribution","Text"],ModuleName ["Distribution","Verbosity"],ModuleName ["Distribution","Version"],ModuleName ["Distribution","Compat","ReadP"],ModuleName ["Language","Haskell","Extension"]], hiddenModules = [ModuleName ["Distribution","GetOpt"],ModuleName ["Distribution","Compat","Exception"],ModuleName ["Distribution","Compat","CopyFile"],ModuleName ["Distribution","Compat","TempFile"],ModuleName ["Distribution","Simple","GHC","IPI641"],ModuleName ["Distribution","Simple","GHC","IPI642"]], importDirs = ["/usr/lib/ghc-6.12.1/Cabal-1.8.0.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/Cabal-1.8.0.2"], hsLibraries = ["HSCabal-1.8.0.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c",InstalledPackageId "pretty-1.0.1.1-2bfa34c699efff7eed4d6297a2dac12d",InstalledPackageId "process-1.0.1.2-8b5308cb23fbdc3c2df27e298550937f",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/Cabal-1.8.0.2/Cabal.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/Cabal-1.8.0.2"]}])]),(PackageName "array",fromList [(Version {versionBranch = [0,3,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98", sourcePackageId = PackageIdentifier {pkgName = PackageName "array", pkgVersion = Version {versionBranch = [0,3,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", 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","Internals"],ModuleName ["Data","Array","MArray"],ModuleName ["Data","Array","ST"],ModuleName ["Data","Array","Storable"],ModuleName ["Data","Array","Unboxed"],ModuleName ["Data","Array"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/array-0.3.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/array-0.3.0.0"], hsLibraries = ["HSarray-0.3.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/array-0.3.0.0/array.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/array-0.3.0.0"]}])]),(PackageName "base",fromList [(Version {versionBranch = [4,2,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d", sourcePackageId = PackageIdentifier {pkgName = PackageName "base", pkgVersion = Version {versionBranch = [4,2,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", 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","Classes"],ModuleName ["GHC","Conc"],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","Float"],ModuleName ["GHC","ForeignPtr"],ModuleName ["GHC","MVar"],ModuleName ["GHC","IO"],ModuleName ["GHC","IO","IOMode"],ModuleName ["GHC","IO","Buffer"],ModuleName ["GHC","IO","Device"],ModuleName ["GHC","IO","BufferedIO"],ModuleName ["GHC","IO","FD"],ModuleName ["GHC","IO","Exception"],ModuleName ["GHC","IO","Encoding"],ModuleName ["GHC","IO","Encoding","Latin1"],ModuleName ["GHC","IO","Encoding","UTF8"],ModuleName ["GHC","IO","Encoding","UTF16"],ModuleName ["GHC","IO","Encoding","UTF32"],ModuleName ["GHC","IO","Encoding","Types"],ModuleName ["GHC","IO","Encoding","Iconv"],ModuleName ["GHC","IO","Encoding","CodePage"],ModuleName ["GHC","IO","Handle"],ModuleName ["GHC","IO","Handle","Types"],ModuleName ["GHC","IO","Handle","Internals"],ModuleName ["GHC","IO","Handle","FD"],ModuleName ["GHC","IO","Handle","Text"],ModuleName ["GHC","IOBase"],ModuleName ["GHC","Handle"],ModuleName ["GHC","IORef"],ModuleName ["GHC","IOArray"],ModuleName ["GHC","Int"],ModuleName ["GHC","List"],ModuleName ["GHC","Num"],ModuleName ["GHC","PArr"],ModuleName ["GHC","Pack"],ModuleName ["GHC","Ptr"],ModuleName ["GHC","Read"],ModuleName ["GHC","Real"],ModuleName ["GHC","ST"],ModuleName ["GHC","STRef"],ModuleName ["GHC","Show"],ModuleName ["GHC","Stable"],ModuleName ["GHC","Storable"],ModuleName ["GHC","TopHandler"],ModuleName ["GHC","Unicode"],ModuleName ["GHC","Weak"],ModuleName ["GHC","Word"],ModuleName ["System","Timeout"],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","OldException"],ModuleName ["Control","Monad"],ModuleName ["Control","Monad","Fix"],ModuleName ["Control","Monad","Instances"],ModuleName ["Control","Monad","ST"],ModuleName ["Control","Monad","ST","Lazy"],ModuleName ["Control","Monad","ST","Strict"],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","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","Marshal"],ModuleName ["Foreign","Marshal","Alloc"],ModuleName ["Foreign","Marshal","Array"],ModuleName ["Foreign","Marshal","Error"],ModuleName ["Foreign","Marshal","Pool"],ModuleName ["Foreign","Marshal","Utils"],ModuleName ["Foreign","Ptr"],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 = [], importDirs = ["/usr/lib/ghc-6.12.1/base-4.2.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/base-4.2.0.0"], hsLibraries = ["HSbase-4.2.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/base-4.2.0.0/include"], includes = ["HsBase.h"], depends = [InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990",InstalledPackageId "integer-gmp-0.2.0.0-fa82a0df93dc30b4a7c5654dd7c68cf4",InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/base-4.2.0.0/base.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/base-4.2.0.0"]}])]),(PackageName "bin-package-db",fromList [(Version {versionBranch = [0,0,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "bin-package-db-0.0.0.0-0c559ebe951f9972c4e6dfe5ebd4ce6a", sourcePackageId = PackageIdentifier {pkgName = PackageName "bin-package-db", pkgVersion = Version {versionBranch = [0,0,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "cvs-ghc@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "", category = "", exposed = True, exposedModules = [ModuleName ["Distribution","InstalledPackageInfo","Binary"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/bin-package-db-0.0.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/bin-package-db-0.0.0.0"], hsLibraries = ["HSbin-package-db-0.0.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "Cabal-1.8.0.2-72f6eafc7def741b28f6ec75d2686d14",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "ghc-binary-0.5.0.2-359d07c3fa596bee47da084cc306672c"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/bin-package-db-0.0.0.0/bin-package-db.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/bin-package-db-0.0.0.0"]}])]),(PackageName "bytestring",fromList [(Version {versionBranch = [0,9,1,5], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "bytestring-0.9.1.5-2d4a9d624c3be86b70c04730e5f12aca", sourcePackageId = PackageIdentifier {pkgName = PackageName "bytestring", pkgVersion = Version {versionBranch = [0,9,1,5], versionTags = []}}, license = BSD3, copyright = "Copyright (c) Don Stewart   2005-2009,\n(c) Duncan Coutts 2006-2009,\n(c) David Roundy  2003-2005.", maintainer = "dons@galois.com, duncan@haskell.org", author = "Don Stewart, Duncan Coutts", stability = "", homepage = "http://www.cse.unsw.edu.au/~dons/fps.html", pkgUrl = "", description = "A time and space-efficient implementation of byte vectors using\npacked Word8 arrays, suitable for high performance use, both in terms\nof large data quantities, or high speed requirements. Byte vectors\nare encoded as strict 'Word8' arrays of bytes, and lazy lists of\nstrict chunks, held in a 'ForeignPtr', and can be passed between C\nand Haskell with little effort.\n\nTest coverage data for this library is available at:\n<http://code.haskell.org/~dons/tests/bytestring/hpc_index.html>", 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","Fusion"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/bytestring-0.9.1.5"], libraryDirs = ["/usr/lib/ghc-6.12.1/bytestring-0.9.1.5"], hsLibraries = ["HSbytestring-0.9.1.5"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/bytestring-0.9.1.5/include"], includes = ["fpstring.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/bytestring.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5"]}])]),(PackageName "containers",fromList [(Version {versionBranch = [0,3,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411", sourcePackageId = PackageIdentifier {pkgName = PackageName "containers", pkgVersion = Version {versionBranch = [0,3,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", 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","IntMap"],ModuleName ["Data","IntSet"],ModuleName ["Data","Map"],ModuleName ["Data","Sequence"],ModuleName ["Data","Set"],ModuleName ["Data","Tree"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/containers-0.3.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/containers-0.3.0.0"], hsLibraries = ["HScontainers-0.3.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/containers-0.3.0.0/containers.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/containers-0.3.0.0"]}])]),(PackageName "directory",fromList [(Version {versionBranch = [1,0,1,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c", sourcePackageId = PackageIdentifier {pkgName = PackageName "directory", pkgVersion = Version {versionBranch = [1,0,1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package provides a library for handling directories.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Directory"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/directory-1.0.1.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/directory-1.0.1.0"], hsLibraries = ["HSdirectory-1.0.1.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/directory-1.0.1.0/include"], includes = ["HsDirectory.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/directory-1.0.1.0/directory.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/directory-1.0.1.0"]}])]),(PackageName "ffi",fromList [(Version {versionBranch = [1,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "builtin_ffi", sourcePackageId = PackageIdentifier {pkgName = PackageName "ffi", pkgVersion = Version {versionBranch = [1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "glasgow-haskell-users@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "", category = "", exposed = True, exposedModules = [], hiddenModules = [], importDirs = [], libraryDirs = ["/usr/lib/ghc-6.12.1"], hsLibraries = ["HSffi"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/include"], includes = [], depends = [], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = [], haddockHTMLs = []}])]),(PackageName "filepath",fromList [(Version {versionBranch = [1,1,0,3], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87", sourcePackageId = PackageIdentifier {pkgName = PackageName "filepath", pkgVersion = Version {versionBranch = [1,1,0,3], versionTags = []}}, license = BSD3, copyright = "", maintainer = "", author = "Neil Mitchell", stability = "", homepage = "http://www-users.cs.york.ac.uk/~ndm/filepath/", pkgUrl = "", description = "", category = "System", exposed = True, exposedModules = [ModuleName ["System","FilePath"],ModuleName ["System","FilePath","Posix"],ModuleName ["System","FilePath","Windows"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/filepath-1.1.0.3"], libraryDirs = ["/usr/lib/ghc-6.12.1/filepath-1.1.0.3"], hsLibraries = ["HSfilepath-1.1.0.3"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/filepath-1.1.0.3/filepath.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/filepath-1.1.0.3"]}])]),(PackageName "ghc",fromList [(Version {versionBranch = [6,12,1], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-6.12.1-f94cf9a4e78a37cbe95dfc7fe6c1c623", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc", pkgVersion = Version {versionBranch = [6,12,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "glasgow-haskell-users@haskell.org", author = "The GHC Team", stability = "", homepage = "http://www.haskell.org/ghc/", pkgUrl = "", description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.", category = "Development", exposed = False, exposedModules = [ModuleName ["AsmCodeGen"],ModuleName ["TargetReg"],ModuleName ["NCGMonad"],ModuleName ["Instruction"],ModuleName ["Size"],ModuleName ["Reg"],ModuleName ["RegClass"],ModuleName ["PprBase"],ModuleName ["PIC"],ModuleName ["Platform"],ModuleName ["Alpha","Regs"],ModuleName ["Alpha","RegInfo"],ModuleName ["Alpha","Instr"],ModuleName ["Alpha","CodeGen"],ModuleName ["X86","Regs"],ModuleName ["X86","RegInfo"],ModuleName ["X86","Instr"],ModuleName ["X86","Cond"],ModuleName ["X86","Ppr"],ModuleName ["X86","CodeGen"],ModuleName ["PPC","Regs"],ModuleName ["PPC","RegInfo"],ModuleName ["PPC","Instr"],ModuleName ["PPC","Cond"],ModuleName ["PPC","Ppr"],ModuleName ["PPC","CodeGen"],ModuleName ["SPARC","Base"],ModuleName ["SPARC","Regs"],ModuleName ["SPARC","RegPlate"],ModuleName ["SPARC","Imm"],ModuleName ["SPARC","AddrMode"],ModuleName ["SPARC","Cond"],ModuleName ["SPARC","Instr"],ModuleName ["SPARC","Stack"],ModuleName ["SPARC","ShortcutJump"],ModuleName ["SPARC","Ppr"],ModuleName ["SPARC","CodeGen"],ModuleName ["SPARC","CodeGen","Amode"],ModuleName ["SPARC","CodeGen","Base"],ModuleName ["SPARC","CodeGen","CCall"],ModuleName ["SPARC","CodeGen","CondCode"],ModuleName ["SPARC","CodeGen","Gen32"],ModuleName ["SPARC","CodeGen","Gen64"],ModuleName ["SPARC","CodeGen","Sanity"],ModuleName ["SPARC","CodeGen","Expand"],ModuleName ["RegAlloc","Liveness"],ModuleName ["RegAlloc","Graph","Main"],ModuleName ["RegAlloc","Graph","Stats"],ModuleName ["RegAlloc","Graph","ArchBase"],ModuleName ["RegAlloc","Graph","ArchX86"],ModuleName ["RegAlloc","Graph","Coalesce"],ModuleName ["RegAlloc","Graph","Spill"],ModuleName ["RegAlloc","Graph","SpillClean"],ModuleName ["RegAlloc","Graph","SpillCost"],ModuleName ["RegAlloc","Graph","TrivColorable"],ModuleName ["RegAlloc","Linear","Main"],ModuleName ["RegAlloc","Linear","JoinToTargets"],ModuleName ["RegAlloc","Linear","State"],ModuleName ["RegAlloc","Linear","Stats"],ModuleName ["RegAlloc","Linear","FreeRegs"],ModuleName ["RegAlloc","Linear","StackMap"],ModuleName ["RegAlloc","Linear","Base"],ModuleName ["RegAlloc","Linear","X86","FreeRegs"],ModuleName ["RegAlloc","Linear","PPC","FreeRegs"],ModuleName ["RegAlloc","Linear","SPARC","FreeRegs"],ModuleName ["DsMeta"],ModuleName ["TcSplice"],ModuleName ["Convert"],ModuleName ["ByteCodeAsm"],ModuleName ["ByteCodeFFI"],ModuleName ["ByteCodeGen"],ModuleName ["ByteCodeInstr"],ModuleName ["ByteCodeItbls"],ModuleName ["ByteCodeLink"],ModuleName ["Debugger"],ModuleName ["LibFFI"],ModuleName ["Linker"],ModuleName ["ObjLink"],ModuleName ["RtClosureInspect"],ModuleName ["BasicTypes"],ModuleName ["DataCon"],ModuleName ["Demand"],ModuleName ["Exception"],ModuleName ["Id"],ModuleName ["IdInfo"],ModuleName ["Literal"],ModuleName ["MkId"],ModuleName ["Module"],ModuleName ["Name"],ModuleName ["NameEnv"],ModuleName ["NameSet"],ModuleName ["NewDemand"],ModuleName ["OccName"],ModuleName ["RdrName"],ModuleName ["SrcLoc"],ModuleName ["UniqSupply"],ModuleName ["Unique"],ModuleName ["Var"],ModuleName ["VarEnv"],ModuleName ["VarSet"],ModuleName ["BlockId"],ModuleName ["CLabel"],ModuleName ["Cmm"],ModuleName ["CmmBrokenBlock"],ModuleName ["CmmBuildInfoTables"],ModuleName ["CmmCPS"],ModuleName ["CmmCPSGen"],ModuleName ["CmmCPSZ"],ModuleName ["CmmCallConv"],ModuleName ["CmmCommonBlockElimZ"],ModuleName ["CmmContFlowOpt"],ModuleName ["CmmCvt"],ModuleName ["CmmExpr"],ModuleName ["CmmInfo"],ModuleName ["CmmLex"],ModuleName ["CmmLint"],ModuleName ["CmmLive"],ModuleName ["CmmLiveZ"],ModuleName ["CmmOpt"],ModuleName ["CmmParse"],ModuleName ["CmmProcPoint"],ModuleName ["CmmProcPointZ"],ModuleName ["CmmSpillReload"],ModuleName ["CmmStackLayout"],ModuleName ["CmmTx"],ModuleName ["CmmUtils"],ModuleName ["CmmZipUtil"],ModuleName ["DFMonad"],ModuleName ["Dataflow"],ModuleName ["MkZipCfg"],ModuleName ["MkZipCfgCmm"],ModuleName ["OptimizationFuel"],ModuleName ["PprC"],ModuleName ["PprCmm"],ModuleName ["PprCmmZ"],ModuleName ["StackColor"],ModuleName ["StackPlacements"],ModuleName ["ZipCfg"],ModuleName ["ZipCfgCmmRep"],ModuleName ["ZipCfgExtras"],ModuleName ["ZipDataflow"],ModuleName ["Bitmap"],ModuleName ["CgBindery"],ModuleName ["CgCallConv"],ModuleName ["CgCase"],ModuleName ["CgClosure"],ModuleName ["CgCon"],ModuleName ["CgExpr"],ModuleName ["CgForeignCall"],ModuleName ["CgHeapery"],ModuleName ["CgHpc"],ModuleName ["CgInfoTbls"],ModuleName ["CgLetNoEscape"],ModuleName ["CgMonad"],ModuleName ["CgParallel"],ModuleName ["CgPrimOp"],ModuleName ["CgProf"],ModuleName ["CgStackery"],ModuleName ["CgTailCall"],ModuleName ["CgTicky"],ModuleName ["CgUtils"],ModuleName ["StgCmm"],ModuleName ["StgCmmBind"],ModuleName ["StgCmmClosure"],ModuleName ["StgCmmCon"],ModuleName ["StgCmmEnv"],ModuleName ["StgCmmExpr"],ModuleName ["StgCmmForeign"],ModuleName ["StgCmmGran"],ModuleName ["StgCmmHeap"],ModuleName ["StgCmmHpc"],ModuleName ["StgCmmLayout"],ModuleName ["StgCmmMonad"],ModuleName ["StgCmmPrim"],ModuleName ["StgCmmProf"],ModuleName ["StgCmmTicky"],ModuleName ["StgCmmUtils"],ModuleName ["ClosureInfo"],ModuleName ["CodeGen"],ModuleName ["SMRep"],ModuleName ["CoreArity"],ModuleName ["CoreFVs"],ModuleName ["CoreLint"],ModuleName ["CorePrep"],ModuleName ["CoreSubst"],ModuleName ["CoreSyn"],ModuleName ["CoreTidy"],ModuleName ["CoreUnfold"],ModuleName ["CoreUtils"],ModuleName ["ExternalCore"],ModuleName ["MkCore"],ModuleName ["MkExternalCore"],ModuleName ["PprCore"],ModuleName ["PprExternalCore"],ModuleName ["CprAnalyse"],ModuleName ["Check"],ModuleName ["Coverage"],ModuleName ["Desugar"],ModuleName ["DsArrows"],ModuleName ["DsBinds"],ModuleName ["DsCCall"],ModuleName ["DsExpr"],ModuleName ["DsForeign"],ModuleName ["DsGRHSs"],ModuleName ["DsListComp"],ModuleName ["DsMonad"],ModuleName ["DsUtils"],ModuleName ["Match"],ModuleName ["MatchCon"],ModuleName ["MatchLit"],ModuleName ["HsBinds"],ModuleName ["HsDecls"],ModuleName ["HsDoc"],ModuleName ["HsExpr"],ModuleName ["HsImpExp"],ModuleName ["HsLit"],ModuleName ["HsPat"],ModuleName ["HsSyn"],ModuleName ["HsTypes"],ModuleName ["HsUtils"],ModuleName ["BinIface"],ModuleName ["BuildTyCl"],ModuleName ["IfaceEnv"],ModuleName ["IfaceSyn"],ModuleName ["IfaceType"],ModuleName ["LoadIface"],ModuleName ["MkIface"],ModuleName ["TcIface"],ModuleName ["Annotations"],ModuleName ["BreakArray"],ModuleName ["CmdLineParser"],ModuleName ["CodeOutput"],ModuleName ["Config"],ModuleName ["Constants"],ModuleName ["DriverMkDepend"],ModuleName ["DriverPhases"],ModuleName ["DriverPipeline"],ModuleName ["DynFlags"],ModuleName ["ErrUtils"],ModuleName ["Finder"],ModuleName ["GHC"],ModuleName ["HeaderInfo"],ModuleName ["HscMain"],ModuleName ["HscStats"],ModuleName ["HscTypes"],ModuleName ["InteractiveEval"],ModuleName ["PackageConfig"],ModuleName ["Packages"],ModuleName ["PprTyThing"],ModuleName ["StaticFlags"],ModuleName ["StaticFlagParser"],ModuleName ["SysTools"],ModuleName ["TidyPgm"],ModuleName ["Ctype"],ModuleName ["HaddockUtils"],ModuleName ["LexCore"],ModuleName ["Lexer"],ModuleName ["Parser"],ModuleName ["ParserCore"],ModuleName ["ParserCoreUtils"],ModuleName ["RdrHsSyn"],ModuleName ["ForeignCall"],ModuleName ["PrelInfo"],ModuleName ["PrelNames"],ModuleName ["PrelRules"],ModuleName ["PrimOp"],ModuleName ["TysPrim"],ModuleName ["TysWiredIn"],ModuleName ["CostCentre"],ModuleName ["SCCfinal"],ModuleName ["RnBinds"],ModuleName ["RnEnv"],ModuleName ["RnExpr"],ModuleName ["RnHsDoc"],ModuleName ["RnHsSyn"],ModuleName ["RnNames"],ModuleName ["RnPat"],ModuleName ["RnSource"],ModuleName ["RnTypes"],ModuleName ["CoreMonad"],ModuleName ["CSE"],ModuleName ["FloatIn"],ModuleName ["FloatOut"],ModuleName ["LiberateCase"],ModuleName ["OccurAnal"],ModuleName ["SAT"],ModuleName ["SetLevels"],ModuleName ["SimplCore"],ModuleName ["SimplEnv"],ModuleName ["SimplMonad"],ModuleName ["SimplUtils"],ModuleName ["Simplify"],ModuleName ["SRT"],ModuleName ["SimplStg"],ModuleName ["StgStats"],ModuleName ["Rules"],ModuleName ["SpecConstr"],ModuleName ["Specialise"],ModuleName ["CoreToStg"],ModuleName ["StgLint"],ModuleName ["StgSyn"],ModuleName ["DmdAnal"],ModuleName ["SaAbsInt"],ModuleName ["SaLib"],ModuleName ["StrictAnal"],ModuleName ["WorkWrap"],ModuleName ["WwLib"],ModuleName ["FamInst"],ModuleName ["Inst"],ModuleName ["TcAnnotations"],ModuleName ["TcArrows"],ModuleName ["TcBinds"],ModuleName ["TcClassDcl"],ModuleName ["TcDefaults"],ModuleName ["TcDeriv"],ModuleName ["TcEnv"],ModuleName ["TcExpr"],ModuleName ["TcForeign"],ModuleName ["TcGenDeriv"],ModuleName ["TcHsSyn"],ModuleName ["TcHsType"],ModuleName ["TcInstDcls"],ModuleName ["TcMType"],ModuleName ["TcMatches"],ModuleName ["TcPat"],ModuleName ["TcRnDriver"],ModuleName ["TcRnMonad"],ModuleName ["TcRnTypes"],ModuleName ["TcRules"],ModuleName ["TcSimplify"],ModuleName ["TcTyClsDecls"],ModuleName ["TcTyDecls"],ModuleName ["TcTyFuns"],ModuleName ["TcType"],ModuleName ["TcUnify"],ModuleName ["Class"],ModuleName ["Coercion"],ModuleName ["FamInstEnv"],ModuleName ["FunDeps"],ModuleName ["Generics"],ModuleName ["InstEnv"],ModuleName ["TyCon"],ModuleName ["Type"],ModuleName ["TypeRep"],ModuleName ["Unify"],ModuleName ["Bag"],ModuleName ["Binary"],ModuleName ["BufWrite"],ModuleName ["Digraph"],ModuleName ["Encoding"],ModuleName ["FastBool"],ModuleName ["FastFunctions"],ModuleName ["FastMutInt"],ModuleName ["FastString"],ModuleName ["FastTypes"],ModuleName ["Fingerprint"],ModuleName ["FiniteMap"],ModuleName ["GraphBase"],ModuleName ["GraphColor"],ModuleName ["GraphOps"],ModuleName ["GraphPpr"],ModuleName ["IOEnv"],ModuleName ["Interval"],ModuleName ["LazyUniqFM"],ModuleName ["ListSetOps"],ModuleName ["Maybes"],ModuleName ["MonadUtils"],ModuleName ["OrdList"],ModuleName ["Outputable"],ModuleName ["Panic"],ModuleName ["Pretty"],ModuleName ["Serialized"],ModuleName ["State"],ModuleName ["StringBuffer"],ModuleName ["UniqFM"],ModuleName ["UniqSet"],ModuleName ["Util"],ModuleName ["VectBuiltIn"],ModuleName ["VectCore"],ModuleName ["VectMonad"],ModuleName ["VectType"],ModuleName ["VectUtils"],ModuleName ["Vectorise"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/ghc-6.12.1"], libraryDirs = ["/usr/lib/ghc-6.12.1/ghc-6.12.1"], hsLibraries = ["HSghc-6.12.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/ghc-6.12.1/include"], includes = [], depends = [InstalledPackageId "Cabal-1.8.0.2-72f6eafc7def741b28f6ec75d2686d14",InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "bin-package-db-0.0.0.0-0c559ebe951f9972c4e6dfe5ebd4ce6a",InstalledPackageId "bytestring-0.9.1.5-2d4a9d624c3be86b70c04730e5f12aca",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "hpc-0.5.0.4-9509a7b9efea6f1b5464702328eb4b44",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c",InstalledPackageId "process-1.0.1.2-8b5308cb23fbdc3c2df27e298550937f",InstalledPackageId "template-haskell-2.4.0.0-92d419f5a3bd03d1c021561d3b29c041",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/ghc-6.12.1/ghc.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/ghc-6.12.1"]}])]),(PackageName "ghc-binary",fromList [(Version {versionBranch = [0,5,0,2], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-binary-0.5.0.2-359d07c3fa596bee47da084cc306672c", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc-binary", pkgVersion = Version {versionBranch = [0,5,0,2], versionTags = []}}, license = BSD3, copyright = "", maintainer = "Lennart Kolmodin, Don Stewart <dons@galois.com>", author = "Lennart Kolmodin <kolmodin@dtek.chalmers.se>", stability = "provisional", homepage = "http://code.haskell.org/binary/", pkgUrl = "", 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.\nSerialisation speeds of over 1 G\\/sec have been observed,\nso this library should be suitable for high performance\nscenarios.", category = "Data, Parsing", exposed = False, exposedModules = [ModuleName ["Data","Binary"],ModuleName ["Data","Binary","Put"],ModuleName ["Data","Binary","Get"],ModuleName ["Data","Binary","Builder"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/ghc-binary-0.5.0.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/ghc-binary-0.5.0.2"], hsLibraries = ["HSghc-binary-0.5.0.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "bytestring-0.9.1.5-2d4a9d624c3be86b70c04730e5f12aca",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/ghc-binary-0.5.0.2/ghc-binary.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/ghc-binary-0.5.0.2"]}])]),(PackageName "ghc-prim",fromList [(Version {versionBranch = [0,2,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc-prim", pkgVersion = Version {versionBranch = [0,2,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "GHC primitives.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Prim"],ModuleName ["GHC","Bool"],ModuleName ["GHC","Debug"],ModuleName ["GHC","Generics"],ModuleName ["GHC","Ordering"],ModuleName ["GHC","PrimopWrappers"],ModuleName ["GHC","IntWord32"],ModuleName ["GHC","IntWord64"],ModuleName ["GHC","Tuple"],ModuleName ["GHC","Types"],ModuleName ["GHC","Unit"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/ghc-prim-0.2.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/ghc-prim-0.2.0.0"], hsLibraries = ["HSghc-prim-0.2.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/ghc-prim.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0"]}])]),(PackageName "hpc",fromList [(Version {versionBranch = [0,5,0,4], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "hpc-0.5.0.4-9509a7b9efea6f1b5464702328eb4b44", sourcePackageId = PackageIdentifier {pkgName = PackageName "hpc", pkgVersion = Version {versionBranch = [0,5,0,4], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "Andy Gill", stability = "", homepage = "", pkgUrl = "", description = "", category = "Control", exposed = True, exposedModules = [ModuleName ["Trace","Hpc","Util"],ModuleName ["Trace","Hpc","Mix"],ModuleName ["Trace","Hpc","Tix"],ModuleName ["Trace","Hpc","Reflect"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/hpc-0.5.0.4"], libraryDirs = ["/usr/lib/ghc-6.12.1/hpc-0.5.0.4"], hsLibraries = ["HShpc-0.5.0.4"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/hpc-0.5.0.4/hpc.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/hpc-0.5.0.4"]}])]),(PackageName "integer-gmp",fromList [(Version {versionBranch = [0,2,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "integer-gmp-0.2.0.0-fa82a0df93dc30b4a7c5654dd7c68cf4", sourcePackageId = PackageIdentifier {pkgName = PackageName "integer-gmp", pkgVersion = Version {versionBranch = [0,2,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains an Integer library based on GMP.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Integer"],ModuleName ["GHC","Integer","GMP","Internals"]], hiddenModules = [ModuleName ["GHC","Integer","Type"]], importDirs = ["/usr/lib/ghc-6.12.1/integer-gmp-0.2.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/integer-gmp-0.2.0.0"], hsLibraries = ["HSinteger-gmp-0.2.0.0"], extraLibraries = ["gmp"], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/integer-gmp-0.2.0.0/integer-gmp.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/integer-gmp-0.2.0.0"]}])]),(PackageName "old-locale",fromList [(Version {versionBranch = [1,0,0,2], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "old-locale-1.0.0.2-ef43da9d308528e2994f68a00a6ea03f", sourcePackageId = PackageIdentifier {pkgName = PackageName "old-locale", pkgVersion = Version {versionBranch = [1,0,0,2], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package provides the old locale library.\nFor new code, the new locale library is recommended.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Locale"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/old-locale-1.0.0.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/old-locale-1.0.0.2"], hsLibraries = ["HSold-locale-1.0.0.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/old-locale-1.0.0.2/old-locale.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/old-locale-1.0.0.2"]}])]),(PackageName "old-time",fromList [(Version {versionBranch = [1,0,0,3], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c", sourcePackageId = PackageIdentifier {pkgName = PackageName "old-time", pkgVersion = Version {versionBranch = [1,0,0,3], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package provides the old time library.\nFor new code, the new time library is recommended.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Time"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/old-time-1.0.0.3"], libraryDirs = ["/usr/lib/ghc-6.12.1/old-time-1.0.0.3"], hsLibraries = ["HSold-time-1.0.0.3"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/old-time-1.0.0.3/include"], includes = ["HsTime.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "old-locale-1.0.0.2-ef43da9d308528e2994f68a00a6ea03f"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/old-time-1.0.0.3/old-time.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/old-time-1.0.0.3"]}])]),(PackageName "pretty",fromList [(Version {versionBranch = [1,0,1,1], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "pretty-1.0.1.1-2bfa34c699efff7eed4d6297a2dac12d", sourcePackageId = PackageIdentifier {pkgName = PackageName "pretty", pkgVersion = Version {versionBranch = [1,0,1,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains John Hughes's pretty-printing library,\nheavily modified by Simon Peyton Jones.", category = "Text", exposed = True, exposedModules = [ModuleName ["Text","PrettyPrint"],ModuleName ["Text","PrettyPrint","HughesPJ"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/pretty-1.0.1.1"], libraryDirs = ["/usr/lib/ghc-6.12.1/pretty-1.0.1.1"], hsLibraries = ["HSpretty-1.0.1.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/pretty-1.0.1.1/pretty.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/pretty-1.0.1.1"]}])]),(PackageName "process",fromList [(Version {versionBranch = [1,0,1,2], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "process-1.0.1.2-8b5308cb23fbdc3c2df27e298550937f", sourcePackageId = PackageIdentifier {pkgName = PackageName "process", pkgVersion = Version {versionBranch = [1,0,1,2], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains libraries for dealing with system processes.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Process","Internals"],ModuleName ["System","Process"],ModuleName ["System","Cmd"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/process-1.0.1.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/process-1.0.1.2"], hsLibraries = ["HSprocess-1.0.1.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/process-1.0.1.2/include"], includes = ["runProcess.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/process-1.0.1.2/process.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/process-1.0.1.2"]}])]),(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 = "", description = "", category = "", exposed = True, exposedModules = [], hiddenModules = [], importDirs = [], libraryDirs = ["/usr/lib/ghc-6.12.1"], hsLibraries = ["HSrts"], extraLibraries = ["m","rt","dl"], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/include"], includes = ["Stg.h"], depends = [InstalledPackageId "builtin_ffi"], 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","base_GHCziWord_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_GHCziBool_False_closure","-u","ghczmprim_GHCziBool_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_runIO_closure","-u","base_GHCziTopHandler_runNonIO_closure","-u","base_GHCziConc_ensureIOManagerIsRunning_closure","-u","base_GHCziConc_runSparks_closure","-u","base_GHCziConc_runHandlers_closure"], frameworkDirs = [], frameworks = [], haddockInterfaces = [], haddockHTMLs = []}])]),(PackageName "template-haskell",fromList [(Version {versionBranch = [2,4,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "template-haskell-2.4.0.0-92d419f5a3bd03d1c021561d3b29c041", sourcePackageId = PackageIdentifier {pkgName = PackageName "template-haskell", pkgVersion = Version {versionBranch = [2,4,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "Facilities for manipulating Haskell source code using Template Haskell.", category = "", exposed = True, exposedModules = [ModuleName ["Language","Haskell","TH","Syntax","Internals"],ModuleName ["Language","Haskell","TH","Syntax"],ModuleName ["Language","Haskell","TH","PprLib"],ModuleName ["Language","Haskell","TH","Ppr"],ModuleName ["Language","Haskell","TH","Lib"],ModuleName ["Language","Haskell","TH","Quote"],ModuleName ["Language","Haskell","TH"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/template-haskell-2.4.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/template-haskell-2.4.0.0"], hsLibraries = ["HStemplate-haskell-2.4.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "pretty-1.0.1.1-2bfa34c699efff7eed4d6297a2dac12d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/template-haskell-2.4.0.0/template-haskell.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/template-haskell-2.4.0.0"]}])]),(PackageName "unix",fromList [(Version {versionBranch = [2,4,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e", sourcePackageId = PackageIdentifier {pkgName = PackageName "unix", pkgVersion = Version {versionBranch = [2,4,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package gives you access to the set of operating system\nservices standardised by POSIX 1003.1b (or the IEEE Portable\nOperating System Interface for Computing Environments -\nIEEE Std. 1003.1).\n\nThe package is not supported under Windows (except under Cygwin).", category = "System", exposed = True, exposedModules = [ModuleName ["System","Posix"],ModuleName ["System","Posix","DynamicLinker","Module"],ModuleName ["System","Posix","DynamicLinker","Prim"],ModuleName ["System","Posix","Directory"],ModuleName ["System","Posix","DynamicLinker"],ModuleName ["System","Posix","Env"],ModuleName ["System","Posix","Error"],ModuleName ["System","Posix","Files"],ModuleName ["System","Posix","IO"],ModuleName ["System","Posix","Process"],ModuleName ["System","Posix","Process","Internals"],ModuleName ["System","Posix","Resource"],ModuleName ["System","Posix","Temp"],ModuleName ["System","Posix","Terminal"],ModuleName ["System","Posix","Time"],ModuleName ["System","Posix","Unistd"],ModuleName ["System","Posix","User"],ModuleName ["System","Posix","Signals"],ModuleName ["System","Posix","Signals","Exts"],ModuleName ["System","Posix","Semaphore"],ModuleName ["System","Posix","SharedMem"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/unix-2.4.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/unix-2.4.0.0"], hsLibraries = ["HSunix-2.4.0.0"], extraLibraries = ["rt","util","dl"], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/unix-2.4.0.0/include"], includes = ["HsUnix.h","execvpe.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/unix-2.4.0.0/unix.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/unix-2.4.0.0"]}])])]), pkgDescrFile = Just "./cabalTest.cabal", localPkgDescr = PackageDescription {package = PackageIdentifier {pkgName = PackageName "cabalTest", pkgVersion = Version {versionBranch = [0,0,1], versionTags = []}}, license = AllRightsReserved, licenseFile = "", copyright = "", maintainer = "", author = "", stability = "", testedWith = [], homepage = "", pkgUrl = "", bugReports = "", sourceRepos = [], synopsis = "", description = "", category = "", customFieldsPD = [], buildDepends = [Dependency (PackageName "ghc") (UnionVersionRanges (ThisVersion (Version {versionBranch = [6], versionTags = []})) (LaterVersion (Version {versionBranch = [6], versionTags = []})))], descCabalVersion = UnionVersionRanges (ThisVersion (Version {versionBranch = [1,8], versionTags = []})) (LaterVersion (Version {versionBranch = [1,8], versionTags = []})), buildType = Just Simple, library = Just (Library {exposedModules = [ModuleName ["CabalTest"]], libExposed = True, libBuildInfo = BuildInfo {buildable = True, buildTools = [], cppOptions = [], ccOptions = [], ldOptions = [], pkgconfigDepends = [], frameworks = [], cSources = [], hsSourceDirs = ["src"], otherModules = [], extensions = [], extraLibs = [], extraLibDirs = [], includeDirs = [], includes = [], installIncludes = [], options = [(GHC,["-Wall"])], ghcProfOptions = [], ghcSharedOptions = [], customFieldsBI = [], targetBuildDepends = [Dependency (PackageName "ghc") (UnionVersionRanges (ThisVersion (Version {versionBranch = [6], versionTags = []})) (LaterVersion (Version {versionBranch = [6], versionTags = []})))]}}), executables = [Executable {exeName = "cabalTest", modulePath = "Main.hs", buildInfo = BuildInfo {buildable = True, buildTools = [], cppOptions = [], ccOptions = [], ldOptions = [], pkgconfigDepends = [], frameworks = [], cSources = [], hsSourceDirs = ["src"], otherModules = [], extensions = [], extraLibs = [], extraLibDirs = [], includeDirs = [], includes = [], installIncludes = [], options = [(GHC,["-Wall"])], ghcProfOptions = [], ghcSharedOptions = [], customFieldsBI = [], targetBuildDepends = [Dependency (PackageName "ghc") (UnionVersionRanges (ThisVersion (Version {versionBranch = [6], versionTags = []})) (LaterVersion (Version {versionBranch = [6], versionTags = []})))]}}], dataFiles = [], dataDir = "", extraSrcFiles = [], extraTmpFiles = []}, withPrograms = [("ar",ConfiguredProgram {programId = "ar", programVersion = Nothing, programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ar"}}),("cpphs",ConfiguredProgram {programId = "cpphs", programVersion = Just (Version {versionBranch = [1,11], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/cpphs"}}),("gcc",ConfiguredProgram {programId = "gcc", programVersion = Just (Version {versionBranch = [4,5,0], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/gcc"}}),("ghc",ConfiguredProgram {programId = "ghc", programVersion = Just (Version {versionBranch = [6,12,1], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ghc"}}),("ghc-pkg",ConfiguredProgram {programId = "ghc-pkg", programVersion = Just (Version {versionBranch = [6,12,1], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ghc-pkg"}}),("haddock",ConfiguredProgram {programId = "haddock", programVersion = Just (Version {versionBranch = [2,6,0], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/haddock"}}),("happy",ConfiguredProgram {programId = "happy", programVersion = Just (Version {versionBranch = [1,18,4], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/happy"}}),("hsc2hs",ConfiguredProgram {programId = "hsc2hs", programVersion = Just (Version {versionBranch = [0,67], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/hsc2hs"}}),("hscolour",ConfiguredProgram {programId = "hscolour", programVersion = Just (Version {versionBranch = [1,16], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/HsColour"}}),("ld",ConfiguredProgram {programId = "ld", programVersion = Nothing, programArgs = ["-x"], programLocation = FoundOnSystem {locationPath = "/usr/bin/ld"}}),("pkg-config",ConfiguredProgram {programId = "pkg-config", programVersion = Just (Version {versionBranch = [0,25], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/pkg-config"}}),("ranlib",ConfiguredProgram {programId = "ranlib", programVersion = Nothing, programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ranlib"}}),("strip",ConfiguredProgram {programId = "strip", programVersion = Nothing, programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/strip"}}),("tar",ConfiguredProgram {programId = "tar", programVersion = Nothing, programArgs = [], programLocation = FoundOnSystem {locationPath = "/bin/tar"}})], withPackageDB = [GlobalPackageDB], withVanillaLib = True, withProfLib = False, withSharedLib = False, withProfExe = False, withOptimization = NormalOptimisation, withGHCiLib = True, splitObjs = False, stripExes = True, progPrefix = "", progSuffix = ""}
diff --git a/testsuite/tests/resources/cabalTest/src/CabalTest.hs b/testsuite/tests/resources/cabalTest/src/CabalTest.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/resources/cabalTest/src/CabalTest.hs
@@ -0,0 +1,4 @@
+module CabalTest
+ where
+
+
diff --git a/testsuite/tests/resources/cabalTest/src/Main.hs b/testsuite/tests/resources/cabalTest/src/Main.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/resources/cabalTest/src/Main.hs
@@ -0,0 +1,4 @@
+module Main
+ where
+
+main = putStrLn "42"
diff --git a/testsuite/tests/resources/invalidMain/dist/setup-config b/testsuite/tests/resources/invalidMain/dist/setup-config
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/resources/invalidMain/dist/setup-config
@@ -0,0 +1,2 @@
+Saved package config for invalidMain-0.0.1 written by Cabal-1.8.0.2 using ghc-6.12
+LocalBuildInfo {installDirTemplates = InstallDirs {prefix = "/usr/local", bindir = "$prefix/bin", libdir = "$prefix/lib", 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 = [6,12,1], versionTags = []}), compilerExtensions = [(CPP,"-XCPP"),(PostfixOperators,"-XPostfixOperators"),(UnknownExtension "TupleSections","-XTupleSections"),(PatternGuards,"-XPatternGuards"),(UnicodeSyntax,"-XUnicodeSyntax"),(MagicHash,"-XMagicHash"),(PolymorphicComponents,"-XPolymorphicComponents"),(ExistentialQuantification,"-XExistentialQuantification"),(KindSignatures,"-XKindSignatures"),(EmptyDataDecls,"-XEmptyDataDecls"),(ParallelListComp,"-XParallelListComp"),(TransformListComp,"-XTransformListComp"),(ForeignFunctionInterface,"-XForeignFunctionInterface"),(UnliftedFFITypes,"-XUnliftedFFITypes"),(UnknownExtension "GHCForeignImportPrim","-XGHCForeignImportPrim"),(LiberalTypeSynonyms,"-XLiberalTypeSynonyms"),(Rank2Types,"-XRank2Types"),(RankNTypes,"-XRankNTypes"),(ImpredicativeTypes,"-XImpredicativeTypes"),(TypeOperators,"-XTypeOperators"),(RecursiveDo,"-XRecursiveDo"),(UnknownExtension "DoRec","-XDoRec"),(Arrows,"-XArrows"),(UnknownExtension "PArr","-XPArr"),(TemplateHaskell,"-XTemplateHaskell"),(QuasiQuotes,"-XQuasiQuotes"),(Generics,"-XGenerics"),(NoImplicitPrelude,"-XNoImplicitPrelude"),(RecordWildCards,"-XRecordWildCards"),(NamedFieldPuns,"-XNamedFieldPuns"),(RecordPuns,"-XRecordPuns"),(DisambiguateRecordFields,"-XDisambiguateRecordFields"),(OverloadedStrings,"-XOverloadedStrings"),(GADTs,"-XGADTs"),(ViewPatterns,"-XViewPatterns"),(TypeFamilies,"-XTypeFamilies"),(BangPatterns,"-XBangPatterns"),(NoMonomorphismRestriction,"-XNoMonomorphismRestriction"),(UnknownExtension "NPlusKPatterns","-XNPlusKPatterns"),(NoMonoPatBinds,"-XNoMonoPatBinds"),(UnknownExtension "ExplicitForAll","-XExplicitForAll"),(UnknownExtension "MonoLocalBinds","-XMonoLocalBinds"),(RelaxedPolyRec,"-XRelaxedPolyRec"),(ExtendedDefaultRules,"-XExtendedDefaultRules"),(ImplicitParams,"-XImplicitParams"),(ScopedTypeVariables,"-XScopedTypeVariables"),(PatternSignatures,"-XPatternSignatures"),(UnboxedTuples,"-XUnboxedTuples"),(StandaloneDeriving,"-XStandaloneDeriving"),(DeriveDataTypeable,"-XDeriveDataTypeable"),(UnknownExtension "DeriveFunctor","-XDeriveFunctor"),(UnknownExtension "DeriveTraversable","-XDeriveTraversable"),(UnknownExtension "DeriveFoldable","-XDeriveFoldable"),(TypeSynonymInstances,"-XTypeSynonymInstances"),(FlexibleContexts,"-XFlexibleContexts"),(FlexibleInstances,"-XFlexibleInstances"),(ConstrainedClassMethods,"-XConstrainedClassMethods"),(MultiParamTypeClasses,"-XMultiParamTypeClasses"),(FunctionalDependencies,"-XFunctionalDependencies"),(GeneralizedNewtypeDeriving,"-XGeneralizedNewtypeDeriving"),(OverlappingInstances,"-XOverlappingInstances"),(UndecidableInstances,"-XUndecidableInstances"),(IncoherentInstances,"-XIncoherentInstances"),(PackageImports,"-XPackageImports"),(NewQualifiedOperators,"-XNewQualifiedOperators")]}, buildDir = "dist/build", scratchDir = "dist/scratch", libraryConfig = Nothing, executableConfigs = [("invalidMain",ComponentLocalBuildInfo {componentPackageDeps = [(InstalledPackageId "ghc-6.12.1-f94cf9a4e78a37cbe95dfc7fe6c1c623",PackageIdentifier {pkgName = PackageName "ghc", pkgVersion = Version {versionBranch = [6,12,1], versionTags = []}})]})], installedPkgs = PackageIndex (fromList [(InstalledPackageId "Cabal-1.8.0.2-72f6eafc7def741b28f6ec75d2686d14",InstalledPackageInfo {installedPackageId = InstalledPackageId "Cabal-1.8.0.2-72f6eafc7def741b28f6ec75d2686d14", sourcePackageId = PackageIdentifier {pkgName = PackageName "Cabal", pkgVersion = Version {versionBranch = [1,8,0,2], versionTags = []}}, license = BSD3, copyright = "2003-2006, Isaac Jones\n2005-2009, Duncan Coutts", maintainer = "cabal-devel@haskell.org", author = "Isaac Jones <ijones@syntaxpolice.org>\nDuncan Coutts <duncan@haskell.org>", stability = "", homepage = "http://www.haskell.org/cabal/", pkgUrl = "", description = "The Haskell Common Architecture for Building Applications and\nLibraries: a framework defining a common interface for authors to more\neasily build their Haskell applications in a portable way.\n\nThe Haskell Cabal is part of a larger infrastructure for distributing,\norganizing, and cataloging Haskell libraries and tools.", category = "Distribution", exposed = True, exposedModules = [ModuleName ["Distribution","Compiler"],ModuleName ["Distribution","InstalledPackageInfo"],ModuleName ["Distribution","License"],ModuleName ["Distribution","Make"],ModuleName ["Distribution","ModuleName"],ModuleName ["Distribution","Package"],ModuleName ["Distribution","PackageDescription"],ModuleName ["Distribution","PackageDescription","Configuration"],ModuleName ["Distribution","PackageDescription","Parse"],ModuleName ["Distribution","PackageDescription","Check"],ModuleName ["Distribution","ParseUtils"],ModuleName ["Distribution","ReadE"],ModuleName ["Distribution","Simple"],ModuleName ["Distribution","Simple","Build"],ModuleName ["Distribution","Simple","Build","Macros"],ModuleName ["Distribution","Simple","Build","PathsModule"],ModuleName ["Distribution","Simple","BuildPaths"],ModuleName ["Distribution","Simple","Command"],ModuleName ["Distribution","Simple","Compiler"],ModuleName ["Distribution","Simple","Configure"],ModuleName ["Distribution","Simple","GHC"],ModuleName ["Distribution","Simple","LHC"],ModuleName ["Distribution","Simple","Haddock"],ModuleName ["Distribution","Simple","Hugs"],ModuleName ["Distribution","Simple","Install"],ModuleName ["Distribution","Simple","InstallDirs"],ModuleName ["Distribution","Simple","JHC"],ModuleName ["Distribution","Simple","LocalBuildInfo"],ModuleName ["Distribution","Simple","NHC"],ModuleName ["Distribution","Simple","PackageIndex"],ModuleName ["Distribution","Simple","PreProcess"],ModuleName ["Distribution","Simple","PreProcess","Unlit"],ModuleName ["Distribution","Simple","Program"],ModuleName ["Distribution","Simple","Program","Ar"],ModuleName ["Distribution","Simple","Program","Builtin"],ModuleName ["Distribution","Simple","Program","Db"],ModuleName ["Distribution","Simple","Program","HcPkg"],ModuleName ["Distribution","Simple","Program","Ld"],ModuleName ["Distribution","Simple","Program","Run"],ModuleName ["Distribution","Simple","Program","Script"],ModuleName ["Distribution","Simple","Program","Types"],ModuleName ["Distribution","Simple","Register"],ModuleName ["Distribution","Simple","Setup"],ModuleName ["Distribution","Simple","SrcDist"],ModuleName ["Distribution","Simple","UserHooks"],ModuleName ["Distribution","Simple","Utils"],ModuleName ["Distribution","System"],ModuleName ["Distribution","Text"],ModuleName ["Distribution","Verbosity"],ModuleName ["Distribution","Version"],ModuleName ["Distribution","Compat","ReadP"],ModuleName ["Language","Haskell","Extension"]], hiddenModules = [ModuleName ["Distribution","GetOpt"],ModuleName ["Distribution","Compat","Exception"],ModuleName ["Distribution","Compat","CopyFile"],ModuleName ["Distribution","Compat","TempFile"],ModuleName ["Distribution","Simple","GHC","IPI641"],ModuleName ["Distribution","Simple","GHC","IPI642"]], importDirs = ["/usr/lib/ghc-6.12.1/Cabal-1.8.0.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/Cabal-1.8.0.2"], hsLibraries = ["HSCabal-1.8.0.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c",InstalledPackageId "pretty-1.0.1.1-2bfa34c699efff7eed4d6297a2dac12d",InstalledPackageId "process-1.0.1.2-8b5308cb23fbdc3c2df27e298550937f",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/Cabal-1.8.0.2/Cabal.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/Cabal-1.8.0.2"]}),(InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageInfo {installedPackageId = InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98", sourcePackageId = PackageIdentifier {pkgName = PackageName "array", pkgVersion = Version {versionBranch = [0,3,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", 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","Internals"],ModuleName ["Data","Array","MArray"],ModuleName ["Data","Array","ST"],ModuleName ["Data","Array","Storable"],ModuleName ["Data","Array","Unboxed"],ModuleName ["Data","Array"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/array-0.3.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/array-0.3.0.0"], hsLibraries = ["HSarray-0.3.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/array-0.3.0.0/array.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/array-0.3.0.0"]}),(InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageInfo {installedPackageId = InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d", sourcePackageId = PackageIdentifier {pkgName = PackageName "base", pkgVersion = Version {versionBranch = [4,2,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", 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","Classes"],ModuleName ["GHC","Conc"],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","Float"],ModuleName ["GHC","ForeignPtr"],ModuleName ["GHC","MVar"],ModuleName ["GHC","IO"],ModuleName ["GHC","IO","IOMode"],ModuleName ["GHC","IO","Buffer"],ModuleName ["GHC","IO","Device"],ModuleName ["GHC","IO","BufferedIO"],ModuleName ["GHC","IO","FD"],ModuleName ["GHC","IO","Exception"],ModuleName ["GHC","IO","Encoding"],ModuleName ["GHC","IO","Encoding","Latin1"],ModuleName ["GHC","IO","Encoding","UTF8"],ModuleName ["GHC","IO","Encoding","UTF16"],ModuleName ["GHC","IO","Encoding","UTF32"],ModuleName ["GHC","IO","Encoding","Types"],ModuleName ["GHC","IO","Encoding","Iconv"],ModuleName ["GHC","IO","Encoding","CodePage"],ModuleName ["GHC","IO","Handle"],ModuleName ["GHC","IO","Handle","Types"],ModuleName ["GHC","IO","Handle","Internals"],ModuleName ["GHC","IO","Handle","FD"],ModuleName ["GHC","IO","Handle","Text"],ModuleName ["GHC","IOBase"],ModuleName ["GHC","Handle"],ModuleName ["GHC","IORef"],ModuleName ["GHC","IOArray"],ModuleName ["GHC","Int"],ModuleName ["GHC","List"],ModuleName ["GHC","Num"],ModuleName ["GHC","PArr"],ModuleName ["GHC","Pack"],ModuleName ["GHC","Ptr"],ModuleName ["GHC","Read"],ModuleName ["GHC","Real"],ModuleName ["GHC","ST"],ModuleName ["GHC","STRef"],ModuleName ["GHC","Show"],ModuleName ["GHC","Stable"],ModuleName ["GHC","Storable"],ModuleName ["GHC","TopHandler"],ModuleName ["GHC","Unicode"],ModuleName ["GHC","Weak"],ModuleName ["GHC","Word"],ModuleName ["System","Timeout"],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","OldException"],ModuleName ["Control","Monad"],ModuleName ["Control","Monad","Fix"],ModuleName ["Control","Monad","Instances"],ModuleName ["Control","Monad","ST"],ModuleName ["Control","Monad","ST","Lazy"],ModuleName ["Control","Monad","ST","Strict"],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","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","Marshal"],ModuleName ["Foreign","Marshal","Alloc"],ModuleName ["Foreign","Marshal","Array"],ModuleName ["Foreign","Marshal","Error"],ModuleName ["Foreign","Marshal","Pool"],ModuleName ["Foreign","Marshal","Utils"],ModuleName ["Foreign","Ptr"],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 = [], importDirs = ["/usr/lib/ghc-6.12.1/base-4.2.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/base-4.2.0.0"], hsLibraries = ["HSbase-4.2.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/base-4.2.0.0/include"], includes = ["HsBase.h"], depends = [InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990",InstalledPackageId "integer-gmp-0.2.0.0-fa82a0df93dc30b4a7c5654dd7c68cf4",InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/base-4.2.0.0/base.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/base-4.2.0.0"]}),(InstalledPackageId "bin-package-db-0.0.0.0-0c559ebe951f9972c4e6dfe5ebd4ce6a",InstalledPackageInfo {installedPackageId = InstalledPackageId "bin-package-db-0.0.0.0-0c559ebe951f9972c4e6dfe5ebd4ce6a", sourcePackageId = PackageIdentifier {pkgName = PackageName "bin-package-db", pkgVersion = Version {versionBranch = [0,0,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "cvs-ghc@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "", category = "", exposed = True, exposedModules = [ModuleName ["Distribution","InstalledPackageInfo","Binary"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/bin-package-db-0.0.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/bin-package-db-0.0.0.0"], hsLibraries = ["HSbin-package-db-0.0.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "Cabal-1.8.0.2-72f6eafc7def741b28f6ec75d2686d14",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "ghc-binary-0.5.0.2-359d07c3fa596bee47da084cc306672c"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/bin-package-db-0.0.0.0/bin-package-db.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/bin-package-db-0.0.0.0"]}),(InstalledPackageId "builtin_ffi",InstalledPackageInfo {installedPackageId = InstalledPackageId "builtin_ffi", sourcePackageId = PackageIdentifier {pkgName = PackageName "ffi", pkgVersion = Version {versionBranch = [1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "glasgow-haskell-users@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "", category = "", exposed = True, exposedModules = [], hiddenModules = [], importDirs = [], libraryDirs = ["/usr/lib/ghc-6.12.1"], hsLibraries = ["HSffi"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/include"], includes = [], depends = [], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = [], haddockHTMLs = []}),(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 = "", description = "", category = "", exposed = True, exposedModules = [], hiddenModules = [], importDirs = [], libraryDirs = ["/usr/lib/ghc-6.12.1"], hsLibraries = ["HSrts"], extraLibraries = ["m","rt","dl"], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/include"], includes = ["Stg.h"], depends = [InstalledPackageId "builtin_ffi"], 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","base_GHCziWord_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_GHCziBool_False_closure","-u","ghczmprim_GHCziBool_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_runIO_closure","-u","base_GHCziTopHandler_runNonIO_closure","-u","base_GHCziConc_ensureIOManagerIsRunning_closure","-u","base_GHCziConc_runSparks_closure","-u","base_GHCziConc_runHandlers_closure"], frameworkDirs = [], frameworks = [], haddockInterfaces = [], haddockHTMLs = []}),(InstalledPackageId "bytestring-0.9.1.5-2d4a9d624c3be86b70c04730e5f12aca",InstalledPackageInfo {installedPackageId = InstalledPackageId "bytestring-0.9.1.5-2d4a9d624c3be86b70c04730e5f12aca", sourcePackageId = PackageIdentifier {pkgName = PackageName "bytestring", pkgVersion = Version {versionBranch = [0,9,1,5], versionTags = []}}, license = BSD3, copyright = "Copyright (c) Don Stewart   2005-2009,\n(c) Duncan Coutts 2006-2009,\n(c) David Roundy  2003-2005.", maintainer = "dons@galois.com, duncan@haskell.org", author = "Don Stewart, Duncan Coutts", stability = "", homepage = "http://www.cse.unsw.edu.au/~dons/fps.html", pkgUrl = "", description = "A time and space-efficient implementation of byte vectors using\npacked Word8 arrays, suitable for high performance use, both in terms\nof large data quantities, or high speed requirements. Byte vectors\nare encoded as strict 'Word8' arrays of bytes, and lazy lists of\nstrict chunks, held in a 'ForeignPtr', and can be passed between C\nand Haskell with little effort.\n\nTest coverage data for this library is available at:\n<http://code.haskell.org/~dons/tests/bytestring/hpc_index.html>", 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","Fusion"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/bytestring-0.9.1.5"], libraryDirs = ["/usr/lib/ghc-6.12.1/bytestring-0.9.1.5"], hsLibraries = ["HSbytestring-0.9.1.5"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/bytestring-0.9.1.5/include"], includes = ["fpstring.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/bytestring.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5"]}),(InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageInfo {installedPackageId = InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411", sourcePackageId = PackageIdentifier {pkgName = PackageName "containers", pkgVersion = Version {versionBranch = [0,3,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", 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","IntMap"],ModuleName ["Data","IntSet"],ModuleName ["Data","Map"],ModuleName ["Data","Sequence"],ModuleName ["Data","Set"],ModuleName ["Data","Tree"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/containers-0.3.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/containers-0.3.0.0"], hsLibraries = ["HScontainers-0.3.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/containers-0.3.0.0/containers.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/containers-0.3.0.0"]}),(InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageInfo {installedPackageId = InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c", sourcePackageId = PackageIdentifier {pkgName = PackageName "directory", pkgVersion = Version {versionBranch = [1,0,1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package provides a library for handling directories.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Directory"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/directory-1.0.1.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/directory-1.0.1.0"], hsLibraries = ["HSdirectory-1.0.1.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/directory-1.0.1.0/include"], includes = ["HsDirectory.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/directory-1.0.1.0/directory.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/directory-1.0.1.0"]}),(InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageInfo {installedPackageId = InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87", sourcePackageId = PackageIdentifier {pkgName = PackageName "filepath", pkgVersion = Version {versionBranch = [1,1,0,3], versionTags = []}}, license = BSD3, copyright = "", maintainer = "", author = "Neil Mitchell", stability = "", homepage = "http://www-users.cs.york.ac.uk/~ndm/filepath/", pkgUrl = "", description = "", category = "System", exposed = True, exposedModules = [ModuleName ["System","FilePath"],ModuleName ["System","FilePath","Posix"],ModuleName ["System","FilePath","Windows"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/filepath-1.1.0.3"], libraryDirs = ["/usr/lib/ghc-6.12.1/filepath-1.1.0.3"], hsLibraries = ["HSfilepath-1.1.0.3"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/filepath-1.1.0.3/filepath.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/filepath-1.1.0.3"]}),(InstalledPackageId "ghc-6.12.1-f94cf9a4e78a37cbe95dfc7fe6c1c623",InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-6.12.1-f94cf9a4e78a37cbe95dfc7fe6c1c623", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc", pkgVersion = Version {versionBranch = [6,12,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "glasgow-haskell-users@haskell.org", author = "The GHC Team", stability = "", homepage = "http://www.haskell.org/ghc/", pkgUrl = "", description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.", category = "Development", exposed = False, exposedModules = [ModuleName ["AsmCodeGen"],ModuleName ["TargetReg"],ModuleName ["NCGMonad"],ModuleName ["Instruction"],ModuleName ["Size"],ModuleName ["Reg"],ModuleName ["RegClass"],ModuleName ["PprBase"],ModuleName ["PIC"],ModuleName ["Platform"],ModuleName ["Alpha","Regs"],ModuleName ["Alpha","RegInfo"],ModuleName ["Alpha","Instr"],ModuleName ["Alpha","CodeGen"],ModuleName ["X86","Regs"],ModuleName ["X86","RegInfo"],ModuleName ["X86","Instr"],ModuleName ["X86","Cond"],ModuleName ["X86","Ppr"],ModuleName ["X86","CodeGen"],ModuleName ["PPC","Regs"],ModuleName ["PPC","RegInfo"],ModuleName ["PPC","Instr"],ModuleName ["PPC","Cond"],ModuleName ["PPC","Ppr"],ModuleName ["PPC","CodeGen"],ModuleName ["SPARC","Base"],ModuleName ["SPARC","Regs"],ModuleName ["SPARC","RegPlate"],ModuleName ["SPARC","Imm"],ModuleName ["SPARC","AddrMode"],ModuleName ["SPARC","Cond"],ModuleName ["SPARC","Instr"],ModuleName ["SPARC","Stack"],ModuleName ["SPARC","ShortcutJump"],ModuleName ["SPARC","Ppr"],ModuleName ["SPARC","CodeGen"],ModuleName ["SPARC","CodeGen","Amode"],ModuleName ["SPARC","CodeGen","Base"],ModuleName ["SPARC","CodeGen","CCall"],ModuleName ["SPARC","CodeGen","CondCode"],ModuleName ["SPARC","CodeGen","Gen32"],ModuleName ["SPARC","CodeGen","Gen64"],ModuleName ["SPARC","CodeGen","Sanity"],ModuleName ["SPARC","CodeGen","Expand"],ModuleName ["RegAlloc","Liveness"],ModuleName ["RegAlloc","Graph","Main"],ModuleName ["RegAlloc","Graph","Stats"],ModuleName ["RegAlloc","Graph","ArchBase"],ModuleName ["RegAlloc","Graph","ArchX86"],ModuleName ["RegAlloc","Graph","Coalesce"],ModuleName ["RegAlloc","Graph","Spill"],ModuleName ["RegAlloc","Graph","SpillClean"],ModuleName ["RegAlloc","Graph","SpillCost"],ModuleName ["RegAlloc","Graph","TrivColorable"],ModuleName ["RegAlloc","Linear","Main"],ModuleName ["RegAlloc","Linear","JoinToTargets"],ModuleName ["RegAlloc","Linear","State"],ModuleName ["RegAlloc","Linear","Stats"],ModuleName ["RegAlloc","Linear","FreeRegs"],ModuleName ["RegAlloc","Linear","StackMap"],ModuleName ["RegAlloc","Linear","Base"],ModuleName ["RegAlloc","Linear","X86","FreeRegs"],ModuleName ["RegAlloc","Linear","PPC","FreeRegs"],ModuleName ["RegAlloc","Linear","SPARC","FreeRegs"],ModuleName ["DsMeta"],ModuleName ["TcSplice"],ModuleName ["Convert"],ModuleName ["ByteCodeAsm"],ModuleName ["ByteCodeFFI"],ModuleName ["ByteCodeGen"],ModuleName ["ByteCodeInstr"],ModuleName ["ByteCodeItbls"],ModuleName ["ByteCodeLink"],ModuleName ["Debugger"],ModuleName ["LibFFI"],ModuleName ["Linker"],ModuleName ["ObjLink"],ModuleName ["RtClosureInspect"],ModuleName ["BasicTypes"],ModuleName ["DataCon"],ModuleName ["Demand"],ModuleName ["Exception"],ModuleName ["Id"],ModuleName ["IdInfo"],ModuleName ["Literal"],ModuleName ["MkId"],ModuleName ["Module"],ModuleName ["Name"],ModuleName ["NameEnv"],ModuleName ["NameSet"],ModuleName ["NewDemand"],ModuleName ["OccName"],ModuleName ["RdrName"],ModuleName ["SrcLoc"],ModuleName ["UniqSupply"],ModuleName ["Unique"],ModuleName ["Var"],ModuleName ["VarEnv"],ModuleName ["VarSet"],ModuleName ["BlockId"],ModuleName ["CLabel"],ModuleName ["Cmm"],ModuleName ["CmmBrokenBlock"],ModuleName ["CmmBuildInfoTables"],ModuleName ["CmmCPS"],ModuleName ["CmmCPSGen"],ModuleName ["CmmCPSZ"],ModuleName ["CmmCallConv"],ModuleName ["CmmCommonBlockElimZ"],ModuleName ["CmmContFlowOpt"],ModuleName ["CmmCvt"],ModuleName ["CmmExpr"],ModuleName ["CmmInfo"],ModuleName ["CmmLex"],ModuleName ["CmmLint"],ModuleName ["CmmLive"],ModuleName ["CmmLiveZ"],ModuleName ["CmmOpt"],ModuleName ["CmmParse"],ModuleName ["CmmProcPoint"],ModuleName ["CmmProcPointZ"],ModuleName ["CmmSpillReload"],ModuleName ["CmmStackLayout"],ModuleName ["CmmTx"],ModuleName ["CmmUtils"],ModuleName ["CmmZipUtil"],ModuleName ["DFMonad"],ModuleName ["Dataflow"],ModuleName ["MkZipCfg"],ModuleName ["MkZipCfgCmm"],ModuleName ["OptimizationFuel"],ModuleName ["PprC"],ModuleName ["PprCmm"],ModuleName ["PprCmmZ"],ModuleName ["StackColor"],ModuleName ["StackPlacements"],ModuleName ["ZipCfg"],ModuleName ["ZipCfgCmmRep"],ModuleName ["ZipCfgExtras"],ModuleName ["ZipDataflow"],ModuleName ["Bitmap"],ModuleName ["CgBindery"],ModuleName ["CgCallConv"],ModuleName ["CgCase"],ModuleName ["CgClosure"],ModuleName ["CgCon"],ModuleName ["CgExpr"],ModuleName ["CgForeignCall"],ModuleName ["CgHeapery"],ModuleName ["CgHpc"],ModuleName ["CgInfoTbls"],ModuleName ["CgLetNoEscape"],ModuleName ["CgMonad"],ModuleName ["CgParallel"],ModuleName ["CgPrimOp"],ModuleName ["CgProf"],ModuleName ["CgStackery"],ModuleName ["CgTailCall"],ModuleName ["CgTicky"],ModuleName ["CgUtils"],ModuleName ["StgCmm"],ModuleName ["StgCmmBind"],ModuleName ["StgCmmClosure"],ModuleName ["StgCmmCon"],ModuleName ["StgCmmEnv"],ModuleName ["StgCmmExpr"],ModuleName ["StgCmmForeign"],ModuleName ["StgCmmGran"],ModuleName ["StgCmmHeap"],ModuleName ["StgCmmHpc"],ModuleName ["StgCmmLayout"],ModuleName ["StgCmmMonad"],ModuleName ["StgCmmPrim"],ModuleName ["StgCmmProf"],ModuleName ["StgCmmTicky"],ModuleName ["StgCmmUtils"],ModuleName ["ClosureInfo"],ModuleName ["CodeGen"],ModuleName ["SMRep"],ModuleName ["CoreArity"],ModuleName ["CoreFVs"],ModuleName ["CoreLint"],ModuleName ["CorePrep"],ModuleName ["CoreSubst"],ModuleName ["CoreSyn"],ModuleName ["CoreTidy"],ModuleName ["CoreUnfold"],ModuleName ["CoreUtils"],ModuleName ["ExternalCore"],ModuleName ["MkCore"],ModuleName ["MkExternalCore"],ModuleName ["PprCore"],ModuleName ["PprExternalCore"],ModuleName ["CprAnalyse"],ModuleName ["Check"],ModuleName ["Coverage"],ModuleName ["Desugar"],ModuleName ["DsArrows"],ModuleName ["DsBinds"],ModuleName ["DsCCall"],ModuleName ["DsExpr"],ModuleName ["DsForeign"],ModuleName ["DsGRHSs"],ModuleName ["DsListComp"],ModuleName ["DsMonad"],ModuleName ["DsUtils"],ModuleName ["Match"],ModuleName ["MatchCon"],ModuleName ["MatchLit"],ModuleName ["HsBinds"],ModuleName ["HsDecls"],ModuleName ["HsDoc"],ModuleName ["HsExpr"],ModuleName ["HsImpExp"],ModuleName ["HsLit"],ModuleName ["HsPat"],ModuleName ["HsSyn"],ModuleName ["HsTypes"],ModuleName ["HsUtils"],ModuleName ["BinIface"],ModuleName ["BuildTyCl"],ModuleName ["IfaceEnv"],ModuleName ["IfaceSyn"],ModuleName ["IfaceType"],ModuleName ["LoadIface"],ModuleName ["MkIface"],ModuleName ["TcIface"],ModuleName ["Annotations"],ModuleName ["BreakArray"],ModuleName ["CmdLineParser"],ModuleName ["CodeOutput"],ModuleName ["Config"],ModuleName ["Constants"],ModuleName ["DriverMkDepend"],ModuleName ["DriverPhases"],ModuleName ["DriverPipeline"],ModuleName ["DynFlags"],ModuleName ["ErrUtils"],ModuleName ["Finder"],ModuleName ["GHC"],ModuleName ["HeaderInfo"],ModuleName ["HscMain"],ModuleName ["HscStats"],ModuleName ["HscTypes"],ModuleName ["InteractiveEval"],ModuleName ["PackageConfig"],ModuleName ["Packages"],ModuleName ["PprTyThing"],ModuleName ["StaticFlags"],ModuleName ["StaticFlagParser"],ModuleName ["SysTools"],ModuleName ["TidyPgm"],ModuleName ["Ctype"],ModuleName ["HaddockUtils"],ModuleName ["LexCore"],ModuleName ["Lexer"],ModuleName ["Parser"],ModuleName ["ParserCore"],ModuleName ["ParserCoreUtils"],ModuleName ["RdrHsSyn"],ModuleName ["ForeignCall"],ModuleName ["PrelInfo"],ModuleName ["PrelNames"],ModuleName ["PrelRules"],ModuleName ["PrimOp"],ModuleName ["TysPrim"],ModuleName ["TysWiredIn"],ModuleName ["CostCentre"],ModuleName ["SCCfinal"],ModuleName ["RnBinds"],ModuleName ["RnEnv"],ModuleName ["RnExpr"],ModuleName ["RnHsDoc"],ModuleName ["RnHsSyn"],ModuleName ["RnNames"],ModuleName ["RnPat"],ModuleName ["RnSource"],ModuleName ["RnTypes"],ModuleName ["CoreMonad"],ModuleName ["CSE"],ModuleName ["FloatIn"],ModuleName ["FloatOut"],ModuleName ["LiberateCase"],ModuleName ["OccurAnal"],ModuleName ["SAT"],ModuleName ["SetLevels"],ModuleName ["SimplCore"],ModuleName ["SimplEnv"],ModuleName ["SimplMonad"],ModuleName ["SimplUtils"],ModuleName ["Simplify"],ModuleName ["SRT"],ModuleName ["SimplStg"],ModuleName ["StgStats"],ModuleName ["Rules"],ModuleName ["SpecConstr"],ModuleName ["Specialise"],ModuleName ["CoreToStg"],ModuleName ["StgLint"],ModuleName ["StgSyn"],ModuleName ["DmdAnal"],ModuleName ["SaAbsInt"],ModuleName ["SaLib"],ModuleName ["StrictAnal"],ModuleName ["WorkWrap"],ModuleName ["WwLib"],ModuleName ["FamInst"],ModuleName ["Inst"],ModuleName ["TcAnnotations"],ModuleName ["TcArrows"],ModuleName ["TcBinds"],ModuleName ["TcClassDcl"],ModuleName ["TcDefaults"],ModuleName ["TcDeriv"],ModuleName ["TcEnv"],ModuleName ["TcExpr"],ModuleName ["TcForeign"],ModuleName ["TcGenDeriv"],ModuleName ["TcHsSyn"],ModuleName ["TcHsType"],ModuleName ["TcInstDcls"],ModuleName ["TcMType"],ModuleName ["TcMatches"],ModuleName ["TcPat"],ModuleName ["TcRnDriver"],ModuleName ["TcRnMonad"],ModuleName ["TcRnTypes"],ModuleName ["TcRules"],ModuleName ["TcSimplify"],ModuleName ["TcTyClsDecls"],ModuleName ["TcTyDecls"],ModuleName ["TcTyFuns"],ModuleName ["TcType"],ModuleName ["TcUnify"],ModuleName ["Class"],ModuleName ["Coercion"],ModuleName ["FamInstEnv"],ModuleName ["FunDeps"],ModuleName ["Generics"],ModuleName ["InstEnv"],ModuleName ["TyCon"],ModuleName ["Type"],ModuleName ["TypeRep"],ModuleName ["Unify"],ModuleName ["Bag"],ModuleName ["Binary"],ModuleName ["BufWrite"],ModuleName ["Digraph"],ModuleName ["Encoding"],ModuleName ["FastBool"],ModuleName ["FastFunctions"],ModuleName ["FastMutInt"],ModuleName ["FastString"],ModuleName ["FastTypes"],ModuleName ["Fingerprint"],ModuleName ["FiniteMap"],ModuleName ["GraphBase"],ModuleName ["GraphColor"],ModuleName ["GraphOps"],ModuleName ["GraphPpr"],ModuleName ["IOEnv"],ModuleName ["Interval"],ModuleName ["LazyUniqFM"],ModuleName ["ListSetOps"],ModuleName ["Maybes"],ModuleName ["MonadUtils"],ModuleName ["OrdList"],ModuleName ["Outputable"],ModuleName ["Panic"],ModuleName ["Pretty"],ModuleName ["Serialized"],ModuleName ["State"],ModuleName ["StringBuffer"],ModuleName ["UniqFM"],ModuleName ["UniqSet"],ModuleName ["Util"],ModuleName ["VectBuiltIn"],ModuleName ["VectCore"],ModuleName ["VectMonad"],ModuleName ["VectType"],ModuleName ["VectUtils"],ModuleName ["Vectorise"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/ghc-6.12.1"], libraryDirs = ["/usr/lib/ghc-6.12.1/ghc-6.12.1"], hsLibraries = ["HSghc-6.12.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/ghc-6.12.1/include"], includes = [], depends = [InstalledPackageId "Cabal-1.8.0.2-72f6eafc7def741b28f6ec75d2686d14",InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "bin-package-db-0.0.0.0-0c559ebe951f9972c4e6dfe5ebd4ce6a",InstalledPackageId "bytestring-0.9.1.5-2d4a9d624c3be86b70c04730e5f12aca",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "hpc-0.5.0.4-9509a7b9efea6f1b5464702328eb4b44",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c",InstalledPackageId "process-1.0.1.2-8b5308cb23fbdc3c2df27e298550937f",InstalledPackageId "template-haskell-2.4.0.0-92d419f5a3bd03d1c021561d3b29c041",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/ghc-6.12.1/ghc.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/ghc-6.12.1"]}),(InstalledPackageId "ghc-binary-0.5.0.2-359d07c3fa596bee47da084cc306672c",InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-binary-0.5.0.2-359d07c3fa596bee47da084cc306672c", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc-binary", pkgVersion = Version {versionBranch = [0,5,0,2], versionTags = []}}, license = BSD3, copyright = "", maintainer = "Lennart Kolmodin, Don Stewart <dons@galois.com>", author = "Lennart Kolmodin <kolmodin@dtek.chalmers.se>", stability = "provisional", homepage = "http://code.haskell.org/binary/", pkgUrl = "", 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.\nSerialisation speeds of over 1 G\\/sec have been observed,\nso this library should be suitable for high performance\nscenarios.", category = "Data, Parsing", exposed = False, exposedModules = [ModuleName ["Data","Binary"],ModuleName ["Data","Binary","Put"],ModuleName ["Data","Binary","Get"],ModuleName ["Data","Binary","Builder"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/ghc-binary-0.5.0.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/ghc-binary-0.5.0.2"], hsLibraries = ["HSghc-binary-0.5.0.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "bytestring-0.9.1.5-2d4a9d624c3be86b70c04730e5f12aca",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/ghc-binary-0.5.0.2/ghc-binary.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/ghc-binary-0.5.0.2"]}),(InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990",InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc-prim", pkgVersion = Version {versionBranch = [0,2,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "GHC primitives.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Prim"],ModuleName ["GHC","Bool"],ModuleName ["GHC","Debug"],ModuleName ["GHC","Generics"],ModuleName ["GHC","Ordering"],ModuleName ["GHC","PrimopWrappers"],ModuleName ["GHC","IntWord32"],ModuleName ["GHC","IntWord64"],ModuleName ["GHC","Tuple"],ModuleName ["GHC","Types"],ModuleName ["GHC","Unit"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/ghc-prim-0.2.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/ghc-prim-0.2.0.0"], hsLibraries = ["HSghc-prim-0.2.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/ghc-prim.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0"]}),(InstalledPackageId "hpc-0.5.0.4-9509a7b9efea6f1b5464702328eb4b44",InstalledPackageInfo {installedPackageId = InstalledPackageId "hpc-0.5.0.4-9509a7b9efea6f1b5464702328eb4b44", sourcePackageId = PackageIdentifier {pkgName = PackageName "hpc", pkgVersion = Version {versionBranch = [0,5,0,4], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "Andy Gill", stability = "", homepage = "", pkgUrl = "", description = "", category = "Control", exposed = True, exposedModules = [ModuleName ["Trace","Hpc","Util"],ModuleName ["Trace","Hpc","Mix"],ModuleName ["Trace","Hpc","Tix"],ModuleName ["Trace","Hpc","Reflect"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/hpc-0.5.0.4"], libraryDirs = ["/usr/lib/ghc-6.12.1/hpc-0.5.0.4"], hsLibraries = ["HShpc-0.5.0.4"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/hpc-0.5.0.4/hpc.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/hpc-0.5.0.4"]}),(InstalledPackageId "integer-gmp-0.2.0.0-fa82a0df93dc30b4a7c5654dd7c68cf4",InstalledPackageInfo {installedPackageId = InstalledPackageId "integer-gmp-0.2.0.0-fa82a0df93dc30b4a7c5654dd7c68cf4", sourcePackageId = PackageIdentifier {pkgName = PackageName "integer-gmp", pkgVersion = Version {versionBranch = [0,2,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains an Integer library based on GMP.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Integer"],ModuleName ["GHC","Integer","GMP","Internals"]], hiddenModules = [ModuleName ["GHC","Integer","Type"]], importDirs = ["/usr/lib/ghc-6.12.1/integer-gmp-0.2.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/integer-gmp-0.2.0.0"], hsLibraries = ["HSinteger-gmp-0.2.0.0"], extraLibraries = ["gmp"], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/integer-gmp-0.2.0.0/integer-gmp.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/integer-gmp-0.2.0.0"]}),(InstalledPackageId "old-locale-1.0.0.2-ef43da9d308528e2994f68a00a6ea03f",InstalledPackageInfo {installedPackageId = InstalledPackageId "old-locale-1.0.0.2-ef43da9d308528e2994f68a00a6ea03f", sourcePackageId = PackageIdentifier {pkgName = PackageName "old-locale", pkgVersion = Version {versionBranch = [1,0,0,2], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package provides the old locale library.\nFor new code, the new locale library is recommended.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Locale"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/old-locale-1.0.0.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/old-locale-1.0.0.2"], hsLibraries = ["HSold-locale-1.0.0.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/old-locale-1.0.0.2/old-locale.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/old-locale-1.0.0.2"]}),(InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c",InstalledPackageInfo {installedPackageId = InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c", sourcePackageId = PackageIdentifier {pkgName = PackageName "old-time", pkgVersion = Version {versionBranch = [1,0,0,3], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package provides the old time library.\nFor new code, the new time library is recommended.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Time"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/old-time-1.0.0.3"], libraryDirs = ["/usr/lib/ghc-6.12.1/old-time-1.0.0.3"], hsLibraries = ["HSold-time-1.0.0.3"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/old-time-1.0.0.3/include"], includes = ["HsTime.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "old-locale-1.0.0.2-ef43da9d308528e2994f68a00a6ea03f"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/old-time-1.0.0.3/old-time.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/old-time-1.0.0.3"]}),(InstalledPackageId "pretty-1.0.1.1-2bfa34c699efff7eed4d6297a2dac12d",InstalledPackageInfo {installedPackageId = InstalledPackageId "pretty-1.0.1.1-2bfa34c699efff7eed4d6297a2dac12d", sourcePackageId = PackageIdentifier {pkgName = PackageName "pretty", pkgVersion = Version {versionBranch = [1,0,1,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains John Hughes's pretty-printing library,\nheavily modified by Simon Peyton Jones.", category = "Text", exposed = True, exposedModules = [ModuleName ["Text","PrettyPrint"],ModuleName ["Text","PrettyPrint","HughesPJ"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/pretty-1.0.1.1"], libraryDirs = ["/usr/lib/ghc-6.12.1/pretty-1.0.1.1"], hsLibraries = ["HSpretty-1.0.1.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/pretty-1.0.1.1/pretty.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/pretty-1.0.1.1"]}),(InstalledPackageId "process-1.0.1.2-8b5308cb23fbdc3c2df27e298550937f",InstalledPackageInfo {installedPackageId = InstalledPackageId "process-1.0.1.2-8b5308cb23fbdc3c2df27e298550937f", sourcePackageId = PackageIdentifier {pkgName = PackageName "process", pkgVersion = Version {versionBranch = [1,0,1,2], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains libraries for dealing with system processes.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Process","Internals"],ModuleName ["System","Process"],ModuleName ["System","Cmd"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/process-1.0.1.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/process-1.0.1.2"], hsLibraries = ["HSprocess-1.0.1.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/process-1.0.1.2/include"], includes = ["runProcess.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/process-1.0.1.2/process.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/process-1.0.1.2"]}),(InstalledPackageId "template-haskell-2.4.0.0-92d419f5a3bd03d1c021561d3b29c041",InstalledPackageInfo {installedPackageId = InstalledPackageId "template-haskell-2.4.0.0-92d419f5a3bd03d1c021561d3b29c041", sourcePackageId = PackageIdentifier {pkgName = PackageName "template-haskell", pkgVersion = Version {versionBranch = [2,4,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "Facilities for manipulating Haskell source code using Template Haskell.", category = "", exposed = True, exposedModules = [ModuleName ["Language","Haskell","TH","Syntax","Internals"],ModuleName ["Language","Haskell","TH","Syntax"],ModuleName ["Language","Haskell","TH","PprLib"],ModuleName ["Language","Haskell","TH","Ppr"],ModuleName ["Language","Haskell","TH","Lib"],ModuleName ["Language","Haskell","TH","Quote"],ModuleName ["Language","Haskell","TH"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/template-haskell-2.4.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/template-haskell-2.4.0.0"], hsLibraries = ["HStemplate-haskell-2.4.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "pretty-1.0.1.1-2bfa34c699efff7eed4d6297a2dac12d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/template-haskell-2.4.0.0/template-haskell.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/template-haskell-2.4.0.0"]}),(InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e",InstalledPackageInfo {installedPackageId = InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e", sourcePackageId = PackageIdentifier {pkgName = PackageName "unix", pkgVersion = Version {versionBranch = [2,4,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package gives you access to the set of operating system\nservices standardised by POSIX 1003.1b (or the IEEE Portable\nOperating System Interface for Computing Environments -\nIEEE Std. 1003.1).\n\nThe package is not supported under Windows (except under Cygwin).", category = "System", exposed = True, exposedModules = [ModuleName ["System","Posix"],ModuleName ["System","Posix","DynamicLinker","Module"],ModuleName ["System","Posix","DynamicLinker","Prim"],ModuleName ["System","Posix","Directory"],ModuleName ["System","Posix","DynamicLinker"],ModuleName ["System","Posix","Env"],ModuleName ["System","Posix","Error"],ModuleName ["System","Posix","Files"],ModuleName ["System","Posix","IO"],ModuleName ["System","Posix","Process"],ModuleName ["System","Posix","Process","Internals"],ModuleName ["System","Posix","Resource"],ModuleName ["System","Posix","Temp"],ModuleName ["System","Posix","Terminal"],ModuleName ["System","Posix","Time"],ModuleName ["System","Posix","Unistd"],ModuleName ["System","Posix","User"],ModuleName ["System","Posix","Signals"],ModuleName ["System","Posix","Signals","Exts"],ModuleName ["System","Posix","Semaphore"],ModuleName ["System","Posix","SharedMem"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/unix-2.4.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/unix-2.4.0.0"], hsLibraries = ["HSunix-2.4.0.0"], extraLibraries = ["rt","util","dl"], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/unix-2.4.0.0/include"], includes = ["HsUnix.h","execvpe.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/unix-2.4.0.0/unix.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/unix-2.4.0.0"]})]) (fromList [(PackageName "Cabal",fromList [(Version {versionBranch = [1,8,0,2], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "Cabal-1.8.0.2-72f6eafc7def741b28f6ec75d2686d14", sourcePackageId = PackageIdentifier {pkgName = PackageName "Cabal", pkgVersion = Version {versionBranch = [1,8,0,2], versionTags = []}}, license = BSD3, copyright = "2003-2006, Isaac Jones\n2005-2009, Duncan Coutts", maintainer = "cabal-devel@haskell.org", author = "Isaac Jones <ijones@syntaxpolice.org>\nDuncan Coutts <duncan@haskell.org>", stability = "", homepage = "http://www.haskell.org/cabal/", pkgUrl = "", description = "The Haskell Common Architecture for Building Applications and\nLibraries: a framework defining a common interface for authors to more\neasily build their Haskell applications in a portable way.\n\nThe Haskell Cabal is part of a larger infrastructure for distributing,\norganizing, and cataloging Haskell libraries and tools.", category = "Distribution", exposed = True, exposedModules = [ModuleName ["Distribution","Compiler"],ModuleName ["Distribution","InstalledPackageInfo"],ModuleName ["Distribution","License"],ModuleName ["Distribution","Make"],ModuleName ["Distribution","ModuleName"],ModuleName ["Distribution","Package"],ModuleName ["Distribution","PackageDescription"],ModuleName ["Distribution","PackageDescription","Configuration"],ModuleName ["Distribution","PackageDescription","Parse"],ModuleName ["Distribution","PackageDescription","Check"],ModuleName ["Distribution","ParseUtils"],ModuleName ["Distribution","ReadE"],ModuleName ["Distribution","Simple"],ModuleName ["Distribution","Simple","Build"],ModuleName ["Distribution","Simple","Build","Macros"],ModuleName ["Distribution","Simple","Build","PathsModule"],ModuleName ["Distribution","Simple","BuildPaths"],ModuleName ["Distribution","Simple","Command"],ModuleName ["Distribution","Simple","Compiler"],ModuleName ["Distribution","Simple","Configure"],ModuleName ["Distribution","Simple","GHC"],ModuleName ["Distribution","Simple","LHC"],ModuleName ["Distribution","Simple","Haddock"],ModuleName ["Distribution","Simple","Hugs"],ModuleName ["Distribution","Simple","Install"],ModuleName ["Distribution","Simple","InstallDirs"],ModuleName ["Distribution","Simple","JHC"],ModuleName ["Distribution","Simple","LocalBuildInfo"],ModuleName ["Distribution","Simple","NHC"],ModuleName ["Distribution","Simple","PackageIndex"],ModuleName ["Distribution","Simple","PreProcess"],ModuleName ["Distribution","Simple","PreProcess","Unlit"],ModuleName ["Distribution","Simple","Program"],ModuleName ["Distribution","Simple","Program","Ar"],ModuleName ["Distribution","Simple","Program","Builtin"],ModuleName ["Distribution","Simple","Program","Db"],ModuleName ["Distribution","Simple","Program","HcPkg"],ModuleName ["Distribution","Simple","Program","Ld"],ModuleName ["Distribution","Simple","Program","Run"],ModuleName ["Distribution","Simple","Program","Script"],ModuleName ["Distribution","Simple","Program","Types"],ModuleName ["Distribution","Simple","Register"],ModuleName ["Distribution","Simple","Setup"],ModuleName ["Distribution","Simple","SrcDist"],ModuleName ["Distribution","Simple","UserHooks"],ModuleName ["Distribution","Simple","Utils"],ModuleName ["Distribution","System"],ModuleName ["Distribution","Text"],ModuleName ["Distribution","Verbosity"],ModuleName ["Distribution","Version"],ModuleName ["Distribution","Compat","ReadP"],ModuleName ["Language","Haskell","Extension"]], hiddenModules = [ModuleName ["Distribution","GetOpt"],ModuleName ["Distribution","Compat","Exception"],ModuleName ["Distribution","Compat","CopyFile"],ModuleName ["Distribution","Compat","TempFile"],ModuleName ["Distribution","Simple","GHC","IPI641"],ModuleName ["Distribution","Simple","GHC","IPI642"]], importDirs = ["/usr/lib/ghc-6.12.1/Cabal-1.8.0.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/Cabal-1.8.0.2"], hsLibraries = ["HSCabal-1.8.0.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c",InstalledPackageId "pretty-1.0.1.1-2bfa34c699efff7eed4d6297a2dac12d",InstalledPackageId "process-1.0.1.2-8b5308cb23fbdc3c2df27e298550937f",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/Cabal-1.8.0.2/Cabal.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/Cabal-1.8.0.2"]}])]),(PackageName "array",fromList [(Version {versionBranch = [0,3,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98", sourcePackageId = PackageIdentifier {pkgName = PackageName "array", pkgVersion = Version {versionBranch = [0,3,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", 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","Internals"],ModuleName ["Data","Array","MArray"],ModuleName ["Data","Array","ST"],ModuleName ["Data","Array","Storable"],ModuleName ["Data","Array","Unboxed"],ModuleName ["Data","Array"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/array-0.3.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/array-0.3.0.0"], hsLibraries = ["HSarray-0.3.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/array-0.3.0.0/array.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/array-0.3.0.0"]}])]),(PackageName "base",fromList [(Version {versionBranch = [4,2,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d", sourcePackageId = PackageIdentifier {pkgName = PackageName "base", pkgVersion = Version {versionBranch = [4,2,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", 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","Classes"],ModuleName ["GHC","Conc"],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","Float"],ModuleName ["GHC","ForeignPtr"],ModuleName ["GHC","MVar"],ModuleName ["GHC","IO"],ModuleName ["GHC","IO","IOMode"],ModuleName ["GHC","IO","Buffer"],ModuleName ["GHC","IO","Device"],ModuleName ["GHC","IO","BufferedIO"],ModuleName ["GHC","IO","FD"],ModuleName ["GHC","IO","Exception"],ModuleName ["GHC","IO","Encoding"],ModuleName ["GHC","IO","Encoding","Latin1"],ModuleName ["GHC","IO","Encoding","UTF8"],ModuleName ["GHC","IO","Encoding","UTF16"],ModuleName ["GHC","IO","Encoding","UTF32"],ModuleName ["GHC","IO","Encoding","Types"],ModuleName ["GHC","IO","Encoding","Iconv"],ModuleName ["GHC","IO","Encoding","CodePage"],ModuleName ["GHC","IO","Handle"],ModuleName ["GHC","IO","Handle","Types"],ModuleName ["GHC","IO","Handle","Internals"],ModuleName ["GHC","IO","Handle","FD"],ModuleName ["GHC","IO","Handle","Text"],ModuleName ["GHC","IOBase"],ModuleName ["GHC","Handle"],ModuleName ["GHC","IORef"],ModuleName ["GHC","IOArray"],ModuleName ["GHC","Int"],ModuleName ["GHC","List"],ModuleName ["GHC","Num"],ModuleName ["GHC","PArr"],ModuleName ["GHC","Pack"],ModuleName ["GHC","Ptr"],ModuleName ["GHC","Read"],ModuleName ["GHC","Real"],ModuleName ["GHC","ST"],ModuleName ["GHC","STRef"],ModuleName ["GHC","Show"],ModuleName ["GHC","Stable"],ModuleName ["GHC","Storable"],ModuleName ["GHC","TopHandler"],ModuleName ["GHC","Unicode"],ModuleName ["GHC","Weak"],ModuleName ["GHC","Word"],ModuleName ["System","Timeout"],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","OldException"],ModuleName ["Control","Monad"],ModuleName ["Control","Monad","Fix"],ModuleName ["Control","Monad","Instances"],ModuleName ["Control","Monad","ST"],ModuleName ["Control","Monad","ST","Lazy"],ModuleName ["Control","Monad","ST","Strict"],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","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","Marshal"],ModuleName ["Foreign","Marshal","Alloc"],ModuleName ["Foreign","Marshal","Array"],ModuleName ["Foreign","Marshal","Error"],ModuleName ["Foreign","Marshal","Pool"],ModuleName ["Foreign","Marshal","Utils"],ModuleName ["Foreign","Ptr"],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 = [], importDirs = ["/usr/lib/ghc-6.12.1/base-4.2.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/base-4.2.0.0"], hsLibraries = ["HSbase-4.2.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/base-4.2.0.0/include"], includes = ["HsBase.h"], depends = [InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990",InstalledPackageId "integer-gmp-0.2.0.0-fa82a0df93dc30b4a7c5654dd7c68cf4",InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/base-4.2.0.0/base.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/base-4.2.0.0"]}])]),(PackageName "bin-package-db",fromList [(Version {versionBranch = [0,0,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "bin-package-db-0.0.0.0-0c559ebe951f9972c4e6dfe5ebd4ce6a", sourcePackageId = PackageIdentifier {pkgName = PackageName "bin-package-db", pkgVersion = Version {versionBranch = [0,0,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "cvs-ghc@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "", category = "", exposed = True, exposedModules = [ModuleName ["Distribution","InstalledPackageInfo","Binary"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/bin-package-db-0.0.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/bin-package-db-0.0.0.0"], hsLibraries = ["HSbin-package-db-0.0.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "Cabal-1.8.0.2-72f6eafc7def741b28f6ec75d2686d14",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "ghc-binary-0.5.0.2-359d07c3fa596bee47da084cc306672c"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/bin-package-db-0.0.0.0/bin-package-db.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/bin-package-db-0.0.0.0"]}])]),(PackageName "bytestring",fromList [(Version {versionBranch = [0,9,1,5], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "bytestring-0.9.1.5-2d4a9d624c3be86b70c04730e5f12aca", sourcePackageId = PackageIdentifier {pkgName = PackageName "bytestring", pkgVersion = Version {versionBranch = [0,9,1,5], versionTags = []}}, license = BSD3, copyright = "Copyright (c) Don Stewart   2005-2009,\n(c) Duncan Coutts 2006-2009,\n(c) David Roundy  2003-2005.", maintainer = "dons@galois.com, duncan@haskell.org", author = "Don Stewart, Duncan Coutts", stability = "", homepage = "http://www.cse.unsw.edu.au/~dons/fps.html", pkgUrl = "", description = "A time and space-efficient implementation of byte vectors using\npacked Word8 arrays, suitable for high performance use, both in terms\nof large data quantities, or high speed requirements. Byte vectors\nare encoded as strict 'Word8' arrays of bytes, and lazy lists of\nstrict chunks, held in a 'ForeignPtr', and can be passed between C\nand Haskell with little effort.\n\nTest coverage data for this library is available at:\n<http://code.haskell.org/~dons/tests/bytestring/hpc_index.html>", 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","Fusion"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/bytestring-0.9.1.5"], libraryDirs = ["/usr/lib/ghc-6.12.1/bytestring-0.9.1.5"], hsLibraries = ["HSbytestring-0.9.1.5"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/bytestring-0.9.1.5/include"], includes = ["fpstring.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/bytestring.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5"]}])]),(PackageName "containers",fromList [(Version {versionBranch = [0,3,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411", sourcePackageId = PackageIdentifier {pkgName = PackageName "containers", pkgVersion = Version {versionBranch = [0,3,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", 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","IntMap"],ModuleName ["Data","IntSet"],ModuleName ["Data","Map"],ModuleName ["Data","Sequence"],ModuleName ["Data","Set"],ModuleName ["Data","Tree"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/containers-0.3.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/containers-0.3.0.0"], hsLibraries = ["HScontainers-0.3.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/containers-0.3.0.0/containers.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/containers-0.3.0.0"]}])]),(PackageName "directory",fromList [(Version {versionBranch = [1,0,1,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c", sourcePackageId = PackageIdentifier {pkgName = PackageName "directory", pkgVersion = Version {versionBranch = [1,0,1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package provides a library for handling directories.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Directory"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/directory-1.0.1.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/directory-1.0.1.0"], hsLibraries = ["HSdirectory-1.0.1.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/directory-1.0.1.0/include"], includes = ["HsDirectory.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/directory-1.0.1.0/directory.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/directory-1.0.1.0"]}])]),(PackageName "ffi",fromList [(Version {versionBranch = [1,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "builtin_ffi", sourcePackageId = PackageIdentifier {pkgName = PackageName "ffi", pkgVersion = Version {versionBranch = [1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "glasgow-haskell-users@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "", category = "", exposed = True, exposedModules = [], hiddenModules = [], importDirs = [], libraryDirs = ["/usr/lib/ghc-6.12.1"], hsLibraries = ["HSffi"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/include"], includes = [], depends = [], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = [], haddockHTMLs = []}])]),(PackageName "filepath",fromList [(Version {versionBranch = [1,1,0,3], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87", sourcePackageId = PackageIdentifier {pkgName = PackageName "filepath", pkgVersion = Version {versionBranch = [1,1,0,3], versionTags = []}}, license = BSD3, copyright = "", maintainer = "", author = "Neil Mitchell", stability = "", homepage = "http://www-users.cs.york.ac.uk/~ndm/filepath/", pkgUrl = "", description = "", category = "System", exposed = True, exposedModules = [ModuleName ["System","FilePath"],ModuleName ["System","FilePath","Posix"],ModuleName ["System","FilePath","Windows"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/filepath-1.1.0.3"], libraryDirs = ["/usr/lib/ghc-6.12.1/filepath-1.1.0.3"], hsLibraries = ["HSfilepath-1.1.0.3"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/filepath-1.1.0.3/filepath.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/filepath-1.1.0.3"]}])]),(PackageName "ghc",fromList [(Version {versionBranch = [6,12,1], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-6.12.1-f94cf9a4e78a37cbe95dfc7fe6c1c623", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc", pkgVersion = Version {versionBranch = [6,12,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "glasgow-haskell-users@haskell.org", author = "The GHC Team", stability = "", homepage = "http://www.haskell.org/ghc/", pkgUrl = "", description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.", category = "Development", exposed = False, exposedModules = [ModuleName ["AsmCodeGen"],ModuleName ["TargetReg"],ModuleName ["NCGMonad"],ModuleName ["Instruction"],ModuleName ["Size"],ModuleName ["Reg"],ModuleName ["RegClass"],ModuleName ["PprBase"],ModuleName ["PIC"],ModuleName ["Platform"],ModuleName ["Alpha","Regs"],ModuleName ["Alpha","RegInfo"],ModuleName ["Alpha","Instr"],ModuleName ["Alpha","CodeGen"],ModuleName ["X86","Regs"],ModuleName ["X86","RegInfo"],ModuleName ["X86","Instr"],ModuleName ["X86","Cond"],ModuleName ["X86","Ppr"],ModuleName ["X86","CodeGen"],ModuleName ["PPC","Regs"],ModuleName ["PPC","RegInfo"],ModuleName ["PPC","Instr"],ModuleName ["PPC","Cond"],ModuleName ["PPC","Ppr"],ModuleName ["PPC","CodeGen"],ModuleName ["SPARC","Base"],ModuleName ["SPARC","Regs"],ModuleName ["SPARC","RegPlate"],ModuleName ["SPARC","Imm"],ModuleName ["SPARC","AddrMode"],ModuleName ["SPARC","Cond"],ModuleName ["SPARC","Instr"],ModuleName ["SPARC","Stack"],ModuleName ["SPARC","ShortcutJump"],ModuleName ["SPARC","Ppr"],ModuleName ["SPARC","CodeGen"],ModuleName ["SPARC","CodeGen","Amode"],ModuleName ["SPARC","CodeGen","Base"],ModuleName ["SPARC","CodeGen","CCall"],ModuleName ["SPARC","CodeGen","CondCode"],ModuleName ["SPARC","CodeGen","Gen32"],ModuleName ["SPARC","CodeGen","Gen64"],ModuleName ["SPARC","CodeGen","Sanity"],ModuleName ["SPARC","CodeGen","Expand"],ModuleName ["RegAlloc","Liveness"],ModuleName ["RegAlloc","Graph","Main"],ModuleName ["RegAlloc","Graph","Stats"],ModuleName ["RegAlloc","Graph","ArchBase"],ModuleName ["RegAlloc","Graph","ArchX86"],ModuleName ["RegAlloc","Graph","Coalesce"],ModuleName ["RegAlloc","Graph","Spill"],ModuleName ["RegAlloc","Graph","SpillClean"],ModuleName ["RegAlloc","Graph","SpillCost"],ModuleName ["RegAlloc","Graph","TrivColorable"],ModuleName ["RegAlloc","Linear","Main"],ModuleName ["RegAlloc","Linear","JoinToTargets"],ModuleName ["RegAlloc","Linear","State"],ModuleName ["RegAlloc","Linear","Stats"],ModuleName ["RegAlloc","Linear","FreeRegs"],ModuleName ["RegAlloc","Linear","StackMap"],ModuleName ["RegAlloc","Linear","Base"],ModuleName ["RegAlloc","Linear","X86","FreeRegs"],ModuleName ["RegAlloc","Linear","PPC","FreeRegs"],ModuleName ["RegAlloc","Linear","SPARC","FreeRegs"],ModuleName ["DsMeta"],ModuleName ["TcSplice"],ModuleName ["Convert"],ModuleName ["ByteCodeAsm"],ModuleName ["ByteCodeFFI"],ModuleName ["ByteCodeGen"],ModuleName ["ByteCodeInstr"],ModuleName ["ByteCodeItbls"],ModuleName ["ByteCodeLink"],ModuleName ["Debugger"],ModuleName ["LibFFI"],ModuleName ["Linker"],ModuleName ["ObjLink"],ModuleName ["RtClosureInspect"],ModuleName ["BasicTypes"],ModuleName ["DataCon"],ModuleName ["Demand"],ModuleName ["Exception"],ModuleName ["Id"],ModuleName ["IdInfo"],ModuleName ["Literal"],ModuleName ["MkId"],ModuleName ["Module"],ModuleName ["Name"],ModuleName ["NameEnv"],ModuleName ["NameSet"],ModuleName ["NewDemand"],ModuleName ["OccName"],ModuleName ["RdrName"],ModuleName ["SrcLoc"],ModuleName ["UniqSupply"],ModuleName ["Unique"],ModuleName ["Var"],ModuleName ["VarEnv"],ModuleName ["VarSet"],ModuleName ["BlockId"],ModuleName ["CLabel"],ModuleName ["Cmm"],ModuleName ["CmmBrokenBlock"],ModuleName ["CmmBuildInfoTables"],ModuleName ["CmmCPS"],ModuleName ["CmmCPSGen"],ModuleName ["CmmCPSZ"],ModuleName ["CmmCallConv"],ModuleName ["CmmCommonBlockElimZ"],ModuleName ["CmmContFlowOpt"],ModuleName ["CmmCvt"],ModuleName ["CmmExpr"],ModuleName ["CmmInfo"],ModuleName ["CmmLex"],ModuleName ["CmmLint"],ModuleName ["CmmLive"],ModuleName ["CmmLiveZ"],ModuleName ["CmmOpt"],ModuleName ["CmmParse"],ModuleName ["CmmProcPoint"],ModuleName ["CmmProcPointZ"],ModuleName ["CmmSpillReload"],ModuleName ["CmmStackLayout"],ModuleName ["CmmTx"],ModuleName ["CmmUtils"],ModuleName ["CmmZipUtil"],ModuleName ["DFMonad"],ModuleName ["Dataflow"],ModuleName ["MkZipCfg"],ModuleName ["MkZipCfgCmm"],ModuleName ["OptimizationFuel"],ModuleName ["PprC"],ModuleName ["PprCmm"],ModuleName ["PprCmmZ"],ModuleName ["StackColor"],ModuleName ["StackPlacements"],ModuleName ["ZipCfg"],ModuleName ["ZipCfgCmmRep"],ModuleName ["ZipCfgExtras"],ModuleName ["ZipDataflow"],ModuleName ["Bitmap"],ModuleName ["CgBindery"],ModuleName ["CgCallConv"],ModuleName ["CgCase"],ModuleName ["CgClosure"],ModuleName ["CgCon"],ModuleName ["CgExpr"],ModuleName ["CgForeignCall"],ModuleName ["CgHeapery"],ModuleName ["CgHpc"],ModuleName ["CgInfoTbls"],ModuleName ["CgLetNoEscape"],ModuleName ["CgMonad"],ModuleName ["CgParallel"],ModuleName ["CgPrimOp"],ModuleName ["CgProf"],ModuleName ["CgStackery"],ModuleName ["CgTailCall"],ModuleName ["CgTicky"],ModuleName ["CgUtils"],ModuleName ["StgCmm"],ModuleName ["StgCmmBind"],ModuleName ["StgCmmClosure"],ModuleName ["StgCmmCon"],ModuleName ["StgCmmEnv"],ModuleName ["StgCmmExpr"],ModuleName ["StgCmmForeign"],ModuleName ["StgCmmGran"],ModuleName ["StgCmmHeap"],ModuleName ["StgCmmHpc"],ModuleName ["StgCmmLayout"],ModuleName ["StgCmmMonad"],ModuleName ["StgCmmPrim"],ModuleName ["StgCmmProf"],ModuleName ["StgCmmTicky"],ModuleName ["StgCmmUtils"],ModuleName ["ClosureInfo"],ModuleName ["CodeGen"],ModuleName ["SMRep"],ModuleName ["CoreArity"],ModuleName ["CoreFVs"],ModuleName ["CoreLint"],ModuleName ["CorePrep"],ModuleName ["CoreSubst"],ModuleName ["CoreSyn"],ModuleName ["CoreTidy"],ModuleName ["CoreUnfold"],ModuleName ["CoreUtils"],ModuleName ["ExternalCore"],ModuleName ["MkCore"],ModuleName ["MkExternalCore"],ModuleName ["PprCore"],ModuleName ["PprExternalCore"],ModuleName ["CprAnalyse"],ModuleName ["Check"],ModuleName ["Coverage"],ModuleName ["Desugar"],ModuleName ["DsArrows"],ModuleName ["DsBinds"],ModuleName ["DsCCall"],ModuleName ["DsExpr"],ModuleName ["DsForeign"],ModuleName ["DsGRHSs"],ModuleName ["DsListComp"],ModuleName ["DsMonad"],ModuleName ["DsUtils"],ModuleName ["Match"],ModuleName ["MatchCon"],ModuleName ["MatchLit"],ModuleName ["HsBinds"],ModuleName ["HsDecls"],ModuleName ["HsDoc"],ModuleName ["HsExpr"],ModuleName ["HsImpExp"],ModuleName ["HsLit"],ModuleName ["HsPat"],ModuleName ["HsSyn"],ModuleName ["HsTypes"],ModuleName ["HsUtils"],ModuleName ["BinIface"],ModuleName ["BuildTyCl"],ModuleName ["IfaceEnv"],ModuleName ["IfaceSyn"],ModuleName ["IfaceType"],ModuleName ["LoadIface"],ModuleName ["MkIface"],ModuleName ["TcIface"],ModuleName ["Annotations"],ModuleName ["BreakArray"],ModuleName ["CmdLineParser"],ModuleName ["CodeOutput"],ModuleName ["Config"],ModuleName ["Constants"],ModuleName ["DriverMkDepend"],ModuleName ["DriverPhases"],ModuleName ["DriverPipeline"],ModuleName ["DynFlags"],ModuleName ["ErrUtils"],ModuleName ["Finder"],ModuleName ["GHC"],ModuleName ["HeaderInfo"],ModuleName ["HscMain"],ModuleName ["HscStats"],ModuleName ["HscTypes"],ModuleName ["InteractiveEval"],ModuleName ["PackageConfig"],ModuleName ["Packages"],ModuleName ["PprTyThing"],ModuleName ["StaticFlags"],ModuleName ["StaticFlagParser"],ModuleName ["SysTools"],ModuleName ["TidyPgm"],ModuleName ["Ctype"],ModuleName ["HaddockUtils"],ModuleName ["LexCore"],ModuleName ["Lexer"],ModuleName ["Parser"],ModuleName ["ParserCore"],ModuleName ["ParserCoreUtils"],ModuleName ["RdrHsSyn"],ModuleName ["ForeignCall"],ModuleName ["PrelInfo"],ModuleName ["PrelNames"],ModuleName ["PrelRules"],ModuleName ["PrimOp"],ModuleName ["TysPrim"],ModuleName ["TysWiredIn"],ModuleName ["CostCentre"],ModuleName ["SCCfinal"],ModuleName ["RnBinds"],ModuleName ["RnEnv"],ModuleName ["RnExpr"],ModuleName ["RnHsDoc"],ModuleName ["RnHsSyn"],ModuleName ["RnNames"],ModuleName ["RnPat"],ModuleName ["RnSource"],ModuleName ["RnTypes"],ModuleName ["CoreMonad"],ModuleName ["CSE"],ModuleName ["FloatIn"],ModuleName ["FloatOut"],ModuleName ["LiberateCase"],ModuleName ["OccurAnal"],ModuleName ["SAT"],ModuleName ["SetLevels"],ModuleName ["SimplCore"],ModuleName ["SimplEnv"],ModuleName ["SimplMonad"],ModuleName ["SimplUtils"],ModuleName ["Simplify"],ModuleName ["SRT"],ModuleName ["SimplStg"],ModuleName ["StgStats"],ModuleName ["Rules"],ModuleName ["SpecConstr"],ModuleName ["Specialise"],ModuleName ["CoreToStg"],ModuleName ["StgLint"],ModuleName ["StgSyn"],ModuleName ["DmdAnal"],ModuleName ["SaAbsInt"],ModuleName ["SaLib"],ModuleName ["StrictAnal"],ModuleName ["WorkWrap"],ModuleName ["WwLib"],ModuleName ["FamInst"],ModuleName ["Inst"],ModuleName ["TcAnnotations"],ModuleName ["TcArrows"],ModuleName ["TcBinds"],ModuleName ["TcClassDcl"],ModuleName ["TcDefaults"],ModuleName ["TcDeriv"],ModuleName ["TcEnv"],ModuleName ["TcExpr"],ModuleName ["TcForeign"],ModuleName ["TcGenDeriv"],ModuleName ["TcHsSyn"],ModuleName ["TcHsType"],ModuleName ["TcInstDcls"],ModuleName ["TcMType"],ModuleName ["TcMatches"],ModuleName ["TcPat"],ModuleName ["TcRnDriver"],ModuleName ["TcRnMonad"],ModuleName ["TcRnTypes"],ModuleName ["TcRules"],ModuleName ["TcSimplify"],ModuleName ["TcTyClsDecls"],ModuleName ["TcTyDecls"],ModuleName ["TcTyFuns"],ModuleName ["TcType"],ModuleName ["TcUnify"],ModuleName ["Class"],ModuleName ["Coercion"],ModuleName ["FamInstEnv"],ModuleName ["FunDeps"],ModuleName ["Generics"],ModuleName ["InstEnv"],ModuleName ["TyCon"],ModuleName ["Type"],ModuleName ["TypeRep"],ModuleName ["Unify"],ModuleName ["Bag"],ModuleName ["Binary"],ModuleName ["BufWrite"],ModuleName ["Digraph"],ModuleName ["Encoding"],ModuleName ["FastBool"],ModuleName ["FastFunctions"],ModuleName ["FastMutInt"],ModuleName ["FastString"],ModuleName ["FastTypes"],ModuleName ["Fingerprint"],ModuleName ["FiniteMap"],ModuleName ["GraphBase"],ModuleName ["GraphColor"],ModuleName ["GraphOps"],ModuleName ["GraphPpr"],ModuleName ["IOEnv"],ModuleName ["Interval"],ModuleName ["LazyUniqFM"],ModuleName ["ListSetOps"],ModuleName ["Maybes"],ModuleName ["MonadUtils"],ModuleName ["OrdList"],ModuleName ["Outputable"],ModuleName ["Panic"],ModuleName ["Pretty"],ModuleName ["Serialized"],ModuleName ["State"],ModuleName ["StringBuffer"],ModuleName ["UniqFM"],ModuleName ["UniqSet"],ModuleName ["Util"],ModuleName ["VectBuiltIn"],ModuleName ["VectCore"],ModuleName ["VectMonad"],ModuleName ["VectType"],ModuleName ["VectUtils"],ModuleName ["Vectorise"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/ghc-6.12.1"], libraryDirs = ["/usr/lib/ghc-6.12.1/ghc-6.12.1"], hsLibraries = ["HSghc-6.12.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/ghc-6.12.1/include"], includes = [], depends = [InstalledPackageId "Cabal-1.8.0.2-72f6eafc7def741b28f6ec75d2686d14",InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "bin-package-db-0.0.0.0-0c559ebe951f9972c4e6dfe5ebd4ce6a",InstalledPackageId "bytestring-0.9.1.5-2d4a9d624c3be86b70c04730e5f12aca",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "hpc-0.5.0.4-9509a7b9efea6f1b5464702328eb4b44",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c",InstalledPackageId "process-1.0.1.2-8b5308cb23fbdc3c2df27e298550937f",InstalledPackageId "template-haskell-2.4.0.0-92d419f5a3bd03d1c021561d3b29c041",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/ghc-6.12.1/ghc.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/ghc-6.12.1"]}])]),(PackageName "ghc-binary",fromList [(Version {versionBranch = [0,5,0,2], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-binary-0.5.0.2-359d07c3fa596bee47da084cc306672c", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc-binary", pkgVersion = Version {versionBranch = [0,5,0,2], versionTags = []}}, license = BSD3, copyright = "", maintainer = "Lennart Kolmodin, Don Stewart <dons@galois.com>", author = "Lennart Kolmodin <kolmodin@dtek.chalmers.se>", stability = "provisional", homepage = "http://code.haskell.org/binary/", pkgUrl = "", 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.\nSerialisation speeds of over 1 G\\/sec have been observed,\nso this library should be suitable for high performance\nscenarios.", category = "Data, Parsing", exposed = False, exposedModules = [ModuleName ["Data","Binary"],ModuleName ["Data","Binary","Put"],ModuleName ["Data","Binary","Get"],ModuleName ["Data","Binary","Builder"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/ghc-binary-0.5.0.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/ghc-binary-0.5.0.2"], hsLibraries = ["HSghc-binary-0.5.0.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.3.0.0-dbdf73710a5bd9a534e8bcb2d8c8ee98",InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "bytestring-0.9.1.5-2d4a9d624c3be86b70c04730e5f12aca",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/ghc-binary-0.5.0.2/ghc-binary.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/ghc-binary-0.5.0.2"]}])]),(PackageName "ghc-prim",fromList [(Version {versionBranch = [0,2,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc-prim", pkgVersion = Version {versionBranch = [0,2,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "GHC primitives.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Prim"],ModuleName ["GHC","Bool"],ModuleName ["GHC","Debug"],ModuleName ["GHC","Generics"],ModuleName ["GHC","Ordering"],ModuleName ["GHC","PrimopWrappers"],ModuleName ["GHC","IntWord32"],ModuleName ["GHC","IntWord64"],ModuleName ["GHC","Tuple"],ModuleName ["GHC","Types"],ModuleName ["GHC","Unit"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/ghc-prim-0.2.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/ghc-prim-0.2.0.0"], hsLibraries = ["HSghc-prim-0.2.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/ghc-prim.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0"]}])]),(PackageName "hpc",fromList [(Version {versionBranch = [0,5,0,4], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "hpc-0.5.0.4-9509a7b9efea6f1b5464702328eb4b44", sourcePackageId = PackageIdentifier {pkgName = PackageName "hpc", pkgVersion = Version {versionBranch = [0,5,0,4], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "Andy Gill", stability = "", homepage = "", pkgUrl = "", description = "", category = "Control", exposed = True, exposedModules = [ModuleName ["Trace","Hpc","Util"],ModuleName ["Trace","Hpc","Mix"],ModuleName ["Trace","Hpc","Tix"],ModuleName ["Trace","Hpc","Reflect"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/hpc-0.5.0.4"], libraryDirs = ["/usr/lib/ghc-6.12.1/hpc-0.5.0.4"], hsLibraries = ["HShpc-0.5.0.4"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/hpc-0.5.0.4/hpc.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/hpc-0.5.0.4"]}])]),(PackageName "integer-gmp",fromList [(Version {versionBranch = [0,2,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "integer-gmp-0.2.0.0-fa82a0df93dc30b4a7c5654dd7c68cf4", sourcePackageId = PackageIdentifier {pkgName = PackageName "integer-gmp", pkgVersion = Version {versionBranch = [0,2,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains an Integer library based on GMP.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Integer"],ModuleName ["GHC","Integer","GMP","Internals"]], hiddenModules = [ModuleName ["GHC","Integer","Type"]], importDirs = ["/usr/lib/ghc-6.12.1/integer-gmp-0.2.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/integer-gmp-0.2.0.0"], hsLibraries = ["HSinteger-gmp-0.2.0.0"], extraLibraries = ["gmp"], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "ghc-prim-0.2.0.0-3fbcc20c802efcd7c82089ec77d92990"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/integer-gmp-0.2.0.0/integer-gmp.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/integer-gmp-0.2.0.0"]}])]),(PackageName "old-locale",fromList [(Version {versionBranch = [1,0,0,2], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "old-locale-1.0.0.2-ef43da9d308528e2994f68a00a6ea03f", sourcePackageId = PackageIdentifier {pkgName = PackageName "old-locale", pkgVersion = Version {versionBranch = [1,0,0,2], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package provides the old locale library.\nFor new code, the new locale library is recommended.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Locale"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/old-locale-1.0.0.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/old-locale-1.0.0.2"], hsLibraries = ["HSold-locale-1.0.0.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/old-locale-1.0.0.2/old-locale.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/old-locale-1.0.0.2"]}])]),(PackageName "old-time",fromList [(Version {versionBranch = [1,0,0,3], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "old-time-1.0.0.3-b53830b41b1085071f61ca7772f44e0c", sourcePackageId = PackageIdentifier {pkgName = PackageName "old-time", pkgVersion = Version {versionBranch = [1,0,0,3], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package provides the old time library.\nFor new code, the new time library is recommended.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Time"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/old-time-1.0.0.3"], libraryDirs = ["/usr/lib/ghc-6.12.1/old-time-1.0.0.3"], hsLibraries = ["HSold-time-1.0.0.3"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/old-time-1.0.0.3/include"], includes = ["HsTime.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "old-locale-1.0.0.2-ef43da9d308528e2994f68a00a6ea03f"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/old-time-1.0.0.3/old-time.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/old-time-1.0.0.3"]}])]),(PackageName "pretty",fromList [(Version {versionBranch = [1,0,1,1], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "pretty-1.0.1.1-2bfa34c699efff7eed4d6297a2dac12d", sourcePackageId = PackageIdentifier {pkgName = PackageName "pretty", pkgVersion = Version {versionBranch = [1,0,1,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains John Hughes's pretty-printing library,\nheavily modified by Simon Peyton Jones.", category = "Text", exposed = True, exposedModules = [ModuleName ["Text","PrettyPrint"],ModuleName ["Text","PrettyPrint","HughesPJ"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/pretty-1.0.1.1"], libraryDirs = ["/usr/lib/ghc-6.12.1/pretty-1.0.1.1"], hsLibraries = ["HSpretty-1.0.1.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/pretty-1.0.1.1/pretty.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/pretty-1.0.1.1"]}])]),(PackageName "process",fromList [(Version {versionBranch = [1,0,1,2], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "process-1.0.1.2-8b5308cb23fbdc3c2df27e298550937f", sourcePackageId = PackageIdentifier {pkgName = PackageName "process", pkgVersion = Version {versionBranch = [1,0,1,2], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains libraries for dealing with system processes.", category = "System", exposed = True, exposedModules = [ModuleName ["System","Process","Internals"],ModuleName ["System","Process"],ModuleName ["System","Cmd"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/process-1.0.1.2"], libraryDirs = ["/usr/lib/ghc-6.12.1/process-1.0.1.2"], hsLibraries = ["HSprocess-1.0.1.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/process-1.0.1.2/include"], includes = ["runProcess.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "directory-1.0.1.0-10fc46e61b67ff4a83f3e553454d003c",InstalledPackageId "filepath-1.1.0.3-07812de93a673f50011d47451bcaac87",InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/process-1.0.1.2/process.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/process-1.0.1.2"]}])]),(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 = "", description = "", category = "", exposed = True, exposedModules = [], hiddenModules = [], importDirs = [], libraryDirs = ["/usr/lib/ghc-6.12.1"], hsLibraries = ["HSrts"], extraLibraries = ["m","rt","dl"], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/include"], includes = ["Stg.h"], depends = [InstalledPackageId "builtin_ffi"], 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","base_GHCziWord_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_GHCziBool_False_closure","-u","ghczmprim_GHCziBool_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_runIO_closure","-u","base_GHCziTopHandler_runNonIO_closure","-u","base_GHCziConc_ensureIOManagerIsRunning_closure","-u","base_GHCziConc_runSparks_closure","-u","base_GHCziConc_runHandlers_closure"], frameworkDirs = [], frameworks = [], haddockInterfaces = [], haddockHTMLs = []}])]),(PackageName "template-haskell",fromList [(Version {versionBranch = [2,4,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "template-haskell-2.4.0.0-92d419f5a3bd03d1c021561d3b29c041", sourcePackageId = PackageIdentifier {pkgName = PackageName "template-haskell", pkgVersion = Version {versionBranch = [2,4,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "Facilities for manipulating Haskell source code using Template Haskell.", category = "", exposed = True, exposedModules = [ModuleName ["Language","Haskell","TH","Syntax","Internals"],ModuleName ["Language","Haskell","TH","Syntax"],ModuleName ["Language","Haskell","TH","PprLib"],ModuleName ["Language","Haskell","TH","Ppr"],ModuleName ["Language","Haskell","TH","Lib"],ModuleName ["Language","Haskell","TH","Quote"],ModuleName ["Language","Haskell","TH"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/template-haskell-2.4.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/template-haskell-2.4.0.0"], hsLibraries = ["HStemplate-haskell-2.4.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d",InstalledPackageId "containers-0.3.0.0-409fe3b8f0dda25b98e03716d26be411",InstalledPackageId "pretty-1.0.1.1-2bfa34c699efff7eed4d6297a2dac12d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/template-haskell-2.4.0.0/template-haskell.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/template-haskell-2.4.0.0"]}])]),(PackageName "unix",fromList [(Version {versionBranch = [2,4,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "unix-2.4.0.0-7d42d72856fae71324453279e546294e", sourcePackageId = PackageIdentifier {pkgName = PackageName "unix", pkgVersion = Version {versionBranch = [2,4,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package gives you access to the set of operating system\nservices standardised by POSIX 1003.1b (or the IEEE Portable\nOperating System Interface for Computing Environments -\nIEEE Std. 1003.1).\n\nThe package is not supported under Windows (except under Cygwin).", category = "System", exposed = True, exposedModules = [ModuleName ["System","Posix"],ModuleName ["System","Posix","DynamicLinker","Module"],ModuleName ["System","Posix","DynamicLinker","Prim"],ModuleName ["System","Posix","Directory"],ModuleName ["System","Posix","DynamicLinker"],ModuleName ["System","Posix","Env"],ModuleName ["System","Posix","Error"],ModuleName ["System","Posix","Files"],ModuleName ["System","Posix","IO"],ModuleName ["System","Posix","Process"],ModuleName ["System","Posix","Process","Internals"],ModuleName ["System","Posix","Resource"],ModuleName ["System","Posix","Temp"],ModuleName ["System","Posix","Terminal"],ModuleName ["System","Posix","Time"],ModuleName ["System","Posix","Unistd"],ModuleName ["System","Posix","User"],ModuleName ["System","Posix","Signals"],ModuleName ["System","Posix","Signals","Exts"],ModuleName ["System","Posix","Semaphore"],ModuleName ["System","Posix","SharedMem"]], hiddenModules = [], importDirs = ["/usr/lib/ghc-6.12.1/unix-2.4.0.0"], libraryDirs = ["/usr/lib/ghc-6.12.1/unix-2.4.0.0"], hsLibraries = ["HSunix-2.4.0.0"], extraLibraries = ["rt","util","dl"], extraGHCiLibraries = [], includeDirs = ["/usr/lib/ghc-6.12.1/unix-2.4.0.0/include"], includes = ["HsUnix.h","execvpe.h"], depends = [InstalledPackageId "base-4.2.0.0-73995e854f236dc2acd577d7c791221d"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/usr/share/doc/ghc/html/libraries/unix-2.4.0.0/unix.haddock"], haddockHTMLs = ["/usr/share/doc/ghc/html/libraries/unix-2.4.0.0"]}])])]), pkgDescrFile = Just "./invalidMain.cabal", localPkgDescr = PackageDescription {package = PackageIdentifier {pkgName = PackageName "invalidMain", pkgVersion = Version {versionBranch = [0,0,1], versionTags = []}}, license = AllRightsReserved, licenseFile = "", copyright = "", maintainer = "", author = "", stability = "", testedWith = [], homepage = "", pkgUrl = "", bugReports = "", sourceRepos = [], synopsis = "", description = "", category = "", customFieldsPD = [], buildDepends = [Dependency (PackageName "ghc") (UnionVersionRanges (ThisVersion (Version {versionBranch = [6], versionTags = []})) (LaterVersion (Version {versionBranch = [6], versionTags = []})))], descCabalVersion = UnionVersionRanges (ThisVersion (Version {versionBranch = [1,8], versionTags = []})) (LaterVersion (Version {versionBranch = [1,8], versionTags = []})), buildType = Just Simple, library = Nothing, executables = [Executable {exeName = "invalidMain", modulePath = "Main.hs", buildInfo = BuildInfo {buildable = True, buildTools = [], cppOptions = [], ccOptions = [], ldOptions = [], pkgconfigDepends = [], frameworks = [], cSources = [], hsSourceDirs = ["src","tests"], otherModules = [], extensions = [], extraLibs = [], extraLibDirs = [], includeDirs = [], includes = [], installIncludes = [], options = [(GHC,["-Wall"])], ghcProfOptions = [], ghcSharedOptions = [], customFieldsBI = [], targetBuildDepends = [Dependency (PackageName "ghc") (UnionVersionRanges (ThisVersion (Version {versionBranch = [6], versionTags = []})) (LaterVersion (Version {versionBranch = [6], versionTags = []})))]}}], dataFiles = [], dataDir = "", extraSrcFiles = [], extraTmpFiles = []}, withPrograms = [("ar",ConfiguredProgram {programId = "ar", programVersion = Nothing, programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ar"}}),("cpphs",ConfiguredProgram {programId = "cpphs", programVersion = Just (Version {versionBranch = [1,11], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/cpphs"}}),("gcc",ConfiguredProgram {programId = "gcc", programVersion = Just (Version {versionBranch = [4,5,0], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/gcc"}}),("ghc",ConfiguredProgram {programId = "ghc", programVersion = Just (Version {versionBranch = [6,12,1], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ghc"}}),("ghc-pkg",ConfiguredProgram {programId = "ghc-pkg", programVersion = Just (Version {versionBranch = [6,12,1], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ghc-pkg"}}),("haddock",ConfiguredProgram {programId = "haddock", programVersion = Just (Version {versionBranch = [2,6,0], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/haddock"}}),("happy",ConfiguredProgram {programId = "happy", programVersion = Just (Version {versionBranch = [1,18,4], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/happy"}}),("hsc2hs",ConfiguredProgram {programId = "hsc2hs", programVersion = Just (Version {versionBranch = [0,67], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/hsc2hs"}}),("hscolour",ConfiguredProgram {programId = "hscolour", programVersion = Just (Version {versionBranch = [1,16], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/HsColour"}}),("ld",ConfiguredProgram {programId = "ld", programVersion = Nothing, programArgs = ["-x"], programLocation = FoundOnSystem {locationPath = "/usr/bin/ld"}}),("pkg-config",ConfiguredProgram {programId = "pkg-config", programVersion = Just (Version {versionBranch = [0,25], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/pkg-config"}}),("ranlib",ConfiguredProgram {programId = "ranlib", programVersion = Nothing, programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ranlib"}}),("strip",ConfiguredProgram {programId = "strip", programVersion = Nothing, programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/strip"}}),("tar",ConfiguredProgram {programId = "tar", programVersion = Nothing, programArgs = [], programLocation = FoundOnSystem {locationPath = "/bin/tar"}})], withPackageDB = [GlobalPackageDB], withVanillaLib = True, withProfLib = False, withSharedLib = False, withProfExe = False, withOptimization = NormalOptimisation, withGHCiLib = True, splitObjs = False, stripExes = True, progPrefix = "", progSuffix = ""}
diff --git a/testsuite/tests/resources/invalidMain/invalidMain.cabal b/testsuite/tests/resources/invalidMain/invalidMain.cabal
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/resources/invalidMain/invalidMain.cabal
@@ -0,0 +1,11 @@
+Name:     invalidMain
+Version:  0.0.1
+cabal-version: >= 1.8
+build-type: Simple
+
+Executable invalidMain
+  Main-Is: Main.hs
+  ghc-options: -Wall
+  hs-source-dirs: src tests
+  build-depends: ghc >= 6
+
diff --git a/testsuite/tests/resources/invalidMain/src/Main.hs b/testsuite/tests/resources/invalidMain/src/Main.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/resources/invalidMain/src/Main.hs
@@ -0,0 +1,4 @@
+module Main
+ where
+
+main = putStrLn "42"
diff --git a/testsuite/tests/resources/invalidMain/tests/Dummy.hs b/testsuite/tests/resources/invalidMain/tests/Dummy.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/resources/invalidMain/tests/Dummy.hs
@@ -0,0 +1,3 @@
+module Dummy 
+ where 
+
diff --git a/testsuite/tests/resources/noSourceConfig/dist/setup-config b/testsuite/tests/resources/noSourceConfig/dist/setup-config
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/resources/noSourceConfig/dist/setup-config
@@ -0,0 +1,2 @@
+Saved package config for noHsSource-0.0.1 written by Cabal-1.8.0.2 using ghc-6.12
+LocalBuildInfo {installDirTemplates = InstallDirs {prefix = "/usr/local", bindir = "$prefix/bin", libdir = "$prefix/lib", 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 = [6,12,1], versionTags = []}), compilerExtensions = [(CPP,"-XCPP"),(PostfixOperators,"-XPostfixOperators"),(UnknownExtension "TupleSections","-XTupleSections"),(PatternGuards,"-XPatternGuards"),(UnicodeSyntax,"-XUnicodeSyntax"),(MagicHash,"-XMagicHash"),(PolymorphicComponents,"-XPolymorphicComponents"),(ExistentialQuantification,"-XExistentialQuantification"),(KindSignatures,"-XKindSignatures"),(EmptyDataDecls,"-XEmptyDataDecls"),(ParallelListComp,"-XParallelListComp"),(TransformListComp,"-XTransformListComp"),(ForeignFunctionInterface,"-XForeignFunctionInterface"),(UnliftedFFITypes,"-XUnliftedFFITypes"),(UnknownExtension "GHCForeignImportPrim","-XGHCForeignImportPrim"),(LiberalTypeSynonyms,"-XLiberalTypeSynonyms"),(Rank2Types,"-XRank2Types"),(RankNTypes,"-XRankNTypes"),(ImpredicativeTypes,"-XImpredicativeTypes"),(TypeOperators,"-XTypeOperators"),(RecursiveDo,"-XRecursiveDo"),(UnknownExtension "DoRec","-XDoRec"),(Arrows,"-XArrows"),(UnknownExtension "PArr","-XPArr"),(TemplateHaskell,"-XTemplateHaskell"),(QuasiQuotes,"-XQuasiQuotes"),(Generics,"-XGenerics"),(NoImplicitPrelude,"-XNoImplicitPrelude"),(RecordWildCards,"-XRecordWildCards"),(NamedFieldPuns,"-XNamedFieldPuns"),(RecordPuns,"-XRecordPuns"),(DisambiguateRecordFields,"-XDisambiguateRecordFields"),(OverloadedStrings,"-XOverloadedStrings"),(GADTs,"-XGADTs"),(ViewPatterns,"-XViewPatterns"),(TypeFamilies,"-XTypeFamilies"),(BangPatterns,"-XBangPatterns"),(NoMonomorphismRestriction,"-XNoMonomorphismRestriction"),(UnknownExtension "NPlusKPatterns","-XNPlusKPatterns"),(NoMonoPatBinds,"-XNoMonoPatBinds"),(UnknownExtension "ExplicitForAll","-XExplicitForAll"),(UnknownExtension "MonoLocalBinds","-XMonoLocalBinds"),(RelaxedPolyRec,"-XRelaxedPolyRec"),(ExtendedDefaultRules,"-XExtendedDefaultRules"),(ImplicitParams,"-XImplicitParams"),(ScopedTypeVariables,"-XScopedTypeVariables"),(PatternSignatures,"-XPatternSignatures"),(UnboxedTuples,"-XUnboxedTuples"),(StandaloneDeriving,"-XStandaloneDeriving"),(DeriveDataTypeable,"-XDeriveDataTypeable"),(UnknownExtension "DeriveFunctor","-XDeriveFunctor"),(UnknownExtension "DeriveTraversable","-XDeriveTraversable"),(UnknownExtension "DeriveFoldable","-XDeriveFoldable"),(TypeSynonymInstances,"-XTypeSynonymInstances"),(FlexibleContexts,"-XFlexibleContexts"),(FlexibleInstances,"-XFlexibleInstances"),(ConstrainedClassMethods,"-XConstrainedClassMethods"),(MultiParamTypeClasses,"-XMultiParamTypeClasses"),(FunctionalDependencies,"-XFunctionalDependencies"),(GeneralizedNewtypeDeriving,"-XGeneralizedNewtypeDeriving"),(OverlappingInstances,"-XOverlappingInstances"),(UndecidableInstances,"-XUndecidableInstances"),(IncoherentInstances,"-XIncoherentInstances"),(PackageImports,"-XPackageImports"),(NewQualifiedOperators,"-XNewQualifiedOperators")]}, buildDir = "dist/build", scratchDir = "dist/scratch", libraryConfig = Nothing, executableConfigs = [("noHsSource",ComponentLocalBuildInfo {componentPackageDeps = []})], installedPkgs = PackageIndex (fromList []) (fromList []), pkgDescrFile = Just "./noHsSource.cabal", localPkgDescr = PackageDescription {package = PackageIdentifier {pkgName = PackageName "noHsSource", pkgVersion = Version {versionBranch = [0,0,1], versionTags = []}}, license = AllRightsReserved, licenseFile = "", copyright = "", maintainer = "", author = "", stability = "", testedWith = [], homepage = "", pkgUrl = "", bugReports = "", sourceRepos = [], synopsis = "", description = "", category = "", customFieldsPD = [], buildDepends = [], descCabalVersion = UnionVersionRanges (ThisVersion (Version {versionBranch = [1,8], versionTags = []})) (LaterVersion (Version {versionBranch = [1,8], versionTags = []})), buildType = Just Simple, library = Nothing, executables = [Executable {exeName = "noHsSource", modulePath = "noHsSource.hs", buildInfo = BuildInfo {buildable = True, buildTools = [], cppOptions = [], ccOptions = [], ldOptions = [], pkgconfigDepends = [], frameworks = [], cSources = [], hsSourceDirs = ["."], otherModules = [], extensions = [], extraLibs = [], extraLibDirs = [], includeDirs = [], includes = [], installIncludes = [], options = [], ghcProfOptions = [], ghcSharedOptions = [], customFieldsBI = [], targetBuildDepends = []}}], dataFiles = [], dataDir = "", extraSrcFiles = [], extraTmpFiles = []}, withPrograms = [("ar",ConfiguredProgram {programId = "ar", programVersion = Nothing, programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ar"}}),("cpphs",ConfiguredProgram {programId = "cpphs", programVersion = Just (Version {versionBranch = [1,11], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/cpphs"}}),("gcc",ConfiguredProgram {programId = "gcc", programVersion = Just (Version {versionBranch = [4,5,0], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/gcc"}}),("ghc",ConfiguredProgram {programId = "ghc", programVersion = Just (Version {versionBranch = [6,12,1], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ghc"}}),("ghc-pkg",ConfiguredProgram {programId = "ghc-pkg", programVersion = Just (Version {versionBranch = [6,12,1], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ghc-pkg"}}),("haddock",ConfiguredProgram {programId = "haddock", programVersion = Just (Version {versionBranch = [2,6,0], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/haddock"}}),("happy",ConfiguredProgram {programId = "happy", programVersion = Just (Version {versionBranch = [1,18,4], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/happy"}}),("hsc2hs",ConfiguredProgram {programId = "hsc2hs", programVersion = Just (Version {versionBranch = [0,67], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/hsc2hs"}}),("hscolour",ConfiguredProgram {programId = "hscolour", programVersion = Just (Version {versionBranch = [1,16], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/HsColour"}}),("ld",ConfiguredProgram {programId = "ld", programVersion = Nothing, programArgs = ["-x"], programLocation = FoundOnSystem {locationPath = "/usr/bin/ld"}}),("pkg-config",ConfiguredProgram {programId = "pkg-config", programVersion = Just (Version {versionBranch = [0,25], versionTags = []}), programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/pkg-config"}}),("ranlib",ConfiguredProgram {programId = "ranlib", programVersion = Nothing, programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ranlib"}}),("strip",ConfiguredProgram {programId = "strip", programVersion = Nothing, programArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/strip"}}),("tar",ConfiguredProgram {programId = "tar", programVersion = Nothing, programArgs = [], programLocation = FoundOnSystem {locationPath = "/bin/tar"}})], withPackageDB = [GlobalPackageDB], withVanillaLib = True, withProfLib = False, withSharedLib = False, withProfExe = False, withOptimization = NormalOptimisation, withGHCiLib = True, splitObjs = False, stripExes = True, progPrefix = "", progSuffix = ""}
diff --git a/testsuite/tests/resources/noSourceConfig/noHsSource.cabal b/testsuite/tests/resources/noSourceConfig/noHsSource.cabal
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/resources/noSourceConfig/noHsSource.cabal
@@ -0,0 +1,8 @@
+Name:                   noHsSource
+Version:                0.0.1
+cabal-version: >= 1.8
+build-type: Simple
+
+Executable noHsSource
+        Main-Is:        noHsSource.hs
+
diff --git a/testsuite/tests/resources/noSourceConfig/noHsSource.hs b/testsuite/tests/resources/noSourceConfig/noHsSource.hs
new file mode 100644
--- /dev/null
+++ b/testsuite/tests/resources/noSourceConfig/noHsSource.hs
@@ -0,0 +1,4 @@
+module Main
+ where
+main = undefined
+
