lsp-types patch for platform independence (#10288)

* fix shake rebuild tests

* patch pretty printing in ghc

* pin linux deps

* pin windows deps

* cosmetics

* address review

* update ghc commit hash

* pin linux stackage deps

* update stack snapshot

* pin windows deps
This commit is contained in:
Robin Krom 2021-08-04 21:33:52 +02:00 committed by GitHub
parent 7c6d3c5bc7
commit 36f3ba8a6a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 149 additions and 70 deletions

View File

@ -28,6 +28,7 @@ ZIP_VERSION = "1.7.1"
GRPC_HASKELL_REV = "641f0bab046f2f03e5350a7c5f2044af1e19a5b1"
GRPC_HASKELL_SHA256 = "d850d804d7af779bb8717ebe4ea2ac74903a30adeb5262477a2e7a1536f4ca81"
XML_CONDUIT_VERSION = "1.9.1.1"
LSP_TYPES_VERSION = "1.2.0.0"
def daml_haskell_deps():
"""Load all Haskell dependencies of the DAML repository."""
@ -71,6 +72,27 @@ haskell_binary(
# Vendored Libraries
#
http_archive(
name = "lsp-types",
build_file_content = """
load("@rules_haskell//haskell:cabal.bzl", "haskell_cabal_library")
load("@stackage//:packages.bzl", "packages")
haskell_cabal_library(
name = "lsp-types",
version = "{version}",
srcs = glob(["**"]),
deps = packages["lsp-types"].deps,
visibility = ["//visibility:public"],
)""".format(version = LSP_TYPES_VERSION),
patch_args = ["-p1"],
patches = [
"@com_github_digital_asset_daml//bazel_tools:lsp-types-normalisation.patch",
],
sha256 = "637a85878d7b8c895311eb6878f19c43038ef93db1e4de4820b04fa7bc30b4ab",
strip_prefix = "lsp-types-{}".format(LSP_TYPES_VERSION),
urls = ["http://hackage.haskell.org/package/lsp-types-{version}/lsp-types-{version}.tar.gz".format(version = LSP_TYPES_VERSION)],
)
# ghc-lib based ghcide - injected into `@stackage` and used for DAML IDE.
http_archive(
name = "ghcide_ghc_lib",
@ -490,6 +512,8 @@ exports_files(["stack.exe"], visibility = ["//visibility:public"])
"deepseq",
"dependent-map",
"dependent-sum",
"dependent-sum-template",
"Diff",
"digest",
"directory",
"dlist",
@ -517,7 +541,6 @@ exports_files(["stack.exe"], visibility = ["//visibility:public"])
"hashable",
"haskeline",
"lsp",
"lsp-types",
"haskell-src",
"haskell-src-exts",
"heaps",
@ -644,6 +667,7 @@ exports_files(["stack.exe"], visibility = ["//visibility:public"])
"shake": "@shake//:shake",
"xml-conduit": "@xml-conduit//:xml-conduit",
"zip": "@zip//:zip",
"lsp-types": "@lsp-types//:lsp-types",
},
)

View File

@ -0,0 +1,44 @@
diff --git a/src/Language/LSP/Types/Uri.hs b/src/Language/LSP/Types/Uri.hs
index 8970d37..e1a7233 100644
--- a/src/Language/LSP/Types/Uri.hs
+++ b/src/Language/LSP/Types/Uri.hs
@@ -110,12 +110,12 @@ platformAdjustFromUriPath systemOS authority srcPath =
else let
firstSegment:rest = (FPP.splitDirectories . tail) srcPath -- Drop leading '/' for absolute Windows paths
drive = if FPW.isDrive firstSegment
- then FPW.addTrailingPathSeparator firstSegment
+ then FPP.addTrailingPathSeparator firstSegment
else firstSegment
- in FPW.joinDrive drive $ FPW.joinPath rest
+ in FPP.joinDrive drive $ FPP.joinPath rest
filePathToUri :: FilePath -> Uri
-filePathToUri = (platformAwareFilePathToUri System.Info.os) . FP.normalise
+filePathToUri = (platformAwareFilePathToUri System.Info.os) . normalise'
{-# WARNING platformAwareFilePathToUri "This function is considered private. Use normalizedUriToFilePath instead." #-}
platformAwareFilePathToUri :: SystemOS -> FilePath -> Uri
@@ -187,10 +187,22 @@ instance Hashable NormalizedFilePath where
instance IsString NormalizedFilePath where
fromString = toNormalizedFilePath
+-- | Normalise a file path, but always convert to POSIX style file paths.
+normalise' :: FilePath -> FilePath
+normalise' fp = nfp
+ where
+ (drv, nfp0) = FP.splitDrive fp
+ nfp = convertDrive drv `FPP.joinDrive` (FPP.joinPath $ FP.splitDirectories nfp0)
+
+ convertDrive drv
+ | System.Info.os == windowsOS && FPW.hasTrailingPathSeparator drv =
+ FPP.addTrailingPathSeparator (init drv)
+ | otherwise = drv
+
toNormalizedFilePath :: FilePath -> NormalizedFilePath
toNormalizedFilePath fp = NormalizedFilePath nuri nfp
where
- nfp = FP.normalise fp
+ nfp = normalise' fp
nuri = internalNormalizedFilePathToUri nfp
fromNormalizedFilePath :: NormalizedFilePath -> FilePath

View File

@ -12,7 +12,7 @@ jobs:
variables:
ghc-lib-sha: '42e5c306dcfbc84b83336fdd531023e93bfcc5b2'
base-sha: '9c787d4d24f2b515934c8503ee2bbd7cfac4da20'
patches: '64bc161f88d8a867ef90ac4debb15c6160de5f54 833ca63be2ab14871874ccb6974921e8952802e9'
patches: '494cee9146b26d7a9186715a4551626cc2e330c2 833ca63be2ab14871874ccb6974921e8952802e9'
flavor: 'ghc-8.8.1'
steps:
- checkout: self

View File

@ -70,6 +70,7 @@ import Safe
import System.Directory.Extra as Dir
import System.Environment
import System.FilePath
import qualified System.FilePath.Posix as FPP
import System.IO
import System.IO.Error
import qualified Text.PrettyPrint.Annotated.HughesPJClass as HughesPJPretty
@ -1313,7 +1314,7 @@ discardInternalModules mbPackageName files = do
mbPackageName == Just unitId &&
moduleNameFile modName `isSuffixOf` fromNormalizedFilePath f)
$ Map.keys stablePackages)
moduleNameFile (LF.ModuleName segments) = joinPath (map T.unpack segments) <.> "daml"
moduleNameFile (LF.ModuleName segments) = FPP.joinPath (map T.unpack segments) <.> "daml"
usesE' ::
( Eq k
@ -1333,7 +1334,7 @@ usesE' k = fmap (map fst) . usesE k
internalModules :: [FilePath]
internalModules = map normalise
internalModules = map FPP.normalise
[ "Data/String.daml"
, "GHC/CString.daml"
, "GHC/Integer/Type.daml"
@ -1342,13 +1343,6 @@ internalModules = map normalise
, "GHC/Types.daml"
]
-- | Checks if a given module is internal, i.e. gets removed in the Core->LF
-- translation. TODO where should this live?
modIsInternal :: Module -> Bool
modIsInternal m = moduleNameString (moduleName m) `elem` internalModules
-- TODO should we consider DA.Internal.* internal? Difference to GHC.*
-- modules is that these do not disappear in the LF conversion.
damlRule :: Options -> Rules ()
damlRule opts = do

View File

@ -79,6 +79,7 @@ import qualified Data.Text.IO as T.IO
import qualified Data.HashSet as HashSet
import Network.URI
import qualified System.FilePath as FilePath
import qualified System.FilePath.Posix as FPP
import qualified System.Directory as Directory
import qualified Data.Time.Clock as Clock
import System.FilePath ((</>))
@ -290,8 +291,9 @@ parseShakeProfileJSON testDir json =
, Aeson.Array entry <- V.toList entries
-- Number == 0, built in the last run
, Aeson.String name : _ : Aeson.Number 0 : _ <- [V.toList entry]
, Just res <- [stripInfix "; " $ replace (FilePath.addTrailingPathSeparator testDir) "" $ T.unpack name]
, Just res <- [stripInfix "; " $ replace (FPP.addTrailingPathSeparator testDir') "" $ T.unpack name]
]
where testDir' = D.fromNormalizedFilePath $ D.toNormalizedFilePath' testDir
getVirtualResources :: ShakeTest (Map VirtualResource T.Text)
@ -465,7 +467,7 @@ matchGoToDefinitionPattern = \case
l' <- l
let uri = D._uri l'
fp <- D.uriToFilePath' uri
pure $ isSuffixOf (D.fromNormalizedFilePath $ moduleNameToFilePath m) (FilePath.normalise fp)
pure $ isSuffixOf (D.fromNormalizedFilePath $ moduleNameToFilePath m) (D.fromNormalizedFilePath $ D.toNormalizedFilePath' fp)
-- | Expect "go to definition" to point us at a certain location or to fail.
expectGoToDefinition :: CursorRange -> GoToDefinitionPattern -> ShakeTest ()

View File

@ -0,0 +1,17 @@
module PlatformIndependence where
import DA.Stack
import DA.Text
{-
File paths from call stacks end up encoded in the Daml package. This would make the package hash
dependendent on the platform, where the package is compiled.
Make sure that they are always encoded as POSIX filepath, regardless the compiling platform.
-}
checkFilePath : HasCallStack => Scenario ()
checkFilePath = do
let [fs] = [ srcLocFile srcLoc | (_t, srcLoc) <- getCallStack callStack]
assert $ "compiler/damlc/tests/daml-test-files/PlatformIndependence.daml" `isSuffixOf` fs
test : Scenario ()
test = checkFilePath

View File

@ -3,10 +3,10 @@
resolver: lts-18.0
packages:
- archive: https://daml-binaries.da-ext.net/da-ghc-lib/ghc-lib-57b78d673ec6688715b861e9ae9c16fe.tar.gz
sha256: "63386411db9b330413cd1266edea747f079ed6280ad7664b208afc252921fad7"
- archive: https://daml-binaries.da-ext.net/da-ghc-lib/ghc-lib-parser-57b78d673ec6688715b861e9ae9c16fe.tar.gz
sha256: "658942c05b0e36dceecaca7d94222f6cd235104ed95288254d0b772a75139e4a"
- archive: https://daml-binaries.da-ext.net/da-ghc-lib/ghc-lib-b059bc40cf563600584ad6afbf3c3d1d.tar.gz
sha256: "69bab973103910dad64ffc4c11c6e0673affdda7250d1691b906076f65763c05"
- archive: https://daml-binaries.da-ext.net/da-ghc-lib/ghc-lib-parser-b059bc40cf563600584ad6afbf3c3d1d.tar.gz
sha256: "0b192dc1ee8e485b4c872473f105c5129ad5ad7bd3502a63b07c8b9ef0b7bb2c"
- github: digital-asset/hlint
commit: "c8246c1feb932858ff2b5d7e9e900068a974bf57"
sha256: "3da24baf789c5f00211a92e24153e6b88102befaa946ada1f707935554500fe2"

View File

@ -1,11 +1,11 @@
{
"__GENERATED_FILE_DO_NOT_MODIFY_MANUALLY": -886660980,
"all-cabal-hashes": "https://raw.githubusercontent.com/commercialhaskell/all-cabal-hashes/2e31b78c21b306b0d0501696ff9478c4e516d43c",
"__GENERATED_FILE_DO_NOT_MODIFY_MANUALLY": -1504979253,
"all-cabal-hashes": "https://raw.githubusercontent.com/commercialhaskell/all-cabal-hashes/9a29460a33cc7bf10193c583e4439a41b88ed51c",
"resolved": {
"Cabal": {"dependencies":[],"location":{"type":"core"},"name":"Cabal","version":"3.2.1.0"},
"Decimal": {"dependencies":["base","deepseq"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/Decimal-0.5.2/Decimal-0.5.2.tar.gz"},"name":"Decimal","pinned":{"url":["https://hackage.haskell.org/package/Decimal-0.5.2/Decimal-0.5.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/Decimal-0.5.2.tar.gz"],"sha256":"a37a0220424e4bcb8cae1d38844c7027ee314449758d0d14ff3e2e0a5c8a87a7","cabal-sha256":"83dd16a1c0737fd35fdb1088af36e1a53034e75090e3f0d4ad32296f1a35a13b"},"version":"0.5.2"},
"Diff": {"dependencies":["array","base","pretty"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/Diff-0.4.0/Diff-0.4.0.tar.gz"},"name":"Diff","pinned":{"url":["https://hackage.haskell.org/package/Diff-0.4.0/Diff-0.4.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/Diff-0.4.0.tar.gz"],"sha256":"7290ac098ad8b4748b9c10e494cc85ba54af688226ae69a465aa7b4c73f149c7","cabal-sha256":"b5cfbeed498f555a18774ffd549bbeff7a24bdfe5984154dcfc9f4328a3c2847"},"version":"0.4.0"},
"Glob": {"dependencies":["base","containers","directory","dlist","filepath","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/Glob-0.10.1/Glob-0.10.1.tar.gz"},"name":"Glob","pinned":{"url":["https://hackage.haskell.org/package/Glob-0.10.1/Glob-0.10.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/Glob-0.10.1.tar.gz"],"sha256":"cae4476d944947010705e0b00cf3e36c90ef407f968861f6771b931056b6d315","cabal-sha256":"424bf82768d0471562b34ffcac6b73e658f655aac957dfbcbb945603899a40fd"},"version":"0.10.1"},
"Glob": {"dependencies":["base","containers","directory","dlist","filepath","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/Glob-0.10.1/Glob-0.10.1.tar.gz"},"name":"Glob","pinned":{"url":["https://hackage.haskell.org/package/Glob-0.10.1/Glob-0.10.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/Glob-0.10.1.tar.gz"],"sha256":"cae4476d944947010705e0b00cf3e36c90ef407f968861f6771b931056b6d315","cabal-sha256":"17cbe8f4f023d3288d168f5eb34f9fd1125348ece2682bad2137ed8a06d5d0d6"},"version":"0.10.1"},
"HUnit": {"dependencies":["base","call-stack","deepseq"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/HUnit-1.6.2.0/HUnit-1.6.2.0.tar.gz"},"name":"HUnit","pinned":{"url":["https://hackage.haskell.org/package/HUnit-1.6.2.0/HUnit-1.6.2.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/HUnit-1.6.2.0.tar.gz"],"sha256":"b0b7538871ffc058486fc00740886d2f3172f8fa6869936bfe83a5e10bd744ab","cabal-sha256":"1a79174e8af616117ad39464cac9de205ca923da6582825e97c10786fda933a4"},"version":"1.6.2.0"},
"Only": {"dependencies":["base","deepseq"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/Only-0.1/Only-0.1.tar.gz"},"name":"Only","pinned":{"url":["https://hackage.haskell.org/package/Only-0.1/Only-0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/Only-0.1.tar.gz"],"sha256":"ab7aa193e8c257d3bda6b0b3c1cbcf74cdaa85ab08cb20c2dd62ba248c1ab265","cabal-sha256":"f92f5da97e647451f1ee7f5bf44914fb75062d08ccd3f36b2000d649c63d13aa"},"version":"0.1"},
"QuickCheck": {"dependencies":["base","containers","deepseq","random","splitmix","template-haskell","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/QuickCheck-2.14.2/QuickCheck-2.14.2.tar.gz"},"name":"QuickCheck","pinned":{"url":["https://hackage.haskell.org/package/QuickCheck-2.14.2/QuickCheck-2.14.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/QuickCheck-2.14.2.tar.gz"],"sha256":"d87b6c85696b601175274361fa62217894401e401e150c3c5d4013ac53cd36f3","cabal-sha256":"4ce29211223d5e6620ebceba34a3ca9ccf1c10c0cf387d48aea45599222ee5aa"},"version":"2.14.2"},
@ -35,7 +35,7 @@
"base64": {"dependencies":["base","bytestring","deepseq","ghc-byteorder","text","text-short"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/base64-0.4.2.3/base64-0.4.2.3.tar.gz"},"name":"base64","pinned":{"url":["https://hackage.haskell.org/package/base64-0.4.2.3/base64-0.4.2.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/base64-0.4.2.3.tar.gz"],"sha256":"bcbf21179841fbf657772792bef453773e01ea8229ed42a7422fcb073bd7b8c1","cabal-sha256":"d8a82b0f446e89d1d3b3e7c8fc5b3cd2f5063c43309bd3c971050d9c0eb74783"},"version":"0.4.2.3"},
"base64-bytestring": {"dependencies":["base","bytestring"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/base64-bytestring-1.1.0.0/base64-bytestring-1.1.0.0.tar.gz"},"name":"base64-bytestring","pinned":{"url":["https://hackage.haskell.org/package/base64-bytestring-1.1.0.0/base64-bytestring-1.1.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/base64-bytestring-1.1.0.0.tar.gz"],"sha256":"210d6c9042241ca52ee5d89cf221dbeb4d0e64b37391345369035ad2d9b4aca9","cabal-sha256":"190264fef9e65d9085f00ccda419137096d1dc94777c58272bc96821dc7f37c3"},"version":"1.1.0.0"},
"basement": {"dependencies":["base","ghc-prim"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/basement-0.0.12/basement-0.0.12.tar.gz"},"name":"basement","pinned":{"url":["https://hackage.haskell.org/package/basement-0.0.12/basement-0.0.12.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/basement-0.0.12.tar.gz"],"sha256":"53c4435b17b7df398c730406263957977fe0616b66529dafa8d1a0fd66b7fa8b","cabal-sha256":"cbb9187d3575b78ee1165b7a49a0e8570ee563820330a944a67cd09e1cfe23bf"},"version":"0.0.12"},
"bifunctors": {"dependencies":["base","base-orphans","comonad","containers","tagged","template-haskell","th-abstraction","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/bifunctors-5.5.11/bifunctors-5.5.11.tar.gz"},"name":"bifunctors","pinned":{"url":["https://hackage.haskell.org/package/bifunctors-5.5.11/bifunctors-5.5.11.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/bifunctors-5.5.11.tar.gz"],"sha256":"2b6b9672faab649995cf4c885f353b6638b6daee467a9ace40a7fc773831091c","cabal-sha256":"bee555a403171a7959459e0fb31934f785f2ad0a2d3485b62137b5a9be6c47ad"},"version":"5.5.11"},
"bifunctors": {"dependencies":["base","base-orphans","comonad","containers","tagged","template-haskell","th-abstraction","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/bifunctors-5.5.11/bifunctors-5.5.11.tar.gz"},"name":"bifunctors","pinned":{"url":["https://hackage.haskell.org/package/bifunctors-5.5.11/bifunctors-5.5.11.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/bifunctors-5.5.11.tar.gz"],"sha256":"2b6b9672faab649995cf4c885f353b6638b6daee467a9ace40a7fc773831091c","cabal-sha256":"cc425ee85aae56dba1123baf6fb3fa7abcd90782f26bb904eef14c7332ee85f6"},"version":"5.5.11"},
"binary": {"dependencies":[],"location":{"type":"core"},"name":"binary","version":"0.8.8.0"},
"blaze-builder": {"dependencies":["base","bytestring","deepseq","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/blaze-builder-0.4.2.1/blaze-builder-0.4.2.1.tar.gz"},"name":"blaze-builder","pinned":{"url":["https://hackage.haskell.org/package/blaze-builder-0.4.2.1/blaze-builder-0.4.2.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/blaze-builder-0.4.2.1.tar.gz"],"sha256":"6e6889bc9c3ff92062a17f3825dcc1b28510d261334d4d4e177232d904ea0b06","cabal-sha256":"c1830d7b52910b4569162d4fad27da510bd6a4b43c94da1e9ec0712bebc36121"},"version":"0.4.2.1"},
"blaze-html": {"dependencies":["base","blaze-builder","blaze-markup","bytestring","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/blaze-html-0.9.1.2/blaze-html-0.9.1.2.tar.gz"},"name":"blaze-html","pinned":{"url":["https://hackage.haskell.org/package/blaze-html-0.9.1.2/blaze-html-0.9.1.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/blaze-html-0.9.1.2.tar.gz"],"sha256":"60503f42546c6c1b954014d188ea137e43d74dcffd2bf6157c113fd91a0c394c","cabal-sha256":"49db3eb70fa93fb572f3a9233b542b59e7f766a2b95c92d01d95a596c7727473"},"version":"0.9.1.2"},
@ -53,7 +53,7 @@
"cmark-gfm": {"dependencies":["base","bytestring","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/cmark-gfm-0.2.2/cmark-gfm-0.2.2.tar.gz"},"name":"cmark-gfm","pinned":{"url":["https://hackage.haskell.org/package/cmark-gfm-0.2.2/cmark-gfm-0.2.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/cmark-gfm-0.2.2.tar.gz"],"sha256":"ee701aff393373f51c2653d7d23482aa7a000451cb2e38f307165616c36b7fea","cabal-sha256":"8d1b7f0447a4f64d25de4be2c2fb09993570158fd30407e3e24d89168be52331"},"version":"0.2.2"},
"cmdargs": {"dependencies":["base","filepath","process","template-haskell","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/cmdargs-0.10.21/cmdargs-0.10.21.tar.gz"},"name":"cmdargs","pinned":{"url":["https://hackage.haskell.org/package/cmdargs-0.10.21/cmdargs-0.10.21.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/cmdargs-0.10.21.tar.gz"],"sha256":"f7d8ea5c4e6af368d9b5d2eb994fc29235406fbe91916a6dc63bd883025eca75","cabal-sha256":"a347cf8a16af30b9d8378209de0d1b7ac2b7b39e3af5d384383d8ef82315b37f"},"version":"0.10.21"},
"colour": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/colour-2.3.5/colour-2.3.5.tar.gz"},"name":"colour","pinned":{"url":["https://hackage.haskell.org/package/colour-2.3.5/colour-2.3.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/colour-2.3.5.tar.gz"],"sha256":"3b8d471979617dce7c193523743c9782df63433d8e87e3ef6d97922e0da104e7","cabal-sha256":"b27db0a3ad40d70bdbd8510a104269f8707592e80757a1abc66a22ba25e5a42f"},"version":"2.3.5"},
"comonad": {"dependencies":["base","containers","distributive","indexed-traversable","tagged","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/comonad-5.0.8/comonad-5.0.8.tar.gz"},"name":"comonad","pinned":{"url":["https://hackage.haskell.org/package/comonad-5.0.8/comonad-5.0.8.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/comonad-5.0.8.tar.gz"],"sha256":"ef6cdf2cc292cc43ee6aa96c581b235fdea8ab44a0bffb24dc79ae2b2ef33d13","cabal-sha256":"a3a140be7a21d6ba16bf9102bf4c79455ff3213679311587bac45ba0723c8d7a"},"version":"5.0.8"},
"comonad": {"dependencies":["base","containers","distributive","indexed-traversable","tagged","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/comonad-5.0.8/comonad-5.0.8.tar.gz"},"name":"comonad","pinned":{"url":["https://hackage.haskell.org/package/comonad-5.0.8/comonad-5.0.8.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/comonad-5.0.8.tar.gz"],"sha256":"ef6cdf2cc292cc43ee6aa96c581b235fdea8ab44a0bffb24dc79ae2b2ef33d13","cabal-sha256":"1f1aabd73ec7f80f20cf078a748a60cd48d8e57277802fdf6a9ab3601a9b8f7e"},"version":"5.0.8"},
"conduit": {"dependencies":["base","bytestring","directory","exceptions","filepath","mono-traversable","mtl","primitive","resourcet","text","transformers","unix","unliftio-core","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/conduit-1.3.4.1/conduit-1.3.4.1.tar.gz"},"name":"conduit","pinned":{"url":["https://hackage.haskell.org/package/conduit-1.3.4.1/conduit-1.3.4.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/conduit-1.3.4.1.tar.gz"],"sha256":"85743b8d5f2d5779ccb7459b5a919c5786707af23fe7a065d281ee8e6dc226f1","cabal-sha256":"eeabaf3f822e3e15317995766f50ef4a20371bdc3bb4721a7541e37228018dcf"},"version":"1.3.4.1"},
"conduit-combinators": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/conduit-combinators-1.3.0/conduit-combinators-1.3.0.tar.gz"},"name":"conduit-combinators","pinned":{"url":["https://hackage.haskell.org/package/conduit-combinators-1.3.0/conduit-combinators-1.3.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/conduit-combinators-1.3.0.tar.gz"],"sha256":"9717d916a0422a7fb7cc262302333269607530d40cd0bea3be947872f906e7d3","cabal-sha256":"0ada7712bd8291c958cbd0db1ccc8374936f260cfa41422d7a5d979d1c7ea757"},"version":"1.3.0"},
"conduit-extra": {"dependencies":["async","attoparsec","base","bytestring","conduit","directory","filepath","network","primitive","process","resourcet","stm","streaming-commons","text","transformers","typed-process","unliftio-core"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/conduit-extra-1.3.5/conduit-extra-1.3.5.tar.gz"},"name":"conduit-extra","pinned":{"url":["https://hackage.haskell.org/package/conduit-extra-1.3.5/conduit-extra-1.3.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/conduit-extra-1.3.5.tar.gz"],"sha256":"8a648dee203c01e647fa386bfe7a5b293ce552f8b5cab9c0dd5cb71c7cd012d9","cabal-sha256":"c3de6704df0b728d258827370b3de4e467a25d396037104639b859d743146365"},"version":"1.3.5"},
@ -82,7 +82,7 @@
"dependent-sum-template": {"dependencies":["base","dependent-sum","template-haskell","th-extras"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/dependent-sum-template-0.1.0.3/dependent-sum-template-0.1.0.3.tar.gz"},"name":"dependent-sum-template","pinned":{"url":["https://hackage.haskell.org/package/dependent-sum-template-0.1.0.3/dependent-sum-template-0.1.0.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/dependent-sum-template-0.1.0.3.tar.gz"],"sha256":"c8eb17d3fa9966182e041836abefce2e7e42e30d3b01463a254fb7cf806ca4df","cabal-sha256":"0bbbacdfbd3abf2a15aaf0cf2c27e5bdd159b519441fec39e1e6f2f54424adde"},"version":"0.1.0.3"},
"digest": {"dependencies":["base","bytestring"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/digest-0.0.1.2/digest-0.0.1.2.tar.gz"},"name":"digest","pinned":{"url":["https://hackage.haskell.org/package/digest-0.0.1.2/digest-0.0.1.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/digest-0.0.1.2.tar.gz"],"sha256":"641717eb16392abf8965986a9e8dc21eebf1d97775bbb6923c7b7f8fee17fe11","cabal-sha256":"d3c2a49e25bb3b0228ddb063493b80adcfc26625f9ebbe4a89dd4fbb4339d1bc"},"version":"0.0.1.2"},
"directory": {"dependencies":[],"location":{"type":"core"},"name":"directory","version":"1.3.6.0"},
"distributive": {"dependencies":["base","base-orphans","tagged","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/distributive-0.6.2.1/distributive-0.6.2.1.tar.gz"},"name":"distributive","pinned":{"url":["https://hackage.haskell.org/package/distributive-0.6.2.1/distributive-0.6.2.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/distributive-0.6.2.1.tar.gz"],"sha256":"d7351392e078f58caa46630a4b9c643e1e2e9dddee45848c5c8358e7b1316b91","cabal-sha256":"2823eff05c6b093492efe804027e7cf82757221f934964c76106ac3248899b89"},"version":"0.6.2.1"},
"distributive": {"dependencies":["base","base-orphans","tagged","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/distributive-0.6.2.1/distributive-0.6.2.1.tar.gz"},"name":"distributive","pinned":{"url":["https://hackage.haskell.org/package/distributive-0.6.2.1/distributive-0.6.2.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/distributive-0.6.2.1.tar.gz"],"sha256":"d7351392e078f58caa46630a4b9c643e1e2e9dddee45848c5c8358e7b1316b91","cabal-sha256":"0f99f5541cca04acf89b64432b03422b6408e830a8dff30e6c4334ef1a48680c"},"version":"0.6.2.1"},
"dlist": {"dependencies":["base","deepseq"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/dlist-1.0/dlist-1.0.tar.gz"},"name":"dlist","pinned":{"url":["https://hackage.haskell.org/package/dlist-1.0/dlist-1.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/dlist-1.0.tar.gz"],"sha256":"173d637328bb173fcc365f30d29ff4a94292a1e0e5558aeb3dfc11de81510115","cabal-sha256":"124cb3aa1decebd5171b46601b1f74cca6cfae12d266ace3799b86dd05ef7cb4"},"version":"1.0"},
"easy-file": {"dependencies":["base","directory","filepath","time","unix"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/easy-file-0.2.2/easy-file-0.2.2.tar.gz"},"name":"easy-file","pinned":{"url":["https://hackage.haskell.org/package/easy-file-0.2.2/easy-file-0.2.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/easy-file-0.2.2.tar.gz"],"sha256":"52f52e72ba48d60935932401c233a72bf45c582871238aecc5a18021ce67b47e","cabal-sha256":"72303120495a9fed82276a7987434361edd6dfecafad241d7c6c03b68e4801e5"},"version":"0.2.2"},
"either": {"dependencies":["base","bifunctors","mtl","profunctors","semigroupoids"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/either-5.0.1.1/either-5.0.1.1.tar.gz"},"name":"either","pinned":{"url":["https://hackage.haskell.org/package/either-5.0.1.1/either-5.0.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/either-5.0.1.1.tar.gz"],"sha256":"0243d51d6a02ecb541e4854a588a9b6219a4690ebcbdb79387dd14ad519cdf27","cabal-sha256":"41167573bf575b7e0e24283a52fba8ce7bed5a7cc2984bba0dce305a0ab66f0d"},"version":"5.0.1.1"},
@ -103,12 +103,12 @@
"ghc-boot": {"dependencies":[],"location":{"type":"core"},"name":"ghc-boot","version":"8.10.4"},
"ghc-boot-th": {"dependencies":[],"location":{"type":"core"},"name":"ghc-boot-th","version":"8.10.4"},
"ghc-byteorder": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/ghc-byteorder-4.11.0.0.10/ghc-byteorder-4.11.0.0.10.tar.gz"},"name":"ghc-byteorder","pinned":{"url":["https://hackage.haskell.org/package/ghc-byteorder-4.11.0.0.10/ghc-byteorder-4.11.0.0.10.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/ghc-byteorder-4.11.0.0.10.tar.gz"],"sha256":"86e50a89798181db4f44ec3848fc52940c73098e88549a351ceb54fefc691fb6","cabal-sha256":"d47fdef63f2a145091e91b1aedbd46bf61ca03bb935e81e3462a1d904c319de3"},"version":"4.11.0.0.10"},
"ghc-lib": {"dependencies":["alex","array","base","binary","bytestring","containers","deepseq","directory","filepath","ghc-lib-parser","ghc-prim","happy","hpc","pretty","process","rts","time","transformers","unix"],"location":{"type":"archive","url":"https://daml-binaries.da-ext.net/da-ghc-lib/ghc-lib-57b78d673ec6688715b861e9ae9c16fe.tar.gz"},"name":"ghc-lib","pinned":{"sha256":"63386411db9b330413cd1266edea747f079ed6280ad7664b208afc252921fad7","strip-prefix":"ghc-lib-8.8.1.20210531"},"version":"8.8.1.20210531"},
"ghc-lib-parser": {"dependencies":["alex","array","base","binary","bytestring","containers","deepseq","directory","filepath","ghc-prim","happy","hpc","pretty","process","time","transformers","unix"],"location":{"type":"archive","url":"https://daml-binaries.da-ext.net/da-ghc-lib/ghc-lib-parser-57b78d673ec6688715b861e9ae9c16fe.tar.gz"},"name":"ghc-lib-parser","pinned":{"sha256":"658942c05b0e36dceecaca7d94222f6cd235104ed95288254d0b772a75139e4a","strip-prefix":"ghc-lib-parser-8.8.1.20210531"},"version":"8.8.1.20210531"},
"ghc-lib": {"dependencies":["alex","array","base","binary","bytestring","containers","deepseq","directory","filepath","ghc-lib-parser","ghc-prim","happy","hpc","pretty","process","rts","time","transformers","unix"],"location":{"type":"archive","url":"https://daml-binaries.da-ext.net/da-ghc-lib/ghc-lib-7ad9ea639a7ed3e2226300a48d36f585.tar.gz"},"name":"ghc-lib","pinned":{"sha256":"ba2fb4a8501b642207a62b3098b6a49b85434c1f13e162e8ce566e269078091a","strip-prefix":"ghc-lib-8.8.1.20210729"},"version":"8.8.1.20210729"},
"ghc-lib-parser": {"dependencies":["alex","array","base","binary","bytestring","containers","deepseq","directory","filepath","ghc-prim","happy","hpc","pretty","process","time","transformers","unix"],"location":{"type":"archive","url":"https://daml-binaries.da-ext.net/da-ghc-lib/ghc-lib-parser-7ad9ea639a7ed3e2226300a48d36f585.tar.gz"},"name":"ghc-lib-parser","pinned":{"sha256":"cc57b6f017105e8eb5f062837aa03dd9479c2281e5444202a1ea41456a60da96","strip-prefix":"ghc-lib-parser-8.8.1.20210729"},"version":"8.8.1.20210729"},
"ghc-lib-parser-ex": {"dependencies":["base","bytestring","containers","extra","ghc-lib-parser","uniplate"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/ghc-lib-parser-ex-8.8.5.8/ghc-lib-parser-ex-8.8.5.8.tar.gz"},"name":"ghc-lib-parser-ex","pinned":{"url":["https://hackage.haskell.org/package/ghc-lib-parser-ex-8.8.5.8/ghc-lib-parser-ex-8.8.5.8.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/ghc-lib-parser-ex-8.8.5.8.tar.gz"],"sha256":"b36ef8b49da4e8c78b00dca9b9546b7d4db0b09b10da5e313d3f0dbb4af581d7","cabal-sha256":"04f164fd6a4a5b0c5627cf7fadd79174c3b1d4c696dc481a9909266bd6a2a6aa"},"version":"8.8.5.8"},
"ghc-paths": {"dependencies":["Cabal","base","directory"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/ghc-paths-0.1.0.12/ghc-paths-0.1.0.12.tar.gz"},"name":"ghc-paths","pinned":{"url":["https://hackage.haskell.org/package/ghc-paths-0.1.0.12/ghc-paths-0.1.0.12.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/ghc-paths-0.1.0.12.tar.gz"],"sha256":"6ecbe676d073cb07989c61ce4c5709c4e67cbefdd2d55a4095f9388b6fe2c484","cabal-sha256":"afdfdb6584f39e821b2b7130e12007bf3ad87401d86f5105eead059c150dc81d"},"version":"0.1.0.12"},
"ghc-prim": {"dependencies":[],"location":{"type":"core"},"name":"ghc-prim","version":"0.6.1"},
"ghcide": {"dependencies":["aeson","async","base","binary","bytestring","containers","data-default","deepseq","directory","extra","filepath","fuzzy","ghc-lib","ghc-lib-parser","haddock-library","hashable","haskell-lsp","haskell-lsp-types","hslogger","mtl","network-uri","prettyprinter","prettyprinter-ansi-terminal","regex-tdfa","rope-utf16-splay","safe-exceptions","shake","sorted-list","stm","syb","text","time","transformers","unix","unordered-containers","utf8-string"],"location":{"type":"vendored"},"name":"ghcide","version":"0.1.0"},
"ghcide": {"dependencies":["aeson","async","base","binary","bytestring","containers","data-default","deepseq","dependent-map","dependent-sum","directory","extra","filepath","fuzzy","ghc-lib","ghc-lib-parser","haddock-library","hashable","hslogger","lsp","lsp-types","mtl","network-uri","prettyprinter","prettyprinter-ansi-terminal","regex-tdfa","rope-utf16-splay","safe-exceptions","shake","some","sorted-list","stm","syb","text","time","transformers","unix","unliftio","unordered-containers","utf8-string"],"location":{"type":"vendored"},"name":"ghcide","version":"0.1.0"},
"gitrev": {"dependencies":["base","base-compat","directory","filepath","process","template-haskell"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/gitrev-1.3.1/gitrev-1.3.1.tar.gz"},"name":"gitrev","pinned":{"url":["https://hackage.haskell.org/package/gitrev-1.3.1/gitrev-1.3.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/gitrev-1.3.1.tar.gz"],"sha256":"a89964db24f56727b0e7b10c98fe7c116d721d8c46f52d6e77088669aaa38332","cabal-sha256":"1d0b2d34bee761865fc22bd022f32890e1b561dfac62a1f31a4fe6220a0d1e58"},"version":"1.3.1"},
"grpc-haskell": {"dependencies":["async","base","bytestring","grpc-haskell-core","managed","proto3-suite","proto3-wire"],"location":{"type":"vendored"},"name":"grpc-haskell","version":"0.0.2.0"},
"grpc-haskell-core": {"dependencies":["base","bytestring","c2hs","clock","containers","managed","sorted-list","stm","transformers"],"location":{"type":"vendored"},"name":"grpc-haskell-core","version":"0.0.0.0"},
@ -117,8 +117,6 @@
"hashable": {"dependencies":["base","bytestring","deepseq","ghc-prim","integer-simple","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/hashable-1.3.0.0/hashable-1.3.0.0.tar.gz"},"name":"hashable","pinned":{"url":["https://hackage.haskell.org/package/hashable-1.3.0.0/hashable-1.3.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/hashable-1.3.0.0.tar.gz"],"sha256":"822e5413fbccca6ae884d3aba4066422c8b5d58d23d18b9ecb5c03273bb19ab4","cabal-sha256":"d60cad00223d46172020c136e68acef0481a47d0302b2e74b1805b4f3a446a9b"},"version":"1.3.0.0"},
"haskeline": {"dependencies":["base","bytestring","containers","directory","exceptions","filepath","process","stm","terminfo","transformers","unix"],"location":{"type":"core"},"name":"haskeline","version":"0.8.1.2"},
"haskell-lexer": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/haskell-lexer-1.1/haskell-lexer-1.1.tar.gz"},"name":"haskell-lexer","pinned":{"url":["https://hackage.haskell.org/package/haskell-lexer-1.1/haskell-lexer-1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/haskell-lexer-1.1.tar.gz"],"sha256":"313a15cc643322c8badd148867ce25ca1ffc191df9e7eeec5b10bc08c4b563d5","cabal-sha256":"9e0a7633f6bdb59004c6f3144ebfad1edb9e440fc6a94215c3a1d11bcd8656ef"},"version":"1.1"},
"haskell-lsp": {"dependencies":["aeson","async","attoparsec","base","bytestring","containers","data-default","directory","filepath","hashable","haskell-lsp-types","hslogger","lens","mtl","network-uri","rope-utf16-splay","sorted-list","stm","temporary","text","time","unordered-containers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/haskell-lsp-0.24.0.0/haskell-lsp-0.24.0.0.tar.gz"},"name":"haskell-lsp","pinned":{"url":["https://hackage.haskell.org/package/haskell-lsp-0.24.0.0/haskell-lsp-0.24.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/haskell-lsp-0.24.0.0.tar.gz"],"sha256":"2fde650a1f7405c663cb3ca4224bae5be63c387d83d3e8c8c60086e47942823f","cabal-sha256":"b6ba8a85f7b008d17d943f407d7d098f35cf7793883fb1b81902dfa8d4c01cc7"},"version":"0.24.0.0"},
"haskell-lsp-types": {"dependencies":["aeson","base","binary","bytestring","data-default","deepseq","filepath","hashable","lens","network-uri","scientific","text","unordered-containers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/haskell-lsp-types-0.24.0.0/haskell-lsp-types-0.24.0.0.tar.gz"},"name":"haskell-lsp-types","pinned":{"url":["https://hackage.haskell.org/package/haskell-lsp-types-0.24.0.0/haskell-lsp-types-0.24.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/haskell-lsp-types-0.24.0.0.tar.gz"],"sha256":"764d51c6b0e52bbafe042f10ad69fdaddcc31007d78a6fada6be24ddc513f3dc","cabal-sha256":"cf59e0cb3d32d4cc9c29329de43704abb62e6a57d994bfef058b4d6db184cce2"},"version":"0.24.0.0"},
"haskell-src": {"dependencies":["array","base","happy","pretty","syb"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/haskell-src-1.0.3.1/haskell-src-1.0.3.1.tar.gz"},"name":"haskell-src","pinned":{"url":["https://hackage.haskell.org/package/haskell-src-1.0.3.1/haskell-src-1.0.3.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/haskell-src-1.0.3.1.tar.gz"],"sha256":"869cc710004c2161470d8a788dab96d2cff054fa106c301be6689109f57e5132","cabal-sha256":"6601bb4165fc5d66fb9ffc95912f770ceb1b59fce2248dd3cab4a4fa6a8b5942"},"version":"1.0.3.1"},
"haskell-src-exts": {"dependencies":["array","base","ghc-prim","happy","pretty"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/haskell-src-exts-1.23.1/haskell-src-exts-1.23.1.tar.gz"},"name":"haskell-src-exts","pinned":{"url":["https://hackage.haskell.org/package/haskell-src-exts-1.23.1/haskell-src-exts-1.23.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/haskell-src-exts-1.23.1.tar.gz"],"sha256":"67853047169fff7d3e5d87acef214ee185a6ab8c6a104ed9c59e389574cf6c05","cabal-sha256":"339841f4a6710e915a0bac8df18d8a454c11d626131aee4d05b6be150b7f863e"},"version":"1.23.1"},
"heaps": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/heaps-0.4/heaps-0.4.tar.gz"},"name":"heaps","pinned":{"url":["https://hackage.haskell.org/package/heaps-0.4/heaps-0.4.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/heaps-0.4.tar.gz"],"sha256":"89329df8b95ae99ef272e41e7a2d0fe2f1bb7eacfcc34bc01664414b33067cfd","cabal-sha256":"66b19fcd813b0e4db3e0bac541bd46606c3b13d3d081d9f9666f4be0f5ff14b8"},"version":"0.4"},
@ -140,7 +138,7 @@
"http-media": {"dependencies":["base","bytestring","case-insensitive","containers","utf8-string"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/http-media-0.8.0.0/http-media-0.8.0.0.tar.gz"},"name":"http-media","pinned":{"url":["https://hackage.haskell.org/package/http-media-0.8.0.0/http-media-0.8.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/http-media-0.8.0.0.tar.gz"],"sha256":"398279d1dff5b60cd8b8c650caceca248ea1184d694bedf5df5426963b2b9c53","cabal-sha256":"f670eb77f9f30f7bfc20f71c2df816662bf8ff972ff732f50c48a1a7da4dc371"},"version":"0.8.0.0"},
"http-types": {"dependencies":["array","base","bytestring","case-insensitive","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/http-types-0.12.3/http-types-0.12.3.tar.gz"},"name":"http-types","pinned":{"url":["https://hackage.haskell.org/package/http-types-0.12.3/http-types-0.12.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/http-types-0.12.3.tar.gz"],"sha256":"4e8a4a66477459fa436a331c75e46857ec8026283df984d54f90576cd3024016","cabal-sha256":"f35229edb1bc7b3ae27f961b2407dadb5bfa69d43a8f5337ab46cdc79ca4afe9"},"version":"0.12.3"},
"indexed-profunctors": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/indexed-profunctors-0.1.1/indexed-profunctors-0.1.1.tar.gz"},"name":"indexed-profunctors","pinned":{"url":["https://hackage.haskell.org/package/indexed-profunctors-0.1.1/indexed-profunctors-0.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/indexed-profunctors-0.1.1.tar.gz"],"sha256":"5aba418a92a4f75efc626de7c0e4d88ed57033e0de0f2743ce6d9c9ef7626cb1","cabal-sha256":"363e1bcd89f8498a770ae783e8388fcce35e6515b4c38dca47327aad81196a7b"},"version":"0.1.1"},
"indexed-traversable": {"dependencies":["array","base","containers","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/indexed-traversable-0.1.1/indexed-traversable-0.1.1.tar.gz"},"name":"indexed-traversable","pinned":{"url":["https://hackage.haskell.org/package/indexed-traversable-0.1.1/indexed-traversable-0.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/indexed-traversable-0.1.1.tar.gz"],"sha256":"7ac36ae3153cbe7a8e99eacffd065367b87544953cc92997f424a150db468139","cabal-sha256":"e330ec1ab336ee2fb1eff117ebe3480d1663396fecd981f185b7123dc7941ae1"},"version":"0.1.1"},
"indexed-traversable": {"dependencies":["array","base","containers","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/indexed-traversable-0.1.1/indexed-traversable-0.1.1.tar.gz"},"name":"indexed-traversable","pinned":{"url":["https://hackage.haskell.org/package/indexed-traversable-0.1.1/indexed-traversable-0.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/indexed-traversable-0.1.1.tar.gz"],"sha256":"7ac36ae3153cbe7a8e99eacffd065367b87544953cc92997f424a150db468139","cabal-sha256":"e4602357513aa3b146546227732e6e5698392f4324ab690e109cc05676ba3b4f"},"version":"0.1.1"},
"insert-ordered-containers": {"dependencies":["aeson","base","base-compat","deepseq","hashable","indexed-traversable","lens","optics-core","optics-extra","semigroupoids","semigroups","text","transformers","unordered-containers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/insert-ordered-containers-0.2.5/insert-ordered-containers-0.2.5.tar.gz"},"name":"insert-ordered-containers","pinned":{"url":["https://hackage.haskell.org/package/insert-ordered-containers-0.2.5/insert-ordered-containers-0.2.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/insert-ordered-containers-0.2.5.tar.gz"],"sha256":"3e3051ec8591bbe05a030b9033d0d882895396d52edc5f77fde52316ff7b632d","cabal-sha256":"b2cafd117efe1f8055284a7ac0d79c688f2196a91bb0c19221b32c004885adcd"},"version":"0.2.5"},
"integer-logarithms": {"dependencies":["array","base","ghc-prim","integer-simple"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/integer-logarithms-1.0.3.1/integer-logarithms-1.0.3.1.tar.gz"},"name":"integer-logarithms","pinned":{"url":["https://hackage.haskell.org/package/integer-logarithms-1.0.3.1/integer-logarithms-1.0.3.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/integer-logarithms-1.0.3.1.tar.gz"],"sha256":"9b0a9f9fab609b15cd015865721fb05f744a1bc77ae92fd133872de528bbea7f","cabal-sha256":"888fb6c4fbd79ed2e8f8b94b61bccac25f7fab2b13b32b496e86828bc60b17cf"},"version":"1.0.3.1"},
"integer-simple": {"dependencies":["ghc-prim"],"location":{"type":"core"},"name":"integer-simple","version":"0.1.1.1"},
@ -149,7 +147,7 @@
"js-flot": {"dependencies":["base","file-embed"],"location":{"type":"vendored"},"name":"js-flot","version":"0.8.3"},
"js-jquery": {"dependencies":["base","file-embed"],"location":{"type":"vendored"},"name":"js-jquery","version":"3.3.1"},
"jwt": {"dependencies":["aeson","base","bytestring","containers","cryptonite","http-types","memory","network-uri","scientific","semigroups","text","time","unordered-containers","vector","x509","x509-store"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/jwt-0.10.0/jwt-0.10.0.tar.gz"},"name":"jwt","pinned":{"url":["https://hackage.haskell.org/package/jwt-0.10.0/jwt-0.10.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/jwt-0.10.0.tar.gz"],"sha256":"bc1c7b18ba3366dd537f0ccd46e887e5892591a2a60b5ccbc15289ea70c52ea8","cabal-sha256":"2cb02121a9aab3b2d8d927cca78e0ebd6e43661a73cc65024162e9d1096ca5d1"},"version":"0.10.0"},
"kan-extensions": {"dependencies":["adjunctions","array","base","comonad","containers","contravariant","distributive","free","invariant","mtl","profunctors","semigroupoids","tagged","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/kan-extensions-5.2.2/kan-extensions-5.2.2.tar.gz"},"name":"kan-extensions","pinned":{"url":["https://hackage.haskell.org/package/kan-extensions-5.2.2/kan-extensions-5.2.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/kan-extensions-5.2.2.tar.gz"],"sha256":"3bf3ce4cacf9c57c03e9a1c36ecb1baf5d8356730853a2592d2112d1248498a0","cabal-sha256":"c9ad889deb63a2c6a0af95bc6ccefadd12633b711097e36af32935d54b901179"},"version":"5.2.2"},
"kan-extensions": {"dependencies":["adjunctions","array","base","comonad","containers","contravariant","distributive","free","invariant","mtl","profunctors","semigroupoids","tagged","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/kan-extensions-5.2.2/kan-extensions-5.2.2.tar.gz"},"name":"kan-extensions","pinned":{"url":["https://hackage.haskell.org/package/kan-extensions-5.2.2/kan-extensions-5.2.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/kan-extensions-5.2.2.tar.gz"],"sha256":"3bf3ce4cacf9c57c03e9a1c36ecb1baf5d8356730853a2592d2112d1248498a0","cabal-sha256":"474e5ef5dfdd42ca2d638322a049060dbd3be9261db8cd3ecdac1d8a849c8ee9"},"version":"5.2.2"},
"language-c": {"dependencies":["alex","array","base","bytestring","containers","deepseq","directory","filepath","happy","mtl","pretty","process"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/language-c-0.9.0.1/language-c-0.9.0.1.tar.gz"},"name":"language-c","pinned":{"url":["https://hackage.haskell.org/package/language-c-0.9.0.1/language-c-0.9.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/language-c-0.9.0.1.tar.gz"],"sha256":"d44cbb963fdea53ee9850af767a01137666044702938b57fda0c17644719d207","cabal-sha256":"7a1c57e8f9c29e94bcd5c748d99e4479a73bd8560cc0affd838f3b2d1bbc0384"},"version":"0.9.0.1"},
"lens": {"dependencies":["Cabal","array","base","base-orphans","bifunctors","bytestring","cabal-doctest","call-stack","comonad","containers","contravariant","distributive","exceptions","filepath","free","ghc-prim","hashable","kan-extensions","mtl","parallel","profunctors","reflection","semigroupoids","tagged","template-haskell","text","th-abstraction","transformers","transformers-compat","unordered-containers","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/lens-4.19.2/lens-4.19.2.tar.gz"},"name":"lens","pinned":{"url":["https://hackage.haskell.org/package/lens-4.19.2/lens-4.19.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/lens-4.19.2.tar.gz"],"sha256":"52f858ae3971a5104cdba5e81a27d154fda11fe65a54a4ac328c85904bdec23b","cabal-sha256":"d4d704141d7c322bbfb746157b0709f3b966dfec92421f571c34069893af08cc"},"version":"4.19.2"},
"lens-aeson": {"dependencies":["aeson","attoparsec","base","bytestring","lens","scientific","text","unordered-containers","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/lens-aeson-1.1.1/lens-aeson-1.1.1.tar.gz"},"name":"lens-aeson","pinned":{"url":["https://hackage.haskell.org/package/lens-aeson-1.1.1/lens-aeson-1.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/lens-aeson-1.1.1.tar.gz"],"sha256":"6fd7e1a83e97c91289cc26401159edb5f3443dce04575afc86c3af222e6267bc","cabal-sha256":"0028a960c8308f7ab3fbebc1823ea8e8124d7c15b158d4fcb06213444b8bc69a"},"version":"1.1.1"},
@ -158,7 +156,7 @@
"lifted-base": {"dependencies":["base","monad-control","transformers-base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/lifted-base-0.2.3.12/lifted-base-0.2.3.12.tar.gz"},"name":"lifted-base","pinned":{"url":["https://hackage.haskell.org/package/lifted-base-0.2.3.12/lifted-base-0.2.3.12.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/lifted-base-0.2.3.12.tar.gz"],"sha256":"c134a95f56750aae806e38957bb03c59627cda16034af9e00a02b699474317c5","cabal-sha256":"e94ad0692c9c5d85c373e508f23654f2da8ac8c3e475c2b65ffbc04fb165ad69"},"version":"0.2.3.12"},
"lsp": {"dependencies":["aeson","async","attoparsec","base","bytestring","containers","data-default","dependent-map","directory","filepath","hashable","hslogger","lens","lsp-types","mtl","network-uri","random","scientific","sorted-list","stm","text","time","transformers","unliftio-core","unordered-containers","uuid"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/lsp-1.2.0.0/lsp-1.2.0.0.tar.gz"},"name":"lsp","pinned":{"url":["https://hackage.haskell.org/package/lsp-1.2.0.0/lsp-1.2.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/lsp-1.2.0.0.tar.gz"],"sha256":"669115cbb0ed0c6a43ecab5e0d063e0231c4c637ed904e43ac3341da09d24831","cabal-sha256":"c51e071444ab95d59a30c463030bb4272f8298be1362a11f61a837cf850f0bac"},"version":"1.2.0.0"},
"lsp-test": {"dependencies":["Diff","Glob","aeson","aeson-pretty","ansi-terminal","async","base","bytestring","conduit","conduit-parse","containers","data-default","directory","filepath","lens","lsp-types","mtl","parser-combinators","process","some","text","time","transformers","unix","unordered-containers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/lsp-test-0.14.0.0/lsp-test-0.14.0.0.tar.gz"},"name":"lsp-test","pinned":{"url":["https://hackage.haskell.org/package/lsp-test-0.14.0.0/lsp-test-0.14.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/lsp-test-0.14.0.0.tar.gz"],"sha256":"99ddd75b9250612342ca87f3485751d17ee725996acca5e66ba60d42556446dd","cabal-sha256":"cdbfe198c4b67b0e37e5cd304092e31dd52995a7b2719084031883d843cf6e88"},"version":"0.14.0.0"},
"lsp-types": {"dependencies":["aeson","base","binary","bytestring","containers","data-default","deepseq","dependent-sum","dependent-sum-template","directory","filepath","hashable","hslogger","lens","network-uri","rope-utf16-splay","scientific","some","template-haskell","temporary","text","unordered-containers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/lsp-types-1.2.0.0/lsp-types-1.2.0.0.tar.gz"},"name":"lsp-types","pinned":{"url":["https://hackage.haskell.org/package/lsp-types-1.2.0.0/lsp-types-1.2.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/lsp-types-1.2.0.0.tar.gz"],"sha256":"637a85878d7b8c895311eb6878f19c43038ef93db1e4de4820b04fa7bc30b4ab","cabal-sha256":"b76ac9911d3d8d48db35ed2dbf02b43006239daba314925aaf602b4e825737c8"},"version":"1.2.0.0"},
"lsp-types": {"dependencies":["aeson","base","binary","bytestring","containers","data-default","deepseq","dependent-sum","dependent-sum-template","directory","filepath","hashable","hslogger","lens","network-uri","rope-utf16-splay","scientific","some","template-haskell","temporary","text","unordered-containers"],"location":{"type":"vendored"},"name":"lsp-types","version":"1.2.0.0"},
"main-tester": {"dependencies":["base","bytestring","directory"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/main-tester-0.2.0.1/main-tester-0.2.0.1.tar.gz"},"name":"main-tester","pinned":{"url":["https://hackage.haskell.org/package/main-tester-0.2.0.1/main-tester-0.2.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/main-tester-0.2.0.1.tar.gz"],"sha256":"cf06f5934e374e1972f2cc76701c03d67c5536034d9ad32cace4e03819a57842","cabal-sha256":"49eab84f96bb70e1530f4a256d9c41a7b4175c8c372b68e900074a61e9d1f073"},"version":"0.2.0.1"},
"managed": {"dependencies":["base","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/managed-1.0.8/managed-1.0.8.tar.gz"},"name":"managed","pinned":{"url":["https://hackage.haskell.org/package/managed-1.0.8/managed-1.0.8.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/managed-1.0.8.tar.gz"],"sha256":"687c9bc525c4500afd731fc1310e083c9dfca2eaeb7c1a738d8f33e592779f03","cabal-sha256":"7d2d73f62b9b101a092d793bf890850361fb0f3246f91102ffe393f90a7a60e3"},"version":"1.0.8"},
"math-functions": {"dependencies":["base","data-default-class","deepseq","primitive","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/math-functions-0.3.4.2/math-functions-0.3.4.2.tar.gz"},"name":"math-functions","pinned":{"url":["https://hackage.haskell.org/package/math-functions-0.3.4.2/math-functions-0.3.4.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/math-functions-0.3.4.2.tar.gz"],"sha256":"c1e50ac0d23492b684cce33a9a979e1315ac144175b54f82eade9b8b1885c1a3","cabal-sha256":"5d942f0d6478c2a6b22049c033943538f8dd357c66ff874d328082136433cafb"},"version":"0.3.4.2"},
@ -169,7 +167,7 @@
"monad-control": {"dependencies":["base","stm","transformers","transformers-base","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/monad-control-1.0.2.3/monad-control-1.0.2.3.tar.gz"},"name":"monad-control","pinned":{"url":["https://hackage.haskell.org/package/monad-control-1.0.2.3/monad-control-1.0.2.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/monad-control-1.0.2.3.tar.gz"],"sha256":"6c1034189d237ae45368c70f0e68f714dd3beda715dd265b6c8a99fcc64022b1","cabal-sha256":"a3ae888d2fed2e2a0ca33ae11e2480219e07312bccf1a02ffe2ba2e3ec5913ee"},"version":"1.0.2.3"},
"monad-logger": {"dependencies":["base","bytestring","conduit","conduit-extra","exceptions","fast-logger","lifted-base","monad-control","monad-loops","mtl","resourcet","stm","stm-chans","template-haskell","text","transformers","transformers-base","transformers-compat","unliftio-core"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/monad-logger-0.3.36/monad-logger-0.3.36.tar.gz"},"name":"monad-logger","pinned":{"url":["https://hackage.haskell.org/package/monad-logger-0.3.36/monad-logger-0.3.36.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/monad-logger-0.3.36.tar.gz"],"sha256":"706d403f37a84d87ac83b79320e18f55cf15739daf4327aac411ce17c0043c8b","cabal-sha256":"f66f7d5ce7b7f43e98efdb90f9c790fe022526bb9e1ba80060b8087e76e131dc"},"version":"0.3.36"},
"monad-loops": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/monad-loops-0.4.3/monad-loops-0.4.3.tar.gz"},"name":"monad-loops","pinned":{"url":["https://hackage.haskell.org/package/monad-loops-0.4.3/monad-loops-0.4.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/monad-loops-0.4.3.tar.gz"],"sha256":"7eaaaf6bc43661e9e86e310ff8c56fbea16eb6bf13c31a2e28103138ac164c18","cabal-sha256":"ada4f1295ece07f9a7398bc5b40c4532f95a733a8604d2a2f57f05f878766df2"},"version":"0.4.3"},
"mono-traversable": {"dependencies":["base","bytestring","containers","hashable","split","text","transformers","unordered-containers","vector","vector-algorithms"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/mono-traversable-1.0.15.1/mono-traversable-1.0.15.1.tar.gz"},"name":"mono-traversable","pinned":{"url":["https://hackage.haskell.org/package/mono-traversable-1.0.15.1/mono-traversable-1.0.15.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/mono-traversable-1.0.15.1.tar.gz"],"sha256":"c2df5b79ed2f88f2ee313e57c1d591d4463788e20d39e439297eec5ba5835ddf","cabal-sha256":"cad0e8681cd6c96d3303867fc68c80e2f5d55c2c4bf5277c06ca74402fda61c8"},"version":"1.0.15.1"},
"mono-traversable": {"dependencies":["base","bytestring","containers","hashable","split","text","transformers","unordered-containers","vector","vector-algorithms"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/mono-traversable-1.0.15.1/mono-traversable-1.0.15.1.tar.gz"},"name":"mono-traversable","pinned":{"url":["https://hackage.haskell.org/package/mono-traversable-1.0.15.1/mono-traversable-1.0.15.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/mono-traversable-1.0.15.1.tar.gz"],"sha256":"c2df5b79ed2f88f2ee313e57c1d591d4463788e20d39e439297eec5ba5835ddf","cabal-sha256":"9ea638260fb4ea04ef138b9954922531f61e50df427565ed6969138cac77ffaf"},"version":"1.0.15.1"},
"monoid-subclasses": {"dependencies":["base","bytestring","containers","primes","text","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/monoid-subclasses-1.1/monoid-subclasses-1.1.tar.gz"},"name":"monoid-subclasses","pinned":{"url":["https://hackage.haskell.org/package/monoid-subclasses-1.1/monoid-subclasses-1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/monoid-subclasses-1.1.tar.gz"],"sha256":"e40effb85b24eb44ac4c2986f6ff952a73373fa3eaa72155106114de6ecc60af","cabal-sha256":"c8714abf6d70f9c71a187f460e5e72ae8b17ba59916a21866f2821cc78ac5fe8"},"version":"1.1"},
"mtl": {"dependencies":[],"location":{"type":"core"},"name":"mtl","version":"2.2.2"},
"mwc-random": {"dependencies":["base","math-functions","primitive","random","time","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/mwc-random-0.15.0.1/mwc-random-0.15.0.1.tar.gz"},"name":"mwc-random","pinned":{"url":["https://hackage.haskell.org/package/mwc-random-0.15.0.1/mwc-random-0.15.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/mwc-random-0.15.0.1.tar.gz"],"sha256":"030b05f658f2f574dd073e50338c8982a4cc8cbd2fa7111548539c05c92b0cdd","cabal-sha256":"48e4b01a7447671b8bd13957de65f19ef41ee0376083c0c501e179e68768276a"},"version":"0.15.0.1"},
@ -186,8 +184,8 @@
"optics-extra": {"dependencies":["array","base","bytestring","containers","hashable","indexed-profunctors","mtl","optics-core","text","transformers","unordered-containers","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/optics-extra-0.3/optics-extra-0.3.tar.gz"},"name":"optics-extra","pinned":{"url":["https://hackage.haskell.org/package/optics-extra-0.3/optics-extra-0.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/optics-extra-0.3.tar.gz"],"sha256":"a4d6155814111a5c6ce89640915ba5987296fec3cecc766ece3d4112abfd7697","cabal-sha256":"68c3dd038cb1b9a43107b645e33adfd14f085f5923ad01b42d222ee1b6aaa38f"},"version":"0.3"},
"optics-th": {"dependencies":["base","containers","mtl","optics-core","template-haskell","th-abstraction","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/optics-th-0.3.0.2/optics-th-0.3.0.2.tar.gz"},"name":"optics-th","pinned":{"url":["https://hackage.haskell.org/package/optics-th-0.3.0.2/optics-th-0.3.0.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/optics-th-0.3.0.2.tar.gz"],"sha256":"80f0cbb1cda044631ef421a0112e2d9a9868c22d95e845d97902d0fbf822b1d7","cabal-sha256":"e786f290c237a3236eda8814957da882227c05ed063d865d4ab1af08d638244f"},"version":"0.3.0.2"},
"optional-args": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/optional-args-1.0.2/optional-args-1.0.2.tar.gz"},"name":"optional-args","pinned":{"url":["https://hackage.haskell.org/package/optional-args-1.0.2/optional-args-1.0.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/optional-args-1.0.2.tar.gz"],"sha256":"2e3454ad77cba80b15c02dbe1915889fafa81a22deb7fe5e7e01b0dd8d85b0e4","cabal-sha256":"83f6a4c838bf011e85ea5573bfd4d7f8a8516d97c64d07135b1713526135aa39"},"version":"1.0.2"},
"optparse-applicative": {"dependencies":["ansi-wl-pprint","base","process","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/optparse-applicative-0.16.1.0/optparse-applicative-0.16.1.0.tar.gz"},"name":"optparse-applicative","pinned":{"url":["https://hackage.haskell.org/package/optparse-applicative-0.16.1.0/optparse-applicative-0.16.1.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/optparse-applicative-0.16.1.0.tar.gz"],"sha256":"6205278362f333c52256b9dd3edf5f8fe0f84f00cb9ee000291089f6eaccd69a","cabal-sha256":"d410cc76e288b93d4ee7e06addc0381a7eaea43bcee0c3ced03f05cadec2f2fc"},"version":"0.16.1.0"},
"optparse-generic": {"dependencies":["Only","base","bytestring","optparse-applicative","system-filepath","text","time","transformers","void"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/optparse-generic-1.4.4/optparse-generic-1.4.4.tar.gz"},"name":"optparse-generic","pinned":{"url":["https://hackage.haskell.org/package/optparse-generic-1.4.4/optparse-generic-1.4.4.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/optparse-generic-1.4.4.tar.gz"],"sha256":"e44853c0a3def2556cec31337db411d6404d7f81d505662f8ebac68e119bc077","cabal-sha256":"e14b67cd0fbb618dc12a8d8e94128f42971083b7de4b4cd4157aa82de8726b93"},"version":"1.4.4"},
"optparse-applicative": {"dependencies":["ansi-wl-pprint","base","process","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/optparse-applicative-0.16.1.0/optparse-applicative-0.16.1.0.tar.gz"},"name":"optparse-applicative","pinned":{"url":["https://hackage.haskell.org/package/optparse-applicative-0.16.1.0/optparse-applicative-0.16.1.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/optparse-applicative-0.16.1.0.tar.gz"],"sha256":"6205278362f333c52256b9dd3edf5f8fe0f84f00cb9ee000291089f6eaccd69a","cabal-sha256":"16ebd7054b2265c1aad16c1d19dc503695fbfc67b35203d9952fd577d08c0110"},"version":"0.16.1.0"},
"optparse-generic": {"dependencies":["Only","base","bytestring","optparse-applicative","system-filepath","text","time","transformers","void"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/optparse-generic-1.4.4/optparse-generic-1.4.4.tar.gz"},"name":"optparse-generic","pinned":{"url":["https://hackage.haskell.org/package/optparse-generic-1.4.4/optparse-generic-1.4.4.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/optparse-generic-1.4.4.tar.gz"],"sha256":"e44853c0a3def2556cec31337db411d6404d7f81d505662f8ebac68e119bc077","cabal-sha256":"2c5316378e1a0d919d123d813a918e9a60d32c0a335d7f968792740e52425d9c"},"version":"1.4.4"},
"parallel": {"dependencies":["array","base","containers","deepseq","ghc-prim"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/parallel-3.2.2.0/parallel-3.2.2.0.tar.gz"},"name":"parallel","pinned":{"url":["https://hackage.haskell.org/package/parallel-3.2.2.0/parallel-3.2.2.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/parallel-3.2.2.0.tar.gz"],"sha256":"170453a71a2a8b31cca63125533f7771d7debeb639700bdabdd779c34d8a6ef6","cabal-sha256":"421ce1717610bab82969572b96be89d83ea8d8afe7751cb54d80b996fff063d3"},"version":"3.2.2.0"},
"parameterized": {"dependencies":["base","data-diverse","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/parameterized-0.5.0.0/parameterized-0.5.0.0.tar.gz"},"name":"parameterized","pinned":{"url":["https://hackage.haskell.org/package/parameterized-0.5.0.0/parameterized-0.5.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/parameterized-0.5.0.0.tar.gz"],"sha256":"d76bc473c671f3c448cc0683ec44f4495cb21938ab27a8e2c35a94683a373346","cabal-sha256":"880717fbb958de1bac015f0a375ab6636f162a72483d987a11e305da6fac6c97"},"version":"0.5.0.0"},
"parsec": {"dependencies":[],"location":{"type":"core"},"name":"parsec","version":"3.1.14.0"},
@ -196,7 +194,7 @@
"path": {"dependencies":["aeson","base","deepseq","exceptions","filepath","hashable","template-haskell","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/path-0.8.0/path-0.8.0.tar.gz"},"name":"path","pinned":{"url":["https://hackage.haskell.org/package/path-0.8.0/path-0.8.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/path-0.8.0.tar.gz"],"sha256":"24cb49bb585f33a3b334ab55cb9bac251b66afdb617b71a20dbaeb820351fa6f","cabal-sha256":"4a522e0a8c0f54bd3d1e5690b22e29c35a7dee91cc2caff68bfe2a5c49ea700b"},"version":"0.8.0"},
"path-io": {"dependencies":["base","containers","directory","dlist","exceptions","filepath","path","temporary","time","transformers","unix-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/path-io-1.6.3/path-io-1.6.3.tar.gz"},"name":"path-io","pinned":{"url":["https://hackage.haskell.org/package/path-io-1.6.3/path-io-1.6.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/path-io-1.6.3.tar.gz"],"sha256":"b604737dd6949cddb44e145bae41f1babafa90441117e025b80375e42022ccb6","cabal-sha256":"0f98adf7869571dd471725bb100e062ba9a7dd36c0bd9d00ae620ce9bbe7f743"},"version":"1.6.3"},
"pem": {"dependencies":["base","basement","bytestring","memory"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/pem-0.2.4/pem-0.2.4.tar.gz"},"name":"pem","pinned":{"url":["https://hackage.haskell.org/package/pem-0.2.4/pem-0.2.4.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/pem-0.2.4.tar.gz"],"sha256":"770c4c1b9cd24b3db7f511f8a48404a0d098999e28573c3743a8a296bb96f8d4","cabal-sha256":"cc8e62118b783e284dc0fa032f54fe386a3861a948ec88079370a433c103a705"},"version":"0.2.4"},
"pipes": {"dependencies":["base","exceptions","mmorph","mtl","transformers","void"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/pipes-4.3.16/pipes-4.3.16.tar.gz"},"name":"pipes","pinned":{"url":["https://hackage.haskell.org/package/pipes-4.3.16/pipes-4.3.16.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/pipes-4.3.16.tar.gz"],"sha256":"f4e16ecf010fd681a56e6216ab1bd429f3c9bc962ec032e32cfd23e374e97498","cabal-sha256":"95225dd8c67ee9c5973feefb3d7d7247f53ba9fdbf921cc1f4d2aabff3e1850e"},"version":"4.3.16"},
"pipes": {"dependencies":["base","exceptions","mmorph","mtl","transformers","void"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/pipes-4.3.16/pipes-4.3.16.tar.gz"},"name":"pipes","pinned":{"url":["https://hackage.haskell.org/package/pipes-4.3.16/pipes-4.3.16.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/pipes-4.3.16.tar.gz"],"sha256":"f4e16ecf010fd681a56e6216ab1bd429f3c9bc962ec032e32cfd23e374e97498","cabal-sha256":"b07ee693958a52a216f3b64e1622adfcad36f5fc90dfc1fb9362ebb1729f50ac"},"version":"4.3.16"},
"polyparse": {"dependencies":["base","bytestring","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/polyparse-1.13/polyparse-1.13.tar.gz"},"name":"polyparse","pinned":{"url":["https://hackage.haskell.org/package/polyparse-1.13/polyparse-1.13.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/polyparse-1.13.tar.gz"],"sha256":"1c4c72980e1e5a4f07fea65ca08b2399581d2a6aa21eb1078f7ad286c279707b","cabal-sha256":"d43dc209be86cbc7eb5cb98cd80ad36c8b035397e9dd200f669b19d20f37b8d8"},"version":"1.13"},
"pretty": {"dependencies":[],"location":{"type":"core"},"name":"pretty","version":"1.1.3.6"},
"pretty-show": {"dependencies":["array","base","filepath","ghc-prim","happy","haskell-lexer","pretty","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/pretty-show-1.10/pretty-show-1.10.tar.gz"},"name":"pretty-show","pinned":{"url":["https://hackage.haskell.org/package/pretty-show-1.10/pretty-show-1.10.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/pretty-show-1.10.tar.gz"],"sha256":"307f9086e0b063d439dc4f513e36a145e8a57f23de448aefae2a6c00f6da6fd2","cabal-sha256":"bfef8da0ac4db4fc7f41edfec9e9a701ac206418d70702bff1e40f20d6a2b1f1"},"version":"1.10"},
@ -205,12 +203,12 @@
"primes": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/primes-0.2.1.0/primes-0.2.1.0.tar.gz"},"name":"primes","pinned":{"url":["https://hackage.haskell.org/package/primes-0.2.1.0/primes-0.2.1.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/primes-0.2.1.0.tar.gz"],"sha256":"74d66558fb638ea4d31eae2fe1a294cb5a9d64491314305d74a11d93f277c65b","cabal-sha256":"94885df2e13153e439ca9c6eb1893726776ca7022128fe860278294bad49d6a9"},"version":"0.2.1.0"},
"primitive": {"dependencies":["base","deepseq","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/primitive-0.7.1.0/primitive-0.7.1.0.tar.gz"},"name":"primitive","pinned":{"url":["https://hackage.haskell.org/package/primitive-0.7.1.0/primitive-0.7.1.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/primitive-0.7.1.0.tar.gz"],"sha256":"6bebecfdf2a57787d9fd5231bfd612b65a92edd7b33a973b2a0f11312b89a3f0","cabal-sha256":"29de6bfd0cf8ba023ceb806203dfbec0e51e3524e75ffe41056f70b4229c6f0f"},"version":"0.7.1.0"},
"process": {"dependencies":[],"location":{"type":"core"},"name":"process","version":"1.6.9.0"},
"profunctors": {"dependencies":["base","base-orphans","bifunctors","comonad","contravariant","distributive","tagged","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/profunctors-5.6.2/profunctors-5.6.2.tar.gz"},"name":"profunctors","pinned":{"url":["https://hackage.haskell.org/package/profunctors-5.6.2/profunctors-5.6.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/profunctors-5.6.2.tar.gz"],"sha256":"65955d7b50525a4a3bccdab1d982d2ae342897fd38140d5a94b5ef3800d8c92a","cabal-sha256":"4db306297d827cf65a32d9124d6f1a23105479ebb1988783006578bc5d4209da"},"version":"5.6.2"},
"profunctors": {"dependencies":["base","base-orphans","bifunctors","comonad","contravariant","distributive","tagged","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/profunctors-5.6.2/profunctors-5.6.2.tar.gz"},"name":"profunctors","pinned":{"url":["https://hackage.haskell.org/package/profunctors-5.6.2/profunctors-5.6.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/profunctors-5.6.2.tar.gz"],"sha256":"65955d7b50525a4a3bccdab1d982d2ae342897fd38140d5a94b5ef3800d8c92a","cabal-sha256":"d91e81cf7fc186d616543d5ca7aad78b1c45c692486ca75a3f022466ff8e4bad"},"version":"5.6.2"},
"proto3-suite": {"dependencies":["QuickCheck","aeson","aeson-pretty","attoparsec","base","base64-bytestring","binary","bytestring","cereal","containers","contravariant","deepseq","filepath","foldl","hashable","haskell-src","insert-ordered-containers","lens","mtl","neat-interpolation","optparse-applicative","optparse-generic","parsec","parsers","pretty","pretty-show","proto3-wire","quickcheck-instances","range-set-list","safe","swagger2","system-filepath","text","transformers","turtle","vector"],"location":{"type":"vendored"},"name":"proto3-suite","version":"0.4.2.0"},
"proto3-wire": {"dependencies":["QuickCheck","base","bytestring","cereal","containers","deepseq","ghc-prim","hashable","parameterized","primitive","safe","text","transformers","unordered-containers","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/proto3-wire-1.2.0/proto3-wire-1.2.0.tar.gz"},"name":"proto3-wire","pinned":{"url":["https://hackage.haskell.org/package/proto3-wire-1.2.0/proto3-wire-1.2.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/proto3-wire-1.2.0.tar.gz"],"sha256":"625a7165ede6e348ac4a9474498879e0319d3b833dbdde9153865b6909cc36f7","cabal-sha256":"898c88614ef328fe74d6abc153387a30855af7ccfcebf3b419681133e0fb9291"},"version":"1.2.0"},
"quickcheck-instances": {"dependencies":["QuickCheck","array","base","bytestring","case-insensitive","containers","data-fix","hashable","integer-logarithms","old-time","scientific","splitmix","strict","tagged","text","these","time","time-compat","transformers","transformers-compat","unordered-containers","uuid-types","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/quickcheck-instances-0.3.25.2/quickcheck-instances-0.3.25.2.tar.gz"},"name":"quickcheck-instances","pinned":{"url":["https://hackage.haskell.org/package/quickcheck-instances-0.3.25.2/quickcheck-instances-0.3.25.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/quickcheck-instances-0.3.25.2.tar.gz"],"sha256":"70ccf54c6553d6a23b4ee48dc02f1e4120cbb9a609e03af073b93541b35a1846","cabal-sha256":"58e409ce9d6fd8b31365acea41178ec01a1b44284822984aeeefb82f07c2ba5e"},"version":"0.3.25.2"},
"quickcheck-instances": {"dependencies":["QuickCheck","array","base","bytestring","case-insensitive","containers","data-fix","hashable","integer-logarithms","old-time","scientific","splitmix","strict","tagged","text","these","time","time-compat","transformers","transformers-compat","unordered-containers","uuid-types","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/quickcheck-instances-0.3.25.2/quickcheck-instances-0.3.25.2.tar.gz"},"name":"quickcheck-instances","pinned":{"url":["https://hackage.haskell.org/package/quickcheck-instances-0.3.25.2/quickcheck-instances-0.3.25.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/quickcheck-instances-0.3.25.2.tar.gz"],"sha256":"70ccf54c6553d6a23b4ee48dc02f1e4120cbb9a609e03af073b93541b35a1846","cabal-sha256":"083b84b91fccb3bbf22cd906f5bc731c8e6ee96c7554e892985452f2d61d4ad3"},"version":"0.3.25.2"},
"quickcheck-io": {"dependencies":["HUnit","QuickCheck","base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/quickcheck-io-0.2.0/quickcheck-io-0.2.0.tar.gz"},"name":"quickcheck-io","pinned":{"url":["https://hackage.haskell.org/package/quickcheck-io-0.2.0/quickcheck-io-0.2.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/quickcheck-io-0.2.0.tar.gz"],"sha256":"fb779119d79fe08ff4d502fb6869a70c9a8d5fd8ae0959f605c3c937efd96422","cabal-sha256":"7bf0b68fb90873825eb2e5e958c1b76126dcf984debb998e81673e6d837e0b2d"},"version":"0.2.0"},
"random": {"dependencies":["base","bytestring","deepseq","mtl","splitmix"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/random-1.2.0/random-1.2.0.tar.gz"},"name":"random","pinned":{"url":["https://hackage.haskell.org/package/random-1.2.0/random-1.2.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/random-1.2.0.tar.gz"],"sha256":"e4519cf7c058bfd5bdbe4acc782284acc9e25e74487208619ca83cbcd63fb9de","cabal-sha256":"30d72df4cc1d2fe2d445c88f0ee9d21965af7ce86660c43a6c32a6a1d90d51c9"},"version":"1.2.0"},
"random": {"dependencies":["base","bytestring","deepseq","mtl","splitmix"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/random-1.2.0/random-1.2.0.tar.gz"},"name":"random","pinned":{"url":["https://hackage.haskell.org/package/random-1.2.0/random-1.2.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/random-1.2.0.tar.gz"],"sha256":"e4519cf7c058bfd5bdbe4acc782284acc9e25e74487208619ca83cbcd63fb9de","cabal-sha256":"195506fedaa7c31c1fa2a747e9b49b4a5d1f0b09dd8f1291f23a771656faeec3"},"version":"1.2.0"},
"range-set-list": {"dependencies":["base","containers","deepseq","hashable"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/range-set-list-0.1.3.1/range-set-list-0.1.3.1.tar.gz"},"name":"range-set-list","pinned":{"url":["https://hackage.haskell.org/package/range-set-list-0.1.3.1/range-set-list-0.1.3.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/range-set-list-0.1.3.1.tar.gz"],"sha256":"12e8d9cb99a2847da32934ed7f44a5acedaa59d8fa19eff0f46aa77921460c55","cabal-sha256":"1bd9640aa97d8e1599a27a0f2e620040b4fdbc5cf2c5ff65efde0e2c18fd6521"},"version":"0.1.3.1"},
"recursion-schemes": {"dependencies":["base","base-orphans","comonad","containers","data-fix","free","template-haskell","th-abstraction","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/recursion-schemes-5.2.2.1/recursion-schemes-5.2.2.1.tar.gz"},"name":"recursion-schemes","pinned":{"url":["https://hackage.haskell.org/package/recursion-schemes-5.2.2.1/recursion-schemes-5.2.2.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/recursion-schemes-5.2.2.1.tar.gz"],"sha256":"bee32985de5560ba69ef1503eff041091ddaffd68ba8ad736a8fcd95971f02db","cabal-sha256":"fed7167e83698147d7c078bbb1fe74451f96c7c55ed9986c734d268070d85864"},"version":"5.2.2.1"},
"refact": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/refact-0.3.0.2/refact-0.3.0.2.tar.gz"},"name":"refact","pinned":{"url":["https://hackage.haskell.org/package/refact-0.3.0.2/refact-0.3.0.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/refact-0.3.0.2.tar.gz"],"sha256":"0ad029727797c8ca5d179c7abf1bfc135d86a7d72cf93785ee12ad243aeb1f6c","cabal-sha256":"4ea82b93debdc0711e1bc4b5d8989b9e19613f369ff2049da33c5250b8d33bcd"},"version":"0.3.0.2"},
@ -226,8 +224,8 @@
"safe-exceptions": {"dependencies":["base","deepseq","exceptions","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/safe-exceptions-0.1.7.1/safe-exceptions-0.1.7.1.tar.gz"},"name":"safe-exceptions","pinned":{"url":["https://hackage.haskell.org/package/safe-exceptions-0.1.7.1/safe-exceptions-0.1.7.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/safe-exceptions-0.1.7.1.tar.gz"],"sha256":"4bf6dd0a2b18279be843ece044a89248553c092bb1fc5bd7efa55c1c1d537d3e","cabal-sha256":"ccf8dacc48a8fbc8450de9d3ae6f949067bb0c96d52bb66e3044b5cd046382d5"},"version":"0.1.7.1"},
"scientific": {"dependencies":["base","binary","bytestring","containers","deepseq","hashable","integer-logarithms","integer-simple","primitive","template-haskell","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/scientific-0.3.7.0/scientific-0.3.7.0.tar.gz"},"name":"scientific","pinned":{"url":["https://hackage.haskell.org/package/scientific-0.3.7.0/scientific-0.3.7.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/scientific-0.3.7.0.tar.gz"],"sha256":"a3a121c4b3d68fb8b9f8c709ab012e48f090ed553609247a805ad070d6b343a9","cabal-sha256":"0f188a7b92780d81a2e3cf1195a3a24cfe3e7c43d0e9e0f2101a465803d68076"},"version":"0.3.7.0"},
"semialign": {"dependencies":["base","containers","hashable","semigroupoids","tagged","these","transformers","unordered-containers","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/semialign-1.1.0.1/semialign-1.1.0.1.tar.gz"},"name":"semialign","pinned":{"url":["https://hackage.haskell.org/package/semialign-1.1.0.1/semialign-1.1.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/semialign-1.1.0.1.tar.gz"],"sha256":"9810bddff641bf7446a1939e5f337e368f894d06e3995a536704b3e16b241a87","cabal-sha256":"44fa0af083af848efef9ac5c6cfa0d3a26fcb58d209942fae2ff941bf0f8cbe7"},"version":"1.1.0.1"},
"semigroupoids": {"dependencies":["base","base-orphans","bifunctors","comonad","containers","contravariant","distributive","hashable","tagged","template-haskell","transformers","transformers-compat","unordered-containers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/semigroupoids-5.3.5/semigroupoids-5.3.5.tar.gz"},"name":"semigroupoids","pinned":{"url":["https://hackage.haskell.org/package/semigroupoids-5.3.5/semigroupoids-5.3.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/semigroupoids-5.3.5.tar.gz"],"sha256":"552f18e13ef347118911c950957e4adcda0a1f948e274f29ec449cc413d3c6b0","cabal-sha256":"5ccdfc9937718901b2c4a6829381bc62ebd1368945f89b4afe3ec5d5beae6a12"},"version":"5.3.5"},
"semigroups": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/semigroups-0.19.1/semigroups-0.19.1.tar.gz"},"name":"semigroups","pinned":{"url":["https://hackage.haskell.org/package/semigroups-0.19.1/semigroups-0.19.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/semigroups-0.19.1.tar.gz"],"sha256":"79e761e64b862564a3470d5d356cb6b060b14452d675859aed3b2d1e14646648","cabal-sha256":"ecae129621e0d2f77bef2f01e4458c2e0567ab6e1f39579c61d7cec8058ebb0e"},"version":"0.19.1"},
"semigroupoids": {"dependencies":["base","base-orphans","bifunctors","comonad","containers","contravariant","distributive","hashable","tagged","template-haskell","transformers","transformers-compat","unordered-containers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/semigroupoids-5.3.5/semigroupoids-5.3.5.tar.gz"},"name":"semigroupoids","pinned":{"url":["https://hackage.haskell.org/package/semigroupoids-5.3.5/semigroupoids-5.3.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/semigroupoids-5.3.5.tar.gz"],"sha256":"552f18e13ef347118911c950957e4adcda0a1f948e274f29ec449cc413d3c6b0","cabal-sha256":"e9ad7265a3baca520054fd2f9d6b1ebe6779502dc377550c99dee43e88555a8f"},"version":"5.3.5"},
"semigroups": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/semigroups-0.19.1/semigroups-0.19.1.tar.gz"},"name":"semigroups","pinned":{"url":["https://hackage.haskell.org/package/semigroups-0.19.1/semigroups-0.19.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/semigroups-0.19.1.tar.gz"],"sha256":"79e761e64b862564a3470d5d356cb6b060b14452d675859aed3b2d1e14646648","cabal-sha256":"cd827aaba0c2b57727dedecdfcc7eec5f14719b73c7675037c73c74f642c1782"},"version":"0.19.1"},
"semver": {"dependencies":["attoparsec","base","deepseq","hashable","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/semver-0.4.0.1/semver-0.4.0.1.tar.gz"},"name":"semver","pinned":{"url":["https://hackage.haskell.org/package/semver-0.4.0.1/semver-0.4.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/semver-0.4.0.1.tar.gz"],"sha256":"7c47e326684efe407b2dc77924aa71c57c712465a9ed39c4097e6c1e1a1ff641","cabal-sha256":"a4f77491e1e7c8101e203748f6122918224590a44f81c39fefc62e27b448868d"},"version":"0.4.0.1"},
"setenv": {"dependencies":["base","unix"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/setenv-0.1.1.3/setenv-0.1.1.3.tar.gz"},"name":"setenv","pinned":{"url":["https://hackage.haskell.org/package/setenv-0.1.1.3/setenv-0.1.1.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/setenv-0.1.1.3.tar.gz"],"sha256":"e358df39afc03d5a39e2ec650652d845c85c80cc98fe331654deafb4767ecb32","cabal-sha256":"c5916ac0d2a828473cd171261328a290afe0abd799db1ac8c310682fe778c45b"},"version":"0.1.1.3"},
"shake": {"dependencies":["base","binary","bytestring","deepseq","directory","extra","file-embed","filepath","filepattern","hashable","heaps","js-dgtable","js-flot","js-jquery","primitive","process","random","template-haskell","time","transformers","unix","unordered-containers","utf8-string"],"location":{"type":"vendored"},"name":"shake","version":"0.18.5"},
@ -244,12 +242,12 @@
"stm-chans": {"dependencies":["Cabal","base","stm"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/stm-chans-3.0.0.4/stm-chans-3.0.0.4.tar.gz"},"name":"stm-chans","pinned":{"url":["https://hackage.haskell.org/package/stm-chans-3.0.0.4/stm-chans-3.0.0.4.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/stm-chans-3.0.0.4.tar.gz"],"sha256":"2344fc5bfa33d565bad7b009fc0e2c5a7a595060ba149c661f44419fc0d54738","cabal-sha256":"e2eef3cea5251628f7b2ad22c24a1e5d08b83c19be4bd886ab0d7fed58ef2a6d"},"version":"3.0.0.4"},
"stm-conduit": {"dependencies":["async","base","cereal","cereal-conduit","conduit","conduit-extra","directory","exceptions","monad-loops","resourcet","stm","stm-chans","transformers","unliftio"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/stm-conduit-4.0.1/stm-conduit-4.0.1.tar.gz"},"name":"stm-conduit","pinned":{"url":["https://hackage.haskell.org/package/stm-conduit-4.0.1/stm-conduit-4.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/stm-conduit-4.0.1.tar.gz"],"sha256":"e80e5be72a4564fa45e1e27f91c0984e12d2a736d0ceb9594350d573efee1442","cabal-sha256":"71f477c617400fb5bee74557416d7dac17dccea0663ec29bf9ca67b52703637d"},"version":"4.0.1"},
"streaming-commons": {"dependencies":["array","async","base","bytestring","directory","network","process","random","stm","text","transformers","unix","zlib"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/streaming-commons-0.2.2.1/streaming-commons-0.2.2.1.tar.gz"},"name":"streaming-commons","pinned":{"url":["https://hackage.haskell.org/package/streaming-commons-0.2.2.1/streaming-commons-0.2.2.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/streaming-commons-0.2.2.1.tar.gz"],"sha256":"306940bf4878a0b714e6746a7f934d018100efc86332c176a648014bfe1e81dd","cabal-sha256":"28abce35b48dcfb871926dad4cb37bdf737372892b4e5222abc97ca31f2ac738"},"version":"0.2.2.1"},
"strict": {"dependencies":["assoc","base","binary","bytestring","deepseq","ghc-prim","hashable","text","these","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/strict-0.4.0.1/strict-0.4.0.1.tar.gz"},"name":"strict","pinned":{"url":["https://hackage.haskell.org/package/strict-0.4.0.1/strict-0.4.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/strict-0.4.0.1.tar.gz"],"sha256":"dff6abc08ad637e51891bb8b475778c40926c51219eda60fd64f0d9680226241","cabal-sha256":"08cf72ad570fddfe3b3424117bf20a303a1fb21047b40c1d6c8004c0e3e02a0b"},"version":"0.4.0.1"},
"strict": {"dependencies":["assoc","base","binary","bytestring","deepseq","ghc-prim","hashable","text","these","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/strict-0.4.0.1/strict-0.4.0.1.tar.gz"},"name":"strict","pinned":{"url":["https://hackage.haskell.org/package/strict-0.4.0.1/strict-0.4.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/strict-0.4.0.1.tar.gz"],"sha256":"dff6abc08ad637e51891bb8b475778c40926c51219eda60fd64f0d9680226241","cabal-sha256":"50187e750751a258efea12ef2979e16a014a953c15bf4c2fca2f1168a44a5a12"},"version":"0.4.0.1"},
"swagger2": {"dependencies":["Cabal","QuickCheck","aeson","aeson-pretty","base","base-compat-batteries","bytestring","cabal-doctest","containers","cookie","generics-sop","hashable","http-media","insert-ordered-containers","lens","mtl","network","optics-core","optics-th","scientific","template-haskell","text","time","transformers","transformers-compat","unordered-containers","uuid-types","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/swagger2-2.6/swagger2-2.6.tar.gz"},"name":"swagger2","pinned":{"url":["https://hackage.haskell.org/package/swagger2-2.6/swagger2-2.6.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/swagger2-2.6.tar.gz"],"sha256":"682afe3b43d6b7c394cab330bb48692b8045dff8db3e8913bbfabee0fa8c706e","cabal-sha256":"12c0752b397da71e286a2f8998dfd842376df56f624deb0ad8d858c6e20cb8bd"},"version":"2.6"},
"syb": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/syb-0.7.2.1/syb-0.7.2.1.tar.gz"},"name":"syb","pinned":{"url":["https://hackage.haskell.org/package/syb-0.7.2.1/syb-0.7.2.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/syb-0.7.2.1.tar.gz"],"sha256":"1807c66f77e66786739387f0ae9f16d150d1cfa9d626afcb729f0e9b442a8d96","cabal-sha256":"bf42655a213402215299e435c52f799e76cbec0b984cd7153d6b9af8a1c0803f"},"version":"0.7.2.1"},
"system-fileio": {"dependencies":["base","bytestring","system-filepath","text","time","unix"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/system-fileio-0.3.16.4/system-fileio-0.3.16.4.tar.gz"},"name":"system-fileio","pinned":{"url":["https://hackage.haskell.org/package/system-fileio-0.3.16.4/system-fileio-0.3.16.4.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/system-fileio-0.3.16.4.tar.gz"],"sha256":"34e58b88a19a69ff1a559e211af6edb596e33ee1b1d5f44490febf325c78c6c7","cabal-sha256":"ca3a89469943828bcd526bed2d6943541e3e672464fd58abab3443b63f59c5ba"},"version":"0.3.16.4"},
"system-filepath": {"dependencies":["Cabal","base","bytestring","deepseq","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/system-filepath-0.4.14/system-filepath-0.4.14.tar.gz"},"name":"system-filepath","pinned":{"url":["https://hackage.haskell.org/package/system-filepath-0.4.14/system-filepath-0.4.14.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/system-filepath-0.4.14.tar.gz"],"sha256":"1656ce3c0d585650784ceb3f794748286e19fb635f557e7b29b0897f8956d993","cabal-sha256":"e8ce7d24d7008a825e5d03aa672950a0e8178ac54c3de7134f36c3a7e37694a2"},"version":"0.4.14"},
"tagged": {"dependencies":["base","deepseq","template-haskell","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/tagged-0.8.6.1/tagged-0.8.6.1.tar.gz"},"name":"tagged","pinned":{"url":["https://hackage.haskell.org/package/tagged-0.8.6.1/tagged-0.8.6.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/tagged-0.8.6.1.tar.gz"],"sha256":"f5e0fcf95f0bb4aa63f428f2c01955a41ea1a42cfcf39145ed631f59a9616c02","cabal-sha256":"5ddf1e324c3cd644f097a48bf490f0bedf467f723fd240afb3ab3b750577f8e7"},"version":"0.8.6.1"},
"tagged": {"dependencies":["base","deepseq","template-haskell","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/tagged-0.8.6.1/tagged-0.8.6.1.tar.gz"},"name":"tagged","pinned":{"url":["https://hackage.haskell.org/package/tagged-0.8.6.1/tagged-0.8.6.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/tagged-0.8.6.1.tar.gz"],"sha256":"f5e0fcf95f0bb4aa63f428f2c01955a41ea1a42cfcf39145ed631f59a9616c02","cabal-sha256":"29c67d98a4404607f024750ab9c7210dadcbbef4e1944c48c52902f2071b2662"},"version":"0.8.6.1"},
"tar": {"dependencies":["array","base","bytestring","containers","deepseq","directory","filepath","time"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/tar-0.5.1.1/tar-0.5.1.1.tar.gz"},"name":"tar","pinned":{"url":["https://hackage.haskell.org/package/tar-0.5.1.1/tar-0.5.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/tar-0.5.1.1.tar.gz"],"sha256":"b384449f62b2b0aa3e6d2cb1004b8060b01f21ec93e7b63e7af6d8fad8a9f1de","cabal-sha256":"94ded05718fe75b88c98e7113feeb9fca50688a7e59b6aefd80a6f48438c5062"},"version":"0.5.1.1"},
"tar-conduit": {"dependencies":["base","bytestring","conduit","conduit-combinators","directory","filepath","safe-exceptions","text","unix"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/tar-conduit-0.3.2/tar-conduit-0.3.2.tar.gz"},"name":"tar-conduit","pinned":{"url":["https://hackage.haskell.org/package/tar-conduit-0.3.2/tar-conduit-0.3.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/tar-conduit-0.3.2.tar.gz"],"sha256":"004578db7088e7ad53e23f8a293d739314698f0ec421ffad7be101e13c1cf62d","cabal-sha256":"17cb1c05343ed32db111c3f929f57ccce2b92a01d3ebd95a339db5e9b8bf147b"},"version":"0.3.2"},
"tasty": {"dependencies":["ansi-terminal","base","clock","containers","mtl","optparse-applicative","stm","tagged","unbounded-delays","unix","wcwidth"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/tasty-1.4.1/tasty-1.4.1.tar.gz"},"name":"tasty","pinned":{"url":["https://hackage.haskell.org/package/tasty-1.4.1/tasty-1.4.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/tasty-1.4.1.tar.gz"],"sha256":"2728f04ea61d45c665188577f0748a54ca6960200b33e4a3b10ae8dba4d4ae47","cabal-sha256":"69e90e965543faf0fc2c8e486d6c1d8cf81fd108e2c4541234c41490f392f94f"},"version":"1.4.1"},
@ -269,13 +267,13 @@
"th-abstraction": {"dependencies":["base","containers","ghc-prim","template-haskell"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/th-abstraction-0.4.2.0/th-abstraction-0.4.2.0.tar.gz"},"name":"th-abstraction","pinned":{"url":["https://hackage.haskell.org/package/th-abstraction-0.4.2.0/th-abstraction-0.4.2.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/th-abstraction-0.4.2.0.tar.gz"],"sha256":"ea06b2cda25fc4b52dac48cc23e5a756f997df8985ecaee5a554202508a11c40","cabal-sha256":"6ba7b201931f614173755f060fdf98f02095df68c1f7bc3e2691cf9d443e81f9"},"version":"0.4.2.0"},
"th-compat": {"dependencies":["base","template-haskell"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/th-compat-0.1.2/th-compat-0.1.2.tar.gz"},"name":"th-compat","pinned":{"url":["https://hackage.haskell.org/package/th-compat-0.1.2/th-compat-0.1.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/th-compat-0.1.2.tar.gz"],"sha256":"2bc45d0199de3dc65ebc9b71251799f5238869dbc6a66bdf0c06c7e23d603801","cabal-sha256":"3d55de1adc542c1a870c9ada90da2fbbe5f4e8bcd3eed545a55c3df9311b32a8"},"version":"0.1.2"},
"th-extras": {"dependencies":["base","syb","template-haskell"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/th-extras-0.0.0.4/th-extras-0.0.0.4.tar.gz"},"name":"th-extras","pinned":{"url":["https://hackage.haskell.org/package/th-extras-0.0.0.4/th-extras-0.0.0.4.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/th-extras-0.0.0.4.tar.gz"],"sha256":"8feff450aaf28ec4f08c45a5656c62879861a8e7f45591cb367d5351ddc3fbed","cabal-sha256":"2f408c0f427530f36beb19c733a7a57f67b727713f9bb942b64f3b2e0e2932bf"},"version":"0.0.0.4"},
"these": {"dependencies":["assoc","base","binary","deepseq","hashable"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/these-1.1.1.1/these-1.1.1.1.tar.gz"},"name":"these","pinned":{"url":["https://hackage.haskell.org/package/these-1.1.1.1/these-1.1.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/these-1.1.1.1.tar.gz"],"sha256":"d798c9f56e17def441e8f51e54cc11afdb3e76c6a9d1e9ee154e9a78da0bf508","cabal-sha256":"e981c65228db5ae77a043631f74a1e4a4b770f7213866f584e3476b52512f1af"},"version":"1.1.1.1"},
"these": {"dependencies":["assoc","base","binary","deepseq","hashable"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/these-1.1.1.1/these-1.1.1.1.tar.gz"},"name":"these","pinned":{"url":["https://hackage.haskell.org/package/these-1.1.1.1/these-1.1.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/these-1.1.1.1.tar.gz"],"sha256":"d798c9f56e17def441e8f51e54cc11afdb3e76c6a9d1e9ee154e9a78da0bf508","cabal-sha256":"bdc0a3015b2e5cdf016e402937d71856ae5fe4e9e9a0d4823cc94a214c55a39b"},"version":"1.1.1.1"},
"time": {"dependencies":[],"location":{"type":"core"},"name":"time","version":"1.9.3"},
"time-compat": {"dependencies":["base","base-orphans","deepseq","time"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/time-compat-1.9.5/time-compat-1.9.5.tar.gz"},"name":"time-compat","pinned":{"url":["https://hackage.haskell.org/package/time-compat-1.9.5/time-compat-1.9.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/time-compat-1.9.5.tar.gz"],"sha256":"3126b267d19f31d52a3c36f13a8788be03242f829a5bddd8a3084e134d01e3a6","cabal-sha256":"a586bd5a59b47ea0c9eafc55c6936ede11126f4a6e619d6d7aeefee73c43d9b8"},"version":"1.9.5"},
"time-locale-compat": {"dependencies":["base","time"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/time-locale-compat-0.1.1.5/time-locale-compat-0.1.1.5.tar.gz"},"name":"time-locale-compat","pinned":{"url":["https://hackage.haskell.org/package/time-locale-compat-0.1.1.5/time-locale-compat-0.1.1.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/time-locale-compat-0.1.1.5.tar.gz"],"sha256":"07ff1566de7d851423a843b2de385442319348c621d4f779b3d365ce91ac502c","cabal-sha256":"24b10ab3de20f5fc00f0e4f7832ac66dd5597033b78cff3bd6b4505d8a652e5b"},"version":"0.1.1.5"},
"tls": {"dependencies":["asn1-encoding","asn1-types","async","base","bytestring","cereal","cryptonite","data-default-class","hourglass","memory","mtl","network","transformers","x509","x509-store","x509-validation"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/tls-1.5.5/tls-1.5.5.tar.gz"},"name":"tls","pinned":{"url":["https://hackage.haskell.org/package/tls-1.5.5/tls-1.5.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/tls-1.5.5.tar.gz"],"sha256":"8a48b5ced43fac15c99158f0eedec458d77a6605c1a4302d41457f5a70ef3948","cabal-sha256":"f6681d6624071211edd509a8f56e0c96b4f003bb349b7dc706d4333775a373c5"},"version":"1.5.5"},
"transformers": {"dependencies":[],"location":{"type":"core"},"name":"transformers","version":"0.5.6.2"},
"transformers-base": {"dependencies":["base","base-orphans","stm","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/transformers-base-0.4.5.2/transformers-base-0.4.5.2.tar.gz"},"name":"transformers-base","pinned":{"url":["https://hackage.haskell.org/package/transformers-base-0.4.5.2/transformers-base-0.4.5.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/transformers-base-0.4.5.2.tar.gz"],"sha256":"d0c80c63fdce6a077dd8eda4f1ff289b85578703a3f1272e141d400fe23245e8","cabal-sha256":"e4d8155470905ba2942033a1537fc4cf91927d1c9b34693fd57ddf3bc02334af"},"version":"0.4.5.2"},
"transformers-base": {"dependencies":["base","base-orphans","stm","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/transformers-base-0.4.5.2/transformers-base-0.4.5.2.tar.gz"},"name":"transformers-base","pinned":{"url":["https://hackage.haskell.org/package/transformers-base-0.4.5.2/transformers-base-0.4.5.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/transformers-base-0.4.5.2.tar.gz"],"sha256":"d0c80c63fdce6a077dd8eda4f1ff289b85578703a3f1272e141d400fe23245e8","cabal-sha256":"402740dd5ef6574a05c7e4a3c874262e5a24b713c2b8b5125d59847ebd1041a2"},"version":"0.4.5.2"},
"transformers-compat": {"dependencies":["base","ghc-prim","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/transformers-compat-0.6.6/transformers-compat-0.6.6.tar.gz"},"name":"transformers-compat","pinned":{"url":["https://hackage.haskell.org/package/transformers-compat-0.6.6/transformers-compat-0.6.6.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/transformers-compat-0.6.6.tar.gz"],"sha256":"7e2e0251e5e6d28142615a4b950a3fabac9c0b7804b1ec4a4ae985f19519a9f9","cabal-sha256":"510709db2b12d1510d70de824ee544ca0a9e6f27aa7e299218cbacc0750b4a5e"},"version":"0.6.6"},
"turtle": {"dependencies":["ansi-wl-pprint","async","base","bytestring","clock","containers","directory","exceptions","foldl","hostname","managed","optional-args","optparse-applicative","process","stm","streaming-commons","system-fileio","system-filepath","temporary","text","time","transformers","unix","unix-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/turtle-1.5.22/turtle-1.5.22.tar.gz"},"name":"turtle","pinned":{"url":["https://hackage.haskell.org/package/turtle-1.5.22/turtle-1.5.22.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/turtle-1.5.22.tar.gz"],"sha256":"9ac4bbbd8063e376b1b05c174333d161915ac259f305afd33591f55cd6208e92","cabal-sha256":"fc122594dcdd714d9fcfbf8fdb5eef0652e067d6ce14f376fbfc3cf0b77d7d42"},"version":"1.5.22"},
"type-equality": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/type-equality-1/type-equality-1.tar.gz"},"name":"type-equality","pinned":{"url":["https://hackage.haskell.org/package/type-equality-1/type-equality-1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/type-equality-1.tar.gz"],"sha256":"4728b502a211454ef682a10d7a3e817c22d06ba509df114bb267ef9d43a08ce8","cabal-sha256":"f2a895a7b22384d9b43a9c6608725b2de7581e77e5b20ab9cfe3f959f6cd71a8"},"version":"1"},
@ -286,7 +284,7 @@
"unix-compat": {"dependencies":["base","unix"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/unix-compat-0.5.3/unix-compat-0.5.3.tar.gz"},"name":"unix-compat","pinned":{"url":["https://hackage.haskell.org/package/unix-compat-0.5.3/unix-compat-0.5.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/unix-compat-0.5.3.tar.gz"],"sha256":"0893b597ea0db406429d0d563506af6755728eface0e1981f9392122db88e5c8","cabal-sha256":"60be4a0b2e1cd873e5ad5f0cc9e53575b77640567abb43ef700d5b323ca2ac49"},"version":"0.5.3"},
"unix-time": {"dependencies":["base","binary","bytestring","old-time"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/unix-time-0.4.7/unix-time-0.4.7.tar.gz"},"name":"unix-time","pinned":{"url":["https://hackage.haskell.org/package/unix-time-0.4.7/unix-time-0.4.7.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/unix-time-0.4.7.tar.gz"],"sha256":"19233f8badf921d444c6165689253d877cfed58ce08f28cad312558a9280de09","cabal-sha256":"c0d971d04561875b908451c563df8728fe6d8639c90e070b244227f13f76ab8e"},"version":"0.4.7"},
"unliftio": {"dependencies":["async","base","bytestring","deepseq","directory","filepath","process","stm","time","transformers","unix","unliftio-core"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/unliftio-0.2.18/unliftio-0.2.18.tar.gz"},"name":"unliftio","pinned":{"url":["https://hackage.haskell.org/package/unliftio-0.2.18/unliftio-0.2.18.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/unliftio-0.2.18.tar.gz"],"sha256":"3ef4ed7a6d4f78a0c4dc21daba310953ad56619c355091d0e1ed923bb6e8e579","cabal-sha256":"87fb541127d21939d3efc49ed9bc3df6eadc9eb06ffa7755fc857f62e15daf20"},"version":"0.2.18"},
"unliftio-core": {"dependencies":["base","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/unliftio-core-0.2.0.1/unliftio-core-0.2.0.1.tar.gz"},"name":"unliftio-core","pinned":{"url":["https://hackage.haskell.org/package/unliftio-core-0.2.0.1/unliftio-core-0.2.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/unliftio-core-0.2.0.1.tar.gz"],"sha256":"919f0d1297ea2f5373118553c1df2a9405d8b9e31a8307e829da67d4953c299a","cabal-sha256":"9b3e44ea9aacacbfc35b3b54015af450091916ac3618a41868ebf6546977659a"},"version":"0.2.0.1"},
"unliftio-core": {"dependencies":["base","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/unliftio-core-0.2.0.1/unliftio-core-0.2.0.1.tar.gz"},"name":"unliftio-core","pinned":{"url":["https://hackage.haskell.org/package/unliftio-core-0.2.0.1/unliftio-core-0.2.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/unliftio-core-0.2.0.1.tar.gz"],"sha256":"919f0d1297ea2f5373118553c1df2a9405d8b9e31a8307e829da67d4953c299a","cabal-sha256":"f9abcdd3f3d28e4840563efb7b8760d2de9b5707bcd6f53a87f6a0d77bb5a9f7"},"version":"0.2.0.1"},
"unordered-containers": {"dependencies":["base","deepseq","hashable"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/unordered-containers-0.2.14.0/unordered-containers-0.2.14.0.tar.gz"},"name":"unordered-containers","pinned":{"url":["https://hackage.haskell.org/package/unordered-containers-0.2.14.0/unordered-containers-0.2.14.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/unordered-containers-0.2.14.0.tar.gz"],"sha256":"a10f48a94cef1fab72d2a404c7d541a3cda54ab2f1321872658aca7e5e9d8867","cabal-sha256":"2fe789f78246b7c7ec10d7b85c72d898a9f72fdda5b60d581e839d21016bc628"},"version":"0.2.14.0"},
"uri-encode": {"dependencies":["base","bytestring","network-uri","text","utf8-string"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/uri-encode-1.5.0.7/uri-encode-1.5.0.7.tar.gz"},"name":"uri-encode","pinned":{"url":["https://hackage.haskell.org/package/uri-encode-1.5.0.7/uri-encode-1.5.0.7.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/uri-encode-1.5.0.7.tar.gz"],"sha256":"c79c624257833841a22890e4d2b0ab07e4be88e0f99474d328223815c0814252","cabal-sha256":"e102329abf9066f2ec825a969c6f00f7676ac4dd6b27fae0e5c8bf865a7b559c"},"version":"1.5.0.7"},
"utf8-string": {"dependencies":["base","bytestring"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/utf8-string-1.0.2/utf8-string-1.0.2.tar.gz"},"name":"utf8-string","pinned":{"url":["https://hackage.haskell.org/package/utf8-string-1.0.2/utf8-string-1.0.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/utf8-string-1.0.2.tar.gz"],"sha256":"ee48deada7600370728c4156cb002441de770d0121ae33a68139a9ed9c19b09a","cabal-sha256":"79416292186feeaf1f60e49ac5a1ffae9bf1b120e040a74bf0e81ca7f1d31d3f"},"version":"1.0.2"},

View File

@ -1,11 +1,11 @@
{
"__GENERATED_FILE_DO_NOT_MODIFY_MANUALLY": -1934915861,
"all-cabal-hashes": "https://raw.githubusercontent.com/commercialhaskell/all-cabal-hashes/dbcfffce4e85d2720ba5375d788b8f84161fd0a7",
"__GENERATED_FILE_DO_NOT_MODIFY_MANUALLY": 1487009755,
"all-cabal-hashes": "https://raw.githubusercontent.com/commercialhaskell/all-cabal-hashes/9a29460a33cc7bf10193c583e4439a41b88ed51c",
"resolved": {
"Cabal": {"dependencies":[],"location":{"type":"core"},"name":"Cabal","version":"3.2.1.0"},
"Decimal": {"dependencies":["base","deepseq"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/Decimal-0.5.2/Decimal-0.5.2.tar.gz"},"name":"Decimal","pinned":{"url":["https://hackage.haskell.org/package/Decimal-0.5.2/Decimal-0.5.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/Decimal-0.5.2.tar.gz"],"sha256":"a37a0220424e4bcb8cae1d38844c7027ee314449758d0d14ff3e2e0a5c8a87a7","cabal-sha256":"83dd16a1c0737fd35fdb1088af36e1a53034e75090e3f0d4ad32296f1a35a13b"},"version":"0.5.2"},
"Diff": {"dependencies":["array","base","pretty"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/Diff-0.4.0/Diff-0.4.0.tar.gz"},"name":"Diff","pinned":{"url":["https://hackage.haskell.org/package/Diff-0.4.0/Diff-0.4.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/Diff-0.4.0.tar.gz"],"sha256":"7290ac098ad8b4748b9c10e494cc85ba54af688226ae69a465aa7b4c73f149c7","cabal-sha256":"b5cfbeed498f555a18774ffd549bbeff7a24bdfe5984154dcfc9f4328a3c2847"},"version":"0.4.0"},
"Glob": {"dependencies":["Win32","base","containers","directory","dlist","filepath","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/Glob-0.10.1/Glob-0.10.1.tar.gz"},"name":"Glob","pinned":{"url":["https://hackage.haskell.org/package/Glob-0.10.1/Glob-0.10.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/Glob-0.10.1.tar.gz"],"sha256":"cae4476d944947010705e0b00cf3e36c90ef407f968861f6771b931056b6d315","cabal-sha256":"424bf82768d0471562b34ffcac6b73e658f655aac957dfbcbb945603899a40fd"},"version":"0.10.1"},
"Glob": {"dependencies":["Win32","base","containers","directory","dlist","filepath","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/Glob-0.10.1/Glob-0.10.1.tar.gz"},"name":"Glob","pinned":{"url":["https://hackage.haskell.org/package/Glob-0.10.1/Glob-0.10.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/Glob-0.10.1.tar.gz"],"sha256":"cae4476d944947010705e0b00cf3e36c90ef407f968861f6771b931056b6d315","cabal-sha256":"17cbe8f4f023d3288d168f5eb34f9fd1125348ece2682bad2137ed8a06d5d0d6"},"version":"0.10.1"},
"HUnit": {"dependencies":["base","call-stack","deepseq"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/HUnit-1.6.2.0/HUnit-1.6.2.0.tar.gz"},"name":"HUnit","pinned":{"url":["https://hackage.haskell.org/package/HUnit-1.6.2.0/HUnit-1.6.2.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/HUnit-1.6.2.0.tar.gz"],"sha256":"b0b7538871ffc058486fc00740886d2f3172f8fa6869936bfe83a5e10bd744ab","cabal-sha256":"1a79174e8af616117ad39464cac9de205ca923da6582825e97c10786fda933a4"},"version":"1.6.2.0"},
"Only": {"dependencies":["base","deepseq"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/Only-0.1/Only-0.1.tar.gz"},"name":"Only","pinned":{"url":["https://hackage.haskell.org/package/Only-0.1/Only-0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/Only-0.1.tar.gz"],"sha256":"ab7aa193e8c257d3bda6b0b3c1cbcf74cdaa85ab08cb20c2dd62ba248c1ab265","cabal-sha256":"f92f5da97e647451f1ee7f5bf44914fb75062d08ccd3f36b2000d649c63d13aa"},"version":"0.1"},
"QuickCheck": {"dependencies":["base","containers","deepseq","random","splitmix","template-haskell","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/QuickCheck-2.14.2/QuickCheck-2.14.2.tar.gz"},"name":"QuickCheck","pinned":{"url":["https://hackage.haskell.org/package/QuickCheck-2.14.2/QuickCheck-2.14.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/QuickCheck-2.14.2.tar.gz"],"sha256":"d87b6c85696b601175274361fa62217894401e401e150c3c5d4013ac53cd36f3","cabal-sha256":"4ce29211223d5e6620ebceba34a3ca9ccf1c10c0cf387d48aea45599222ee5aa"},"version":"2.14.2"},
@ -36,7 +36,7 @@
"base64": {"dependencies":["base","bytestring","deepseq","ghc-byteorder","text","text-short"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/base64-0.4.2.3/base64-0.4.2.3.tar.gz"},"name":"base64","pinned":{"url":["https://hackage.haskell.org/package/base64-0.4.2.3/base64-0.4.2.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/base64-0.4.2.3.tar.gz"],"sha256":"bcbf21179841fbf657772792bef453773e01ea8229ed42a7422fcb073bd7b8c1","cabal-sha256":"d8a82b0f446e89d1d3b3e7c8fc5b3cd2f5063c43309bd3c971050d9c0eb74783"},"version":"0.4.2.3"},
"base64-bytestring": {"dependencies":["base","bytestring"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/base64-bytestring-1.1.0.0/base64-bytestring-1.1.0.0.tar.gz"},"name":"base64-bytestring","pinned":{"url":["https://hackage.haskell.org/package/base64-bytestring-1.1.0.0/base64-bytestring-1.1.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/base64-bytestring-1.1.0.0.tar.gz"],"sha256":"210d6c9042241ca52ee5d89cf221dbeb4d0e64b37391345369035ad2d9b4aca9","cabal-sha256":"190264fef9e65d9085f00ccda419137096d1dc94777c58272bc96821dc7f37c3"},"version":"1.1.0.0"},
"basement": {"dependencies":["Win32","base","ghc-prim"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/basement-0.0.12/basement-0.0.12.tar.gz"},"name":"basement","pinned":{"url":["https://hackage.haskell.org/package/basement-0.0.12/basement-0.0.12.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/basement-0.0.12.tar.gz"],"sha256":"53c4435b17b7df398c730406263957977fe0616b66529dafa8d1a0fd66b7fa8b","cabal-sha256":"cbb9187d3575b78ee1165b7a49a0e8570ee563820330a944a67cd09e1cfe23bf"},"version":"0.0.12"},
"bifunctors": {"dependencies":["base","base-orphans","comonad","containers","tagged","template-haskell","th-abstraction","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/bifunctors-5.5.11/bifunctors-5.5.11.tar.gz"},"name":"bifunctors","pinned":{"url":["https://hackage.haskell.org/package/bifunctors-5.5.11/bifunctors-5.5.11.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/bifunctors-5.5.11.tar.gz"],"sha256":"2b6b9672faab649995cf4c885f353b6638b6daee467a9ace40a7fc773831091c","cabal-sha256":"bee555a403171a7959459e0fb31934f785f2ad0a2d3485b62137b5a9be6c47ad"},"version":"5.5.11"},
"bifunctors": {"dependencies":["base","base-orphans","comonad","containers","tagged","template-haskell","th-abstraction","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/bifunctors-5.5.11/bifunctors-5.5.11.tar.gz"},"name":"bifunctors","pinned":{"url":["https://hackage.haskell.org/package/bifunctors-5.5.11/bifunctors-5.5.11.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/bifunctors-5.5.11.tar.gz"],"sha256":"2b6b9672faab649995cf4c885f353b6638b6daee467a9ace40a7fc773831091c","cabal-sha256":"cc425ee85aae56dba1123baf6fb3fa7abcd90782f26bb904eef14c7332ee85f6"},"version":"5.5.11"},
"binary": {"dependencies":[],"location":{"type":"core"},"name":"binary","version":"0.8.8.0"},
"blaze-builder": {"dependencies":["base","bytestring","deepseq","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/blaze-builder-0.4.2.1/blaze-builder-0.4.2.1.tar.gz"},"name":"blaze-builder","pinned":{"url":["https://hackage.haskell.org/package/blaze-builder-0.4.2.1/blaze-builder-0.4.2.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/blaze-builder-0.4.2.1.tar.gz"],"sha256":"6e6889bc9c3ff92062a17f3825dcc1b28510d261334d4d4e177232d904ea0b06","cabal-sha256":"c1830d7b52910b4569162d4fad27da510bd6a4b43c94da1e9ec0712bebc36121"},"version":"0.4.2.1"},
"blaze-html": {"dependencies":["base","blaze-builder","blaze-markup","bytestring","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/blaze-html-0.9.1.2/blaze-html-0.9.1.2.tar.gz"},"name":"blaze-html","pinned":{"url":["https://hackage.haskell.org/package/blaze-html-0.9.1.2/blaze-html-0.9.1.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/blaze-html-0.9.1.2.tar.gz"],"sha256":"60503f42546c6c1b954014d188ea137e43d74dcffd2bf6157c113fd91a0c394c","cabal-sha256":"49db3eb70fa93fb572f3a9233b542b59e7f766a2b95c92d01d95a596c7727473"},"version":"0.9.1.2"},
@ -54,7 +54,7 @@
"cmark-gfm": {"dependencies":["base","bytestring","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/cmark-gfm-0.2.2/cmark-gfm-0.2.2.tar.gz"},"name":"cmark-gfm","pinned":{"url":["https://hackage.haskell.org/package/cmark-gfm-0.2.2/cmark-gfm-0.2.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/cmark-gfm-0.2.2.tar.gz"],"sha256":"ee701aff393373f51c2653d7d23482aa7a000451cb2e38f307165616c36b7fea","cabal-sha256":"8d1b7f0447a4f64d25de4be2c2fb09993570158fd30407e3e24d89168be52331"},"version":"0.2.2"},
"cmdargs": {"dependencies":["base","filepath","process","template-haskell","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/cmdargs-0.10.21/cmdargs-0.10.21.tar.gz"},"name":"cmdargs","pinned":{"url":["https://hackage.haskell.org/package/cmdargs-0.10.21/cmdargs-0.10.21.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/cmdargs-0.10.21.tar.gz"],"sha256":"f7d8ea5c4e6af368d9b5d2eb994fc29235406fbe91916a6dc63bd883025eca75","cabal-sha256":"a347cf8a16af30b9d8378209de0d1b7ac2b7b39e3af5d384383d8ef82315b37f"},"version":"0.10.21"},
"colour": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/colour-2.3.5/colour-2.3.5.tar.gz"},"name":"colour","pinned":{"url":["https://hackage.haskell.org/package/colour-2.3.5/colour-2.3.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/colour-2.3.5.tar.gz"],"sha256":"3b8d471979617dce7c193523743c9782df63433d8e87e3ef6d97922e0da104e7","cabal-sha256":"b27db0a3ad40d70bdbd8510a104269f8707592e80757a1abc66a22ba25e5a42f"},"version":"2.3.5"},
"comonad": {"dependencies":["base","containers","distributive","indexed-traversable","tagged","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/comonad-5.0.8/comonad-5.0.8.tar.gz"},"name":"comonad","pinned":{"url":["https://hackage.haskell.org/package/comonad-5.0.8/comonad-5.0.8.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/comonad-5.0.8.tar.gz"],"sha256":"ef6cdf2cc292cc43ee6aa96c581b235fdea8ab44a0bffb24dc79ae2b2ef33d13","cabal-sha256":"a3a140be7a21d6ba16bf9102bf4c79455ff3213679311587bac45ba0723c8d7a"},"version":"5.0.8"},
"comonad": {"dependencies":["base","containers","distributive","indexed-traversable","tagged","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/comonad-5.0.8/comonad-5.0.8.tar.gz"},"name":"comonad","pinned":{"url":["https://hackage.haskell.org/package/comonad-5.0.8/comonad-5.0.8.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/comonad-5.0.8.tar.gz"],"sha256":"ef6cdf2cc292cc43ee6aa96c581b235fdea8ab44a0bffb24dc79ae2b2ef33d13","cabal-sha256":"1f1aabd73ec7f80f20cf078a748a60cd48d8e57277802fdf6a9ab3601a9b8f7e"},"version":"5.0.8"},
"conduit": {"dependencies":["Win32","base","bytestring","directory","exceptions","filepath","mono-traversable","mtl","primitive","resourcet","text","transformers","unliftio-core","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/conduit-1.3.4.1/conduit-1.3.4.1.tar.gz"},"name":"conduit","pinned":{"url":["https://hackage.haskell.org/package/conduit-1.3.4.1/conduit-1.3.4.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/conduit-1.3.4.1.tar.gz"],"sha256":"85743b8d5f2d5779ccb7459b5a919c5786707af23fe7a065d281ee8e6dc226f1","cabal-sha256":"eeabaf3f822e3e15317995766f50ef4a20371bdc3bb4721a7541e37228018dcf"},"version":"1.3.4.1"},
"conduit-combinators": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/conduit-combinators-1.3.0/conduit-combinators-1.3.0.tar.gz"},"name":"conduit-combinators","pinned":{"url":["https://hackage.haskell.org/package/conduit-combinators-1.3.0/conduit-combinators-1.3.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/conduit-combinators-1.3.0.tar.gz"],"sha256":"9717d916a0422a7fb7cc262302333269607530d40cd0bea3be947872f906e7d3","cabal-sha256":"0ada7712bd8291c958cbd0db1ccc8374936f260cfa41422d7a5d979d1c7ea757"},"version":"1.3.0"},
"conduit-extra": {"dependencies":["async","attoparsec","base","bytestring","conduit","directory","filepath","network","primitive","process","resourcet","stm","streaming-commons","text","transformers","typed-process","unliftio-core"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/conduit-extra-1.3.5/conduit-extra-1.3.5.tar.gz"},"name":"conduit-extra","pinned":{"url":["https://hackage.haskell.org/package/conduit-extra-1.3.5/conduit-extra-1.3.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/conduit-extra-1.3.5.tar.gz"],"sha256":"8a648dee203c01e647fa386bfe7a5b293ce552f8b5cab9c0dd5cb71c7cd012d9","cabal-sha256":"c3de6704df0b728d258827370b3de4e467a25d396037104639b859d743146365"},"version":"1.3.5"},
@ -83,7 +83,7 @@
"dependent-sum-template": {"dependencies":["base","dependent-sum","template-haskell","th-extras"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/dependent-sum-template-0.1.0.3/dependent-sum-template-0.1.0.3.tar.gz"},"name":"dependent-sum-template","pinned":{"url":["https://hackage.haskell.org/package/dependent-sum-template-0.1.0.3/dependent-sum-template-0.1.0.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/dependent-sum-template-0.1.0.3.tar.gz"],"sha256":"c8eb17d3fa9966182e041836abefce2e7e42e30d3b01463a254fb7cf806ca4df","cabal-sha256":"0bbbacdfbd3abf2a15aaf0cf2c27e5bdd159b519441fec39e1e6f2f54424adde"},"version":"0.1.0.3"},
"digest": {"dependencies":["base","bytestring","zlib"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/digest-0.0.1.2/digest-0.0.1.2.tar.gz"},"name":"digest","pinned":{"url":["https://hackage.haskell.org/package/digest-0.0.1.2/digest-0.0.1.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/digest-0.0.1.2.tar.gz"],"sha256":"641717eb16392abf8965986a9e8dc21eebf1d97775bbb6923c7b7f8fee17fe11","cabal-sha256":"d3c2a49e25bb3b0228ddb063493b80adcfc26625f9ebbe4a89dd4fbb4339d1bc"},"version":"0.0.1.2"},
"directory": {"dependencies":[],"location":{"type":"core"},"name":"directory","version":"1.3.6.0"},
"distributive": {"dependencies":["base","base-orphans","tagged","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/distributive-0.6.2.1/distributive-0.6.2.1.tar.gz"},"name":"distributive","pinned":{"url":["https://hackage.haskell.org/package/distributive-0.6.2.1/distributive-0.6.2.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/distributive-0.6.2.1.tar.gz"],"sha256":"d7351392e078f58caa46630a4b9c643e1e2e9dddee45848c5c8358e7b1316b91","cabal-sha256":"2823eff05c6b093492efe804027e7cf82757221f934964c76106ac3248899b89"},"version":"0.6.2.1"},
"distributive": {"dependencies":["base","base-orphans","tagged","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/distributive-0.6.2.1/distributive-0.6.2.1.tar.gz"},"name":"distributive","pinned":{"url":["https://hackage.haskell.org/package/distributive-0.6.2.1/distributive-0.6.2.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/distributive-0.6.2.1.tar.gz"],"sha256":"d7351392e078f58caa46630a4b9c643e1e2e9dddee45848c5c8358e7b1316b91","cabal-sha256":"0f99f5541cca04acf89b64432b03422b6408e830a8dff30e6c4334ef1a48680c"},"version":"0.6.2.1"},
"dlist": {"dependencies":["base","deepseq"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/dlist-1.0/dlist-1.0.tar.gz"},"name":"dlist","pinned":{"url":["https://hackage.haskell.org/package/dlist-1.0/dlist-1.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/dlist-1.0.tar.gz"],"sha256":"173d637328bb173fcc365f30d29ff4a94292a1e0e5558aeb3dfc11de81510115","cabal-sha256":"124cb3aa1decebd5171b46601b1f74cca6cfae12d266ace3799b86dd05ef7cb4"},"version":"1.0"},
"easy-file": {"dependencies":["Win32","base","directory","filepath","time"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/easy-file-0.2.2/easy-file-0.2.2.tar.gz"},"name":"easy-file","pinned":{"url":["https://hackage.haskell.org/package/easy-file-0.2.2/easy-file-0.2.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/easy-file-0.2.2.tar.gz"],"sha256":"52f52e72ba48d60935932401c233a72bf45c582871238aecc5a18021ce67b47e","cabal-sha256":"72303120495a9fed82276a7987434361edd6dfecafad241d7c6c03b68e4801e5"},"version":"0.2.2"},
"either": {"dependencies":["base","bifunctors","mtl","profunctors","semigroupoids"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/either-5.0.1.1/either-5.0.1.1.tar.gz"},"name":"either","pinned":{"url":["https://hackage.haskell.org/package/either-5.0.1.1/either-5.0.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/either-5.0.1.1.tar.gz"],"sha256":"0243d51d6a02ecb541e4854a588a9b6219a4690ebcbdb79387dd14ad519cdf27","cabal-sha256":"41167573bf575b7e0e24283a52fba8ce7bed5a7cc2984bba0dce305a0ab66f0d"},"version":"5.0.1.1"},
@ -104,8 +104,8 @@
"ghc-boot": {"dependencies":[],"location":{"type":"core"},"name":"ghc-boot","version":"8.10.4"},
"ghc-boot-th": {"dependencies":[],"location":{"type":"core"},"name":"ghc-boot-th","version":"8.10.4"},
"ghc-byteorder": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/ghc-byteorder-4.11.0.0.10/ghc-byteorder-4.11.0.0.10.tar.gz"},"name":"ghc-byteorder","pinned":{"url":["https://hackage.haskell.org/package/ghc-byteorder-4.11.0.0.10/ghc-byteorder-4.11.0.0.10.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/ghc-byteorder-4.11.0.0.10.tar.gz"],"sha256":"86e50a89798181db4f44ec3848fc52940c73098e88549a351ceb54fefc691fb6","cabal-sha256":"d47fdef63f2a145091e91b1aedbd46bf61ca03bb935e81e3462a1d904c319de3"},"version":"4.11.0.0.10"},
"ghc-lib": {"dependencies":["Win32","alex","array","base","binary","bytestring","containers","deepseq","directory","filepath","ghc-lib-parser","ghc-prim","happy","hpc","pretty","process","rts","time","transformers"],"location":{"type":"archive","url":"https://daml-binaries.da-ext.net/da-ghc-lib/ghc-lib-57b78d673ec6688715b861e9ae9c16fe.tar.gz"},"name":"ghc-lib","pinned":{"sha256":"63386411db9b330413cd1266edea747f079ed6280ad7664b208afc252921fad7","strip-prefix":"ghc-lib-8.8.1.20210531"},"version":"8.8.1.20210531"},
"ghc-lib-parser": {"dependencies":["Win32","alex","array","base","binary","bytestring","containers","deepseq","directory","filepath","ghc-prim","happy","hpc","pretty","process","time","transformers"],"location":{"type":"archive","url":"https://daml-binaries.da-ext.net/da-ghc-lib/ghc-lib-parser-57b78d673ec6688715b861e9ae9c16fe.tar.gz"},"name":"ghc-lib-parser","pinned":{"sha256":"658942c05b0e36dceecaca7d94222f6cd235104ed95288254d0b772a75139e4a","strip-prefix":"ghc-lib-parser-8.8.1.20210531"},"version":"8.8.1.20210531"},
"ghc-lib": {"dependencies":["Win32","alex","array","base","binary","bytestring","containers","deepseq","directory","filepath","ghc-lib-parser","ghc-prim","happy","hpc","pretty","process","rts","time","transformers"],"location":{"type":"archive","url":"https://daml-binaries.da-ext.net/da-ghc-lib/ghc-lib-b059bc40cf563600584ad6afbf3c3d1d.tar.gz"},"name":"ghc-lib","pinned":{"sha256":"69bab973103910dad64ffc4c11c6e0673affdda7250d1691b906076f65763c05","strip-prefix":"ghc-lib-8.8.1.20210804"},"version":"8.8.1.20210804"},
"ghc-lib-parser": {"dependencies":["Win32","alex","array","base","binary","bytestring","containers","deepseq","directory","filepath","ghc-prim","happy","hpc","pretty","process","time","transformers"],"location":{"type":"archive","url":"https://daml-binaries.da-ext.net/da-ghc-lib/ghc-lib-parser-b059bc40cf563600584ad6afbf3c3d1d.tar.gz"},"name":"ghc-lib-parser","pinned":{"sha256":"0b192dc1ee8e485b4c872473f105c5129ad5ad7bd3502a63b07c8b9ef0b7bb2c","strip-prefix":"ghc-lib-parser-8.8.1.20210804"},"version":"8.8.1.20210804"},
"ghc-lib-parser-ex": {"dependencies":["base","bytestring","containers","extra","ghc-lib-parser","uniplate"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/ghc-lib-parser-ex-8.8.5.8/ghc-lib-parser-ex-8.8.5.8.tar.gz"},"name":"ghc-lib-parser-ex","pinned":{"url":["https://hackage.haskell.org/package/ghc-lib-parser-ex-8.8.5.8/ghc-lib-parser-ex-8.8.5.8.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/ghc-lib-parser-ex-8.8.5.8.tar.gz"],"sha256":"b36ef8b49da4e8c78b00dca9b9546b7d4db0b09b10da5e313d3f0dbb4af581d7","cabal-sha256":"04f164fd6a4a5b0c5627cf7fadd79174c3b1d4c696dc481a9909266bd6a2a6aa"},"version":"8.8.5.8"},
"ghc-paths": {"dependencies":["Cabal","base","directory"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/ghc-paths-0.1.0.12/ghc-paths-0.1.0.12.tar.gz"},"name":"ghc-paths","pinned":{"url":["https://hackage.haskell.org/package/ghc-paths-0.1.0.12/ghc-paths-0.1.0.12.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/ghc-paths-0.1.0.12.tar.gz"],"sha256":"6ecbe676d073cb07989c61ce4c5709c4e67cbefdd2d55a4095f9388b6fe2c484","cabal-sha256":"afdfdb6584f39e821b2b7130e12007bf3ad87401d86f5105eead059c150dc81d"},"version":"0.1.0.12"},
"ghc-prim": {"dependencies":[],"location":{"type":"core"},"name":"ghc-prim","version":"0.6.1"},
@ -139,7 +139,7 @@
"http-media": {"dependencies":["base","bytestring","case-insensitive","containers","utf8-string"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/http-media-0.8.0.0/http-media-0.8.0.0.tar.gz"},"name":"http-media","pinned":{"url":["https://hackage.haskell.org/package/http-media-0.8.0.0/http-media-0.8.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/http-media-0.8.0.0.tar.gz"],"sha256":"398279d1dff5b60cd8b8c650caceca248ea1184d694bedf5df5426963b2b9c53","cabal-sha256":"f670eb77f9f30f7bfc20f71c2df816662bf8ff972ff732f50c48a1a7da4dc371"},"version":"0.8.0.0"},
"http-types": {"dependencies":["array","base","bytestring","case-insensitive","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/http-types-0.12.3/http-types-0.12.3.tar.gz"},"name":"http-types","pinned":{"url":["https://hackage.haskell.org/package/http-types-0.12.3/http-types-0.12.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/http-types-0.12.3.tar.gz"],"sha256":"4e8a4a66477459fa436a331c75e46857ec8026283df984d54f90576cd3024016","cabal-sha256":"f35229edb1bc7b3ae27f961b2407dadb5bfa69d43a8f5337ab46cdc79ca4afe9"},"version":"0.12.3"},
"indexed-profunctors": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/indexed-profunctors-0.1.1/indexed-profunctors-0.1.1.tar.gz"},"name":"indexed-profunctors","pinned":{"url":["https://hackage.haskell.org/package/indexed-profunctors-0.1.1/indexed-profunctors-0.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/indexed-profunctors-0.1.1.tar.gz"],"sha256":"5aba418a92a4f75efc626de7c0e4d88ed57033e0de0f2743ce6d9c9ef7626cb1","cabal-sha256":"363e1bcd89f8498a770ae783e8388fcce35e6515b4c38dca47327aad81196a7b"},"version":"0.1.1"},
"indexed-traversable": {"dependencies":["array","base","containers","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/indexed-traversable-0.1.1/indexed-traversable-0.1.1.tar.gz"},"name":"indexed-traversable","pinned":{"url":["https://hackage.haskell.org/package/indexed-traversable-0.1.1/indexed-traversable-0.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/indexed-traversable-0.1.1.tar.gz"],"sha256":"7ac36ae3153cbe7a8e99eacffd065367b87544953cc92997f424a150db468139","cabal-sha256":"e330ec1ab336ee2fb1eff117ebe3480d1663396fecd981f185b7123dc7941ae1"},"version":"0.1.1"},
"indexed-traversable": {"dependencies":["array","base","containers","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/indexed-traversable-0.1.1/indexed-traversable-0.1.1.tar.gz"},"name":"indexed-traversable","pinned":{"url":["https://hackage.haskell.org/package/indexed-traversable-0.1.1/indexed-traversable-0.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/indexed-traversable-0.1.1.tar.gz"],"sha256":"7ac36ae3153cbe7a8e99eacffd065367b87544953cc92997f424a150db468139","cabal-sha256":"e4602357513aa3b146546227732e6e5698392f4324ab690e109cc05676ba3b4f"},"version":"0.1.1"},
"insert-ordered-containers": {"dependencies":["aeson","base","base-compat","deepseq","hashable","indexed-traversable","lens","optics-core","optics-extra","semigroupoids","semigroups","text","transformers","unordered-containers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/insert-ordered-containers-0.2.5/insert-ordered-containers-0.2.5.tar.gz"},"name":"insert-ordered-containers","pinned":{"url":["https://hackage.haskell.org/package/insert-ordered-containers-0.2.5/insert-ordered-containers-0.2.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/insert-ordered-containers-0.2.5.tar.gz"],"sha256":"3e3051ec8591bbe05a030b9033d0d882895396d52edc5f77fde52316ff7b632d","cabal-sha256":"b2cafd117efe1f8055284a7ac0d79c688f2196a91bb0c19221b32c004885adcd"},"version":"0.2.5"},
"integer-gmp": {"dependencies":[],"location":{"type":"core"},"name":"integer-gmp","version":"1.0.3.0"},
"integer-logarithms": {"dependencies":["array","base","ghc-prim","integer-gmp"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/integer-logarithms-1.0.3.1/integer-logarithms-1.0.3.1.tar.gz"},"name":"integer-logarithms","pinned":{"url":["https://hackage.haskell.org/package/integer-logarithms-1.0.3.1/integer-logarithms-1.0.3.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/integer-logarithms-1.0.3.1.tar.gz"],"sha256":"9b0a9f9fab609b15cd015865721fb05f744a1bc77ae92fd133872de528bbea7f","cabal-sha256":"888fb6c4fbd79ed2e8f8b94b61bccac25f7fab2b13b32b496e86828bc60b17cf"},"version":"1.0.3.1"},
@ -148,7 +148,7 @@
"js-flot": {"dependencies":["base","file-embed"],"location":{"type":"vendored"},"name":"js-flot","version":"0.8.3"},
"js-jquery": {"dependencies":["base","file-embed"],"location":{"type":"vendored"},"name":"js-jquery","version":"3.3.1"},
"jwt": {"dependencies":["aeson","base","bytestring","containers","cryptonite","http-types","memory","network-uri","scientific","semigroups","text","time","unordered-containers","vector","x509","x509-store"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/jwt-0.10.0/jwt-0.10.0.tar.gz"},"name":"jwt","pinned":{"url":["https://hackage.haskell.org/package/jwt-0.10.0/jwt-0.10.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/jwt-0.10.0.tar.gz"],"sha256":"bc1c7b18ba3366dd537f0ccd46e887e5892591a2a60b5ccbc15289ea70c52ea8","cabal-sha256":"2cb02121a9aab3b2d8d927cca78e0ebd6e43661a73cc65024162e9d1096ca5d1"},"version":"0.10.0"},
"kan-extensions": {"dependencies":["adjunctions","array","base","comonad","containers","contravariant","distributive","free","invariant","mtl","profunctors","semigroupoids","tagged","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/kan-extensions-5.2.2/kan-extensions-5.2.2.tar.gz"},"name":"kan-extensions","pinned":{"url":["https://hackage.haskell.org/package/kan-extensions-5.2.2/kan-extensions-5.2.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/kan-extensions-5.2.2.tar.gz"],"sha256":"3bf3ce4cacf9c57c03e9a1c36ecb1baf5d8356730853a2592d2112d1248498a0","cabal-sha256":"c9ad889deb63a2c6a0af95bc6ccefadd12633b711097e36af32935d54b901179"},"version":"5.2.2"},
"kan-extensions": {"dependencies":["adjunctions","array","base","comonad","containers","contravariant","distributive","free","invariant","mtl","profunctors","semigroupoids","tagged","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/kan-extensions-5.2.2/kan-extensions-5.2.2.tar.gz"},"name":"kan-extensions","pinned":{"url":["https://hackage.haskell.org/package/kan-extensions-5.2.2/kan-extensions-5.2.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/kan-extensions-5.2.2.tar.gz"],"sha256":"3bf3ce4cacf9c57c03e9a1c36ecb1baf5d8356730853a2592d2112d1248498a0","cabal-sha256":"474e5ef5dfdd42ca2d638322a049060dbd3be9261db8cd3ecdac1d8a849c8ee9"},"version":"5.2.2"},
"language-c": {"dependencies":["alex","array","base","bytestring","containers","deepseq","directory","filepath","happy","mtl","pretty","process"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/language-c-0.9.0.1/language-c-0.9.0.1.tar.gz"},"name":"language-c","pinned":{"url":["https://hackage.haskell.org/package/language-c-0.9.0.1/language-c-0.9.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/language-c-0.9.0.1.tar.gz"],"sha256":"d44cbb963fdea53ee9850af767a01137666044702938b57fda0c17644719d207","cabal-sha256":"7a1c57e8f9c29e94bcd5c748d99e4479a73bd8560cc0affd838f3b2d1bbc0384"},"version":"0.9.0.1"},
"lens": {"dependencies":["Cabal","array","base","base-orphans","bifunctors","bytestring","cabal-doctest","call-stack","comonad","containers","contravariant","distributive","exceptions","filepath","free","ghc-prim","hashable","kan-extensions","mtl","parallel","profunctors","reflection","semigroupoids","tagged","template-haskell","text","th-abstraction","transformers","transformers-compat","unordered-containers","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/lens-4.19.2/lens-4.19.2.tar.gz"},"name":"lens","pinned":{"url":["https://hackage.haskell.org/package/lens-4.19.2/lens-4.19.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/lens-4.19.2.tar.gz"],"sha256":"52f858ae3971a5104cdba5e81a27d154fda11fe65a54a4ac328c85904bdec23b","cabal-sha256":"d4d704141d7c322bbfb746157b0709f3b966dfec92421f571c34069893af08cc"},"version":"4.19.2"},
"lens-aeson": {"dependencies":["aeson","attoparsec","base","bytestring","lens","scientific","text","unordered-containers","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/lens-aeson-1.1.1/lens-aeson-1.1.1.tar.gz"},"name":"lens-aeson","pinned":{"url":["https://hackage.haskell.org/package/lens-aeson-1.1.1/lens-aeson-1.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/lens-aeson-1.1.1.tar.gz"],"sha256":"6fd7e1a83e97c91289cc26401159edb5f3443dce04575afc86c3af222e6267bc","cabal-sha256":"0028a960c8308f7ab3fbebc1823ea8e8124d7c15b158d4fcb06213444b8bc69a"},"version":"1.1.1"},
@ -157,7 +157,7 @@
"lifted-base": {"dependencies":["base","monad-control","transformers-base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/lifted-base-0.2.3.12/lifted-base-0.2.3.12.tar.gz"},"name":"lifted-base","pinned":{"url":["https://hackage.haskell.org/package/lifted-base-0.2.3.12/lifted-base-0.2.3.12.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/lifted-base-0.2.3.12.tar.gz"],"sha256":"c134a95f56750aae806e38957bb03c59627cda16034af9e00a02b699474317c5","cabal-sha256":"e94ad0692c9c5d85c373e508f23654f2da8ac8c3e475c2b65ffbc04fb165ad69"},"version":"0.2.3.12"},
"lsp": {"dependencies":["aeson","async","attoparsec","base","bytestring","containers","data-default","dependent-map","directory","filepath","hashable","hslogger","lens","lsp-types","mtl","network-uri","random","scientific","sorted-list","stm","text","time","transformers","unliftio-core","unordered-containers","uuid"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/lsp-1.2.0.0/lsp-1.2.0.0.tar.gz"},"name":"lsp","pinned":{"url":["https://hackage.haskell.org/package/lsp-1.2.0.0/lsp-1.2.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/lsp-1.2.0.0.tar.gz"],"sha256":"669115cbb0ed0c6a43ecab5e0d063e0231c4c637ed904e43ac3341da09d24831","cabal-sha256":"c51e071444ab95d59a30c463030bb4272f8298be1362a11f61a837cf850f0bac"},"version":"1.2.0.0"},
"lsp-test": {"dependencies":["Diff","Glob","Win32","aeson","aeson-pretty","ansi-terminal","async","base","bytestring","conduit","conduit-parse","containers","data-default","directory","filepath","lens","lsp-types","mtl","parser-combinators","process","some","text","time","transformers","unordered-containers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/lsp-test-0.14.0.0/lsp-test-0.14.0.0.tar.gz"},"name":"lsp-test","pinned":{"url":["https://hackage.haskell.org/package/lsp-test-0.14.0.0/lsp-test-0.14.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/lsp-test-0.14.0.0.tar.gz"],"sha256":"99ddd75b9250612342ca87f3485751d17ee725996acca5e66ba60d42556446dd","cabal-sha256":"cdbfe198c4b67b0e37e5cd304092e31dd52995a7b2719084031883d843cf6e88"},"version":"0.14.0.0"},
"lsp-types": {"dependencies":["aeson","base","binary","bytestring","containers","data-default","deepseq","dependent-sum","dependent-sum-template","directory","filepath","hashable","hslogger","lens","network-uri","rope-utf16-splay","scientific","some","template-haskell","temporary","text","unordered-containers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/lsp-types-1.2.0.0/lsp-types-1.2.0.0.tar.gz"},"name":"lsp-types","pinned":{"url":["https://hackage.haskell.org/package/lsp-types-1.2.0.0/lsp-types-1.2.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/lsp-types-1.2.0.0.tar.gz"],"sha256":"637a85878d7b8c895311eb6878f19c43038ef93db1e4de4820b04fa7bc30b4ab","cabal-sha256":"b76ac9911d3d8d48db35ed2dbf02b43006239daba314925aaf602b4e825737c8"},"version":"1.2.0.0"},
"lsp-types": {"dependencies":["aeson","base","binary","bytestring","containers","data-default","deepseq","dependent-sum","dependent-sum-template","directory","filepath","hashable","hslogger","lens","network-uri","rope-utf16-splay","scientific","some","template-haskell","temporary","text","unordered-containers"],"location":{"type":"vendored"},"name":"lsp-types","version":"1.2.0.0"},
"main-tester": {"dependencies":["base","bytestring","directory"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/main-tester-0.2.0.1/main-tester-0.2.0.1.tar.gz"},"name":"main-tester","pinned":{"url":["https://hackage.haskell.org/package/main-tester-0.2.0.1/main-tester-0.2.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/main-tester-0.2.0.1.tar.gz"],"sha256":"cf06f5934e374e1972f2cc76701c03d67c5536034d9ad32cace4e03819a57842","cabal-sha256":"49eab84f96bb70e1530f4a256d9c41a7b4175c8c372b68e900074a61e9d1f073"},"version":"0.2.0.1"},
"managed": {"dependencies":["base","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/managed-1.0.8/managed-1.0.8.tar.gz"},"name":"managed","pinned":{"url":["https://hackage.haskell.org/package/managed-1.0.8/managed-1.0.8.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/managed-1.0.8.tar.gz"],"sha256":"687c9bc525c4500afd731fc1310e083c9dfca2eaeb7c1a738d8f33e592779f03","cabal-sha256":"7d2d73f62b9b101a092d793bf890850361fb0f3246f91102ffe393f90a7a60e3"},"version":"1.0.8"},
"math-functions": {"dependencies":["base","data-default-class","deepseq","primitive","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/math-functions-0.3.4.2/math-functions-0.3.4.2.tar.gz"},"name":"math-functions","pinned":{"url":["https://hackage.haskell.org/package/math-functions-0.3.4.2/math-functions-0.3.4.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/math-functions-0.3.4.2.tar.gz"],"sha256":"c1e50ac0d23492b684cce33a9a979e1315ac144175b54f82eade9b8b1885c1a3","cabal-sha256":"5d942f0d6478c2a6b22049c033943538f8dd357c66ff874d328082136433cafb"},"version":"0.3.4.2"},
@ -169,7 +169,7 @@
"monad-control": {"dependencies":["base","stm","transformers","transformers-base","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/monad-control-1.0.2.3/monad-control-1.0.2.3.tar.gz"},"name":"monad-control","pinned":{"url":["https://hackage.haskell.org/package/monad-control-1.0.2.3/monad-control-1.0.2.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/monad-control-1.0.2.3.tar.gz"],"sha256":"6c1034189d237ae45368c70f0e68f714dd3beda715dd265b6c8a99fcc64022b1","cabal-sha256":"a3ae888d2fed2e2a0ca33ae11e2480219e07312bccf1a02ffe2ba2e3ec5913ee"},"version":"1.0.2.3"},
"monad-logger": {"dependencies":["base","bytestring","conduit","conduit-extra","exceptions","fast-logger","lifted-base","monad-control","monad-loops","mtl","resourcet","stm","stm-chans","template-haskell","text","transformers","transformers-base","transformers-compat","unliftio-core"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/monad-logger-0.3.36/monad-logger-0.3.36.tar.gz"},"name":"monad-logger","pinned":{"url":["https://hackage.haskell.org/package/monad-logger-0.3.36/monad-logger-0.3.36.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/monad-logger-0.3.36.tar.gz"],"sha256":"706d403f37a84d87ac83b79320e18f55cf15739daf4327aac411ce17c0043c8b","cabal-sha256":"f66f7d5ce7b7f43e98efdb90f9c790fe022526bb9e1ba80060b8087e76e131dc"},"version":"0.3.36"},
"monad-loops": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/monad-loops-0.4.3/monad-loops-0.4.3.tar.gz"},"name":"monad-loops","pinned":{"url":["https://hackage.haskell.org/package/monad-loops-0.4.3/monad-loops-0.4.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/monad-loops-0.4.3.tar.gz"],"sha256":"7eaaaf6bc43661e9e86e310ff8c56fbea16eb6bf13c31a2e28103138ac164c18","cabal-sha256":"ada4f1295ece07f9a7398bc5b40c4532f95a733a8604d2a2f57f05f878766df2"},"version":"0.4.3"},
"mono-traversable": {"dependencies":["base","bytestring","containers","hashable","split","text","transformers","unordered-containers","vector","vector-algorithms"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/mono-traversable-1.0.15.1/mono-traversable-1.0.15.1.tar.gz"},"name":"mono-traversable","pinned":{"url":["https://hackage.haskell.org/package/mono-traversable-1.0.15.1/mono-traversable-1.0.15.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/mono-traversable-1.0.15.1.tar.gz"],"sha256":"c2df5b79ed2f88f2ee313e57c1d591d4463788e20d39e439297eec5ba5835ddf","cabal-sha256":"cad0e8681cd6c96d3303867fc68c80e2f5d55c2c4bf5277c06ca74402fda61c8"},"version":"1.0.15.1"},
"mono-traversable": {"dependencies":["base","bytestring","containers","hashable","split","text","transformers","unordered-containers","vector","vector-algorithms"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/mono-traversable-1.0.15.1/mono-traversable-1.0.15.1.tar.gz"},"name":"mono-traversable","pinned":{"url":["https://hackage.haskell.org/package/mono-traversable-1.0.15.1/mono-traversable-1.0.15.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/mono-traversable-1.0.15.1.tar.gz"],"sha256":"c2df5b79ed2f88f2ee313e57c1d591d4463788e20d39e439297eec5ba5835ddf","cabal-sha256":"9ea638260fb4ea04ef138b9954922531f61e50df427565ed6969138cac77ffaf"},"version":"1.0.15.1"},
"monoid-subclasses": {"dependencies":["base","bytestring","containers","primes","text","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/monoid-subclasses-1.1/monoid-subclasses-1.1.tar.gz"},"name":"monoid-subclasses","pinned":{"url":["https://hackage.haskell.org/package/monoid-subclasses-1.1/monoid-subclasses-1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/monoid-subclasses-1.1.tar.gz"],"sha256":"e40effb85b24eb44ac4c2986f6ff952a73373fa3eaa72155106114de6ecc60af","cabal-sha256":"c8714abf6d70f9c71a187f460e5e72ae8b17ba59916a21866f2821cc78ac5fe8"},"version":"1.1"},
"mtl": {"dependencies":[],"location":{"type":"core"},"name":"mtl","version":"2.2.2"},
"mwc-random": {"dependencies":["base","math-functions","primitive","random","time","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/mwc-random-0.15.0.1/mwc-random-0.15.0.1.tar.gz"},"name":"mwc-random","pinned":{"url":["https://hackage.haskell.org/package/mwc-random-0.15.0.1/mwc-random-0.15.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/mwc-random-0.15.0.1.tar.gz"],"sha256":"030b05f658f2f574dd073e50338c8982a4cc8cbd2fa7111548539c05c92b0cdd","cabal-sha256":"48e4b01a7447671b8bd13957de65f19ef41ee0376083c0c501e179e68768276a"},"version":"0.15.0.1"},
@ -186,8 +186,8 @@
"optics-extra": {"dependencies":["array","base","bytestring","containers","hashable","indexed-profunctors","mtl","optics-core","text","transformers","unordered-containers","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/optics-extra-0.3/optics-extra-0.3.tar.gz"},"name":"optics-extra","pinned":{"url":["https://hackage.haskell.org/package/optics-extra-0.3/optics-extra-0.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/optics-extra-0.3.tar.gz"],"sha256":"a4d6155814111a5c6ce89640915ba5987296fec3cecc766ece3d4112abfd7697","cabal-sha256":"68c3dd038cb1b9a43107b645e33adfd14f085f5923ad01b42d222ee1b6aaa38f"},"version":"0.3"},
"optics-th": {"dependencies":["base","containers","mtl","optics-core","template-haskell","th-abstraction","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/optics-th-0.3.0.2/optics-th-0.3.0.2.tar.gz"},"name":"optics-th","pinned":{"url":["https://hackage.haskell.org/package/optics-th-0.3.0.2/optics-th-0.3.0.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/optics-th-0.3.0.2.tar.gz"],"sha256":"80f0cbb1cda044631ef421a0112e2d9a9868c22d95e845d97902d0fbf822b1d7","cabal-sha256":"e786f290c237a3236eda8814957da882227c05ed063d865d4ab1af08d638244f"},"version":"0.3.0.2"},
"optional-args": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/optional-args-1.0.2/optional-args-1.0.2.tar.gz"},"name":"optional-args","pinned":{"url":["https://hackage.haskell.org/package/optional-args-1.0.2/optional-args-1.0.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/optional-args-1.0.2.tar.gz"],"sha256":"2e3454ad77cba80b15c02dbe1915889fafa81a22deb7fe5e7e01b0dd8d85b0e4","cabal-sha256":"83f6a4c838bf011e85ea5573bfd4d7f8a8516d97c64d07135b1713526135aa39"},"version":"1.0.2"},
"optparse-applicative": {"dependencies":["ansi-wl-pprint","base","process","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/optparse-applicative-0.16.1.0/optparse-applicative-0.16.1.0.tar.gz"},"name":"optparse-applicative","pinned":{"url":["https://hackage.haskell.org/package/optparse-applicative-0.16.1.0/optparse-applicative-0.16.1.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/optparse-applicative-0.16.1.0.tar.gz"],"sha256":"6205278362f333c52256b9dd3edf5f8fe0f84f00cb9ee000291089f6eaccd69a","cabal-sha256":"d410cc76e288b93d4ee7e06addc0381a7eaea43bcee0c3ced03f05cadec2f2fc"},"version":"0.16.1.0"},
"optparse-generic": {"dependencies":["Only","base","bytestring","optparse-applicative","system-filepath","text","time","transformers","void"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/optparse-generic-1.4.4/optparse-generic-1.4.4.tar.gz"},"name":"optparse-generic","pinned":{"url":["https://hackage.haskell.org/package/optparse-generic-1.4.4/optparse-generic-1.4.4.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/optparse-generic-1.4.4.tar.gz"],"sha256":"e44853c0a3def2556cec31337db411d6404d7f81d505662f8ebac68e119bc077","cabal-sha256":"e14b67cd0fbb618dc12a8d8e94128f42971083b7de4b4cd4157aa82de8726b93"},"version":"1.4.4"},
"optparse-applicative": {"dependencies":["ansi-wl-pprint","base","process","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/optparse-applicative-0.16.1.0/optparse-applicative-0.16.1.0.tar.gz"},"name":"optparse-applicative","pinned":{"url":["https://hackage.haskell.org/package/optparse-applicative-0.16.1.0/optparse-applicative-0.16.1.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/optparse-applicative-0.16.1.0.tar.gz"],"sha256":"6205278362f333c52256b9dd3edf5f8fe0f84f00cb9ee000291089f6eaccd69a","cabal-sha256":"16ebd7054b2265c1aad16c1d19dc503695fbfc67b35203d9952fd577d08c0110"},"version":"0.16.1.0"},
"optparse-generic": {"dependencies":["Only","base","bytestring","optparse-applicative","system-filepath","text","time","transformers","void"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/optparse-generic-1.4.4/optparse-generic-1.4.4.tar.gz"},"name":"optparse-generic","pinned":{"url":["https://hackage.haskell.org/package/optparse-generic-1.4.4/optparse-generic-1.4.4.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/optparse-generic-1.4.4.tar.gz"],"sha256":"e44853c0a3def2556cec31337db411d6404d7f81d505662f8ebac68e119bc077","cabal-sha256":"2c5316378e1a0d919d123d813a918e9a60d32c0a335d7f968792740e52425d9c"},"version":"1.4.4"},
"parallel": {"dependencies":["array","base","containers","deepseq","ghc-prim"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/parallel-3.2.2.0/parallel-3.2.2.0.tar.gz"},"name":"parallel","pinned":{"url":["https://hackage.haskell.org/package/parallel-3.2.2.0/parallel-3.2.2.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/parallel-3.2.2.0.tar.gz"],"sha256":"170453a71a2a8b31cca63125533f7771d7debeb639700bdabdd779c34d8a6ef6","cabal-sha256":"421ce1717610bab82969572b96be89d83ea8d8afe7751cb54d80b996fff063d3"},"version":"3.2.2.0"},
"parameterized": {"dependencies":["base","data-diverse","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/parameterized-0.5.0.0/parameterized-0.5.0.0.tar.gz"},"name":"parameterized","pinned":{"url":["https://hackage.haskell.org/package/parameterized-0.5.0.0/parameterized-0.5.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/parameterized-0.5.0.0.tar.gz"],"sha256":"d76bc473c671f3c448cc0683ec44f4495cb21938ab27a8e2c35a94683a373346","cabal-sha256":"880717fbb958de1bac015f0a375ab6636f162a72483d987a11e305da6fac6c97"},"version":"0.5.0.0"},
"parsec": {"dependencies":[],"location":{"type":"core"},"name":"parsec","version":"3.1.14.0"},
@ -196,7 +196,7 @@
"path": {"dependencies":["aeson","base","deepseq","exceptions","filepath","hashable","template-haskell","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/path-0.8.0/path-0.8.0.tar.gz"},"name":"path","pinned":{"url":["https://hackage.haskell.org/package/path-0.8.0/path-0.8.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/path-0.8.0.tar.gz"],"sha256":"24cb49bb585f33a3b334ab55cb9bac251b66afdb617b71a20dbaeb820351fa6f","cabal-sha256":"4a522e0a8c0f54bd3d1e5690b22e29c35a7dee91cc2caff68bfe2a5c49ea700b"},"version":"0.8.0"},
"path-io": {"dependencies":["base","containers","directory","dlist","exceptions","filepath","path","temporary","time","transformers","unix-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/path-io-1.6.3/path-io-1.6.3.tar.gz"},"name":"path-io","pinned":{"url":["https://hackage.haskell.org/package/path-io-1.6.3/path-io-1.6.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/path-io-1.6.3.tar.gz"],"sha256":"b604737dd6949cddb44e145bae41f1babafa90441117e025b80375e42022ccb6","cabal-sha256":"0f98adf7869571dd471725bb100e062ba9a7dd36c0bd9d00ae620ce9bbe7f743"},"version":"1.6.3"},
"pem": {"dependencies":["base","basement","bytestring","memory"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/pem-0.2.4/pem-0.2.4.tar.gz"},"name":"pem","pinned":{"url":["https://hackage.haskell.org/package/pem-0.2.4/pem-0.2.4.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/pem-0.2.4.tar.gz"],"sha256":"770c4c1b9cd24b3db7f511f8a48404a0d098999e28573c3743a8a296bb96f8d4","cabal-sha256":"cc8e62118b783e284dc0fa032f54fe386a3861a948ec88079370a433c103a705"},"version":"0.2.4"},
"pipes": {"dependencies":["base","exceptions","mmorph","mtl","transformers","void"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/pipes-4.3.16/pipes-4.3.16.tar.gz"},"name":"pipes","pinned":{"url":["https://hackage.haskell.org/package/pipes-4.3.16/pipes-4.3.16.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/pipes-4.3.16.tar.gz"],"sha256":"f4e16ecf010fd681a56e6216ab1bd429f3c9bc962ec032e32cfd23e374e97498","cabal-sha256":"95225dd8c67ee9c5973feefb3d7d7247f53ba9fdbf921cc1f4d2aabff3e1850e"},"version":"4.3.16"},
"pipes": {"dependencies":["base","exceptions","mmorph","mtl","transformers","void"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/pipes-4.3.16/pipes-4.3.16.tar.gz"},"name":"pipes","pinned":{"url":["https://hackage.haskell.org/package/pipes-4.3.16/pipes-4.3.16.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/pipes-4.3.16.tar.gz"],"sha256":"f4e16ecf010fd681a56e6216ab1bd429f3c9bc962ec032e32cfd23e374e97498","cabal-sha256":"b07ee693958a52a216f3b64e1622adfcad36f5fc90dfc1fb9362ebb1729f50ac"},"version":"4.3.16"},
"polyparse": {"dependencies":["base","bytestring","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/polyparse-1.13/polyparse-1.13.tar.gz"},"name":"polyparse","pinned":{"url":["https://hackage.haskell.org/package/polyparse-1.13/polyparse-1.13.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/polyparse-1.13.tar.gz"],"sha256":"1c4c72980e1e5a4f07fea65ca08b2399581d2a6aa21eb1078f7ad286c279707b","cabal-sha256":"d43dc209be86cbc7eb5cb98cd80ad36c8b035397e9dd200f669b19d20f37b8d8"},"version":"1.13"},
"pretty": {"dependencies":[],"location":{"type":"core"},"name":"pretty","version":"1.1.3.6"},
"pretty-show": {"dependencies":["array","base","filepath","ghc-prim","happy","haskell-lexer","pretty","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/pretty-show-1.10/pretty-show-1.10.tar.gz"},"name":"pretty-show","pinned":{"url":["https://hackage.haskell.org/package/pretty-show-1.10/pretty-show-1.10.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/pretty-show-1.10.tar.gz"],"sha256":"307f9086e0b063d439dc4f513e36a145e8a57f23de448aefae2a6c00f6da6fd2","cabal-sha256":"bfef8da0ac4db4fc7f41edfec9e9a701ac206418d70702bff1e40f20d6a2b1f1"},"version":"1.10"},
@ -205,12 +205,12 @@
"primes": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/primes-0.2.1.0/primes-0.2.1.0.tar.gz"},"name":"primes","pinned":{"url":["https://hackage.haskell.org/package/primes-0.2.1.0/primes-0.2.1.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/primes-0.2.1.0.tar.gz"],"sha256":"74d66558fb638ea4d31eae2fe1a294cb5a9d64491314305d74a11d93f277c65b","cabal-sha256":"94885df2e13153e439ca9c6eb1893726776ca7022128fe860278294bad49d6a9"},"version":"0.2.1.0"},
"primitive": {"dependencies":["base","deepseq","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/primitive-0.7.1.0/primitive-0.7.1.0.tar.gz"},"name":"primitive","pinned":{"url":["https://hackage.haskell.org/package/primitive-0.7.1.0/primitive-0.7.1.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/primitive-0.7.1.0.tar.gz"],"sha256":"6bebecfdf2a57787d9fd5231bfd612b65a92edd7b33a973b2a0f11312b89a3f0","cabal-sha256":"29de6bfd0cf8ba023ceb806203dfbec0e51e3524e75ffe41056f70b4229c6f0f"},"version":"0.7.1.0"},
"process": {"dependencies":[],"location":{"type":"core"},"name":"process","version":"1.6.9.0"},
"profunctors": {"dependencies":["base","base-orphans","bifunctors","comonad","contravariant","distributive","tagged","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/profunctors-5.6.2/profunctors-5.6.2.tar.gz"},"name":"profunctors","pinned":{"url":["https://hackage.haskell.org/package/profunctors-5.6.2/profunctors-5.6.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/profunctors-5.6.2.tar.gz"],"sha256":"65955d7b50525a4a3bccdab1d982d2ae342897fd38140d5a94b5ef3800d8c92a","cabal-sha256":"4db306297d827cf65a32d9124d6f1a23105479ebb1988783006578bc5d4209da"},"version":"5.6.2"},
"profunctors": {"dependencies":["base","base-orphans","bifunctors","comonad","contravariant","distributive","tagged","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/profunctors-5.6.2/profunctors-5.6.2.tar.gz"},"name":"profunctors","pinned":{"url":["https://hackage.haskell.org/package/profunctors-5.6.2/profunctors-5.6.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/profunctors-5.6.2.tar.gz"],"sha256":"65955d7b50525a4a3bccdab1d982d2ae342897fd38140d5a94b5ef3800d8c92a","cabal-sha256":"d91e81cf7fc186d616543d5ca7aad78b1c45c692486ca75a3f022466ff8e4bad"},"version":"5.6.2"},
"proto3-suite": {"dependencies":["QuickCheck","aeson","aeson-pretty","attoparsec","base","base64-bytestring","binary","bytestring","cereal","containers","contravariant","deepseq","filepath","foldl","hashable","haskell-src","insert-ordered-containers","lens","mtl","neat-interpolation","optparse-applicative","optparse-generic","parsec","parsers","pretty","pretty-show","proto3-wire","quickcheck-instances","range-set-list","safe","swagger2","system-filepath","text","transformers","turtle","vector"],"location":{"type":"vendored"},"name":"proto3-suite","version":"0.4.2.0"},
"proto3-wire": {"dependencies":["QuickCheck","base","bytestring","cereal","containers","deepseq","ghc-prim","hashable","parameterized","primitive","safe","text","transformers","unordered-containers","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/proto3-wire-1.2.0/proto3-wire-1.2.0.tar.gz"},"name":"proto3-wire","pinned":{"url":["https://hackage.haskell.org/package/proto3-wire-1.2.0/proto3-wire-1.2.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/proto3-wire-1.2.0.tar.gz"],"sha256":"625a7165ede6e348ac4a9474498879e0319d3b833dbdde9153865b6909cc36f7","cabal-sha256":"898c88614ef328fe74d6abc153387a30855af7ccfcebf3b419681133e0fb9291"},"version":"1.2.0"},
"quickcheck-instances": {"dependencies":["QuickCheck","array","base","bytestring","case-insensitive","containers","data-fix","hashable","integer-logarithms","old-time","scientific","splitmix","strict","tagged","text","these","time","time-compat","transformers","transformers-compat","unordered-containers","uuid-types","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/quickcheck-instances-0.3.25.2/quickcheck-instances-0.3.25.2.tar.gz"},"name":"quickcheck-instances","pinned":{"url":["https://hackage.haskell.org/package/quickcheck-instances-0.3.25.2/quickcheck-instances-0.3.25.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/quickcheck-instances-0.3.25.2.tar.gz"],"sha256":"70ccf54c6553d6a23b4ee48dc02f1e4120cbb9a609e03af073b93541b35a1846","cabal-sha256":"58e409ce9d6fd8b31365acea41178ec01a1b44284822984aeeefb82f07c2ba5e"},"version":"0.3.25.2"},
"quickcheck-instances": {"dependencies":["QuickCheck","array","base","bytestring","case-insensitive","containers","data-fix","hashable","integer-logarithms","old-time","scientific","splitmix","strict","tagged","text","these","time","time-compat","transformers","transformers-compat","unordered-containers","uuid-types","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/quickcheck-instances-0.3.25.2/quickcheck-instances-0.3.25.2.tar.gz"},"name":"quickcheck-instances","pinned":{"url":["https://hackage.haskell.org/package/quickcheck-instances-0.3.25.2/quickcheck-instances-0.3.25.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/quickcheck-instances-0.3.25.2.tar.gz"],"sha256":"70ccf54c6553d6a23b4ee48dc02f1e4120cbb9a609e03af073b93541b35a1846","cabal-sha256":"083b84b91fccb3bbf22cd906f5bc731c8e6ee96c7554e892985452f2d61d4ad3"},"version":"0.3.25.2"},
"quickcheck-io": {"dependencies":["HUnit","QuickCheck","base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/quickcheck-io-0.2.0/quickcheck-io-0.2.0.tar.gz"},"name":"quickcheck-io","pinned":{"url":["https://hackage.haskell.org/package/quickcheck-io-0.2.0/quickcheck-io-0.2.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/quickcheck-io-0.2.0.tar.gz"],"sha256":"fb779119d79fe08ff4d502fb6869a70c9a8d5fd8ae0959f605c3c937efd96422","cabal-sha256":"7bf0b68fb90873825eb2e5e958c1b76126dcf984debb998e81673e6d837e0b2d"},"version":"0.2.0"},
"random": {"dependencies":["base","bytestring","deepseq","mtl","splitmix"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/random-1.2.0/random-1.2.0.tar.gz"},"name":"random","pinned":{"url":["https://hackage.haskell.org/package/random-1.2.0/random-1.2.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/random-1.2.0.tar.gz"],"sha256":"e4519cf7c058bfd5bdbe4acc782284acc9e25e74487208619ca83cbcd63fb9de","cabal-sha256":"30d72df4cc1d2fe2d445c88f0ee9d21965af7ce86660c43a6c32a6a1d90d51c9"},"version":"1.2.0"},
"random": {"dependencies":["base","bytestring","deepseq","mtl","splitmix"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/random-1.2.0/random-1.2.0.tar.gz"},"name":"random","pinned":{"url":["https://hackage.haskell.org/package/random-1.2.0/random-1.2.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/random-1.2.0.tar.gz"],"sha256":"e4519cf7c058bfd5bdbe4acc782284acc9e25e74487208619ca83cbcd63fb9de","cabal-sha256":"195506fedaa7c31c1fa2a747e9b49b4a5d1f0b09dd8f1291f23a771656faeec3"},"version":"1.2.0"},
"range-set-list": {"dependencies":["base","containers","deepseq","hashable"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/range-set-list-0.1.3.1/range-set-list-0.1.3.1.tar.gz"},"name":"range-set-list","pinned":{"url":["https://hackage.haskell.org/package/range-set-list-0.1.3.1/range-set-list-0.1.3.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/range-set-list-0.1.3.1.tar.gz"],"sha256":"12e8d9cb99a2847da32934ed7f44a5acedaa59d8fa19eff0f46aa77921460c55","cabal-sha256":"1bd9640aa97d8e1599a27a0f2e620040b4fdbc5cf2c5ff65efde0e2c18fd6521"},"version":"0.1.3.1"},
"recursion-schemes": {"dependencies":["base","base-orphans","comonad","containers","data-fix","free","template-haskell","th-abstraction","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/recursion-schemes-5.2.2.1/recursion-schemes-5.2.2.1.tar.gz"},"name":"recursion-schemes","pinned":{"url":["https://hackage.haskell.org/package/recursion-schemes-5.2.2.1/recursion-schemes-5.2.2.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/recursion-schemes-5.2.2.1.tar.gz"],"sha256":"bee32985de5560ba69ef1503eff041091ddaffd68ba8ad736a8fcd95971f02db","cabal-sha256":"fed7167e83698147d7c078bbb1fe74451f96c7c55ed9986c734d268070d85864"},"version":"5.2.2.1"},
"refact": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/refact-0.3.0.2/refact-0.3.0.2.tar.gz"},"name":"refact","pinned":{"url":["https://hackage.haskell.org/package/refact-0.3.0.2/refact-0.3.0.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/refact-0.3.0.2.tar.gz"],"sha256":"0ad029727797c8ca5d179c7abf1bfc135d86a7d72cf93785ee12ad243aeb1f6c","cabal-sha256":"4ea82b93debdc0711e1bc4b5d8989b9e19613f369ff2049da33c5250b8d33bcd"},"version":"0.3.0.2"},
@ -226,8 +226,8 @@
"safe-exceptions": {"dependencies":["base","deepseq","exceptions","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/safe-exceptions-0.1.7.1/safe-exceptions-0.1.7.1.tar.gz"},"name":"safe-exceptions","pinned":{"url":["https://hackage.haskell.org/package/safe-exceptions-0.1.7.1/safe-exceptions-0.1.7.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/safe-exceptions-0.1.7.1.tar.gz"],"sha256":"4bf6dd0a2b18279be843ece044a89248553c092bb1fc5bd7efa55c1c1d537d3e","cabal-sha256":"ccf8dacc48a8fbc8450de9d3ae6f949067bb0c96d52bb66e3044b5cd046382d5"},"version":"0.1.7.1"},
"scientific": {"dependencies":["base","binary","bytestring","containers","deepseq","hashable","integer-gmp","integer-logarithms","primitive","template-haskell","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/scientific-0.3.7.0/scientific-0.3.7.0.tar.gz"},"name":"scientific","pinned":{"url":["https://hackage.haskell.org/package/scientific-0.3.7.0/scientific-0.3.7.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/scientific-0.3.7.0.tar.gz"],"sha256":"a3a121c4b3d68fb8b9f8c709ab012e48f090ed553609247a805ad070d6b343a9","cabal-sha256":"0f188a7b92780d81a2e3cf1195a3a24cfe3e7c43d0e9e0f2101a465803d68076"},"version":"0.3.7.0"},
"semialign": {"dependencies":["base","containers","hashable","semigroupoids","tagged","these","transformers","unordered-containers","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/semialign-1.1.0.1/semialign-1.1.0.1.tar.gz"},"name":"semialign","pinned":{"url":["https://hackage.haskell.org/package/semialign-1.1.0.1/semialign-1.1.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/semialign-1.1.0.1.tar.gz"],"sha256":"9810bddff641bf7446a1939e5f337e368f894d06e3995a536704b3e16b241a87","cabal-sha256":"44fa0af083af848efef9ac5c6cfa0d3a26fcb58d209942fae2ff941bf0f8cbe7"},"version":"1.1.0.1"},
"semigroupoids": {"dependencies":["base","base-orphans","bifunctors","comonad","containers","contravariant","distributive","hashable","tagged","template-haskell","transformers","transformers-compat","unordered-containers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/semigroupoids-5.3.5/semigroupoids-5.3.5.tar.gz"},"name":"semigroupoids","pinned":{"url":["https://hackage.haskell.org/package/semigroupoids-5.3.5/semigroupoids-5.3.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/semigroupoids-5.3.5.tar.gz"],"sha256":"552f18e13ef347118911c950957e4adcda0a1f948e274f29ec449cc413d3c6b0","cabal-sha256":"5ccdfc9937718901b2c4a6829381bc62ebd1368945f89b4afe3ec5d5beae6a12"},"version":"5.3.5"},
"semigroups": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/semigroups-0.19.1/semigroups-0.19.1.tar.gz"},"name":"semigroups","pinned":{"url":["https://hackage.haskell.org/package/semigroups-0.19.1/semigroups-0.19.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/semigroups-0.19.1.tar.gz"],"sha256":"79e761e64b862564a3470d5d356cb6b060b14452d675859aed3b2d1e14646648","cabal-sha256":"ecae129621e0d2f77bef2f01e4458c2e0567ab6e1f39579c61d7cec8058ebb0e"},"version":"0.19.1"},
"semigroupoids": {"dependencies":["base","base-orphans","bifunctors","comonad","containers","contravariant","distributive","hashable","tagged","template-haskell","transformers","transformers-compat","unordered-containers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/semigroupoids-5.3.5/semigroupoids-5.3.5.tar.gz"},"name":"semigroupoids","pinned":{"url":["https://hackage.haskell.org/package/semigroupoids-5.3.5/semigroupoids-5.3.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/semigroupoids-5.3.5.tar.gz"],"sha256":"552f18e13ef347118911c950957e4adcda0a1f948e274f29ec449cc413d3c6b0","cabal-sha256":"e9ad7265a3baca520054fd2f9d6b1ebe6779502dc377550c99dee43e88555a8f"},"version":"5.3.5"},
"semigroups": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/semigroups-0.19.1/semigroups-0.19.1.tar.gz"},"name":"semigroups","pinned":{"url":["https://hackage.haskell.org/package/semigroups-0.19.1/semigroups-0.19.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/semigroups-0.19.1.tar.gz"],"sha256":"79e761e64b862564a3470d5d356cb6b060b14452d675859aed3b2d1e14646648","cabal-sha256":"cd827aaba0c2b57727dedecdfcc7eec5f14719b73c7675037c73c74f642c1782"},"version":"0.19.1"},
"semver": {"dependencies":["attoparsec","base","deepseq","hashable","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/semver-0.4.0.1/semver-0.4.0.1.tar.gz"},"name":"semver","pinned":{"url":["https://hackage.haskell.org/package/semver-0.4.0.1/semver-0.4.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/semver-0.4.0.1.tar.gz"],"sha256":"7c47e326684efe407b2dc77924aa71c57c712465a9ed39c4097e6c1e1a1ff641","cabal-sha256":"a4f77491e1e7c8101e203748f6122918224590a44f81c39fefc62e27b448868d"},"version":"0.4.0.1"},
"setenv": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/setenv-0.1.1.3/setenv-0.1.1.3.tar.gz"},"name":"setenv","pinned":{"url":["https://hackage.haskell.org/package/setenv-0.1.1.3/setenv-0.1.1.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/setenv-0.1.1.3.tar.gz"],"sha256":"e358df39afc03d5a39e2ec650652d845c85c80cc98fe331654deafb4767ecb32","cabal-sha256":"c5916ac0d2a828473cd171261328a290afe0abd799db1ac8c310682fe778c45b"},"version":"0.1.1.3"},
"shake": {"dependencies":["base","binary","bytestring","deepseq","directory","extra","file-embed","filepath","filepattern","hashable","heaps","js-dgtable","js-flot","js-jquery","primitive","process","random","template-haskell","time","transformers","unordered-containers","utf8-string"],"location":{"type":"vendored"},"name":"shake","version":"0.18.5"},
@ -244,12 +244,12 @@
"stm-chans": {"dependencies":["Cabal","base","stm"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/stm-chans-3.0.0.4/stm-chans-3.0.0.4.tar.gz"},"name":"stm-chans","pinned":{"url":["https://hackage.haskell.org/package/stm-chans-3.0.0.4/stm-chans-3.0.0.4.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/stm-chans-3.0.0.4.tar.gz"],"sha256":"2344fc5bfa33d565bad7b009fc0e2c5a7a595060ba149c661f44419fc0d54738","cabal-sha256":"e2eef3cea5251628f7b2ad22c24a1e5d08b83c19be4bd886ab0d7fed58ef2a6d"},"version":"3.0.0.4"},
"stm-conduit": {"dependencies":["async","base","cereal","cereal-conduit","conduit","conduit-extra","directory","exceptions","monad-loops","resourcet","stm","stm-chans","transformers","unliftio"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/stm-conduit-4.0.1/stm-conduit-4.0.1.tar.gz"},"name":"stm-conduit","pinned":{"url":["https://hackage.haskell.org/package/stm-conduit-4.0.1/stm-conduit-4.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/stm-conduit-4.0.1.tar.gz"],"sha256":"e80e5be72a4564fa45e1e27f91c0984e12d2a736d0ceb9594350d573efee1442","cabal-sha256":"71f477c617400fb5bee74557416d7dac17dccea0663ec29bf9ca67b52703637d"},"version":"4.0.1"},
"streaming-commons": {"dependencies":["Win32","array","async","base","bytestring","directory","filepath","network","process","random","stm","text","transformers","zlib"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/streaming-commons-0.2.2.1/streaming-commons-0.2.2.1.tar.gz"},"name":"streaming-commons","pinned":{"url":["https://hackage.haskell.org/package/streaming-commons-0.2.2.1/streaming-commons-0.2.2.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/streaming-commons-0.2.2.1.tar.gz"],"sha256":"306940bf4878a0b714e6746a7f934d018100efc86332c176a648014bfe1e81dd","cabal-sha256":"28abce35b48dcfb871926dad4cb37bdf737372892b4e5222abc97ca31f2ac738"},"version":"0.2.2.1"},
"strict": {"dependencies":["assoc","base","binary","bytestring","deepseq","ghc-prim","hashable","text","these","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/strict-0.4.0.1/strict-0.4.0.1.tar.gz"},"name":"strict","pinned":{"url":["https://hackage.haskell.org/package/strict-0.4.0.1/strict-0.4.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/strict-0.4.0.1.tar.gz"],"sha256":"dff6abc08ad637e51891bb8b475778c40926c51219eda60fd64f0d9680226241","cabal-sha256":"08cf72ad570fddfe3b3424117bf20a303a1fb21047b40c1d6c8004c0e3e02a0b"},"version":"0.4.0.1"},
"strict": {"dependencies":["assoc","base","binary","bytestring","deepseq","ghc-prim","hashable","text","these","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/strict-0.4.0.1/strict-0.4.0.1.tar.gz"},"name":"strict","pinned":{"url":["https://hackage.haskell.org/package/strict-0.4.0.1/strict-0.4.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/strict-0.4.0.1.tar.gz"],"sha256":"dff6abc08ad637e51891bb8b475778c40926c51219eda60fd64f0d9680226241","cabal-sha256":"50187e750751a258efea12ef2979e16a014a953c15bf4c2fca2f1168a44a5a12"},"version":"0.4.0.1"},
"swagger2": {"dependencies":["Cabal","QuickCheck","aeson","aeson-pretty","base","base-compat-batteries","bytestring","cabal-doctest","containers","cookie","generics-sop","hashable","http-media","insert-ordered-containers","lens","mtl","network","optics-core","optics-th","scientific","template-haskell","text","time","transformers","transformers-compat","unordered-containers","uuid-types","vector"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/swagger2-2.6/swagger2-2.6.tar.gz"},"name":"swagger2","pinned":{"url":["https://hackage.haskell.org/package/swagger2-2.6/swagger2-2.6.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/swagger2-2.6.tar.gz"],"sha256":"682afe3b43d6b7c394cab330bb48692b8045dff8db3e8913bbfabee0fa8c706e","cabal-sha256":"12c0752b397da71e286a2f8998dfd842376df56f624deb0ad8d858c6e20cb8bd"},"version":"2.6"},
"syb": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/syb-0.7.2.1/syb-0.7.2.1.tar.gz"},"name":"syb","pinned":{"url":["https://hackage.haskell.org/package/syb-0.7.2.1/syb-0.7.2.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/syb-0.7.2.1.tar.gz"],"sha256":"1807c66f77e66786739387f0ae9f16d150d1cfa9d626afcb729f0e9b442a8d96","cabal-sha256":"bf42655a213402215299e435c52f799e76cbec0b984cd7153d6b9af8a1c0803f"},"version":"0.7.2.1"},
"system-fileio": {"dependencies":["Win32","base","bytestring","directory","system-filepath","text","time"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/system-fileio-0.3.16.4/system-fileio-0.3.16.4.tar.gz"},"name":"system-fileio","pinned":{"url":["https://hackage.haskell.org/package/system-fileio-0.3.16.4/system-fileio-0.3.16.4.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/system-fileio-0.3.16.4.tar.gz"],"sha256":"34e58b88a19a69ff1a559e211af6edb596e33ee1b1d5f44490febf325c78c6c7","cabal-sha256":"ca3a89469943828bcd526bed2d6943541e3e672464fd58abab3443b63f59c5ba"},"version":"0.3.16.4"},
"system-filepath": {"dependencies":["Cabal","base","bytestring","deepseq","text"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/system-filepath-0.4.14/system-filepath-0.4.14.tar.gz"},"name":"system-filepath","pinned":{"url":["https://hackage.haskell.org/package/system-filepath-0.4.14/system-filepath-0.4.14.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/system-filepath-0.4.14.tar.gz"],"sha256":"1656ce3c0d585650784ceb3f794748286e19fb635f557e7b29b0897f8956d993","cabal-sha256":"e8ce7d24d7008a825e5d03aa672950a0e8178ac54c3de7134f36c3a7e37694a2"},"version":"0.4.14"},
"tagged": {"dependencies":["base","deepseq","template-haskell","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/tagged-0.8.6.1/tagged-0.8.6.1.tar.gz"},"name":"tagged","pinned":{"url":["https://hackage.haskell.org/package/tagged-0.8.6.1/tagged-0.8.6.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/tagged-0.8.6.1.tar.gz"],"sha256":"f5e0fcf95f0bb4aa63f428f2c01955a41ea1a42cfcf39145ed631f59a9616c02","cabal-sha256":"5ddf1e324c3cd644f097a48bf490f0bedf467f723fd240afb3ab3b750577f8e7"},"version":"0.8.6.1"},
"tagged": {"dependencies":["base","deepseq","template-haskell","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/tagged-0.8.6.1/tagged-0.8.6.1.tar.gz"},"name":"tagged","pinned":{"url":["https://hackage.haskell.org/package/tagged-0.8.6.1/tagged-0.8.6.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/tagged-0.8.6.1.tar.gz"],"sha256":"f5e0fcf95f0bb4aa63f428f2c01955a41ea1a42cfcf39145ed631f59a9616c02","cabal-sha256":"29c67d98a4404607f024750ab9c7210dadcbbef4e1944c48c52902f2071b2662"},"version":"0.8.6.1"},
"tar": {"dependencies":["array","base","bytestring","containers","deepseq","directory","filepath","time"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/tar-0.5.1.1/tar-0.5.1.1.tar.gz"},"name":"tar","pinned":{"url":["https://hackage.haskell.org/package/tar-0.5.1.1/tar-0.5.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/tar-0.5.1.1.tar.gz"],"sha256":"b384449f62b2b0aa3e6d2cb1004b8060b01f21ec93e7b63e7af6d8fad8a9f1de","cabal-sha256":"94ded05718fe75b88c98e7113feeb9fca50688a7e59b6aefd80a6f48438c5062"},"version":"0.5.1.1"},
"tar-conduit": {"dependencies":["base","bytestring","conduit","conduit-combinators","directory","filepath","safe-exceptions","text","time","unix-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/tar-conduit-0.3.2/tar-conduit-0.3.2.tar.gz"},"name":"tar-conduit","pinned":{"url":["https://hackage.haskell.org/package/tar-conduit-0.3.2/tar-conduit-0.3.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/tar-conduit-0.3.2.tar.gz"],"sha256":"004578db7088e7ad53e23f8a293d739314698f0ec421ffad7be101e13c1cf62d","cabal-sha256":"17cb1c05343ed32db111c3f929f57ccce2b92a01d3ebd95a339db5e9b8bf147b"},"version":"0.3.2"},
"tasty": {"dependencies":["ansi-terminal","base","clock","containers","mtl","optparse-applicative","stm","tagged","unbounded-delays"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/tasty-1.4.1/tasty-1.4.1.tar.gz"},"name":"tasty","pinned":{"url":["https://hackage.haskell.org/package/tasty-1.4.1/tasty-1.4.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/tasty-1.4.1.tar.gz"],"sha256":"2728f04ea61d45c665188577f0748a54ca6960200b33e4a3b10ae8dba4d4ae47","cabal-sha256":"69e90e965543faf0fc2c8e486d6c1d8cf81fd108e2c4541234c41490f392f94f"},"version":"1.4.1"},
@ -268,13 +268,13 @@
"th-abstraction": {"dependencies":["base","containers","ghc-prim","template-haskell"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/th-abstraction-0.4.2.0/th-abstraction-0.4.2.0.tar.gz"},"name":"th-abstraction","pinned":{"url":["https://hackage.haskell.org/package/th-abstraction-0.4.2.0/th-abstraction-0.4.2.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/th-abstraction-0.4.2.0.tar.gz"],"sha256":"ea06b2cda25fc4b52dac48cc23e5a756f997df8985ecaee5a554202508a11c40","cabal-sha256":"6ba7b201931f614173755f060fdf98f02095df68c1f7bc3e2691cf9d443e81f9"},"version":"0.4.2.0"},
"th-compat": {"dependencies":["base","template-haskell"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/th-compat-0.1.2/th-compat-0.1.2.tar.gz"},"name":"th-compat","pinned":{"url":["https://hackage.haskell.org/package/th-compat-0.1.2/th-compat-0.1.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/th-compat-0.1.2.tar.gz"],"sha256":"2bc45d0199de3dc65ebc9b71251799f5238869dbc6a66bdf0c06c7e23d603801","cabal-sha256":"3d55de1adc542c1a870c9ada90da2fbbe5f4e8bcd3eed545a55c3df9311b32a8"},"version":"0.1.2"},
"th-extras": {"dependencies":["base","syb","template-haskell"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/th-extras-0.0.0.4/th-extras-0.0.0.4.tar.gz"},"name":"th-extras","pinned":{"url":["https://hackage.haskell.org/package/th-extras-0.0.0.4/th-extras-0.0.0.4.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/th-extras-0.0.0.4.tar.gz"],"sha256":"8feff450aaf28ec4f08c45a5656c62879861a8e7f45591cb367d5351ddc3fbed","cabal-sha256":"2f408c0f427530f36beb19c733a7a57f67b727713f9bb942b64f3b2e0e2932bf"},"version":"0.0.0.4"},
"these": {"dependencies":["assoc","base","binary","deepseq","hashable"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/these-1.1.1.1/these-1.1.1.1.tar.gz"},"name":"these","pinned":{"url":["https://hackage.haskell.org/package/these-1.1.1.1/these-1.1.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/these-1.1.1.1.tar.gz"],"sha256":"d798c9f56e17def441e8f51e54cc11afdb3e76c6a9d1e9ee154e9a78da0bf508","cabal-sha256":"e981c65228db5ae77a043631f74a1e4a4b770f7213866f584e3476b52512f1af"},"version":"1.1.1.1"},
"these": {"dependencies":["assoc","base","binary","deepseq","hashable"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/these-1.1.1.1/these-1.1.1.1.tar.gz"},"name":"these","pinned":{"url":["https://hackage.haskell.org/package/these-1.1.1.1/these-1.1.1.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/these-1.1.1.1.tar.gz"],"sha256":"d798c9f56e17def441e8f51e54cc11afdb3e76c6a9d1e9ee154e9a78da0bf508","cabal-sha256":"bdc0a3015b2e5cdf016e402937d71856ae5fe4e9e9a0d4823cc94a214c55a39b"},"version":"1.1.1.1"},
"time": {"dependencies":[],"location":{"type":"core"},"name":"time","version":"1.9.3"},
"time-compat": {"dependencies":["base","base-orphans","deepseq","time"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/time-compat-1.9.5/time-compat-1.9.5.tar.gz"},"name":"time-compat","pinned":{"url":["https://hackage.haskell.org/package/time-compat-1.9.5/time-compat-1.9.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/time-compat-1.9.5.tar.gz"],"sha256":"3126b267d19f31d52a3c36f13a8788be03242f829a5bddd8a3084e134d01e3a6","cabal-sha256":"a586bd5a59b47ea0c9eafc55c6936ede11126f4a6e619d6d7aeefee73c43d9b8"},"version":"1.9.5"},
"time-locale-compat": {"dependencies":["base","time"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/time-locale-compat-0.1.1.5/time-locale-compat-0.1.1.5.tar.gz"},"name":"time-locale-compat","pinned":{"url":["https://hackage.haskell.org/package/time-locale-compat-0.1.1.5/time-locale-compat-0.1.1.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/time-locale-compat-0.1.1.5.tar.gz"],"sha256":"07ff1566de7d851423a843b2de385442319348c621d4f779b3d365ce91ac502c","cabal-sha256":"24b10ab3de20f5fc00f0e4f7832ac66dd5597033b78cff3bd6b4505d8a652e5b"},"version":"0.1.1.5"},
"tls": {"dependencies":["asn1-encoding","asn1-types","async","base","bytestring","cereal","cryptonite","data-default-class","hourglass","memory","mtl","network","transformers","x509","x509-store","x509-validation"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/tls-1.5.5/tls-1.5.5.tar.gz"},"name":"tls","pinned":{"url":["https://hackage.haskell.org/package/tls-1.5.5/tls-1.5.5.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/tls-1.5.5.tar.gz"],"sha256":"8a48b5ced43fac15c99158f0eedec458d77a6605c1a4302d41457f5a70ef3948","cabal-sha256":"f6681d6624071211edd509a8f56e0c96b4f003bb349b7dc706d4333775a373c5"},"version":"1.5.5"},
"transformers": {"dependencies":[],"location":{"type":"core"},"name":"transformers","version":"0.5.6.2"},
"transformers-base": {"dependencies":["base","base-orphans","stm","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/transformers-base-0.4.5.2/transformers-base-0.4.5.2.tar.gz"},"name":"transformers-base","pinned":{"url":["https://hackage.haskell.org/package/transformers-base-0.4.5.2/transformers-base-0.4.5.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/transformers-base-0.4.5.2.tar.gz"],"sha256":"d0c80c63fdce6a077dd8eda4f1ff289b85578703a3f1272e141d400fe23245e8","cabal-sha256":"e4d8155470905ba2942033a1537fc4cf91927d1c9b34693fd57ddf3bc02334af"},"version":"0.4.5.2"},
"transformers-base": {"dependencies":["base","base-orphans","stm","transformers","transformers-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/transformers-base-0.4.5.2/transformers-base-0.4.5.2.tar.gz"},"name":"transformers-base","pinned":{"url":["https://hackage.haskell.org/package/transformers-base-0.4.5.2/transformers-base-0.4.5.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/transformers-base-0.4.5.2.tar.gz"],"sha256":"d0c80c63fdce6a077dd8eda4f1ff289b85578703a3f1272e141d400fe23245e8","cabal-sha256":"402740dd5ef6574a05c7e4a3c874262e5a24b713c2b8b5125d59847ebd1041a2"},"version":"0.4.5.2"},
"transformers-compat": {"dependencies":["base","ghc-prim","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/transformers-compat-0.6.6/transformers-compat-0.6.6.tar.gz"},"name":"transformers-compat","pinned":{"url":["https://hackage.haskell.org/package/transformers-compat-0.6.6/transformers-compat-0.6.6.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/transformers-compat-0.6.6.tar.gz"],"sha256":"7e2e0251e5e6d28142615a4b950a3fabac9c0b7804b1ec4a4ae985f19519a9f9","cabal-sha256":"510709db2b12d1510d70de824ee544ca0a9e6f27aa7e299218cbacc0750b4a5e"},"version":"0.6.6"},
"turtle": {"dependencies":["Win32","ansi-wl-pprint","async","base","bytestring","clock","containers","directory","exceptions","foldl","hostname","managed","optional-args","optparse-applicative","process","stm","streaming-commons","system-fileio","system-filepath","temporary","text","time","transformers","unix-compat"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/turtle-1.5.22/turtle-1.5.22.tar.gz"},"name":"turtle","pinned":{"url":["https://hackage.haskell.org/package/turtle-1.5.22/turtle-1.5.22.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/turtle-1.5.22.tar.gz"],"sha256":"9ac4bbbd8063e376b1b05c174333d161915ac259f305afd33591f55cd6208e92","cabal-sha256":"fc122594dcdd714d9fcfbf8fdb5eef0652e067d6ce14f376fbfc3cf0b77d7d42"},"version":"1.5.22"},
"type-equality": {"dependencies":["base"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/type-equality-1/type-equality-1.tar.gz"},"name":"type-equality","pinned":{"url":["https://hackage.haskell.org/package/type-equality-1/type-equality-1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/type-equality-1.tar.gz"],"sha256":"4728b502a211454ef682a10d7a3e817c22d06ba509df114bb267ef9d43a08ce8","cabal-sha256":"f2a895a7b22384d9b43a9c6608725b2de7581e77e5b20ab9cfe3f959f6cd71a8"},"version":"1"},
@ -284,7 +284,7 @@
"unix-compat": {"dependencies":["Win32","base","directory","time"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/unix-compat-0.5.3/unix-compat-0.5.3.tar.gz"},"name":"unix-compat","pinned":{"url":["https://hackage.haskell.org/package/unix-compat-0.5.3/unix-compat-0.5.3.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/unix-compat-0.5.3.tar.gz"],"sha256":"0893b597ea0db406429d0d563506af6755728eface0e1981f9392122db88e5c8","cabal-sha256":"60be4a0b2e1cd873e5ad5f0cc9e53575b77640567abb43ef700d5b323ca2ac49"},"version":"0.5.3"},
"unix-time": {"dependencies":["base","binary","bytestring","old-time"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/unix-time-0.4.7/unix-time-0.4.7.tar.gz"},"name":"unix-time","pinned":{"url":["https://hackage.haskell.org/package/unix-time-0.4.7/unix-time-0.4.7.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/unix-time-0.4.7.tar.gz"],"sha256":"19233f8badf921d444c6165689253d877cfed58ce08f28cad312558a9280de09","cabal-sha256":"c0d971d04561875b908451c563df8728fe6d8639c90e070b244227f13f76ab8e"},"version":"0.4.7"},
"unliftio": {"dependencies":["async","base","bytestring","deepseq","directory","filepath","process","stm","time","transformers","unliftio-core"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/unliftio-0.2.18/unliftio-0.2.18.tar.gz"},"name":"unliftio","pinned":{"url":["https://hackage.haskell.org/package/unliftio-0.2.18/unliftio-0.2.18.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/unliftio-0.2.18.tar.gz"],"sha256":"3ef4ed7a6d4f78a0c4dc21daba310953ad56619c355091d0e1ed923bb6e8e579","cabal-sha256":"87fb541127d21939d3efc49ed9bc3df6eadc9eb06ffa7755fc857f62e15daf20"},"version":"0.2.18"},
"unliftio-core": {"dependencies":["base","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/unliftio-core-0.2.0.1/unliftio-core-0.2.0.1.tar.gz"},"name":"unliftio-core","pinned":{"url":["https://hackage.haskell.org/package/unliftio-core-0.2.0.1/unliftio-core-0.2.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/unliftio-core-0.2.0.1.tar.gz"],"sha256":"919f0d1297ea2f5373118553c1df2a9405d8b9e31a8307e829da67d4953c299a","cabal-sha256":"9b3e44ea9aacacbfc35b3b54015af450091916ac3618a41868ebf6546977659a"},"version":"0.2.0.1"},
"unliftio-core": {"dependencies":["base","transformers"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/unliftio-core-0.2.0.1/unliftio-core-0.2.0.1.tar.gz"},"name":"unliftio-core","pinned":{"url":["https://hackage.haskell.org/package/unliftio-core-0.2.0.1/unliftio-core-0.2.0.1.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/unliftio-core-0.2.0.1.tar.gz"],"sha256":"919f0d1297ea2f5373118553c1df2a9405d8b9e31a8307e829da67d4953c299a","cabal-sha256":"f9abcdd3f3d28e4840563efb7b8760d2de9b5707bcd6f53a87f6a0d77bb5a9f7"},"version":"0.2.0.1"},
"unordered-containers": {"dependencies":["base","deepseq","hashable"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/unordered-containers-0.2.14.0/unordered-containers-0.2.14.0.tar.gz"},"name":"unordered-containers","pinned":{"url":["https://hackage.haskell.org/package/unordered-containers-0.2.14.0/unordered-containers-0.2.14.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/unordered-containers-0.2.14.0.tar.gz"],"sha256":"a10f48a94cef1fab72d2a404c7d541a3cda54ab2f1321872658aca7e5e9d8867","cabal-sha256":"2fe789f78246b7c7ec10d7b85c72d898a9f72fdda5b60d581e839d21016bc628"},"version":"0.2.14.0"},
"uri-encode": {"dependencies":["base","bytestring","network-uri","text","utf8-string"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/uri-encode-1.5.0.7/uri-encode-1.5.0.7.tar.gz"},"name":"uri-encode","pinned":{"url":["https://hackage.haskell.org/package/uri-encode-1.5.0.7/uri-encode-1.5.0.7.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/uri-encode-1.5.0.7.tar.gz"],"sha256":"c79c624257833841a22890e4d2b0ab07e4be88e0f99474d328223815c0814252","cabal-sha256":"e102329abf9066f2ec825a969c6f00f7676ac4dd6b27fae0e5c8bf865a7b559c"},"version":"1.5.0.7"},
"utf8-string": {"dependencies":["base","bytestring"],"location":{"type":"hackage","url":"https://hackage.haskell.org/package/utf8-string-1.0.2/utf8-string-1.0.2.tar.gz"},"name":"utf8-string","pinned":{"url":["https://hackage.haskell.org/package/utf8-string-1.0.2/utf8-string-1.0.2.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/utf8-string-1.0.2.tar.gz"],"sha256":"ee48deada7600370728c4156cb002441de770d0121ae33a68139a9ed9c19b09a","cabal-sha256":"79416292186feeaf1f60e49ac5a1ffae9bf1b120e040a74bf0e81ca7f1d31d3f"},"version":"1.0.2"},