diff --git a/.gitignore b/.gitignore index 053068c..91d71ef 100644 --- a/.gitignore +++ b/.gitignore @@ -20,7 +20,6 @@ *.tar *.zip *.env -dockerfile # Logs and databases # ###################### @@ -37,3 +36,6 @@ dockerfile .Trashes ehthumbs.db Thumbs.db + +*/build/* +*dist-newstyle* diff --git a/CLI/app/Main.hs b/CLI/app/Main.hs index 0f68dda..f071755 100644 --- a/CLI/app/Main.hs +++ b/CLI/app/Main.hs @@ -1,15 +1,20 @@ {-# LANGUAGE OverloadedStrings #-} module Main where + import qualified Data.Text.IO as TIO import qualified Data.Text as T + import Network.HTTP.Conduit + import qualified Data.Text.Encoding as TE import qualified Data.ByteString.Lazy.Char8 as LBS import Data.List + import System.Console.ANSI import System.Directory (getDirectoryContents) import System.FilePath ( takeExtension) +import System.Exit (exitSuccess, exitFailure) listCabalFiles :: FilePath -> IO [FilePath] listCabalFiles dir = do @@ -51,7 +56,7 @@ getHeads input = map head input removeVersions :: T.Text -> T.Text removeVersions input = head (T.splitOn "^" (head (T.splitOn "=" (head (T.splitOn ">" (head (T.splitOn "<" input))))))) -cveAnalysis :: FilePath -> IO() +cveAnalysis :: FilePath -> IO Bool cveAnalysis filepath = do fileContent <- TIO.readFile filepath putStrLn ("\n Analyzing " ++ filepath) @@ -80,7 +85,7 @@ cveAnalysis filepath = do let no_verisons = map removeVersions drop_first - let route = "http://0.0.0.0:8000/search?term=" :: String + let route = "https://lambda.dustintobrien.com/search?term=" :: String let urls= map (\x->route ++ T.unpack (x)) no_verisons @@ -92,20 +97,25 @@ cveAnalysis filepath = do let pairs = zip no_verisons trimmed_responses - mapM_ output_vulnerabilities pairs + has_vul <- mapM output_vulnerabilities pairs + let final_results = or has_vul + return final_results -output_vulnerabilities :: (T.Text, T.Text) -> IO() + +output_vulnerabilities :: (T.Text, T.Text) -> IO Bool output_vulnerabilities input = do if T.isInfixOf "No vulnerabilities found" ( (snd input)) - then - setSGR [SetColor Foreground Dull Green] >> - putStrLn (" -- "++T.unpack (fst input) ++ " -- "++ (T.unpack (snd input))) - else - setSGR [SetColor Foreground Dull Red] >> - putStrLn (" -- "++T.unpack (fst input) ++ " -- "++ (T.unpack (snd input))) + then do + setSGR [SetColor Foreground Dull Green] + putStrLn (" -- " ++ T.unpack (fst input) ++ " -- " ++ (T.unpack (snd input))) + return False + else do + setSGR [SetColor Foreground Dull Red] + putStrLn (" -- " ++ T.unpack (fst input) ++ " -- " ++ (T.unpack (snd input))) + return True @@ -127,70 +137,109 @@ printLogo x= do putStrLn "\x1b[49m" putStrLn "" -weaknessAnalysis :: FilePath -> IO() +weaknessAnalysis :: FilePath -> IO Bool weaknessAnalysis filePath =do fileContent <- TIO.readFile filePath - setSGR [SetColor Foreground Dull White] >> putStrLn ("\n Analyzing " ++ filePath) + setSGR [SetColor Foreground Dull White] + putStrLn ("\n Analyzing " ++ filePath) let lines = T.splitOn "\n" fileContent let tuples = zip lines [1,2..] - mapM_ weaknessOutput tuples + output <- mapM weaknessOutput tuples + return (or output) -weaknessOutput :: (T.Text,Int)-> IO() +weaknessOutput :: (T.Text,Int)-> IO Bool weaknessOutput input = do - if T.isInfixOf "import Unsafe.Coerce" (fst input) - then - setSGR [SetColor Foreground Dull Red] >> + c1 <- if T.isInfixOf "import Unsafe.Coerce" (fst input) + then do + setSGR [SetColor Foreground Dull Red] putStrLn ("\n-- Utilization of unsafeCoerce in type change operations can result in segmenation faults and data corruption. Error on line " ++ show (snd input)) - else - setSGR [SetColor Foreground Dull Green] >> - -- putStrLn ("-- No risk of unsafeCoerce segmentaion faults! Line " ++ show (snd input)) + let c1 = True + return c1 + else do + setSGR [SetColor Foreground Dull Green] putStr " * " - if T.isInfixOf "peek" (fst input) && T.isInfixOf "import Foreign.Ptr" (fst input) - then - setSGR [SetColor Foreground Dull Red] >> + let c1 = False + return c1 + + + c2 <- if T.isInfixOf "peek" (fst input) && T.isInfixOf "import Foreign.Ptr" (fst input) + then do + setSGR [SetColor Foreground Dull Red] putStrLn ("\n-- Using peek on a foreign pointer can cause a segmentation fault, if null pointer segmentation fault is guaranteed. Error on line "++ show (snd input)) - else - setSGR [SetColor Foreground Dull Green] >> - -- putStrLn ("-- No risk of derefrenceing null pointer with peek! Line "++ show (snd input)) + let c2 = True + return c2 + else do + setSGR [SetColor Foreground Dull Green] putStr " * " - if T.isInfixOf "IORef" (fst input) - then - setSGR [SetColor Foreground Dull Red] >> + let c2 = False + return c2 + + c3 <- if T.isInfixOf "IORef" (fst input) + then do + setSGR [SetColor Foreground Dull Red] putStrLn ("\n-- Program is using mutable state via IORef which are vulnerable to buffer overflow. Error on line "++ show (snd input)) - else - setSGR [SetColor Foreground Dull Green] >> - -- putStrLn ("-- No risk of buffer overflow from IORef! Line "++ show (snd input)) + let c3 = True + return c3 + else do + setSGR [SetColor Foreground Dull Green] putStr " * " - if T.isInfixOf "foreign import" (fst input) - then - setSGR [SetColor Foreground Dull Red] >> + let c3 = False + return c3 + + c4 <- if T.isInfixOf "foreign import" (fst input) + then do + setSGR [SetColor Foreground Dull Red] putStrLn( "\n-- Foreign library import detected, non native libraties are more vulnerable to segmentaion faults and buffer overflows. Error on line "++ show (snd input)) - else - setSGR [SetColor Foreground Dull Green] >> - -- putStrLn ("-- Foreign imports not found! Line "++ show (snd input)) + let c4 = True + return c4 + else do + setSGR [SetColor Foreground Dull Green] putStr " * " - if T.isInfixOf "IORef" (fst input) && T.isInfixOf "import Control.Concurent" (fst input) && T.isInfixOf "forkIO" (fst input) - then - setSGR [SetColor Foreground Dull Red] >> + let c4 = False + return c4 + + + c5 <- if T.isInfixOf "IORef" (fst input) && T.isInfixOf "import Control.Concurent" (fst input) && T.isInfixOf "forkIO" (fst input) + then do + setSGR [SetColor Foreground Dull Red] putStrLn ("\n-- IORef is Unsafe for threads. Does not use up/down blocks to prevent race conditions. Use MVar instead. Error on line "++ show (snd input)) - else - setSGR [SetColor Foreground Dull Green] >> + let c5 = True + return c5 + else do + setSGR [SetColor Foreground Dull Green] -- putStrLn ("-- Safe from thread IORef race conditions. Line "++ show (snd input)) putStr " * " - if not(T.isInfixOf "import Control.Cuncurent.STM" (fst input)) && not(T.isInfixOf "atomically" (fst input)) && T.isInfixOf "forkIO" (fst input) - then - setSGR [SetColor Foreground Dull Red] >> + let c5 = False + return c5 + + c6 <- if not(T.isInfixOf "import Control.Cuncurent.STM" (fst input)) && not(T.isInfixOf "atomically" (fst input)) && T.isInfixOf "forkIO" (fst input) + then do + setSGR [SetColor Foreground Dull Red] putStrLn ("\n-- Warning. Using forkIO non atomically can lead to race conditions. Error on line "++ show (snd input)) - else - setSGR [SetColor Foreground Dull Green] >> + let c6 = True + return c6 + else do + setSGR [SetColor Foreground Dull Green] -- putStrLn ("-- Safe from non atomic forkIO race conditions "++ show (snd input)) putStr " * " + let c6 = False + return c6 putStrLn "" + + return (c1 || c2 || c3 || c4 || c5 || c6) + + main :: IO () main = do printLogo 1 cabalFiles <- listCabalFiles "." - mapM_ cveAnalysis cabalFiles + cveResults <- mapM cveAnalysis cabalFiles hsFiles <- listHsFiles "." - mapM_ weaknessAnalysis hsFiles + weaknessResults <- mapM weaknessAnalysis hsFiles + + let hasWeakness = or weaknessResults + let hasCVE = or cveResults + if (hasCVE || hasWeakness) + then exitFailure + else exitSuccess diff --git a/CLI/app/dist-newstyle/cache/compiler b/CLI/app/dist-newstyle/cache/compiler new file mode 100644 index 0000000..78e3b2e Binary files /dev/null and b/CLI/app/dist-newstyle/cache/compiler differ diff --git a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check/Lambda-Check b/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check/Lambda-Check deleted file mode 100755 index 4b641dc..0000000 Binary files a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check/Lambda-Check and /dev/null differ diff --git a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check/Lambda-Check-tmp/Main.hi b/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check/Lambda-Check-tmp/Main.hi deleted file mode 100644 index cae5cad..0000000 Binary files a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check/Lambda-Check-tmp/Main.hi and /dev/null differ diff --git a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check/autogen/Paths_Lambda_Check.hs b/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check/autogen/Paths_Lambda_Check.hs deleted file mode 100644 index 13cd45e..0000000 --- a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check/autogen/Paths_Lambda_Check.hs +++ /dev/null @@ -1,50 +0,0 @@ -{-# LANGUAGE CPP #-} -{-# LANGUAGE NoRebindableSyntax #-} -{-# OPTIONS_GHC -fno-warn-missing-import-lists #-} -module Paths_Lambda_Check ( - version, - getBinDir, getLibDir, getDynLibDir, getDataDir, getLibexecDir, - getDataFileName, getSysconfDir - ) where - -import qualified Control.Exception as Exception -import Data.Version (Version(..)) -import System.Environment (getEnv) -import Prelude - -#if defined(VERSION_base) - -#if MIN_VERSION_base(4,0,0) -catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a -#else -catchIO :: IO a -> (Exception.Exception -> IO a) -> IO a -#endif - -#else -catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a -#endif -catchIO = Exception.catch - -version :: Version -version = Version [0,1,0,0] [] -bindir, libdir, dynlibdir, datadir, libexecdir, sysconfdir :: FilePath - -bindir = "/home/omniladder/.cabal/bin" -libdir = "/home/omniladder/.cabal/lib/x86_64-linux-ghc-8.8.4/Lambda-Check-0.1.0.0-inplace-Lambda-Check" -dynlibdir = "/home/omniladder/.cabal/lib/x86_64-linux-ghc-8.8.4" -datadir = "/home/omniladder/.cabal/share/x86_64-linux-ghc-8.8.4/Lambda-Check-0.1.0.0" -libexecdir = "/home/omniladder/.cabal/libexec/x86_64-linux-ghc-8.8.4/Lambda-Check-0.1.0.0" -sysconfdir = "/home/omniladder/.cabal/etc" - -getBinDir, getLibDir, getDynLibDir, getDataDir, getLibexecDir, getSysconfDir :: IO FilePath -getBinDir = catchIO (getEnv "Lambda_Check_bindir") (\_ -> return bindir) -getLibDir = catchIO (getEnv "Lambda_Check_libdir") (\_ -> return libdir) -getDynLibDir = catchIO (getEnv "Lambda_Check_dynlibdir") (\_ -> return dynlibdir) -getDataDir = catchIO (getEnv "Lambda_Check_datadir") (\_ -> return datadir) -getLibexecDir = catchIO (getEnv "Lambda_Check_libexecdir") (\_ -> return libexecdir) -getSysconfDir = catchIO (getEnv "Lambda_Check_sysconfdir") (\_ -> return sysconfdir) - -getDataFileName :: FilePath -> IO FilePath -getDataFileName name = do - dir <- getDataDir - return (dir ++ "/" ++ name) diff --git a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check/autogen/cabal_macros.h b/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check/autogen/cabal_macros.h deleted file mode 100644 index ca59e9b..0000000 --- a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check/autogen/cabal_macros.h +++ /dev/null @@ -1,206 +0,0 @@ -/* DO NOT EDIT: This file is automatically generated by Cabal */ - -/* package Lambda-Check-0.1.0.0 */ -#ifndef VERSION_Lambda_Check -#define VERSION_Lambda_Check "0.1.0.0" -#endif /* VERSION_Lambda_Check */ -#ifndef MIN_VERSION_Lambda_Check -#define MIN_VERSION_Lambda_Check(major1,major2,minor) (\ - (major1) < 0 || \ - (major1) == 0 && (major2) < 1 || \ - (major1) == 0 && (major2) == 1 && (minor) <= 0) -#endif /* MIN_VERSION_Lambda_Check */ - -/* package ansi-terminal-1.1 */ -#ifndef VERSION_ansi_terminal -#define VERSION_ansi_terminal "1.1" -#endif /* VERSION_ansi_terminal */ -#ifndef MIN_VERSION_ansi_terminal -#define MIN_VERSION_ansi_terminal(major1,major2,minor) (\ - (major1) < 1 || \ - (major1) == 1 && (major2) < 1 || \ - (major1) == 1 && (major2) == 1 && (minor) <= 0) -#endif /* MIN_VERSION_ansi_terminal */ - -/* package base-4.13.0.0 */ -#ifndef VERSION_base -#define VERSION_base "4.13.0.0" -#endif /* VERSION_base */ -#ifndef MIN_VERSION_base -#define MIN_VERSION_base(major1,major2,minor) (\ - (major1) < 4 || \ - (major1) == 4 && (major2) < 13 || \ - (major1) == 4 && (major2) == 13 && (minor) <= 0) -#endif /* MIN_VERSION_base */ - -/* package bytestring-0.10.10.1 */ -#ifndef VERSION_bytestring -#define VERSION_bytestring "0.10.10.1" -#endif /* VERSION_bytestring */ -#ifndef MIN_VERSION_bytestring -#define MIN_VERSION_bytestring(major1,major2,minor) (\ - (major1) < 0 || \ - (major1) == 0 && (major2) < 10 || \ - (major1) == 0 && (major2) == 10 && (minor) <= 10) -#endif /* MIN_VERSION_bytestring */ - -/* package directory-1.3.6.0 */ -#ifndef VERSION_directory -#define VERSION_directory "1.3.6.0" -#endif /* VERSION_directory */ -#ifndef MIN_VERSION_directory -#define MIN_VERSION_directory(major1,major2,minor) (\ - (major1) < 1 || \ - (major1) == 1 && (major2) < 3 || \ - (major1) == 1 && (major2) == 3 && (minor) <= 6) -#endif /* MIN_VERSION_directory */ - -/* package filepath-1.4.2.1 */ -#ifndef VERSION_filepath -#define VERSION_filepath "1.4.2.1" -#endif /* VERSION_filepath */ -#ifndef MIN_VERSION_filepath -#define MIN_VERSION_filepath(major1,major2,minor) (\ - (major1) < 1 || \ - (major1) == 1 && (major2) < 4 || \ - (major1) == 1 && (major2) == 4 && (minor) <= 2) -#endif /* MIN_VERSION_filepath */ - -/* package http-conduit-2.3.8.3 */ -#ifndef VERSION_http_conduit -#define VERSION_http_conduit "2.3.8.3" -#endif /* VERSION_http_conduit */ -#ifndef MIN_VERSION_http_conduit -#define MIN_VERSION_http_conduit(major1,major2,minor) (\ - (major1) < 2 || \ - (major1) == 2 && (major2) < 3 || \ - (major1) == 2 && (major2) == 3 && (minor) <= 8) -#endif /* MIN_VERSION_http_conduit */ - -/* package split-0.2.5 */ -#ifndef VERSION_split -#define VERSION_split "0.2.5" -#endif /* VERSION_split */ -#ifndef MIN_VERSION_split -#define MIN_VERSION_split(major1,major2,minor) (\ - (major1) < 0 || \ - (major1) == 0 && (major2) < 2 || \ - (major1) == 0 && (major2) == 2 && (minor) <= 5) -#endif /* MIN_VERSION_split */ - -/* package text-1.2.4.0 */ -#ifndef VERSION_text -#define VERSION_text "1.2.4.0" -#endif /* VERSION_text */ -#ifndef MIN_VERSION_text -#define MIN_VERSION_text(major1,major2,minor) (\ - (major1) < 1 || \ - (major1) == 1 && (major2) < 2 || \ - (major1) == 1 && (major2) == 2 && (minor) <= 4) -#endif /* MIN_VERSION_text */ - -/* tool gcc-11 */ -#ifndef TOOL_VERSION_gcc -#define TOOL_VERSION_gcc "11" -#endif /* TOOL_VERSION_gcc */ -#ifndef MIN_TOOL_VERSION_gcc -#define MIN_TOOL_VERSION_gcc(major1,major2,minor) (\ - (major1) < 11 || \ - (major1) == 11 && (major2) < 0 || \ - (major1) == 11 && (major2) == 0 && (minor) <= 0) -#endif /* MIN_TOOL_VERSION_gcc */ - -/* tool ghc-8.8.4 */ -#ifndef TOOL_VERSION_ghc -#define TOOL_VERSION_ghc "8.8.4" -#endif /* TOOL_VERSION_ghc */ -#ifndef MIN_TOOL_VERSION_ghc -#define MIN_TOOL_VERSION_ghc(major1,major2,minor) (\ - (major1) < 8 || \ - (major1) == 8 && (major2) < 8 || \ - (major1) == 8 && (major2) == 8 && (minor) <= 4) -#endif /* MIN_TOOL_VERSION_ghc */ - -/* tool ghc-pkg-8.8.4 */ -#ifndef TOOL_VERSION_ghc_pkg -#define TOOL_VERSION_ghc_pkg "8.8.4" -#endif /* TOOL_VERSION_ghc_pkg */ -#ifndef MIN_TOOL_VERSION_ghc_pkg -#define MIN_TOOL_VERSION_ghc_pkg(major1,major2,minor) (\ - (major1) < 8 || \ - (major1) == 8 && (major2) < 8 || \ - (major1) == 8 && (major2) == 8 && (minor) <= 4) -#endif /* MIN_TOOL_VERSION_ghc_pkg */ - -/* tool haddock-2.23.0 */ -#ifndef TOOL_VERSION_haddock -#define TOOL_VERSION_haddock "2.23.0" -#endif /* TOOL_VERSION_haddock */ -#ifndef MIN_TOOL_VERSION_haddock -#define MIN_TOOL_VERSION_haddock(major1,major2,minor) (\ - (major1) < 2 || \ - (major1) == 2 && (major2) < 23 || \ - (major1) == 2 && (major2) == 23 && (minor) <= 0) -#endif /* MIN_TOOL_VERSION_haddock */ - -/* tool hpc-0.67 */ -#ifndef TOOL_VERSION_hpc -#define TOOL_VERSION_hpc "0.67" -#endif /* TOOL_VERSION_hpc */ -#ifndef MIN_TOOL_VERSION_hpc -#define MIN_TOOL_VERSION_hpc(major1,major2,minor) (\ - (major1) < 0 || \ - (major1) == 0 && (major2) < 67 || \ - (major1) == 0 && (major2) == 67 && (minor) <= 0) -#endif /* MIN_TOOL_VERSION_hpc */ - -/* tool hsc2hs-0.68.7 */ -#ifndef TOOL_VERSION_hsc2hs -#define TOOL_VERSION_hsc2hs "0.68.7" -#endif /* TOOL_VERSION_hsc2hs */ -#ifndef MIN_TOOL_VERSION_hsc2hs -#define MIN_TOOL_VERSION_hsc2hs(major1,major2,minor) (\ - (major1) < 0 || \ - (major1) == 0 && (major2) < 68 || \ - (major1) == 0 && (major2) == 68 && (minor) <= 7) -#endif /* MIN_TOOL_VERSION_hsc2hs */ - -/* tool pkg-config-0.29.2 */ -#ifndef TOOL_VERSION_pkg_config -#define TOOL_VERSION_pkg_config "0.29.2" -#endif /* TOOL_VERSION_pkg_config */ -#ifndef MIN_TOOL_VERSION_pkg_config -#define MIN_TOOL_VERSION_pkg_config(major1,major2,minor) (\ - (major1) < 0 || \ - (major1) == 0 && (major2) < 29 || \ - (major1) == 0 && (major2) == 29 && (minor) <= 2) -#endif /* MIN_TOOL_VERSION_pkg_config */ - -/* tool runghc-8.8.4 */ -#ifndef TOOL_VERSION_runghc -#define TOOL_VERSION_runghc "8.8.4" -#endif /* TOOL_VERSION_runghc */ -#ifndef MIN_TOOL_VERSION_runghc -#define MIN_TOOL_VERSION_runghc(major1,major2,minor) (\ - (major1) < 8 || \ - (major1) == 8 && (major2) < 8 || \ - (major1) == 8 && (major2) == 8 && (minor) <= 4) -#endif /* MIN_TOOL_VERSION_runghc */ - -/* tool strip-2.38 */ -#ifndef TOOL_VERSION_strip -#define TOOL_VERSION_strip "2.38" -#endif /* TOOL_VERSION_strip */ -#ifndef MIN_TOOL_VERSION_strip -#define MIN_TOOL_VERSION_strip(major1,major2,minor) (\ - (major1) < 2 || \ - (major1) == 2 && (major2) < 38 || \ - (major1) == 2 && (major2) == 38 && (minor) <= 0) -#endif /* MIN_TOOL_VERSION_strip */ - -#ifndef CURRENT_COMPONENT_ID -#define CURRENT_COMPONENT_ID "Lambda-Check-0.1.0.0-inplace-Lambda-Check" -#endif /* CURRENT_COMPONENT_ID */ -#ifndef CURRENT_PACKAGE_VERSION -#define CURRENT_PACKAGE_VERSION "0.1.0.0" -#endif /* CURRENT_PACKAGE_VERSION */ diff --git a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/cache/build b/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/cache/build deleted file mode 100644 index 84eaf8f..0000000 Binary files a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/cache/build and /dev/null differ diff --git a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/cache/config b/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/cache/config deleted file mode 100644 index ff0121a..0000000 Binary files a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/cache/config and /dev/null differ diff --git a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/cache/registration b/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/cache/registration deleted file mode 100644 index feb0861..0000000 Binary files a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/cache/registration and /dev/null differ diff --git a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/package.conf.inplace/package.cache b/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/package.conf.inplace/package.cache deleted file mode 100644 index b3cae5c..0000000 Binary files a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/package.conf.inplace/package.cache and /dev/null differ diff --git a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/package.conf.inplace/package.cache.lock b/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/package.conf.inplace/package.cache.lock deleted file mode 100644 index e69de29..0000000 diff --git a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/setup-config b/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/setup-config deleted file mode 100644 index a15d2a0..0000000 Binary files a/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/setup-config and /dev/null differ diff --git a/CLI/dist-newstyle/cache/compiler b/CLI/dist-newstyle/cache/compiler deleted file mode 100644 index d0c81a7..0000000 Binary files a/CLI/dist-newstyle/cache/compiler and /dev/null differ diff --git a/CLI/dist-newstyle/cache/config b/CLI/dist-newstyle/cache/config deleted file mode 100644 index 08393eb..0000000 Binary files a/CLI/dist-newstyle/cache/config and /dev/null differ diff --git a/CLI/dist-newstyle/cache/elaborated-plan b/CLI/dist-newstyle/cache/elaborated-plan deleted file mode 100644 index 8adf8ca..0000000 Binary files a/CLI/dist-newstyle/cache/elaborated-plan and /dev/null differ diff --git a/CLI/dist-newstyle/cache/improved-plan b/CLI/dist-newstyle/cache/improved-plan deleted file mode 100644 index 13885a3..0000000 Binary files a/CLI/dist-newstyle/cache/improved-plan and /dev/null differ diff --git a/CLI/dist-newstyle/cache/plan.json b/CLI/dist-newstyle/cache/plan.json deleted file mode 100644 index 924dad6..0000000 --- a/CLI/dist-newstyle/cache/plan.json +++ /dev/null @@ -1 +0,0 @@ -{"cabal-version":"3.0.0.0","cabal-lib-version":"3.0.1.0","compiler-id":"ghc-8.8.4","os":"linux","arch":"x86_64","install-plan":[{"type":"configured","id":"Lambda-Check-0.1.0.0-inplace-Lambda-Check","pkg-name":"Lambda-Check","pkg-version":"0.1.0.0","flags":{},"style":"local","pkg-src":{"type":"local","path":"/home/omniladder/lambda-check/CLI/."},"dist-dir":"/home/omniladder/lambda-check/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check","depends":["ansi-terminal-1.1-f0b82687273b299b6f8bdb6db9371e0607c2014ee8fe141d8f037135c8b7216d","base-4.13.0.0","bytestring-0.10.10.1","directory-1.3.6.0","filepath-1.4.2.1","http-conduit-2.3.8.3-6894a3116f4b67d27136da1ec2bd13e8e647905c9fd71415e35de83addee30a3","split-0.2.5-3248f0208076d2d75660077cea4a0e68629f20a1534792bb39ef632220d13053","text-1.2.4.0"],"exe-depends":[],"component-name":"exe:Lambda-Check","bin-file":"/home/omniladder/lambda-check/CLI/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check/Lambda-Check"},{"type":"configured","id":"OneTuple-0.4.1.1-062ef8fcf0b088fc58aab3eb2fb1640aa398054b97928152ed4bc753b4233c66","pkg-name":"OneTuple","pkg-version":"0.4.1.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"632dfded172086fb9f0e26d3578bcfffa3fb6d135ea5a8de17b7a33ff6e6e682","pkg-src-sha256":"c9e764d4ee1e57cad8341bd5d0de33ba3a52b6793fc1309679f2bf60c030bb2b","depends":["base-4.13.0.0","base-orphans-0.9.1-56ca1e3dbc0e2280fff3cf08f4a5940551f0370e7a640301f30845ce149d439a","foldable1-classes-compat-0.1-2f7b66e687f346da2659c0349bfe221621f79f032d0a67c1a75ee3f26fa86fc6","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","template-haskell-2.15.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"QuickCheck-2.14.3-c388967c6658ab4e0d2372310a10c8fc41c36320f0208f10296cdbec26cfc8a0","pkg-name":"QuickCheck","pkg-version":"2.14.3","flags":{"old-random":false,"templatehaskell":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"f03d2f404d5ba465453d0fbc1944832789a759fe7c4f9bf8616bc1378a02fde4","pkg-src-sha256":"5c0f22b36b28a1a8fa110b3819818d3f29494a3b0dedbae299f064123ca70501","depends":["base-4.13.0.0","containers-0.6.2.1","deepseq-1.4.4.0","random-1.2.1.2-d98a4b25178993c5948451c22661810a5585405330c4a04dab3727c9acbfcdbe","splitmix-0.1.0.5-8aea1e61a097d40a3a1d96c9610c265a175c0338d65421fd84b477fa17f68452","template-haskell-2.15.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"StateVar-1.2.2-809f7450ed2c355ed126a1446db100d9aaa32d8571f78fccc01cd27b4fb1872d","pkg-name":"StateVar","pkg-version":"1.2.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"3c022c00485fe165e3080d5da6b3ca9c9b02f62c5deebc584d1b3d1309ce673e","pkg-src-sha256":"5e4b39da395656a59827b0280508aafdc70335798b50e5d6fd52596026251825","depends":["base-4.13.0.0","stm-2.5.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"aeson-2.2.1.0-b9ff8dd69f03804a7b2dec418739dc4b032bf0e8fe7e1ccb1f21764e1bc3f72e","pkg-name":"aeson","pkg-version":"2.2.1.0","flags":{"ordered-keymap":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"a23a61aada8233e10573e1612c0b2efe5a1aba0d59b05dbe2f63301822f136cb","pkg-src-sha256":"914eefd0e80d12db5c721daa2cbab427acee39795f125c5460c1fe48cf9a5d7f","depends":["OneTuple-0.4.1.1-062ef8fcf0b088fc58aab3eb2fb1640aa398054b97928152ed4bc753b4233c66","QuickCheck-2.14.3-c388967c6658ab4e0d2372310a10c8fc41c36320f0208f10296cdbec26cfc8a0","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","data-fix-0.3.2-5c64e395be6142ce9a51a73aeaa3af0000d2c04e877aca2072bca21d004965d9","deepseq-1.4.4.0","dlist-1.0-d6b5d855d0bcae1a5528c078bd76caecbcfc92fe5e5745f635e6b06cbeb4967c","exceptions-0.10.7-acc5434b8d272e05e22188d836b523492f4323757566f18c445890d7bff3590f","generically-0.1.1-442bc4370b58aa39493d462d9b645b50caff14d9e4917d547416fd5db4010efc","ghc-prim-0.5.3","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","indexed-traversable-0.1.3-be9b51185cfea55fd60ee0255319581c83522c9070d7b6843ceae51a5b83e16d","integer-conversion-0.1.0.1-ceec80999e892262c9d8e6925fb03ff4a90a7601a1a810e1c95b1c4189f0b494","integer-gmp-1.0.2.0","integer-logarithms-1.0.3.1-4fcea6311b5391f66e0760cd655dea16884eaa624e4b0f656776039c5a1a91ea","network-uri-2.6.4.2-b7aa201ef0bde019977d02eb6d39f0ffa98c0044e1c6a681561b037fdecd7fd1","primitive-0.9.0.0-baad4b35d4494996ef61d7b848afe16a1ebda4d830b73dc79dcbd8eed653fbe5","scientific-0.3.7.0-23b13f7b47110bbc9f75f907fab4d1e14b3ce16e5f89b8629f4ef6b17e512b12","semialign-1.3-11f49537478f588060073cd3d4d8b702ce5b889c4fbf44072f27e0e2e04e7b9f","strict-0.5-0fb55dca8050eadf70e1e9d03f441ee3de1de8b0c0bb70239c676055702a1de4","tagged-0.8.8-c0cf362176cbe235f6a6bc8e85db8dd03527d0db77dae5d8258bfcfe6708b399","template-haskell-2.15.0.0","text-1.2.4.0","text-iso8601-0.1-950d8e92a5aa1e81565e8a2d95c7349d19905799229b411a5858a34a7b8ef823","text-short-0.1.5-aa46c8323091468145716339c4088f96fd921428d2547d16b8af1cecbc1999a2","th-abstraction-0.6.0.0-d88ad2f9852da9fc47d05e1b0517b56ab3fb3968f474740e177dcbc0b0143277","these-1.2-c0b774f859d20ba7e61417d3ad8622e56f0b3ef393dd846e8cb6e84f9d1c34ce","time-1.9.3","time-compat-1.9.6.1-ce87982448202c6caaa9fa6625ad6e1c00f0005e65863379bd74ab6d59338ea7","unordered-containers-0.2.20-f3adff0a602ce91ec452a3a72d4873f871ea073fa5e3d8a56b14c1f60135a744","uuid-types-1.0.5.1-1c8735bca81b017e3887da3c6e3bd1c3cfafef77fa1eb9e486af14c66da8886d","vector-0.13.1.0-28fb51390d8b219fc5bb674efb0d594f69f7c487d91d4eccc242cf07a19ec827","witherable-0.4.2-61538977dad98148d1537e3be1a35fee7e505b57d54d1718e0305f331df6eff7"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"ansi-terminal-1.1-f0b82687273b299b6f8bdb6db9371e0607c2014ee8fe141d8f037135c8b7216d","pkg-name":"ansi-terminal","pkg-version":"1.1","flags":{"example":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"1877d280fb0027bd460f42b89abb30ee5490b97db738d21fcd6aacfb8a5dcc62","pkg-src-sha256":"525d6257bebad9755fa528ce03e64c6a439fbc129aa307a14063896e4871b253","depends":["ansi-terminal-types-1.1-c1d932171bd700ba268d89cc3a71341e42ec1cb87fda8ea4fea3ee5ed4bf45f8","base-4.13.0.0","colour-2.3.6-709b04b87422a1d04c272d027f178552b392de79f763242775112aa2511061c9"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"ansi-terminal-types-1.1-c1d932171bd700ba268d89cc3a71341e42ec1cb87fda8ea4fea3ee5ed4bf45f8","pkg-name":"ansi-terminal-types","pkg-version":"1.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"135f6a381afa19d53d0a3fe40b6dd47e6666c538b09e4300fbb1438759df3248","pkg-src-sha256":"f2e5333eb78da5f4dd330fca0c81a59276cc150c625647cd20f57b7f297a5d25","depends":["base-4.13.0.0","colour-2.3.6-709b04b87422a1d04c272d027f178552b392de79f763242775112aa2511061c9"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"appar-0.1.8-fd65dba0553d6bfd48d1bfc7a6cbd2adbd9f4619a11b57d0784bd277e3d8ccc8","pkg-name":"appar","pkg-version":"0.1.8","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"a5d529bacbb74d566e4c5f9479af0637eac5957705f6db4d2670517489795de8","pkg-src-sha256":"c4ceeddc26525b58d82c41b6d3e32141371a200a6794aae185b6266ccc81631f","components":{"lib":{"depends":["base-4.13.0.0","bytestring-0.10.10.1"],"exe-depends":[]}}},{"type":"pre-existing","id":"array-0.5.4.0","pkg-name":"array","pkg-version":"0.5.4.0","depends":["base-4.13.0.0"]},{"type":"configured","id":"asn1-encoding-0.9.6-9737c6373a072fdcb92d456cfadd4c477cf570f0a157978745098b1031edbf51","pkg-name":"asn1-encoding","pkg-version":"0.9.6","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"27ed8f6043aed79630313bb931f7c8e2b510f0b4586cd55c16ae040c7d1ea098","pkg-src-sha256":"d9f8deabd3b908e5cf83c0d813c08dc0143b3ec1c0d97f660d2cfa02c1c8da0a","depends":["asn1-types-0.3.4-dc110a1c3709c68690b77c4300ebd58772f10fbdc3690f5979e6e96c4920e449","base-4.13.0.0","bytestring-0.10.10.1","hourglass-0.2.12-0031b0f27c5a75e0cf0915191a4f622175f30ef890265cf74d32578007bd1b50"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"asn1-parse-0.9.5-90abd48c96313087bc3f942b538fe8b8f8975354d0aae42b71c81cc95fe291be","pkg-name":"asn1-parse","pkg-version":"0.9.5","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"77c0126d63070df2d82cb4cfa4febb26c4e280f6d854bc778c2fa4d80ce692b8","pkg-src-sha256":"8f1fe1344d30b39dc594d74df2c55209577722af1497204b4c2b6d6e8747f39e","components":{"lib":{"depends":["asn1-encoding-0.9.6-9737c6373a072fdcb92d456cfadd4c477cf570f0a157978745098b1031edbf51","asn1-types-0.3.4-dc110a1c3709c68690b77c4300ebd58772f10fbdc3690f5979e6e96c4920e449","base-4.13.0.0","bytestring-0.10.10.1"],"exe-depends":[]}}},{"type":"configured","id":"asn1-types-0.3.4-dc110a1c3709c68690b77c4300ebd58772f10fbdc3690f5979e6e96c4920e449","pkg-name":"asn1-types","pkg-version":"0.3.4","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"8e879b3a5bbdd0031232eb84d904b5a3a2c20a18847692b996d774f4ff811355","pkg-src-sha256":"78ee92a251379298ca820fa53edbf4b33c539b9fcd887c86f520c30e3b4e21a8","components":{"lib":{"depends":["base-4.13.0.0","bytestring-0.10.10.1","hourglass-0.2.12-0031b0f27c5a75e0cf0915191a4f622175f30ef890265cf74d32578007bd1b50","memory-0.18.0-f6391a1a28aa85060df171f56b9a7cbe37e466f964211653b6ca73691e7038a2"],"exe-depends":[]}}},{"type":"configured","id":"assoc-1.1-399066d8c3dc6eb3028e6c403ebbf32d6d83c2ce60866c945a5f6aacc7848f5c","pkg-name":"assoc","pkg-version":"1.1","flags":{"tagged":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"56d0fd1c17aaf6268e81bf19ba5afe186128d7f88126bd546d5b3151ab692652","pkg-src-sha256":"7aa2e6548b3d9d49a286ac20639479aaf6c47a1446113ed784d98737c5f60df4","depends":["base-4.13.0.0","tagged-0.8.8-c0cf362176cbe235f6a6bc8e85db8dd03527d0db77dae5d8258bfcfe6708b399"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"async-2.2.5-e49351147ee84eca445db4eb7aeecf028bd2db628a1e3fef620924f0e2ba5967","pkg-name":"async","pkg-version":"2.2.5","flags":{"bench":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"957d5ca4496e7048e3e78f108dbdc3e391eafe60b50417486e4c28957d430b05","pkg-src-sha256":"1818473ebab9212afad2ed76297aefde5fae8b5d4404daf36939aece6a8f16f7","depends":["base-4.13.0.0","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","stm-2.5.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"attoparsec-0.14.4-98d0a18a5dbedc2c56323c1a3b1524aeeaef9ca0c9bf4203b3cb9bbeb627cc0b","pkg-name":"attoparsec","pkg-version":"0.14.4","flags":{"developer":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ec709539b881d6431620bd7c40fbfa680aaf4a98c6f35b51536d8f455682b1ae","pkg-src-sha256":"3f337fe58624565de12426f607c23e60c7b09c86b4e3adfc827ca188c9979e6c","depends":["array-0.5.4.0","attoparsec-0.14.4-ff0b17084884f6158ddadcb12faca37440647280ff60156061adf50bcd02bfbf","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","deepseq-1.4.4.0","ghc-prim-0.5.3","scientific-0.3.7.0-23b13f7b47110bbc9f75f907fab4d1e14b3ce16e5f89b8629f4ef6b17e512b12","text-1.2.4.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"attoparsec-0.14.4-ff0b17084884f6158ddadcb12faca37440647280ff60156061adf50bcd02bfbf","pkg-name":"attoparsec","pkg-version":"0.14.4","flags":{"developer":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ec709539b881d6431620bd7c40fbfa680aaf4a98c6f35b51536d8f455682b1ae","pkg-src-sha256":"3f337fe58624565de12426f607c23e60c7b09c86b4e3adfc827ca188c9979e6c","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","text-1.2.4.0"],"exe-depends":[],"component-name":"lib:attoparsec-internal"},{"type":"configured","id":"attoparsec-aeson-2.2.0.1-fa2fa583fdc9d2c7b52e4c755121cb0f9b376d818dd7919a8bb3c51e6d40316b","pkg-name":"attoparsec-aeson","pkg-version":"2.2.0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"00026bb205aaa087215a4c3a65a62c4561c3fb58e882778c9607c63e2aa960e9","pkg-src-sha256":"cfc5f23a7b45d00c1121cbd94aef7ff0b3d997039931862c460340599a01c409","depends":["aeson-2.2.1.0-b9ff8dd69f03804a7b2dec418739dc4b032bf0e8fe7e1ccb1f21764e1bc3f72e","attoparsec-0.14.4-98d0a18a5dbedc2c56323c1a3b1524aeeaef9ca0c9bf4203b3cb9bbeb627cc0b","base-4.13.0.0","bytestring-0.10.10.1","integer-conversion-0.1.0.1-ceec80999e892262c9d8e6925fb03ff4a90a7601a1a810e1c95b1c4189f0b494","primitive-0.9.0.0-baad4b35d4494996ef61d7b848afe16a1ebda4d830b73dc79dcbd8eed653fbe5","scientific-0.3.7.0-23b13f7b47110bbc9f75f907fab4d1e14b3ce16e5f89b8629f4ef6b17e512b12","text-1.2.4.0","vector-0.13.1.0-28fb51390d8b219fc5bb674efb0d594f69f7c487d91d4eccc242cf07a19ec827"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"base-4.13.0.0","pkg-name":"base","pkg-version":"4.13.0.0","depends":["ghc-prim-0.5.3","integer-gmp-1.0.2.0","rts"]},{"type":"configured","id":"base-orphans-0.9.1-56ca1e3dbc0e2280fff3cf08f4a5940551f0370e7a640301f30845ce149d439a","pkg-name":"base-orphans","pkg-version":"0.9.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"c4733d09f798fc4304e936924a1a7d9fc2425aefad6c46ad4592035254b46051","pkg-src-sha256":"5bbf2da382c5b212d6a8be2f8c49edee0eba30f272a15fd32c13e6e4091ef172","depends":["base-4.13.0.0","ghc-prim-0.5.3"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"base16-bytestring-1.0.2.0-ba74bd1460af5acddf128d76ebce0931f349a76f1256b3e712ea6f350f366e1d","pkg-name":"base16-bytestring","pkg-version":"1.0.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"a694e88f9ec9fc79f0b03f233d3fea592b68f70a34aac2ddb5bcaecb6562e2fd","pkg-src-sha256":"1d5a91143ef0e22157536093ec8e59d226a68220ec89378d5dcaeea86472c784","depends":["base-4.13.0.0","bytestring-0.10.10.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"base64-bytestring-1.2.1.0-0cf4b8b273c4e23586ab1eecc01e5fbd9d12067d68634ff113df996e89264e35","pkg-name":"base64-bytestring","pkg-version":"1.2.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"45305ccf8914c66d385b518721472c7b8c858f1986945377f74f85c1e0d49803","pkg-src-sha256":"fbf8ed30edde271eb605352021431d8f1b055f95a56af31fe2eacf6bdfdc49c9","depends":["base-4.13.0.0","bytestring-0.10.10.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"basement-0.0.14-1313c9046e0b8fcd372818cd04d928d89a48947863137aff7f274315f237b71d","pkg-name":"basement","pkg-version":"0.0.14","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"2eaaad8a625ede3f0cea5c3fa6cd2aa5bec1c66de65c843b870d72ba1e8d059b","pkg-src-sha256":"bb0aaf253e09351f9a62276514bca49ad4df7f31412d142d948221c2c01f7306","depends":["base-4.13.0.0","ghc-prim-0.5.3"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"bifunctors-5.6.1-112aa0060ff230f001f94d926fc57bd88fead80e192b3e98aff5c0f8f1fbefee","pkg-name":"bifunctors","pkg-version":"5.6.1","flags":{"tagged":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"82fa7ed8f69f0bfa375de117ab36414c0b96a97ee046edc3ac6da7a295a94755","pkg-src-sha256":"06381471b5be16516a1b2c4b21a5101a3d991038bface8e0cad144c0044d57fc","depends":["assoc-1.1-399066d8c3dc6eb3028e6c403ebbf32d6d83c2ce60866c945a5f6aacc7848f5c","base-4.13.0.0","comonad-5.0.8-55531f4d5e6e24653ca58602f4fbbb9c7d3cc5be13fdfa75496787cc6a48d8ca","containers-0.6.2.1","foldable1-classes-compat-0.1-2f7b66e687f346da2659c0349bfe221621f79f032d0a67c1a75ee3f26fa86fc6","tagged-0.8.8-c0cf362176cbe235f6a6bc8e85db8dd03527d0db77dae5d8258bfcfe6708b399","template-haskell-2.15.0.0","th-abstraction-0.6.0.0-d88ad2f9852da9fc47d05e1b0517b56ab3fb3968f474740e177dcbc0b0143277","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"binary-0.8.7.0","pkg-name":"binary","pkg-version":"0.8.7.0","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1"]},{"type":"configured","id":"bitvec-1.1.5.0-fe5405803218d5b54df054f332d2e256f58dfa11e58d86f0c830db9f084fc5fa","pkg-name":"bitvec","pkg-version":"1.1.5.0","flags":{"simd":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"7c5639f95c8ce9d5be810152bfcaf701aac3b7d7f08685a869c7eda63dc2cd76","pkg-src-sha256":"83d27cee5be1d5342ddbf39999d0c8ea54cb433d0891eea5471fbfaa29f8dec5","depends":["base-4.13.0.0","bytestring-0.10.10.1","deepseq-1.4.4.0","integer-gmp-1.0.2.0","primitive-0.9.0.0-baad4b35d4494996ef61d7b848afe16a1ebda4d830b73dc79dcbd8eed653fbe5","vector-0.13.1.0-28fb51390d8b219fc5bb674efb0d594f69f7c487d91d4eccc242cf07a19ec827"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"blaze-builder-0.4.2.3-207d70119f5f332023605ad013b47abe83188e822014aba2f9ee78ef6f61e2c7","pkg-name":"blaze-builder","pkg-version":"0.4.2.3","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"3f2ff408e858e3ecac30183f98bbb14ce6cf6314c654bd9107e51defd386d5ef","pkg-src-sha256":"66291874236b7342adab033e3cddae414a23a2865dfb44095dfc4e0b9d46703b","depends":["base-4.13.0.0","bytestring-0.10.10.1","deepseq-1.4.4.0","ghc-prim-0.5.3","text-1.2.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"byteorder-1.0.4-b4a734f16192d9f59ec79a8accc8a0a2a2388acc2ca0c203247164029f74c4a9","pkg-name":"byteorder","pkg-version":"1.0.4","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"a952817dcbe20af0346fb55a28c13e95e2ddbf3e99f9b4fffdc063f150f13b20","pkg-src-sha256":"bd20bbb586947f99c38a4c93d9d0266f49f6fc581767b51ba568f6d5d52d2919","components":{"lib":{"depends":["base-4.13.0.0"],"exe-depends":[]}}},{"type":"pre-existing","id":"bytestring-0.10.10.1","pkg-name":"bytestring","pkg-version":"0.10.10.1","depends":["base-4.13.0.0","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0"]},{"type":"configured","id":"case-insensitive-1.2.1.0-ee8bf29ceac54d1bc82f9116606c99176d1f6bf30c913279cd24a822f5eccd66","pkg-name":"case-insensitive","pkg-version":"1.2.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"9dfd3171fc7698cf8d931727d3af3a7b389135b583e46b5adac1f9d2026fff61","pkg-src-sha256":"296dc17e0c5f3dfb3d82ced83e4c9c44c338ecde749b278b6eae512f1d04e406","depends":["base-4.13.0.0","bytestring-0.10.10.1","deepseq-1.4.4.0","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","text-1.2.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"cborg-0.2.10.0-249e056964d327ae111c0136d80ff2fa07bc0682c1e68b8ae8ec74f8f8f6002e","pkg-name":"cborg","pkg-version":"0.2.10.0","flags":{"optimize-gmp":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"61655189275a1d3f74553e918c90ae87448bc4af6c5f41159c01849b22b1ee75","pkg-src-sha256":"17fe070c38fc498cab49bcb9d6215b7747d53bedf96502e9bcce9cad73b9c797","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","deepseq-1.4.4.0","ghc-prim-0.5.3","half-0.3.1-d20d68f926198ab6c08aef703400eff944340c5801c3e98b82a95f453f095068","integer-gmp-1.0.2.0","primitive-0.9.0.0-baad4b35d4494996ef61d7b848afe16a1ebda4d830b73dc79dcbd8eed653fbe5","text-1.2.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"cereal-0.5.8.3-8c7e84cad332a27a3c5fe528a005344d4c2a04c40719534d7efd1ba5663a5234","pkg-name":"cereal","pkg-version":"0.5.8.3","flags":{"bytestring-builder":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"87a227c7b510217ea059db3dd59d9665edd8f0d1d3d8de39458e371a1d9402fb","pkg-src-sha256":"99905220661b26e5bd91130bd9772554938608a5b1d717240a6eb331121e0f6a","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","ghc-prim-0.5.3"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"colour-2.3.6-709b04b87422a1d04c272d027f178552b392de79f763242775112aa2511061c9","pkg-name":"colour","pkg-version":"2.3.6","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ebdcbf15023958838a527e381ab3c3b1e99ed12d1b25efeb7feaa4ad8c37664a","pkg-src-sha256":"2cd35dcd6944a5abc9f108a5eb5ee564b6b1fa98a9ec79cefcc20b588991f871","depends":["base-4.13.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"comonad-5.0.8-55531f4d5e6e24653ca58602f4fbbb9c7d3cc5be13fdfa75496787cc6a48d8ca","pkg-name":"comonad","pkg-version":"5.0.8","flags":{"containers":true,"distributive":true,"indexed-traversable":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4a4dbfbd03fb4963987710fca994e8b5624bd05a33e5f95b7581b26f8229c5e3","pkg-src-sha256":"ef6cdf2cc292cc43ee6aa96c581b235fdea8ab44a0bffb24dc79ae2b2ef33d13","depends":["base-4.13.0.0","containers-0.6.2.1","distributive-0.6.2.1-2cd9af897eff078b02f95a54f88c620cbb2c1d802551171f9ac357ef5e4e9c59","indexed-traversable-0.1.3-be9b51185cfea55fd60ee0255319581c83522c9070d7b6843ceae51a5b83e16d","tagged-0.8.8-c0cf362176cbe235f6a6bc8e85db8dd03527d0db77dae5d8258bfcfe6708b399","transformers-0.5.6.2","transformers-compat-0.7.2-30c9f914024932446711753f3ec03d44aac1f949015742d2756364cbdac929bd"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"conduit-1.3.5-01896a355221c9ed406826ce1b30c6d3449a4710d6c8c4d043084472a102dc67","pkg-name":"conduit","pkg-version":"1.3.5","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"22665df25c9c158d5fcfb299e46b0b642868add42a6bb13b79d457dc7ff7be1a","pkg-src-sha256":"2bb0d3e0eecc43e3d1d8cfc2125914f9175cde752be2d5908a1e120f321c782d","depends":["base-4.13.0.0","bytestring-0.10.10.1","directory-1.3.6.0","exceptions-0.10.7-acc5434b8d272e05e22188d836b523492f4323757566f18c445890d7bff3590f","filepath-1.4.2.1","mono-traversable-1.0.17.0-85a767ade23ad9e97464866d4d70bd00c4fafbc004a28964f76d13f3d961f00b","mtl-2.2.2","primitive-0.9.0.0-baad4b35d4494996ef61d7b848afe16a1ebda4d830b73dc79dcbd8eed653fbe5","resourcet-1.3.0-b7ac7e50f2c7802f4501bf146eabbbcb5debfd4cda2375088ae383accbbff0b4","text-1.2.4.0","transformers-0.5.6.2","unix-2.7.2.2","unliftio-core-0.2.1.0-8a5c15a1d4bbea0648ac5b64f58669b5eea7216336fa9377c9cf0ed620ffa865","vector-0.13.1.0-28fb51390d8b219fc5bb674efb0d594f69f7c487d91d4eccc242cf07a19ec827"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"conduit-extra-1.3.6-242f1ada81f430d049a4958886a1ca791cd0b564538b23ee3e0f6ecf3b945408","pkg-name":"conduit-extra","pkg-version":"1.3.6","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"83303e6fea78a683fdbb41682fc8dbc47b1d8830da1f09e88940f9a744a7f984","pkg-src-sha256":"8950c38049d892c38590d389bed49ecf880671f58ec63dd4709d9fe3d4b8f153","depends":["async-2.2.5-e49351147ee84eca445db4eb7aeecf028bd2db628a1e3fef620924f0e2ba5967","attoparsec-0.14.4-98d0a18a5dbedc2c56323c1a3b1524aeeaef9ca0c9bf4203b3cb9bbeb627cc0b","base-4.13.0.0","bytestring-0.10.10.1","conduit-1.3.5-01896a355221c9ed406826ce1b30c6d3449a4710d6c8c4d043084472a102dc67","directory-1.3.6.0","filepath-1.4.2.1","network-3.1.4.0-b18fe35ab5d877de49436b608e322e10cbdf13ee0dcffb30bcaa6ea18501285f","primitive-0.9.0.0-baad4b35d4494996ef61d7b848afe16a1ebda4d830b73dc79dcbd8eed653fbe5","process-1.6.9.0","resourcet-1.3.0-b7ac7e50f2c7802f4501bf146eabbbcb5debfd4cda2375088ae383accbbff0b4","stm-2.5.0.0","streaming-commons-0.2.2.6-1fa0ff15dfc683be9d0e20ed1851f9771ec5d56758f85689cb8d3bbedfcac3f9","text-1.2.4.0","transformers-0.5.6.2","typed-process-0.2.11.1-28fe21bdcf3c6735a97584e170b3c8131b6d90cae97be660d2ea824a499e8333","unliftio-core-0.2.1.0-8a5c15a1d4bbea0648ac5b64f58669b5eea7216336fa9377c9cf0ed620ffa865"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"containers-0.6.2.1","pkg-name":"containers","pkg-version":"0.6.2.1","depends":["array-0.5.4.0","base-4.13.0.0","deepseq-1.4.4.0"]},{"type":"configured","id":"contravariant-1.5.5-a9f2edf6313473bb5f7c87a8d9545c51e0f5c1787ea106e3d8441f1ba179cbf0","pkg-name":"contravariant","pkg-version":"1.5.5","flags":{"semigroups":true,"statevar":true,"tagged":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"470ed0e040e879e2da4af1b2c8f94e199f6135852a8107858d5ae0a95365835f","pkg-src-sha256":"062fd66580d7aad0b5ba93e644ffa7feee69276ef50f20d4ed9f1deb7642dffa","depends":["StateVar-1.2.2-809f7450ed2c355ed126a1446db100d9aaa32d8571f78fccc01cd27b4fb1872d","base-4.13.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"cookie-0.4.6-71161ce0fc30e99e69e7178647ab91514f628388e5a9132efb0397c05ad97071","pkg-name":"cookie","pkg-version":"0.4.6","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"00f3a7d5604a3ccbfe89b9c52f8eb1edea753dc273d015333895118f32683ecd","pkg-src-sha256":"8c41a956c32b9733d525a53d43b0338a236a34d36658ecc4364c8249a6664baa","depends":["base-4.13.0.0","bytestring-0.10.10.1","data-default-class-0.1.2.0-e0e6e76a5af94e8463d816cf6b7df21b2bb88e9405c6546da0bbb505eef42066","deepseq-1.4.4.0","text-1.2.4.0","time-1.9.3"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"crypton-0.34-fb07506627da2c273f59a4bd61955008ef5f039d8af79e5b5ba334354a111459","pkg-name":"crypton","pkg-version":"0.34","flags":{"check_alignment":false,"integer-gmp":true,"old_toolchain_inliner":false,"support_aesni":true,"support_deepseq":true,"support_pclmuldq":true,"support_rdrand":true,"support_sse":false,"use_target_attributes":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"9e4b50d79d1fba681befa08151db7223d2b4bb72564853e8530e614105d53a1a","pkg-src-sha256":"4444846924ca55615fce104913a5a68675a180cfeadc350ab2b124fba1bc1ed6","depends":["base-4.13.0.0","basement-0.0.14-1313c9046e0b8fcd372818cd04d928d89a48947863137aff7f274315f237b71d","bytestring-0.10.10.1","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0","memory-0.18.0-f6391a1a28aa85060df171f56b9a7cbe37e466f964211653b6ca73691e7038a2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"crypton-connection-0.3.2-c1bd9040a90e065267f8f4cfe349d327d010e9e170cd5a34fd5109addfe861b4","pkg-name":"crypton-connection","pkg-version":"0.3.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"c7937edc25ab022bcf167703f2ec5ab73b62908e545bb587d2aa42b33cd6f6cc","pkg-src-sha256":"208be23bc910f8e5f9431995b9c011ed376bb947d79f74c8f51a5e4ecd9e991e","depends":["base-4.13.0.0","basement-0.0.14-1313c9046e0b8fcd372818cd04d928d89a48947863137aff7f274315f237b71d","bytestring-0.10.10.1","containers-0.6.2.1","crypton-x509-1.7.6-36a36d780adbe0a78c25fb814c2b6d8233681262accfc66bed3da43a6c50043f","crypton-x509-store-1.6.9-7308248aeeb5b9cc5f7493b3931b66e3ac5e1cafb345fe13b8efbbeadc6d8eb9","crypton-x509-system-1.6.7-9fca2c4ec857ebcb1673dc67aff3c7fdb59de2a1331e7f9e349979fc9a5bc504","crypton-x509-validation-1.6.12-8563538d4464e839104fb8f19ab0060f93c039094d428acb81fbde3ee6a58615","data-default-class-0.1.2.0-e0e6e76a5af94e8463d816cf6b7df21b2bb88e9405c6546da0bbb505eef42066","network-3.1.4.0-b18fe35ab5d877de49436b608e322e10cbdf13ee0dcffb30bcaa6ea18501285f","socks-0.6.1-d39c15e3b1fa81da851339fc924c5622e520920240719ff3d8c67fb920af43b7","tls-2.0.1-a35b676e2e1bc9b7c328413a8e863a7382c021ed706630c342bd262f8b874845"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"crypton-x509-1.7.6-36a36d780adbe0a78c25fb814c2b6d8233681262accfc66bed3da43a6c50043f","pkg-name":"crypton-x509","pkg-version":"1.7.6","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"c567657a705b6d6521f9dd2de999bf530d618ec00f3b939df76a41fb0fe94281","pkg-src-sha256":"ebb74aca2d00261e2fb4927d211ba1a174e190e5257f309e190f019727f8caff","depends":["asn1-encoding-0.9.6-9737c6373a072fdcb92d456cfadd4c477cf570f0a157978745098b1031edbf51","asn1-parse-0.9.5-90abd48c96313087bc3f942b538fe8b8f8975354d0aae42b71c81cc95fe291be","asn1-types-0.3.4-dc110a1c3709c68690b77c4300ebd58772f10fbdc3690f5979e6e96c4920e449","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","crypton-0.34-fb07506627da2c273f59a4bd61955008ef5f039d8af79e5b5ba334354a111459","hourglass-0.2.12-0031b0f27c5a75e0cf0915191a4f622175f30ef890265cf74d32578007bd1b50","memory-0.18.0-f6391a1a28aa85060df171f56b9a7cbe37e466f964211653b6ca73691e7038a2","pem-0.2.4-eda3dbfc35b19c65ea0afffa8315eb66d81c83843e886f31a3cc42d21982366e","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"crypton-x509-store-1.6.9-7308248aeeb5b9cc5f7493b3931b66e3ac5e1cafb345fe13b8efbbeadc6d8eb9","pkg-name":"crypton-x509-store","pkg-version":"1.6.9","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"422b9b9f87a7382c66385d047615b16fc86a68c08ea22b1e0117c143a2d44050","pkg-src-sha256":"3e6218af12e039cc291d19792db044df1647b5cf0bbc60b909a027e7595a256f","depends":["asn1-encoding-0.9.6-9737c6373a072fdcb92d456cfadd4c477cf570f0a157978745098b1031edbf51","asn1-types-0.3.4-dc110a1c3709c68690b77c4300ebd58772f10fbdc3690f5979e6e96c4920e449","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","crypton-0.34-fb07506627da2c273f59a4bd61955008ef5f039d8af79e5b5ba334354a111459","crypton-x509-1.7.6-36a36d780adbe0a78c25fb814c2b6d8233681262accfc66bed3da43a6c50043f","directory-1.3.6.0","filepath-1.4.2.1","mtl-2.2.2","pem-0.2.4-eda3dbfc35b19c65ea0afffa8315eb66d81c83843e886f31a3cc42d21982366e"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"crypton-x509-system-1.6.7-9fca2c4ec857ebcb1673dc67aff3c7fdb59de2a1331e7f9e349979fc9a5bc504","pkg-name":"crypton-x509-system","pkg-version":"1.6.7","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"023ed573d82983bc473a37a89e0434a085b413be9f68d07e085361056afd4637","pkg-src-sha256":"a436261e5f5e83d85080f57a5509c8224c9e75a6e56d0c43a7d2967052b634ca","depends":["base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","crypton-x509-1.7.6-36a36d780adbe0a78c25fb814c2b6d8233681262accfc66bed3da43a6c50043f","crypton-x509-store-1.6.9-7308248aeeb5b9cc5f7493b3931b66e3ac5e1cafb345fe13b8efbbeadc6d8eb9","directory-1.3.6.0","filepath-1.4.2.1","mtl-2.2.2","pem-0.2.4-eda3dbfc35b19c65ea0afffa8315eb66d81c83843e886f31a3cc42d21982366e","process-1.6.9.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"crypton-x509-validation-1.6.12-8563538d4464e839104fb8f19ab0060f93c039094d428acb81fbde3ee6a58615","pkg-name":"crypton-x509-validation","pkg-version":"1.6.12","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"85989721b64be4b90de9f66ef641c26f57575cffed1a50d707065fb60176f386","pkg-src-sha256":"0e60b7e237a4fd5e7e6e7200018c7947314292ef63751cbb51877836ebe650f6","depends":["asn1-encoding-0.9.6-9737c6373a072fdcb92d456cfadd4c477cf570f0a157978745098b1031edbf51","asn1-types-0.3.4-dc110a1c3709c68690b77c4300ebd58772f10fbdc3690f5979e6e96c4920e449","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","crypton-0.34-fb07506627da2c273f59a4bd61955008ef5f039d8af79e5b5ba334354a111459","crypton-x509-1.7.6-36a36d780adbe0a78c25fb814c2b6d8233681262accfc66bed3da43a6c50043f","crypton-x509-store-1.6.9-7308248aeeb5b9cc5f7493b3931b66e3ac5e1cafb345fe13b8efbbeadc6d8eb9","data-default-class-0.1.2.0-e0e6e76a5af94e8463d816cf6b7df21b2bb88e9405c6546da0bbb505eef42066","hourglass-0.2.12-0031b0f27c5a75e0cf0915191a4f622175f30ef890265cf74d32578007bd1b50","memory-0.18.0-f6391a1a28aa85060df171f56b9a7cbe37e466f964211653b6ca73691e7038a2","mtl-2.2.2","pem-0.2.4-eda3dbfc35b19c65ea0afffa8315eb66d81c83843e886f31a3cc42d21982366e"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"data-array-byte-0.1.0.1-70fb1b01e9981e5e2a6fc083ac3ec103c4d097fcf0f6d64bd0044ae9a45e3f2f","pkg-name":"data-array-byte","pkg-version":"0.1.0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ad89e28b2b046175698fbf542af2ce43e5d2af50aae9f48d12566b1bb3de1d3c","pkg-src-sha256":"1bb6eca0b3e02d057fe7f4e14c81ef395216f421ab30fdaa1b18017c9c025600","depends":["base-4.13.0.0","deepseq-1.4.4.0","template-haskell-2.15.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"data-default-class-0.1.2.0-e0e6e76a5af94e8463d816cf6b7df21b2bb88e9405c6546da0bbb505eef42066","pkg-name":"data-default-class","pkg-version":"0.1.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"63e62120b7efd733a5a17cf59ceb43268e9a929c748127172d7d42f4a336e327","pkg-src-sha256":"4f01b423f000c3e069aaf52a348564a6536797f31498bb85c3db4bd2d0973e56","components":{"lib":{"depends":["base-4.13.0.0"],"exe-depends":[]}}},{"type":"configured","id":"data-fix-0.3.2-5c64e395be6142ce9a51a73aeaa3af0000d2c04e877aca2072bca21d004965d9","pkg-name":"data-fix","pkg-version":"0.3.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"cd7d6ff8b68aca3b51d8116870fc8ccdbc557989562cd3d5c941e4f0b7bc5af1","pkg-src-sha256":"3a172d3bc0639c327345e965f9d9023e099425814b28dcdb7b60ff66d66219cc","depends":["base-4.13.0.0","deepseq-1.4.4.0","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"deepseq-1.4.4.0","pkg-name":"deepseq","pkg-version":"1.4.4.0","depends":["array-0.5.4.0","base-4.13.0.0"]},{"type":"pre-existing","id":"directory-1.3.6.0","pkg-name":"directory","pkg-version":"1.3.6.0","depends":["base-4.13.0.0","filepath-1.4.2.1","time-1.9.3","unix-2.7.2.2"]},{"type":"configured","id":"distributive-0.6.2.1-2cd9af897eff078b02f95a54f88c620cbb2c1d802551171f9ac357ef5e4e9c59","pkg-name":"distributive","pkg-version":"0.6.2.1","flags":{"semigroups":true,"tagged":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"0f99f5541cca04acf89b64432b03422b6408e830a8dff30e6c4334ef1a48680c","pkg-src-sha256":"d7351392e078f58caa46630a4b9c643e1e2e9dddee45848c5c8358e7b1316b91","depends":["base-4.13.0.0","base-orphans-0.9.1-56ca1e3dbc0e2280fff3cf08f4a5940551f0370e7a640301f30845ce149d439a","tagged-0.8.8-c0cf362176cbe235f6a6bc8e85db8dd03527d0db77dae5d8258bfcfe6708b399","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"dlist-1.0-d6b5d855d0bcae1a5528c078bd76caecbcfc92fe5e5745f635e6b06cbeb4967c","pkg-name":"dlist","pkg-version":"1.0","flags":{"werror":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"55ff69d20ce638fc7727342ee67f2f868da61d3dcf3763f790bf9aa0b145e568","pkg-src-sha256":"173d637328bb173fcc365f30d29ff4a94292a1e0e5558aeb3dfc11de81510115","depends":["base-4.13.0.0","deepseq-1.4.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"exceptions-0.10.7-acc5434b8d272e05e22188d836b523492f4323757566f18c445890d7bff3590f","pkg-name":"exceptions","pkg-version":"0.10.7","flags":{"transformers-0-4":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"a85a0fc00c7eb309f7f8fef84f8c8d915d16b416b9dbfa803b5718a9960aff93","pkg-src-sha256":"9a42ade4c8b53d8da5350e8e0e2929f4ef128c4b8591b120656455310b546049","depends":["base-4.13.0.0","mtl-2.2.2","stm-2.5.0.0","template-haskell-2.15.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"filepath-1.4.2.1","pkg-name":"filepath","pkg-version":"1.4.2.1","depends":["base-4.13.0.0"]},{"type":"configured","id":"foldable1-classes-compat-0.1-2f7b66e687f346da2659c0349bfe221621f79f032d0a67c1a75ee3f26fa86fc6","pkg-name":"foldable1-classes-compat","pkg-version":"0.1","flags":{"tagged":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fb4b3cedd33d5c22c573c39baa930c78eaa4feb22d43abb680c3149f8ab9fa4e","pkg-src-sha256":"d057c3f358e1a6b72c73519bc64ba6aa959f066c08fed69f73258555ef95ff12","depends":["base-4.13.0.0","containers-0.6.2.1","tagged-0.8.8-c0cf362176cbe235f6a6bc8e85db8dd03527d0db77dae5d8258bfcfe6708b399","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"generically-0.1.1-442bc4370b58aa39493d462d9b645b50caff14d9e4917d547416fd5db4010efc","pkg-name":"generically","pkg-version":"0.1.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"378ec049bc2853b8011df116647fbd34bb9f00edce9840e4957f98abc097597c","pkg-src-sha256":"04c5a436bec4b041f71a733f56a1bd7f435f63dde8d3eb5c1f48d55b4dbc43cf","depends":["base-4.13.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"ghc-boot-th-8.8.4","pkg-name":"ghc-boot-th","pkg-version":"8.8.4","depends":["base-4.13.0.0"]},{"type":"pre-existing","id":"ghc-prim-0.5.3","pkg-name":"ghc-prim","pkg-version":"0.5.3","depends":["rts"]},{"type":"configured","id":"half-0.3.1-d20d68f926198ab6c08aef703400eff944340c5801c3e98b82a95f453f095068","pkg-name":"half","pkg-version":"0.3.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"f43f16671b42bdc92b4be9e0b0ce1bcff817c928d0a50f13a6264a24586c1a7c","pkg-src-sha256":"e2afc32724e11bf5c695d797b9169d9d9b2dc62a530aed31284c8187af1615d1","depends":["base-4.13.0.0","binary-0.8.7.0","deepseq-1.4.4.0","template-haskell-2.15.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","pkg-name":"hashable","pkg-version":"1.4.3.0","flags":{"integer-gmp":true,"random-initial-seed":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"f3bf68acfa0df7a064a378ef2cdcfeb55e6fb96100675f4c593556dcbf3d7194","pkg-src-sha256":"32efb16c2891786209b7cbe5c39df9b3a9ae51e836f1a54f646bc4602b7ab0f5","depends":["base-4.13.0.0","base-orphans-0.9.1-56ca1e3dbc0e2280fff3cf08f4a5940551f0370e7a640301f30845ce149d439a","bytestring-0.10.10.1","containers-0.6.2.1","data-array-byte-0.1.0.1-70fb1b01e9981e5e2a6fc083ac3ec103c4d097fcf0f6d64bd0044ae9a45e3f2f","deepseq-1.4.4.0","filepath-1.4.2.1","ghc-prim-0.5.3","integer-gmp-1.0.2.0","text-1.2.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hourglass-0.2.12-0031b0f27c5a75e0cf0915191a4f622175f30ef890265cf74d32578007bd1b50","pkg-name":"hourglass","pkg-version":"0.2.12","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"e083f5e030dfebe432e30a9c0fa07a99a54eac992f622442646be561fd7a44e8","pkg-src-sha256":"44335b5c402e80c60f1db6a74462be4ea29d1a9043aa994334ffee1164f1ca4a","depends":["base-4.13.0.0","deepseq-1.4.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hsc2hs-0.68.10-fc83ef3231cbf7ccb58a3c6cf0b75db24638022e49fabb300dd02dc1bb947ec6","pkg-name":"hsc2hs","pkg-version":"0.68.10","flags":{"in-ghc-tree":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"488cca2a179a5141da8f35a3a7e6699a0ef690f834f589d6b152c4947aa8fe2d","pkg-src-sha256":"6f4e34d788fe2ca7091ee0a10307ee8a7c060a1ba890f2bffad16a7d4d5cef76","depends":["base-4.13.0.0","containers-0.6.2.1","directory-1.3.6.0","filepath-1.4.2.1","process-1.6.9.0"],"exe-depends":[],"component-name":"exe:hsc2hs","bin-file":"/home/omniladder/.cabal/store/ghc-8.8.4/hsc2hs-0.68.10-fc83ef3231cbf7ccb58a3c6cf0b75db24638022e49fabb300dd02dc1bb947ec6/bin/hsc2hs"},{"type":"configured","id":"http-client-0.7.16-519440d7387d4cf1c76ef63515099c7ce9b9cab43403cdb37bf745c4c50126e1","pkg-name":"http-client","pkg-version":"0.7.16","flags":{"network-uri":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"af80ec3d34534d1db1148ef6a54eb87d5364261236ade169ba0603a2e441fb8f","pkg-src-sha256":"3a84ca8f94306084aef3ff5128db231cb6bb7c606fbee16910f8d0df400c6291","depends":["array-0.5.4.0","async-2.2.5-e49351147ee84eca445db4eb7aeecf028bd2db628a1e3fef620924f0e2ba5967","base-4.13.0.0","base64-bytestring-1.2.1.0-0cf4b8b273c4e23586ab1eecc01e5fbd9d12067d68634ff113df996e89264e35","blaze-builder-0.4.2.3-207d70119f5f332023605ad013b47abe83188e822014aba2f9ee78ef6f61e2c7","bytestring-0.10.10.1","case-insensitive-1.2.1.0-ee8bf29ceac54d1bc82f9116606c99176d1f6bf30c913279cd24a822f5eccd66","containers-0.6.2.1","cookie-0.4.6-71161ce0fc30e99e69e7178647ab91514f628388e5a9132efb0397c05ad97071","deepseq-1.4.4.0","exceptions-0.10.7-acc5434b8d272e05e22188d836b523492f4323757566f18c445890d7bff3590f","filepath-1.4.2.1","ghc-prim-0.5.3","http-types-0.12.4-ab56e348bd30f246b23fb4b49e9ea7a4edfedba0a97c5ebb7bf588460235de82","iproute-1.7.12-e0bd74a88db95470dcd31266c96fb99bbf04785a38bdfc14053b35696e80ca46","mime-types-0.1.2.0-b3f7deb5a6516618c1cb89e4b8138bb78de41561493e3b72bb6d268b054b49a7","network-3.1.4.0-b18fe35ab5d877de49436b608e322e10cbdf13ee0dcffb30bcaa6ea18501285f","network-uri-2.6.4.2-b7aa201ef0bde019977d02eb6d39f0ffa98c0044e1c6a681561b037fdecd7fd1","random-1.2.1.2-d98a4b25178993c5948451c22661810a5585405330c4a04dab3727c9acbfcdbe","stm-2.5.0.0","streaming-commons-0.2.2.6-1fa0ff15dfc683be9d0e20ed1851f9771ec5d56758f85689cb8d3bbedfcac3f9","text-1.2.4.0","time-1.9.3","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"http-client-tls-0.3.6.3-7972992772ac1a38f6dbb3544bed4ba70e30e5b62d838f057cc24c58692c3890","pkg-name":"http-client-tls","pkg-version":"0.3.6.3","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"a5909ce412ee65c141b8547f8fe22236f175186c95c708e86a46b5547394f910","pkg-src-sha256":"38dcfc3d772eb6898b4a8856d6159824d13f65eb291733619f625a802dad9095","depends":["base-4.13.0.0","bytestring-0.10.10.1","case-insensitive-1.2.1.0-ee8bf29ceac54d1bc82f9116606c99176d1f6bf30c913279cd24a822f5eccd66","containers-0.6.2.1","crypton-0.34-fb07506627da2c273f59a4bd61955008ef5f039d8af79e5b5ba334354a111459","crypton-connection-0.3.2-c1bd9040a90e065267f8f4cfe349d327d010e9e170cd5a34fd5109addfe861b4","data-default-class-0.1.2.0-e0e6e76a5af94e8463d816cf6b7df21b2bb88e9405c6546da0bbb505eef42066","exceptions-0.10.7-acc5434b8d272e05e22188d836b523492f4323757566f18c445890d7bff3590f","http-client-0.7.16-519440d7387d4cf1c76ef63515099c7ce9b9cab43403cdb37bf745c4c50126e1","http-types-0.12.4-ab56e348bd30f246b23fb4b49e9ea7a4edfedba0a97c5ebb7bf588460235de82","memory-0.18.0-f6391a1a28aa85060df171f56b9a7cbe37e466f964211653b6ca73691e7038a2","network-3.1.4.0-b18fe35ab5d877de49436b608e322e10cbdf13ee0dcffb30bcaa6ea18501285f","network-uri-2.6.4.2-b7aa201ef0bde019977d02eb6d39f0ffa98c0044e1c6a681561b037fdecd7fd1","text-1.2.4.0","tls-2.0.1-a35b676e2e1bc9b7c328413a8e863a7382c021ed706630c342bd262f8b874845","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"http-conduit-2.3.8.3-6894a3116f4b67d27136da1ec2bd13e8e647905c9fd71415e35de83addee30a3","pkg-name":"http-conduit","pkg-version":"2.3.8.3","flags":{"aeson":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"82f7d4d5d1d4d9bf99c008ee91c221952560096161c77577fa941e799d3d3677","pkg-src-sha256":"6a5109528a2d2a795bac6a7de9486436a7f09d2d3b8949af11b5372bd9ddd7f4","depends":["aeson-2.2.1.0-b9ff8dd69f03804a7b2dec418739dc4b032bf0e8fe7e1ccb1f21764e1bc3f72e","attoparsec-0.14.4-98d0a18a5dbedc2c56323c1a3b1524aeeaef9ca0c9bf4203b3cb9bbeb627cc0b","attoparsec-aeson-2.2.0.1-fa2fa583fdc9d2c7b52e4c755121cb0f9b376d818dd7919a8bb3c51e6d40316b","base-4.13.0.0","bytestring-0.10.10.1","conduit-1.3.5-01896a355221c9ed406826ce1b30c6d3449a4710d6c8c4d043084472a102dc67","conduit-extra-1.3.6-242f1ada81f430d049a4958886a1ca791cd0b564538b23ee3e0f6ecf3b945408","http-client-0.7.16-519440d7387d4cf1c76ef63515099c7ce9b9cab43403cdb37bf745c4c50126e1","http-client-tls-0.3.6.3-7972992772ac1a38f6dbb3544bed4ba70e30e5b62d838f057cc24c58692c3890","http-types-0.12.4-ab56e348bd30f246b23fb4b49e9ea7a4edfedba0a97c5ebb7bf588460235de82","mtl-2.2.2","resourcet-1.3.0-b7ac7e50f2c7802f4501bf146eabbbcb5debfd4cda2375088ae383accbbff0b4","transformers-0.5.6.2","unliftio-core-0.2.1.0-8a5c15a1d4bbea0648ac5b64f58669b5eea7216336fa9377c9cf0ed620ffa865"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"http-types-0.12.4-ab56e348bd30f246b23fb4b49e9ea7a4edfedba0a97c5ebb7bf588460235de82","pkg-name":"http-types","pkg-version":"0.12.4","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"c8bdda528c9d74dea90effb30958fdacdb09b116c61a63b6f1b233ffea72b776","pkg-src-sha256":"4d4b1bb0cc817e5fef0c9c76c9647f69f4d300c45a105043493eff86381be549","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","case-insensitive-1.2.1.0-ee8bf29ceac54d1bc82f9116606c99176d1f6bf30c913279cd24a822f5eccd66","text-1.2.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"indexed-traversable-0.1.3-be9b51185cfea55fd60ee0255319581c83522c9070d7b6843ceae51a5b83e16d","pkg-name":"indexed-traversable","pkg-version":"0.1.3","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"911f96592752ce4ffbeda00b1155dbbfac5135c71d6755ae02c00552819a9b17","pkg-src-sha256":"1d32925fb6f78e3a52a849b29fc4360df51c97be95ba8ac642517d3ff01a53d9","depends":["array-0.5.4.0","base-4.13.0.0","containers-0.6.2.1","foldable1-classes-compat-0.1-2f7b66e687f346da2659c0349bfe221621f79f032d0a67c1a75ee3f26fa86fc6","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"indexed-traversable-instances-0.1.1.2-778ffa7f49ccebad29e67bb0a83ce1b0e2f1e1e805f337d5f8a382e23d0b9a80","pkg-name":"indexed-traversable-instances","pkg-version":"0.1.1.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"00d5e3e149e2bee0f7a547e0093294c306d4276e73a619abe7d8e69f7ce03c7b","pkg-src-sha256":"0f9b4e895ccc819f74d15f913c93613cc74cab74dbb05d7e305aa387bdbe374a","depends":["OneTuple-0.4.1.1-062ef8fcf0b088fc58aab3eb2fb1640aa398054b97928152ed4bc753b4233c66","base-4.13.0.0","indexed-traversable-0.1.3-be9b51185cfea55fd60ee0255319581c83522c9070d7b6843ceae51a5b83e16d","tagged-0.8.8-c0cf362176cbe235f6a6bc8e85db8dd03527d0db77dae5d8258bfcfe6708b399","unordered-containers-0.2.20-f3adff0a602ce91ec452a3a72d4873f871ea073fa5e3d8a56b14c1f60135a744","vector-0.13.1.0-28fb51390d8b219fc5bb674efb0d594f69f7c487d91d4eccc242cf07a19ec827"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"integer-conversion-0.1.0.1-ceec80999e892262c9d8e6925fb03ff4a90a7601a1a810e1c95b1c4189f0b494","pkg-name":"integer-conversion","pkg-version":"0.1.0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"0e57a82635323f015b5d6c242bcfbbeeaa9854fe9c8058e57052254dbb24bb14","pkg-src-sha256":"20ac70cf1cb65458bba2c562c209a8930e45bdb89886182d644d0a457fc46f39","depends":["base-4.13.0.0","bytestring-0.10.10.1","primitive-0.9.0.0-baad4b35d4494996ef61d7b848afe16a1ebda4d830b73dc79dcbd8eed653fbe5","text-1.2.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"integer-gmp-1.0.2.0","pkg-name":"integer-gmp","pkg-version":"1.0.2.0","depends":["ghc-prim-0.5.3"]},{"type":"configured","id":"integer-logarithms-1.0.3.1-4fcea6311b5391f66e0760cd655dea16884eaa624e4b0f656776039c5a1a91ea","pkg-name":"integer-logarithms","pkg-version":"1.0.3.1","flags":{"check-bounds":false,"integer-gmp":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4d0dfc334e64ff57bb1a08717afa4a4a7f28e4cdc46615dd287be31ef63ec00d","pkg-src-sha256":"9b0a9f9fab609b15cd015865721fb05f744a1bc77ae92fd133872de528bbea7f","depends":["array-0.5.4.0","base-4.13.0.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"iproute-1.7.12-e0bd74a88db95470dcd31266c96fb99bbf04785a38bdfc14053b35696e80ca46","pkg-name":"iproute","pkg-version":"1.7.12","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"85d181599fab8ceebf4c849110ad571bea2834d6c8c95ae7da33856c42453f40","pkg-src-sha256":"f1751d1579fcbc1d9f86d9d1c9ede48cb71cbeb1d7b2043491c6216e4f236b63","depends":["appar-0.1.8-fd65dba0553d6bfd48d1bfc7a6cbd2adbd9f4619a11b57d0784bd277e3d8ccc8","base-4.13.0.0","byteorder-1.0.4-b4a734f16192d9f59ec79a8accc8a0a2a2388acc2ca0c203247164029f74c4a9","bytestring-0.10.10.1","containers-0.6.2.1","network-3.1.4.0-b18fe35ab5d877de49436b608e322e10cbdf13ee0dcffb30bcaa6ea18501285f"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"memory-0.18.0-f6391a1a28aa85060df171f56b9a7cbe37e466f964211653b6ca73691e7038a2","pkg-name":"memory","pkg-version":"0.18.0","flags":{"support_bytestring":true,"support_deepseq":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"e12bde756b01c1a28c62e46f0f8433c4890898051a786794a7d88907ca14abca","pkg-src-sha256":"fd4eb6f638e24b81b4e6cdd68772a531726f2f67686c8969d3407d82f7862e3e","depends":["base-4.13.0.0","basement-0.0.14-1313c9046e0b8fcd372818cd04d928d89a48947863137aff7f274315f237b71d","bytestring-0.10.10.1","deepseq-1.4.4.0","ghc-prim-0.5.3"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"mime-types-0.1.2.0-b3f7deb5a6516618c1cb89e4b8138bb78de41561493e3b72bb6d268b054b49a7","pkg-name":"mime-types","pkg-version":"0.1.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"3ddd330c16da943651db37e237d44dc0593ef9b1a63d39e98a48811644615bf6","pkg-src-sha256":"013ae48a4c1726a4f91a64e882f3fe1fb903a7d4b8c14da51286fe5e4b974f61","depends":["base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","text-1.2.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"mono-traversable-1.0.17.0-85a767ade23ad9e97464866d4d70bd00c4fafbc004a28964f76d13f3d961f00b","pkg-name":"mono-traversable","pkg-version":"1.0.17.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"f62b52e93bb9ed1b9ff4e026993c18eed08ec202bc4d30aa7245279ac81c4174","pkg-src-sha256":"25d8f9b860bc6335d3d213f3392ab58d4041e28127874ea18525412f184cd32f","depends":["base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","split-0.2.5-3248f0208076d2d75660077cea4a0e68629f20a1534792bb39ef632220d13053","text-1.2.4.0","transformers-0.5.6.2","unordered-containers-0.2.20-f3adff0a602ce91ec452a3a72d4873f871ea073fa5e3d8a56b14c1f60135a744","vector-0.13.1.0-28fb51390d8b219fc5bb674efb0d594f69f7c487d91d4eccc242cf07a19ec827","vector-algorithms-0.9.0.1-9b3fb607988bc5e556960e5dc7c5796d5a172eefcbddb772cbeb8e0c95a70890"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"mtl-2.2.2","pkg-name":"mtl","pkg-version":"2.2.2","depends":["base-4.13.0.0","transformers-0.5.6.2"]},{"type":"configured","id":"network-3.1.4.0-b18fe35ab5d877de49436b608e322e10cbdf13ee0dcffb30bcaa6ea18501285f","pkg-name":"network","pkg-version":"3.1.4.0","flags":{"devel":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"e152cdb03243afb52bbc740cfbe96905ca298a6f6342f0c47b3f2e227ff19def","pkg-src-sha256":"b452a2afac95d9207357eb3820c719c7c7d27871ef4b6ed7bfcd03a036b9158e","components":{"lib":{"depends":["base-4.13.0.0","bytestring-0.10.10.1","deepseq-1.4.4.0","directory-1.3.6.0"],"exe-depends":["hsc2hs-0.68.10-fc83ef3231cbf7ccb58a3c6cf0b75db24638022e49fabb300dd02dc1bb947ec6"]}}},{"type":"configured","id":"network-uri-2.6.4.2-b7aa201ef0bde019977d02eb6d39f0ffa98c0044e1c6a681561b037fdecd7fd1","pkg-name":"network-uri","pkg-version":"2.6.4.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"6fffb57373962b5651a2db8b0af732098b3bf029a7ced76a9855615de2026588","pkg-src-sha256":"9c188973126e893250b881f20e8811dca06c223c23402b06f7a1f2e995797228","depends":["base-4.13.0.0","deepseq-1.4.4.0","parsec-3.1.14.0","template-haskell-2.15.0.0","th-compat-0.1.4-aabe1f3486ea8330e701619825ac911a853b3a222121fa4613c34b7c7a5e2348"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"old-locale-1.0.0.7-1d06fc09a1e3723863b43ca5c18bdb587dee8726118e0cc13b6dce625d48fcc4","pkg-name":"old-locale","pkg-version":"1.0.0.7","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fa998be2c7e00cd26a6e9075bea790caaf3932caa3e9497ad69bc20380dd6911","pkg-src-sha256":"dbaf8bf6b888fb98845705079296a23c3f40ee2f449df7312f7f7f1de18d7b50","depends":["base-4.13.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"old-time-1.1.0.4-459923c5d3141949856453efe68786d37f878d01a121fbc87dd97709db4ac32f","pkg-name":"old-time","pkg-version":"1.1.0.4","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"6e3dfb5b1d7cb24ed7ea9bbca1153485ae38fa0534b0581886dd42eeedf82447","pkg-src-sha256":"1e22eb7f7b924a676f52e317917b3b5eeceee11c74ef4bc609c0bcec624c166f","components":{"lib":{"depends":["base-4.13.0.0","old-locale-1.0.0.7-1d06fc09a1e3723863b43ca5c18bdb587dee8726118e0cc13b6dce625d48fcc4"],"exe-depends":["hsc2hs-0.68.10-fc83ef3231cbf7ccb58a3c6cf0b75db24638022e49fabb300dd02dc1bb947ec6"]}}},{"type":"pre-existing","id":"parsec-3.1.14.0","pkg-name":"parsec","pkg-version":"3.1.14.0","depends":["base-4.13.0.0","bytestring-0.10.10.1","mtl-2.2.2","text-1.2.4.0"]},{"type":"configured","id":"pem-0.2.4-eda3dbfc35b19c65ea0afffa8315eb66d81c83843e886f31a3cc42d21982366e","pkg-name":"pem","pkg-version":"0.2.4","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"cc8e62118b783e284dc0fa032f54fe386a3861a948ec88079370a433c103a705","pkg-src-sha256":"770c4c1b9cd24b3db7f511f8a48404a0d098999e28573c3743a8a296bb96f8d4","depends":["base-4.13.0.0","basement-0.0.14-1313c9046e0b8fcd372818cd04d928d89a48947863137aff7f274315f237b71d","bytestring-0.10.10.1","memory-0.18.0-f6391a1a28aa85060df171f56b9a7cbe37e466f964211653b6ca73691e7038a2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"pretty-1.1.3.6","pkg-name":"pretty","pkg-version":"1.1.3.6","depends":["base-4.13.0.0","deepseq-1.4.4.0","ghc-prim-0.5.3"]},{"type":"configured","id":"primitive-0.9.0.0-baad4b35d4494996ef61d7b848afe16a1ebda4d830b73dc79dcbd8eed653fbe5","pkg-name":"primitive","pkg-version":"0.9.0.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"1ceb39f67c0e614180f2992a6d30f26603ab2cd23c4f8e25b30213f98807f6f1","pkg-src-sha256":"696d4bd291c94d736142d6182117dca4258d3ef28bfefdb649ac8b5ecd0999c7","depends":["base-4.13.0.0","data-array-byte-0.1.0.1-70fb1b01e9981e5e2a6fc083ac3ec103c4d097fcf0f6d64bd0044ae9a45e3f2f","deepseq-1.4.4.0","template-haskell-2.15.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"process-1.6.9.0","pkg-name":"process","pkg-version":"1.6.9.0","depends":["base-4.13.0.0","deepseq-1.4.4.0","directory-1.3.6.0","filepath-1.4.2.1","unix-2.7.2.2"]},{"type":"configured","id":"random-1.2.1.2-d98a4b25178993c5948451c22661810a5585405330c4a04dab3727c9acbfcdbe","pkg-name":"random","pkg-version":"1.2.1.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"32397de181e20ccaacf806ec70de9308cf044f089a2be37c936f3f8967bde867","pkg-src-sha256":"790f4dc2d2327c453ff6aac7bf15399fd123d55e927935f68f84b5df42d9a4b4","depends":["base-4.13.0.0","bytestring-0.10.10.1","deepseq-1.4.4.0","mtl-2.2.2","splitmix-0.1.0.5-8aea1e61a097d40a3a1d96c9610c265a175c0338d65421fd84b477fa17f68452"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"resourcet-1.3.0-b7ac7e50f2c7802f4501bf146eabbbcb5debfd4cda2375088ae383accbbff0b4","pkg-name":"resourcet","pkg-version":"1.3.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"faa760fb28fb5c98fbe4867e375a775495cabc00926da81fa102dc991017d2c5","pkg-src-sha256":"ec601785ee42a201f32adb205b8685c983f18757b1bd33d2e806d571e0f9996b","depends":["base-4.13.0.0","containers-0.6.2.1","exceptions-0.10.7-acc5434b8d272e05e22188d836b523492f4323757566f18c445890d7bff3590f","mtl-2.2.2","primitive-0.9.0.0-baad4b35d4494996ef61d7b848afe16a1ebda4d830b73dc79dcbd8eed653fbe5","transformers-0.5.6.2","unliftio-core-0.2.1.0-8a5c15a1d4bbea0648ac5b64f58669b5eea7216336fa9377c9cf0ed620ffa865"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"rts","pkg-name":"rts","pkg-version":"1.0","depends":[]},{"type":"configured","id":"scientific-0.3.7.0-23b13f7b47110bbc9f75f907fab4d1e14b3ce16e5f89b8629f4ef6b17e512b12","pkg-name":"scientific","pkg-version":"0.3.7.0","flags":{"bytestring-builder":false,"integer-simple":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"909755ab19b453169ff85281323da1488407776b2360bd9f7afdd219fd306ef2","pkg-src-sha256":"a3a121c4b3d68fb8b9f8c709ab012e48f090ed553609247a805ad070d6b343a9","depends":["base-4.13.0.0","binary-0.8.7.0","bytestring-0.10.10.1","containers-0.6.2.1","deepseq-1.4.4.0","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","integer-gmp-1.0.2.0","integer-logarithms-1.0.3.1-4fcea6311b5391f66e0760cd655dea16884eaa624e4b0f656776039c5a1a91ea","primitive-0.9.0.0-baad4b35d4494996ef61d7b848afe16a1ebda4d830b73dc79dcbd8eed653fbe5","template-haskell-2.15.0.0","text-1.2.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"semialign-1.3-11f49537478f588060073cd3d4d8b702ce5b889c4fbf44072f27e0e2e04e7b9f","pkg-name":"semialign","pkg-version":"1.3","flags":{"semigroupoids":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"7be9ef5ca1d6b052991f68c053aab68b9d1ab3b1938c9557ac84c97937815223","pkg-src-sha256":"628e43319f584a8dd46c124ee0685cac586e0f6f877c5ceff37c3dbb2e3cc56c","depends":["base-4.13.0.0","containers-0.6.2.1","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","indexed-traversable-0.1.3-be9b51185cfea55fd60ee0255319581c83522c9070d7b6843ceae51a5b83e16d","indexed-traversable-instances-0.1.1.2-778ffa7f49ccebad29e67bb0a83ce1b0e2f1e1e805f337d5f8a382e23d0b9a80","semigroupoids-6.0.0.1-13b8120088ad00ee87289109e45dfe32a37a4b332e7790df50722f357ff9bf72","tagged-0.8.8-c0cf362176cbe235f6a6bc8e85db8dd03527d0db77dae5d8258bfcfe6708b399","these-1.2-c0b774f859d20ba7e61417d3ad8622e56f0b3ef393dd846e8cb6e84f9d1c34ce","transformers-0.5.6.2","unordered-containers-0.2.20-f3adff0a602ce91ec452a3a72d4873f871ea073fa5e3d8a56b14c1f60135a744","vector-0.13.1.0-28fb51390d8b219fc5bb674efb0d594f69f7c487d91d4eccc242cf07a19ec827"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"semigroupoids-6.0.0.1-13b8120088ad00ee87289109e45dfe32a37a4b332e7790df50722f357ff9bf72","pkg-name":"semigroupoids","pkg-version":"6.0.0.1","flags":{"comonad":true,"containers":true,"contravariant":true,"distributive":true,"tagged":true,"unordered-containers":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"47a23b451c114e65361e713e8fe36828fca3a84285325e8f444254b2ab0c43c5","pkg-src-sha256":"7da38a9891bdf8205fd6522cdb712956b8c0bf5c52983da60295c8e057d77934","depends":["base-4.13.0.0","base-orphans-0.9.1-56ca1e3dbc0e2280fff3cf08f4a5940551f0370e7a640301f30845ce149d439a","bifunctors-5.6.1-112aa0060ff230f001f94d926fc57bd88fead80e192b3e98aff5c0f8f1fbefee","comonad-5.0.8-55531f4d5e6e24653ca58602f4fbbb9c7d3cc5be13fdfa75496787cc6a48d8ca","containers-0.6.2.1","contravariant-1.5.5-a9f2edf6313473bb5f7c87a8d9545c51e0f5c1787ea106e3d8441f1ba179cbf0","distributive-0.6.2.1-2cd9af897eff078b02f95a54f88c620cbb2c1d802551171f9ac357ef5e4e9c59","foldable1-classes-compat-0.1-2f7b66e687f346da2659c0349bfe221621f79f032d0a67c1a75ee3f26fa86fc6","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","tagged-0.8.8-c0cf362176cbe235f6a6bc8e85db8dd03527d0db77dae5d8258bfcfe6708b399","template-haskell-2.15.0.0","transformers-0.5.6.2","transformers-compat-0.7.2-30c9f914024932446711753f3ec03d44aac1f949015742d2756364cbdac929bd","unordered-containers-0.2.20-f3adff0a602ce91ec452a3a72d4873f871ea073fa5e3d8a56b14c1f60135a744"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"serialise-0.2.6.1-1eaf6d3bd8f9d21092466d78088867e7a3fb3988b42a4d8021be9f81c45258e4","pkg-name":"serialise","pkg-version":"0.2.6.1","flags":{"newtime15":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"48e55f150c7e3bac9003adeb49fcd4573814780c374c494a46ffccc2b2043df8","pkg-src-sha256":"63949799ffd10675ef70ea701c1eb63e618629b3b2f7b25f07c5a966e24e77f4","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","cborg-0.2.10.0-249e056964d327ae111c0136d80ff2fa07bc0682c1e68b8ae8ec74f8f8f6002e","containers-0.6.2.1","ghc-prim-0.5.3","half-0.3.1-d20d68f926198ab6c08aef703400eff944340c5801c3e98b82a95f453f095068","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","primitive-0.9.0.0-baad4b35d4494996ef61d7b848afe16a1ebda4d830b73dc79dcbd8eed653fbe5","strict-0.5-0fb55dca8050eadf70e1e9d03f441ee3de1de8b0c0bb70239c676055702a1de4","text-1.2.4.0","these-1.2-c0b774f859d20ba7e61417d3ad8622e56f0b3ef393dd846e8cb6e84f9d1c34ce","time-1.9.3","unordered-containers-0.2.20-f3adff0a602ce91ec452a3a72d4873f871ea073fa5e3d8a56b14c1f60135a744","vector-0.13.1.0-28fb51390d8b219fc5bb674efb0d594f69f7c487d91d4eccc242cf07a19ec827"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"socks-0.6.1-d39c15e3b1fa81da851339fc924c5622e520920240719ff3d8c67fb920af43b7","pkg-name":"socks","pkg-version":"0.6.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ac190808eea704672df18f702e8f2ad0b7a4d0af528e95ee55ea6ee0be672e2a","pkg-src-sha256":"734447558bb061ce768f53a0df1f2401902c6bee396cc96ce627edd986ef6a73","depends":["base-4.13.0.0","basement-0.0.14-1313c9046e0b8fcd372818cd04d928d89a48947863137aff7f274315f237b71d","bytestring-0.10.10.1","cereal-0.5.8.3-8c7e84cad332a27a3c5fe528a005344d4c2a04c40719534d7efd1ba5663a5234","network-3.1.4.0-b18fe35ab5d877de49436b608e322e10cbdf13ee0dcffb30bcaa6ea18501285f"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"split-0.2.5-3248f0208076d2d75660077cea4a0e68629f20a1534792bb39ef632220d13053","pkg-name":"split","pkg-version":"0.2.5","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"5bc1ae848bfded3087ea3e568908f1b75f56ecde6f02df3fad1a138dd5c783d5","pkg-src-sha256":"52da404e8397c1ab238354c8d4fd9a7e9c5cac8849cc2ce2e45facc85e74a913","depends":["base-4.13.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"splitmix-0.1.0.5-8aea1e61a097d40a3a1d96c9610c265a175c0338d65421fd84b477fa17f68452","pkg-name":"splitmix","pkg-version":"0.1.0.5","flags":{"optimised-mixer":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"bac0ae8d46a04e410666b0c8081cff63f060f29157983b569ca86ddb6e6e0dc6","pkg-src-sha256":"9df07a9611ef45f1b1258a0b412f4d02c920248f69d2e2ce8ccda328f7e13002","depends":["base-4.13.0.0","deepseq-1.4.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"stm-2.5.0.0","pkg-name":"stm","pkg-version":"2.5.0.0","depends":["array-0.5.4.0","base-4.13.0.0"]},{"type":"configured","id":"streaming-commons-0.2.2.6-1fa0ff15dfc683be9d0e20ed1851f9771ec5d56758f85689cb8d3bbedfcac3f9","pkg-name":"streaming-commons","pkg-version":"0.2.2.6","flags":{"use-bytestring-builder":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"d5c6fb99efd4e71bdb0351d55f2d87e16c11880f42998e39363eb63f057ae24b","pkg-src-sha256":"0180958a882eb0f6262b812fe886c2b1b8285474b5b958f814ae4f05409fbf79","depends":["array-0.5.4.0","async-2.2.5-e49351147ee84eca445db4eb7aeecf028bd2db628a1e3fef620924f0e2ba5967","base-4.13.0.0","bytestring-0.10.10.1","directory-1.3.6.0","network-3.1.4.0-b18fe35ab5d877de49436b608e322e10cbdf13ee0dcffb30bcaa6ea18501285f","process-1.6.9.0","random-1.2.1.2-d98a4b25178993c5948451c22661810a5585405330c4a04dab3727c9acbfcdbe","stm-2.5.0.0","text-1.2.4.0","transformers-0.5.6.2","unix-2.7.2.2","zlib-0.7.0.0-45229b692ea597cdf6249b577fd47e17e99c71ead080dce5e993bf4b815027e7"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"strict-0.5-0fb55dca8050eadf70e1e9d03f441ee3de1de8b0c0bb70239c676055702a1de4","pkg-name":"strict","pkg-version":"0.5","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"bd57d7b3655951dfaa7d1e1374d7352dfe83f82a9c98309bf3a6587ef8cbd87d","pkg-src-sha256":"3f4f0995dec2d520d0e321542f71412dac023658fdab603db04364d75269a0fd","depends":["assoc-1.1-399066d8c3dc6eb3028e6c403ebbf32d6d83c2ce60866c945a5f6aacc7848f5c","base-4.13.0.0","binary-0.8.7.0","bytestring-0.10.10.1","deepseq-1.4.4.0","ghc-prim-0.5.3","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","text-1.2.4.0","these-1.2-c0b774f859d20ba7e61417d3ad8622e56f0b3ef393dd846e8cb6e84f9d1c34ce","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"tagged-0.8.8-c0cf362176cbe235f6a6bc8e85db8dd03527d0db77dae5d8258bfcfe6708b399","pkg-name":"tagged","pkg-version":"0.8.8","flags":{"deepseq":true,"transformers":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"c4fdbd3e1c423af0ccf8eb9e9962620106c34e32ed8e0cc647fb06899a703e04","pkg-src-sha256":"a083fa7835516203c168433a1c8dfc0290a94b05fedab566ad0640fc9137a6a7","depends":["base-4.13.0.0","deepseq-1.4.4.0","template-haskell-2.15.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"template-haskell-2.15.0.0","pkg-name":"template-haskell","pkg-version":"2.15.0.0","depends":["base-4.13.0.0","ghc-boot-th-8.8.4","pretty-1.1.3.6"]},{"type":"pre-existing","id":"text-1.2.4.0","pkg-name":"text","pkg-version":"1.2.4.0","depends":["array-0.5.4.0","base-4.13.0.0","binary-0.8.7.0","bytestring-0.10.10.1","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0","template-haskell-2.15.0.0"]},{"type":"configured","id":"text-iso8601-0.1-950d8e92a5aa1e81565e8a2d95c7349d19905799229b411a5858a34a7b8ef823","pkg-name":"text-iso8601","pkg-version":"0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ac86f2500ca751db3c0de029dd7e7826bef7366d59dc0085b00fc695c43b9f76","pkg-src-sha256":"f58e7a46f951f1f13d2929e0a2f84f6db7894d55a641169aaf300aea9ada5fcf","depends":["base-4.13.0.0","integer-conversion-0.1.0.1-ceec80999e892262c9d8e6925fb03ff4a90a7601a1a810e1c95b1c4189f0b494","text-1.2.4.0","time-1.9.3","time-compat-1.9.6.1-ce87982448202c6caaa9fa6625ad6e1c00f0005e65863379bd74ab6d59338ea7"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"text-short-0.1.5-aa46c8323091468145716339c4088f96fd921428d2547d16b8af1cecbc1999a2","pkg-name":"text-short","pkg-version":"0.1.5","flags":{"asserts":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"9c73c9c9182ca69ee92ce3758f515b1c078cd167d882ccc8c46f92f68c65e190","pkg-src-sha256":"a35ec6cde2ada084c1a050dc5885be5ab01f851b93d744cf0facbc1c18002dda","depends":["base-4.13.0.0","binary-0.8.7.0","bytestring-0.10.10.1","deepseq-1.4.4.0","ghc-prim-0.5.3","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","template-haskell-2.15.0.0","text-1.2.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"th-abstraction-0.6.0.0-d88ad2f9852da9fc47d05e1b0517b56ab3fb3968f474740e177dcbc0b0143277","pkg-name":"th-abstraction","pkg-version":"0.6.0.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"d8959fa6a2812afcdd5f6f255fd6be8b3e0ca01e425586a554544fcb70b0ec7c","pkg-src-sha256":"69ea6eca1f0c00b6e1e1f8329c908ec76e73855e2ce6e91ace2f8bbf92c51a30","depends":["base-4.13.0.0","containers-0.6.2.1","ghc-prim-0.5.3","template-haskell-2.15.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"th-compat-0.1.4-aabe1f3486ea8330e701619825ac911a853b3a222121fa4613c34b7c7a5e2348","pkg-name":"th-compat","pkg-version":"0.1.4","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"f5f2c679ecc1c1b83d2d68db6cc564e5c78d53425e69e1b9e36784820e122d37","pkg-src-sha256":"d8f97ac14ab47b6b8a7b0fdb4ff95426322ec56badd01652ac15da4a44d4bab8","depends":["base-4.13.0.0","directory-1.3.6.0","filepath-1.4.2.1","template-haskell-2.15.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"these-1.2-c0b774f859d20ba7e61417d3ad8622e56f0b3ef393dd846e8cb6e84f9d1c34ce","pkg-name":"these","pkg-version":"1.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"011e22f6891ca028f87c04ea48796696c92d593313a9c699f7ff4f9ffd7aec6e","pkg-src-sha256":"a8ed7174b7f790764360f48aab72fea382a6093ed369c7bc6881fae1abacd4b8","depends":["assoc-1.1-399066d8c3dc6eb3028e6c403ebbf32d6d83c2ce60866c945a5f6aacc7848f5c","base-4.13.0.0","binary-0.8.7.0","deepseq-1.4.4.0","foldable1-classes-compat-0.1-2f7b66e687f346da2659c0349bfe221621f79f032d0a67c1a75ee3f26fa86fc6","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"time-1.9.3","pkg-name":"time","pkg-version":"1.9.3","depends":["base-4.13.0.0","deepseq-1.4.4.0"]},{"type":"configured","id":"time-compat-1.9.6.1-ce87982448202c6caaa9fa6625ad6e1c00f0005e65863379bd74ab6d59338ea7","pkg-name":"time-compat","pkg-version":"1.9.6.1","flags":{"old-locale":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"17631ef01a03a6f55fbe131690f87f6dee9a1572acc99b6c06f04882470ffb52","pkg-src-sha256":"ad07bb00eb9678c2136d3680752b00acc4cbc522654bb3199bf31c61ef1e6b80","depends":["base-4.13.0.0","base-orphans-0.9.1-56ca1e3dbc0e2280fff3cf08f4a5940551f0370e7a640301f30845ce149d439a","deepseq-1.4.4.0","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","time-1.9.3"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"tls-2.0.1-a35b676e2e1bc9b7c328413a8e863a7382c021ed706630c342bd262f8b874845","pkg-name":"tls","pkg-version":"2.0.1","flags":{"devel":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"40518db353aec912074861046f544a5d066fbd820370c9480bfcdb253d9a3f5b","pkg-src-sha256":"98658cb0394a9cd08c56c5fe11a6c96f16c892a2a594db421cd72e0e7f7be684","depends":["asn1-encoding-0.9.6-9737c6373a072fdcb92d456cfadd4c477cf570f0a157978745098b1031edbf51","asn1-types-0.3.4-dc110a1c3709c68690b77c4300ebd58772f10fbdc3690f5979e6e96c4920e449","async-2.2.5-e49351147ee84eca445db4eb7aeecf028bd2db628a1e3fef620924f0e2ba5967","base-4.13.0.0","base16-bytestring-1.0.2.0-ba74bd1460af5acddf128d76ebce0931f349a76f1256b3e712ea6f350f366e1d","bytestring-0.10.10.1","cereal-0.5.8.3-8c7e84cad332a27a3c5fe528a005344d4c2a04c40719534d7efd1ba5663a5234","crypton-0.34-fb07506627da2c273f59a4bd61955008ef5f039d8af79e5b5ba334354a111459","crypton-x509-1.7.6-36a36d780adbe0a78c25fb814c2b6d8233681262accfc66bed3da43a6c50043f","crypton-x509-store-1.6.9-7308248aeeb5b9cc5f7493b3931b66e3ac5e1cafb345fe13b8efbbeadc6d8eb9","crypton-x509-validation-1.6.12-8563538d4464e839104fb8f19ab0060f93c039094d428acb81fbde3ee6a58615","data-default-class-0.1.2.0-e0e6e76a5af94e8463d816cf6b7df21b2bb88e9405c6546da0bbb505eef42066","memory-0.18.0-f6391a1a28aa85060df171f56b9a7cbe37e466f964211653b6ca73691e7038a2","mtl-2.2.2","network-3.1.4.0-b18fe35ab5d877de49436b608e322e10cbdf13ee0dcffb30bcaa6ea18501285f","serialise-0.2.6.1-1eaf6d3bd8f9d21092466d78088867e7a3fb3988b42a4d8021be9f81c45258e4","transformers-0.5.6.2","unix-time-0.4.12-ecb79df858e9b3b6101631c8966a15f911c36ec551b180dedc5ad6db357c2925"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"transformers-0.5.6.2","pkg-name":"transformers","pkg-version":"0.5.6.2","depends":["base-4.13.0.0"]},{"type":"configured","id":"transformers-compat-0.7.2-30c9f914024932446711753f3ec03d44aac1f949015742d2756364cbdac929bd","pkg-name":"transformers-compat","pkg-version":"0.7.2","flags":{"five":false,"five-three":true,"four":false,"generic-deriving":true,"mtl":true,"three":false,"two":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"044fb9955f63ee138fcebedfdcbe54afe741f2d5892a2d0bdf3a8052bd342643","pkg-src-sha256":"b62c7304c9f3cbc9463d0739aa85cb9489f217ea092b9d625d417514fbcc9d6a","depends":["base-4.13.0.0","ghc-prim-0.5.3","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"typed-process-0.2.11.1-28fe21bdcf3c6735a97584e170b3c8131b6d90cae97be660d2ea824a499e8333","pkg-name":"typed-process","pkg-version":"0.2.11.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"79e8555666f27a3e4e67fedf430000631d95c937147190b3f10817daca1874b0","pkg-src-sha256":"d5c5dda091d61bac35de4ed6d9ddb530e4eb2564ca3c0b93e577762b63d94148","depends":["async-2.2.5-e49351147ee84eca445db4eb7aeecf028bd2db628a1e3fef620924f0e2ba5967","base-4.13.0.0","bytestring-0.10.10.1","process-1.6.9.0","stm-2.5.0.0","transformers-0.5.6.2","unliftio-core-0.2.1.0-8a5c15a1d4bbea0648ac5b64f58669b5eea7216336fa9377c9cf0ed620ffa865"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"unix-2.7.2.2","pkg-name":"unix","pkg-version":"2.7.2.2","depends":["base-4.13.0.0","bytestring-0.10.10.1","time-1.9.3"]},{"type":"configured","id":"unix-time-0.4.12-ecb79df858e9b3b6101631c8966a15f911c36ec551b180dedc5ad6db357c2925","pkg-name":"unix-time","pkg-version":"0.4.12","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"97abf524e631f9a6fba975c67b4f34f6ba678986c620e1efcef41ded4af58916","pkg-src-sha256":"50a57298e5cba81e9db2be9f4c24c7e514af96e541a97df05a5ecd411aaf97e2","components":{"lib":{"depends":["base-4.13.0.0","binary-0.8.7.0","bytestring-0.10.10.1","old-time-1.1.0.4-459923c5d3141949856453efe68786d37f878d01a121fbc87dd97709db4ac32f"],"exe-depends":["hsc2hs-0.68.10-fc83ef3231cbf7ccb58a3c6cf0b75db24638022e49fabb300dd02dc1bb947ec6"]}}},{"type":"configured","id":"unliftio-core-0.2.1.0-8a5c15a1d4bbea0648ac5b64f58669b5eea7216336fa9377c9cf0ed620ffa865","pkg-name":"unliftio-core","pkg-version":"0.2.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"28800633b20e0f7bfbdda1248c28022749aa0935aea10b1e3fc9c88cbebb06de","pkg-src-sha256":"99384cba8d56d9d61b85e38a313a93ebcdb78be6566367f0930ef580597fe3e3","depends":["base-4.13.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"unordered-containers-0.2.20-f3adff0a602ce91ec452a3a72d4873f871ea073fa5e3d8a56b14c1f60135a744","pkg-name":"unordered-containers","pkg-version":"0.2.20","flags":{"debug":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"746c32b23f93cb13e52309e54e82d69e4315105f9815b1fcac25a57071505cff","pkg-src-sha256":"d9cfb287cf00592d39dc9c3cac8b99627ea08f2c01798e70130fc39f7c90f11d","depends":["base-4.13.0.0","deepseq-1.4.4.0","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","template-haskell-2.15.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"uuid-types-1.0.5.1-1c8735bca81b017e3887da3c6e3bd1c3cfafef77fa1eb9e486af14c66da8886d","pkg-name":"uuid-types","pkg-version":"1.0.5.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"918c8a115a0bc427cdaa4d1f51c1634bf3ac53679d0bbe039b77b9c1b62cfcbd","pkg-src-sha256":"0bec6d6982b3c92bfa5eab1d213be2d4b6696b9a2c3a1f1f05812dc3762dca2c","depends":["base-4.13.0.0","binary-0.8.7.0","bytestring-0.10.10.1","deepseq-1.4.4.0","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","random-1.2.1.2-d98a4b25178993c5948451c22661810a5585405330c4a04dab3727c9acbfcdbe","template-haskell-2.15.0.0","text-1.2.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"vector-0.13.1.0-28fb51390d8b219fc5bb674efb0d594f69f7c487d91d4eccc242cf07a19ec827","pkg-name":"vector","pkg-version":"0.13.1.0","flags":{"boundschecks":true,"internalchecks":false,"unsafechecks":false,"wall":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4650d28eb918812a3158130f833b5ff5020259b28a8f9ee5d28701ce60cf8a16","pkg-src-sha256":"63f272279eab8ab9411a0fffb1252ac309b297313f8e33be9ebbc2f981edecee","depends":["base-4.13.0.0","deepseq-1.4.4.0","primitive-0.9.0.0-baad4b35d4494996ef61d7b848afe16a1ebda4d830b73dc79dcbd8eed653fbe5","vector-stream-0.1.0.1-3d4f361517f773d85951548054cac6ca0f7a154ba8d8862176c2330f36a126df"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"vector-algorithms-0.9.0.1-9b3fb607988bc5e556960e5dc7c5796d5a172eefcbddb772cbeb8e0c95a70890","pkg-name":"vector-algorithms","pkg-version":"0.9.0.1","flags":{"bench":true,"boundschecks":true,"internalchecks":false,"llvm":false,"properties":true,"unsafechecks":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"222b01a4c0b9e13d73d04fba7c65930df16d1647acc07d84c47ef0356fa33dba","pkg-src-sha256":"2ba7c0d3a8f26ef3ada24ff4abe81609225ecbab3b5754f048f8a0a3ecc33841","depends":["base-4.13.0.0","bitvec-1.1.5.0-fe5405803218d5b54df054f332d2e256f58dfa11e58d86f0c830db9f084fc5fa","bytestring-0.10.10.1","primitive-0.9.0.0-baad4b35d4494996ef61d7b848afe16a1ebda4d830b73dc79dcbd8eed653fbe5","vector-0.13.1.0-28fb51390d8b219fc5bb674efb0d594f69f7c487d91d4eccc242cf07a19ec827"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"vector-stream-0.1.0.1-3d4f361517f773d85951548054cac6ca0f7a154ba8d8862176c2330f36a126df","pkg-name":"vector-stream","pkg-version":"0.1.0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"be36ab2bee3ec5b7bccc92af5ce27ddd07b7e630cd6bd912344413329ea1652c","pkg-src-sha256":"d0f507334bdea5431a2f07f525a97f29e76522c32210f5de6d5a2b4f1d42bf7c","depends":["base-4.13.0.0","ghc-prim-0.5.3"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"witherable-0.4.2-61538977dad98148d1537e3be1a35fee7e505b57d54d1718e0305f331df6eff7","pkg-name":"witherable","pkg-version":"0.4.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"cec516b35df0ff53ab0068e70a912a0ba7b65c672fbc554727183faa195ad3b8","pkg-src-sha256":"790d2bb274283419173bd89104439860675a9410f70f21912973ecd9098b4104","depends":["base-4.13.0.0","base-orphans-0.9.1-56ca1e3dbc0e2280fff3cf08f4a5940551f0370e7a640301f30845ce149d439a","containers-0.6.2.1","hashable-1.4.3.0-2a1db92b1806c2782b55cfdff9e4c267f1cfaa10aa376634b5e86647b72a54a4","indexed-traversable-0.1.3-be9b51185cfea55fd60ee0255319581c83522c9070d7b6843ceae51a5b83e16d","indexed-traversable-instances-0.1.1.2-778ffa7f49ccebad29e67bb0a83ce1b0e2f1e1e805f337d5f8a382e23d0b9a80","transformers-0.5.6.2","unordered-containers-0.2.20-f3adff0a602ce91ec452a3a72d4873f871ea073fa5e3d8a56b14c1f60135a744","vector-0.13.1.0-28fb51390d8b219fc5bb674efb0d594f69f7c487d91d4eccc242cf07a19ec827"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"zlib-0.7.0.0-45229b692ea597cdf6249b577fd47e17e99c71ead080dce5e993bf4b815027e7","pkg-name":"zlib","pkg-version":"0.7.0.0","flags":{"bundled-c-zlib":false,"non-blocking-ffi":true,"pkg-config":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"13aee0a157b2362cf079a4fa0156927403aef2a9540694c9d170ac8339d17bda","pkg-src-sha256":"7e43c205e1e1ff5a4b033086ec8cce82ab658879e977c8ba02a6701946ff7a47","depends":["base-4.13.0.0","bytestring-0.10.10.1"],"exe-depends":["hsc2hs-0.68.10-fc83ef3231cbf7ccb58a3c6cf0b75db24638022e49fabb300dd02dc1bb947ec6"],"component-name":"lib"}]} \ No newline at end of file diff --git a/CLI/dist-newstyle/cache/solver-plan b/CLI/dist-newstyle/cache/solver-plan deleted file mode 100644 index fedd379..0000000 Binary files a/CLI/dist-newstyle/cache/solver-plan and /dev/null differ diff --git a/CLI/dist-newstyle/cache/source-hashes b/CLI/dist-newstyle/cache/source-hashes deleted file mode 100644 index f60cf9a..0000000 Binary files a/CLI/dist-newstyle/cache/source-hashes and /dev/null differ diff --git a/CLI/dist-newstyle/cache/up-to-date b/CLI/dist-newstyle/cache/up-to-date deleted file mode 100644 index 048c5a1..0000000 Binary files a/CLI/dist-newstyle/cache/up-to-date and /dev/null differ diff --git a/CLI/dist-newstyle/packagedb/ghc-8.8.4/package.cache b/CLI/dist-newstyle/packagedb/ghc-8.8.4/package.cache deleted file mode 100644 index b3cae5c..0000000 Binary files a/CLI/dist-newstyle/packagedb/ghc-8.8.4/package.cache and /dev/null differ diff --git a/CLI/dist-newstyle/packagedb/ghc-8.8.4/package.cache.lock b/CLI/dist-newstyle/packagedb/ghc-8.8.4/package.cache.lock deleted file mode 100644 index e69de29..0000000 diff --git a/CLI/dockerfile b/CLI/dockerfile new file mode 100644 index 0000000..6d312ba --- /dev/null +++ b/CLI/dockerfile @@ -0,0 +1,15 @@ +FROM haskell:9 AS lambda-check-builder + +WORKDIR /app + +COPY ./ ./ + +RUN cabal update && cabal install --installdir=/app + +FROM debian:12 + +COPY --from=lambda-check-builder /app/Lambda-Check /usr/local/bin/Lambda-Check + +RUN apt-get update && apt-get install -y ca-certificates && rm -rf /var/lib/apt/lists/* + + diff --git a/dockerfile b/dockerfile index 8b13789..bf28f7a 100644 --- a/dockerfile +++ b/dockerfile @@ -1 +1,6 @@ +FROM ubuntu:20.04 +RUN apt update && apt install -y git +RUN git clone https://github.com/Omniladder/Dustin_Lambda_Check.git +WORKDIR Dustin_Lambda_Check +RUN sh setup.sh \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..97dc7cd --- /dev/null +++ b/requirements.txt @@ -0,0 +1,2 @@ +fastapi +uvicorn diff --git a/run.sh b/run.sh deleted file mode 100755 index 0bcfd50..0000000 --- a/run.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/bash - -python3 serve.py & - diff --git a/setup.sh b/setup.sh index a95b18a..88778b7 100755 --- a/setup.sh +++ b/setup.sh @@ -3,21 +3,32 @@ cd CLI -curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh +#Identifies if user is root if not tries to see they have sudo +if [ "$EUID" -ne 0 ]; then + SUDO="sudo" +else + SUDO="" +fi + +#curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh + +$SUDO apt-get update +$SUDO apt-get install cabal-install + + +$SUDO apt install -y python3 python3-pip + +pip install -r ../requirements.txt cabal build -cabal run +#cabal run + +#echo " alias = \" ~/lambda-check/CLI/dist-newstyle/build/*/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check \" " >> ~/.bashrc + -echo " alias = \" ~/lambda-check/CLI/dist-newstyle/build/*/ghc-8.8.4/Lambda-Check-0.1.0.0/x/Lambda-Check/build/Lambda-Check \" " >> ~/.bashrc -pip install sqlite3 -pip install fastapi +#source ~/.bashrc -source ~/.bashrc -cabal install text -cabal install http-conduit -cabal install bytestring -cabal install ansi-terminal