diff --git a/.arcconfig b/.arcconfig
deleted file mode 100644
index 5a888cdf81bbceb59f7653d84ac05273cb37cf02..0000000000000000000000000000000000000000
--- a/.arcconfig
+++ /dev/null
@@ -1,4 +0,0 @@
-{
-  "repository.callsign" : "CABAL",
-  "phabricator.uri"     : "https://phabricator.haskell.org"
-}
diff --git a/.ghci b/.ghci
deleted file mode 100644
index 1e251d3101621bfba8fa1c578b2d0f41aa0e52c2..0000000000000000000000000000000000000000
--- a/.ghci
+++ /dev/null
@@ -1,2 +0,0 @@
-:set -icabal-install -icabal-install/main
-:load Main
diff --git a/.ghcid b/.ghcid
deleted file mode 100644
index 510c5efdff423a793c2917ca283d87387e1dfde3..0000000000000000000000000000000000000000
--- a/.ghcid
+++ /dev/null
@@ -1 +0,0 @@
---command "ghci -j4 +RTS -A128m"
diff --git a/.github/mergify.yml b/.github/mergify.yml
new file mode 100644
index 0000000000000000000000000000000000000000..7f94ccba58e53ef4b0403b9170e78d7383c0db88
--- /dev/null
+++ b/.github/mergify.yml
@@ -0,0 +1,29 @@
+pull_request_rules:
+  # rebase+merge strategy
+  - actions:
+      queue:
+        name: default
+        # Merge into master with a merge commit
+        method: merge
+        # Update the pr branch with rebase, so the history is clean
+        update_method: rebase
+    name: Put pull requests in the rebase+merge queue
+    conditions:
+      - label=merge me
+      - '#approved-reviews-by>=2'
+  # merge+squash strategy
+  - actions:
+      queue:
+        name: default
+        method: squash
+        # both update methods get absorbed by the squash, so we use the most
+        # reliable
+        update_method: merge
+    name: Put pull requests in the squash+merge queue
+    conditions:
+      - label=squash+merge me
+      - '#approved-reviews-by>=2'
+
+queue_rules:
+  - name: default
+    conditions: []
diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml
index c2a1a78101aca5d73605ac915dcc224ab26e80f0..8921350404bb37deb6195d5fed61f0a509df8d31 100644
--- a/.github/workflows/windows.yml
+++ b/.github/workflows/windows.yml
@@ -63,7 +63,7 @@ jobs:
           cabal v2-run cabal-install:unit-tests -- --pattern "! (/FileMonitor/ || /VCS/ || /Get/)"
       - name: cabal-tests
         # Using only one job, -j1, to fail less.
-        run: cabal v2-run cabal-testsuite:cabal-tests -- -j1 --with-cabal=dist-newstyle\build\x86_64-windows\ghc-8.6.5\cabal-install-3.6.0.0\x\cabal\build\cabal\cabal.exe
+        run: cabal v2-run cabal-testsuite:cabal-tests -- -j1 --with-cabal=dist-newstyle\build\x86_64-windows\ghc-8.6.5\cabal-install-3.7.0.0\x\cabal\build\cabal\cabal.exe
   test-windows-8_10_4:
     name: test ghc-8.10.4
     runs-on: windows-latest
@@ -111,4 +111,4 @@ jobs:
           cabal v2-run cabal-install:unit-tests -- --pattern "! (/FileMonitor/ || /VCS/ || /Get/)"
       - name: cabal-tests
         # Using only one job, -j1, to fail less.
-        run: cabal v2-run cabal-testsuite:cabal-tests -- -j1 --with-cabal=dist-newstyle\build\x86_64-windows\ghc-8.10.4\cabal-install-3.6.0.0\x\cabal\build\cabal\cabal.exe
+        run: cabal v2-run cabal-testsuite:cabal-tests -- -j1 --with-cabal=dist-newstyle\build\x86_64-windows\ghc-8.10.4\cabal-install-3.7.0.0\x\cabal\build\cabal\cabal.exe
diff --git a/.gitignore b/.gitignore
index b5bea88e8709bd15c35982e5d6d8beabb23edfc1..4747b90b7af5af4a6845276618a3c3dd190c6ae3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -26,6 +26,11 @@ cabal-tests.log
 /cabal-install/Setup
 /cabal-install/source-file-list
 
+.stylish-haskell.yaml
+.stylish-haskell.yml
+.ghci
+.ghcid
+
 # Output of release and bootstrap
 _build
 
@@ -69,3 +74,6 @@ register.sh
 
 # benchmarks
 bench.html
+
+# Emacs
+.projectile
\ No newline at end of file
diff --git a/.mention-bot b/.mention-bot
deleted file mode 100644
index c936d2e509035e188bae506312f1619687832bcd..0000000000000000000000000000000000000000
--- a/.mention-bot
+++ /dev/null
@@ -1,6 +0,0 @@
-{
-  "userBlacklist": [
-    "BardurArantsson"
-  , "SyntaxPolice"
-  ]
-}
diff --git a/.projectile b/.projectile
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/.stylish-haskell.yaml b/.stylish-haskell.yaml
deleted file mode 100644
index a45adc10418e68726a4b768512f37fa5f4868b4d..0000000000000000000000000000000000000000
--- a/.stylish-haskell.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-steps:
-  - imports:
-      align: group
-      list_align: after_alias
-      long_list_align: new_line
-      empty_list_align: right_after
-      list_padding: module_name
-  - language_pragmas:
-      style: vertical
-      remove_redundant: true
-  - trailing_whitespace: {}
-columns: 160
-language_extensions:
-  - DataKinds
-  - DerivingStrategies
-  - ExplicitForAll
-  - FlexibleContexts
-  - GeneralizedNewtypeDeriving
-  - MultiParamTypeClasses
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 0aefb5c534b528b29de014e45d464553ac393576..6d4b6eb15bb8d6511846d857fb609dc0fcbb48f3 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -29,11 +29,11 @@ cabal v2-build cabal-tests # etc...
 Running tests
 -------------
 
-**Using Github Actions and AppVeyor.**
+**Using Github Actions.**
 If you are not in a hurry, the most convenient way to run tests on Cabal
 is to make a branch on GitHub and then open a pull request; our
-continuous integration service on Github Actions and AppVeyor will build and
-test your code.  Title your PR with WIP so we know that it does not need
+continuous integration service on Github Actions builds and
+tests your code.  Title your PR with WIP so we know that it does not need
 code review.
 
 Some tips for using Github Actions effectively:
@@ -72,10 +72,6 @@ failures:
    tested.  If you have an Ubuntu system, you can download
    the binaries and run them directly.
 
-5. Is the test failing on AppVeyor?  Consider logging in via
-   Remote Desktop to the build VM:
-   https://www.appveyor.com/docs/how-to/rdp-to-build-worker/
-
 If none of these let you reproduce, there might be some race condition
 or continuous integration breakage; please file a bug.
 
@@ -194,8 +190,9 @@ We like [this style guide][guide].
 Changelog
 ---------
 
-When opening a pull request, you should write a changelog entry.
-This is done by adding a file in the `changelog.d` directory.
+When opening a pull request, you should write a changelog entry
+(or more in case of multiple independent changes).
+This is done by adding files in the `changelog.d` directory.
 
 The files follow a simple key-value format similar to the one for .cabal files.
 
diff --git a/Cabal-QuickCheck/Cabal-QuickCheck.cabal b/Cabal-QuickCheck/Cabal-QuickCheck.cabal
index 0f631dbdfdc4cb3d6f2650367f28ed9c9232d874..0f4d2d0c34eea411f0074d9aea3c57e5aa3a707d 100644
--- a/Cabal-QuickCheck/Cabal-QuickCheck.cabal
+++ b/Cabal-QuickCheck/Cabal-QuickCheck.cabal
@@ -1,6 +1,6 @@
 cabal-version: 2.2
 name:          Cabal-QuickCheck
-version:       3.6.0.0
+version:       3.7.0.0
 synopsis:      QuickCheck instances for types in Cabal
 category:      Testing
 description:
@@ -13,7 +13,7 @@ library
   build-depends:
     , base
     , bytestring
-    , Cabal       ^>=3.6.0.0
+    , Cabal       ^>=3.7.0.0
     , QuickCheck  ^>=2.13.2 || ^>=2.14
 
   if !impl(ghc >= 8.0)
diff --git a/Cabal-described/Cabal-described.cabal b/Cabal-described/Cabal-described.cabal
index e8911f40b1ffc913220da1b950e9b7f23df94cd5..92344b62183497960f4c0e07a365b98354097cea 100644
--- a/Cabal-described/Cabal-described.cabal
+++ b/Cabal-described/Cabal-described.cabal
@@ -1,6 +1,6 @@
 cabal-version: 2.2
 name:          Cabal-described
-version:       3.6.0.0
+version:       3.7.0.0
 synopsis:      Described functionality for types in Cabal
 category:      Testing, Parsec
 description:   Provides rere bindings
@@ -11,7 +11,7 @@ library
   ghc-options:      -Wall
   build-depends:
     , base
-    , Cabal             ^>=3.6.0.0
+    , Cabal             ^>=3.7.0.0
     , containers
     , pretty
     , QuickCheck
diff --git a/Cabal-tests/Cabal-tests.cabal b/Cabal-tests/Cabal-tests.cabal
index a194259817ffea824e70e8fa2756e22a80681435..eb9509f5e5df5c944046b59d06decef2a669a93e 100644
--- a/Cabal-tests/Cabal-tests.cabal
+++ b/Cabal-tests/Cabal-tests.cabal
@@ -31,6 +31,7 @@ test-suite unit-tests
     UnitTests.Distribution.Compat.Time
     UnitTests.Distribution.Described
     UnitTests.Distribution.PkgconfigVersion
+    UnitTests.Distribution.Simple.Command
     UnitTests.Distribution.Simple.Glob
     UnitTests.Distribution.Simple.Program.GHC
     UnitTests.Distribution.Simple.Program.Internal
@@ -40,6 +41,7 @@ test-suite unit-tests
     UnitTests.Distribution.Types.GenericPackageDescription
     UnitTests.Distribution.Utils.CharSet
     UnitTests.Distribution.Utils.Generic
+    UnitTests.Distribution.Utils.Json
     UnitTests.Distribution.Utils.NubList
     UnitTests.Distribution.Utils.ShortText
     UnitTests.Distribution.Utils.Structured
@@ -150,7 +152,6 @@ test-suite hackage-tests
   type:               exitcode-stdio-1.0
   main-is:            HackageTests.hs
 
-  -- TODO: need to get 01-index.tar on appveyor
   if os(windows)
     buildable: False
 
diff --git a/Cabal-tests/tests/ParserTests/ipi/Includes2.expr b/Cabal-tests/tests/ParserTests/ipi/Includes2.expr
index b8fa9b1f63226040561742b8742d0ebe39727539..9c15199c79fd565f39da5c88b4c6d2d93536e163 100644
--- a/Cabal-tests/tests/ParserTests/ipi/Includes2.expr
+++ b/Cabal-tests/tests/ParserTests/ipi/Includes2.expr
@@ -1,58 +1,92 @@
-InstalledPackageInfo
-  {abiDepends = [AbiDependency
-                   {depAbiHash = AbiHash "35a7f6be752ee4f7385cb5bf28677879",
-                    depUnitId = UnitId "base-4.10.1.0"},
-                 AbiDependency
-                   {depAbiHash = AbiHash "inplace",
-                    depUnitId = UnitId "Includes2-0.1.0.0-inplace-mysql"}],
-   abiHash = AbiHash "inplace",
-   author = "Edward Z. Yang",
-   category = "",
-   ccOptions = [],
-   compatPackageKey = "Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n",
-   copyright = "",
-   cxxOptions = [],
-   dataDir = "/home/travis/build/haskell/cabal/cabal-testsuite/PackageTests/Backpack/Includes2",
-   depends = [UnitId "base-4.10.1.0",
-              UnitId "Includes2-0.1.0.0-inplace-mysql"],
-   description = "",
-   exposed = False,
-   exposedModules = [ExposedModule
-                       {exposedName = ModuleName "Mine", exposedReexport = Nothing}],
-   extraGHCiLibraries = [],
-   extraLibraries = [],
-   frameworkDirs = [],
-   frameworks = [],
-   haddockHTMLs = ["/home/travis/build/haskell/cabal/cabal-testsuite/PackageTests/Backpack/Includes2/cabal-internal.dist/work/./dist/build/x86_64-linux/ghc-8.2.2/Includes2-0.1.0.0/l/mylib/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n/doc/html/Includes2"],
-   haddockInterfaces = ["/home/travis/build/haskell/cabal/cabal-testsuite/PackageTests/Backpack/Includes2/cabal-internal.dist/work/./dist/build/x86_64-linux/ghc-8.2.2/Includes2-0.1.0.0/l/mylib/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n/doc/html/Includes2/Includes2.haddock"],
-   hiddenModules = [],
-   homepage = "",
-   hsLibraries = ["HSIncludes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n"],
-   importDirs = ["/home/travis/build/haskell/cabal/cabal-testsuite/PackageTests/Backpack/Includes2/cabal-internal.dist/work/./dist/build/x86_64-linux/ghc-8.2.2/Includes2-0.1.0.0/l/mylib/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n/build/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n"],
-   includeDirs = [],
-   includes = [],
-   indefinite = False,
-   installedComponentId_ = ComponentId "",
-   installedUnitId = UnitId
-                       "Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n",
-   instantiatedWith = [_×_
-                         (ModuleName "Database")
-                         (OpenModule
-                            (DefiniteUnitId
-                               (DefUnitId (UnitId "Includes2-0.1.0.0-inplace-mysql")))
-                            (ModuleName "Database.MySQL"))],
-   ldOptions = [],
-   libVisibility = LibraryVisibilityPrivate,
-   libraryDirs = ["/home/travis/build/haskell/cabal/cabal-testsuite/PackageTests/Backpack/Includes2/cabal-internal.dist/work/./dist/build/x86_64-linux/ghc-8.2.2/Includes2-0.1.0.0/l/mylib/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n/build/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n"],
-   libraryDynDirs = ["/home/travis/build/haskell/cabal/cabal-testsuite/PackageTests/Backpack/Includes2/cabal-internal.dist/work/./dist/build/x86_64-linux/ghc-8.2.2/Includes2-0.1.0.0/l/mylib/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n/build/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n"],
-   license = Right BSD3,
-   maintainer = "ezyang@cs.stanford.edu",
-   pkgRoot = Nothing,
-   pkgUrl = "",
-   sourceLibName = LSubLibName (UnqualComponentName "mylib"),
-   sourcePackageId = PackageIdentifier
-                       {pkgName = PackageName "Includes2",
-                        pkgVersion = mkVersion [0, 1, 0, 0]},
-   stability = "",
-   synopsis = "",
-   trusted = False}
+InstalledPackageInfo {
+  sourcePackageId =
+  PackageIdentifier {
+    pkgName = PackageName
+      "Includes2",
+    pkgVersion = mkVersion
+      [0, 1, 0, 0]},
+  sourceLibName = LSubLibName
+    (UnqualComponentName "mylib"),
+  installedComponentId_ =
+  ComponentId "",
+  libVisibility =
+  LibraryVisibilityPrivate,
+  installedUnitId = UnitId
+    "Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n",
+  instantiatedWith = [
+    _×_
+      (ModuleName "Database")
+      (OpenModule
+        (DefiniteUnitId
+          (DefUnitId
+            (UnitId
+              "Includes2-0.1.0.0-inplace-mysql")))
+        (ModuleName "Database.MySQL"))],
+  compatPackageKey =
+  "Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n",
+  license = Right BSD3,
+  copyright = "",
+  maintainer =
+  "ezyang@cs.stanford.edu",
+  author = "Edward Z. Yang",
+  stability = "",
+  homepage = "",
+  pkgUrl = "",
+  synopsis = "",
+  description = "",
+  category = "",
+  abiHash = AbiHash "inplace",
+  indefinite = False,
+  exposed = False,
+  exposedModules = [
+    ExposedModule {
+      exposedName = ModuleName "Mine",
+      exposedReexport = Nothing}],
+  hiddenModules = [],
+  trusted = False,
+  importDirs =
+  [
+    "/home/travis/build/haskell/cabal/cabal-testsuite/PackageTests/Backpack/Includes2/cabal-internal.dist/work/./dist/build/x86_64-linux/ghc-8.2.2/Includes2-0.1.0.0/l/mylib/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n/build/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n"],
+  libraryDirs =
+  [
+    "/home/travis/build/haskell/cabal/cabal-testsuite/PackageTests/Backpack/Includes2/cabal-internal.dist/work/./dist/build/x86_64-linux/ghc-8.2.2/Includes2-0.1.0.0/l/mylib/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n/build/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n"],
+  libraryDirsStatic = [],
+  libraryDynDirs =
+  [
+    "/home/travis/build/haskell/cabal/cabal-testsuite/PackageTests/Backpack/Includes2/cabal-internal.dist/work/./dist/build/x86_64-linux/ghc-8.2.2/Includes2-0.1.0.0/l/mylib/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n/build/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n"],
+  dataDir =
+  "/home/travis/build/haskell/cabal/cabal-testsuite/PackageTests/Backpack/Includes2",
+  hsLibraries = [
+    "HSIncludes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n"],
+  extraLibraries = [],
+  extraLibrariesStatic = [],
+  extraGHCiLibraries = [],
+  includeDirs = [],
+  includes = [],
+  depends = [
+    UnitId "base-4.10.1.0",
+    UnitId
+      "Includes2-0.1.0.0-inplace-mysql"],
+  abiDepends = [
+    AbiDependency {
+      depUnitId = UnitId
+        "base-4.10.1.0",
+      depAbiHash = AbiHash
+        "35a7f6be752ee4f7385cb5bf28677879"},
+    AbiDependency {
+      depUnitId = UnitId
+        "Includes2-0.1.0.0-inplace-mysql",
+      depAbiHash = AbiHash
+        "inplace"}],
+  ccOptions = [],
+  cxxOptions = [],
+  ldOptions = [],
+  frameworkDirs = [],
+  frameworks = [],
+  haddockInterfaces =
+  [
+    "/home/travis/build/haskell/cabal/cabal-testsuite/PackageTests/Backpack/Includes2/cabal-internal.dist/work/./dist/build/x86_64-linux/ghc-8.2.2/Includes2-0.1.0.0/l/mylib/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n/doc/html/Includes2/Includes2.haddock"],
+  haddockHTMLs =
+  [
+    "/home/travis/build/haskell/cabal/cabal-testsuite/PackageTests/Backpack/Includes2/cabal-internal.dist/work/./dist/build/x86_64-linux/ghc-8.2.2/Includes2-0.1.0.0/l/mylib/Includes2-0.1.0.0-inplace-mylib+3gY9SyjX86dBypHcOaev1n/doc/html/Includes2"],
+  pkgRoot = Nothing}
diff --git a/Cabal-tests/tests/ParserTests/ipi/internal-preprocessor-test.expr b/Cabal-tests/tests/ParserTests/ipi/internal-preprocessor-test.expr
index 6fb0aaa92f2435a61ec9d6c34bed1ddc0a1a91b6..42a593f2540e4548e5088f124748df16ccff7a18 100644
--- a/Cabal-tests/tests/ParserTests/ipi/internal-preprocessor-test.expr
+++ b/Cabal-tests/tests/ParserTests/ipi/internal-preprocessor-test.expr
@@ -1,48 +1,76 @@
-InstalledPackageInfo
-  {abiDepends = [],
-   abiHash = AbiHash "",
-   author = "Mikhail Glushenkov",
-   category = "Testing",
-   ccOptions = [],
-   compatPackageKey = "internal-preprocessor-test-0.1.0.0",
-   copyright = "",
-   cxxOptions = [],
-   dataDir = "/home/ogre/Documents/other-haskell/cabal/cabal-testsuite/PackageTests/CustomPreProcess",
-   depends = [UnitId "base-4.8.2.0-0d6d1084fbc041e1cded9228e80e264d"],
-   description = "See https://github.com/haskell/cabal/issues/1541#issuecomment-30155513",
-   exposed = True,
-   exposedModules = [ExposedModule
-                       {exposedName = ModuleName "A", exposedReexport = Nothing}],
-   extraGHCiLibraries = [],
-   extraLibraries = [],
-   frameworkDirs = [],
-   frameworks = [],
-   haddockHTMLs = ["/home/ogre/Documents/other-haskell/cabal/cabal-testsuite/PackageTests/CustomPreProcess/setup.dist/work/dist/doc/html/internal-preprocessor-test"],
-   haddockInterfaces = ["/home/ogre/Documents/other-haskell/cabal/cabal-testsuite/PackageTests/CustomPreProcess/setup.dist/work/dist/doc/html/internal-preprocessor-test/internal-preprocessor-test.haddock"],
-   hiddenModules = [],
-   homepage = "",
-   hsLibraries = ["HSinternal-preprocessor-test-0.1.0.0"],
-   importDirs = ["/home/ogre/Documents/other-haskell/cabal/cabal-testsuite/PackageTests/CustomPreProcess/setup.dist/work/dist/build"],
-   includeDirs = [],
-   includes = [],
-   indefinite = False,
-   installedComponentId_ = ComponentId "",
-   installedUnitId = UnitId "internal-preprocessor-test-0.1.0.0",
-   instantiatedWith = [],
-   ldOptions = [],
-   libVisibility = LibraryVisibilityPublic,
-   libraryDirs = ["/home/ogre/Documents/other-haskell/cabal/cabal-testsuite/PackageTests/CustomPreProcess/setup.dist/work/dist/build",
-                  "/home/ogre/Documents/other-haskell/cabal/cabal-testsuite/PackageTests/CustomPreProcess/setup.dist/work/dist/build"],
-   libraryDynDirs = [],
-   license = Right (GPL (Just (mkVersion [3]))),
-   maintainer = "mikhail.glushenkov@gmail.com",
-   pkgRoot = Just
-               "/home/ogre/Documents/other-haskell/cabal/cabal-testsuite/PackageTests/CustomPreProcess/setup.dist/work/dist",
-   pkgUrl = "",
-   sourceLibName = LMainLibName,
-   sourcePackageId = PackageIdentifier
-                       {pkgName = PackageName "internal-preprocessor-test",
-                        pkgVersion = mkVersion [0, 1, 0, 0]},
-   stability = "",
-   synopsis = "Internal custom preprocessor example.",
-   trusted = False}
+InstalledPackageInfo {
+  sourcePackageId =
+  PackageIdentifier {
+    pkgName = PackageName
+      "internal-preprocessor-test",
+    pkgVersion = mkVersion
+      [0, 1, 0, 0]},
+  sourceLibName = LMainLibName,
+  installedComponentId_ =
+  ComponentId "",
+  libVisibility =
+  LibraryVisibilityPublic,
+  installedUnitId = UnitId
+    "internal-preprocessor-test-0.1.0.0",
+  instantiatedWith = [],
+  compatPackageKey =
+  "internal-preprocessor-test-0.1.0.0",
+  license = Right
+    (GPL (Just (mkVersion [3]))),
+  copyright = "",
+  maintainer =
+  "mikhail.glushenkov@gmail.com",
+  author = "Mikhail Glushenkov",
+  stability = "",
+  homepage = "",
+  pkgUrl = "",
+  synopsis =
+  "Internal custom preprocessor example.",
+  description =
+  "See https://github.com/haskell/cabal/issues/1541#issuecomment-30155513",
+  category = "Testing",
+  abiHash = AbiHash "",
+  indefinite = False,
+  exposed = True,
+  exposedModules = [
+    ExposedModule {
+      exposedName = ModuleName "A",
+      exposedReexport = Nothing}],
+  hiddenModules = [],
+  trusted = False,
+  importDirs =
+  [
+    "/home/ogre/Documents/other-haskell/cabal/cabal-testsuite/PackageTests/CustomPreProcess/setup.dist/work/dist/build"],
+  libraryDirs =
+  [
+    "/home/ogre/Documents/other-haskell/cabal/cabal-testsuite/PackageTests/CustomPreProcess/setup.dist/work/dist/build",
+    "/home/ogre/Documents/other-haskell/cabal/cabal-testsuite/PackageTests/CustomPreProcess/setup.dist/work/dist/build"],
+  libraryDirsStatic = [],
+  libraryDynDirs = [],
+  dataDir =
+  "/home/ogre/Documents/other-haskell/cabal/cabal-testsuite/PackageTests/CustomPreProcess",
+  hsLibraries = [
+    "HSinternal-preprocessor-test-0.1.0.0"],
+  extraLibraries = [],
+  extraLibrariesStatic = [],
+  extraGHCiLibraries = [],
+  includeDirs = [],
+  includes = [],
+  depends = [
+    UnitId
+      "base-4.8.2.0-0d6d1084fbc041e1cded9228e80e264d"],
+  abiDepends = [],
+  ccOptions = [],
+  cxxOptions = [],
+  ldOptions = [],
+  frameworkDirs = [],
+  frameworks = [],
+  haddockInterfaces =
+  [
+    "/home/ogre/Documents/other-haskell/cabal/cabal-testsuite/PackageTests/CustomPreProcess/setup.dist/work/dist/doc/html/internal-preprocessor-test/internal-preprocessor-test.haddock"],
+  haddockHTMLs =
+  [
+    "/home/ogre/Documents/other-haskell/cabal/cabal-testsuite/PackageTests/CustomPreProcess/setup.dist/work/dist/doc/html/internal-preprocessor-test"],
+  pkgRoot =
+  Just
+    "/home/ogre/Documents/other-haskell/cabal/cabal-testsuite/PackageTests/CustomPreProcess/setup.dist/work/dist"}
diff --git a/Cabal-tests/tests/ParserTests/ipi/issue-2276-ghc-9885.expr b/Cabal-tests/tests/ParserTests/ipi/issue-2276-ghc-9885.expr
index 5f1f822104d1b302e29cf5875e06b6d89ca44e78..f2d62e05938a1e1b770c34b5ccecdada2a07644c 100644
--- a/Cabal-tests/tests/ParserTests/ipi/issue-2276-ghc-9885.expr
+++ b/Cabal-tests/tests/ParserTests/ipi/issue-2276-ghc-9885.expr
@@ -1,2133 +1,2184 @@
-InstalledPackageInfo
-  {abiDepends = [AbiDependency
-                   {depAbiHash = AbiHash "35a7f6be752ee4f7385cb5bf28677879",
-                    depUnitId = UnitId "base-4.10.1.0"}],
-   abiHash = AbiHash "e04579c0363c9229351d1a0b394bf2d5",
-   author = "Andy Gill, Ross Paterson",
-   category = "Control",
-   ccOptions = [],
-   compatPackageKey = "transformers-0.5.2.0",
-   copyright = "",
-   cxxOptions = [],
-   dataDir = "/opt/ghc/8.2.2/share/x86_64-linux-ghc-8.2.2/transformers-0.5.2.0",
-   depends = [UnitId "base-4.10.1.0"],
-   description = concat
-                   ["A portable library of functor and monad transformers, inspired by\n",
-                    "the paper \\\"Functional Programming with Overloading and Higher-Order\n",
-                    "Polymorphism\\\", by Mark P Jones,\n",
-                    "in /Advanced School of Functional Programming/, 1995\n",
-                    "(<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).\n",
-                    ".\n",
-                    "This package contains:\n",
-                    ".\n",
-                    "* the monad transformer class (in \"Control.Monad.Trans.Class\")\n",
-                    "and IO monad class (in \"Control.Monad.IO.Class\")\n",
-                    ".\n",
-                    "* concrete functor and monad transformers, each with associated\n",
-                    "operations and functions to lift operations associated with other\n",
-                    "transformers.\n",
-                    ".\n",
-                    "The package can be used on its own in portable Haskell code, in\n",
-                    "which case operations need to be manually lifted through transformer\n",
-                    "stacks (see \"Control.Monad.Trans.Class\" for some examples).\n",
-                    "Alternatively, it can be used with the non-portable monad classes in\n",
-                    "the @mtl@ or @monads-tf@ packages, which automatically lift operations\n",
-                    "introduced by monad transformers through other transformers."],
-   exposed = True,
-   exposedModules = [ExposedModule
-                       {exposedName = ModuleName "Control.Applicative.Backwards",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Applicative.Lift",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Signatures",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Class",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Cont",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Error",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Except",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Identity",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.List",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Maybe",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.RWS",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.RWS.Lazy",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.RWS.Strict",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Reader",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.State",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.State.Lazy",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.State.Strict",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Writer",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Writer.Lazy",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Writer.Strict",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Data.Functor.Constant",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Data.Functor.Reverse",
-                        exposedReexport = Nothing}],
-   extraGHCiLibraries = [],
-   extraLibraries = [],
-   frameworkDirs = [],
-   frameworks = [],
-   haddockHTMLs = ["/opt/ghc/8.2.2/share/doc/ghc-8.2.2/html/libraries/transformers-0.5.2.0"],
-   haddockInterfaces = ["/opt/ghc/8.2.2/share/doc/ghc-8.2.2/html/libraries/transformers-0.5.2.0/transformers.haddock"],
-   hiddenModules = [],
-   homepage = "",
-   hsLibraries = ["HStransformers-0.5.2.0"],
-   importDirs = ["/opt/ghc/8.2.2/lib/ghc-8.2.2/transformers-0.5.2.0"],
-   includeDirs = [],
-   includes = [],
-   indefinite = False,
-   installedComponentId_ = ComponentId "",
-   installedUnitId = UnitId "transformers-0.5.2.0",
-   instantiatedWith = [],
-   ldOptions = ["-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm",
-                "-lm"],
-   libVisibility = LibraryVisibilityPublic,
-   libraryDirs = ["/opt/ghc/8.2.2/lib/ghc-8.2.2/transformers-0.5.2.0"],
-   libraryDynDirs = ["/opt/ghc/8.2.2/lib/ghc-8.2.2/transformers-0.5.2.0"],
-   license = Right BSD3,
-   maintainer = "Ross Paterson <R.Paterson@city.ac.uk>",
-   pkgRoot = Nothing,
-   pkgUrl = "",
-   sourceLibName = LMainLibName,
-   sourcePackageId = PackageIdentifier
-                       {pkgName = PackageName "transformers",
-                        pkgVersion = mkVersion [0, 5, 2, 0]},
-   stability = "",
-   synopsis = "Concrete functor and monad transformers",
-   trusted = False}
+InstalledPackageInfo {
+  sourcePackageId =
+  PackageIdentifier {
+    pkgName = PackageName
+      "transformers",
+    pkgVersion = mkVersion
+      [0, 5, 2, 0]},
+  sourceLibName = LMainLibName,
+  installedComponentId_ =
+  ComponentId "",
+  libVisibility =
+  LibraryVisibilityPublic,
+  installedUnitId = UnitId
+    "transformers-0.5.2.0",
+  instantiatedWith = [],
+  compatPackageKey =
+  "transformers-0.5.2.0",
+  license = Right BSD3,
+  copyright = "",
+  maintainer =
+  "Ross Paterson <R.Paterson@city.ac.uk>",
+  author =
+  "Andy Gill, Ross Paterson",
+  stability = "",
+  homepage = "",
+  pkgUrl = "",
+  synopsis =
+  "Concrete functor and monad transformers",
+  description =
+  concat
+    [
+      "A portable library of functor and monad transformers, inspired by\n",
+      "the paper \\\"Functional Programming with Overloading and Higher-Order\n",
+      "Polymorphism\\\", by Mark P Jones,\n",
+      "in /Advanced School of Functional Programming/, 1995\n",
+      "(<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).\n",
+      ".\n",
+      "This package contains:\n",
+      ".\n",
+      "* the monad transformer class (in \"Control.Monad.Trans.Class\")\n",
+      "and IO monad class (in \"Control.Monad.IO.Class\")\n",
+      ".\n",
+      "* concrete functor and monad transformers, each with associated\n",
+      "operations and functions to lift operations associated with other\n",
+      "transformers.\n",
+      ".\n",
+      "The package can be used on its own in portable Haskell code, in\n",
+      "which case operations need to be manually lifted through transformer\n",
+      "stacks (see \"Control.Monad.Trans.Class\" for some examples).\n",
+      "Alternatively, it can be used with the non-portable monad classes in\n",
+      "the @mtl@ or @monads-tf@ packages, which automatically lift operations\n",
+      "introduced by monad transformers through other transformers."],
+  category = "Control",
+  abiHash = AbiHash
+    "e04579c0363c9229351d1a0b394bf2d5",
+  indefinite = False,
+  exposed = True,
+  exposedModules = [
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Applicative.Backwards",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Applicative.Lift",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Signatures",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Class",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Cont",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Error",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Except",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Identity",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.List",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Maybe",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.RWS",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.RWS.Lazy",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.RWS.Strict",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Reader",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.State",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.State.Lazy",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.State.Strict",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Writer",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Writer.Lazy",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Writer.Strict",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Data.Functor.Constant",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Data.Functor.Reverse",
+      exposedReexport = Nothing}],
+  hiddenModules = [],
+  trusted = False,
+  importDirs = [
+    "/opt/ghc/8.2.2/lib/ghc-8.2.2/transformers-0.5.2.0"],
+  libraryDirs = [
+    "/opt/ghc/8.2.2/lib/ghc-8.2.2/transformers-0.5.2.0"],
+  libraryDirsStatic = [],
+  libraryDynDirs = [
+    "/opt/ghc/8.2.2/lib/ghc-8.2.2/transformers-0.5.2.0"],
+  dataDir =
+  "/opt/ghc/8.2.2/share/x86_64-linux-ghc-8.2.2/transformers-0.5.2.0",
+  hsLibraries = [
+    "HStransformers-0.5.2.0"],
+  extraLibraries = [],
+  extraLibrariesStatic = [],
+  extraGHCiLibraries = [],
+  includeDirs = [],
+  includes = [],
+  depends = [
+    UnitId "base-4.10.1.0"],
+  abiDepends = [
+    AbiDependency {
+      depUnitId = UnitId
+        "base-4.10.1.0",
+      depAbiHash = AbiHash
+        "35a7f6be752ee4f7385cb5bf28677879"}],
+  ccOptions = [],
+  cxxOptions = [],
+  ldOptions = [
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm",
+    "-lm"],
+  frameworkDirs = [],
+  frameworks = [],
+  haddockInterfaces =
+  [
+    "/opt/ghc/8.2.2/share/doc/ghc-8.2.2/html/libraries/transformers-0.5.2.0/transformers.haddock"],
+  haddockHTMLs = [
+    "/opt/ghc/8.2.2/share/doc/ghc-8.2.2/html/libraries/transformers-0.5.2.0"],
+  pkgRoot = Nothing}
diff --git a/Cabal-tests/tests/ParserTests/ipi/transformers.expr b/Cabal-tests/tests/ParserTests/ipi/transformers.expr
index bf85b8959331c82070c61511e043abb26af22868..daef7608a772e3dc180d4ede302d6c0240c7b710 100644
--- a/Cabal-tests/tests/ParserTests/ipi/transformers.expr
+++ b/Cabal-tests/tests/ParserTests/ipi/transformers.expr
@@ -1,133 +1,184 @@
-InstalledPackageInfo
-  {abiDepends = [AbiDependency
-                   {depAbiHash = AbiHash "35a7f6be752ee4f7385cb5bf28677879",
-                    depUnitId = UnitId "base-4.10.1.0"}],
-   abiHash = AbiHash "e04579c0363c9229351d1a0b394bf2d5",
-   author = "Andy Gill, Ross Paterson",
-   category = "Control",
-   ccOptions = [],
-   compatPackageKey = "transformers-0.5.2.0",
-   copyright = "",
-   cxxOptions = [],
-   dataDir = "/opt/ghc/8.2.2/share/x86_64-linux-ghc-8.2.2/transformers-0.5.2.0",
-   depends = [UnitId "base-4.10.1.0"],
-   description = concat
-                   ["A portable library of functor and monad transformers, inspired by\n",
-                    "the paper \\\"Functional Programming with Overloading and Higher-Order\n",
-                    "Polymorphism\\\", by Mark P Jones,\n",
-                    "in /Advanced School of Functional Programming/, 1995\n",
-                    "(<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).\n",
-                    ".\n",
-                    "This package contains:\n",
-                    ".\n",
-                    "* the monad transformer class (in \"Control.Monad.Trans.Class\")\n",
-                    "and IO monad class (in \"Control.Monad.IO.Class\")\n",
-                    ".\n",
-                    "* concrete functor and monad transformers, each with associated\n",
-                    "operations and functions to lift operations associated with other\n",
-                    "transformers.\n",
-                    ".\n",
-                    "The package can be used on its own in portable Haskell code, in\n",
-                    "which case operations need to be manually lifted through transformer\n",
-                    "stacks (see \"Control.Monad.Trans.Class\" for some examples).\n",
-                    "Alternatively, it can be used with the non-portable monad classes in\n",
-                    "the @mtl@ or @monads-tf@ packages, which automatically lift operations\n",
-                    "introduced by monad transformers through other transformers."],
-   exposed = True,
-   exposedModules = [ExposedModule
-                       {exposedName = ModuleName "Control.Applicative.Backwards",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Applicative.Lift",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Signatures",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Class",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Cont",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Error",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Except",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Identity",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.List",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Maybe",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.RWS",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.RWS.Lazy",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.RWS.Strict",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Reader",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.State",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.State.Lazy",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.State.Strict",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Writer",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Writer.Lazy",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Control.Monad.Trans.Writer.Strict",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Data.Functor.Constant",
-                        exposedReexport = Nothing},
-                     ExposedModule
-                       {exposedName = ModuleName "Data.Functor.Reverse",
-                        exposedReexport = Nothing}],
-   extraGHCiLibraries = [],
-   extraLibraries = [],
-   frameworkDirs = [],
-   frameworks = [],
-   haddockHTMLs = ["/opt/ghc/8.2.2/share/doc/ghc-8.2.2/html/libraries/transformers-0.5.2.0"],
-   haddockInterfaces = ["/opt/ghc/8.2.2/share/doc/ghc-8.2.2/html/libraries/transformers-0.5.2.0/transformers.haddock"],
-   hiddenModules = [],
-   homepage = "",
-   hsLibraries = ["HStransformers-0.5.2.0"],
-   importDirs = ["/opt/ghc/8.2.2/lib/ghc-8.2.2/transformers-0.5.2.0"],
-   includeDirs = [],
-   includes = [],
-   indefinite = False,
-   installedComponentId_ = ComponentId "",
-   installedUnitId = UnitId "transformers-0.5.2.0",
-   instantiatedWith = [],
-   ldOptions = [],
-   libVisibility = LibraryVisibilityPublic,
-   libraryDirs = ["/opt/ghc/8.2.2/lib/ghc-8.2.2/transformers-0.5.2.0"],
-   libraryDynDirs = ["/opt/ghc/8.2.2/lib/ghc-8.2.2/transformers-0.5.2.0"],
-   license = Right BSD3,
-   maintainer = "Ross Paterson <R.Paterson@city.ac.uk>",
-   pkgRoot = Just "/opt/ghc/8.2.2/lib/ghc-8.2.2",
-   pkgUrl = "",
-   sourceLibName = LMainLibName,
-   sourcePackageId = PackageIdentifier
-                       {pkgName = PackageName "transformers",
-                        pkgVersion = mkVersion [0, 5, 2, 0]},
-   stability = "",
-   synopsis = "Concrete functor and monad transformers",
-   trusted = False}
+InstalledPackageInfo {
+  sourcePackageId =
+  PackageIdentifier {
+    pkgName = PackageName
+      "transformers",
+    pkgVersion = mkVersion
+      [0, 5, 2, 0]},
+  sourceLibName = LMainLibName,
+  installedComponentId_ =
+  ComponentId "",
+  libVisibility =
+  LibraryVisibilityPublic,
+  installedUnitId = UnitId
+    "transformers-0.5.2.0",
+  instantiatedWith = [],
+  compatPackageKey =
+  "transformers-0.5.2.0",
+  license = Right BSD3,
+  copyright = "",
+  maintainer =
+  "Ross Paterson <R.Paterson@city.ac.uk>",
+  author =
+  "Andy Gill, Ross Paterson",
+  stability = "",
+  homepage = "",
+  pkgUrl = "",
+  synopsis =
+  "Concrete functor and monad transformers",
+  description =
+  concat
+    [
+      "A portable library of functor and monad transformers, inspired by\n",
+      "the paper \\\"Functional Programming with Overloading and Higher-Order\n",
+      "Polymorphism\\\", by Mark P Jones,\n",
+      "in /Advanced School of Functional Programming/, 1995\n",
+      "(<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).\n",
+      ".\n",
+      "This package contains:\n",
+      ".\n",
+      "* the monad transformer class (in \"Control.Monad.Trans.Class\")\n",
+      "and IO monad class (in \"Control.Monad.IO.Class\")\n",
+      ".\n",
+      "* concrete functor and monad transformers, each with associated\n",
+      "operations and functions to lift operations associated with other\n",
+      "transformers.\n",
+      ".\n",
+      "The package can be used on its own in portable Haskell code, in\n",
+      "which case operations need to be manually lifted through transformer\n",
+      "stacks (see \"Control.Monad.Trans.Class\" for some examples).\n",
+      "Alternatively, it can be used with the non-portable monad classes in\n",
+      "the @mtl@ or @monads-tf@ packages, which automatically lift operations\n",
+      "introduced by monad transformers through other transformers."],
+  category = "Control",
+  abiHash = AbiHash
+    "e04579c0363c9229351d1a0b394bf2d5",
+  indefinite = False,
+  exposed = True,
+  exposedModules = [
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Applicative.Backwards",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Applicative.Lift",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Signatures",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Class",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Cont",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Error",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Except",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Identity",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.List",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Maybe",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.RWS",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.RWS.Lazy",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.RWS.Strict",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Reader",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.State",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.State.Lazy",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.State.Strict",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Writer",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Writer.Lazy",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Control.Monad.Trans.Writer.Strict",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Data.Functor.Constant",
+      exposedReexport = Nothing},
+    ExposedModule {
+      exposedName = ModuleName
+        "Data.Functor.Reverse",
+      exposedReexport = Nothing}],
+  hiddenModules = [],
+  trusted = False,
+  importDirs = [
+    "/opt/ghc/8.2.2/lib/ghc-8.2.2/transformers-0.5.2.0"],
+  libraryDirs = [
+    "/opt/ghc/8.2.2/lib/ghc-8.2.2/transformers-0.5.2.0"],
+  libraryDirsStatic = [],
+  libraryDynDirs = [
+    "/opt/ghc/8.2.2/lib/ghc-8.2.2/transformers-0.5.2.0"],
+  dataDir =
+  "/opt/ghc/8.2.2/share/x86_64-linux-ghc-8.2.2/transformers-0.5.2.0",
+  hsLibraries = [
+    "HStransformers-0.5.2.0"],
+  extraLibraries = [],
+  extraLibrariesStatic = [],
+  extraGHCiLibraries = [],
+  includeDirs = [],
+  includes = [],
+  depends = [
+    UnitId "base-4.10.1.0"],
+  abiDepends = [
+    AbiDependency {
+      depUnitId = UnitId
+        "base-4.10.1.0",
+      depAbiHash = AbiHash
+        "35a7f6be752ee4f7385cb5bf28677879"}],
+  ccOptions = [],
+  cxxOptions = [],
+  ldOptions = [],
+  frameworkDirs = [],
+  frameworks = [],
+  haddockInterfaces =
+  [
+    "/opt/ghc/8.2.2/share/doc/ghc-8.2.2/html/libraries/transformers-0.5.2.0/transformers.haddock"],
+  haddockHTMLs = [
+    "/opt/ghc/8.2.2/share/doc/ghc-8.2.2/html/libraries/transformers-0.5.2.0"],
+  pkgRoot = Just
+    "/opt/ghc/8.2.2/lib/ghc-8.2.2"}
diff --git a/Cabal-tests/tests/ParserTests/regressions/Octree-0.5.expr b/Cabal-tests/tests/ParserTests/regressions/Octree-0.5.expr
index 5e85f4dd1ee412953040d50d5bbf32ffbedd7924..30e676cff1125ae3c9c14fa88c45600800846e34 100644
--- a/Cabal-tests/tests/ParserTests/regressions/Octree-0.5.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/Octree-0.5.expr
@@ -44,8 +44,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
@@ -140,8 +142,10 @@ GenericPackageDescription
                                                                extraFrameworkDirs = [],
                                                                extraGHCiLibs = [],
                                                                extraLibDirs = [],
+                                                               extraLibDirsStatic = [],
                                                                extraLibFlavours = [],
                                                                extraLibs = [],
+                                                               extraLibsStatic = [],
                                                                frameworks = [],
                                                                hsSourceDirs = [],
                                                                hsc2hsOptions = [],
@@ -245,8 +249,10 @@ GenericPackageDescription
                                                                extraFrameworkDirs = [],
                                                                extraGHCiLibs = [],
                                                                extraLibDirs = [],
+                                                               extraLibDirsStatic = [],
                                                                extraLibFlavours = [],
                                                                extraLibs = [],
+                                                               extraLibsStatic = [],
                                                                frameworks = [],
                                                                hsSourceDirs = [],
                                                                hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/anynone.expr b/Cabal-tests/tests/ParserTests/regressions/anynone.expr
index 9b96694836fd362b75cec6cf131480d63d6e52f2..17e61add69641759df20e22c50dd98a633ad7554 100644
--- a/Cabal-tests/tests/ParserTests/regressions/anynone.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/anynone.expr
@@ -1,106 +1,117 @@
-GenericPackageDescription
-  {condBenchmarks = [],
-   condExecutables = [],
-   condForeignLibs = [],
-   condLibrary = Just
-                   CondNode
-                     {condTreeComponents = [],
-                      condTreeConstraints = [Dependency
-                                               (PackageName "base")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               mainLibSet],
-                      condTreeData = Library
-                                       {exposedModules = [ModuleName "AnyNone"],
-                                        libBuildInfo = BuildInfo
-                                                         {asmOptions = [],
-                                                          asmSources = [],
-                                                          autogenIncludes = [],
-                                                          autogenModules = [],
-                                                          buildToolDepends = [],
-                                                          buildTools = [],
-                                                          buildable = True,
-                                                          cSources = [],
-                                                          ccOptions = [],
-                                                          cmmOptions = [],
-                                                          cmmSources = [],
-                                                          cppOptions = [],
-                                                          customFieldsBI = [],
-                                                          cxxOptions = [],
-                                                          cxxSources = [],
-                                                          defaultExtensions = [],
-                                                          defaultLanguage = Just Haskell2010,
-                                                          extraBundledLibs = [],
-                                                          extraDynLibFlavours = [],
-                                                          extraFrameworkDirs = [],
-                                                          extraGHCiLibs = [],
-                                                          extraLibDirs = [],
-                                                          extraLibFlavours = [],
-                                                          extraLibs = [],
-                                                          frameworks = [],
-                                                          hsSourceDirs = [],
-                                                          hsc2hsOptions = [],
-                                                          includeDirs = [],
-                                                          includes = [],
-                                                          installIncludes = [],
-                                                          jsSources = [],
-                                                          ldOptions = [],
-                                                          mixins = [],
-                                                          oldExtensions = [],
-                                                          options = PerCompilerFlavor [] [],
-                                                          otherExtensions = [],
-                                                          otherLanguages = [],
-                                                          otherModules = [],
-                                                          pkgconfigDepends = [],
-                                                          profOptions = PerCompilerFlavor [] [],
-                                                          sharedOptions = PerCompilerFlavor [] [],
-                                                          staticOptions = PerCompilerFlavor [] [],
-                                                          targetBuildDepends = [Dependency
-                                                                                  (PackageName
-                                                                                     "base")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  mainLibSet],
-                                                          virtualModules = []},
-                                        libExposed = True,
-                                        libName = LMainLibName,
-                                        libVisibility = LibraryVisibilityPublic,
-                                        reexportedModules = [],
-                                        signatures = []}},
-   condSubLibraries = [],
-   condTestSuites = [],
-   genPackageFlags = [],
-   gpdScannedVersion = Nothing,
-   packageDescription = PackageDescription
-                          {author = "",
-                           benchmarks = [],
-                           bugReports = "",
-                           buildTypeRaw = Just Simple,
-                           category = "",
-                           copyright = "",
-                           customFieldsPD = [],
-                           dataDir = ".",
-                           dataFiles = [],
-                           description = "",
-                           executables = [],
-                           extraDocFiles = [],
-                           extraSrcFiles = [],
-                           extraTmpFiles = [],
-                           foreignLibs = [],
-                           homepage = "",
-                           library = Nothing,
-                           licenseFiles = [],
-                           licenseRaw = Left NONE,
-                           maintainer = "",
-                           package = PackageIdentifier
-                                       {pkgName = PackageName "anynone",
-                                        pkgVersion = mkVersion [0]},
-                           pkgUrl = "",
-                           setupBuildInfo = Nothing,
-                           sourceRepos = [],
-                           specVersion = CabalSpecV3_0,
-                           stability = "",
-                           subLibraries = [],
-                           synopsis = "The -any none demo",
-                           testSuites = [],
-                           testedWith = []}}
+GenericPackageDescription {
+  packageDescription =
+  PackageDescription {
+    specVersion = CabalSpecV3_0,
+    package = PackageIdentifier {
+      pkgName = PackageName "anynone",
+      pkgVersion = mkVersion [0]},
+    licenseRaw = Left NONE,
+    licenseFiles = [],
+    copyright = "",
+    maintainer = "",
+    author = "",
+    stability = "",
+    testedWith = [],
+    homepage = "",
+    pkgUrl = "",
+    bugReports = "",
+    sourceRepos = [],
+    synopsis = "The -any none demo",
+    description = "",
+    category = "",
+    customFieldsPD = [],
+    buildTypeRaw = Just Simple,
+    setupBuildInfo = Nothing,
+    library = Nothing,
+    subLibraries = [],
+    executables = [],
+    foreignLibs = [],
+    testSuites = [],
+    benchmarks = [],
+    dataFiles = [],
+    dataDir = ".",
+    extraSrcFiles = [],
+    extraTmpFiles = [],
+    extraDocFiles = []},
+  gpdScannedVersion = Nothing,
+  genPackageFlags = [],
+  condLibrary = Just
+    CondNode {
+      condTreeData = Library {
+        libName = LMainLibName,
+        exposedModules = [
+          ModuleName "AnyNone"],
+        reexportedModules = [],
+        signatures = [],
+        libExposed = True,
+        libVisibility =
+        LibraryVisibilityPublic,
+        libBuildInfo = BuildInfo {
+          buildable = True,
+          buildTools = [],
+          buildToolDepends = [],
+          cppOptions = [],
+          asmOptions = [],
+          cmmOptions = [],
+          ccOptions = [],
+          cxxOptions = [],
+          ldOptions = [],
+          hsc2hsOptions = [],
+          pkgconfigDepends = [],
+          frameworks = [],
+          extraFrameworkDirs = [],
+          asmSources = [],
+          cmmSources = [],
+          cSources = [],
+          cxxSources = [],
+          jsSources = [],
+          hsSourceDirs = [],
+          otherModules = [],
+          virtualModules = [],
+          autogenModules = [],
+          defaultLanguage = Just
+            Haskell2010,
+          otherLanguages = [],
+          defaultExtensions = [],
+          otherExtensions = [],
+          oldExtensions = [],
+          extraLibs = [],
+          extraLibsStatic = [],
+          extraGHCiLibs = [],
+          extraBundledLibs = [],
+          extraLibFlavours = [],
+          extraDynLibFlavours = [],
+          extraLibDirs = [],
+          extraLibDirsStatic = [],
+          includeDirs = [],
+          includes = [],
+          autogenIncludes = [],
+          installIncludes = [],
+          options = PerCompilerFlavor
+            []
+            [],
+          profOptions = PerCompilerFlavor
+            []
+            [],
+          sharedOptions =
+          PerCompilerFlavor [] [],
+          staticOptions =
+          PerCompilerFlavor [] [],
+          customFieldsBI = [],
+          targetBuildDepends = [
+            Dependency
+              (PackageName "base")
+              (OrLaterVersion (mkVersion [0]))
+              mainLibSet],
+          mixins = []}},
+      condTreeConstraints = [
+        Dependency
+          (PackageName "base")
+          (OrLaterVersion (mkVersion [0]))
+          mainLibSet],
+      condTreeComponents = []},
+  condSubLibraries = [],
+  condForeignLibs = [],
+  condExecutables = [],
+  condTestSuites = [],
+  condBenchmarks = []}
diff --git a/Cabal-tests/tests/ParserTests/regressions/assoc-cpp-options.check b/Cabal-tests/tests/ParserTests/regressions/assoc-cpp-options.check
index fd1446fcebcb9b8ed4cbccb81004dec947bab4e0..ed0edf29738d81759449160e957af3d0be3d711c 100644
--- a/Cabal-tests/tests/ParserTests/regressions/assoc-cpp-options.check
+++ b/Cabal-tests/tests/ParserTests/regressions/assoc-cpp-options.check
@@ -1 +1 @@
-'cpp-options': -traditional is not portable C-preprocessor flag
+'cpp-options: -traditional' is not a portable C-preprocessor flag.
diff --git a/Cabal-tests/tests/ParserTests/regressions/big-version.expr b/Cabal-tests/tests/ParserTests/regressions/big-version.expr
index ab343e152388e7d2deef647103c2cbe3bce110b2..943e723c191ff6880e62979dcb161f5159abd309 100644
--- a/Cabal-tests/tests/ParserTests/regressions/big-version.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/big-version.expr
@@ -1,97 +1,110 @@
-GenericPackageDescription
-  {condBenchmarks = [],
-   condExecutables = [],
-   condForeignLibs = [],
-   condLibrary = Just
-                   CondNode
-                     {condTreeComponents = [],
-                      condTreeConstraints = [],
-                      condTreeData = Library
-                                       {exposedModules = [],
-                                        libBuildInfo = BuildInfo
-                                                         {asmOptions = [],
-                                                          asmSources = [],
-                                                          autogenIncludes = [],
-                                                          autogenModules = [],
-                                                          buildToolDepends = [],
-                                                          buildTools = [],
-                                                          buildable = True,
-                                                          cSources = [],
-                                                          ccOptions = [],
-                                                          cmmOptions = [],
-                                                          cmmSources = [],
-                                                          cppOptions = [],
-                                                          customFieldsBI = [],
-                                                          cxxOptions = [],
-                                                          cxxSources = [],
-                                                          defaultExtensions = [],
-                                                          defaultLanguage = Just Haskell2010,
-                                                          extraBundledLibs = [],
-                                                          extraDynLibFlavours = [],
-                                                          extraFrameworkDirs = [],
-                                                          extraGHCiLibs = [],
-                                                          extraLibDirs = [],
-                                                          extraLibFlavours = [],
-                                                          extraLibs = [],
-                                                          frameworks = [],
-                                                          hsSourceDirs = [],
-                                                          hsc2hsOptions = [],
-                                                          includeDirs = [],
-                                                          includes = [],
-                                                          installIncludes = [],
-                                                          jsSources = [],
-                                                          ldOptions = [],
-                                                          mixins = [],
-                                                          oldExtensions = [],
-                                                          options = PerCompilerFlavor [] [],
-                                                          otherExtensions = [],
-                                                          otherLanguages = [],
-                                                          otherModules = [],
-                                                          pkgconfigDepends = [],
-                                                          profOptions = PerCompilerFlavor [] [],
-                                                          sharedOptions = PerCompilerFlavor [] [],
-                                                          staticOptions = PerCompilerFlavor [] [],
-                                                          targetBuildDepends = [],
-                                                          virtualModules = []},
-                                        libExposed = True,
-                                        libName = LMainLibName,
-                                        libVisibility = LibraryVisibilityPublic,
-                                        reexportedModules = [],
-                                        signatures = []}},
-   condSubLibraries = [],
-   condTestSuites = [],
-   genPackageFlags = [],
-   gpdScannedVersion = Nothing,
-   packageDescription = PackageDescription
-                          {author = "",
-                           benchmarks = [],
-                           bugReports = "",
-                           buildTypeRaw = Nothing,
-                           category = "",
-                           copyright = "",
-                           customFieldsPD = [],
-                           dataDir = ".",
-                           dataFiles = [],
-                           description = "",
-                           executables = [],
-                           extraDocFiles = [],
-                           extraSrcFiles = [],
-                           extraTmpFiles = [],
-                           foreignLibs = [],
-                           homepage = "",
-                           library = Nothing,
-                           licenseFiles = [],
-                           licenseRaw = Left NONE,
-                           maintainer = "",
-                           package = PackageIdentifier
-                                       {pkgName = PackageName "big-version",
-                                        pkgVersion = mkVersion [123456789]},
-                           pkgUrl = "",
-                           setupBuildInfo = Nothing,
-                           sourceRepos = [],
-                           specVersion = CabalSpecV3_0,
-                           stability = "",
-                           subLibraries = [],
-                           synopsis = "",
-                           testSuites = [],
-                           testedWith = []}}
+GenericPackageDescription {
+  packageDescription =
+  PackageDescription {
+    specVersion = CabalSpecV3_0,
+    package = PackageIdentifier {
+      pkgName = PackageName
+        "big-version",
+      pkgVersion = mkVersion
+        [123456789]},
+    licenseRaw = Left NONE,
+    licenseFiles = [],
+    copyright = "",
+    maintainer = "",
+    author = "",
+    stability = "",
+    testedWith = [],
+    homepage = "",
+    pkgUrl = "",
+    bugReports = "",
+    sourceRepos = [],
+    synopsis = "",
+    description = "",
+    category = "",
+    customFieldsPD = [],
+    buildTypeRaw = Nothing,
+    setupBuildInfo = Nothing,
+    library = Nothing,
+    subLibraries = [],
+    executables = [],
+    foreignLibs = [],
+    testSuites = [],
+    benchmarks = [],
+    dataFiles = [],
+    dataDir = ".",
+    extraSrcFiles = [],
+    extraTmpFiles = [],
+    extraDocFiles = []},
+  gpdScannedVersion = Nothing,
+  genPackageFlags = [],
+  condLibrary = Just
+    CondNode {
+      condTreeData = Library {
+        libName = LMainLibName,
+        exposedModules = [],
+        reexportedModules = [],
+        signatures = [],
+        libExposed = True,
+        libVisibility =
+        LibraryVisibilityPublic,
+        libBuildInfo = BuildInfo {
+          buildable = True,
+          buildTools = [],
+          buildToolDepends = [],
+          cppOptions = [],
+          asmOptions = [],
+          cmmOptions = [],
+          ccOptions = [],
+          cxxOptions = [],
+          ldOptions = [],
+          hsc2hsOptions = [],
+          pkgconfigDepends = [],
+          frameworks = [],
+          extraFrameworkDirs = [],
+          asmSources = [],
+          cmmSources = [],
+          cSources = [],
+          cxxSources = [],
+          jsSources = [],
+          hsSourceDirs = [],
+          otherModules = [],
+          virtualModules = [],
+          autogenModules = [],
+          defaultLanguage = Just
+            Haskell2010,
+          otherLanguages = [],
+          defaultExtensions = [],
+          otherExtensions = [],
+          oldExtensions = [],
+          extraLibs = [],
+          extraLibsStatic = [],
+          extraGHCiLibs = [],
+          extraBundledLibs = [],
+          extraLibFlavours = [],
+          extraDynLibFlavours = [],
+          extraLibDirs = [],
+          extraLibDirsStatic = [],
+          includeDirs = [],
+          includes = [],
+          autogenIncludes = [],
+          installIncludes = [],
+          options = PerCompilerFlavor
+            []
+            [],
+          profOptions = PerCompilerFlavor
+            []
+            [],
+          sharedOptions =
+          PerCompilerFlavor [] [],
+          staticOptions =
+          PerCompilerFlavor [] [],
+          customFieldsBI = [],
+          targetBuildDepends = [],
+          mixins = []}},
+      condTreeConstraints = [],
+      condTreeComponents = []},
+  condSubLibraries = [],
+  condForeignLibs = [],
+  condExecutables = [],
+  condTestSuites = [],
+  condBenchmarks = []}
diff --git a/Cabal-tests/tests/ParserTests/regressions/common-conditional.expr b/Cabal-tests/tests/ParserTests/regressions/common-conditional.expr
index 76ad95064a571c9087b5c5c02a19eecfd478457a..b2cca2ada9bfe08465f3f050618f5fa2094d560b 100644
--- a/Cabal-tests/tests/ParserTests/regressions/common-conditional.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/common-conditional.expr
@@ -45,8 +45,10 @@ GenericPackageDescription
                                                                                                                                                         extraFrameworkDirs = [],
                                                                                                                                                         extraGHCiLibs = [],
                                                                                                                                                         extraLibDirs = [],
+                                                                                                                                                        extraLibDirsStatic = [],
                                                                                                                                                         extraLibFlavours = [],
                                                                                                                                                         extraLibs = [],
+                                                                                                                                                        extraLibsStatic = [],
                                                                                                                                                         frameworks = [],
                                                                                                                                                         hsSourceDirs = [],
                                                                                                                                                         hsc2hsOptions = [],
@@ -131,8 +133,10 @@ GenericPackageDescription
                                                                                                          extraFrameworkDirs = [],
                                                                                                          extraGHCiLibs = [],
                                                                                                          extraLibDirs = [],
+                                                                                                         extraLibDirsStatic = [],
                                                                                                          extraLibFlavours = [],
                                                                                                          extraLibs = [],
+                                                                                                         extraLibsStatic = [],
                                                                                                          frameworks = [],
                                                                                                          hsSourceDirs = [],
                                                                                                          hsc2hsOptions = [],
@@ -214,8 +218,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
@@ -281,8 +287,10 @@ GenericPackageDescription
                                                                                                               extraFrameworkDirs = [],
                                                                                                               extraGHCiLibs = [],
                                                                                                               extraLibDirs = [],
+                                                                                                              extraLibDirsStatic = [],
                                                                                                               extraLibFlavours = [],
                                                                                                               extraLibs = [],
+                                                                                                              extraLibsStatic = [],
                                                                                                               frameworks = [],
                                                                                                               hsSourceDirs = [],
                                                                                                               hsc2hsOptions = [],
@@ -358,8 +366,10 @@ GenericPackageDescription
                                                                                                                                                              extraFrameworkDirs = [],
                                                                                                                                                              extraGHCiLibs = [],
                                                                                                                                                              extraLibDirs = [],
+                                                                                                                                                             extraLibDirsStatic = [],
                                                                                                                                                              extraLibFlavours = [],
                                                                                                                                                              extraLibs = [],
+                                                                                                                                                             extraLibsStatic = [],
                                                                                                                                                              frameworks = [],
                                                                                                                                                              hsSourceDirs = [],
                                                                                                                                                              hsc2hsOptions = [],
@@ -437,8 +447,10 @@ GenericPackageDescription
                                                                                                                                                              extraFrameworkDirs = [],
                                                                                                                                                              extraGHCiLibs = [],
                                                                                                                                                              extraLibDirs = [],
+                                                                                                                                                             extraLibDirsStatic = [],
                                                                                                                                                              extraLibFlavours = [],
                                                                                                                                                              extraLibs = [],
+                                                                                                                                                             extraLibsStatic = [],
                                                                                                                                                              frameworks = [],
                                                                                                                                                              hsSourceDirs = [],
                                                                                                                                                              hsc2hsOptions = [],
@@ -524,8 +536,10 @@ GenericPackageDescription
                                                                                                               extraFrameworkDirs = [],
                                                                                                               extraGHCiLibs = [],
                                                                                                               extraLibDirs = [],
+                                                                                                              extraLibDirsStatic = [],
                                                                                                               extraLibFlavours = [],
                                                                                                               extraLibs = [],
+                                                                                                              extraLibsStatic = [],
                                                                                                               frameworks = [],
                                                                                                               hsSourceDirs = [],
                                                                                                               hsc2hsOptions = [],
@@ -608,8 +622,10 @@ GenericPackageDescription
                                                                extraFrameworkDirs = [],
                                                                extraGHCiLibs = [],
                                                                extraLibDirs = [],
+                                                               extraLibDirsStatic = [],
                                                                extraLibFlavours = [],
                                                                extraLibs = [],
+                                                               extraLibsStatic = [],
                                                                frameworks = [],
                                                                hsSourceDirs = [],
                                                                hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/common.expr b/Cabal-tests/tests/ParserTests/regressions/common.expr
index 2d84ad0bb868de0f46e13019e6cf5d1478ca1ebe..0273441bfdc85531c35e7be1316700a9a2504978 100644
--- a/Cabal-tests/tests/ParserTests/regressions/common.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/common.expr
@@ -34,8 +34,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
@@ -100,8 +102,10 @@ GenericPackageDescription
                                                                extraFrameworkDirs = [],
                                                                extraGHCiLibs = [],
                                                                extraLibDirs = [],
+                                                               extraLibDirsStatic = [],
                                                                extraLibFlavours = [],
                                                                extraLibs = [],
+                                                               extraLibsStatic = [],
                                                                frameworks = [],
                                                                hsSourceDirs = [],
                                                                hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/common2.expr b/Cabal-tests/tests/ParserTests/regressions/common2.expr
index 5da11ec118e1f6b5b3d15a9fedb042fbe898fc33..611ad39242c8f648dc173b74d9d70c1694472bd1 100644
--- a/Cabal-tests/tests/ParserTests/regressions/common2.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/common2.expr
@@ -41,8 +41,10 @@ GenericPackageDescription
                                                                                                          extraFrameworkDirs = [],
                                                                                                          extraGHCiLibs = [],
                                                                                                          extraLibDirs = [],
+                                                                                                         extraLibDirsStatic = [],
                                                                                                          extraLibFlavours = [],
                                                                                                          extraLibs = [],
+                                                                                                         extraLibsStatic = [],
                                                                                                          frameworks = [],
                                                                                                          hsSourceDirs = [],
                                                                                                          hsc2hsOptions = [],
@@ -121,8 +123,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
@@ -213,8 +217,10 @@ GenericPackageDescription
                                                                                                                extraFrameworkDirs = [],
                                                                                                                extraGHCiLibs = [],
                                                                                                                extraLibDirs = [],
+                                                                                                               extraLibDirsStatic = [],
                                                                                                                extraLibFlavours = [],
                                                                                                                extraLibs = [],
+                                                                                                               extraLibsStatic = [],
                                                                                                                frameworks = [],
                                                                                                                hsSourceDirs = [],
                                                                                                                hsc2hsOptions = [],
@@ -295,8 +301,10 @@ GenericPackageDescription
                                                                 extraFrameworkDirs = [],
                                                                 extraGHCiLibs = [],
                                                                 extraLibDirs = [],
+                                                                extraLibDirsStatic = [],
                                                                 extraLibFlavours = [],
                                                                 extraLibs = [],
+                                                                extraLibsStatic = [],
                                                                 frameworks = [],
                                                                 hsSourceDirs = [],
                                                                 hsc2hsOptions = [],
@@ -391,8 +399,10 @@ GenericPackageDescription
                                                                                                               extraFrameworkDirs = [],
                                                                                                               extraGHCiLibs = [],
                                                                                                               extraLibDirs = [],
+                                                                                                              extraLibDirsStatic = [],
                                                                                                               extraLibFlavours = [],
                                                                                                               extraLibs = [],
+                                                                                                              extraLibsStatic = [],
                                                                                                               frameworks = [],
                                                                                                               hsSourceDirs = [],
                                                                                                               hsc2hsOptions = [],
@@ -470,8 +480,10 @@ GenericPackageDescription
                                                                                                               extraFrameworkDirs = [],
                                                                                                               extraGHCiLibs = [],
                                                                                                               extraLibDirs = [],
+                                                                                                              extraLibDirsStatic = [],
                                                                                                               extraLibFlavours = [],
                                                                                                               extraLibs = [],
+                                                                                                              extraLibsStatic = [],
                                                                                                               frameworks = [],
                                                                                                               hsSourceDirs = [],
                                                                                                               hsc2hsOptions = [],
@@ -543,8 +555,10 @@ GenericPackageDescription
                                                                                                               extraFrameworkDirs = [],
                                                                                                               extraGHCiLibs = [],
                                                                                                               extraLibDirs = [],
+                                                                                                              extraLibDirsStatic = [],
                                                                                                               extraLibFlavours = [],
                                                                                                               extraLibs = [],
+                                                                                                              extraLibsStatic = [],
                                                                                                               frameworks = [],
                                                                                                               hsSourceDirs = [],
                                                                                                               hsc2hsOptions = [],
@@ -618,8 +632,10 @@ GenericPackageDescription
                                                                extraFrameworkDirs = [],
                                                                extraGHCiLibs = [],
                                                                extraLibDirs = [],
+                                                               extraLibDirsStatic = [],
                                                                extraLibFlavours = [],
                                                                extraLibs = [],
+                                                               extraLibsStatic = [],
                                                                frameworks = [],
                                                                hsSourceDirs = [],
                                                                hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/common3.expr b/Cabal-tests/tests/ParserTests/regressions/common3.expr
index 1bb9c67a6ec8e841e83ba14475f4b1644a8bbfdf..d4ce4267c9b65db48d92e23cb6eda355a6fca367 100644
--- a/Cabal-tests/tests/ParserTests/regressions/common3.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/common3.expr
@@ -34,8 +34,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
@@ -110,8 +112,10 @@ GenericPackageDescription
                                                                extraFrameworkDirs = [],
                                                                extraGHCiLibs = [],
                                                                extraLibDirs = [],
+                                                               extraLibDirsStatic = [],
                                                                extraLibFlavours = [],
                                                                extraLibs = [],
+                                                               extraLibsStatic = [],
                                                                frameworks = [],
                                                                hsSourceDirs = [],
                                                                hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/denormalised-paths.cabal b/Cabal-tests/tests/ParserTests/regressions/denormalised-paths.cabal
index 338109cabda8ccaa7a9da09a4b0709f1206c3aed..9fb2f39cbe9d76cc0bc975848cc0c38ad9e4c83a 100644
--- a/Cabal-tests/tests/ParserTests/regressions/denormalised-paths.cabal
+++ b/Cabal-tests/tests/ParserTests/regressions/denormalised-paths.cabal
@@ -29,8 +29,12 @@ tested-with:
    || ==8.8.1
 
 extra-source-files:
+  -- this is fine
+  files/**/*.md
+  -- collection of invalid paths
   files/**/*.txt/
   files/../foo.txt
+  files/<>/*.txt
 
 source-repository head
   type:     git
@@ -69,3 +73,6 @@ library
 
   -- this is the only case catched by Cabal-3.0.2.0
   hs-source-dirs:   ../../assoc/src
+
+  -- globs not allowed in field
+  c-sources: c/**/*.c
diff --git a/Cabal-tests/tests/ParserTests/regressions/denormalised-paths.check b/Cabal-tests/tests/ParserTests/regressions/denormalised-paths.check
index 02fe04a457b0f796592327e04208e71a3ce7e19c..84eade4e941ca0b56df80424ca26e48721c35668 100644
--- a/Cabal-tests/tests/ParserTests/regressions/denormalised-paths.check
+++ b/Cabal-tests/tests/ParserTests/regressions/denormalised-paths.check
@@ -1,12 +1,11 @@
 The 'subdir' field of a source-repository is not a good relative path: "trailing same directory segment: ."
+The paths 'files/<>/*.txt', 'c/**/*.c', 'C:foo/bar', '||s' are invalid on Windows, which would cause portability problems for this package. Windows file names cannot contain any of the characters ":*?<>|" and there a few reserved names including "aux", "nul", "con", "prn", "com1-9", "lpt1-9" and "clock$".
 'hs-source-dirs: ../../assoc/src' is a relative path outside of the source tree. This will not work when generating a tarball with 'sdist'.
-'extra-source-files: files/**/*.txt/' is not good relative path: trailing slash
-'extra-source-files: files/../foo.txt' is not good relative path: parent directory segment: ..
-'license-file: LICENSE2/' is not good relative path: trailing slash
-'license-file: .' is not good relative path: trailing dot segment
-'hs-source-dirs: src/.' is not good relative path: trailing same directory segment: .
-'hs-source-dirs: src/../src' is not good relative path: parent directory segment: ..
-'hs-source-dirs: src/../../assoc/src' is not good relative path: parent directory segment: ..
-'hs-source-dirs: C:foo/bar' is not good relative path: reserved character ':'
-'hs-source-dirs: ||s' is not good relative path: reserved character '|'
-'hs-source-dirs: ../../assoc/src' is not good relative path: parent directory segment: ..
+'extra-source-files: files/**/*.txt/' is not a good relative path: "trailing slash"
+'extra-source-files: files/../foo.txt' is not a good relative path: "parent directory segment: .."
+'license-file: LICENSE2/' is not a good relative path: "trailing slash"
+'license-file: .' is not a good relative path: "trailing dot segment"
+'hs-source-dirs: src/.' is not a good relative path: "trailing same directory segment: ."
+'hs-source-dirs: src/../src' is not a good relative path: "parent directory segment: .."
+'hs-source-dirs: src/../../assoc/src' is not a good relative path: "parent directory segment: .."
+'hs-source-dirs: ../../assoc/src' is not a good relative path: "parent directory segment: .."
diff --git a/Cabal-tests/tests/ParserTests/regressions/elif.expr b/Cabal-tests/tests/ParserTests/regressions/elif.expr
index 311032fd1c608dcf5ff1531999658f004a3bc59f..b9ea1f18bc922b71a20e53779922e82f55a1861e 100644
--- a/Cabal-tests/tests/ParserTests/regressions/elif.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/elif.expr
@@ -41,8 +41,10 @@ GenericPackageDescription
                                                                                                          extraFrameworkDirs = [],
                                                                                                          extraGHCiLibs = [],
                                                                                                          extraLibDirs = [],
+                                                                                                         extraLibDirsStatic = [],
                                                                                                          extraLibFlavours = [],
                                                                                                          extraLibs = [],
+                                                                                                         extraLibsStatic = [],
                                                                                                          frameworks = [],
                                                                                                          hsSourceDirs = [],
                                                                                                          hsc2hsOptions = [],
@@ -108,8 +110,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/elif2.expr b/Cabal-tests/tests/ParserTests/regressions/elif2.expr
index 5f0ab651fdc7331873ffbf50bdcb171915935e82..b4e7be7dc75c825a1f9f7096a306a07023c57dcf 100644
--- a/Cabal-tests/tests/ParserTests/regressions/elif2.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/elif2.expr
@@ -39,8 +39,10 @@ GenericPackageDescription
                                                                                                                                                               extraFrameworkDirs = [],
                                                                                                                                                               extraGHCiLibs = [],
                                                                                                                                                               extraLibDirs = [],
+                                                                                                                                                              extraLibDirsStatic = [],
                                                                                                                                                               extraLibFlavours = [],
                                                                                                                                                               extraLibs = [],
+                                                                                                                                                              extraLibsStatic = [],
                                                                                                                                                               frameworks = [],
                                                                                                                                                               hsSourceDirs = [],
                                                                                                                                                               hsc2hsOptions = [],
@@ -108,8 +110,10 @@ GenericPackageDescription
                                                                                                                                                            extraFrameworkDirs = [],
                                                                                                                                                            extraGHCiLibs = [],
                                                                                                                                                            extraLibDirs = [],
+                                                                                                                                                           extraLibDirsStatic = [],
                                                                                                                                                            extraLibFlavours = [],
                                                                                                                                                            extraLibs = [],
+                                                                                                                                                           extraLibsStatic = [],
                                                                                                                                                            frameworks = [],
                                                                                                                                                            hsSourceDirs = [],
                                                                                                                                                            hsc2hsOptions = [],
@@ -175,8 +179,10 @@ GenericPackageDescription
                                                                                                             extraFrameworkDirs = [],
                                                                                                             extraGHCiLibs = [],
                                                                                                             extraLibDirs = [],
+                                                                                                            extraLibDirsStatic = [],
                                                                                                             extraLibFlavours = [],
                                                                                                             extraLibs = [],
+                                                                                                            extraLibsStatic = [],
                                                                                                             frameworks = [],
                                                                                                             hsSourceDirs = [],
                                                                                                             hsc2hsOptions = [],
@@ -244,8 +250,10 @@ GenericPackageDescription
                                                                                                          extraFrameworkDirs = [],
                                                                                                          extraGHCiLibs = [],
                                                                                                          extraLibDirs = [],
+                                                                                                         extraLibDirsStatic = [],
                                                                                                          extraLibFlavours = [],
                                                                                                          extraLibs = [],
+                                                                                                         extraLibsStatic = [],
                                                                                                          frameworks = [],
                                                                                                          hsSourceDirs = [],
                                                                                                          hsc2hsOptions = [],
@@ -311,8 +319,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/encoding-0.8.expr b/Cabal-tests/tests/ParserTests/regressions/encoding-0.8.expr
index 5d89604a56560f077002201461b374c9790f4536..f544742992774a8db58fff19fe1d7b62051f180d 100644
--- a/Cabal-tests/tests/ParserTests/regressions/encoding-0.8.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/encoding-0.8.expr
@@ -36,8 +36,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/extensions-paths-5054.check b/Cabal-tests/tests/ParserTests/regressions/extensions-paths-5054.check
index 6268308c77df8ece6f6f1e54ee3e19fd72ca5639..d6a6dac2aa2058bc000c42dce5aa55e4ee92563b 100644
--- a/Cabal-tests/tests/ParserTests/regressions/extensions-paths-5054.check
+++ b/Cabal-tests/tests/ParserTests/regressions/extensions-paths-5054.check
@@ -1 +1 @@
-The package uses RebindableSyntax with OverloadedStrings or OverloadedLists in default-extensions, and also Paths_ autogen module. That configuration is known to cause compile failures with Cabal < 2.2. To use these default-extensions with Paths_ autogen module specify at least 'cabal-version: 2.2'.
+Packages using RebindableSyntax with OverloadedStrings or OverloadedLists in default-extensions, in conjunction with the autogenerated module Paths_*, are known to cause compile failures with Cabal < 2.2. To use these default-extensions with a Paths_* autogen module, specify at least 'cabal-version: 2.2'.
diff --git a/Cabal-tests/tests/ParserTests/regressions/generics-sop.expr b/Cabal-tests/tests/ParserTests/regressions/generics-sop.expr
index 6f1a7dab72507de265ea9e23532dad0728ee40f4..dfddaf29a02c1fd46ac7ad290edfc6f3335709bb 100644
--- a/Cabal-tests/tests/ParserTests/regressions/generics-sop.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/generics-sop.expr
@@ -47,8 +47,10 @@ GenericPackageDescription
                                                                                                          extraFrameworkDirs = [],
                                                                                                          extraGHCiLibs = [],
                                                                                                          extraLibDirs = [],
+                                                                                                         extraLibDirsStatic = [],
                                                                                                          extraLibFlavours = [],
                                                                                                          extraLibs = [],
+                                                                                                         extraLibsStatic = [],
                                                                                                          frameworks = [],
                                                                                                          hsSourceDirs = [],
                                                                                                          hsc2hsOptions = [],
@@ -150,8 +152,10 @@ GenericPackageDescription
                                                                                                          extraFrameworkDirs = [],
                                                                                                          extraGHCiLibs = [],
                                                                                                          extraLibDirs = [],
+                                                                                                         extraLibDirsStatic = [],
                                                                                                          extraLibFlavours = [],
                                                                                                          extraLibs = [],
+                                                                                                         extraLibsStatic = [],
                                                                                                          frameworks = [],
                                                                                                          hsSourceDirs = [],
                                                                                                          hsc2hsOptions = [],
@@ -242,8 +246,10 @@ GenericPackageDescription
                                                                                                          extraFrameworkDirs = [],
                                                                                                          extraGHCiLibs = [],
                                                                                                          extraLibDirs = [],
+                                                                                                         extraLibDirsStatic = [],
                                                                                                          extraLibFlavours = [],
                                                                                                          extraLibs = [],
+                                                                                                         extraLibsStatic = [],
                                                                                                          frameworks = [],
                                                                                                          hsSourceDirs = [],
                                                                                                          hsc2hsOptions = [],
@@ -308,8 +314,10 @@ GenericPackageDescription
                                                                                                          extraFrameworkDirs = [],
                                                                                                          extraGHCiLibs = [],
                                                                                                          extraLibDirs = [],
+                                                                                                         extraLibDirsStatic = [],
                                                                                                          extraLibFlavours = [],
                                                                                                          extraLibs = [],
+                                                                                                         extraLibsStatic = [],
                                                                                                          frameworks = [],
                                                                                                          hsSourceDirs = [],
                                                                                                          hsc2hsOptions = [],
@@ -440,8 +448,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [SymbolicPath "src"],
                                                           hsc2hsOptions = [],
@@ -563,8 +573,10 @@ GenericPackageDescription
                                                                extraFrameworkDirs = [],
                                                                extraGHCiLibs = [],
                                                                extraLibDirs = [],
+                                                               extraLibDirsStatic = [],
                                                                extraLibFlavours = [],
                                                                extraLibs = [],
+                                                               extraLibsStatic = [],
                                                                frameworks = [],
                                                                hsSourceDirs = [SymbolicPath "test"],
                                                                hsc2hsOptions = [],
@@ -650,8 +662,10 @@ GenericPackageDescription
                                                                extraFrameworkDirs = [],
                                                                extraGHCiLibs = [],
                                                                extraLibDirs = [],
+                                                               extraLibDirsStatic = [],
                                                                extraLibFlavours = [],
                                                                extraLibs = [],
+                                                               extraLibsStatic = [],
                                                                frameworks = [],
                                                                hsSourceDirs = [SymbolicPath "test"],
                                                                hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/hasktorch.expr b/Cabal-tests/tests/ParserTests/regressions/hasktorch.expr
index 9bf84ed14bc64e12e170555d42b504516a6cede9..2ddf3ba05566d15253dc27795f3eafbb6a62bc44 100644
--- a/Cabal-tests/tests/ParserTests/regressions/hasktorch.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/hasktorch.expr
@@ -1,9840 +1,10188 @@
-GenericPackageDescription
-  {condBenchmarks = [],
-   condExecutables = [_×_
-                        (UnqualComponentName "isdefinite-cpu")
-                        CondNode
-                          {condTreeComponents = [],
-                           condTreeConstraints = [Dependency
-                                                    (PackageName "base")
-                                                    (IntersectVersionRanges
-                                                       (UnionVersionRanges
-                                                          (ThisVersion (mkVersion [4, 7]))
-                                                          (LaterVersion (mkVersion [4, 7])))
-                                                       (EarlierVersion (mkVersion [5])))
-                                                    mainLibSet,
-                                                  Dependency
-                                                    (PackageName "hasktorch")
-                                                    (OrLaterVersion (mkVersion [0]))
-                                                    (NonEmptySet.fromNonEmpty
-                                                       (NE.fromList
-                                                          [LSubLibName
-                                                             (UnqualComponentName
-                                                                "hasktorch-cpu")]))],
-                           condTreeData = Executable
-                                            {buildInfo = BuildInfo
-                                                           {asmOptions = [],
-                                                            asmSources = [],
-                                                            autogenIncludes = [],
-                                                            autogenModules = [],
-                                                            buildToolDepends = [],
-                                                            buildTools = [],
-                                                            buildable = True,
-                                                            cSources = [],
-                                                            ccOptions = [],
-                                                            cmmOptions = [],
-                                                            cmmSources = [],
-                                                            cppOptions = [],
-                                                            customFieldsBI = [],
-                                                            cxxOptions = [],
-                                                            cxxSources = [],
-                                                            defaultExtensions = [],
-                                                            defaultLanguage = Just Haskell2010,
-                                                            extraBundledLibs = [],
-                                                            extraDynLibFlavours = [],
-                                                            extraFrameworkDirs = [],
-                                                            extraGHCiLibs = [],
-                                                            extraLibDirs = [],
-                                                            extraLibFlavours = [],
-                                                            extraLibs = [],
-                                                            frameworks = [],
-                                                            hsSourceDirs = [SymbolicPath "exe"],
-                                                            hsc2hsOptions = [],
-                                                            includeDirs = [],
-                                                            includes = [],
-                                                            installIncludes = [],
-                                                            jsSources = [],
-                                                            ldOptions = [],
-                                                            mixins = [],
-                                                            oldExtensions = [],
-                                                            options = PerCompilerFlavor [] [],
-                                                            otherExtensions = [],
-                                                            otherLanguages = [],
-                                                            otherModules = [],
-                                                            pkgconfigDepends = [],
-                                                            profOptions = PerCompilerFlavor [] [],
-                                                            sharedOptions = PerCompilerFlavor [] [],
-                                                            staticOptions = PerCompilerFlavor [] [],
-                                                            targetBuildDepends = [Dependency
-                                                                                    (PackageName
-                                                                                       "base")
-                                                                                    (IntersectVersionRanges
-                                                                                       (UnionVersionRanges
-                                                                                          (ThisVersion
-                                                                                             (mkVersion
-                                                                                                [4,
-                                                                                                 7]))
-                                                                                          (LaterVersion
-                                                                                             (mkVersion
-                                                                                                [4,
-                                                                                                 7])))
-                                                                                       (EarlierVersion
-                                                                                          (mkVersion
-                                                                                             [5])))
-                                                                                    mainLibSet,
-                                                                                  Dependency
-                                                                                    (PackageName
-                                                                                       "hasktorch")
-                                                                                    (OrLaterVersion
-                                                                                       (mkVersion
-                                                                                          [0]))
-                                                                                    (NonEmptySet.fromNonEmpty
-                                                                                       (NE.fromList
-                                                                                          [LSubLibName
-                                                                                             (UnqualComponentName
-                                                                                                "hasktorch-cpu")]))],
-                                                            virtualModules = []},
-                                             exeName = UnqualComponentName "isdefinite-cpu",
-                                             exeScope = ExecutablePublic,
-                                             modulePath = "Noop.hs"}},
-                      _×_
-                        (UnqualComponentName "isdefinite-gpu")
-                        CondNode
-                          {condTreeComponents = [],
-                           condTreeConstraints = [Dependency
-                                                    (PackageName "base")
-                                                    (IntersectVersionRanges
-                                                       (UnionVersionRanges
-                                                          (ThisVersion (mkVersion [4, 7]))
-                                                          (LaterVersion (mkVersion [4, 7])))
-                                                       (EarlierVersion (mkVersion [5])))
-                                                    mainLibSet,
-                                                  Dependency
-                                                    (PackageName "hasktorch")
-                                                    (OrLaterVersion (mkVersion [0]))
-                                                    (NonEmptySet.fromNonEmpty
-                                                       (NE.fromList
-                                                          [LSubLibName
-                                                             (UnqualComponentName
-                                                                "hasktorch-gpu")]))],
-                           condTreeData = Executable
-                                            {buildInfo = BuildInfo
-                                                           {asmOptions = [],
-                                                            asmSources = [],
-                                                            autogenIncludes = [],
-                                                            autogenModules = [],
-                                                            buildToolDepends = [],
-                                                            buildTools = [],
-                                                            buildable = True,
-                                                            cSources = [],
-                                                            ccOptions = [],
-                                                            cmmOptions = [],
-                                                            cmmSources = [],
-                                                            cppOptions = [],
-                                                            customFieldsBI = [],
-                                                            cxxOptions = [],
-                                                            cxxSources = [],
-                                                            defaultExtensions = [],
-                                                            defaultLanguage = Just Haskell2010,
-                                                            extraBundledLibs = [],
-                                                            extraDynLibFlavours = [],
-                                                            extraFrameworkDirs = [],
-                                                            extraGHCiLibs = [],
-                                                            extraLibDirs = [],
-                                                            extraLibFlavours = [],
-                                                            extraLibs = [],
-                                                            frameworks = [],
-                                                            hsSourceDirs = [SymbolicPath "exe"],
-                                                            hsc2hsOptions = [],
-                                                            includeDirs = [],
-                                                            includes = [],
-                                                            installIncludes = [],
-                                                            jsSources = [],
-                                                            ldOptions = [],
-                                                            mixins = [],
-                                                            oldExtensions = [],
-                                                            options = PerCompilerFlavor [] [],
-                                                            otherExtensions = [],
-                                                            otherLanguages = [],
-                                                            otherModules = [],
-                                                            pkgconfigDepends = [],
-                                                            profOptions = PerCompilerFlavor [] [],
-                                                            sharedOptions = PerCompilerFlavor [] [],
-                                                            staticOptions = PerCompilerFlavor [] [],
-                                                            targetBuildDepends = [Dependency
-                                                                                    (PackageName
-                                                                                       "base")
-                                                                                    (IntersectVersionRanges
-                                                                                       (UnionVersionRanges
-                                                                                          (ThisVersion
-                                                                                             (mkVersion
-                                                                                                [4,
-                                                                                                 7]))
-                                                                                          (LaterVersion
-                                                                                             (mkVersion
-                                                                                                [4,
-                                                                                                 7])))
-                                                                                       (EarlierVersion
-                                                                                          (mkVersion
-                                                                                             [5])))
-                                                                                    mainLibSet,
-                                                                                  Dependency
-                                                                                    (PackageName
-                                                                                       "hasktorch")
-                                                                                    (OrLaterVersion
-                                                                                       (mkVersion
-                                                                                          [0]))
-                                                                                    (NonEmptySet.fromNonEmpty
-                                                                                       (NE.fromList
-                                                                                          [LSubLibName
-                                                                                             (UnqualComponentName
-                                                                                                "hasktorch-gpu")]))],
-                                                            virtualModules = []},
-                                             exeName = UnqualComponentName "isdefinite-gpu",
-                                             exeScope = ExecutablePublic,
-                                             modulePath = "Noop.hs"}},
-                      _×_
-                        (UnqualComponentName "isdefinite")
-                        CondNode
-                          {condTreeComponents = [],
-                           condTreeConstraints = [Dependency
-                                                    (PackageName "base")
-                                                    (IntersectVersionRanges
-                                                       (UnionVersionRanges
-                                                          (ThisVersion (mkVersion [4, 7]))
-                                                          (LaterVersion (mkVersion [4, 7])))
-                                                       (EarlierVersion (mkVersion [5])))
-                                                    mainLibSet,
-                                                  Dependency
-                                                    (PackageName "hasktorch")
-                                                    (OrLaterVersion (mkVersion [0]))
-                                                    mainLibSet],
-                           condTreeData = Executable
-                                            {buildInfo = BuildInfo
-                                                           {asmOptions = [],
-                                                            asmSources = [],
-                                                            autogenIncludes = [],
-                                                            autogenModules = [],
-                                                            buildToolDepends = [],
-                                                            buildTools = [],
-                                                            buildable = True,
-                                                            cSources = [],
-                                                            ccOptions = [],
-                                                            cmmOptions = [],
-                                                            cmmSources = [],
-                                                            cppOptions = [],
-                                                            customFieldsBI = [],
-                                                            cxxOptions = [],
-                                                            cxxSources = [],
-                                                            defaultExtensions = [],
-                                                            defaultLanguage = Just Haskell2010,
-                                                            extraBundledLibs = [],
-                                                            extraDynLibFlavours = [],
-                                                            extraFrameworkDirs = [],
-                                                            extraGHCiLibs = [],
-                                                            extraLibDirs = [],
-                                                            extraLibFlavours = [],
-                                                            extraLibs = [],
-                                                            frameworks = [],
-                                                            hsSourceDirs = [SymbolicPath "exe"],
-                                                            hsc2hsOptions = [],
-                                                            includeDirs = [],
-                                                            includes = [],
-                                                            installIncludes = [],
-                                                            jsSources = [],
-                                                            ldOptions = [],
-                                                            mixins = [],
-                                                            oldExtensions = [],
-                                                            options = PerCompilerFlavor [] [],
-                                                            otherExtensions = [],
-                                                            otherLanguages = [],
-                                                            otherModules = [],
-                                                            pkgconfigDepends = [],
-                                                            profOptions = PerCompilerFlavor [] [],
-                                                            sharedOptions = PerCompilerFlavor [] [],
-                                                            staticOptions = PerCompilerFlavor [] [],
-                                                            targetBuildDepends = [Dependency
-                                                                                    (PackageName
-                                                                                       "base")
-                                                                                    (IntersectVersionRanges
-                                                                                       (UnionVersionRanges
-                                                                                          (ThisVersion
-                                                                                             (mkVersion
-                                                                                                [4,
-                                                                                                 7]))
-                                                                                          (LaterVersion
-                                                                                             (mkVersion
-                                                                                                [4,
-                                                                                                 7])))
-                                                                                       (EarlierVersion
-                                                                                          (mkVersion
-                                                                                             [5])))
-                                                                                    mainLibSet,
-                                                                                  Dependency
-                                                                                    (PackageName
-                                                                                       "hasktorch")
-                                                                                    (OrLaterVersion
-                                                                                       (mkVersion
-                                                                                          [0]))
-                                                                                    mainLibSet],
-                                                            virtualModules = []},
-                                             exeName = UnqualComponentName "isdefinite",
-                                             exeScope = ExecutablePublic,
-                                             modulePath = "Noop.hs"}},
-                      _×_
-                        (UnqualComponentName "memcheck")
-                        CondNode
-                          {condTreeComponents = [],
-                           condTreeConstraints = [Dependency
-                                                    (PackageName "base")
-                                                    (IntersectVersionRanges
-                                                       (UnionVersionRanges
-                                                          (ThisVersion (mkVersion [4, 7]))
-                                                          (LaterVersion (mkVersion [4, 7])))
-                                                       (EarlierVersion (mkVersion [5])))
-                                                    mainLibSet,
-                                                  Dependency
-                                                    (PackageName "hasktorch")
-                                                    (OrLaterVersion (mkVersion [0]))
-                                                    mainLibSet],
-                           condTreeData = Executable
-                                            {buildInfo = BuildInfo
-                                                           {asmOptions = [],
-                                                            asmSources = [],
-                                                            autogenIncludes = [],
-                                                            autogenModules = [],
-                                                            buildToolDepends = [],
-                                                            buildTools = [],
-                                                            buildable = True,
-                                                            cSources = [],
-                                                            ccOptions = [],
-                                                            cmmOptions = [],
-                                                            cmmSources = [],
-                                                            cppOptions = [],
-                                                            customFieldsBI = [],
-                                                            cxxOptions = [],
-                                                            cxxSources = [],
-                                                            defaultExtensions = [],
-                                                            defaultLanguage = Just Haskell2010,
-                                                            extraBundledLibs = [],
-                                                            extraDynLibFlavours = [],
-                                                            extraFrameworkDirs = [],
-                                                            extraGHCiLibs = [],
-                                                            extraLibDirs = [],
-                                                            extraLibFlavours = [],
-                                                            extraLibs = [],
-                                                            frameworks = [],
-                                                            hsSourceDirs = [SymbolicPath "exe"],
-                                                            hsc2hsOptions = [],
-                                                            includeDirs = [],
-                                                            includes = [],
-                                                            installIncludes = [],
-                                                            jsSources = [],
-                                                            ldOptions = [],
-                                                            mixins = [],
-                                                            oldExtensions = [],
-                                                            options = PerCompilerFlavor [] [],
-                                                            otherExtensions = [],
-                                                            otherLanguages = [],
-                                                            otherModules = [],
-                                                            pkgconfigDepends = [],
-                                                            profOptions = PerCompilerFlavor [] [],
-                                                            sharedOptions = PerCompilerFlavor [] [],
-                                                            staticOptions = PerCompilerFlavor [] [],
-                                                            targetBuildDepends = [Dependency
-                                                                                    (PackageName
-                                                                                       "base")
-                                                                                    (IntersectVersionRanges
-                                                                                       (UnionVersionRanges
-                                                                                          (ThisVersion
-                                                                                             (mkVersion
-                                                                                                [4,
-                                                                                                 7]))
-                                                                                          (LaterVersion
-                                                                                             (mkVersion
-                                                                                                [4,
-                                                                                                 7])))
-                                                                                       (EarlierVersion
-                                                                                          (mkVersion
-                                                                                             [5])))
-                                                                                    mainLibSet,
-                                                                                  Dependency
-                                                                                    (PackageName
-                                                                                       "hasktorch")
-                                                                                    (OrLaterVersion
-                                                                                       (mkVersion
-                                                                                          [0]))
-                                                                                    mainLibSet],
-                                                            virtualModules = []},
-                                             exeName = UnqualComponentName "memcheck",
-                                             exeScope = ExecutablePublic,
-                                             modulePath = "Memcheck.hs"}}],
-   condForeignLibs = [],
-   condLibrary = Just
-                   CondNode
-                     {condTreeComponents = [CondBranch
-                                              {condBranchCondition = `CNot (Var (PackageFlag (FlagName "lite")))`,
-                                               condBranchIfFalse = Nothing,
-                                               condBranchIfTrue = CondNode
-                                                                    {condTreeComponents = [],
-                                                                     condTreeConstraints = [],
-                                                                     condTreeData = Library
-                                                                                      {exposedModules = [],
-                                                                                       libBuildInfo = BuildInfo
-                                                                                                        {asmOptions = [],
-                                                                                                         asmSources = [],
-                                                                                                         autogenIncludes = [],
-                                                                                                         autogenModules = [],
-                                                                                                         buildToolDepends = [],
-                                                                                                         buildTools = [],
-                                                                                                         buildable = True,
-                                                                                                         cSources = [],
-                                                                                                         ccOptions = [],
-                                                                                                         cmmOptions = [],
-                                                                                                         cmmSources = [],
-                                                                                                         cppOptions = [],
-                                                                                                         customFieldsBI = [],
-                                                                                                         cxxOptions = [],
-                                                                                                         cxxSources = [],
-                                                                                                         defaultExtensions = [],
-                                                                                                         defaultLanguage = Nothing,
-                                                                                                         extraBundledLibs = [],
-                                                                                                         extraDynLibFlavours = [],
-                                                                                                         extraFrameworkDirs = [],
-                                                                                                         extraGHCiLibs = [],
-                                                                                                         extraLibDirs = [],
-                                                                                                         extraLibFlavours = [],
-                                                                                                         extraLibs = [],
-                                                                                                         frameworks = [],
-                                                                                                         hsSourceDirs = [],
-                                                                                                         hsc2hsOptions = [],
-                                                                                                         includeDirs = [],
-                                                                                                         includes = [],
-                                                                                                         installIncludes = [],
-                                                                                                         jsSources = [],
-                                                                                                         ldOptions = [],
-                                                                                                         mixins = [],
-                                                                                                         oldExtensions = [],
-                                                                                                         options = PerCompilerFlavor
-                                                                                                                     []
-                                                                                                                     [],
-                                                                                                         otherExtensions = [],
-                                                                                                         otherLanguages = [],
-                                                                                                         otherModules = [],
-                                                                                                         pkgconfigDepends = [],
-                                                                                                         profOptions = PerCompilerFlavor
-                                                                                                                         []
-                                                                                                                         [],
-                                                                                                         sharedOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         staticOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         targetBuildDepends = [],
-                                                                                                         virtualModules = []},
-                                                                                       libExposed = True,
-                                                                                       libName = LMainLibName,
-                                                                                       libVisibility = LibraryVisibilityPublic,
-                                                                                       reexportedModules = [ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Byte",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Byte",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Byte.Dynamic",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Byte.Dynamic",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Byte.Storage",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Byte.Storage",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Char",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Char",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Char.Dynamic",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Char.Dynamic",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Char.Storage",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Char.Storage",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Short",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Short",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Short.Dynamic",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Short.Dynamic",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Short.Storage",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Short.Storage",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Int",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Int",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Int.Dynamic",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Int.Dynamic",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Int.Storage",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Int.Storage",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Float",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Float",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Float.Dynamic",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Float.Dynamic",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Float.Storage",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Float.Storage",
-                                                                                                               moduleReexportOriginalPackage = Nothing}],
-                                                                                       signatures = []}}},
-                                            CondBranch
-                                              {condBranchCondition = `Var (PackageFlag (FlagName "cuda"))`,
-                                               condBranchIfFalse = Nothing,
-                                               condBranchIfTrue = CondNode
-                                                                    {condTreeComponents = [CondBranch
-                                                                                             {condBranchCondition = `CNot (Var (PackageFlag (FlagName "lite")))`,
-                                                                                              condBranchIfFalse = Nothing,
-                                                                                              condBranchIfTrue = CondNode
-                                                                                                                   {condTreeComponents = [],
-                                                                                                                    condTreeConstraints = [],
-                                                                                                                    condTreeData = Library
-                                                                                                                                     {exposedModules = [],
-                                                                                                                                      libBuildInfo = BuildInfo
-                                                                                                                                                       {asmOptions = [],
-                                                                                                                                                        asmSources = [],
-                                                                                                                                                        autogenIncludes = [],
-                                                                                                                                                        autogenModules = [],
-                                                                                                                                                        buildToolDepends = [],
-                                                                                                                                                        buildTools = [],
-                                                                                                                                                        buildable = True,
-                                                                                                                                                        cSources = [],
-                                                                                                                                                        ccOptions = [],
-                                                                                                                                                        cmmOptions = [],
-                                                                                                                                                        cmmSources = [],
-                                                                                                                                                        cppOptions = [],
-                                                                                                                                                        customFieldsBI = [],
-                                                                                                                                                        cxxOptions = [],
-                                                                                                                                                        cxxSources = [],
-                                                                                                                                                        defaultExtensions = [],
-                                                                                                                                                        defaultLanguage = Nothing,
-                                                                                                                                                        extraBundledLibs = [],
-                                                                                                                                                        extraDynLibFlavours = [],
-                                                                                                                                                        extraFrameworkDirs = [],
-                                                                                                                                                        extraGHCiLibs = [],
-                                                                                                                                                        extraLibDirs = [],
-                                                                                                                                                        extraLibFlavours = [],
-                                                                                                                                                        extraLibs = [],
-                                                                                                                                                        frameworks = [],
-                                                                                                                                                        hsSourceDirs = [],
-                                                                                                                                                        hsc2hsOptions = [],
-                                                                                                                                                        includeDirs = [],
-                                                                                                                                                        includes = [],
-                                                                                                                                                        installIncludes = [],
-                                                                                                                                                        jsSources = [],
-                                                                                                                                                        ldOptions = [],
-                                                                                                                                                        mixins = [],
-                                                                                                                                                        oldExtensions = [],
-                                                                                                                                                        options = PerCompilerFlavor
-                                                                                                                                                                    []
-                                                                                                                                                                    [],
-                                                                                                                                                        otherExtensions = [],
-                                                                                                                                                        otherLanguages = [],
-                                                                                                                                                        otherModules = [],
-                                                                                                                                                        pkgconfigDepends = [],
-                                                                                                                                                        profOptions = PerCompilerFlavor
-                                                                                                                                                                        []
-                                                                                                                                                                        [],
-                                                                                                                                                        sharedOptions = PerCompilerFlavor
-                                                                                                                                                                          []
-                                                                                                                                                                          [],
-                                                                                                                                                        staticOptions = PerCompilerFlavor
-                                                                                                                                                                          []
-                                                                                                                                                                          [],
-                                                                                                                                                        targetBuildDepends = [],
-                                                                                                                                                        virtualModules = []},
-                                                                                                                                      libExposed = True,
-                                                                                                                                      libName = LMainLibName,
-                                                                                                                                      libVisibility = LibraryVisibilityPublic,
-                                                                                                                                      reexportedModules = [ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Byte",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Byte",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing},
-                                                                                                                                                           ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Byte.Dynamic",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Byte.Dynamic",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing},
-                                                                                                                                                           ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Byte.Storage",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Byte.Storage",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing},
-                                                                                                                                                           ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Char",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Char",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing},
-                                                                                                                                                           ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Char.Dynamic",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Char.Dynamic",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing},
-                                                                                                                                                           ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Char.Storage",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Char.Storage",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing},
-                                                                                                                                                           ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Short",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Short",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing},
-                                                                                                                                                           ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Short.Dynamic",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Short.Dynamic",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing},
-                                                                                                                                                           ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Short.Storage",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Short.Storage",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing},
-                                                                                                                                                           ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Int",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Int",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing},
-                                                                                                                                                           ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Int.Dynamic",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Int.Dynamic",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing},
-                                                                                                                                                           ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Int.Storage",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Int.Storage",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing},
-                                                                                                                                                           ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Float",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Float",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing},
-                                                                                                                                                           ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Float.Dynamic",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Float.Dynamic",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing},
-                                                                                                                                                           ModuleReexport
-                                                                                                                                                             {moduleReexportName = ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Float.Storage",
-                                                                                                                                                              moduleReexportOriginalName = ModuleName
-                                                                                                                                                                                             "Torch.Cuda.Float.Storage",
-                                                                                                                                                              moduleReexportOriginalPackage = Nothing}],
-                                                                                                                                      signatures = []}}}],
-                                                                     condTreeConstraints = [Dependency
-                                                                                              (PackageName
-                                                                                                 "hasktorch")
-                                                                                              (OrLaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [0]))
-                                                                                              (NonEmptySet.fromNonEmpty
-                                                                                                 (NE.fromList
-                                                                                                    [LSubLibName
-                                                                                                       (UnqualComponentName
-                                                                                                          "hasktorch-gpu")]))],
-                                                                     condTreeData = Library
-                                                                                      {exposedModules = [],
-                                                                                       libBuildInfo = BuildInfo
-                                                                                                        {asmOptions = [],
-                                                                                                         asmSources = [],
-                                                                                                         autogenIncludes = [],
-                                                                                                         autogenModules = [],
-                                                                                                         buildToolDepends = [],
-                                                                                                         buildTools = [],
-                                                                                                         buildable = True,
-                                                                                                         cSources = [],
-                                                                                                         ccOptions = [],
-                                                                                                         cmmOptions = [],
-                                                                                                         cmmSources = [],
-                                                                                                         cppOptions = [],
-                                                                                                         customFieldsBI = [],
-                                                                                                         cxxOptions = [],
-                                                                                                         cxxSources = [],
-                                                                                                         defaultExtensions = [],
-                                                                                                         defaultLanguage = Nothing,
-                                                                                                         extraBundledLibs = [],
-                                                                                                         extraDynLibFlavours = [],
-                                                                                                         extraFrameworkDirs = [],
-                                                                                                         extraGHCiLibs = [],
-                                                                                                         extraLibDirs = [],
-                                                                                                         extraLibFlavours = [],
-                                                                                                         extraLibs = [],
-                                                                                                         frameworks = [],
-                                                                                                         hsSourceDirs = [],
-                                                                                                         hsc2hsOptions = [],
-                                                                                                         includeDirs = [],
-                                                                                                         includes = [],
-                                                                                                         installIncludes = [],
-                                                                                                         jsSources = [],
-                                                                                                         ldOptions = [],
-                                                                                                         mixins = [],
-                                                                                                         oldExtensions = [],
-                                                                                                         options = PerCompilerFlavor
-                                                                                                                     []
-                                                                                                                     [],
-                                                                                                         otherExtensions = [],
-                                                                                                         otherLanguages = [],
-                                                                                                         otherModules = [],
-                                                                                                         pkgconfigDepends = [],
-                                                                                                         profOptions = PerCompilerFlavor
-                                                                                                                         []
-                                                                                                                         [],
-                                                                                                         sharedOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         staticOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         targetBuildDepends = [Dependency
-                                                                                                                                 (PackageName
-                                                                                                                                    "hasktorch")
-                                                                                                                                 (OrLaterVersion
-                                                                                                                                    (mkVersion
-                                                                                                                                       [0]))
-                                                                                                                                 (NonEmptySet.fromNonEmpty
-                                                                                                                                    (NE.fromList
-                                                                                                                                       [LSubLibName
-                                                                                                                                          (UnqualComponentName
-                                                                                                                                             "hasktorch-gpu")]))],
-                                                                                                         virtualModules = []},
-                                                                                       libExposed = True,
-                                                                                       libName = LMainLibName,
-                                                                                       libVisibility = LibraryVisibilityPublic,
-                                                                                       reexportedModules = [ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Long",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Long",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Long.Dynamic",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Long.Dynamic",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Long.Storage",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Long.Storage",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.Dynamic",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.Dynamic",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.Storage",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.Storage",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.NN",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.NN",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.NN.Activation",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.NN.Activation",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.NN.Backprop",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.NN.Backprop",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.NN.Conv1d",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.NN.Conv1d",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.NN.Conv2d",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.NN.Conv2d",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.NN.Criterion",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.NN.Criterion",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.NN.Layers",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.NN.Layers",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.NN.Linear",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.NN.Linear",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.NN.Math",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.NN.Math",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.NN.Padding",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.NN.Padding",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.NN.Pooling",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.NN.Pooling",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.NN.Sampling",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.NN.Sampling",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.Dynamic.NN",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.Dynamic.NN",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.Dynamic.NN.Activation",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.Dynamic.NN.Activation",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.Dynamic.NN.Pooling",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.Dynamic.NN.Pooling",
-                                                                                                               moduleReexportOriginalPackage = Nothing},
-                                                                                                            ModuleReexport
-                                                                                                              {moduleReexportName = ModuleName
-                                                                                                                                      "Torch.Cuda.Double.Dynamic.NN.Criterion",
-                                                                                                               moduleReexportOriginalName = ModuleName
-                                                                                                                                              "Torch.Cuda.Double.Dynamic.NN.Criterion",
-                                                                                                               moduleReexportOriginalPackage = Nothing}],
-                                                                                       signatures = []}}}],
-                      condTreeConstraints = [Dependency
-                                               (PackageName "base")
-                                               (IntersectVersionRanges
-                                                  (UnionVersionRanges
-                                                     (ThisVersion (mkVersion [4, 7]))
-                                                     (LaterVersion (mkVersion [4, 7])))
-                                                  (EarlierVersion (mkVersion [5])))
-                                               mainLibSet,
-                                             Dependency
-                                               (PackageName "dimensions")
-                                               (UnionVersionRanges
-                                                  (ThisVersion (mkVersion [1, 0]))
-                                                  (LaterVersion (mkVersion [1, 0])))
-                                               mainLibSet,
-                                             Dependency
-                                               (PackageName "safe-exceptions")
-                                               (UnionVersionRanges
-                                                  (ThisVersion (mkVersion [0, 1, 0]))
-                                                  (LaterVersion (mkVersion [0, 1, 0])))
-                                               mainLibSet,
-                                             Dependency
-                                               (PackageName "singletons")
-                                               (UnionVersionRanges
-                                                  (ThisVersion (mkVersion [2, 2]))
-                                                  (LaterVersion (mkVersion [2, 2])))
-                                               mainLibSet,
-                                             Dependency
-                                               (PackageName "text")
-                                               (UnionVersionRanges
-                                                  (ThisVersion (mkVersion [1, 2, 2]))
-                                                  (LaterVersion (mkVersion [1, 2, 2])))
-                                               mainLibSet,
-                                             Dependency
-                                               (PackageName "hasktorch")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               (NonEmptySet.fromNonEmpty
-                                                  (NE.fromList
-                                                     [LSubLibName
-                                                        (UnqualComponentName "hasktorch-cpu")])),
-                                             Dependency
-                                               (PackageName "hasktorch-ffi-th")
-                                               (IntersectVersionRanges
-                                                  (UnionVersionRanges
-                                                     (ThisVersion (mkVersion [0, 0, 1]))
-                                                     (LaterVersion (mkVersion [0, 0, 1])))
-                                                  (EarlierVersion (mkVersion [0, 0, 2])))
-                                               mainLibSet,
-                                             Dependency
-                                               (PackageName "hasktorch-types-th")
-                                               (IntersectVersionRanges
-                                                  (UnionVersionRanges
-                                                     (ThisVersion (mkVersion [0, 0, 1]))
-                                                     (LaterVersion (mkVersion [0, 0, 1])))
-                                                  (EarlierVersion (mkVersion [0, 0, 2])))
-                                               mainLibSet],
-                      condTreeData = Library
-                                       {exposedModules = [ModuleName "Torch.Core.Exceptions",
-                                                          ModuleName "Torch.Core.Random",
-                                                          ModuleName "Torch.Core.LogAdd"],
-                                        libBuildInfo = BuildInfo
-                                                         {asmOptions = [],
-                                                          asmSources = [],
-                                                          autogenIncludes = [],
-                                                          autogenModules = [],
-                                                          buildToolDepends = [],
-                                                          buildTools = [],
-                                                          buildable = True,
-                                                          cSources = [],
-                                                          ccOptions = [],
-                                                          cmmOptions = [],
-                                                          cmmSources = [],
-                                                          cppOptions = [],
-                                                          customFieldsBI = [],
-                                                          cxxOptions = [],
-                                                          cxxSources = [],
-                                                          defaultExtensions = [EnableExtension
-                                                                                 LambdaCase,
-                                                                               EnableExtension
-                                                                                 DataKinds,
-                                                                               EnableExtension
-                                                                                 TypeFamilies,
-                                                                               EnableExtension
-                                                                                 TypeSynonymInstances,
-                                                                               EnableExtension
-                                                                                 ScopedTypeVariables,
-                                                                               EnableExtension
-                                                                                 FlexibleContexts,
-                                                                               EnableExtension CPP],
-                                                          defaultLanguage = Just Haskell2010,
-                                                          extraBundledLibs = [],
-                                                          extraDynLibFlavours = [],
-                                                          extraFrameworkDirs = [],
-                                                          extraGHCiLibs = [],
-                                                          extraLibDirs = [],
-                                                          extraLibFlavours = [],
-                                                          extraLibs = [],
-                                                          frameworks = [],
-                                                          hsSourceDirs = [SymbolicPath "utils"],
-                                                          hsc2hsOptions = [],
-                                                          includeDirs = [],
-                                                          includes = [],
-                                                          installIncludes = [],
-                                                          jsSources = [],
-                                                          ldOptions = [],
-                                                          mixins = [],
-                                                          oldExtensions = [],
-                                                          options = PerCompilerFlavor [] [],
-                                                          otherExtensions = [],
-                                                          otherLanguages = [],
-                                                          otherModules = [],
-                                                          pkgconfigDepends = [],
-                                                          profOptions = PerCompilerFlavor [] [],
-                                                          sharedOptions = PerCompilerFlavor [] [],
-                                                          staticOptions = PerCompilerFlavor [] [],
-                                                          targetBuildDepends = [Dependency
-                                                                                  (PackageName
-                                                                                     "base")
-                                                                                  (IntersectVersionRanges
-                                                                                     (UnionVersionRanges
-                                                                                        (ThisVersion
-                                                                                           (mkVersion
-                                                                                              [4,
-                                                                                               7]))
-                                                                                        (LaterVersion
-                                                                                           (mkVersion
-                                                                                              [4,
-                                                                                               7])))
-                                                                                     (EarlierVersion
-                                                                                        (mkVersion
-                                                                                           [5])))
-                                                                                  mainLibSet,
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "dimensions")
-                                                                                  (UnionVersionRanges
-                                                                                     (ThisVersion
-                                                                                        (mkVersion
-                                                                                           [1, 0]))
-                                                                                     (LaterVersion
-                                                                                        (mkVersion
-                                                                                           [1, 0])))
-                                                                                  mainLibSet,
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "safe-exceptions")
-                                                                                  (UnionVersionRanges
-                                                                                     (ThisVersion
-                                                                                        (mkVersion
-                                                                                           [0,
-                                                                                            1,
-                                                                                            0]))
-                                                                                     (LaterVersion
-                                                                                        (mkVersion
-                                                                                           [0,
-                                                                                            1,
-                                                                                            0])))
-                                                                                  mainLibSet,
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "singletons")
-                                                                                  (UnionVersionRanges
-                                                                                     (ThisVersion
-                                                                                        (mkVersion
-                                                                                           [2, 2]))
-                                                                                     (LaterVersion
-                                                                                        (mkVersion
-                                                                                           [2, 2])))
-                                                                                  mainLibSet,
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "text")
-                                                                                  (UnionVersionRanges
-                                                                                     (ThisVersion
-                                                                                        (mkVersion
-                                                                                           [1,
-                                                                                            2,
-                                                                                            2]))
-                                                                                     (LaterVersion
-                                                                                        (mkVersion
-                                                                                           [1,
-                                                                                            2,
-                                                                                            2])))
-                                                                                  mainLibSet,
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "hasktorch")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  (NonEmptySet.fromNonEmpty
-                                                                                     (NE.fromList
-                                                                                        [LSubLibName
-                                                                                           (UnqualComponentName
-                                                                                              "hasktorch-cpu")])),
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "hasktorch-ffi-th")
-                                                                                  (IntersectVersionRanges
-                                                                                     (UnionVersionRanges
-                                                                                        (ThisVersion
-                                                                                           (mkVersion
-                                                                                              [0,
-                                                                                               0,
-                                                                                               1]))
-                                                                                        (LaterVersion
-                                                                                           (mkVersion
-                                                                                              [0,
-                                                                                               0,
-                                                                                               1])))
-                                                                                     (EarlierVersion
-                                                                                        (mkVersion
-                                                                                           [0,
-                                                                                            0,
-                                                                                            2])))
-                                                                                  mainLibSet,
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "hasktorch-types-th")
-                                                                                  (IntersectVersionRanges
-                                                                                     (UnionVersionRanges
-                                                                                        (ThisVersion
-                                                                                           (mkVersion
-                                                                                              [0,
-                                                                                               0,
-                                                                                               1]))
-                                                                                        (LaterVersion
-                                                                                           (mkVersion
-                                                                                              [0,
-                                                                                               0,
-                                                                                               1])))
-                                                                                     (EarlierVersion
-                                                                                        (mkVersion
-                                                                                           [0,
-                                                                                            0,
-                                                                                            2])))
-                                                                                  mainLibSet],
-                                                          virtualModules = []},
-                                        libExposed = True,
-                                        libName = LMainLibName,
-                                        libVisibility = LibraryVisibilityPublic,
-                                        reexportedModules = [ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Types.Numeric",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Types.Numeric",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Long",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Long",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Long.Dynamic",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Long.Dynamic",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Long.Storage",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Long.Storage",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.Dynamic",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.Dynamic",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.Storage",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.Storage",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.NN",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.NN",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.NN.Activation",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.NN.Activation",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.NN.Backprop",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.NN.Backprop",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.NN.Conv1d",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.NN.Conv1d",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.NN.Conv2d",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.NN.Conv2d",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.NN.Criterion",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.NN.Criterion",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.NN.Layers",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.NN.Layers",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.NN.Linear",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.NN.Linear",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.NN.Math",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.NN.Math",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.NN.Padding",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.NN.Padding",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.NN.Pooling",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.NN.Pooling",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.NN.Sampling",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.NN.Sampling",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.Dynamic.NN",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.Dynamic.NN",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.Dynamic.NN.Activation",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.Dynamic.NN.Activation",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.Dynamic.NN.Pooling",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.Dynamic.NN.Pooling",
-                                                                moduleReexportOriginalPackage = Nothing},
-                                                             ModuleReexport
-                                                               {moduleReexportName = ModuleName
-                                                                                       "Torch.Double.Dynamic.NN.Criterion",
-                                                                moduleReexportOriginalName = ModuleName
-                                                                                               "Torch.Double.Dynamic.NN.Criterion",
-                                                                moduleReexportOriginalPackage = Nothing}],
-                                        signatures = []}},
-   condSubLibraries = [_×_
-                         (UnqualComponentName "hasktorch-cpu")
-                         CondNode
-                           {condTreeComponents = [CondBranch
-                                                    {condBranchCondition = `Var (PackageFlag (FlagName "lite"))`,
-                                                     condBranchIfFalse = Just
-                                                                           CondNode
-                                                                             {condTreeComponents = [],
-                                                                              condTreeConstraints = [Dependency
-                                                                                                       (PackageName
-                                                                                                          "hasktorch")
-                                                                                                       (OrLaterVersion
-                                                                                                          (mkVersion
-                                                                                                             [0]))
-                                                                                                       (NonEmptySet.fromNonEmpty
-                                                                                                          (NE.fromList
-                                                                                                             [LSubLibName
-                                                                                                                (UnqualComponentName
-                                                                                                                   "hasktorch-indef-unsigned")]))],
-                                                                              condTreeData = Library
-                                                                                               {exposedModules = [ModuleName
-                                                                                                                    "Torch.Byte",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Byte.Dynamic",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Byte.Storage",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Char",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Char.Dynamic",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Char.Storage",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Short",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Short.Dynamic",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Short.Storage",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Int",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Int.Dynamic",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Int.Storage",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Float",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Float.Dynamic",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Float.Storage"],
-                                                                                                libBuildInfo = BuildInfo
-                                                                                                                 {asmOptions = [],
-                                                                                                                  asmSources = [],
-                                                                                                                  autogenIncludes = [],
-                                                                                                                  autogenModules = [],
-                                                                                                                  buildToolDepends = [],
-                                                                                                                  buildTools = [],
-                                                                                                                  buildable = True,
-                                                                                                                  cSources = [],
-                                                                                                                  ccOptions = [],
-                                                                                                                  cmmOptions = [],
-                                                                                                                  cmmSources = [],
-                                                                                                                  cppOptions = [],
-                                                                                                                  customFieldsBI = [],
-                                                                                                                  cxxOptions = [],
-                                                                                                                  cxxSources = [],
-                                                                                                                  defaultExtensions = [],
-                                                                                                                  defaultLanguage = Nothing,
-                                                                                                                  extraBundledLibs = [],
-                                                                                                                  extraDynLibFlavours = [],
-                                                                                                                  extraFrameworkDirs = [],
-                                                                                                                  extraGHCiLibs = [],
-                                                                                                                  extraLibDirs = [],
-                                                                                                                  extraLibFlavours = [],
-                                                                                                                  extraLibs = [],
-                                                                                                                  frameworks = [],
-                                                                                                                  hsSourceDirs = [],
-                                                                                                                  hsc2hsOptions = [],
-                                                                                                                  includeDirs = [],
-                                                                                                                  includes = [],
-                                                                                                                  installIncludes = [],
-                                                                                                                  jsSources = [],
-                                                                                                                  ldOptions = [],
-                                                                                                                  mixins = [Mixin
-                                                                                                                              {mixinIncludeRenaming = IncludeRenaming
-                                                                                                                                                        {includeProvidesRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Storage.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Byte.Dynamic.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Byte.Types"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Byte.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Mask")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Byte.Mask")],
-                                                                                                                                                         includeRequiresRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Long.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Long.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.MathReduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.State")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types.Global")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH.Byte"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.StorageCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.FreeStorage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath")]},
-                                                                                                                               mixinLibraryName = LSubLibName
-                                                                                                                                                    (UnqualComponentName
-                                                                                                                                                       "hasktorch-indef-unsigned"),
-                                                                                                                               mixinPackageName = PackageName
-                                                                                                                                                    "hasktorch"},
-                                                                                                                            Mixin
-                                                                                                                              {mixinIncludeRenaming = IncludeRenaming
-                                                                                                                                                        {includeProvidesRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Storage.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Char.Dynamic.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Char.Types"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Char.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Mask")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Char.Mask")],
-                                                                                                                                                         includeRequiresRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Long.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Long.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.MathReduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.State")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types.Global")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH.Char"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.StorageCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.FreeStorage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.TensorCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Char.TensorMath")]},
-                                                                                                                               mixinLibraryName = LSubLibName
-                                                                                                                                                    (UnqualComponentName
-                                                                                                                                                       "hasktorch-indef-unsigned"),
-                                                                                                                               mixinPackageName = PackageName
-                                                                                                                                                    "hasktorch"},
-                                                                                                                            Mixin
-                                                                                                                              {mixinIncludeRenaming = IncludeRenaming
-                                                                                                                                                        {includeProvidesRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Storage.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Short.Types"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Short.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Mask")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Short.Mask"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Tensor.Math.Pointwise.Signed"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Short.Dynamic.Tensor.Math.Pointwise.Signed")],
-                                                                                                                                                         includeRequiresRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Long.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Long.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.MathReduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.State")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types.Global")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH.Short"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.StorageCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.FreeStorage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Short.TensorMath")]},
-                                                                                                                               mixinLibraryName = LSubLibName
-                                                                                                                                                    (UnqualComponentName
-                                                                                                                                                       "hasktorch-indef-signed"),
-                                                                                                                               mixinPackageName = PackageName
-                                                                                                                                                    "hasktorch"},
-                                                                                                                            Mixin
-                                                                                                                              {mixinIncludeRenaming = IncludeRenaming
-                                                                                                                                                        {includeProvidesRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Storage.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Int.Types"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Int.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Mask")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Int.Mask"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Tensor.Math.Pointwise.Signed"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Int.Dynamic.Tensor.Math.Pointwise.Signed")],
-                                                                                                                                                         includeRequiresRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Long.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Long.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.MathReduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.State")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types.Global")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH.Int"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.StorageCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.FreeStorage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Int.TensorMath")]},
-                                                                                                                               mixinLibraryName = LSubLibName
-                                                                                                                                                    (UnqualComponentName
-                                                                                                                                                       "hasktorch-indef-signed"),
-                                                                                                                               mixinPackageName = PackageName
-                                                                                                                                                    "hasktorch"},
-                                                                                                                            Mixin
-                                                                                                                              {mixinIncludeRenaming = IncludeRenaming
-                                                                                                                                                        {includeProvidesRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Storage.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.Types"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Mask")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.Mask"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Pointwise.Signed"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Pointwise.Signed"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Blas")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Blas"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Lapack")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Lapack"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Floating")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Pointwise.Floating"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce.Floating")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Reduce.Floating"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Floating")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Floating"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Blas")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Blas"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Lapack")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Lapack"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise.Floating")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Pointwise.Floating"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce.Floating")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Reduce.Floating"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Floating")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Floating"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Random.TH")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Random.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Random.TH")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Random.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Random.TH")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Random.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Random.TH")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Random.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Undefined.Tensor.Random.THC")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Undefined.Float.Tensor.Random.THC"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Storage.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.Types"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Mask")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.Mask"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Tensor.Math.Pointwise.Signed"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Float.Dynamic.Tensor.Math.Pointwise.Signed"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.NN")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.Dynamic.NN"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.NN.Activation")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.Dynamic.NN.Activation"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.NN.Pooling")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.Dynamic.NN.Pooling"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.NN.Criterion")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.Dynamic.NN.Criterion"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.NN")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.NN"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.NN")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.NN"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.NN.Activation")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.NN.Activation"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.NN.Backprop")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.NN.Backprop"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.NN.Conv1d")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.NN.Conv1d"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.NN.Conv2d")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.NN.Conv2d"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.NN.Criterion")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.NN.Criterion"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.NN.Layers")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.NN.Layers"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.NN.Linear")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.NN.Linear"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.NN.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.NN.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.NN.Padding")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.NN.Padding"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.NN.Pooling")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.NN.Pooling"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.NN.Sampling")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Float.NN.Sampling")],
-                                                                                                                                                         includeRequiresRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Long.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Long.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.MathReduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.State")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types.Global")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH.Float"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.StorageCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.FreeStorage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.FreeTensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise.Floating")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Reduce.Floating")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Floating")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Blas")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Lapack")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorLapack"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.NN")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.NN.Float"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types.NN")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.TH"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Random.TH")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Random.TH")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.TH.Float.TensorRandom"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Random.THC")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Undefined.Float.Tensor.Random.THC")]},
-                                                                                                                               mixinLibraryName = LSubLibName
-                                                                                                                                                    (UnqualComponentName
-                                                                                                                                                       "hasktorch-indef-floating"),
-                                                                                                                               mixinPackageName = PackageName
-                                                                                                                                                    "hasktorch"}],
-                                                                                                                  oldExtensions = [],
-                                                                                                                  options = PerCompilerFlavor
-                                                                                                                              []
-                                                                                                                              [],
-                                                                                                                  otherExtensions = [],
-                                                                                                                  otherLanguages = [],
-                                                                                                                  otherModules = [],
-                                                                                                                  pkgconfigDepends = [],
-                                                                                                                  profOptions = PerCompilerFlavor
-                                                                                                                                  []
-                                                                                                                                  [],
-                                                                                                                  sharedOptions = PerCompilerFlavor
-                                                                                                                                    []
-                                                                                                                                    [],
-                                                                                                                  staticOptions = PerCompilerFlavor
-                                                                                                                                    []
-                                                                                                                                    [],
-                                                                                                                  targetBuildDepends = [Dependency
-                                                                                                                                          (PackageName
-                                                                                                                                             "hasktorch")
-                                                                                                                                          (OrLaterVersion
-                                                                                                                                             (mkVersion
-                                                                                                                                                [0]))
-                                                                                                                                          (NonEmptySet.fromNonEmpty
-                                                                                                                                             (NE.fromList
-                                                                                                                                                [LSubLibName
-                                                                                                                                                   (UnqualComponentName
-                                                                                                                                                      "hasktorch-indef-unsigned")]))],
-                                                                                                                  virtualModules = []},
-                                                                                                libExposed = True,
-                                                                                                libName = LSubLibName
-                                                                                                            (UnqualComponentName
-                                                                                                               "hasktorch-cpu"),
-                                                                                                libVisibility = LibraryVisibilityPrivate,
-                                                                                                reexportedModules = [],
-                                                                                                signatures = []}},
-                                                     condBranchIfTrue = CondNode
-                                                                          {condTreeComponents = [],
-                                                                           condTreeConstraints = [],
-                                                                           condTreeData = Library
-                                                                                            {exposedModules = [],
-                                                                                             libBuildInfo = BuildInfo
-                                                                                                              {asmOptions = [],
-                                                                                                               asmSources = [],
-                                                                                                               autogenIncludes = [],
-                                                                                                               autogenModules = [],
-                                                                                                               buildToolDepends = [],
-                                                                                                               buildTools = [],
-                                                                                                               buildable = True,
-                                                                                                               cSources = [],
-                                                                                                               ccOptions = [],
-                                                                                                               cmmOptions = [],
-                                                                                                               cmmSources = [],
-                                                                                                               cppOptions = [],
-                                                                                                               customFieldsBI = [],
-                                                                                                               cxxOptions = [],
-                                                                                                               cxxSources = [],
-                                                                                                               defaultExtensions = [],
-                                                                                                               defaultLanguage = Nothing,
-                                                                                                               extraBundledLibs = [],
-                                                                                                               extraDynLibFlavours = [],
-                                                                                                               extraFrameworkDirs = [],
-                                                                                                               extraGHCiLibs = [],
-                                                                                                               extraLibDirs = [],
-                                                                                                               extraLibFlavours = [],
-                                                                                                               extraLibs = [],
-                                                                                                               frameworks = [],
-                                                                                                               hsSourceDirs = [],
-                                                                                                               hsc2hsOptions = [],
-                                                                                                               includeDirs = [],
-                                                                                                               includes = [],
-                                                                                                               installIncludes = [],
-                                                                                                               jsSources = [],
-                                                                                                               ldOptions = [],
-                                                                                                               mixins = [],
-                                                                                                               oldExtensions = [],
-                                                                                                               options = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                               otherExtensions = [],
-                                                                                                               otherLanguages = [],
-                                                                                                               otherModules = [],
-                                                                                                               pkgconfigDepends = [],
-                                                                                                               profOptions = PerCompilerFlavor
-                                                                                                                               []
-                                                                                                                               [],
-                                                                                                               sharedOptions = PerCompilerFlavor
-                                                                                                                                 []
-                                                                                                                                 [],
-                                                                                                               staticOptions = PerCompilerFlavor
-                                                                                                                                 []
-                                                                                                                                 [],
-                                                                                                               targetBuildDepends = [],
-                                                                                                               virtualModules = []},
-                                                                                             libExposed = True,
-                                                                                             libName = LSubLibName
-                                                                                                         (UnqualComponentName
-                                                                                                            "hasktorch-cpu"),
-                                                                                             libVisibility = LibraryVisibilityPrivate,
-                                                                                             reexportedModules = [],
-                                                                                             signatures = []}}}],
-                            condTreeConstraints = [Dependency
-                                                     (PackageName "base")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [4, 7]))
-                                                           (LaterVersion (mkVersion [4, 7])))
-                                                        (EarlierVersion (mkVersion [5])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch-types-th")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [0, 0, 1]))
-                                                           (LaterVersion (mkVersion [0, 0, 1])))
-                                                        (EarlierVersion (mkVersion [0, 0, 2])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "dimensions")
-                                                     (UnionVersionRanges
-                                                        (ThisVersion (mkVersion [1, 0]))
-                                                        (LaterVersion (mkVersion [1, 0])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch-ffi-th")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [0, 0, 1]))
-                                                           (LaterVersion (mkVersion [0, 0, 1])))
-                                                        (EarlierVersion (mkVersion [0, 0, 2])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch-types-th")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [0, 0, 1]))
-                                                           (LaterVersion (mkVersion [0, 0, 1])))
-                                                        (EarlierVersion (mkVersion [0, 0, 2])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "safe-exceptions")
-                                                     (UnionVersionRanges
-                                                        (ThisVersion (mkVersion [0, 1, 0]))
-                                                        (LaterVersion (mkVersion [0, 1, 0])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "singletons")
-                                                     (UnionVersionRanges
-                                                        (ThisVersion (mkVersion [2, 2]))
-                                                        (LaterVersion (mkVersion [2, 2])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "text")
-                                                     (UnionVersionRanges
-                                                        (ThisVersion (mkVersion [1, 2, 2]))
-                                                        (LaterVersion (mkVersion [1, 2, 2])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch")
-                                                     (OrLaterVersion (mkVersion [0]))
-                                                     (NonEmptySet.fromNonEmpty
-                                                        (NE.fromList
-                                                           [LSubLibName
-                                                              (UnqualComponentName
-                                                                 "hasktorch-indef-floating")])),
-                                                   Dependency
-                                                     (PackageName "hasktorch")
-                                                     (OrLaterVersion (mkVersion [0]))
-                                                     (NonEmptySet.fromNonEmpty
-                                                        (NE.fromList
-                                                           [LSubLibName
-                                                              (UnqualComponentName
-                                                                 "hasktorch-indef-signed")]))],
-                            condTreeData = Library
-                                             {exposedModules = [ModuleName "Torch.Long",
-                                                                ModuleName "Torch.Long.Dynamic",
-                                                                ModuleName "Torch.Long.Storage",
-                                                                ModuleName "Torch.Double",
-                                                                ModuleName "Torch.Double.Dynamic",
-                                                                ModuleName "Torch.Double.Storage"],
-                                              libBuildInfo = BuildInfo
-                                                               {asmOptions = [],
-                                                                asmSources = [],
-                                                                autogenIncludes = [],
-                                                                autogenModules = [],
-                                                                buildToolDepends = [],
-                                                                buildTools = [],
-                                                                buildable = True,
-                                                                cSources = [],
-                                                                ccOptions = [],
-                                                                cmmOptions = [],
-                                                                cmmSources = [],
-                                                                cppOptions = [],
-                                                                customFieldsBI = [],
-                                                                cxxOptions = [],
-                                                                cxxSources = [],
-                                                                defaultExtensions = [EnableExtension
-                                                                                       LambdaCase,
-                                                                                     EnableExtension
-                                                                                       DataKinds,
-                                                                                     EnableExtension
-                                                                                       TypeFamilies,
-                                                                                     EnableExtension
-                                                                                       TypeSynonymInstances,
-                                                                                     EnableExtension
-                                                                                       ScopedTypeVariables,
-                                                                                     EnableExtension
-                                                                                       FlexibleContexts,
-                                                                                     EnableExtension
-                                                                                       CPP],
-                                                                defaultLanguage = Just Haskell2010,
-                                                                extraBundledLibs = [],
-                                                                extraDynLibFlavours = [],
-                                                                extraFrameworkDirs = [],
-                                                                extraGHCiLibs = [],
-                                                                extraLibDirs = [],
-                                                                extraLibFlavours = [],
-                                                                extraLibs = [],
-                                                                frameworks = [],
-                                                                hsSourceDirs = [SymbolicPath
-                                                                                  "utils",
-                                                                                SymbolicPath "src"],
-                                                                hsc2hsOptions = [],
-                                                                includeDirs = [],
-                                                                includes = [],
-                                                                installIncludes = [],
-                                                                jsSources = [],
-                                                                ldOptions = [],
-                                                                mixins = [Mixin
-                                                                            {mixinIncludeRenaming = IncludeRenaming
-                                                                                                      {includeProvidesRn = ModuleRenaming
-                                                                                                                             [_×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Storage")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Storage"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Storage.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Storage.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.Masked"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.Math"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.Math.Compare"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.Math.CompareT"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.Math.Pairwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.Math.Pointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.Math.Reduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.Math.Scan"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.Mode"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.ScatterGather"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.Sort"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.TopK"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.Masked"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.Math"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.Math.Compare"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.Math.Scan"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.Mode"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.ScatterGather"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.Sort"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.TopK"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Types")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Long.Types"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Long.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Mask")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Long.Mask"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Tensor.Math.Pointwise.Signed"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Long.Dynamic.Tensor.Math.Pointwise.Signed")],
-                                                                                                       includeRequiresRn = ModuleRenaming
-                                                                                                                             [_×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Index.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Index.TensorFree")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.FreeTensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Mask.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Byte.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Mask.TensorFree")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Byte.FreeTensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Mask.MathReduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.State")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Types.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Types.Global")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Types.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Types")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Types.TH.Long"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Storage")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.Storage"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Storage.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.StorageCopy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Storage.Memory")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.FreeStorage"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorCopy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Memory")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.FreeTensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.TensorMath")]},
-                                                                             mixinLibraryName = LSubLibName
-                                                                                                  (UnqualComponentName
-                                                                                                     "hasktorch-indef-signed"),
-                                                                             mixinPackageName = PackageName
-                                                                                                  "hasktorch"},
-                                                                          Mixin
-                                                                            {mixinIncludeRenaming = IncludeRenaming
-                                                                                                      {includeProvidesRn = ModuleRenaming
-                                                                                                                             [_×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Storage")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Storage"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Storage.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Storage.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Masked"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Compare"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.CompareT"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Pairwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Pointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Reduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Scan"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Mode"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.ScatterGather"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Sort"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.TopK"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Masked"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Compare"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Scan"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Mode"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.ScatterGather"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Sort"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.TopK"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Types")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.Types"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Mask")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.Mask"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Pointwise.Signed"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Pointwise.Signed"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Blas")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Blas"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Lapack")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Lapack"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Pointwise.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Reduce.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Reduce.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Blas")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Blas"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Lapack")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Lapack"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pointwise.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Pointwise.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Reduce.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Reduce.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Random.TH")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Random.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Random.TH")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Random.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Random.TH")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Random.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Random.TH")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Random.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Random.THC")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Double.Tensor.Random.THC"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Storage")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Storage"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Storage.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Storage.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Masked"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Compare"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.CompareT"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Pairwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Pointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Reduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Scan"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Mode"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.ScatterGather"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Sort"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.TopK"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Masked"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Compare"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Scan"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Mode"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.ScatterGather"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Sort"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.TopK"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Types")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.Types"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Mask")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.Mask"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Tensor.Math.Pointwise.Signed"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Double.Dynamic.Tensor.Math.Pointwise.Signed"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.NN")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.Dynamic.NN"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.NN.Activation")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.Dynamic.NN.Activation"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.NN.Pooling")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.Dynamic.NN.Pooling"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.NN.Criterion")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.Dynamic.NN.Criterion"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.NN"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.NN"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Activation")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.NN.Activation"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Backprop")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.NN.Backprop"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Conv1d")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.NN.Conv1d"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Conv2d")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.NN.Conv2d"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Criterion")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.NN.Criterion"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Layers")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.NN.Layers"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Linear")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.NN.Linear"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.NN.Math"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Padding")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.NN.Padding"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Pooling")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.NN.Pooling"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Sampling")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Double.NN.Sampling")],
-                                                                                                       includeRequiresRn = ModuleRenaming
-                                                                                                                             [_×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Index.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Index.TensorFree")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Long.FreeTensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Mask.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Byte.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Mask.TensorFree")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Byte.FreeTensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Mask.MathReduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Byte.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.State")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Types.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Types.Global")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Types.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Types")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Types.TH.Double"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Storage")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.Storage"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Storage.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.StorageCopy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Storage.Memory")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.FreeStorage"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorCopy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Memory")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.FreeTensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pointwise.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Reduce.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Blas")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Lapack")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorLapack"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.NN")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.NN.Double"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Types.NN")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Types.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Random.TH")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Random.TH")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.TH.Double.TensorRandom"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Random.THC")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Double.Tensor.Random.THC")]},
-                                                                             mixinLibraryName = LSubLibName
-                                                                                                  (UnqualComponentName
-                                                                                                     "hasktorch-indef-floating"),
-                                                                             mixinPackageName = PackageName
-                                                                                                  "hasktorch"}],
-                                                                oldExtensions = [],
-                                                                options = PerCompilerFlavor [] [],
-                                                                otherExtensions = [],
-                                                                otherLanguages = [],
-                                                                otherModules = [ModuleName
-                                                                                  "Torch.Core.Exceptions",
-                                                                                ModuleName
-                                                                                  "Torch.Core.Random",
-                                                                                ModuleName
-                                                                                  "Torch.Core.LogAdd"],
-                                                                pkgconfigDepends = [],
-                                                                profOptions = PerCompilerFlavor
-                                                                                [] [],
-                                                                sharedOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                staticOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                targetBuildDepends = [Dependency
-                                                                                        (PackageName
-                                                                                           "base")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [4,
-                                                                                                     7]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [4,
-                                                                                                     7])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [5])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch-types-th")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  0,
-                                                                                                  2])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "dimensions")
-                                                                                        (UnionVersionRanges
-                                                                                           (ThisVersion
-                                                                                              (mkVersion
-                                                                                                 [1,
-                                                                                                  0]))
-                                                                                           (LaterVersion
-                                                                                              (mkVersion
-                                                                                                 [1,
-                                                                                                  0])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch-ffi-th")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  0,
-                                                                                                  2])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch-types-th")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  0,
-                                                                                                  2])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "safe-exceptions")
-                                                                                        (UnionVersionRanges
-                                                                                           (ThisVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  1,
-                                                                                                  0]))
-                                                                                           (LaterVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  1,
-                                                                                                  0])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "singletons")
-                                                                                        (UnionVersionRanges
-                                                                                           (ThisVersion
-                                                                                              (mkVersion
-                                                                                                 [2,
-                                                                                                  2]))
-                                                                                           (LaterVersion
-                                                                                              (mkVersion
-                                                                                                 [2,
-                                                                                                  2])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "text")
-                                                                                        (UnionVersionRanges
-                                                                                           (ThisVersion
-                                                                                              (mkVersion
-                                                                                                 [1,
-                                                                                                  2,
-                                                                                                  2]))
-                                                                                           (LaterVersion
-                                                                                              (mkVersion
-                                                                                                 [1,
-                                                                                                  2,
-                                                                                                  2])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch")
-                                                                                        (OrLaterVersion
-                                                                                           (mkVersion
-                                                                                              [0]))
-                                                                                        (NonEmptySet.fromNonEmpty
-                                                                                           (NE.fromList
-                                                                                              [LSubLibName
-                                                                                                 (UnqualComponentName
-                                                                                                    "hasktorch-indef-floating")])),
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch")
-                                                                                        (OrLaterVersion
-                                                                                           (mkVersion
-                                                                                              [0]))
-                                                                                        (NonEmptySet.fromNonEmpty
-                                                                                           (NE.fromList
-                                                                                              [LSubLibName
-                                                                                                 (UnqualComponentName
-                                                                                                    "hasktorch-indef-signed")]))],
-                                                                virtualModules = []},
-                                              libExposed = True,
-                                              libName = LSubLibName
-                                                          (UnqualComponentName "hasktorch-cpu"),
-                                              libVisibility = LibraryVisibilityPrivate,
-                                              reexportedModules = [ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.NN",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.NN",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.NN.Activation",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.NN.Activation",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.NN.Backprop",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.NN.Backprop",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.NN.Conv1d",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.NN.Conv1d",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.NN.Conv2d",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.NN.Conv2d",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.NN.Criterion",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.NN.Criterion",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.NN.Layers",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.NN.Layers",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.NN.Linear",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.NN.Linear",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.NN.Math",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.NN.Math",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.NN.Padding",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.NN.Padding",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.NN.Pooling",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.NN.Pooling",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.NN.Sampling",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.NN.Sampling",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.Dynamic.NN",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.Dynamic.NN",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.Dynamic.NN.Activation",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.Dynamic.NN.Activation",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.Dynamic.NN.Pooling",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.Dynamic.NN.Pooling",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Double.Dynamic.NN.Criterion",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Double.Dynamic.NN.Criterion",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.NN",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.NN",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.NN.Activation",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.NN.Activation",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.NN.Backprop",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.NN.Backprop",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.NN.Conv1d",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.NN.Conv1d",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.NN.Conv2d",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.NN.Conv2d",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.NN.Criterion",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.NN.Criterion",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.NN.Layers",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.NN.Layers",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.NN.Linear",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.NN.Linear",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.NN.Math",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.NN.Math",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.NN.Padding",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.NN.Padding",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.NN.Pooling",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.NN.Pooling",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.NN.Sampling",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.NN.Sampling",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.Dynamic.NN",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.Dynamic.NN",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.Dynamic.NN.Activation",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.Dynamic.NN.Activation",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.Dynamic.NN.Pooling",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.Dynamic.NN.Pooling",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Float.Dynamic.NN.Criterion",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Float.Dynamic.NN.Criterion",
-                                                                      moduleReexportOriginalPackage = Nothing}],
-                                              signatures = []}},
-                       _×_
-                         (UnqualComponentName "hasktorch-gpu")
-                         CondNode
-                           {condTreeComponents = [CondBranch
-                                                    {condBranchCondition = `Var (PackageFlag (FlagName "lite"))`,
-                                                     condBranchIfFalse = Just
-                                                                           CondNode
-                                                                             {condTreeComponents = [],
-                                                                              condTreeConstraints = [Dependency
-                                                                                                       (PackageName
-                                                                                                          "hasktorch")
-                                                                                                       (OrLaterVersion
-                                                                                                          (mkVersion
-                                                                                                             [0]))
-                                                                                                       (NonEmptySet.fromNonEmpty
-                                                                                                          (NE.fromList
-                                                                                                             [LSubLibName
-                                                                                                                (UnqualComponentName
-                                                                                                                   "hasktorch-indef-unsigned")]))],
-                                                                              condTreeData = Library
-                                                                                               {exposedModules = [ModuleName
-                                                                                                                    "Torch.Cuda.Byte",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Cuda.Byte.Dynamic",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Cuda.Byte.Storage",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Cuda.Char",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Cuda.Char.Dynamic",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Cuda.Char.Storage",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Cuda.Short",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Cuda.Short.Dynamic",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Cuda.Short.Storage",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Cuda.Int",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Cuda.Int.Dynamic",
-                                                                                                                  ModuleName
-                                                                                                                    "Torch.Cuda.Int.Storage"],
-                                                                                                libBuildInfo = BuildInfo
-                                                                                                                 {asmOptions = [],
-                                                                                                                  asmSources = [],
-                                                                                                                  autogenIncludes = [],
-                                                                                                                  autogenModules = [],
-                                                                                                                  buildToolDepends = [],
-                                                                                                                  buildTools = [],
-                                                                                                                  buildable = True,
-                                                                                                                  cSources = [],
-                                                                                                                  ccOptions = [],
-                                                                                                                  cmmOptions = [],
-                                                                                                                  cmmSources = [],
-                                                                                                                  cppOptions = [],
-                                                                                                                  customFieldsBI = [],
-                                                                                                                  cxxOptions = [],
-                                                                                                                  cxxSources = [],
-                                                                                                                  defaultExtensions = [],
-                                                                                                                  defaultLanguage = Nothing,
-                                                                                                                  extraBundledLibs = [],
-                                                                                                                  extraDynLibFlavours = [],
-                                                                                                                  extraFrameworkDirs = [],
-                                                                                                                  extraGHCiLibs = [],
-                                                                                                                  extraLibDirs = [],
-                                                                                                                  extraLibFlavours = [],
-                                                                                                                  extraLibs = [],
-                                                                                                                  frameworks = [],
-                                                                                                                  hsSourceDirs = [],
-                                                                                                                  hsc2hsOptions = [],
-                                                                                                                  includeDirs = [],
-                                                                                                                  includes = [],
-                                                                                                                  installIncludes = [],
-                                                                                                                  jsSources = [],
-                                                                                                                  ldOptions = [],
-                                                                                                                  mixins = [Mixin
-                                                                                                                              {mixinIncludeRenaming = IncludeRenaming
-                                                                                                                                                        {includeProvidesRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Storage.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Byte.Dynamic.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Byte.Types"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Byte.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Mask")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Byte.Mask")],
-                                                                                                                                                         includeRequiresRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Long.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Long.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.MathReduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorMathReduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.State")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.State"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types.Global")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.THC"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.THC.Byte"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.StorageCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorIndex"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorMasked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorMathCompare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorMathCompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorMathPairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorMathPointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorMathReduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorMathScan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorMode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorSort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorTopK")]},
-                                                                                                                               mixinLibraryName = LSubLibName
-                                                                                                                                                    (UnqualComponentName
-                                                                                                                                                       "hasktorch-indef-unsigned"),
-                                                                                                                               mixinPackageName = PackageName
-                                                                                                                                                    "hasktorch"},
-                                                                                                                            Mixin
-                                                                                                                              {mixinIncludeRenaming = IncludeRenaming
-                                                                                                                                                        {includeProvidesRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Storage.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Char.Dynamic.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Char.Types"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Char.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Mask")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Char.Mask")],
-                                                                                                                                                         includeRequiresRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Long.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Long.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.MathReduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorMathReduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.State")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.State"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types.Global")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.THC"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.THC.Char"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.StorageCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.TensorCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.TensorIndex"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.TensorMasked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.TensorMathCompare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.TensorMathCompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.TensorMathPairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.TensorMathPointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.TensorMathReduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.TensorMathScan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.TensorMode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.TensorScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.TensorSort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Char.TensorTopK")]},
-                                                                                                                               mixinLibraryName = LSubLibName
-                                                                                                                                                    (UnqualComponentName
-                                                                                                                                                       "hasktorch-indef-unsigned"),
-                                                                                                                               mixinPackageName = PackageName
-                                                                                                                                                    "hasktorch"},
-                                                                                                                            Mixin
-                                                                                                                              {mixinIncludeRenaming = IncludeRenaming
-                                                                                                                                                        {includeProvidesRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Storage.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Short.Types"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Short.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Mask")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Short.Mask"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Tensor.Math.Pointwise.Signed"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math.Pointwise.Signed")],
-                                                                                                                                                         includeRequiresRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Long.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Long.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.MathReduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorMathReduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.State")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.State"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types.Global")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.THC"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.THC.Short"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.StorageCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorIndex"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorMasked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorMathCompare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorMathCompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorMathPairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorMathPointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorMathReduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorMathScan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorMode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorSort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorTopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Short.TensorMathPointwise")]},
-                                                                                                                               mixinLibraryName = LSubLibName
-                                                                                                                                                    (UnqualComponentName
-                                                                                                                                                       "hasktorch-indef-signed"),
-                                                                                                                               mixinPackageName = PackageName
-                                                                                                                                                    "hasktorch"},
-                                                                                                                            Mixin
-                                                                                                                              {mixinIncludeRenaming = IncludeRenaming
-                                                                                                                                                        {includeProvidesRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Storage.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.Copy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.Masked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math.Compare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math.Scan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.Mode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.ScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.Sort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.TopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Int.Types"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Int.Index"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Mask")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Cuda.Int.Mask"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Tensor.Math.Pointwise.Signed"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math.Pointwise.Signed")],
-                                                                                                                                                         includeRequiresRn = ModuleRenaming
-                                                                                                                                                                               [_×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Long.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Index.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Long.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.TensorFree")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Mask.MathReduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Byte.TensorMathReduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.State")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.State"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types.Global")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.THC"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Types")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Types.THC.Int"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.StorageCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Storage.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.Storage"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Copy")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorCopy"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Memory")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.Tensor"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Index")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorIndex"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Masked")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorMasked"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorMath"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Compare")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorMathCompare"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.CompareT")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorMathCompareT"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pairwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorMathPairwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorMathPointwise"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Reduce")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorMathReduce"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Scan")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorMathScan"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Mode")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorMode"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.ScatterGather")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorScatterGather"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Sort")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorSort"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.TopK")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorTopK"),
-                                                                                                                                                                                _×_
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.Sig.Tensor.Math.Pointwise.Signed")
-                                                                                                                                                                                  (ModuleName
-                                                                                                                                                                                     "Torch.FFI.THC.Int.TensorMathPointwise")]},
-                                                                                                                               mixinLibraryName = LSubLibName
-                                                                                                                                                    (UnqualComponentName
-                                                                                                                                                       "hasktorch-indef-signed"),
-                                                                                                                               mixinPackageName = PackageName
-                                                                                                                                                    "hasktorch"}],
-                                                                                                                  oldExtensions = [],
-                                                                                                                  options = PerCompilerFlavor
-                                                                                                                              []
-                                                                                                                              [],
-                                                                                                                  otherExtensions = [],
-                                                                                                                  otherLanguages = [],
-                                                                                                                  otherModules = [],
-                                                                                                                  pkgconfigDepends = [],
-                                                                                                                  profOptions = PerCompilerFlavor
-                                                                                                                                  []
-                                                                                                                                  [],
-                                                                                                                  sharedOptions = PerCompilerFlavor
-                                                                                                                                    []
-                                                                                                                                    [],
-                                                                                                                  staticOptions = PerCompilerFlavor
-                                                                                                                                    []
-                                                                                                                                    [],
-                                                                                                                  targetBuildDepends = [Dependency
-                                                                                                                                          (PackageName
-                                                                                                                                             "hasktorch")
-                                                                                                                                          (OrLaterVersion
-                                                                                                                                             (mkVersion
-                                                                                                                                                [0]))
-                                                                                                                                          (NonEmptySet.fromNonEmpty
-                                                                                                                                             (NE.fromList
-                                                                                                                                                [LSubLibName
-                                                                                                                                                   (UnqualComponentName
-                                                                                                                                                      "hasktorch-indef-unsigned")]))],
-                                                                                                                  virtualModules = []},
-                                                                                                libExposed = True,
-                                                                                                libName = LSubLibName
-                                                                                                            (UnqualComponentName
-                                                                                                               "hasktorch-gpu"),
-                                                                                                libVisibility = LibraryVisibilityPrivate,
-                                                                                                reexportedModules = [],
-                                                                                                signatures = []}},
-                                                     condBranchIfTrue = CondNode
-                                                                          {condTreeComponents = [],
-                                                                           condTreeConstraints = [],
-                                                                           condTreeData = Library
-                                                                                            {exposedModules = [],
-                                                                                             libBuildInfo = BuildInfo
-                                                                                                              {asmOptions = [],
-                                                                                                               asmSources = [],
-                                                                                                               autogenIncludes = [],
-                                                                                                               autogenModules = [],
-                                                                                                               buildToolDepends = [],
-                                                                                                               buildTools = [],
-                                                                                                               buildable = True,
-                                                                                                               cSources = [],
-                                                                                                               ccOptions = [],
-                                                                                                               cmmOptions = [],
-                                                                                                               cmmSources = [],
-                                                                                                               cppOptions = [],
-                                                                                                               customFieldsBI = [],
-                                                                                                               cxxOptions = [],
-                                                                                                               cxxSources = [],
-                                                                                                               defaultExtensions = [],
-                                                                                                               defaultLanguage = Nothing,
-                                                                                                               extraBundledLibs = [],
-                                                                                                               extraDynLibFlavours = [],
-                                                                                                               extraFrameworkDirs = [],
-                                                                                                               extraGHCiLibs = [],
-                                                                                                               extraLibDirs = [],
-                                                                                                               extraLibFlavours = [],
-                                                                                                               extraLibs = [],
-                                                                                                               frameworks = [],
-                                                                                                               hsSourceDirs = [],
-                                                                                                               hsc2hsOptions = [],
-                                                                                                               includeDirs = [],
-                                                                                                               includes = [],
-                                                                                                               installIncludes = [],
-                                                                                                               jsSources = [],
-                                                                                                               ldOptions = [],
-                                                                                                               mixins = [],
-                                                                                                               oldExtensions = [],
-                                                                                                               options = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                               otherExtensions = [],
-                                                                                                               otherLanguages = [],
-                                                                                                               otherModules = [],
-                                                                                                               pkgconfigDepends = [],
-                                                                                                               profOptions = PerCompilerFlavor
-                                                                                                                               []
-                                                                                                                               [],
-                                                                                                               sharedOptions = PerCompilerFlavor
-                                                                                                                                 []
-                                                                                                                                 [],
-                                                                                                               staticOptions = PerCompilerFlavor
-                                                                                                                                 []
-                                                                                                                                 [],
-                                                                                                               targetBuildDepends = [],
-                                                                                                               virtualModules = []},
-                                                                                             libExposed = True,
-                                                                                             libName = LSubLibName
-                                                                                                         (UnqualComponentName
-                                                                                                            "hasktorch-gpu"),
-                                                                                             libVisibility = LibraryVisibilityPrivate,
-                                                                                             reexportedModules = [],
-                                                                                             signatures = []}}}],
-                            condTreeConstraints = [Dependency
-                                                     (PackageName "base")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [4, 7]))
-                                                           (LaterVersion (mkVersion [4, 7])))
-                                                        (EarlierVersion (mkVersion [5])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch-types-th")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [0, 0, 1]))
-                                                           (LaterVersion (mkVersion [0, 0, 1])))
-                                                        (EarlierVersion (mkVersion [0, 0, 2])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "dimensions")
-                                                     (UnionVersionRanges
-                                                        (ThisVersion (mkVersion [1, 0]))
-                                                        (LaterVersion (mkVersion [1, 0])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch-ffi-th")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [0, 0, 1]))
-                                                           (LaterVersion (mkVersion [0, 0, 1])))
-                                                        (EarlierVersion (mkVersion [0, 0, 2])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch-types-th")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [0, 0, 1]))
-                                                           (LaterVersion (mkVersion [0, 0, 1])))
-                                                        (EarlierVersion (mkVersion [0, 0, 2])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "safe-exceptions")
-                                                     (UnionVersionRanges
-                                                        (ThisVersion (mkVersion [0, 1, 0]))
-                                                        (LaterVersion (mkVersion [0, 1, 0])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "singletons")
-                                                     (UnionVersionRanges
-                                                        (ThisVersion (mkVersion [2, 2]))
-                                                        (LaterVersion (mkVersion [2, 2])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "text")
-                                                     (UnionVersionRanges
-                                                        (ThisVersion (mkVersion [1, 2, 2]))
-                                                        (LaterVersion (mkVersion [1, 2, 2])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch")
-                                                     (OrLaterVersion (mkVersion [0]))
-                                                     (NonEmptySet.fromNonEmpty
-                                                        (NE.fromList
-                                                           [LSubLibName
-                                                              (UnqualComponentName
-                                                                 "hasktorch-indef-floating")])),
-                                                   Dependency
-                                                     (PackageName "hasktorch")
-                                                     (OrLaterVersion (mkVersion [0]))
-                                                     (NonEmptySet.fromNonEmpty
-                                                        (NE.fromList
-                                                           [LSubLibName
-                                                              (UnqualComponentName
-                                                                 "hasktorch-indef-signed")])),
-                                                   Dependency
-                                                     (PackageName "hasktorch-ffi-thc")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [0, 0, 1]))
-                                                           (LaterVersion (mkVersion [0, 0, 1])))
-                                                        (EarlierVersion (mkVersion [0, 0, 2])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch-types-thc")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [0, 0, 1]))
-                                                           (LaterVersion (mkVersion [0, 0, 1])))
-                                                        (EarlierVersion (mkVersion [0, 0, 2])))
-                                                     mainLibSet],
-                            condTreeData = Library
-                                             {exposedModules = [ModuleName "Torch.Cuda.Long",
-                                                                ModuleName
-                                                                  "Torch.Cuda.Long.Dynamic",
-                                                                ModuleName
-                                                                  "Torch.Cuda.Long.Storage",
-                                                                ModuleName "Torch.Cuda.Double",
-                                                                ModuleName
-                                                                  "Torch.Cuda.Double.Dynamic",
-                                                                ModuleName
-                                                                  "Torch.Cuda.Double.Storage"],
-                                              libBuildInfo = BuildInfo
-                                                               {asmOptions = [],
-                                                                asmSources = [],
-                                                                autogenIncludes = [],
-                                                                autogenModules = [],
-                                                                buildToolDepends = [],
-                                                                buildTools = [],
-                                                                buildable = True,
-                                                                cSources = [],
-                                                                ccOptions = [],
-                                                                cmmOptions = [],
-                                                                cmmSources = [],
-                                                                cppOptions = ["-DCUDA",
-                                                                              "-DHASKTORCH_INTERNAL_CUDA"],
-                                                                customFieldsBI = [],
-                                                                cxxOptions = [],
-                                                                cxxSources = [],
-                                                                defaultExtensions = [EnableExtension
-                                                                                       LambdaCase,
-                                                                                     EnableExtension
-                                                                                       DataKinds,
-                                                                                     EnableExtension
-                                                                                       TypeFamilies,
-                                                                                     EnableExtension
-                                                                                       TypeSynonymInstances,
-                                                                                     EnableExtension
-                                                                                       ScopedTypeVariables,
-                                                                                     EnableExtension
-                                                                                       FlexibleContexts,
-                                                                                     EnableExtension
-                                                                                       CPP],
-                                                                defaultLanguage = Just Haskell2010,
-                                                                extraBundledLibs = [],
-                                                                extraDynLibFlavours = [],
-                                                                extraFrameworkDirs = [],
-                                                                extraGHCiLibs = [],
-                                                                extraLibDirs = [],
-                                                                extraLibFlavours = [],
-                                                                extraLibs = [],
-                                                                frameworks = [],
-                                                                hsSourceDirs = [SymbolicPath
-                                                                                  "utils",
-                                                                                SymbolicPath "src"],
-                                                                hsc2hsOptions = [],
-                                                                includeDirs = [],
-                                                                includes = [],
-                                                                installIncludes = [],
-                                                                jsSources = [],
-                                                                ldOptions = [],
-                                                                mixins = [Mixin
-                                                                            {mixinIncludeRenaming = IncludeRenaming
-                                                                                                      {includeProvidesRn = ModuleRenaming
-                                                                                                                             [_×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Storage")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Storage"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Storage.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Storage.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.Masked"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.Math"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.Math.Compare"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.Math.CompareT"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.Math.Pairwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.Math.Pointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.Math.Reduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.Math.Scan"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.Mode"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.ScatterGather"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.Sort"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.TopK"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.Masked"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math.Compare"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math.Scan"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.Mode"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.ScatterGather"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.Sort"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.TopK"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Types")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Long.Types"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Long.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Mask")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Long.Mask"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Tensor.Math.Pointwise.Signed"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math.Pointwise.Signed")],
-                                                                                                       includeRequiresRn = ModuleRenaming
-                                                                                                                             [_×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Index.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Index.TensorFree")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Mask.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Byte.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Mask.TensorFree")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Byte.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Mask.MathReduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Byte.TensorMathReduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.State")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.State"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Types.Global")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Types.THC"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Types")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Types.THC.Long"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Storage")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.Storage"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Storage.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.StorageCopy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Storage.Memory")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.Storage"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorCopy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Memory")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorIndex"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorMasked"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorMathCompare"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorMathCompareT"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorMathPairwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorMathPointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorMathReduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorMathScan"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorMode"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorScatterGather"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorSort"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorTopK"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.TensorMathPointwise")]},
-                                                                             mixinLibraryName = LSubLibName
-                                                                                                  (UnqualComponentName
-                                                                                                     "hasktorch-indef-signed"),
-                                                                             mixinPackageName = PackageName
-                                                                                                  "hasktorch"},
-                                                                          Mixin
-                                                                            {mixinIncludeRenaming = IncludeRenaming
-                                                                                                      {includeProvidesRn = ModuleRenaming
-                                                                                                                             [_×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Storage")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Storage"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Storage.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Storage.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Masked"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Compare"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.CompareT"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Pairwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Pointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Reduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Scan"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Mode"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.ScatterGather"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Sort"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.TopK"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Masked"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Compare"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Scan"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Mode"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.ScatterGather"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Sort"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.TopK"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Types")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.Types"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Mask")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.Mask"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Pointwise.Signed"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Pointwise.Signed"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Blas")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Blas"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Lapack")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Lapack"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Pointwise.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Reduce.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Reduce.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Blas")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Blas"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Lapack")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Lapack"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pointwise.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Pointwise.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Reduce.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Reduce.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Random.TH")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Cuda.Double.Tensor.Random.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Math.Random.TH")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Cuda.Double.Tensor.Math.Random.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Random.THC")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Random.THC"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Random.THC")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Random.THC"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Storage")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Storage"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Storage.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Storage.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Masked"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Compare"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.CompareT"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Pairwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Pointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Reduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Scan"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Mode"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.ScatterGather"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Sort"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.TopK"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Copy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Masked"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Compare"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.CompareT"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Pairwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Pointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Reduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Scan"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Mode"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.ScatterGather"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Sort"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.TopK"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Types")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.Types"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.Index"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Mask")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.Mask"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Tensor.Math.Pointwise.Signed"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Pointwise.Signed"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.NN")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.Dynamic.NN"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.NN.Activation")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.Dynamic.NN.Activation"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.NN.Pooling")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.Dynamic.NN.Pooling"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Dynamic.NN.Criterion")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.Dynamic.NN.Criterion"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.NN"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.NN"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Activation")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.NN.Activation"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Backprop")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.NN.Backprop"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Conv1d")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.NN.Conv1d"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Conv2d")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.NN.Conv2d"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Criterion")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.NN.Criterion"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Layers")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.NN.Layers"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Linear")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.NN.Linear"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.NN.Math"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Padding")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.NN.Padding"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Pooling")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.NN.Pooling"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Indef.Static.NN.Sampling")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Cuda.Double.NN.Sampling")],
-                                                                                                       includeRequiresRn = ModuleRenaming
-                                                                                                                             [_×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Index.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Index.TensorFree")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Long.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Mask.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Byte.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Mask.TensorFree")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Byte.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Mask.MathReduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Byte.TensorMathReduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.State")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.State"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Types.Global")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Types.THC"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Types")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Types.THC.Double"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Storage")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.Storage"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Storage.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.StorageCopy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Storage.Memory")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.Storage"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Copy")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorCopy"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Memory")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.Tensor"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Index")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorIndex"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Masked")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMasked"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Compare")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMathCompare"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.CompareT")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMathCompareT"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pairwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMathPairwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pointwise")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMathPointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Reduce")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMathReduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Scan")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMathScan"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Mode")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMode"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.ScatterGather")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorScatterGather"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Sort")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorSort"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.TopK")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorTopK"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMathPointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pointwise.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMathPointwise"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Reduce.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMathReduce"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMath"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Blas")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMathBlas"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Lapack")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorMathMagma"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.NN")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.NN.Double"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Types.NN")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Types.THC"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Random.TH")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Cuda.Double.Tensor.Math.Random.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Random.TH")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Cuda.Double.Tensor.Random.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Random.THC")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.FFI.THC.Double.TensorRandom")]},
-                                                                             mixinLibraryName = LSubLibName
-                                                                                                  (UnqualComponentName
-                                                                                                     "hasktorch-indef-floating"),
-                                                                             mixinPackageName = PackageName
-                                                                                                  "hasktorch"}],
-                                                                oldExtensions = [],
-                                                                options = PerCompilerFlavor [] [],
-                                                                otherExtensions = [],
-                                                                otherLanguages = [],
-                                                                otherModules = [ModuleName
-                                                                                  "Torch.Core.Exceptions",
-                                                                                ModuleName
-                                                                                  "Torch.Core.Random",
-                                                                                ModuleName
-                                                                                  "Torch.Core.LogAdd"],
-                                                                pkgconfigDepends = [],
-                                                                profOptions = PerCompilerFlavor
-                                                                                [] [],
-                                                                sharedOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                staticOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                targetBuildDepends = [Dependency
-                                                                                        (PackageName
-                                                                                           "base")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [4,
-                                                                                                     7]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [4,
-                                                                                                     7])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [5])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch-types-th")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  0,
-                                                                                                  2])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "dimensions")
-                                                                                        (UnionVersionRanges
-                                                                                           (ThisVersion
-                                                                                              (mkVersion
-                                                                                                 [1,
-                                                                                                  0]))
-                                                                                           (LaterVersion
-                                                                                              (mkVersion
-                                                                                                 [1,
-                                                                                                  0])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch-ffi-th")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  0,
-                                                                                                  2])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch-types-th")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  0,
-                                                                                                  2])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "safe-exceptions")
-                                                                                        (UnionVersionRanges
-                                                                                           (ThisVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  1,
-                                                                                                  0]))
-                                                                                           (LaterVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  1,
-                                                                                                  0])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "singletons")
-                                                                                        (UnionVersionRanges
-                                                                                           (ThisVersion
-                                                                                              (mkVersion
-                                                                                                 [2,
-                                                                                                  2]))
-                                                                                           (LaterVersion
-                                                                                              (mkVersion
-                                                                                                 [2,
-                                                                                                  2])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "text")
-                                                                                        (UnionVersionRanges
-                                                                                           (ThisVersion
-                                                                                              (mkVersion
-                                                                                                 [1,
-                                                                                                  2,
-                                                                                                  2]))
-                                                                                           (LaterVersion
-                                                                                              (mkVersion
-                                                                                                 [1,
-                                                                                                  2,
-                                                                                                  2])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch")
-                                                                                        (OrLaterVersion
-                                                                                           (mkVersion
-                                                                                              [0]))
-                                                                                        (NonEmptySet.fromNonEmpty
-                                                                                           (NE.fromList
-                                                                                              [LSubLibName
-                                                                                                 (UnqualComponentName
-                                                                                                    "hasktorch-indef-floating")])),
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch")
-                                                                                        (OrLaterVersion
-                                                                                           (mkVersion
-                                                                                              [0]))
-                                                                                        (NonEmptySet.fromNonEmpty
-                                                                                           (NE.fromList
-                                                                                              [LSubLibName
-                                                                                                 (UnqualComponentName
-                                                                                                    "hasktorch-indef-signed")])),
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch-ffi-thc")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  0,
-                                                                                                  2])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch-types-thc")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  0,
-                                                                                                  2])))
-                                                                                        mainLibSet],
-                                                                virtualModules = []},
-                                              libExposed = True,
-                                              libName = LSubLibName
-                                                          (UnqualComponentName "hasktorch-gpu"),
-                                              libVisibility = LibraryVisibilityPrivate,
-                                              reexportedModules = [ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.NN",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.NN",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.NN.Activation",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.NN.Activation",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.NN.Backprop",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.NN.Backprop",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.NN.Conv1d",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.NN.Conv1d",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.NN.Conv2d",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.NN.Conv2d",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.NN.Criterion",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.NN.Criterion",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.NN.Layers",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.NN.Layers",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.NN.Linear",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.NN.Linear",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.NN.Math",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.NN.Math",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.NN.Padding",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.NN.Padding",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.NN.Pooling",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.NN.Pooling",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.NN.Sampling",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.NN.Sampling",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.Dynamic.NN",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.Dynamic.NN",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.Dynamic.NN.Activation",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.Dynamic.NN.Activation",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.Dynamic.NN.Pooling",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.Dynamic.NN.Pooling",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Cuda.Double.Dynamic.NN.Criterion",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Cuda.Double.Dynamic.NN.Criterion",
-                                                                      moduleReexportOriginalPackage = Nothing}],
-                                              signatures = []}},
-                       _×_
-                         (UnqualComponentName "hasktorch-indef-unsigned")
-                         CondNode
-                           {condTreeComponents = [],
-                            condTreeConstraints = [Dependency
-                                                     (PackageName "base")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [4, 7]))
-                                                           (LaterVersion (mkVersion [4, 7])))
-                                                        (EarlierVersion (mkVersion [5])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch-signatures-partial")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [0, 0, 1]))
-                                                           (LaterVersion (mkVersion [0, 0, 1])))
-                                                        (EarlierVersion (mkVersion [0, 0, 2])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch-indef")
-                                                     (OrLaterVersion (mkVersion [0]))
-                                                     mainLibSet],
-                            condTreeData = Library
-                                             {exposedModules = [],
-                                              libBuildInfo = BuildInfo
-                                                               {asmOptions = [],
-                                                                asmSources = [],
-                                                                autogenIncludes = [],
-                                                                autogenModules = [],
-                                                                buildToolDepends = [],
-                                                                buildTools = [],
-                                                                buildable = True,
-                                                                cSources = [],
-                                                                ccOptions = [],
-                                                                cmmOptions = [],
-                                                                cmmSources = [],
-                                                                cppOptions = [],
-                                                                customFieldsBI = [],
-                                                                cxxOptions = [],
-                                                                cxxSources = [],
-                                                                defaultExtensions = [],
-                                                                defaultLanguage = Just Haskell2010,
-                                                                extraBundledLibs = [],
-                                                                extraDynLibFlavours = [],
-                                                                extraFrameworkDirs = [],
-                                                                extraGHCiLibs = [],
-                                                                extraLibDirs = [],
-                                                                extraLibFlavours = [],
-                                                                extraLibs = [],
-                                                                frameworks = [],
-                                                                hsSourceDirs = [],
-                                                                hsc2hsOptions = [],
-                                                                includeDirs = [],
-                                                                includes = [],
-                                                                installIncludes = [],
-                                                                jsSources = [],
-                                                                ldOptions = [],
-                                                                mixins = [Mixin
-                                                                            {mixinIncludeRenaming = IncludeRenaming
-                                                                                                      {includeProvidesRn = DefaultRenaming,
-                                                                                                       includeRequiresRn = ModuleRenaming
-                                                                                                                             [_×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.NN")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.NN"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Types.NN")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Types.NN"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Blas")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Math.Blas"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Math.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Lapack")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Math.Lapack"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pointwise.Signed")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Math.Pointwise.Signed"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pointwise.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Math.Pointwise.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Reduce.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Math.Reduce.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Random.TH")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Math.Random.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Random.TH")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Random.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Random.THC")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Random.THC")]},
-                                                                             mixinLibraryName = LMainLibName,
-                                                                             mixinPackageName = PackageName
-                                                                                                  "hasktorch-indef"}],
-                                                                oldExtensions = [],
-                                                                options = PerCompilerFlavor [] [],
-                                                                otherExtensions = [],
-                                                                otherLanguages = [],
-                                                                otherModules = [],
-                                                                pkgconfigDepends = [],
-                                                                profOptions = PerCompilerFlavor
-                                                                                [] [],
-                                                                sharedOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                staticOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                targetBuildDepends = [Dependency
-                                                                                        (PackageName
-                                                                                           "base")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [4,
-                                                                                                     7]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [4,
-                                                                                                     7])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [5])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch-signatures-partial")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  0,
-                                                                                                  2])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch-indef")
-                                                                                        (OrLaterVersion
-                                                                                           (mkVersion
-                                                                                              [0]))
-                                                                                        mainLibSet],
-                                                                virtualModules = []},
-                                              libExposed = True,
-                                              libName = LSubLibName
-                                                          (UnqualComponentName
-                                                             "hasktorch-indef-unsigned"),
-                                              libVisibility = LibraryVisibilityPrivate,
-                                              reexportedModules = [ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Index",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Index",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Mask",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Mask",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Types",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Types",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Storage",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Storage",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Storage.Copy",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Storage.Copy",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Print",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Print",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Copy",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Copy",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Index",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Index",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Masked",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Masked",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Compare",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Compare",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.CompareT",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.CompareT",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Pairwise",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pairwise",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Pointwise",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Reduce",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Scan",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Scan",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Mode",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Mode",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.ScatterGather",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.ScatterGather",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Sort",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Sort",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.TopK",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.TopK",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Copy",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Copy",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Index",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Index",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Masked",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Masked",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Compare",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Compare",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.CompareT",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.CompareT",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Pairwise",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Pairwise",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Pointwise",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Reduce",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Scan",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Scan",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Mode",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Mode",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.ScatterGather",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.ScatterGather",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Sort",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Sort",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.TopK",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.TopK",
-                                                                      moduleReexportOriginalPackage = Nothing}],
-                                              signatures = []}},
-                       _×_
-                         (UnqualComponentName "hasktorch-indef-signed")
-                         CondNode
-                           {condTreeComponents = [],
-                            condTreeConstraints = [Dependency
-                                                     (PackageName "base")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [4, 7]))
-                                                           (LaterVersion (mkVersion [4, 7])))
-                                                        (EarlierVersion (mkVersion [5])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch-signatures-partial")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [0, 0, 1]))
-                                                           (LaterVersion (mkVersion [0, 0, 1])))
-                                                        (EarlierVersion (mkVersion [0, 0, 2])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch-indef")
-                                                     (OrLaterVersion (mkVersion [0]))
-                                                     mainLibSet],
-                            condTreeData = Library
-                                             {exposedModules = [],
-                                              libBuildInfo = BuildInfo
-                                                               {asmOptions = [],
-                                                                asmSources = [],
-                                                                autogenIncludes = [],
-                                                                autogenModules = [],
-                                                                buildToolDepends = [],
-                                                                buildTools = [],
-                                                                buildable = True,
-                                                                cSources = [],
-                                                                ccOptions = [],
-                                                                cmmOptions = [],
-                                                                cmmSources = [],
-                                                                cppOptions = [],
-                                                                customFieldsBI = [],
-                                                                cxxOptions = [],
-                                                                cxxSources = [],
-                                                                defaultExtensions = [],
-                                                                defaultLanguage = Just Haskell2010,
-                                                                extraBundledLibs = [],
-                                                                extraDynLibFlavours = [],
-                                                                extraFrameworkDirs = [],
-                                                                extraGHCiLibs = [],
-                                                                extraLibDirs = [],
-                                                                extraLibFlavours = [],
-                                                                extraLibs = [],
-                                                                frameworks = [],
-                                                                hsSourceDirs = [],
-                                                                hsc2hsOptions = [],
-                                                                includeDirs = [],
-                                                                includes = [],
-                                                                installIncludes = [],
-                                                                jsSources = [],
-                                                                ldOptions = [],
-                                                                mixins = [Mixin
-                                                                            {mixinIncludeRenaming = IncludeRenaming
-                                                                                                      {includeProvidesRn = DefaultRenaming,
-                                                                                                       includeRequiresRn = ModuleRenaming
-                                                                                                                             [_×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.NN")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.NN"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Types.NN")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Types.NN"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Blas")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Math.Blas"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Math.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Lapack")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Math.Lapack"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Pointwise.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Math.Pointwise.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Reduce.Floating")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Math.Reduce.Floating"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Math.Random.TH")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Math.Random.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Random.TH")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Random.TH"),
-                                                                                                                              _×_
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Sig.Tensor.Random.THC")
-                                                                                                                                (ModuleName
-                                                                                                                                   "Torch.Undefined.Tensor.Random.THC")]},
-                                                                             mixinLibraryName = LMainLibName,
-                                                                             mixinPackageName = PackageName
-                                                                                                  "hasktorch-indef"}],
-                                                                oldExtensions = [],
-                                                                options = PerCompilerFlavor [] [],
-                                                                otherExtensions = [],
-                                                                otherLanguages = [],
-                                                                otherModules = [],
-                                                                pkgconfigDepends = [],
-                                                                profOptions = PerCompilerFlavor
-                                                                                [] [],
-                                                                sharedOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                staticOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                targetBuildDepends = [Dependency
-                                                                                        (PackageName
-                                                                                           "base")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [4,
-                                                                                                     7]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [4,
-                                                                                                     7])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [5])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch-signatures-partial")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  0,
-                                                                                                  2])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch-indef")
-                                                                                        (OrLaterVersion
-                                                                                           (mkVersion
-                                                                                              [0]))
-                                                                                        mainLibSet],
-                                                                virtualModules = []},
-                                              libExposed = True,
-                                              libName = LSubLibName
-                                                          (UnqualComponentName
-                                                             "hasktorch-indef-signed"),
-                                              libVisibility = LibraryVisibilityPrivate,
-                                              reexportedModules = [ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Index",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Index",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Mask",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Mask",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Types",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Types",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Storage",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Storage",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Storage.Copy",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Storage.Copy",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Print",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Print",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Copy",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Copy",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Index",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Index",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Masked",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Masked",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Compare",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Compare",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.CompareT",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.CompareT",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Pairwise",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pairwise",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Pointwise",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Reduce",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Scan",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Scan",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Mode",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Mode",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.ScatterGather",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.ScatterGather",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Sort",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Sort",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.TopK",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.TopK",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Copy",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Copy",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Index",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Index",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Masked",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Masked",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Compare",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Compare",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.CompareT",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.CompareT",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Pairwise",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Pairwise",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Pointwise",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Reduce",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Scan",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Scan",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Mode",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Mode",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.ScatterGather",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.ScatterGather",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Sort",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Sort",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.TopK",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.TopK",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Pointwise.Signed",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise.Signed",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed",
-                                                                      moduleReexportOriginalPackage = Nothing}],
-                                              signatures = []}},
-                       _×_
-                         (UnqualComponentName "hasktorch-indef-floating")
-                         CondNode
-                           {condTreeComponents = [],
-                            condTreeConstraints = [Dependency
-                                                     (PackageName "base")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [4, 7]))
-                                                           (LaterVersion (mkVersion [4, 7])))
-                                                        (EarlierVersion (mkVersion [5])))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch-indef")
-                                                     (OrLaterVersion (mkVersion [0]))
-                                                     mainLibSet,
-                                                   Dependency
-                                                     (PackageName "hasktorch-signatures-partial")
-                                                     (IntersectVersionRanges
-                                                        (UnionVersionRanges
-                                                           (ThisVersion (mkVersion [0, 0, 1]))
-                                                           (LaterVersion (mkVersion [0, 0, 1])))
-                                                        (EarlierVersion (mkVersion [0, 0, 2])))
-                                                     mainLibSet],
-                            condTreeData = Library
-                                             {exposedModules = [],
-                                              libBuildInfo = BuildInfo
-                                                               {asmOptions = [],
-                                                                asmSources = [],
-                                                                autogenIncludes = [],
-                                                                autogenModules = [],
-                                                                buildToolDepends = [],
-                                                                buildTools = [],
-                                                                buildable = True,
-                                                                cSources = [],
-                                                                ccOptions = [],
-                                                                cmmOptions = [],
-                                                                cmmSources = [],
-                                                                cppOptions = [],
-                                                                customFieldsBI = [],
-                                                                cxxOptions = [],
-                                                                cxxSources = [],
-                                                                defaultExtensions = [],
-                                                                defaultLanguage = Just Haskell2010,
-                                                                extraBundledLibs = [],
-                                                                extraDynLibFlavours = [],
-                                                                extraFrameworkDirs = [],
-                                                                extraGHCiLibs = [],
-                                                                extraLibDirs = [],
-                                                                extraLibFlavours = [],
-                                                                extraLibs = [],
-                                                                frameworks = [],
-                                                                hsSourceDirs = [],
-                                                                hsc2hsOptions = [],
-                                                                includeDirs = [],
-                                                                includes = [],
-                                                                installIncludes = [],
-                                                                jsSources = [],
-                                                                ldOptions = [],
-                                                                mixins = [],
-                                                                oldExtensions = [],
-                                                                options = PerCompilerFlavor [] [],
-                                                                otherExtensions = [],
-                                                                otherLanguages = [],
-                                                                otherModules = [],
-                                                                pkgconfigDepends = [],
-                                                                profOptions = PerCompilerFlavor
-                                                                                [] [],
-                                                                sharedOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                staticOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                targetBuildDepends = [Dependency
-                                                                                        (PackageName
-                                                                                           "base")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [4,
-                                                                                                     7]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [4,
-                                                                                                     7])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [5])))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch-indef")
-                                                                                        (OrLaterVersion
-                                                                                           (mkVersion
-                                                                                              [0]))
-                                                                                        mainLibSet,
-                                                                                      Dependency
-                                                                                        (PackageName
-                                                                                           "hasktorch-signatures-partial")
-                                                                                        (IntersectVersionRanges
-                                                                                           (UnionVersionRanges
-                                                                                              (ThisVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1]))
-                                                                                              (LaterVersion
-                                                                                                 (mkVersion
-                                                                                                    [0,
-                                                                                                     0,
-                                                                                                     1])))
-                                                                                           (EarlierVersion
-                                                                                              (mkVersion
-                                                                                                 [0,
-                                                                                                  0,
-                                                                                                  2])))
-                                                                                        mainLibSet],
-                                                                virtualModules = []},
-                                              libExposed = True,
-                                              libName = LSubLibName
-                                                          (UnqualComponentName
-                                                             "hasktorch-indef-floating"),
-                                              libVisibility = LibraryVisibilityPrivate,
-                                              reexportedModules = [ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Index",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Index",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Mask",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Mask",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Types",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Types",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Storage",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Storage",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Storage.Copy",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Storage.Copy",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Print",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Print",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Copy",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Copy",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Index",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Index",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Masked",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Masked",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Compare",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Compare",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.CompareT",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.CompareT",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Pairwise",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pairwise",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Pointwise",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Reduce",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Scan",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Scan",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Mode",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Mode",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.ScatterGather",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.ScatterGather",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Sort",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Sort",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.TopK",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.TopK",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Copy",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Copy",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Index",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Index",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Masked",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Masked",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Compare",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Compare",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.CompareT",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.CompareT",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Pairwise",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Pairwise",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Pointwise",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Reduce",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Scan",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Scan",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Mode",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Mode",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.ScatterGather",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.ScatterGather",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Sort",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Sort",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.TopK",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.TopK",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Pointwise.Signed",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise.Signed",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Blas",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Blas",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Floating",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Floating",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Lapack",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Lapack",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Floating",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Floating",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Reduce.Floating",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Reduce.Floating",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Random.TH",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Random.TH",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Random.THC",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Random.THC",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.Tensor.Math.Random.TH",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.Tensor.Math.Random.TH",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Blas",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Blas",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Floating",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Floating",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Lapack",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Lapack",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Pointwise.Floating",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Pointwise.Floating",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Reduce.Floating",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Reduce.Floating",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Random.TH",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Random.TH",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Random.THC",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Random.THC",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.Tensor.Math.Random.TH",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.Tensor.Math.Random.TH",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.NN",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.NN",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.NN.Activation",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.NN.Activation",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.NN.Pooling",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.NN.Pooling",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Dynamic.NN.Criterion",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Dynamic.NN.Criterion",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.NN",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.NN",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.NN.Activation",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.NN.Activation",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.NN.Backprop",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.NN.Backprop",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.NN.Conv1d",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.NN.Conv1d",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.NN.Conv2d",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.NN.Conv2d",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.NN.Criterion",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.NN.Criterion",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.NN.Layers",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.NN.Layers",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.NN.Linear",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.NN.Linear",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.NN.Math",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.NN.Math",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.NN.Padding",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.NN.Padding",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.NN.Pooling",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.NN.Pooling",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Indef.Static.NN.Sampling",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Indef.Static.NN.Sampling",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Undefined.Tensor.Math.Random.TH",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Undefined.Tensor.Math.Random.TH",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Undefined.Tensor.Random.TH",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Undefined.Tensor.Random.TH",
-                                                                      moduleReexportOriginalPackage = Nothing},
-                                                                   ModuleReexport
-                                                                     {moduleReexportName = ModuleName
-                                                                                             "Torch.Undefined.Tensor.Random.THC",
-                                                                      moduleReexportOriginalName = ModuleName
-                                                                                                     "Torch.Undefined.Tensor.Random.THC",
-                                                                      moduleReexportOriginalPackage = Nothing}],
-                                              signatures = []}}],
-   condTestSuites = [_×_
-                       (UnqualComponentName "spec")
-                       CondNode
-                         {condTreeComponents = [],
-                          condTreeConstraints = [Dependency
-                                                   (PackageName "QuickCheck")
-                                                   (UnionVersionRanges
-                                                      (ThisVersion (mkVersion [2, 11]))
-                                                      (LaterVersion (mkVersion [2, 11])))
-                                                   mainLibSet,
-                                                 Dependency
-                                                   (PackageName "backprop")
-                                                   (UnionVersionRanges
-                                                      (ThisVersion (mkVersion [0, 2, 5]))
-                                                      (LaterVersion (mkVersion [0, 2, 5])))
-                                                   mainLibSet,
-                                                 Dependency
-                                                   (PackageName "base")
-                                                   (IntersectVersionRanges
-                                                      (UnionVersionRanges
-                                                         (ThisVersion (mkVersion [4, 7]))
-                                                         (LaterVersion (mkVersion [4, 7])))
-                                                      (EarlierVersion (mkVersion [5])))
-                                                   mainLibSet,
-                                                 Dependency
-                                                   (PackageName "dimensions")
-                                                   (UnionVersionRanges
-                                                      (ThisVersion (mkVersion [1, 0]))
-                                                      (LaterVersion (mkVersion [1, 0])))
-                                                   mainLibSet,
-                                                 Dependency
-                                                   (PackageName "ghc-typelits-natnormalise")
-                                                   (OrLaterVersion (mkVersion [0]))
-                                                   mainLibSet,
-                                                 Dependency
-                                                   (PackageName "hasktorch")
-                                                   (OrLaterVersion (mkVersion [0]))
-                                                   mainLibSet,
-                                                 Dependency
-                                                   (PackageName "hspec")
-                                                   (UnionVersionRanges
-                                                      (ThisVersion (mkVersion [2, 4, 4]))
-                                                      (LaterVersion (mkVersion [2, 4, 4])))
-                                                   mainLibSet,
-                                                 Dependency
-                                                   (PackageName "singletons")
-                                                   (UnionVersionRanges
-                                                      (ThisVersion (mkVersion [2, 2]))
-                                                      (LaterVersion (mkVersion [2, 2])))
-                                                   mainLibSet,
-                                                 Dependency
-                                                   (PackageName "mtl")
-                                                   (UnionVersionRanges
-                                                      (ThisVersion (mkVersion [2, 2, 2]))
-                                                      (LaterVersion (mkVersion [2, 2, 2])))
-                                                   mainLibSet,
-                                                 Dependency
-                                                   (PackageName "microlens-platform")
-                                                   (UnionVersionRanges
-                                                      (ThisVersion (mkVersion [0, 3, 10]))
-                                                      (LaterVersion (mkVersion [0, 3, 10])))
-                                                   mainLibSet,
-                                                 Dependency
-                                                   (PackageName "monad-loops")
-                                                   (UnionVersionRanges
-                                                      (ThisVersion (mkVersion [0, 4, 3]))
-                                                      (LaterVersion (mkVersion [0, 4, 3])))
-                                                   mainLibSet,
-                                                 Dependency
-                                                   (PackageName "time")
-                                                   (UnionVersionRanges
-                                                      (ThisVersion (mkVersion [1, 8, 0]))
-                                                      (LaterVersion (mkVersion [1, 8, 0])))
-                                                   mainLibSet,
-                                                 Dependency
-                                                   (PackageName "transformers")
-                                                   (UnionVersionRanges
-                                                      (ThisVersion (mkVersion [0, 5, 5]))
-                                                      (LaterVersion (mkVersion [0, 5, 5])))
-                                                   mainLibSet,
-                                                 Dependency
-                                                   (PackageName "generic-lens")
-                                                   (OrLaterVersion (mkVersion [0]))
-                                                   mainLibSet],
-                          condTreeData = TestSuite
-                                           {testBuildInfo = BuildInfo
-                                                              {asmOptions = [],
-                                                               asmSources = [],
-                                                               autogenIncludes = [],
-                                                               autogenModules = [],
-                                                               buildToolDepends = [],
-                                                               buildTools = [],
-                                                               buildable = True,
-                                                               cSources = [],
-                                                               ccOptions = [],
-                                                               cmmOptions = [],
-                                                               cmmSources = [],
-                                                               cppOptions = [],
-                                                               customFieldsBI = [],
-                                                               cxxOptions = [],
-                                                               cxxSources = [],
-                                                               defaultExtensions = [EnableExtension
-                                                                                      LambdaCase,
-                                                                                    EnableExtension
-                                                                                      DataKinds,
-                                                                                    EnableExtension
-                                                                                      TypeFamilies,
-                                                                                    EnableExtension
-                                                                                      TypeSynonymInstances,
-                                                                                    EnableExtension
-                                                                                      ScopedTypeVariables,
-                                                                                    EnableExtension
-                                                                                      FlexibleContexts,
-                                                                                    EnableExtension
-                                                                                      CPP],
-                                                               defaultLanguage = Just Haskell2010,
-                                                               extraBundledLibs = [],
-                                                               extraDynLibFlavours = [],
-                                                               extraFrameworkDirs = [],
-                                                               extraGHCiLibs = [],
-                                                               extraLibDirs = [],
-                                                               extraLibFlavours = [],
-                                                               extraLibs = [],
-                                                               frameworks = [],
-                                                               hsSourceDirs = [SymbolicPath
-                                                                                 "tests"],
-                                                               hsc2hsOptions = [],
-                                                               includeDirs = [],
-                                                               includes = [],
-                                                               installIncludes = [],
-                                                               jsSources = [],
-                                                               ldOptions = [],
-                                                               mixins = [],
-                                                               oldExtensions = [],
-                                                               options = PerCompilerFlavor [] [],
-                                                               otherExtensions = [],
-                                                               otherLanguages = [],
-                                                               otherModules = [ModuleName "Orphans",
-                                                                               ModuleName
-                                                                                 "MemorySpec",
-                                                                               ModuleName
-                                                                                 "RawLapackSVDSpec",
-                                                                               ModuleName
-                                                                                 "GarbageCollectionSpec",
-                                                                               ModuleName
-                                                                                 "Torch.Prelude.Extras",
-                                                                               ModuleName
-                                                                                 "Torch.Core.LogAddSpec",
-                                                                               ModuleName
-                                                                                 "Torch.Core.RandomSpec",
-                                                                               ModuleName
-                                                                                 "Torch.Static.NN.AbsSpec",
-                                                                               ModuleName
-                                                                                 "Torch.Static.NN.LinearSpec"],
-                                                               pkgconfigDepends = [],
-                                                               profOptions = PerCompilerFlavor
-                                                                               [] [],
-                                                               sharedOptions = PerCompilerFlavor
-                                                                                 [] [],
-                                                               staticOptions = PerCompilerFlavor
-                                                                                 [] [],
-                                                               targetBuildDepends = [Dependency
-                                                                                       (PackageName
-                                                                                          "QuickCheck")
-                                                                                       (UnionVersionRanges
-                                                                                          (ThisVersion
-                                                                                             (mkVersion
-                                                                                                [2,
-                                                                                                 11]))
-                                                                                          (LaterVersion
-                                                                                             (mkVersion
-                                                                                                [2,
-                                                                                                 11])))
-                                                                                       mainLibSet,
-                                                                                     Dependency
-                                                                                       (PackageName
-                                                                                          "backprop")
-                                                                                       (UnionVersionRanges
-                                                                                          (ThisVersion
-                                                                                             (mkVersion
-                                                                                                [0,
-                                                                                                 2,
-                                                                                                 5]))
-                                                                                          (LaterVersion
-                                                                                             (mkVersion
-                                                                                                [0,
-                                                                                                 2,
-                                                                                                 5])))
-                                                                                       mainLibSet,
-                                                                                     Dependency
-                                                                                       (PackageName
-                                                                                          "base")
-                                                                                       (IntersectVersionRanges
-                                                                                          (UnionVersionRanges
-                                                                                             (ThisVersion
-                                                                                                (mkVersion
-                                                                                                   [4,
-                                                                                                    7]))
-                                                                                             (LaterVersion
-                                                                                                (mkVersion
-                                                                                                   [4,
-                                                                                                    7])))
-                                                                                          (EarlierVersion
-                                                                                             (mkVersion
-                                                                                                [5])))
-                                                                                       mainLibSet,
-                                                                                     Dependency
-                                                                                       (PackageName
-                                                                                          "dimensions")
-                                                                                       (UnionVersionRanges
-                                                                                          (ThisVersion
-                                                                                             (mkVersion
-                                                                                                [1,
-                                                                                                 0]))
-                                                                                          (LaterVersion
-                                                                                             (mkVersion
-                                                                                                [1,
-                                                                                                 0])))
-                                                                                       mainLibSet,
-                                                                                     Dependency
-                                                                                       (PackageName
-                                                                                          "ghc-typelits-natnormalise")
-                                                                                       (OrLaterVersion
-                                                                                          (mkVersion
-                                                                                             [0]))
-                                                                                       mainLibSet,
-                                                                                     Dependency
-                                                                                       (PackageName
-                                                                                          "hasktorch")
-                                                                                       (OrLaterVersion
-                                                                                          (mkVersion
-                                                                                             [0]))
-                                                                                       mainLibSet,
-                                                                                     Dependency
-                                                                                       (PackageName
-                                                                                          "hspec")
-                                                                                       (UnionVersionRanges
-                                                                                          (ThisVersion
-                                                                                             (mkVersion
-                                                                                                [2,
-                                                                                                 4,
-                                                                                                 4]))
-                                                                                          (LaterVersion
-                                                                                             (mkVersion
-                                                                                                [2,
-                                                                                                 4,
-                                                                                                 4])))
-                                                                                       mainLibSet,
-                                                                                     Dependency
-                                                                                       (PackageName
-                                                                                          "singletons")
-                                                                                       (UnionVersionRanges
-                                                                                          (ThisVersion
-                                                                                             (mkVersion
-                                                                                                [2,
-                                                                                                 2]))
-                                                                                          (LaterVersion
-                                                                                             (mkVersion
-                                                                                                [2,
-                                                                                                 2])))
-                                                                                       mainLibSet,
-                                                                                     Dependency
-                                                                                       (PackageName
-                                                                                          "mtl")
-                                                                                       (UnionVersionRanges
-                                                                                          (ThisVersion
-                                                                                             (mkVersion
-                                                                                                [2,
-                                                                                                 2,
-                                                                                                 2]))
-                                                                                          (LaterVersion
-                                                                                             (mkVersion
-                                                                                                [2,
-                                                                                                 2,
-                                                                                                 2])))
-                                                                                       mainLibSet,
-                                                                                     Dependency
-                                                                                       (PackageName
-                                                                                          "microlens-platform")
-                                                                                       (UnionVersionRanges
-                                                                                          (ThisVersion
-                                                                                             (mkVersion
-                                                                                                [0,
-                                                                                                 3,
-                                                                                                 10]))
-                                                                                          (LaterVersion
-                                                                                             (mkVersion
-                                                                                                [0,
-                                                                                                 3,
-                                                                                                 10])))
-                                                                                       mainLibSet,
-                                                                                     Dependency
-                                                                                       (PackageName
-                                                                                          "monad-loops")
-                                                                                       (UnionVersionRanges
-                                                                                          (ThisVersion
-                                                                                             (mkVersion
-                                                                                                [0,
-                                                                                                 4,
-                                                                                                 3]))
-                                                                                          (LaterVersion
-                                                                                             (mkVersion
-                                                                                                [0,
-                                                                                                 4,
-                                                                                                 3])))
-                                                                                       mainLibSet,
-                                                                                     Dependency
-                                                                                       (PackageName
-                                                                                          "time")
-                                                                                       (UnionVersionRanges
-                                                                                          (ThisVersion
-                                                                                             (mkVersion
-                                                                                                [1,
-                                                                                                 8,
-                                                                                                 0]))
-                                                                                          (LaterVersion
-                                                                                             (mkVersion
-                                                                                                [1,
-                                                                                                 8,
-                                                                                                 0])))
-                                                                                       mainLibSet,
-                                                                                     Dependency
-                                                                                       (PackageName
-                                                                                          "transformers")
-                                                                                       (UnionVersionRanges
-                                                                                          (ThisVersion
-                                                                                             (mkVersion
-                                                                                                [0,
-                                                                                                 5,
-                                                                                                 5]))
-                                                                                          (LaterVersion
-                                                                                             (mkVersion
-                                                                                                [0,
-                                                                                                 5,
-                                                                                                 5])))
-                                                                                       mainLibSet,
-                                                                                     Dependency
-                                                                                       (PackageName
-                                                                                          "generic-lens")
-                                                                                       (OrLaterVersion
-                                                                                          (mkVersion
-                                                                                             [0]))
-                                                                                       mainLibSet],
-                                                               virtualModules = []},
-                                            testInterface = TestSuiteExeV10
-                                                              (mkVersion [1, 0]) "Spec.hs",
-                                            testName = UnqualComponentName ""}}],
-   genPackageFlags = [MkPackageFlag
-                        {flagDefault = False,
-                         flagDescription = "build with THC support",
-                         flagManual = False,
-                         flagName = FlagName "cuda"},
-                      MkPackageFlag
-                        {flagDefault = False,
-                         flagDescription = "only build with Double and Long support",
-                         flagManual = False,
-                         flagName = FlagName "lite"}],
-   gpdScannedVersion = Nothing,
-   packageDescription = PackageDescription
-                          {author = "Hasktorch dev team",
-                           benchmarks = [],
-                           bugReports = "https://github.com/hasktorch/hasktorch/issues",
-                           buildTypeRaw = Just Simple,
-                           category = "Tensors, Machine Learning, AI",
-                           copyright = "",
-                           customFieldsPD = [],
-                           dataDir = ".",
-                           dataFiles = [],
-                           description = "Hasktorch is a library for tensors and neural networks in Haskell. It is an independent open source community project which leverages the core C libraries shared by Torch and PyTorch. This library leverages @cabal v2-build@ and @backpack@. *Note that this project is in early development and should only be used by contributing developers. Expect substantial changes to the library API as it evolves. Contributions and PRs are welcome (see details on github).*",
-                           executables = [],
-                           extraDocFiles = [],
-                           extraSrcFiles = [],
-                           extraTmpFiles = [],
-                           foreignLibs = [],
-                           homepage = "https://github.com/hasktorch/hasktorch#readme",
-                           library = Nothing,
-                           licenseFiles = [],
-                           licenseRaw = Left
-                                          (License (ELicense (ELicenseId BSD_3_Clause) Nothing)),
-                           maintainer = "Sam Stites <fnz@fgvgrf.vb>, Austin Huang <nhfgvau@nyhz.zvg.rqh> - cipher:ROT13",
-                           package = PackageIdentifier
-                                       {pkgName = PackageName "hasktorch",
-                                        pkgVersion = mkVersion [0, 0, 1, 0]},
-                           pkgUrl = "",
-                           setupBuildInfo = Nothing,
-                           sourceRepos = [SourceRepo
-                                            {repoBranch = Nothing,
-                                             repoKind = RepoHead,
-                                             repoLocation = Just
-                                                              "https://github.com/hasktorch/hasktorch",
-                                             repoModule = Nothing,
-                                             repoSubdir = Nothing,
-                                             repoTag = Nothing,
-                                             repoType = Just (KnownRepoType Git)}],
-                           specVersion = CabalSpecV2_2,
-                           stability = "",
-                           subLibraries = [],
-                           synopsis = "Torch for tensors and neural networks in Haskell",
-                           testSuites = [],
-                           testedWith = []}}
+GenericPackageDescription {
+  packageDescription =
+  PackageDescription {
+    specVersion = CabalSpecV2_2,
+    package = PackageIdentifier {
+      pkgName = PackageName
+        "hasktorch",
+      pkgVersion = mkVersion
+        [0, 0, 1, 0]},
+    licenseRaw = Left
+      (License
+        (ELicense
+          (ELicenseId BSD_3_Clause)
+          Nothing)),
+    licenseFiles = [],
+    copyright = "",
+    maintainer =
+    "Sam Stites <fnz@fgvgrf.vb>, Austin Huang <nhfgvau@nyhz.zvg.rqh> - cipher:ROT13",
+    author = "Hasktorch dev team",
+    stability = "",
+    testedWith = [],
+    homepage =
+    "https://github.com/hasktorch/hasktorch#readme",
+    pkgUrl = "",
+    bugReports =
+    "https://github.com/hasktorch/hasktorch/issues",
+    sourceRepos = [
+      SourceRepo {
+        repoKind = RepoHead,
+        repoType = Just
+          (KnownRepoType Git),
+        repoLocation = Just
+          "https://github.com/hasktorch/hasktorch",
+        repoModule = Nothing,
+        repoBranch = Nothing,
+        repoTag = Nothing,
+        repoSubdir = Nothing}],
+    synopsis =
+    "Torch for tensors and neural networks in Haskell",
+    description =
+    "Hasktorch is a library for tensors and neural networks in Haskell. It is an independent open source community project which leverages the core C libraries shared by Torch and PyTorch. This library leverages @cabal v2-build@ and @backpack@. *Note that this project is in early development and should only be used by contributing developers. Expect substantial changes to the library API as it evolves. Contributions and PRs are welcome (see details on github).*",
+    category =
+    "Tensors, Machine Learning, AI",
+    customFieldsPD = [],
+    buildTypeRaw = Just Simple,
+    setupBuildInfo = Nothing,
+    library = Nothing,
+    subLibraries = [],
+    executables = [],
+    foreignLibs = [],
+    testSuites = [],
+    benchmarks = [],
+    dataFiles = [],
+    dataDir = ".",
+    extraSrcFiles = [],
+    extraTmpFiles = [],
+    extraDocFiles = []},
+  gpdScannedVersion = Nothing,
+  genPackageFlags = [
+    MkPackageFlag {
+      flagName = FlagName "cuda",
+      flagDescription =
+      "build with THC support",
+      flagDefault = False,
+      flagManual = False},
+    MkPackageFlag {
+      flagName = FlagName "lite",
+      flagDescription =
+      "only build with Double and Long support",
+      flagDefault = False,
+      flagManual = False}],
+  condLibrary = Just
+    CondNode {
+      condTreeData = Library {
+        libName = LMainLibName,
+        exposedModules = [
+          ModuleName
+            "Torch.Core.Exceptions",
+          ModuleName "Torch.Core.Random",
+          ModuleName "Torch.Core.LogAdd"],
+        reexportedModules = [
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Types.Numeric",
+            moduleReexportName = ModuleName
+              "Torch.Types.Numeric"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName "Torch.Long",
+            moduleReexportName = ModuleName
+              "Torch.Long"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName "Torch.Long.Dynamic",
+            moduleReexportName = ModuleName
+              "Torch.Long.Dynamic"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName "Torch.Long.Storage",
+            moduleReexportName = ModuleName
+              "Torch.Long.Storage"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName "Torch.Double",
+            moduleReexportName = ModuleName
+              "Torch.Double"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.Dynamic",
+            moduleReexportName = ModuleName
+              "Torch.Double.Dynamic"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.Storage",
+            moduleReexportName = ModuleName
+              "Torch.Double.Storage"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName "Torch.Double.NN",
+            moduleReexportName = ModuleName
+              "Torch.Double.NN"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.NN.Activation",
+            moduleReexportName = ModuleName
+              "Torch.Double.NN.Activation"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.NN.Backprop",
+            moduleReexportName = ModuleName
+              "Torch.Double.NN.Backprop"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.NN.Conv1d",
+            moduleReexportName = ModuleName
+              "Torch.Double.NN.Conv1d"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.NN.Conv2d",
+            moduleReexportName = ModuleName
+              "Torch.Double.NN.Conv2d"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.NN.Criterion",
+            moduleReexportName = ModuleName
+              "Torch.Double.NN.Criterion"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.NN.Layers",
+            moduleReexportName = ModuleName
+              "Torch.Double.NN.Layers"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.NN.Linear",
+            moduleReexportName = ModuleName
+              "Torch.Double.NN.Linear"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.NN.Math",
+            moduleReexportName = ModuleName
+              "Torch.Double.NN.Math"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.NN.Padding",
+            moduleReexportName = ModuleName
+              "Torch.Double.NN.Padding"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.NN.Pooling",
+            moduleReexportName = ModuleName
+              "Torch.Double.NN.Pooling"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.NN.Sampling",
+            moduleReexportName = ModuleName
+              "Torch.Double.NN.Sampling"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.Dynamic.NN",
+            moduleReexportName = ModuleName
+              "Torch.Double.Dynamic.NN"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.Dynamic.NN.Activation",
+            moduleReexportName = ModuleName
+              "Torch.Double.Dynamic.NN.Activation"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.Dynamic.NN.Pooling",
+            moduleReexportName = ModuleName
+              "Torch.Double.Dynamic.NN.Pooling"},
+          ModuleReexport {
+            moduleReexportOriginalPackage =
+            Nothing,
+            moduleReexportOriginalName =
+            ModuleName
+              "Torch.Double.Dynamic.NN.Criterion",
+            moduleReexportName = ModuleName
+              "Torch.Double.Dynamic.NN.Criterion"}],
+        signatures = [],
+        libExposed = True,
+        libVisibility =
+        LibraryVisibilityPublic,
+        libBuildInfo = BuildInfo {
+          buildable = True,
+          buildTools = [],
+          buildToolDepends = [],
+          cppOptions = [],
+          asmOptions = [],
+          cmmOptions = [],
+          ccOptions = [],
+          cxxOptions = [],
+          ldOptions = [],
+          hsc2hsOptions = [],
+          pkgconfigDepends = [],
+          frameworks = [],
+          extraFrameworkDirs = [],
+          asmSources = [],
+          cmmSources = [],
+          cSources = [],
+          cxxSources = [],
+          jsSources = [],
+          hsSourceDirs = [
+            SymbolicPath "utils"],
+          otherModules = [],
+          virtualModules = [],
+          autogenModules = [],
+          defaultLanguage = Just
+            Haskell2010,
+          otherLanguages = [],
+          defaultExtensions = [
+            EnableExtension LambdaCase,
+            EnableExtension DataKinds,
+            EnableExtension TypeFamilies,
+            EnableExtension
+              TypeSynonymInstances,
+            EnableExtension
+              ScopedTypeVariables,
+            EnableExtension
+              FlexibleContexts,
+            EnableExtension CPP],
+          otherExtensions = [],
+          oldExtensions = [],
+          extraLibs = [],
+          extraLibsStatic = [],
+          extraGHCiLibs = [],
+          extraBundledLibs = [],
+          extraLibFlavours = [],
+          extraDynLibFlavours = [],
+          extraLibDirs = [],
+          extraLibDirsStatic = [],
+          includeDirs = [],
+          includes = [],
+          autogenIncludes = [],
+          installIncludes = [],
+          options = PerCompilerFlavor
+            []
+            [],
+          profOptions = PerCompilerFlavor
+            []
+            [],
+          sharedOptions =
+          PerCompilerFlavor [] [],
+          staticOptions =
+          PerCompilerFlavor [] [],
+          customFieldsBI = [],
+          targetBuildDepends = [
+            Dependency
+              (PackageName "base")
+              (IntersectVersionRanges
+                (UnionVersionRanges
+                  (ThisVersion (mkVersion [4, 7]))
+                  (LaterVersion
+                    (mkVersion [4, 7])))
+                (EarlierVersion
+                  (mkVersion [5])))
+              mainLibSet,
+            Dependency
+              (PackageName "dimensions")
+              (UnionVersionRanges
+                (ThisVersion (mkVersion [1, 0]))
+                (LaterVersion
+                  (mkVersion [1, 0])))
+              mainLibSet,
+            Dependency
+              (PackageName "safe-exceptions")
+              (UnionVersionRanges
+                (ThisVersion
+                  (mkVersion [0, 1, 0]))
+                (LaterVersion
+                  (mkVersion [0, 1, 0])))
+              mainLibSet,
+            Dependency
+              (PackageName "singletons")
+              (UnionVersionRanges
+                (ThisVersion (mkVersion [2, 2]))
+                (LaterVersion
+                  (mkVersion [2, 2])))
+              mainLibSet,
+            Dependency
+              (PackageName "text")
+              (UnionVersionRanges
+                (ThisVersion
+                  (mkVersion [1, 2, 2]))
+                (LaterVersion
+                  (mkVersion [1, 2, 2])))
+              mainLibSet,
+            Dependency
+              (PackageName "hasktorch")
+              (OrLaterVersion (mkVersion [0]))
+              (NonEmptySet.fromNonEmpty
+                (NE.fromList
+                  [
+                    LSubLibName
+                      (UnqualComponentName
+                        "hasktorch-cpu")])),
+            Dependency
+              (PackageName "hasktorch-ffi-th")
+              (IntersectVersionRanges
+                (UnionVersionRanges
+                  (ThisVersion
+                    (mkVersion [0, 0, 1]))
+                  (LaterVersion
+                    (mkVersion [0, 0, 1])))
+                (EarlierVersion
+                  (mkVersion [0, 0, 2])))
+              mainLibSet,
+            Dependency
+              (PackageName
+                "hasktorch-types-th")
+              (IntersectVersionRanges
+                (UnionVersionRanges
+                  (ThisVersion
+                    (mkVersion [0, 0, 1]))
+                  (LaterVersion
+                    (mkVersion [0, 0, 1])))
+                (EarlierVersion
+                  (mkVersion [0, 0, 2])))
+              mainLibSet],
+          mixins = []}},
+      condTreeConstraints = [
+        Dependency
+          (PackageName "base")
+          (IntersectVersionRanges
+            (UnionVersionRanges
+              (ThisVersion (mkVersion [4, 7]))
+              (LaterVersion
+                (mkVersion [4, 7])))
+            (EarlierVersion
+              (mkVersion [5])))
+          mainLibSet,
+        Dependency
+          (PackageName "dimensions")
+          (UnionVersionRanges
+            (ThisVersion (mkVersion [1, 0]))
+            (LaterVersion
+              (mkVersion [1, 0])))
+          mainLibSet,
+        Dependency
+          (PackageName "safe-exceptions")
+          (UnionVersionRanges
+            (ThisVersion
+              (mkVersion [0, 1, 0]))
+            (LaterVersion
+              (mkVersion [0, 1, 0])))
+          mainLibSet,
+        Dependency
+          (PackageName "singletons")
+          (UnionVersionRanges
+            (ThisVersion (mkVersion [2, 2]))
+            (LaterVersion
+              (mkVersion [2, 2])))
+          mainLibSet,
+        Dependency
+          (PackageName "text")
+          (UnionVersionRanges
+            (ThisVersion
+              (mkVersion [1, 2, 2]))
+            (LaterVersion
+              (mkVersion [1, 2, 2])))
+          mainLibSet,
+        Dependency
+          (PackageName "hasktorch")
+          (OrLaterVersion (mkVersion [0]))
+          (NonEmptySet.fromNonEmpty
+            (NE.fromList
+              [
+                LSubLibName
+                  (UnqualComponentName
+                    "hasktorch-cpu")])),
+        Dependency
+          (PackageName "hasktorch-ffi-th")
+          (IntersectVersionRanges
+            (UnionVersionRanges
+              (ThisVersion
+                (mkVersion [0, 0, 1]))
+              (LaterVersion
+                (mkVersion [0, 0, 1])))
+            (EarlierVersion
+              (mkVersion [0, 0, 2])))
+          mainLibSet,
+        Dependency
+          (PackageName
+            "hasktorch-types-th")
+          (IntersectVersionRanges
+            (UnionVersionRanges
+              (ThisVersion
+                (mkVersion [0, 0, 1]))
+              (LaterVersion
+                (mkVersion [0, 0, 1])))
+            (EarlierVersion
+              (mkVersion [0, 0, 2])))
+          mainLibSet],
+      condTreeComponents = [
+        CondBranch {
+          condBranchCondition =
+          `CNot (Var (PackageFlag (FlagName "lite")))`,
+          condBranchIfTrue = CondNode {
+            condTreeData = Library {
+              libName = LMainLibName,
+              exposedModules = [],
+              reexportedModules = [
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName "Torch.Byte",
+                  moduleReexportName = ModuleName
+                    "Torch.Byte"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName "Torch.Byte.Dynamic",
+                  moduleReexportName = ModuleName
+                    "Torch.Byte.Dynamic"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName "Torch.Byte.Storage",
+                  moduleReexportName = ModuleName
+                    "Torch.Byte.Storage"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName "Torch.Char",
+                  moduleReexportName = ModuleName
+                    "Torch.Char"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName "Torch.Char.Dynamic",
+                  moduleReexportName = ModuleName
+                    "Torch.Char.Dynamic"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName "Torch.Char.Storage",
+                  moduleReexportName = ModuleName
+                    "Torch.Char.Storage"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName "Torch.Short",
+                  moduleReexportName = ModuleName
+                    "Torch.Short"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Short.Dynamic",
+                  moduleReexportName = ModuleName
+                    "Torch.Short.Dynamic"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Short.Storage",
+                  moduleReexportName = ModuleName
+                    "Torch.Short.Storage"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName "Torch.Int",
+                  moduleReexportName = ModuleName
+                    "Torch.Int"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName "Torch.Int.Dynamic",
+                  moduleReexportName = ModuleName
+                    "Torch.Int.Dynamic"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName "Torch.Int.Storage",
+                  moduleReexportName = ModuleName
+                    "Torch.Int.Storage"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName "Torch.Float",
+                  moduleReexportName = ModuleName
+                    "Torch.Float"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Float.Dynamic",
+                  moduleReexportName = ModuleName
+                    "Torch.Float.Dynamic"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Float.Storage",
+                  moduleReexportName = ModuleName
+                    "Torch.Float.Storage"}],
+              signatures = [],
+              libExposed = True,
+              libVisibility =
+              LibraryVisibilityPublic,
+              libBuildInfo = BuildInfo {
+                buildable = True,
+                buildTools = [],
+                buildToolDepends = [],
+                cppOptions = [],
+                asmOptions = [],
+                cmmOptions = [],
+                ccOptions = [],
+                cxxOptions = [],
+                ldOptions = [],
+                hsc2hsOptions = [],
+                pkgconfigDepends = [],
+                frameworks = [],
+                extraFrameworkDirs = [],
+                asmSources = [],
+                cmmSources = [],
+                cSources = [],
+                cxxSources = [],
+                jsSources = [],
+                hsSourceDirs = [],
+                otherModules = [],
+                virtualModules = [],
+                autogenModules = [],
+                defaultLanguage = Nothing,
+                otherLanguages = [],
+                defaultExtensions = [],
+                otherExtensions = [],
+                oldExtensions = [],
+                extraLibs = [],
+                extraLibsStatic = [],
+                extraGHCiLibs = [],
+                extraBundledLibs = [],
+                extraLibFlavours = [],
+                extraDynLibFlavours = [],
+                extraLibDirs = [],
+                extraLibDirsStatic = [],
+                includeDirs = [],
+                includes = [],
+                autogenIncludes = [],
+                installIncludes = [],
+                options = PerCompilerFlavor
+                  []
+                  [],
+                profOptions = PerCompilerFlavor
+                  []
+                  [],
+                sharedOptions =
+                PerCompilerFlavor [] [],
+                staticOptions =
+                PerCompilerFlavor [] [],
+                customFieldsBI = [],
+                targetBuildDepends = [],
+                mixins = []}},
+            condTreeConstraints = [],
+            condTreeComponents = []},
+          condBranchIfFalse = Nothing},
+        CondBranch {
+          condBranchCondition =
+          `Var (PackageFlag (FlagName "cuda"))`,
+          condBranchIfTrue = CondNode {
+            condTreeData = Library {
+              libName = LMainLibName,
+              exposedModules = [],
+              reexportedModules = [
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName "Torch.Cuda.Long",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Long"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Long.Dynamic",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Long.Dynamic"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Long.Storage",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Long.Storage"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName "Torch.Cuda.Double",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.Dynamic",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.Dynamic"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.Storage",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.Storage"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.NN",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.NN"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.NN.Activation",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.NN.Activation"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.NN.Backprop",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.NN.Backprop"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.NN.Conv1d",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.NN.Conv1d"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.NN.Conv2d",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.NN.Conv2d"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.NN.Criterion",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.NN.Criterion"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.NN.Layers",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.NN.Layers"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.NN.Linear",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.NN.Linear"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.NN.Math",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.NN.Math"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.NN.Padding",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.NN.Padding"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.NN.Pooling",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.NN.Pooling"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.NN.Sampling",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.NN.Sampling"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.Dynamic.NN",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.Dynamic.NN"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.Dynamic.NN.Activation",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.Dynamic.NN.Activation"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.Dynamic.NN.Pooling",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.Dynamic.NN.Pooling"},
+                ModuleReexport {
+                  moduleReexportOriginalPackage =
+                  Nothing,
+                  moduleReexportOriginalName =
+                  ModuleName
+                    "Torch.Cuda.Double.Dynamic.NN.Criterion",
+                  moduleReexportName = ModuleName
+                    "Torch.Cuda.Double.Dynamic.NN.Criterion"}],
+              signatures = [],
+              libExposed = True,
+              libVisibility =
+              LibraryVisibilityPublic,
+              libBuildInfo = BuildInfo {
+                buildable = True,
+                buildTools = [],
+                buildToolDepends = [],
+                cppOptions = [],
+                asmOptions = [],
+                cmmOptions = [],
+                ccOptions = [],
+                cxxOptions = [],
+                ldOptions = [],
+                hsc2hsOptions = [],
+                pkgconfigDepends = [],
+                frameworks = [],
+                extraFrameworkDirs = [],
+                asmSources = [],
+                cmmSources = [],
+                cSources = [],
+                cxxSources = [],
+                jsSources = [],
+                hsSourceDirs = [],
+                otherModules = [],
+                virtualModules = [],
+                autogenModules = [],
+                defaultLanguage = Nothing,
+                otherLanguages = [],
+                defaultExtensions = [],
+                otherExtensions = [],
+                oldExtensions = [],
+                extraLibs = [],
+                extraLibsStatic = [],
+                extraGHCiLibs = [],
+                extraBundledLibs = [],
+                extraLibFlavours = [],
+                extraDynLibFlavours = [],
+                extraLibDirs = [],
+                extraLibDirsStatic = [],
+                includeDirs = [],
+                includes = [],
+                autogenIncludes = [],
+                installIncludes = [],
+                options = PerCompilerFlavor
+                  []
+                  [],
+                profOptions = PerCompilerFlavor
+                  []
+                  [],
+                sharedOptions =
+                PerCompilerFlavor [] [],
+                staticOptions =
+                PerCompilerFlavor [] [],
+                customFieldsBI = [],
+                targetBuildDepends = [
+                  Dependency
+                    (PackageName "hasktorch")
+                    (OrLaterVersion (mkVersion [0]))
+                    (NonEmptySet.fromNonEmpty
+                      (NE.fromList
+                        [
+                          LSubLibName
+                            (UnqualComponentName
+                              "hasktorch-gpu")]))],
+                mixins = []}},
+            condTreeConstraints = [
+              Dependency
+                (PackageName "hasktorch")
+                (OrLaterVersion (mkVersion [0]))
+                (NonEmptySet.fromNonEmpty
+                  (NE.fromList
+                    [
+                      LSubLibName
+                        (UnqualComponentName
+                          "hasktorch-gpu")]))],
+            condTreeComponents = [
+              CondBranch {
+                condBranchCondition =
+                `CNot (Var (PackageFlag (FlagName "lite")))`,
+                condBranchIfTrue = CondNode {
+                  condTreeData = Library {
+                    libName = LMainLibName,
+                    exposedModules = [],
+                    reexportedModules = [
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName "Torch.Cuda.Byte",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Byte"},
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName
+                          "Torch.Cuda.Byte.Dynamic",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Byte.Dynamic"},
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName
+                          "Torch.Cuda.Byte.Storage",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Byte.Storage"},
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName "Torch.Cuda.Char",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Char"},
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName
+                          "Torch.Cuda.Char.Dynamic",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Char.Dynamic"},
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName
+                          "Torch.Cuda.Char.Storage",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Char.Storage"},
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName "Torch.Cuda.Short",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Short"},
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName
+                          "Torch.Cuda.Short.Dynamic",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Short.Dynamic"},
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName
+                          "Torch.Cuda.Short.Storage",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Short.Storage"},
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName "Torch.Cuda.Int",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Int"},
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName
+                          "Torch.Cuda.Int.Dynamic",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Int.Dynamic"},
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName
+                          "Torch.Cuda.Int.Storage",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Int.Storage"},
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName "Torch.Cuda.Float",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Float"},
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName
+                          "Torch.Cuda.Float.Dynamic",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Float.Dynamic"},
+                      ModuleReexport {
+                        moduleReexportOriginalPackage =
+                        Nothing,
+                        moduleReexportOriginalName =
+                        ModuleName
+                          "Torch.Cuda.Float.Storage",
+                        moduleReexportName = ModuleName
+                          "Torch.Cuda.Float.Storage"}],
+                    signatures = [],
+                    libExposed = True,
+                    libVisibility =
+                    LibraryVisibilityPublic,
+                    libBuildInfo = BuildInfo {
+                      buildable = True,
+                      buildTools = [],
+                      buildToolDepends = [],
+                      cppOptions = [],
+                      asmOptions = [],
+                      cmmOptions = [],
+                      ccOptions = [],
+                      cxxOptions = [],
+                      ldOptions = [],
+                      hsc2hsOptions = [],
+                      pkgconfigDepends = [],
+                      frameworks = [],
+                      extraFrameworkDirs = [],
+                      asmSources = [],
+                      cmmSources = [],
+                      cSources = [],
+                      cxxSources = [],
+                      jsSources = [],
+                      hsSourceDirs = [],
+                      otherModules = [],
+                      virtualModules = [],
+                      autogenModules = [],
+                      defaultLanguage = Nothing,
+                      otherLanguages = [],
+                      defaultExtensions = [],
+                      otherExtensions = [],
+                      oldExtensions = [],
+                      extraLibs = [],
+                      extraLibsStatic = [],
+                      extraGHCiLibs = [],
+                      extraBundledLibs = [],
+                      extraLibFlavours = [],
+                      extraDynLibFlavours = [],
+                      extraLibDirs = [],
+                      extraLibDirsStatic = [],
+                      includeDirs = [],
+                      includes = [],
+                      autogenIncludes = [],
+                      installIncludes = [],
+                      options = PerCompilerFlavor
+                        []
+                        [],
+                      profOptions = PerCompilerFlavor
+                        []
+                        [],
+                      sharedOptions =
+                      PerCompilerFlavor [] [],
+                      staticOptions =
+                      PerCompilerFlavor [] [],
+                      customFieldsBI = [],
+                      targetBuildDepends = [],
+                      mixins = []}},
+                  condTreeConstraints = [],
+                  condTreeComponents = []},
+                condBranchIfFalse = Nothing}]},
+          condBranchIfFalse = Nothing}]},
+  condSubLibraries =
+  [
+    _×_
+      (UnqualComponentName
+        "hasktorch-cpu")
+      CondNode {
+        condTreeData =
+        Library {
+          libName = LSubLibName
+            (UnqualComponentName
+              "hasktorch-cpu"),
+          exposedModules = [
+            ModuleName "Torch.Long",
+            ModuleName "Torch.Long.Dynamic",
+            ModuleName "Torch.Long.Storage",
+            ModuleName "Torch.Double",
+            ModuleName
+              "Torch.Double.Dynamic",
+            ModuleName
+              "Torch.Double.Storage"],
+          reexportedModules = [
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName "Torch.Double.NN",
+              moduleReexportName = ModuleName
+                "Torch.Double.NN"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.NN.Activation",
+              moduleReexportName = ModuleName
+                "Torch.Double.NN.Activation"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.NN.Backprop",
+              moduleReexportName = ModuleName
+                "Torch.Double.NN.Backprop"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.NN.Conv1d",
+              moduleReexportName = ModuleName
+                "Torch.Double.NN.Conv1d"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.NN.Conv2d",
+              moduleReexportName = ModuleName
+                "Torch.Double.NN.Conv2d"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.NN.Criterion",
+              moduleReexportName = ModuleName
+                "Torch.Double.NN.Criterion"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.NN.Layers",
+              moduleReexportName = ModuleName
+                "Torch.Double.NN.Layers"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.NN.Linear",
+              moduleReexportName = ModuleName
+                "Torch.Double.NN.Linear"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.NN.Math",
+              moduleReexportName = ModuleName
+                "Torch.Double.NN.Math"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.NN.Padding",
+              moduleReexportName = ModuleName
+                "Torch.Double.NN.Padding"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.NN.Pooling",
+              moduleReexportName = ModuleName
+                "Torch.Double.NN.Pooling"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.NN.Sampling",
+              moduleReexportName = ModuleName
+                "Torch.Double.NN.Sampling"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.Dynamic.NN",
+              moduleReexportName = ModuleName
+                "Torch.Double.Dynamic.NN"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.Dynamic.NN.Activation",
+              moduleReexportName = ModuleName
+                "Torch.Double.Dynamic.NN.Activation"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.Dynamic.NN.Pooling",
+              moduleReexportName = ModuleName
+                "Torch.Double.Dynamic.NN.Pooling"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Double.Dynamic.NN.Criterion",
+              moduleReexportName = ModuleName
+                "Torch.Double.Dynamic.NN.Criterion"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName "Torch.Float.NN",
+              moduleReexportName = ModuleName
+                "Torch.Float.NN"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.NN.Activation",
+              moduleReexportName = ModuleName
+                "Torch.Float.NN.Activation"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.NN.Backprop",
+              moduleReexportName = ModuleName
+                "Torch.Float.NN.Backprop"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.NN.Conv1d",
+              moduleReexportName = ModuleName
+                "Torch.Float.NN.Conv1d"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.NN.Conv2d",
+              moduleReexportName = ModuleName
+                "Torch.Float.NN.Conv2d"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.NN.Criterion",
+              moduleReexportName = ModuleName
+                "Torch.Float.NN.Criterion"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.NN.Layers",
+              moduleReexportName = ModuleName
+                "Torch.Float.NN.Layers"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.NN.Linear",
+              moduleReexportName = ModuleName
+                "Torch.Float.NN.Linear"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.NN.Math",
+              moduleReexportName = ModuleName
+                "Torch.Float.NN.Math"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.NN.Padding",
+              moduleReexportName = ModuleName
+                "Torch.Float.NN.Padding"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.NN.Pooling",
+              moduleReexportName = ModuleName
+                "Torch.Float.NN.Pooling"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.NN.Sampling",
+              moduleReexportName = ModuleName
+                "Torch.Float.NN.Sampling"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.Dynamic.NN",
+              moduleReexportName = ModuleName
+                "Torch.Float.Dynamic.NN"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.Dynamic.NN.Activation",
+              moduleReexportName = ModuleName
+                "Torch.Float.Dynamic.NN.Activation"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.Dynamic.NN.Pooling",
+              moduleReexportName = ModuleName
+                "Torch.Float.Dynamic.NN.Pooling"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Float.Dynamic.NN.Criterion",
+              moduleReexportName = ModuleName
+                "Torch.Float.Dynamic.NN.Criterion"}],
+          signatures = [],
+          libExposed = True,
+          libVisibility =
+          LibraryVisibilityPrivate,
+          libBuildInfo =
+          BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [
+              SymbolicPath "utils",
+              SymbolicPath "src"],
+            otherModules = [
+              ModuleName
+                "Torch.Core.Exceptions",
+              ModuleName "Torch.Core.Random",
+              ModuleName "Torch.Core.LogAdd"],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Just
+              Haskell2010,
+            otherLanguages = [],
+            defaultExtensions = [
+              EnableExtension LambdaCase,
+              EnableExtension DataKinds,
+              EnableExtension TypeFamilies,
+              EnableExtension
+                TypeSynonymInstances,
+              EnableExtension
+                ScopedTypeVariables,
+              EnableExtension
+                FlexibleContexts,
+              EnableExtension CPP],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [
+              Dependency
+                (PackageName "base")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion (mkVersion [4, 7]))
+                    (LaterVersion
+                      (mkVersion [4, 7])))
+                  (EarlierVersion
+                    (mkVersion [5])))
+                mainLibSet,
+              Dependency
+                (PackageName
+                  "hasktorch-types-th")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion
+                      (mkVersion [0, 0, 1]))
+                    (LaterVersion
+                      (mkVersion [0, 0, 1])))
+                  (EarlierVersion
+                    (mkVersion [0, 0, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName "dimensions")
+                (UnionVersionRanges
+                  (ThisVersion (mkVersion [1, 0]))
+                  (LaterVersion
+                    (mkVersion [1, 0])))
+                mainLibSet,
+              Dependency
+                (PackageName "hasktorch-ffi-th")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion
+                      (mkVersion [0, 0, 1]))
+                    (LaterVersion
+                      (mkVersion [0, 0, 1])))
+                  (EarlierVersion
+                    (mkVersion [0, 0, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName
+                  "hasktorch-types-th")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion
+                      (mkVersion [0, 0, 1]))
+                    (LaterVersion
+                      (mkVersion [0, 0, 1])))
+                  (EarlierVersion
+                    (mkVersion [0, 0, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName "safe-exceptions")
+                (UnionVersionRanges
+                  (ThisVersion
+                    (mkVersion [0, 1, 0]))
+                  (LaterVersion
+                    (mkVersion [0, 1, 0])))
+                mainLibSet,
+              Dependency
+                (PackageName "singletons")
+                (UnionVersionRanges
+                  (ThisVersion (mkVersion [2, 2]))
+                  (LaterVersion
+                    (mkVersion [2, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName "text")
+                (UnionVersionRanges
+                  (ThisVersion
+                    (mkVersion [1, 2, 2]))
+                  (LaterVersion
+                    (mkVersion [1, 2, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName "hasktorch")
+                (OrLaterVersion (mkVersion [0]))
+                (NonEmptySet.fromNonEmpty
+                  (NE.fromList
+                    [
+                      LSubLibName
+                        (UnqualComponentName
+                          "hasktorch-indef-floating")])),
+              Dependency
+                (PackageName "hasktorch")
+                (OrLaterVersion (mkVersion [0]))
+                (NonEmptySet.fromNonEmpty
+                  (NE.fromList
+                    [
+                      LSubLibName
+                        (UnqualComponentName
+                          "hasktorch-indef-signed")]))],
+            mixins =
+            [
+              Mixin {
+                mixinPackageName = PackageName
+                  "hasktorch",
+                mixinLibraryName = LSubLibName
+                  (UnqualComponentName
+                    "hasktorch-indef-signed"),
+                mixinIncludeRenaming =
+                IncludeRenaming {
+                  includeProvidesRn =
+                  ModuleRenaming
+                    [
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Storage")
+                        (ModuleName
+                          "Torch.Indef.Long.Storage"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Storage.Copy")
+                        (ModuleName
+                          "Torch.Indef.Long.Storage.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Copy")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Index")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.Index"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Masked")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.Masked"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.Math"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.Math.Compare"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.Math.CompareT"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.Math.Pairwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.Math.Pointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.Math.Reduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.Math.Scan"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Mode")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.Mode"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.ScatterGather"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Sort")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.Sort"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.TopK")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.TopK"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Copy")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Index")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.Index"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Masked")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.Masked"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.Math"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.Math.Compare"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.Math.CompareT"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.Math.Pairwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.Math.Pointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.Math.Reduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.Math.Scan"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Mode")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.Mode"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.ScatterGather"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Sort")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.Sort"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.TopK")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.TopK"),
+                      _×_
+                        (ModuleName "Torch.Indef.Types")
+                        (ModuleName "Torch.Long.Types"),
+                      _×_
+                        (ModuleName "Torch.Indef.Index")
+                        (ModuleName "Torch.Long.Index"),
+                      _×_
+                        (ModuleName "Torch.Indef.Mask")
+                        (ModuleName "Torch.Long.Mask"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.Indef.Long.Tensor.Math.Pointwise.Signed"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.Indef.Long.Dynamic.Tensor.Math.Pointwise.Signed")],
+                  includeRequiresRn =
+                  ModuleRenaming
+                    [
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Index.Tensor")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Index.TensorFree")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.FreeTensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Mask.Tensor")
+                        (ModuleName
+                          "Torch.FFI.TH.Byte.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Mask.TensorFree")
+                        (ModuleName
+                          "Torch.FFI.TH.Byte.FreeTensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Mask.MathReduce")
+                        (ModuleName
+                          "Torch.FFI.TH.Byte.TensorMath"),
+                      _×_
+                        (ModuleName "Torch.Sig.State")
+                        (ModuleName "Torch.Types.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Types.Global")
+                        (ModuleName "Torch.Types.TH"),
+                      _×_
+                        (ModuleName "Torch.Sig.Types")
+                        (ModuleName
+                          "Torch.Types.TH.Long"),
+                      _×_
+                        (ModuleName "Torch.Sig.Storage")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.Storage"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Storage.Copy")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.StorageCopy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Storage.Memory")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.FreeStorage"),
+                      _×_
+                        (ModuleName "Torch.Sig.Tensor")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Copy")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorCopy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Memory")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.FreeTensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Index")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Masked")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Mode")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Sort")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.TopK")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.TensorMath")]}},
+              Mixin {
+                mixinPackageName = PackageName
+                  "hasktorch",
+                mixinLibraryName = LSubLibName
+                  (UnqualComponentName
+                    "hasktorch-indef-floating"),
+                mixinIncludeRenaming =
+                IncludeRenaming {
+                  includeProvidesRn =
+                  ModuleRenaming
+                    [
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Storage")
+                        (ModuleName
+                          "Torch.Indef.Double.Storage"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Storage.Copy")
+                        (ModuleName
+                          "Torch.Indef.Double.Storage.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Copy")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Index")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Index"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Masked")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Masked"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Compare"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.CompareT"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Pairwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Pointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Reduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Scan"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Mode")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Mode"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.ScatterGather"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Sort")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Sort"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.TopK")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.TopK"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Copy")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Index")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Index"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Masked")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Masked"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Compare"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.CompareT"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Pairwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Pointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Reduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Scan"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Mode")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Mode"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.ScatterGather"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Sort")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Sort"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.TopK")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.TopK"),
+                      _×_
+                        (ModuleName "Torch.Indef.Types")
+                        (ModuleName
+                          "Torch.Double.Types"),
+                      _×_
+                        (ModuleName "Torch.Indef.Index")
+                        (ModuleName
+                          "Torch.Double.Index"),
+                      _×_
+                        (ModuleName "Torch.Indef.Mask")
+                        (ModuleName
+                          "Torch.Double.Mask"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Pointwise.Signed"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Pointwise.Signed"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Blas")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Blas"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Lapack")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Lapack"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Floating")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Pointwise.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Reduce.Floating")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Reduce.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Floating")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Blas")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Blas"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Lapack")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Lapack"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pointwise.Floating")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Pointwise.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Reduce.Floating")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Reduce.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Floating")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Random.TH")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Random.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Random.TH")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Random.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Random.TH")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Random.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Random.TH")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Random.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Random.THC")
+                        (ModuleName
+                          "Torch.Undefined.Double.Tensor.Random.THC"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Storage")
+                        (ModuleName
+                          "Torch.Indef.Double.Storage"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Storage.Copy")
+                        (ModuleName
+                          "Torch.Indef.Double.Storage.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Copy")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Index")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Index"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Masked")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Masked"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Compare"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.CompareT"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Pairwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Pointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Reduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Scan"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Mode")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Mode"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.ScatterGather"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Sort")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Sort"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.TopK")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.TopK"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Copy")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Index")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Index"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Masked")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Masked"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Compare"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.CompareT"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Pairwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Pointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Reduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Scan"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Mode")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Mode"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.ScatterGather"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Sort")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Sort"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.TopK")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.TopK"),
+                      _×_
+                        (ModuleName "Torch.Indef.Types")
+                        (ModuleName
+                          "Torch.Double.Types"),
+                      _×_
+                        (ModuleName "Torch.Indef.Index")
+                        (ModuleName
+                          "Torch.Double.Index"),
+                      _×_
+                        (ModuleName "Torch.Indef.Mask")
+                        (ModuleName
+                          "Torch.Double.Mask"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.Indef.Double.Tensor.Math.Pointwise.Signed"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.Indef.Double.Dynamic.Tensor.Math.Pointwise.Signed"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.NN")
+                        (ModuleName
+                          "Torch.Double.Dynamic.NN"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.NN.Activation")
+                        (ModuleName
+                          "Torch.Double.Dynamic.NN.Activation"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.NN.Pooling")
+                        (ModuleName
+                          "Torch.Double.Dynamic.NN.Pooling"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.NN.Criterion")
+                        (ModuleName
+                          "Torch.Double.Dynamic.NN.Criterion"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN")
+                        (ModuleName "Torch.Double.NN"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN")
+                        (ModuleName "Torch.Double.NN"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Activation")
+                        (ModuleName
+                          "Torch.Double.NN.Activation"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Backprop")
+                        (ModuleName
+                          "Torch.Double.NN.Backprop"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Conv1d")
+                        (ModuleName
+                          "Torch.Double.NN.Conv1d"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Conv2d")
+                        (ModuleName
+                          "Torch.Double.NN.Conv2d"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Criterion")
+                        (ModuleName
+                          "Torch.Double.NN.Criterion"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Layers")
+                        (ModuleName
+                          "Torch.Double.NN.Layers"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Linear")
+                        (ModuleName
+                          "Torch.Double.NN.Linear"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Math")
+                        (ModuleName
+                          "Torch.Double.NN.Math"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Padding")
+                        (ModuleName
+                          "Torch.Double.NN.Padding"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Pooling")
+                        (ModuleName
+                          "Torch.Double.NN.Pooling"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Sampling")
+                        (ModuleName
+                          "Torch.Double.NN.Sampling")],
+                  includeRequiresRn =
+                  ModuleRenaming
+                    [
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Index.Tensor")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Index.TensorFree")
+                        (ModuleName
+                          "Torch.FFI.TH.Long.FreeTensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Mask.Tensor")
+                        (ModuleName
+                          "Torch.FFI.TH.Byte.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Mask.TensorFree")
+                        (ModuleName
+                          "Torch.FFI.TH.Byte.FreeTensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Mask.MathReduce")
+                        (ModuleName
+                          "Torch.FFI.TH.Byte.TensorMath"),
+                      _×_
+                        (ModuleName "Torch.Sig.State")
+                        (ModuleName "Torch.Types.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Types.Global")
+                        (ModuleName "Torch.Types.TH"),
+                      _×_
+                        (ModuleName "Torch.Sig.Types")
+                        (ModuleName
+                          "Torch.Types.TH.Double"),
+                      _×_
+                        (ModuleName "Torch.Sig.Storage")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.Storage"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Storage.Copy")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.StorageCopy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Storage.Memory")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.FreeStorage"),
+                      _×_
+                        (ModuleName "Torch.Sig.Tensor")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Copy")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorCopy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Memory")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.FreeTensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Index")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Masked")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Mode")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Sort")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.TopK")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pointwise.Floating")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Reduce.Floating")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Floating")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Blas")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Lapack")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorLapack"),
+                      _×_
+                        (ModuleName "Torch.Sig.NN")
+                        (ModuleName
+                          "Torch.FFI.TH.NN.Double"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Types.NN")
+                        (ModuleName "Torch.Types.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Random.TH")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Random.TH")
+                        (ModuleName
+                          "Torch.FFI.TH.Double.TensorRandom"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Random.THC")
+                        (ModuleName
+                          "Torch.Undefined.Double.Tensor.Random.THC")]}}]}},
+        condTreeConstraints = [
+          Dependency
+            (PackageName "base")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion (mkVersion [4, 7]))
+                (LaterVersion
+                  (mkVersion [4, 7])))
+              (EarlierVersion
+                (mkVersion [5])))
+            mainLibSet,
+          Dependency
+            (PackageName
+              "hasktorch-types-th")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion
+                  (mkVersion [0, 0, 1]))
+                (LaterVersion
+                  (mkVersion [0, 0, 1])))
+              (EarlierVersion
+                (mkVersion [0, 0, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName "dimensions")
+            (UnionVersionRanges
+              (ThisVersion (mkVersion [1, 0]))
+              (LaterVersion
+                (mkVersion [1, 0])))
+            mainLibSet,
+          Dependency
+            (PackageName "hasktorch-ffi-th")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion
+                  (mkVersion [0, 0, 1]))
+                (LaterVersion
+                  (mkVersion [0, 0, 1])))
+              (EarlierVersion
+                (mkVersion [0, 0, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName
+              "hasktorch-types-th")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion
+                  (mkVersion [0, 0, 1]))
+                (LaterVersion
+                  (mkVersion [0, 0, 1])))
+              (EarlierVersion
+                (mkVersion [0, 0, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName "safe-exceptions")
+            (UnionVersionRanges
+              (ThisVersion
+                (mkVersion [0, 1, 0]))
+              (LaterVersion
+                (mkVersion [0, 1, 0])))
+            mainLibSet,
+          Dependency
+            (PackageName "singletons")
+            (UnionVersionRanges
+              (ThisVersion (mkVersion [2, 2]))
+              (LaterVersion
+                (mkVersion [2, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName "text")
+            (UnionVersionRanges
+              (ThisVersion
+                (mkVersion [1, 2, 2]))
+              (LaterVersion
+                (mkVersion [1, 2, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName "hasktorch")
+            (OrLaterVersion (mkVersion [0]))
+            (NonEmptySet.fromNonEmpty
+              (NE.fromList
+                [
+                  LSubLibName
+                    (UnqualComponentName
+                      "hasktorch-indef-floating")])),
+          Dependency
+            (PackageName "hasktorch")
+            (OrLaterVersion (mkVersion [0]))
+            (NonEmptySet.fromNonEmpty
+              (NE.fromList
+                [
+                  LSubLibName
+                    (UnqualComponentName
+                      "hasktorch-indef-signed")]))],
+        condTreeComponents =
+        [
+          CondBranch {
+            condBranchCondition =
+            `Var (PackageFlag (FlagName "lite"))`,
+            condBranchIfTrue = CondNode {
+              condTreeData = Library {
+                libName = LSubLibName
+                  (UnqualComponentName
+                    "hasktorch-cpu"),
+                exposedModules = [],
+                reexportedModules = [],
+                signatures = [],
+                libExposed = True,
+                libVisibility =
+                LibraryVisibilityPrivate,
+                libBuildInfo = BuildInfo {
+                  buildable = True,
+                  buildTools = [],
+                  buildToolDepends = [],
+                  cppOptions = [],
+                  asmOptions = [],
+                  cmmOptions = [],
+                  ccOptions = [],
+                  cxxOptions = [],
+                  ldOptions = [],
+                  hsc2hsOptions = [],
+                  pkgconfigDepends = [],
+                  frameworks = [],
+                  extraFrameworkDirs = [],
+                  asmSources = [],
+                  cmmSources = [],
+                  cSources = [],
+                  cxxSources = [],
+                  jsSources = [],
+                  hsSourceDirs = [],
+                  otherModules = [],
+                  virtualModules = [],
+                  autogenModules = [],
+                  defaultLanguage = Nothing,
+                  otherLanguages = [],
+                  defaultExtensions = [],
+                  otherExtensions = [],
+                  oldExtensions = [],
+                  extraLibs = [],
+                  extraLibsStatic = [],
+                  extraGHCiLibs = [],
+                  extraBundledLibs = [],
+                  extraLibFlavours = [],
+                  extraDynLibFlavours = [],
+                  extraLibDirs = [],
+                  extraLibDirsStatic = [],
+                  includeDirs = [],
+                  includes = [],
+                  autogenIncludes = [],
+                  installIncludes = [],
+                  options = PerCompilerFlavor
+                    []
+                    [],
+                  profOptions = PerCompilerFlavor
+                    []
+                    [],
+                  sharedOptions =
+                  PerCompilerFlavor [] [],
+                  staticOptions =
+                  PerCompilerFlavor [] [],
+                  customFieldsBI = [],
+                  targetBuildDepends = [],
+                  mixins = []}},
+              condTreeConstraints = [],
+              condTreeComponents = []},
+            condBranchIfFalse =
+            Just
+              CondNode {
+                condTreeData =
+                Library {
+                  libName = LSubLibName
+                    (UnqualComponentName
+                      "hasktorch-cpu"),
+                  exposedModules = [
+                    ModuleName "Torch.Byte",
+                    ModuleName "Torch.Byte.Dynamic",
+                    ModuleName "Torch.Byte.Storage",
+                    ModuleName "Torch.Char",
+                    ModuleName "Torch.Char.Dynamic",
+                    ModuleName "Torch.Char.Storage",
+                    ModuleName "Torch.Short",
+                    ModuleName
+                      "Torch.Short.Dynamic",
+                    ModuleName
+                      "Torch.Short.Storage",
+                    ModuleName "Torch.Int",
+                    ModuleName "Torch.Int.Dynamic",
+                    ModuleName "Torch.Int.Storage",
+                    ModuleName "Torch.Float",
+                    ModuleName
+                      "Torch.Float.Dynamic",
+                    ModuleName
+                      "Torch.Float.Storage"],
+                  reexportedModules = [],
+                  signatures = [],
+                  libExposed = True,
+                  libVisibility =
+                  LibraryVisibilityPrivate,
+                  libBuildInfo =
+                  BuildInfo {
+                    buildable = True,
+                    buildTools = [],
+                    buildToolDepends = [],
+                    cppOptions = [],
+                    asmOptions = [],
+                    cmmOptions = [],
+                    ccOptions = [],
+                    cxxOptions = [],
+                    ldOptions = [],
+                    hsc2hsOptions = [],
+                    pkgconfigDepends = [],
+                    frameworks = [],
+                    extraFrameworkDirs = [],
+                    asmSources = [],
+                    cmmSources = [],
+                    cSources = [],
+                    cxxSources = [],
+                    jsSources = [],
+                    hsSourceDirs = [],
+                    otherModules = [],
+                    virtualModules = [],
+                    autogenModules = [],
+                    defaultLanguage = Nothing,
+                    otherLanguages = [],
+                    defaultExtensions = [],
+                    otherExtensions = [],
+                    oldExtensions = [],
+                    extraLibs = [],
+                    extraLibsStatic = [],
+                    extraGHCiLibs = [],
+                    extraBundledLibs = [],
+                    extraLibFlavours = [],
+                    extraDynLibFlavours = [],
+                    extraLibDirs = [],
+                    extraLibDirsStatic = [],
+                    includeDirs = [],
+                    includes = [],
+                    autogenIncludes = [],
+                    installIncludes = [],
+                    options = PerCompilerFlavor
+                      []
+                      [],
+                    profOptions = PerCompilerFlavor
+                      []
+                      [],
+                    sharedOptions =
+                    PerCompilerFlavor [] [],
+                    staticOptions =
+                    PerCompilerFlavor [] [],
+                    customFieldsBI = [],
+                    targetBuildDepends = [
+                      Dependency
+                        (PackageName "hasktorch")
+                        (OrLaterVersion (mkVersion [0]))
+                        (NonEmptySet.fromNonEmpty
+                          (NE.fromList
+                            [
+                              LSubLibName
+                                (UnqualComponentName
+                                  "hasktorch-indef-unsigned")]))],
+                    mixins =
+                    [
+                      Mixin {
+                        mixinPackageName = PackageName
+                          "hasktorch",
+                        mixinLibraryName = LSubLibName
+                          (UnqualComponentName
+                            "hasktorch-indef-unsigned"),
+                        mixinIncludeRenaming =
+                        IncludeRenaming {
+                          includeProvidesRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Storage.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Tensor.TopK"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Byte.Dynamic.Tensor.TopK"),
+                              _×_
+                                (ModuleName "Torch.Indef.Types")
+                                (ModuleName "Torch.Byte.Types"),
+                              _×_
+                                (ModuleName "Torch.Indef.Index")
+                                (ModuleName "Torch.Byte.Index"),
+                              _×_
+                                (ModuleName "Torch.Indef.Mask")
+                                (ModuleName "Torch.Byte.Mask")],
+                          includeRequiresRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Long.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.TH.Long.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.MathReduce")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName "Torch.Sig.State")
+                                (ModuleName "Torch.Types.TH"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Types.Global")
+                                (ModuleName "Torch.Types.TH"),
+                              _×_
+                                (ModuleName "Torch.Sig.Types")
+                                (ModuleName
+                                  "Torch.Types.TH.Byte"),
+                              _×_
+                                (ModuleName "Torch.Sig.Storage")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Copy")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.StorageCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Memory")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.FreeStorage"),
+                              _×_
+                                (ModuleName "Torch.Sig.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Memory")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Index")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath")]}},
+                      Mixin {
+                        mixinPackageName = PackageName
+                          "hasktorch",
+                        mixinLibraryName = LSubLibName
+                          (UnqualComponentName
+                            "hasktorch-indef-unsigned"),
+                        mixinIncludeRenaming =
+                        IncludeRenaming {
+                          includeProvidesRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage")
+                                (ModuleName
+                                  "Torch.Indef.Char.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Char.Storage.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Char.Tensor.TopK"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Char.Dynamic.Tensor.TopK"),
+                              _×_
+                                (ModuleName "Torch.Indef.Types")
+                                (ModuleName "Torch.Char.Types"),
+                              _×_
+                                (ModuleName "Torch.Indef.Index")
+                                (ModuleName "Torch.Char.Index"),
+                              _×_
+                                (ModuleName "Torch.Indef.Mask")
+                                (ModuleName "Torch.Char.Mask")],
+                          includeRequiresRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Long.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.TH.Long.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.MathReduce")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName "Torch.Sig.State")
+                                (ModuleName "Torch.Types.TH"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Types.Global")
+                                (ModuleName "Torch.Types.TH"),
+                              _×_
+                                (ModuleName "Torch.Sig.Types")
+                                (ModuleName
+                                  "Torch.Types.TH.Char"),
+                              _×_
+                                (ModuleName "Torch.Sig.Storage")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Copy")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.StorageCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Memory")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.FreeStorage"),
+                              _×_
+                                (ModuleName "Torch.Sig.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.TensorCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Memory")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Index")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.FFI.TH.Char.TensorMath")]}},
+                      Mixin {
+                        mixinPackageName = PackageName
+                          "hasktorch",
+                        mixinLibraryName = LSubLibName
+                          (UnqualComponentName
+                            "hasktorch-indef-signed"),
+                        mixinIncludeRenaming =
+                        IncludeRenaming {
+                          includeProvidesRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage")
+                                (ModuleName
+                                  "Torch.Indef.Short.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Short.Storage.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.TopK"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.TopK"),
+                              _×_
+                                (ModuleName "Torch.Indef.Types")
+                                (ModuleName
+                                  "Torch.Short.Types"),
+                              _×_
+                                (ModuleName "Torch.Indef.Index")
+                                (ModuleName
+                                  "Torch.Short.Index"),
+                              _×_
+                                (ModuleName "Torch.Indef.Mask")
+                                (ModuleName "Torch.Short.Mask"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.Indef.Short.Tensor.Math.Pointwise.Signed"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.Indef.Short.Dynamic.Tensor.Math.Pointwise.Signed")],
+                          includeRequiresRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Long.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.TH.Long.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.MathReduce")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName "Torch.Sig.State")
+                                (ModuleName "Torch.Types.TH"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Types.Global")
+                                (ModuleName "Torch.Types.TH"),
+                              _×_
+                                (ModuleName "Torch.Sig.Types")
+                                (ModuleName
+                                  "Torch.Types.TH.Short"),
+                              _×_
+                                (ModuleName "Torch.Sig.Storage")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Copy")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.StorageCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Memory")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.FreeStorage"),
+                              _×_
+                                (ModuleName "Torch.Sig.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Memory")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Index")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.FFI.TH.Short.TensorMath")]}},
+                      Mixin {
+                        mixinPackageName = PackageName
+                          "hasktorch",
+                        mixinLibraryName = LSubLibName
+                          (UnqualComponentName
+                            "hasktorch-indef-signed"),
+                        mixinIncludeRenaming =
+                        IncludeRenaming {
+                          includeProvidesRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage")
+                                (ModuleName
+                                  "Torch.Indef.Int.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Int.Storage.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.TopK"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.TopK"),
+                              _×_
+                                (ModuleName "Torch.Indef.Types")
+                                (ModuleName "Torch.Int.Types"),
+                              _×_
+                                (ModuleName "Torch.Indef.Index")
+                                (ModuleName "Torch.Int.Index"),
+                              _×_
+                                (ModuleName "Torch.Indef.Mask")
+                                (ModuleName "Torch.Int.Mask"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.Indef.Int.Tensor.Math.Pointwise.Signed"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.Indef.Int.Dynamic.Tensor.Math.Pointwise.Signed")],
+                          includeRequiresRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Long.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.TH.Long.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.MathReduce")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName "Torch.Sig.State")
+                                (ModuleName "Torch.Types.TH"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Types.Global")
+                                (ModuleName "Torch.Types.TH"),
+                              _×_
+                                (ModuleName "Torch.Sig.Types")
+                                (ModuleName
+                                  "Torch.Types.TH.Int"),
+                              _×_
+                                (ModuleName "Torch.Sig.Storage")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Copy")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.StorageCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Memory")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.FreeStorage"),
+                              _×_
+                                (ModuleName "Torch.Sig.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Memory")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Index")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.FFI.TH.Int.TensorMath")]}},
+                      Mixin {
+                        mixinPackageName = PackageName
+                          "hasktorch",
+                        mixinLibraryName = LSubLibName
+                          (UnqualComponentName
+                            "hasktorch-indef-floating"),
+                        mixinIncludeRenaming =
+                        IncludeRenaming {
+                          includeProvidesRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage")
+                                (ModuleName
+                                  "Torch.Indef.Float.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Float.Storage.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.TopK"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.TopK"),
+                              _×_
+                                (ModuleName "Torch.Indef.Types")
+                                (ModuleName
+                                  "Torch.Float.Types"),
+                              _×_
+                                (ModuleName "Torch.Indef.Index")
+                                (ModuleName
+                                  "Torch.Float.Index"),
+                              _×_
+                                (ModuleName "Torch.Indef.Mask")
+                                (ModuleName "Torch.Float.Mask"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Pointwise.Signed"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Pointwise.Signed"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Blas")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Blas"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Lapack")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Lapack"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Floating")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Pointwise.Floating"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Reduce.Floating")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Reduce.Floating"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Floating")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Floating"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Blas")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Blas"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Lapack")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Lapack"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise.Floating")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Pointwise.Floating"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Reduce.Floating")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Reduce.Floating"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Floating")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Floating"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Random.TH")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Random.TH"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Random.TH")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Random.TH"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Random.TH")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Random.TH"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Random.TH")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Random.TH"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Undefined.Tensor.Random.THC")
+                                (ModuleName
+                                  "Torch.Undefined.Float.Tensor.Random.THC"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage")
+                                (ModuleName
+                                  "Torch.Indef.Float.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Float.Storage.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.TopK"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.TopK"),
+                              _×_
+                                (ModuleName "Torch.Indef.Types")
+                                (ModuleName
+                                  "Torch.Float.Types"),
+                              _×_
+                                (ModuleName "Torch.Indef.Index")
+                                (ModuleName
+                                  "Torch.Float.Index"),
+                              _×_
+                                (ModuleName "Torch.Indef.Mask")
+                                (ModuleName "Torch.Float.Mask"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.Indef.Float.Tensor.Math.Pointwise.Signed"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.Indef.Float.Dynamic.Tensor.Math.Pointwise.Signed"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.NN")
+                                (ModuleName
+                                  "Torch.Float.Dynamic.NN"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.NN.Activation")
+                                (ModuleName
+                                  "Torch.Float.Dynamic.NN.Activation"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.NN.Pooling")
+                                (ModuleName
+                                  "Torch.Float.Dynamic.NN.Pooling"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.NN.Criterion")
+                                (ModuleName
+                                  "Torch.Float.Dynamic.NN.Criterion"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.NN")
+                                (ModuleName "Torch.Float.NN"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.NN")
+                                (ModuleName "Torch.Float.NN"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.NN.Activation")
+                                (ModuleName
+                                  "Torch.Float.NN.Activation"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.NN.Backprop")
+                                (ModuleName
+                                  "Torch.Float.NN.Backprop"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.NN.Conv1d")
+                                (ModuleName
+                                  "Torch.Float.NN.Conv1d"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.NN.Conv2d")
+                                (ModuleName
+                                  "Torch.Float.NN.Conv2d"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.NN.Criterion")
+                                (ModuleName
+                                  "Torch.Float.NN.Criterion"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.NN.Layers")
+                                (ModuleName
+                                  "Torch.Float.NN.Layers"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.NN.Linear")
+                                (ModuleName
+                                  "Torch.Float.NN.Linear"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.NN.Math")
+                                (ModuleName
+                                  "Torch.Float.NN.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.NN.Padding")
+                                (ModuleName
+                                  "Torch.Float.NN.Padding"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.NN.Pooling")
+                                (ModuleName
+                                  "Torch.Float.NN.Pooling"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.NN.Sampling")
+                                (ModuleName
+                                  "Torch.Float.NN.Sampling")],
+                          includeRequiresRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Long.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.TH.Long.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.MathReduce")
+                                (ModuleName
+                                  "Torch.FFI.TH.Byte.TensorMath"),
+                              _×_
+                                (ModuleName "Torch.Sig.State")
+                                (ModuleName "Torch.Types.TH"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Types.Global")
+                                (ModuleName "Torch.Types.TH"),
+                              _×_
+                                (ModuleName "Torch.Sig.Types")
+                                (ModuleName
+                                  "Torch.Types.TH.Float"),
+                              _×_
+                                (ModuleName "Torch.Sig.Storage")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Copy")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.StorageCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Memory")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.FreeStorage"),
+                              _×_
+                                (ModuleName "Torch.Sig.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Memory")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.FreeTensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Index")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise.Floating")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Reduce.Floating")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Floating")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Blas")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Lapack")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorLapack"),
+                              _×_
+                                (ModuleName "Torch.Sig.NN")
+                                (ModuleName
+                                  "Torch.FFI.TH.NN.Float"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Types.NN")
+                                (ModuleName "Torch.Types.TH"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Random.TH")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Random.TH")
+                                (ModuleName
+                                  "Torch.FFI.TH.Float.TensorRandom"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Random.THC")
+                                (ModuleName
+                                  "Torch.Undefined.Float.Tensor.Random.THC")]}}]}},
+                condTreeConstraints = [
+                  Dependency
+                    (PackageName "hasktorch")
+                    (OrLaterVersion (mkVersion [0]))
+                    (NonEmptySet.fromNonEmpty
+                      (NE.fromList
+                        [
+                          LSubLibName
+                            (UnqualComponentName
+                              "hasktorch-indef-unsigned")]))],
+                condTreeComponents = []}}]},
+    _×_
+      (UnqualComponentName
+        "hasktorch-gpu")
+      CondNode {
+        condTreeData =
+        Library {
+          libName = LSubLibName
+            (UnqualComponentName
+              "hasktorch-gpu"),
+          exposedModules = [
+            ModuleName "Torch.Cuda.Long",
+            ModuleName
+              "Torch.Cuda.Long.Dynamic",
+            ModuleName
+              "Torch.Cuda.Long.Storage",
+            ModuleName "Torch.Cuda.Double",
+            ModuleName
+              "Torch.Cuda.Double.Dynamic",
+            ModuleName
+              "Torch.Cuda.Double.Storage"],
+          reexportedModules = [
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.NN",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.NN"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.NN.Activation",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.NN.Activation"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.NN.Backprop",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.NN.Backprop"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.NN.Conv1d",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.NN.Conv1d"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.NN.Conv2d",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.NN.Conv2d"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.NN.Criterion",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.NN.Criterion"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.NN.Layers",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.NN.Layers"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.NN.Linear",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.NN.Linear"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.NN.Math",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.NN.Math"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.NN.Padding",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.NN.Padding"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.NN.Pooling",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.NN.Pooling"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.NN.Sampling",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.NN.Sampling"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.Dynamic.NN",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.Dynamic.NN"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.Dynamic.NN.Activation",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.Dynamic.NN.Activation"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.Dynamic.NN.Pooling",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.Dynamic.NN.Pooling"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Cuda.Double.Dynamic.NN.Criterion",
+              moduleReexportName = ModuleName
+                "Torch.Cuda.Double.Dynamic.NN.Criterion"}],
+          signatures = [],
+          libExposed = True,
+          libVisibility =
+          LibraryVisibilityPrivate,
+          libBuildInfo =
+          BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [
+              "-DCUDA",
+              "-DHASKTORCH_INTERNAL_CUDA"],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [
+              SymbolicPath "utils",
+              SymbolicPath "src"],
+            otherModules = [
+              ModuleName
+                "Torch.Core.Exceptions",
+              ModuleName "Torch.Core.Random",
+              ModuleName "Torch.Core.LogAdd"],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Just
+              Haskell2010,
+            otherLanguages = [],
+            defaultExtensions = [
+              EnableExtension LambdaCase,
+              EnableExtension DataKinds,
+              EnableExtension TypeFamilies,
+              EnableExtension
+                TypeSynonymInstances,
+              EnableExtension
+                ScopedTypeVariables,
+              EnableExtension
+                FlexibleContexts,
+              EnableExtension CPP],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [
+              Dependency
+                (PackageName "base")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion (mkVersion [4, 7]))
+                    (LaterVersion
+                      (mkVersion [4, 7])))
+                  (EarlierVersion
+                    (mkVersion [5])))
+                mainLibSet,
+              Dependency
+                (PackageName
+                  "hasktorch-types-th")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion
+                      (mkVersion [0, 0, 1]))
+                    (LaterVersion
+                      (mkVersion [0, 0, 1])))
+                  (EarlierVersion
+                    (mkVersion [0, 0, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName "dimensions")
+                (UnionVersionRanges
+                  (ThisVersion (mkVersion [1, 0]))
+                  (LaterVersion
+                    (mkVersion [1, 0])))
+                mainLibSet,
+              Dependency
+                (PackageName "hasktorch-ffi-th")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion
+                      (mkVersion [0, 0, 1]))
+                    (LaterVersion
+                      (mkVersion [0, 0, 1])))
+                  (EarlierVersion
+                    (mkVersion [0, 0, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName
+                  "hasktorch-types-th")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion
+                      (mkVersion [0, 0, 1]))
+                    (LaterVersion
+                      (mkVersion [0, 0, 1])))
+                  (EarlierVersion
+                    (mkVersion [0, 0, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName "safe-exceptions")
+                (UnionVersionRanges
+                  (ThisVersion
+                    (mkVersion [0, 1, 0]))
+                  (LaterVersion
+                    (mkVersion [0, 1, 0])))
+                mainLibSet,
+              Dependency
+                (PackageName "singletons")
+                (UnionVersionRanges
+                  (ThisVersion (mkVersion [2, 2]))
+                  (LaterVersion
+                    (mkVersion [2, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName "text")
+                (UnionVersionRanges
+                  (ThisVersion
+                    (mkVersion [1, 2, 2]))
+                  (LaterVersion
+                    (mkVersion [1, 2, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName "hasktorch")
+                (OrLaterVersion (mkVersion [0]))
+                (NonEmptySet.fromNonEmpty
+                  (NE.fromList
+                    [
+                      LSubLibName
+                        (UnqualComponentName
+                          "hasktorch-indef-floating")])),
+              Dependency
+                (PackageName "hasktorch")
+                (OrLaterVersion (mkVersion [0]))
+                (NonEmptySet.fromNonEmpty
+                  (NE.fromList
+                    [
+                      LSubLibName
+                        (UnqualComponentName
+                          "hasktorch-indef-signed")])),
+              Dependency
+                (PackageName
+                  "hasktorch-ffi-thc")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion
+                      (mkVersion [0, 0, 1]))
+                    (LaterVersion
+                      (mkVersion [0, 0, 1])))
+                  (EarlierVersion
+                    (mkVersion [0, 0, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName
+                  "hasktorch-types-thc")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion
+                      (mkVersion [0, 0, 1]))
+                    (LaterVersion
+                      (mkVersion [0, 0, 1])))
+                  (EarlierVersion
+                    (mkVersion [0, 0, 2])))
+                mainLibSet],
+            mixins =
+            [
+              Mixin {
+                mixinPackageName = PackageName
+                  "hasktorch",
+                mixinLibraryName = LSubLibName
+                  (UnqualComponentName
+                    "hasktorch-indef-signed"),
+                mixinIncludeRenaming =
+                IncludeRenaming {
+                  includeProvidesRn =
+                  ModuleRenaming
+                    [
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Storage")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Storage"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Storage.Copy")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Storage.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Copy")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Index")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.Index"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Masked")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.Masked"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.Math"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.Math.Compare"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.Math.CompareT"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.Math.Pairwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.Math.Pointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.Math.Reduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.Math.Scan"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Mode")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.Mode"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.ScatterGather"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Sort")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.Sort"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.TopK")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.TopK"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Copy")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Index")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.Index"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Masked")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.Masked"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math.Compare"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math.CompareT"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math.Pairwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math.Pointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math.Reduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math.Scan"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Mode")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.Mode"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.ScatterGather"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Sort")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.Sort"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.TopK")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.TopK"),
+                      _×_
+                        (ModuleName "Torch.Indef.Types")
+                        (ModuleName
+                          "Torch.Cuda.Long.Types"),
+                      _×_
+                        (ModuleName "Torch.Indef.Index")
+                        (ModuleName
+                          "Torch.Cuda.Long.Index"),
+                      _×_
+                        (ModuleName "Torch.Indef.Mask")
+                        (ModuleName
+                          "Torch.Cuda.Long.Mask"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Tensor.Math.Pointwise.Signed"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Long.Dynamic.Tensor.Math.Pointwise.Signed")],
+                  includeRequiresRn =
+                  ModuleRenaming
+                    [
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Index.Tensor")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Index.TensorFree")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Mask.Tensor")
+                        (ModuleName
+                          "Torch.FFI.THC.Byte.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Mask.TensorFree")
+                        (ModuleName
+                          "Torch.FFI.THC.Byte.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Mask.MathReduce")
+                        (ModuleName
+                          "Torch.FFI.THC.Byte.TensorMathReduce"),
+                      _×_
+                        (ModuleName "Torch.Sig.State")
+                        (ModuleName
+                          "Torch.FFI.THC.State"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Types.Global")
+                        (ModuleName "Torch.Types.THC"),
+                      _×_
+                        (ModuleName "Torch.Sig.Types")
+                        (ModuleName
+                          "Torch.Types.THC.Long"),
+                      _×_
+                        (ModuleName "Torch.Sig.Storage")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.Storage"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Storage.Copy")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.StorageCopy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Storage.Memory")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.Storage"),
+                      _×_
+                        (ModuleName "Torch.Sig.Tensor")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Copy")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorCopy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Memory")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Index")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorIndex"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Masked")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorMasked"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorMathCompare"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorMathCompareT"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorMathPairwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorMathPointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorMathReduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorMathScan"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Mode")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorMode"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorScatterGather"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Sort")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorSort"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.TopK")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorTopK"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.TensorMathPointwise")]}},
+              Mixin {
+                mixinPackageName = PackageName
+                  "hasktorch",
+                mixinLibraryName = LSubLibName
+                  (UnqualComponentName
+                    "hasktorch-indef-floating"),
+                mixinIncludeRenaming =
+                IncludeRenaming {
+                  includeProvidesRn =
+                  ModuleRenaming
+                    [
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Storage")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Storage"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Storage.Copy")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Storage.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Copy")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Index")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Index"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Masked")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Masked"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Compare"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.CompareT"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Pairwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Pointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Reduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Scan"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Mode")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Mode"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.ScatterGather"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Sort")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Sort"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.TopK")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.TopK"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Copy")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Index")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Index"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Masked")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Masked"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Compare"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.CompareT"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Pairwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Pointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Reduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Scan"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Mode")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Mode"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.ScatterGather"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Sort")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Sort"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.TopK")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.TopK"),
+                      _×_
+                        (ModuleName "Torch.Indef.Types")
+                        (ModuleName
+                          "Torch.Cuda.Double.Types"),
+                      _×_
+                        (ModuleName "Torch.Indef.Index")
+                        (ModuleName
+                          "Torch.Cuda.Double.Index"),
+                      _×_
+                        (ModuleName "Torch.Indef.Mask")
+                        (ModuleName
+                          "Torch.Cuda.Double.Mask"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Pointwise.Signed"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Pointwise.Signed"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Blas")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Blas"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Lapack")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Lapack"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Floating")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Pointwise.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Reduce.Floating")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Reduce.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Floating")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Blas")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Blas"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Lapack")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Lapack"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pointwise.Floating")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Pointwise.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Reduce.Floating")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Reduce.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Floating")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Random.TH")
+                        (ModuleName
+                          "Torch.Undefined.Cuda.Double.Tensor.Random.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Math.Random.TH")
+                        (ModuleName
+                          "Torch.Undefined.Cuda.Double.Tensor.Math.Random.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Random.THC")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Random.THC"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Random.THC")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Random.THC"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Storage")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Storage"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Storage.Copy")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Storage.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Copy")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Index")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Index"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Masked")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Masked"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Compare"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.CompareT"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Pairwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Pointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Reduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Scan"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Mode")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Mode"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.ScatterGather"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Sort")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Sort"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.TopK")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.TopK"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Copy")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Copy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Index")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Index"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Masked")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Masked"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Compare"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.CompareT"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Pairwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Pointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Reduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Scan"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Mode")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Mode"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.ScatterGather"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Sort")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Sort"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.TopK")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.TopK"),
+                      _×_
+                        (ModuleName "Torch.Indef.Types")
+                        (ModuleName
+                          "Torch.Cuda.Double.Types"),
+                      _×_
+                        (ModuleName "Torch.Indef.Index")
+                        (ModuleName
+                          "Torch.Cuda.Double.Index"),
+                      _×_
+                        (ModuleName "Torch.Indef.Mask")
+                        (ModuleName
+                          "Torch.Cuda.Double.Mask"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Tensor.Math.Pointwise.Signed"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.Indef.Cuda.Double.Dynamic.Tensor.Math.Pointwise.Signed"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.NN")
+                        (ModuleName
+                          "Torch.Cuda.Double.Dynamic.NN"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.NN.Activation")
+                        (ModuleName
+                          "Torch.Cuda.Double.Dynamic.NN.Activation"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.NN.Pooling")
+                        (ModuleName
+                          "Torch.Cuda.Double.Dynamic.NN.Pooling"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Dynamic.NN.Criterion")
+                        (ModuleName
+                          "Torch.Cuda.Double.Dynamic.NN.Criterion"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN")
+                        (ModuleName
+                          "Torch.Cuda.Double.NN"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN")
+                        (ModuleName
+                          "Torch.Cuda.Double.NN"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Activation")
+                        (ModuleName
+                          "Torch.Cuda.Double.NN.Activation"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Backprop")
+                        (ModuleName
+                          "Torch.Cuda.Double.NN.Backprop"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Conv1d")
+                        (ModuleName
+                          "Torch.Cuda.Double.NN.Conv1d"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Conv2d")
+                        (ModuleName
+                          "Torch.Cuda.Double.NN.Conv2d"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Criterion")
+                        (ModuleName
+                          "Torch.Cuda.Double.NN.Criterion"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Layers")
+                        (ModuleName
+                          "Torch.Cuda.Double.NN.Layers"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Linear")
+                        (ModuleName
+                          "Torch.Cuda.Double.NN.Linear"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Math")
+                        (ModuleName
+                          "Torch.Cuda.Double.NN.Math"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Padding")
+                        (ModuleName
+                          "Torch.Cuda.Double.NN.Padding"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Pooling")
+                        (ModuleName
+                          "Torch.Cuda.Double.NN.Pooling"),
+                      _×_
+                        (ModuleName
+                          "Torch.Indef.Static.NN.Sampling")
+                        (ModuleName
+                          "Torch.Cuda.Double.NN.Sampling")],
+                  includeRequiresRn =
+                  ModuleRenaming
+                    [
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Index.Tensor")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Index.TensorFree")
+                        (ModuleName
+                          "Torch.FFI.THC.Long.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Mask.Tensor")
+                        (ModuleName
+                          "Torch.FFI.THC.Byte.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Mask.TensorFree")
+                        (ModuleName
+                          "Torch.FFI.THC.Byte.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Mask.MathReduce")
+                        (ModuleName
+                          "Torch.FFI.THC.Byte.TensorMathReduce"),
+                      _×_
+                        (ModuleName "Torch.Sig.State")
+                        (ModuleName
+                          "Torch.FFI.THC.State"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Types.Global")
+                        (ModuleName "Torch.Types.THC"),
+                      _×_
+                        (ModuleName "Torch.Sig.Types")
+                        (ModuleName
+                          "Torch.Types.THC.Double"),
+                      _×_
+                        (ModuleName "Torch.Sig.Storage")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.Storage"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Storage.Copy")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.StorageCopy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Storage.Memory")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.Storage"),
+                      _×_
+                        (ModuleName "Torch.Sig.Tensor")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Copy")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorCopy"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Memory")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.Tensor"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Index")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorIndex"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Masked")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMasked"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Compare")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMathCompare"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.CompareT")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMathCompareT"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pairwise")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMathPairwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pointwise")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMathPointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Reduce")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMathReduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Scan")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMathScan"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Mode")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMode"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.ScatterGather")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorScatterGather"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Sort")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorSort"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.TopK")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorTopK"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMathPointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pointwise.Floating")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMathPointwise"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Reduce.Floating")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMathReduce"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Floating")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMath"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Blas")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMathBlas"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Lapack")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorMathMagma"),
+                      _×_
+                        (ModuleName "Torch.Sig.NN")
+                        (ModuleName
+                          "Torch.FFI.THC.NN.Double"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Types.NN")
+                        (ModuleName "Torch.Types.THC"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Random.TH")
+                        (ModuleName
+                          "Torch.Undefined.Cuda.Double.Tensor.Math.Random.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Random.TH")
+                        (ModuleName
+                          "Torch.Undefined.Cuda.Double.Tensor.Random.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Random.THC")
+                        (ModuleName
+                          "Torch.FFI.THC.Double.TensorRandom")]}}]}},
+        condTreeConstraints = [
+          Dependency
+            (PackageName "base")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion (mkVersion [4, 7]))
+                (LaterVersion
+                  (mkVersion [4, 7])))
+              (EarlierVersion
+                (mkVersion [5])))
+            mainLibSet,
+          Dependency
+            (PackageName
+              "hasktorch-types-th")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion
+                  (mkVersion [0, 0, 1]))
+                (LaterVersion
+                  (mkVersion [0, 0, 1])))
+              (EarlierVersion
+                (mkVersion [0, 0, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName "dimensions")
+            (UnionVersionRanges
+              (ThisVersion (mkVersion [1, 0]))
+              (LaterVersion
+                (mkVersion [1, 0])))
+            mainLibSet,
+          Dependency
+            (PackageName "hasktorch-ffi-th")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion
+                  (mkVersion [0, 0, 1]))
+                (LaterVersion
+                  (mkVersion [0, 0, 1])))
+              (EarlierVersion
+                (mkVersion [0, 0, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName
+              "hasktorch-types-th")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion
+                  (mkVersion [0, 0, 1]))
+                (LaterVersion
+                  (mkVersion [0, 0, 1])))
+              (EarlierVersion
+                (mkVersion [0, 0, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName "safe-exceptions")
+            (UnionVersionRanges
+              (ThisVersion
+                (mkVersion [0, 1, 0]))
+              (LaterVersion
+                (mkVersion [0, 1, 0])))
+            mainLibSet,
+          Dependency
+            (PackageName "singletons")
+            (UnionVersionRanges
+              (ThisVersion (mkVersion [2, 2]))
+              (LaterVersion
+                (mkVersion [2, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName "text")
+            (UnionVersionRanges
+              (ThisVersion
+                (mkVersion [1, 2, 2]))
+              (LaterVersion
+                (mkVersion [1, 2, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName "hasktorch")
+            (OrLaterVersion (mkVersion [0]))
+            (NonEmptySet.fromNonEmpty
+              (NE.fromList
+                [
+                  LSubLibName
+                    (UnqualComponentName
+                      "hasktorch-indef-floating")])),
+          Dependency
+            (PackageName "hasktorch")
+            (OrLaterVersion (mkVersion [0]))
+            (NonEmptySet.fromNonEmpty
+              (NE.fromList
+                [
+                  LSubLibName
+                    (UnqualComponentName
+                      "hasktorch-indef-signed")])),
+          Dependency
+            (PackageName
+              "hasktorch-ffi-thc")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion
+                  (mkVersion [0, 0, 1]))
+                (LaterVersion
+                  (mkVersion [0, 0, 1])))
+              (EarlierVersion
+                (mkVersion [0, 0, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName
+              "hasktorch-types-thc")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion
+                  (mkVersion [0, 0, 1]))
+                (LaterVersion
+                  (mkVersion [0, 0, 1])))
+              (EarlierVersion
+                (mkVersion [0, 0, 2])))
+            mainLibSet],
+        condTreeComponents =
+        [
+          CondBranch {
+            condBranchCondition =
+            `Var (PackageFlag (FlagName "lite"))`,
+            condBranchIfTrue = CondNode {
+              condTreeData = Library {
+                libName = LSubLibName
+                  (UnqualComponentName
+                    "hasktorch-gpu"),
+                exposedModules = [],
+                reexportedModules = [],
+                signatures = [],
+                libExposed = True,
+                libVisibility =
+                LibraryVisibilityPrivate,
+                libBuildInfo = BuildInfo {
+                  buildable = True,
+                  buildTools = [],
+                  buildToolDepends = [],
+                  cppOptions = [],
+                  asmOptions = [],
+                  cmmOptions = [],
+                  ccOptions = [],
+                  cxxOptions = [],
+                  ldOptions = [],
+                  hsc2hsOptions = [],
+                  pkgconfigDepends = [],
+                  frameworks = [],
+                  extraFrameworkDirs = [],
+                  asmSources = [],
+                  cmmSources = [],
+                  cSources = [],
+                  cxxSources = [],
+                  jsSources = [],
+                  hsSourceDirs = [],
+                  otherModules = [],
+                  virtualModules = [],
+                  autogenModules = [],
+                  defaultLanguage = Nothing,
+                  otherLanguages = [],
+                  defaultExtensions = [],
+                  otherExtensions = [],
+                  oldExtensions = [],
+                  extraLibs = [],
+                  extraLibsStatic = [],
+                  extraGHCiLibs = [],
+                  extraBundledLibs = [],
+                  extraLibFlavours = [],
+                  extraDynLibFlavours = [],
+                  extraLibDirs = [],
+                  extraLibDirsStatic = [],
+                  includeDirs = [],
+                  includes = [],
+                  autogenIncludes = [],
+                  installIncludes = [],
+                  options = PerCompilerFlavor
+                    []
+                    [],
+                  profOptions = PerCompilerFlavor
+                    []
+                    [],
+                  sharedOptions =
+                  PerCompilerFlavor [] [],
+                  staticOptions =
+                  PerCompilerFlavor [] [],
+                  customFieldsBI = [],
+                  targetBuildDepends = [],
+                  mixins = []}},
+              condTreeConstraints = [],
+              condTreeComponents = []},
+            condBranchIfFalse =
+            Just
+              CondNode {
+                condTreeData =
+                Library {
+                  libName = LSubLibName
+                    (UnqualComponentName
+                      "hasktorch-gpu"),
+                  exposedModules = [
+                    ModuleName "Torch.Cuda.Byte",
+                    ModuleName
+                      "Torch.Cuda.Byte.Dynamic",
+                    ModuleName
+                      "Torch.Cuda.Byte.Storage",
+                    ModuleName "Torch.Cuda.Char",
+                    ModuleName
+                      "Torch.Cuda.Char.Dynamic",
+                    ModuleName
+                      "Torch.Cuda.Char.Storage",
+                    ModuleName "Torch.Cuda.Short",
+                    ModuleName
+                      "Torch.Cuda.Short.Dynamic",
+                    ModuleName
+                      "Torch.Cuda.Short.Storage",
+                    ModuleName "Torch.Cuda.Int",
+                    ModuleName
+                      "Torch.Cuda.Int.Dynamic",
+                    ModuleName
+                      "Torch.Cuda.Int.Storage"],
+                  reexportedModules = [],
+                  signatures = [],
+                  libExposed = True,
+                  libVisibility =
+                  LibraryVisibilityPrivate,
+                  libBuildInfo =
+                  BuildInfo {
+                    buildable = True,
+                    buildTools = [],
+                    buildToolDepends = [],
+                    cppOptions = [],
+                    asmOptions = [],
+                    cmmOptions = [],
+                    ccOptions = [],
+                    cxxOptions = [],
+                    ldOptions = [],
+                    hsc2hsOptions = [],
+                    pkgconfigDepends = [],
+                    frameworks = [],
+                    extraFrameworkDirs = [],
+                    asmSources = [],
+                    cmmSources = [],
+                    cSources = [],
+                    cxxSources = [],
+                    jsSources = [],
+                    hsSourceDirs = [],
+                    otherModules = [],
+                    virtualModules = [],
+                    autogenModules = [],
+                    defaultLanguage = Nothing,
+                    otherLanguages = [],
+                    defaultExtensions = [],
+                    otherExtensions = [],
+                    oldExtensions = [],
+                    extraLibs = [],
+                    extraLibsStatic = [],
+                    extraGHCiLibs = [],
+                    extraBundledLibs = [],
+                    extraLibFlavours = [],
+                    extraDynLibFlavours = [],
+                    extraLibDirs = [],
+                    extraLibDirsStatic = [],
+                    includeDirs = [],
+                    includes = [],
+                    autogenIncludes = [],
+                    installIncludes = [],
+                    options = PerCompilerFlavor
+                      []
+                      [],
+                    profOptions = PerCompilerFlavor
+                      []
+                      [],
+                    sharedOptions =
+                    PerCompilerFlavor [] [],
+                    staticOptions =
+                    PerCompilerFlavor [] [],
+                    customFieldsBI = [],
+                    targetBuildDepends = [
+                      Dependency
+                        (PackageName "hasktorch")
+                        (OrLaterVersion (mkVersion [0]))
+                        (NonEmptySet.fromNonEmpty
+                          (NE.fromList
+                            [
+                              LSubLibName
+                                (UnqualComponentName
+                                  "hasktorch-indef-unsigned")]))],
+                    mixins =
+                    [
+                      Mixin {
+                        mixinPackageName = PackageName
+                          "hasktorch",
+                        mixinLibraryName = LSubLibName
+                          (UnqualComponentName
+                            "hasktorch-indef-unsigned"),
+                        mixinIncludeRenaming =
+                        IncludeRenaming {
+                          includeProvidesRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Storage.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Tensor.TopK"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Byte.Dynamic.Tensor.TopK"),
+                              _×_
+                                (ModuleName "Torch.Indef.Types")
+                                (ModuleName
+                                  "Torch.Cuda.Byte.Types"),
+                              _×_
+                                (ModuleName "Torch.Indef.Index")
+                                (ModuleName
+                                  "Torch.Cuda.Byte.Index"),
+                              _×_
+                                (ModuleName "Torch.Indef.Mask")
+                                (ModuleName
+                                  "Torch.Cuda.Byte.Mask")],
+                          includeRequiresRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.THC.Long.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.THC.Long.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.MathReduce")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorMathReduce"),
+                              _×_
+                                (ModuleName "Torch.Sig.State")
+                                (ModuleName
+                                  "Torch.FFI.THC.State"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Types.Global")
+                                (ModuleName "Torch.Types.THC"),
+                              _×_
+                                (ModuleName "Torch.Sig.Types")
+                                (ModuleName
+                                  "Torch.Types.THC.Byte"),
+                              _×_
+                                (ModuleName "Torch.Sig.Storage")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Copy")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.StorageCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Memory")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.Storage"),
+                              _×_
+                                (ModuleName "Torch.Sig.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Memory")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Index")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorIndex"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorMasked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorMathCompare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorMathCompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorMathPairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorMathPointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorMathReduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorMathScan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorMode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorSort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorTopK")]}},
+                      Mixin {
+                        mixinPackageName = PackageName
+                          "hasktorch",
+                        mixinLibraryName = LSubLibName
+                          (UnqualComponentName
+                            "hasktorch-indef-unsigned"),
+                        mixinIncludeRenaming =
+                        IncludeRenaming {
+                          includeProvidesRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Storage.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Tensor.TopK"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Char.Dynamic.Tensor.TopK"),
+                              _×_
+                                (ModuleName "Torch.Indef.Types")
+                                (ModuleName
+                                  "Torch.Cuda.Char.Types"),
+                              _×_
+                                (ModuleName "Torch.Indef.Index")
+                                (ModuleName
+                                  "Torch.Cuda.Char.Index"),
+                              _×_
+                                (ModuleName "Torch.Indef.Mask")
+                                (ModuleName
+                                  "Torch.Cuda.Char.Mask")],
+                          includeRequiresRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.THC.Long.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.THC.Long.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.MathReduce")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorMathReduce"),
+                              _×_
+                                (ModuleName "Torch.Sig.State")
+                                (ModuleName
+                                  "Torch.FFI.THC.State"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Types.Global")
+                                (ModuleName "Torch.Types.THC"),
+                              _×_
+                                (ModuleName "Torch.Sig.Types")
+                                (ModuleName
+                                  "Torch.Types.THC.Char"),
+                              _×_
+                                (ModuleName "Torch.Sig.Storage")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Copy")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.StorageCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Memory")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.Storage"),
+                              _×_
+                                (ModuleName "Torch.Sig.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.TensorCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Memory")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Index")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.TensorIndex"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.TensorMasked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.TensorMathCompare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.TensorMathCompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.TensorMathPairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.TensorMathPointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.TensorMathReduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.TensorMathScan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.TensorMode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.TensorScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.TensorSort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.FFI.THC.Char.TensorTopK")]}},
+                      Mixin {
+                        mixinPackageName = PackageName
+                          "hasktorch",
+                        mixinLibraryName = LSubLibName
+                          (UnqualComponentName
+                            "hasktorch-indef-signed"),
+                        mixinIncludeRenaming =
+                        IncludeRenaming {
+                          includeProvidesRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Storage.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.TopK"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.TopK"),
+                              _×_
+                                (ModuleName "Torch.Indef.Types")
+                                (ModuleName
+                                  "Torch.Cuda.Short.Types"),
+                              _×_
+                                (ModuleName "Torch.Indef.Index")
+                                (ModuleName
+                                  "Torch.Cuda.Short.Index"),
+                              _×_
+                                (ModuleName "Torch.Indef.Mask")
+                                (ModuleName
+                                  "Torch.Cuda.Short.Mask"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Tensor.Math.Pointwise.Signed"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Short.Dynamic.Tensor.Math.Pointwise.Signed")],
+                          includeRequiresRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.THC.Long.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.THC.Long.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.MathReduce")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorMathReduce"),
+                              _×_
+                                (ModuleName "Torch.Sig.State")
+                                (ModuleName
+                                  "Torch.FFI.THC.State"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Types.Global")
+                                (ModuleName "Torch.Types.THC"),
+                              _×_
+                                (ModuleName "Torch.Sig.Types")
+                                (ModuleName
+                                  "Torch.Types.THC.Short"),
+                              _×_
+                                (ModuleName "Torch.Sig.Storage")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Copy")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.StorageCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Memory")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.Storage"),
+                              _×_
+                                (ModuleName "Torch.Sig.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Memory")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Index")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorIndex"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorMasked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorMathCompare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorMathCompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorMathPairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorMathPointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorMathReduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorMathScan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorMode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorSort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorTopK"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.FFI.THC.Short.TensorMathPointwise")]}},
+                      Mixin {
+                        mixinPackageName = PackageName
+                          "hasktorch",
+                        mixinLibraryName = LSubLibName
+                          (UnqualComponentName
+                            "hasktorch-indef-signed"),
+                        mixinIncludeRenaming =
+                        IncludeRenaming {
+                          includeProvidesRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Storage.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Storage.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.TopK"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.Copy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Index")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.Index"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.Masked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math.Compare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math.CompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math.Pairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math.Pointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math.Reduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math.Scan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.Mode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.ScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.Sort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.TopK"),
+                              _×_
+                                (ModuleName "Torch.Indef.Types")
+                                (ModuleName
+                                  "Torch.Cuda.Int.Types"),
+                              _×_
+                                (ModuleName "Torch.Indef.Index")
+                                (ModuleName
+                                  "Torch.Cuda.Int.Index"),
+                              _×_
+                                (ModuleName "Torch.Indef.Mask")
+                                (ModuleName
+                                  "Torch.Cuda.Int.Mask"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Static.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Tensor.Math.Pointwise.Signed"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.Indef.Cuda.Int.Dynamic.Tensor.Math.Pointwise.Signed")],
+                          includeRequiresRn =
+                          ModuleRenaming
+                            [
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.THC.Long.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Index.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.THC.Long.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.TensorFree")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Mask.MathReduce")
+                                (ModuleName
+                                  "Torch.FFI.THC.Byte.TensorMathReduce"),
+                              _×_
+                                (ModuleName "Torch.Sig.State")
+                                (ModuleName
+                                  "Torch.FFI.THC.State"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Types.Global")
+                                (ModuleName "Torch.Types.THC"),
+                              _×_
+                                (ModuleName "Torch.Sig.Types")
+                                (ModuleName
+                                  "Torch.Types.THC.Int"),
+                              _×_
+                                (ModuleName "Torch.Sig.Storage")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.Storage"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Copy")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.StorageCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Storage.Memory")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.Storage"),
+                              _×_
+                                (ModuleName "Torch.Sig.Tensor")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Copy")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorCopy"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Memory")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.Tensor"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Index")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorIndex"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Masked")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorMasked"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorMath"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Compare")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorMathCompare"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.CompareT")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorMathCompareT"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pairwise")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorMathPairwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorMathPointwise"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Reduce")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorMathReduce"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Scan")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorMathScan"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Mode")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorMode"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.ScatterGather")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorScatterGather"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Sort")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorSort"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.TopK")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorTopK"),
+                              _×_
+                                (ModuleName
+                                  "Torch.Sig.Tensor.Math.Pointwise.Signed")
+                                (ModuleName
+                                  "Torch.FFI.THC.Int.TensorMathPointwise")]}}]}},
+                condTreeConstraints = [
+                  Dependency
+                    (PackageName "hasktorch")
+                    (OrLaterVersion (mkVersion [0]))
+                    (NonEmptySet.fromNonEmpty
+                      (NE.fromList
+                        [
+                          LSubLibName
+                            (UnqualComponentName
+                              "hasktorch-indef-unsigned")]))],
+                condTreeComponents = []}}]},
+    _×_
+      (UnqualComponentName
+        "hasktorch-indef-unsigned")
+      CondNode {
+        condTreeData = Library {
+          libName = LSubLibName
+            (UnqualComponentName
+              "hasktorch-indef-unsigned"),
+          exposedModules = [],
+          reexportedModules = [
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName "Torch.Indef.Index",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Index"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName "Torch.Indef.Mask",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Mask"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName "Torch.Indef.Types",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Types"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Storage",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Storage"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Storage.Copy",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Storage.Copy"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Print",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Print"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Copy",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Copy"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Index",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Index"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Masked",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Masked"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Compare",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Compare"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.CompareT",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.CompareT"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pairwise",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pairwise"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pointwise",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pointwise"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Reduce",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Reduce"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Scan",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Scan"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Mode",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Mode"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.ScatterGather",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.ScatterGather"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Sort",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Sort"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.TopK",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.TopK"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Copy",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Copy"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Index",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Index"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Masked",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Masked"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Compare",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Compare"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.CompareT",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.CompareT"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pairwise",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pairwise"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pointwise",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pointwise"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Reduce",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Reduce"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Scan",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Scan"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Mode",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Mode"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.ScatterGather",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.ScatterGather"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Sort",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Sort"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.TopK",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.TopK"}],
+          signatures = [],
+          libExposed = True,
+          libVisibility =
+          LibraryVisibilityPrivate,
+          libBuildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [],
+            otherModules = [],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Just
+              Haskell2010,
+            otherLanguages = [],
+            defaultExtensions = [],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [
+              Dependency
+                (PackageName "base")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion (mkVersion [4, 7]))
+                    (LaterVersion
+                      (mkVersion [4, 7])))
+                  (EarlierVersion
+                    (mkVersion [5])))
+                mainLibSet,
+              Dependency
+                (PackageName
+                  "hasktorch-signatures-partial")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion
+                      (mkVersion [0, 0, 1]))
+                    (LaterVersion
+                      (mkVersion [0, 0, 1])))
+                  (EarlierVersion
+                    (mkVersion [0, 0, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName "hasktorch-indef")
+                (OrLaterVersion (mkVersion [0]))
+                mainLibSet],
+            mixins = [
+              Mixin {
+                mixinPackageName = PackageName
+                  "hasktorch-indef",
+                mixinLibraryName = LMainLibName,
+                mixinIncludeRenaming =
+                IncludeRenaming {
+                  includeProvidesRn =
+                  DefaultRenaming,
+                  includeRequiresRn =
+                  ModuleRenaming
+                    [
+                      _×_
+                        (ModuleName "Torch.Sig.NN")
+                        (ModuleName
+                          "Torch.Undefined.NN"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Types.NN")
+                        (ModuleName
+                          "Torch.Undefined.Types.NN"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Blas")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Math.Blas"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Floating")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Math.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Lapack")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Math.Lapack"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pointwise.Signed")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Math.Pointwise.Signed"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pointwise.Floating")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Math.Pointwise.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Reduce.Floating")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Math.Reduce.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Random.TH")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Math.Random.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Random.TH")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Random.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Random.THC")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Random.THC")]}}]}},
+        condTreeConstraints = [
+          Dependency
+            (PackageName "base")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion (mkVersion [4, 7]))
+                (LaterVersion
+                  (mkVersion [4, 7])))
+              (EarlierVersion
+                (mkVersion [5])))
+            mainLibSet,
+          Dependency
+            (PackageName
+              "hasktorch-signatures-partial")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion
+                  (mkVersion [0, 0, 1]))
+                (LaterVersion
+                  (mkVersion [0, 0, 1])))
+              (EarlierVersion
+                (mkVersion [0, 0, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName "hasktorch-indef")
+            (OrLaterVersion (mkVersion [0]))
+            mainLibSet],
+        condTreeComponents = []},
+    _×_
+      (UnqualComponentName
+        "hasktorch-indef-signed")
+      CondNode {
+        condTreeData = Library {
+          libName = LSubLibName
+            (UnqualComponentName
+              "hasktorch-indef-signed"),
+          exposedModules = [],
+          reexportedModules = [
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName "Torch.Indef.Index",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Index"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName "Torch.Indef.Mask",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Mask"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName "Torch.Indef.Types",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Types"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Storage",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Storage"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Storage.Copy",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Storage.Copy"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Print",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Print"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Copy",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Copy"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Index",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Index"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Masked",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Masked"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Compare",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Compare"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.CompareT",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.CompareT"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pairwise",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pairwise"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pointwise",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pointwise"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Reduce",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Reduce"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Scan",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Scan"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Mode",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Mode"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.ScatterGather",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.ScatterGather"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Sort",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Sort"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.TopK",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.TopK"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Copy",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Copy"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Index",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Index"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Masked",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Masked"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Compare",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Compare"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.CompareT",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.CompareT"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pairwise",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pairwise"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pointwise",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pointwise"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Reduce",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Reduce"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Scan",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Scan"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Mode",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Mode"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.ScatterGather",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.ScatterGather"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Sort",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Sort"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.TopK",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.TopK"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pointwise.Signed",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pointwise.Signed"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed"}],
+          signatures = [],
+          libExposed = True,
+          libVisibility =
+          LibraryVisibilityPrivate,
+          libBuildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [],
+            otherModules = [],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Just
+              Haskell2010,
+            otherLanguages = [],
+            defaultExtensions = [],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [
+              Dependency
+                (PackageName "base")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion (mkVersion [4, 7]))
+                    (LaterVersion
+                      (mkVersion [4, 7])))
+                  (EarlierVersion
+                    (mkVersion [5])))
+                mainLibSet,
+              Dependency
+                (PackageName
+                  "hasktorch-signatures-partial")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion
+                      (mkVersion [0, 0, 1]))
+                    (LaterVersion
+                      (mkVersion [0, 0, 1])))
+                  (EarlierVersion
+                    (mkVersion [0, 0, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName "hasktorch-indef")
+                (OrLaterVersion (mkVersion [0]))
+                mainLibSet],
+            mixins = [
+              Mixin {
+                mixinPackageName = PackageName
+                  "hasktorch-indef",
+                mixinLibraryName = LMainLibName,
+                mixinIncludeRenaming =
+                IncludeRenaming {
+                  includeProvidesRn =
+                  DefaultRenaming,
+                  includeRequiresRn =
+                  ModuleRenaming
+                    [
+                      _×_
+                        (ModuleName "Torch.Sig.NN")
+                        (ModuleName
+                          "Torch.Undefined.NN"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Types.NN")
+                        (ModuleName
+                          "Torch.Undefined.Types.NN"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Blas")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Math.Blas"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Floating")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Math.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Lapack")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Math.Lapack"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Pointwise.Floating")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Math.Pointwise.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Reduce.Floating")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Math.Reduce.Floating"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Math.Random.TH")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Math.Random.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Random.TH")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Random.TH"),
+                      _×_
+                        (ModuleName
+                          "Torch.Sig.Tensor.Random.THC")
+                        (ModuleName
+                          "Torch.Undefined.Tensor.Random.THC")]}}]}},
+        condTreeConstraints = [
+          Dependency
+            (PackageName "base")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion (mkVersion [4, 7]))
+                (LaterVersion
+                  (mkVersion [4, 7])))
+              (EarlierVersion
+                (mkVersion [5])))
+            mainLibSet,
+          Dependency
+            (PackageName
+              "hasktorch-signatures-partial")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion
+                  (mkVersion [0, 0, 1]))
+                (LaterVersion
+                  (mkVersion [0, 0, 1])))
+              (EarlierVersion
+                (mkVersion [0, 0, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName "hasktorch-indef")
+            (OrLaterVersion (mkVersion [0]))
+            mainLibSet],
+        condTreeComponents = []},
+    _×_
+      (UnqualComponentName
+        "hasktorch-indef-floating")
+      CondNode {
+        condTreeData = Library {
+          libName = LSubLibName
+            (UnqualComponentName
+              "hasktorch-indef-floating"),
+          exposedModules = [],
+          reexportedModules = [
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName "Torch.Indef.Index",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Index"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName "Torch.Indef.Mask",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Mask"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName "Torch.Indef.Types",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Types"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Storage",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Storage"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Storage.Copy",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Storage.Copy"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Print",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Print"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Copy",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Copy"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Index",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Index"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Masked",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Masked"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Compare",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Compare"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.CompareT",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.CompareT"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pairwise",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pairwise"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pointwise",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pointwise"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Reduce",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Reduce"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Scan",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Scan"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Mode",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Mode"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.ScatterGather",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.ScatterGather"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Sort",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Sort"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.TopK",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.TopK"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Copy",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Copy"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Index",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Index"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Masked",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Masked"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Compare",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Compare"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.CompareT",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.CompareT"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pairwise",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pairwise"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pointwise",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pointwise"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Reduce",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Reduce"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Scan",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Scan"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Mode",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Mode"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.ScatterGather",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.ScatterGather"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Sort",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Sort"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.TopK",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.TopK"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pointwise.Signed",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pointwise.Signed"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Signed"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Blas",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Blas"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Floating",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Floating"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Lapack",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Lapack"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Floating",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Pointwise.Floating"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Reduce.Floating",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Reduce.Floating"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Random.TH",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Random.TH"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Random.THC",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Random.THC"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Random.TH",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.Tensor.Math.Random.TH"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Blas",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Blas"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Floating",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Floating"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Lapack",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Lapack"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pointwise.Floating",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Pointwise.Floating"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Reduce.Floating",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Reduce.Floating"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Random.TH",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Random.TH"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Random.THC",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Random.THC"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.Tensor.Math.Random.TH",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.Tensor.Math.Random.TH"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.NN",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.NN"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.NN.Activation",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.NN.Activation"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.NN.Pooling",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.NN.Pooling"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Dynamic.NN.Criterion",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Dynamic.NN.Criterion"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.NN",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.NN"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.NN.Activation",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.NN.Activation"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.NN.Backprop",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.NN.Backprop"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.NN.Conv1d",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.NN.Conv1d"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.NN.Conv2d",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.NN.Conv2d"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.NN.Criterion",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.NN.Criterion"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.NN.Layers",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.NN.Layers"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.NN.Linear",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.NN.Linear"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.NN.Math",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.NN.Math"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.NN.Padding",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.NN.Padding"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.NN.Pooling",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.NN.Pooling"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Indef.Static.NN.Sampling",
+              moduleReexportName = ModuleName
+                "Torch.Indef.Static.NN.Sampling"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Undefined.Tensor.Math.Random.TH",
+              moduleReexportName = ModuleName
+                "Torch.Undefined.Tensor.Math.Random.TH"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Undefined.Tensor.Random.TH",
+              moduleReexportName = ModuleName
+                "Torch.Undefined.Tensor.Random.TH"},
+            ModuleReexport {
+              moduleReexportOriginalPackage =
+              Nothing,
+              moduleReexportOriginalName =
+              ModuleName
+                "Torch.Undefined.Tensor.Random.THC",
+              moduleReexportName = ModuleName
+                "Torch.Undefined.Tensor.Random.THC"}],
+          signatures = [],
+          libExposed = True,
+          libVisibility =
+          LibraryVisibilityPrivate,
+          libBuildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [],
+            otherModules = [],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Just
+              Haskell2010,
+            otherLanguages = [],
+            defaultExtensions = [],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [
+              Dependency
+                (PackageName "base")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion (mkVersion [4, 7]))
+                    (LaterVersion
+                      (mkVersion [4, 7])))
+                  (EarlierVersion
+                    (mkVersion [5])))
+                mainLibSet,
+              Dependency
+                (PackageName "hasktorch-indef")
+                (OrLaterVersion (mkVersion [0]))
+                mainLibSet,
+              Dependency
+                (PackageName
+                  "hasktorch-signatures-partial")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion
+                      (mkVersion [0, 0, 1]))
+                    (LaterVersion
+                      (mkVersion [0, 0, 1])))
+                  (EarlierVersion
+                    (mkVersion [0, 0, 2])))
+                mainLibSet],
+            mixins = []}},
+        condTreeConstraints = [
+          Dependency
+            (PackageName "base")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion (mkVersion [4, 7]))
+                (LaterVersion
+                  (mkVersion [4, 7])))
+              (EarlierVersion
+                (mkVersion [5])))
+            mainLibSet,
+          Dependency
+            (PackageName "hasktorch-indef")
+            (OrLaterVersion (mkVersion [0]))
+            mainLibSet,
+          Dependency
+            (PackageName
+              "hasktorch-signatures-partial")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion
+                  (mkVersion [0, 0, 1]))
+                (LaterVersion
+                  (mkVersion [0, 0, 1])))
+              (EarlierVersion
+                (mkVersion [0, 0, 2])))
+            mainLibSet],
+        condTreeComponents = []}],
+  condForeignLibs = [],
+  condExecutables = [
+    _×_
+      (UnqualComponentName
+        "isdefinite-cpu")
+      CondNode {
+        condTreeData = Executable {
+          exeName = UnqualComponentName
+            "isdefinite-cpu",
+          modulePath = "Noop.hs",
+          exeScope = ExecutablePublic,
+          buildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [
+              SymbolicPath "exe"],
+            otherModules = [],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Just
+              Haskell2010,
+            otherLanguages = [],
+            defaultExtensions = [],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [
+              Dependency
+                (PackageName "base")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion (mkVersion [4, 7]))
+                    (LaterVersion
+                      (mkVersion [4, 7])))
+                  (EarlierVersion
+                    (mkVersion [5])))
+                mainLibSet,
+              Dependency
+                (PackageName "hasktorch")
+                (OrLaterVersion (mkVersion [0]))
+                (NonEmptySet.fromNonEmpty
+                  (NE.fromList
+                    [
+                      LSubLibName
+                        (UnqualComponentName
+                          "hasktorch-cpu")]))],
+            mixins = []}},
+        condTreeConstraints = [
+          Dependency
+            (PackageName "base")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion (mkVersion [4, 7]))
+                (LaterVersion
+                  (mkVersion [4, 7])))
+              (EarlierVersion
+                (mkVersion [5])))
+            mainLibSet,
+          Dependency
+            (PackageName "hasktorch")
+            (OrLaterVersion (mkVersion [0]))
+            (NonEmptySet.fromNonEmpty
+              (NE.fromList
+                [
+                  LSubLibName
+                    (UnqualComponentName
+                      "hasktorch-cpu")]))],
+        condTreeComponents = []},
+    _×_
+      (UnqualComponentName
+        "isdefinite-gpu")
+      CondNode {
+        condTreeData = Executable {
+          exeName = UnqualComponentName
+            "isdefinite-gpu",
+          modulePath = "Noop.hs",
+          exeScope = ExecutablePublic,
+          buildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [
+              SymbolicPath "exe"],
+            otherModules = [],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Just
+              Haskell2010,
+            otherLanguages = [],
+            defaultExtensions = [],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [
+              Dependency
+                (PackageName "base")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion (mkVersion [4, 7]))
+                    (LaterVersion
+                      (mkVersion [4, 7])))
+                  (EarlierVersion
+                    (mkVersion [5])))
+                mainLibSet,
+              Dependency
+                (PackageName "hasktorch")
+                (OrLaterVersion (mkVersion [0]))
+                (NonEmptySet.fromNonEmpty
+                  (NE.fromList
+                    [
+                      LSubLibName
+                        (UnqualComponentName
+                          "hasktorch-gpu")]))],
+            mixins = []}},
+        condTreeConstraints = [
+          Dependency
+            (PackageName "base")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion (mkVersion [4, 7]))
+                (LaterVersion
+                  (mkVersion [4, 7])))
+              (EarlierVersion
+                (mkVersion [5])))
+            mainLibSet,
+          Dependency
+            (PackageName "hasktorch")
+            (OrLaterVersion (mkVersion [0]))
+            (NonEmptySet.fromNonEmpty
+              (NE.fromList
+                [
+                  LSubLibName
+                    (UnqualComponentName
+                      "hasktorch-gpu")]))],
+        condTreeComponents = []},
+    _×_
+      (UnqualComponentName
+        "isdefinite")
+      CondNode {
+        condTreeData = Executable {
+          exeName = UnqualComponentName
+            "isdefinite",
+          modulePath = "Noop.hs",
+          exeScope = ExecutablePublic,
+          buildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [
+              SymbolicPath "exe"],
+            otherModules = [],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Just
+              Haskell2010,
+            otherLanguages = [],
+            defaultExtensions = [],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [
+              Dependency
+                (PackageName "base")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion (mkVersion [4, 7]))
+                    (LaterVersion
+                      (mkVersion [4, 7])))
+                  (EarlierVersion
+                    (mkVersion [5])))
+                mainLibSet,
+              Dependency
+                (PackageName "hasktorch")
+                (OrLaterVersion (mkVersion [0]))
+                mainLibSet],
+            mixins = []}},
+        condTreeConstraints = [
+          Dependency
+            (PackageName "base")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion (mkVersion [4, 7]))
+                (LaterVersion
+                  (mkVersion [4, 7])))
+              (EarlierVersion
+                (mkVersion [5])))
+            mainLibSet,
+          Dependency
+            (PackageName "hasktorch")
+            (OrLaterVersion (mkVersion [0]))
+            mainLibSet],
+        condTreeComponents = []},
+    _×_
+      (UnqualComponentName "memcheck")
+      CondNode {
+        condTreeData = Executable {
+          exeName = UnqualComponentName
+            "memcheck",
+          modulePath = "Memcheck.hs",
+          exeScope = ExecutablePublic,
+          buildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [
+              SymbolicPath "exe"],
+            otherModules = [],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Just
+              Haskell2010,
+            otherLanguages = [],
+            defaultExtensions = [],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [
+              Dependency
+                (PackageName "base")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion (mkVersion [4, 7]))
+                    (LaterVersion
+                      (mkVersion [4, 7])))
+                  (EarlierVersion
+                    (mkVersion [5])))
+                mainLibSet,
+              Dependency
+                (PackageName "hasktorch")
+                (OrLaterVersion (mkVersion [0]))
+                mainLibSet],
+            mixins = []}},
+        condTreeConstraints = [
+          Dependency
+            (PackageName "base")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion (mkVersion [4, 7]))
+                (LaterVersion
+                  (mkVersion [4, 7])))
+              (EarlierVersion
+                (mkVersion [5])))
+            mainLibSet,
+          Dependency
+            (PackageName "hasktorch")
+            (OrLaterVersion (mkVersion [0]))
+            mainLibSet],
+        condTreeComponents = []}],
+  condTestSuites = [
+    _×_
+      (UnqualComponentName "spec")
+      CondNode {
+        condTreeData = TestSuite {
+          testName = UnqualComponentName
+            "",
+          testInterface = TestSuiteExeV10
+            (mkVersion [1, 0])
+            "Spec.hs",
+          testBuildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [
+              SymbolicPath "tests"],
+            otherModules = [
+              ModuleName "Orphans",
+              ModuleName "MemorySpec",
+              ModuleName "RawLapackSVDSpec",
+              ModuleName
+                "GarbageCollectionSpec",
+              ModuleName
+                "Torch.Prelude.Extras",
+              ModuleName
+                "Torch.Core.LogAddSpec",
+              ModuleName
+                "Torch.Core.RandomSpec",
+              ModuleName
+                "Torch.Static.NN.AbsSpec",
+              ModuleName
+                "Torch.Static.NN.LinearSpec"],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Just
+              Haskell2010,
+            otherLanguages = [],
+            defaultExtensions = [
+              EnableExtension LambdaCase,
+              EnableExtension DataKinds,
+              EnableExtension TypeFamilies,
+              EnableExtension
+                TypeSynonymInstances,
+              EnableExtension
+                ScopedTypeVariables,
+              EnableExtension
+                FlexibleContexts,
+              EnableExtension CPP],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [
+              Dependency
+                (PackageName "QuickCheck")
+                (UnionVersionRanges
+                  (ThisVersion
+                    (mkVersion [2, 11]))
+                  (LaterVersion
+                    (mkVersion [2, 11])))
+                mainLibSet,
+              Dependency
+                (PackageName "backprop")
+                (UnionVersionRanges
+                  (ThisVersion
+                    (mkVersion [0, 2, 5]))
+                  (LaterVersion
+                    (mkVersion [0, 2, 5])))
+                mainLibSet,
+              Dependency
+                (PackageName "base")
+                (IntersectVersionRanges
+                  (UnionVersionRanges
+                    (ThisVersion (mkVersion [4, 7]))
+                    (LaterVersion
+                      (mkVersion [4, 7])))
+                  (EarlierVersion
+                    (mkVersion [5])))
+                mainLibSet,
+              Dependency
+                (PackageName "dimensions")
+                (UnionVersionRanges
+                  (ThisVersion (mkVersion [1, 0]))
+                  (LaterVersion
+                    (mkVersion [1, 0])))
+                mainLibSet,
+              Dependency
+                (PackageName
+                  "ghc-typelits-natnormalise")
+                (OrLaterVersion (mkVersion [0]))
+                mainLibSet,
+              Dependency
+                (PackageName "hasktorch")
+                (OrLaterVersion (mkVersion [0]))
+                mainLibSet,
+              Dependency
+                (PackageName "hspec")
+                (UnionVersionRanges
+                  (ThisVersion
+                    (mkVersion [2, 4, 4]))
+                  (LaterVersion
+                    (mkVersion [2, 4, 4])))
+                mainLibSet,
+              Dependency
+                (PackageName "singletons")
+                (UnionVersionRanges
+                  (ThisVersion (mkVersion [2, 2]))
+                  (LaterVersion
+                    (mkVersion [2, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName "mtl")
+                (UnionVersionRanges
+                  (ThisVersion
+                    (mkVersion [2, 2, 2]))
+                  (LaterVersion
+                    (mkVersion [2, 2, 2])))
+                mainLibSet,
+              Dependency
+                (PackageName
+                  "microlens-platform")
+                (UnionVersionRanges
+                  (ThisVersion
+                    (mkVersion [0, 3, 10]))
+                  (LaterVersion
+                    (mkVersion [0, 3, 10])))
+                mainLibSet,
+              Dependency
+                (PackageName "monad-loops")
+                (UnionVersionRanges
+                  (ThisVersion
+                    (mkVersion [0, 4, 3]))
+                  (LaterVersion
+                    (mkVersion [0, 4, 3])))
+                mainLibSet,
+              Dependency
+                (PackageName "time")
+                (UnionVersionRanges
+                  (ThisVersion
+                    (mkVersion [1, 8, 0]))
+                  (LaterVersion
+                    (mkVersion [1, 8, 0])))
+                mainLibSet,
+              Dependency
+                (PackageName "transformers")
+                (UnionVersionRanges
+                  (ThisVersion
+                    (mkVersion [0, 5, 5]))
+                  (LaterVersion
+                    (mkVersion [0, 5, 5])))
+                mainLibSet,
+              Dependency
+                (PackageName "generic-lens")
+                (OrLaterVersion (mkVersion [0]))
+                mainLibSet],
+            mixins = []}},
+        condTreeConstraints = [
+          Dependency
+            (PackageName "QuickCheck")
+            (UnionVersionRanges
+              (ThisVersion
+                (mkVersion [2, 11]))
+              (LaterVersion
+                (mkVersion [2, 11])))
+            mainLibSet,
+          Dependency
+            (PackageName "backprop")
+            (UnionVersionRanges
+              (ThisVersion
+                (mkVersion [0, 2, 5]))
+              (LaterVersion
+                (mkVersion [0, 2, 5])))
+            mainLibSet,
+          Dependency
+            (PackageName "base")
+            (IntersectVersionRanges
+              (UnionVersionRanges
+                (ThisVersion (mkVersion [4, 7]))
+                (LaterVersion
+                  (mkVersion [4, 7])))
+              (EarlierVersion
+                (mkVersion [5])))
+            mainLibSet,
+          Dependency
+            (PackageName "dimensions")
+            (UnionVersionRanges
+              (ThisVersion (mkVersion [1, 0]))
+              (LaterVersion
+                (mkVersion [1, 0])))
+            mainLibSet,
+          Dependency
+            (PackageName
+              "ghc-typelits-natnormalise")
+            (OrLaterVersion (mkVersion [0]))
+            mainLibSet,
+          Dependency
+            (PackageName "hasktorch")
+            (OrLaterVersion (mkVersion [0]))
+            mainLibSet,
+          Dependency
+            (PackageName "hspec")
+            (UnionVersionRanges
+              (ThisVersion
+                (mkVersion [2, 4, 4]))
+              (LaterVersion
+                (mkVersion [2, 4, 4])))
+            mainLibSet,
+          Dependency
+            (PackageName "singletons")
+            (UnionVersionRanges
+              (ThisVersion (mkVersion [2, 2]))
+              (LaterVersion
+                (mkVersion [2, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName "mtl")
+            (UnionVersionRanges
+              (ThisVersion
+                (mkVersion [2, 2, 2]))
+              (LaterVersion
+                (mkVersion [2, 2, 2])))
+            mainLibSet,
+          Dependency
+            (PackageName
+              "microlens-platform")
+            (UnionVersionRanges
+              (ThisVersion
+                (mkVersion [0, 3, 10]))
+              (LaterVersion
+                (mkVersion [0, 3, 10])))
+            mainLibSet,
+          Dependency
+            (PackageName "monad-loops")
+            (UnionVersionRanges
+              (ThisVersion
+                (mkVersion [0, 4, 3]))
+              (LaterVersion
+                (mkVersion [0, 4, 3])))
+            mainLibSet,
+          Dependency
+            (PackageName "time")
+            (UnionVersionRanges
+              (ThisVersion
+                (mkVersion [1, 8, 0]))
+              (LaterVersion
+                (mkVersion [1, 8, 0])))
+            mainLibSet,
+          Dependency
+            (PackageName "transformers")
+            (UnionVersionRanges
+              (ThisVersion
+                (mkVersion [0, 5, 5]))
+              (LaterVersion
+                (mkVersion [0, 5, 5])))
+            mainLibSet,
+          Dependency
+            (PackageName "generic-lens")
+            (OrLaterVersion (mkVersion [0]))
+            mainLibSet],
+        condTreeComponents = []}],
+  condBenchmarks = []}
diff --git a/Cabal-tests/tests/ParserTests/regressions/hidden-main-lib.expr b/Cabal-tests/tests/ParserTests/regressions/hidden-main-lib.expr
index 6a7484dc4280c62e7a82ab1c2bc76ddb1f41b265..bcb1f1f5bbb91d301bad466f2f5701867343f07c 100644
--- a/Cabal-tests/tests/ParserTests/regressions/hidden-main-lib.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/hidden-main-lib.expr
@@ -34,8 +34,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/indentation.expr b/Cabal-tests/tests/ParserTests/regressions/indentation.expr
index 10464b3cf756f6b564c76cf63d5883406ceab2c3..2b747fd1b8e263d381fbc42444c96b20581445f6 100644
--- a/Cabal-tests/tests/ParserTests/regressions/indentation.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/indentation.expr
@@ -31,8 +31,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/indentation2.expr b/Cabal-tests/tests/ParserTests/regressions/indentation2.expr
index cc3109b05b1ea01faff13f52a40e74e65042e030..56f23f26d0e84f468eb43ad4f9e8f8fd2a951416 100644
--- a/Cabal-tests/tests/ParserTests/regressions/indentation2.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/indentation2.expr
@@ -31,8 +31,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/indentation3.expr b/Cabal-tests/tests/ParserTests/regressions/indentation3.expr
index 1d7fbe36a65ebac2c133f4b02dab72a4f6de83c9..f7ed51e79fa19d5cfaddefad48a18941d7e80881 100644
--- a/Cabal-tests/tests/ParserTests/regressions/indentation3.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/indentation3.expr
@@ -31,8 +31,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/issue-5055.expr b/Cabal-tests/tests/ParserTests/regressions/issue-5055.expr
index 6467cef70275df2bf695cadf8e49a6801a621b68..96577831b3691a276ac0f301f003fee7f0fce48a 100644
--- a/Cabal-tests/tests/ParserTests/regressions/issue-5055.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/issue-5055.expr
@@ -34,8 +34,10 @@ GenericPackageDescription
                                                             extraFrameworkDirs = [],
                                                             extraGHCiLibs = [],
                                                             extraLibDirs = [],
+                                                            extraLibDirsStatic = [],
                                                             extraLibFlavours = [],
                                                             extraLibs = [],
+                                                            extraLibsStatic = [],
                                                             frameworks = [],
                                                             hsSourceDirs = [],
                                                             hsc2hsOptions = [],
@@ -106,8 +108,10 @@ GenericPackageDescription
                                                                                                               extraFrameworkDirs = [],
                                                                                                               extraGHCiLibs = [],
                                                                                                               extraLibDirs = [],
+                                                                                                              extraLibDirsStatic = [],
                                                                                                               extraLibFlavours = [],
                                                                                                               extraLibs = [],
+                                                                                                              extraLibsStatic = [],
                                                                                                               frameworks = [],
                                                                                                               hsSourceDirs = [],
                                                                                                               hsc2hsOptions = [],
@@ -173,8 +177,10 @@ GenericPackageDescription
                                                                extraFrameworkDirs = [],
                                                                extraGHCiLibs = [],
                                                                extraLibDirs = [],
+                                                               extraLibDirsStatic = [],
                                                                extraLibFlavours = [],
                                                                extraLibs = [],
+                                                               extraLibsStatic = [],
                                                                frameworks = [],
                                                                hsSourceDirs = [],
                                                                hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/issue-5846.expr b/Cabal-tests/tests/ParserTests/regressions/issue-5846.expr
index e6d589977969abf7599ebd8513a35d42402cf21d..996d49e6625f65e6f5f9a52046d1e2dcc0f0c3d7 100644
--- a/Cabal-tests/tests/ParserTests/regressions/issue-5846.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/issue-5846.expr
@@ -1,171 +1,180 @@
-GenericPackageDescription
-  {condBenchmarks = [],
-   condExecutables = [],
-   condForeignLibs = [],
-   condLibrary = Just
-                   CondNode
-                     {condTreeComponents = [],
-                      condTreeConstraints = [Dependency
-                                               (PackageName "lib1")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               (NonEmptySet.fromNonEmpty
-                                                  (NE.fromList
-                                                     [LSubLibName (UnqualComponentName "a"),
-                                                      LSubLibName (UnqualComponentName "b")])),
-                                             Dependency
-                                               (PackageName "lib2")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               (NonEmptySet.fromNonEmpty
-                                                  (NE.fromList
-                                                     [LSubLibName (UnqualComponentName "c")])),
-                                             Dependency
-                                               (PackageName "lib3")
-                                               (OrLaterVersion (mkVersion [1]))
-                                               (NonEmptySet.fromNonEmpty
-                                                  (NE.fromList
-                                                     [LSubLibName (UnqualComponentName "d")])),
-                                             Dependency
-                                               (PackageName "lib4")
-                                               (OrLaterVersion (mkVersion [1]))
-                                               (NonEmptySet.fromNonEmpty
-                                                  (NE.fromList
-                                                     [LSubLibName (UnqualComponentName "a"),
-                                                      LSubLibName (UnqualComponentName "b")]))],
-                      condTreeData = Library
-                                       {exposedModules = [],
-                                        libBuildInfo = BuildInfo
-                                                         {asmOptions = [],
-                                                          asmSources = [],
-                                                          autogenIncludes = [],
-                                                          autogenModules = [],
-                                                          buildToolDepends = [],
-                                                          buildTools = [],
-                                                          buildable = True,
-                                                          cSources = [],
-                                                          ccOptions = [],
-                                                          cmmOptions = [],
-                                                          cmmSources = [],
-                                                          cppOptions = [],
-                                                          customFieldsBI = [],
-                                                          cxxOptions = [],
-                                                          cxxSources = [],
-                                                          defaultExtensions = [],
-                                                          defaultLanguage = Just Haskell2010,
-                                                          extraBundledLibs = [],
-                                                          extraDynLibFlavours = [],
-                                                          extraFrameworkDirs = [],
-                                                          extraGHCiLibs = [],
-                                                          extraLibDirs = [],
-                                                          extraLibFlavours = [],
-                                                          extraLibs = [],
-                                                          frameworks = [],
-                                                          hsSourceDirs = [],
-                                                          hsc2hsOptions = [],
-                                                          includeDirs = [],
-                                                          includes = [],
-                                                          installIncludes = [],
-                                                          jsSources = [],
-                                                          ldOptions = [],
-                                                          mixins = [],
-                                                          oldExtensions = [],
-                                                          options = PerCompilerFlavor [] [],
-                                                          otherExtensions = [],
-                                                          otherLanguages = [],
-                                                          otherModules = [],
-                                                          pkgconfigDepends = [],
-                                                          profOptions = PerCompilerFlavor [] [],
-                                                          sharedOptions = PerCompilerFlavor [] [],
-                                                          staticOptions = PerCompilerFlavor [] [],
-                                                          targetBuildDepends = [Dependency
-                                                                                  (PackageName
-                                                                                     "lib1")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  (NonEmptySet.fromNonEmpty
-                                                                                     (NE.fromList
-                                                                                        [LSubLibName
-                                                                                           (UnqualComponentName
-                                                                                              "a"),
-                                                                                         LSubLibName
-                                                                                           (UnqualComponentName
-                                                                                              "b")])),
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "lib2")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  (NonEmptySet.fromNonEmpty
-                                                                                     (NE.fromList
-                                                                                        [LSubLibName
-                                                                                           (UnqualComponentName
-                                                                                              "c")])),
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "lib3")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [1]))
-                                                                                  (NonEmptySet.fromNonEmpty
-                                                                                     (NE.fromList
-                                                                                        [LSubLibName
-                                                                                           (UnqualComponentName
-                                                                                              "d")])),
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "lib4")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [1]))
-                                                                                  (NonEmptySet.fromNonEmpty
-                                                                                     (NE.fromList
-                                                                                        [LSubLibName
-                                                                                           (UnqualComponentName
-                                                                                              "a"),
-                                                                                         LSubLibName
-                                                                                           (UnqualComponentName
-                                                                                              "b")]))],
-                                                          virtualModules = []},
-                                        libExposed = True,
-                                        libName = LMainLibName,
-                                        libVisibility = LibraryVisibilityPublic,
-                                        reexportedModules = [],
-                                        signatures = []}},
-   condSubLibraries = [],
-   condTestSuites = [],
-   genPackageFlags = [],
-   gpdScannedVersion = Nothing,
-   packageDescription = PackageDescription
-                          {author = "",
-                           benchmarks = [],
-                           bugReports = "",
-                           buildTypeRaw = Nothing,
-                           category = "",
-                           copyright = "",
-                           customFieldsPD = [],
-                           dataDir = ".",
-                           dataFiles = [],
-                           description = "",
-                           executables = [],
-                           extraDocFiles = [],
-                           extraSrcFiles = [],
-                           extraTmpFiles = [],
-                           foreignLibs = [],
-                           homepage = "",
-                           library = Nothing,
-                           licenseFiles = [],
-                           licenseRaw = Left NONE,
-                           maintainer = "",
-                           package = PackageIdentifier
-                                       {pkgName = PackageName "issue",
-                                        pkgVersion = mkVersion [5846]},
-                           pkgUrl = "",
-                           setupBuildInfo = Nothing,
-                           sourceRepos = [],
-                           specVersion = CabalSpecV3_0,
-                           stability = "",
-                           subLibraries = [],
-                           synopsis = "",
-                           testSuites = [],
-                           testedWith = []}}
+GenericPackageDescription {
+  packageDescription =
+  PackageDescription {
+    specVersion = CabalSpecV3_0,
+    package = PackageIdentifier {
+      pkgName = PackageName "issue",
+      pkgVersion = mkVersion [5846]},
+    licenseRaw = Left NONE,
+    licenseFiles = [],
+    copyright = "",
+    maintainer = "",
+    author = "",
+    stability = "",
+    testedWith = [],
+    homepage = "",
+    pkgUrl = "",
+    bugReports = "",
+    sourceRepos = [],
+    synopsis = "",
+    description = "",
+    category = "",
+    customFieldsPD = [],
+    buildTypeRaw = Nothing,
+    setupBuildInfo = Nothing,
+    library = Nothing,
+    subLibraries = [],
+    executables = [],
+    foreignLibs = [],
+    testSuites = [],
+    benchmarks = [],
+    dataFiles = [],
+    dataDir = ".",
+    extraSrcFiles = [],
+    extraTmpFiles = [],
+    extraDocFiles = []},
+  gpdScannedVersion = Nothing,
+  genPackageFlags = [],
+  condLibrary = Just
+    CondNode {
+      condTreeData = Library {
+        libName = LMainLibName,
+        exposedModules = [],
+        reexportedModules = [],
+        signatures = [],
+        libExposed = True,
+        libVisibility =
+        LibraryVisibilityPublic,
+        libBuildInfo = BuildInfo {
+          buildable = True,
+          buildTools = [],
+          buildToolDepends = [],
+          cppOptions = [],
+          asmOptions = [],
+          cmmOptions = [],
+          ccOptions = [],
+          cxxOptions = [],
+          ldOptions = [],
+          hsc2hsOptions = [],
+          pkgconfigDepends = [],
+          frameworks = [],
+          extraFrameworkDirs = [],
+          asmSources = [],
+          cmmSources = [],
+          cSources = [],
+          cxxSources = [],
+          jsSources = [],
+          hsSourceDirs = [],
+          otherModules = [],
+          virtualModules = [],
+          autogenModules = [],
+          defaultLanguage = Just
+            Haskell2010,
+          otherLanguages = [],
+          defaultExtensions = [],
+          otherExtensions = [],
+          oldExtensions = [],
+          extraLibs = [],
+          extraLibsStatic = [],
+          extraGHCiLibs = [],
+          extraBundledLibs = [],
+          extraLibFlavours = [],
+          extraDynLibFlavours = [],
+          extraLibDirs = [],
+          extraLibDirsStatic = [],
+          includeDirs = [],
+          includes = [],
+          autogenIncludes = [],
+          installIncludes = [],
+          options = PerCompilerFlavor
+            []
+            [],
+          profOptions = PerCompilerFlavor
+            []
+            [],
+          sharedOptions =
+          PerCompilerFlavor [] [],
+          staticOptions =
+          PerCompilerFlavor [] [],
+          customFieldsBI = [],
+          targetBuildDepends = [
+            Dependency
+              (PackageName "lib1")
+              (OrLaterVersion (mkVersion [0]))
+              (NonEmptySet.fromNonEmpty
+                (NE.fromList
+                  [
+                    LSubLibName
+                      (UnqualComponentName "a"),
+                    LSubLibName
+                      (UnqualComponentName "b")])),
+            Dependency
+              (PackageName "lib2")
+              (OrLaterVersion (mkVersion [0]))
+              (NonEmptySet.fromNonEmpty
+                (NE.fromList
+                  [
+                    LSubLibName
+                      (UnqualComponentName "c")])),
+            Dependency
+              (PackageName "lib3")
+              (OrLaterVersion (mkVersion [1]))
+              (NonEmptySet.fromNonEmpty
+                (NE.fromList
+                  [
+                    LSubLibName
+                      (UnqualComponentName "d")])),
+            Dependency
+              (PackageName "lib4")
+              (OrLaterVersion (mkVersion [1]))
+              (NonEmptySet.fromNonEmpty
+                (NE.fromList
+                  [
+                    LSubLibName
+                      (UnqualComponentName "a"),
+                    LSubLibName
+                      (UnqualComponentName "b")]))],
+          mixins = []}},
+      condTreeConstraints = [
+        Dependency
+          (PackageName "lib1")
+          (OrLaterVersion (mkVersion [0]))
+          (NonEmptySet.fromNonEmpty
+            (NE.fromList
+              [
+                LSubLibName
+                  (UnqualComponentName "a"),
+                LSubLibName
+                  (UnqualComponentName "b")])),
+        Dependency
+          (PackageName "lib2")
+          (OrLaterVersion (mkVersion [0]))
+          (NonEmptySet.fromNonEmpty
+            (NE.fromList
+              [
+                LSubLibName
+                  (UnqualComponentName "c")])),
+        Dependency
+          (PackageName "lib3")
+          (OrLaterVersion (mkVersion [1]))
+          (NonEmptySet.fromNonEmpty
+            (NE.fromList
+              [
+                LSubLibName
+                  (UnqualComponentName "d")])),
+        Dependency
+          (PackageName "lib4")
+          (OrLaterVersion (mkVersion [1]))
+          (NonEmptySet.fromNonEmpty
+            (NE.fromList
+              [
+                LSubLibName
+                  (UnqualComponentName "a"),
+                LSubLibName
+                  (UnqualComponentName "b")]))],
+      condTreeComponents = []},
+  condSubLibraries = [],
+  condForeignLibs = [],
+  condExecutables = [],
+  condTestSuites = [],
+  condBenchmarks = []}
diff --git a/Cabal-tests/tests/ParserTests/regressions/issue-6083-a.expr b/Cabal-tests/tests/ParserTests/regressions/issue-6083-a.expr
index 17334cd5ca99e818d672a4f55edbe7afa56db1a1..aa4f6492cd7878c44b32184d497d5963b6035965 100644
--- a/Cabal-tests/tests/ParserTests/regressions/issue-6083-a.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/issue-6083-a.expr
@@ -1,337 +1,370 @@
-GenericPackageDescription
-  {condBenchmarks = [],
-   condExecutables = [_×_
-                        (UnqualComponentName "demo-a")
-                        CondNode
-                          {condTreeComponents = [],
-                           condTreeConstraints = [Dependency
-                                                    (PackageName "issue")
-                                                    (OrLaterVersion (mkVersion [0]))
-                                                    mainLibSet,
-                                                  Dependency
-                                                    (PackageName "sublib")
-                                                    (OrLaterVersion (mkVersion [0]))
-                                                    mainLibSet],
-                           condTreeData = Executable
-                                            {buildInfo = BuildInfo
-                                                           {asmOptions = [],
-                                                            asmSources = [],
-                                                            autogenIncludes = [],
-                                                            autogenModules = [],
-                                                            buildToolDepends = [],
-                                                            buildTools = [],
-                                                            buildable = True,
-                                                            cSources = [],
-                                                            ccOptions = [],
-                                                            cmmOptions = [],
-                                                            cmmSources = [],
-                                                            cppOptions = [],
-                                                            customFieldsBI = [],
-                                                            cxxOptions = [],
-                                                            cxxSources = [],
-                                                            defaultExtensions = [],
-                                                            defaultLanguage = Nothing,
-                                                            extraBundledLibs = [],
-                                                            extraDynLibFlavours = [],
-                                                            extraFrameworkDirs = [],
-                                                            extraGHCiLibs = [],
-                                                            extraLibDirs = [],
-                                                            extraLibFlavours = [],
-                                                            extraLibs = [],
-                                                            frameworks = [],
-                                                            hsSourceDirs = [],
-                                                            hsc2hsOptions = [],
-                                                            includeDirs = [],
-                                                            includes = [],
-                                                            installIncludes = [],
-                                                            jsSources = [],
-                                                            ldOptions = [],
-                                                            mixins = [],
-                                                            oldExtensions = [],
-                                                            options = PerCompilerFlavor [] [],
-                                                            otherExtensions = [],
-                                                            otherLanguages = [],
-                                                            otherModules = [],
-                                                            pkgconfigDepends = [],
-                                                            profOptions = PerCompilerFlavor [] [],
-                                                            sharedOptions = PerCompilerFlavor [] [],
-                                                            staticOptions = PerCompilerFlavor [] [],
-                                                            targetBuildDepends = [Dependency
-                                                                                    (PackageName
-                                                                                       "issue")
-                                                                                    (OrLaterVersion
-                                                                                       (mkVersion
-                                                                                          [0]))
-                                                                                    mainLibSet,
-                                                                                  Dependency
-                                                                                    (PackageName
-                                                                                       "sublib")
-                                                                                    (OrLaterVersion
-                                                                                       (mkVersion
-                                                                                          [0]))
-                                                                                    mainLibSet],
-                                                            virtualModules = []},
-                                             exeName = UnqualComponentName "demo-a",
-                                             exeScope = ExecutablePublic,
-                                             modulePath = "Main.hs"}},
-                      _×_
-                        (UnqualComponentName "demo-b")
-                        CondNode
-                          {condTreeComponents = [],
-                           condTreeConstraints = [Dependency
-                                                    (PackageName "issue")
-                                                    (OrLaterVersion (mkVersion [0]))
-                                                    mainLibSet,
-                                                  Dependency
-                                                    (PackageName "issue")
-                                                    (OrLaterVersion (mkVersion [0]))
-                                                    (NonEmptySet.fromNonEmpty
-                                                       (NE.fromList
-                                                          [LSubLibName
-                                                             (UnqualComponentName "sublib")]))],
-                           condTreeData = Executable
-                                            {buildInfo = BuildInfo
-                                                           {asmOptions = [],
-                                                            asmSources = [],
-                                                            autogenIncludes = [],
-                                                            autogenModules = [],
-                                                            buildToolDepends = [],
-                                                            buildTools = [],
-                                                            buildable = True,
-                                                            cSources = [],
-                                                            ccOptions = [],
-                                                            cmmOptions = [],
-                                                            cmmSources = [],
-                                                            cppOptions = [],
-                                                            customFieldsBI = [],
-                                                            cxxOptions = [],
-                                                            cxxSources = [],
-                                                            defaultExtensions = [],
-                                                            defaultLanguage = Nothing,
-                                                            extraBundledLibs = [],
-                                                            extraDynLibFlavours = [],
-                                                            extraFrameworkDirs = [],
-                                                            extraGHCiLibs = [],
-                                                            extraLibDirs = [],
-                                                            extraLibFlavours = [],
-                                                            extraLibs = [],
-                                                            frameworks = [],
-                                                            hsSourceDirs = [],
-                                                            hsc2hsOptions = [],
-                                                            includeDirs = [],
-                                                            includes = [],
-                                                            installIncludes = [],
-                                                            jsSources = [],
-                                                            ldOptions = [],
-                                                            mixins = [],
-                                                            oldExtensions = [],
-                                                            options = PerCompilerFlavor [] [],
-                                                            otherExtensions = [],
-                                                            otherLanguages = [],
-                                                            otherModules = [],
-                                                            pkgconfigDepends = [],
-                                                            profOptions = PerCompilerFlavor [] [],
-                                                            sharedOptions = PerCompilerFlavor [] [],
-                                                            staticOptions = PerCompilerFlavor [] [],
-                                                            targetBuildDepends = [Dependency
-                                                                                    (PackageName
-                                                                                       "issue")
-                                                                                    (OrLaterVersion
-                                                                                       (mkVersion
-                                                                                          [0]))
-                                                                                    mainLibSet,
-                                                                                  Dependency
-                                                                                    (PackageName
-                                                                                       "issue")
-                                                                                    (OrLaterVersion
-                                                                                       (mkVersion
-                                                                                          [0]))
-                                                                                    (NonEmptySet.fromNonEmpty
-                                                                                       (NE.fromList
-                                                                                          [LSubLibName
-                                                                                             (UnqualComponentName
-                                                                                                "sublib")]))],
-                                                            virtualModules = []},
-                                             exeName = UnqualComponentName "demo-b",
-                                             exeScope = ExecutablePublic,
-                                             modulePath = "Main.hs"}}],
-   condForeignLibs = [],
-   condLibrary = Just
-                   CondNode
-                     {condTreeComponents = [],
-                      condTreeConstraints = [Dependency
-                                               (PackageName "base")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               mainLibSet,
-                                             Dependency
-                                               (PackageName "issue")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               (NonEmptySet.fromNonEmpty
-                                                  (NE.fromList
-                                                     [LSubLibName
-                                                        (UnqualComponentName "sublib")]))],
-                      condTreeData = Library
-                                       {exposedModules = [],
-                                        libBuildInfo = BuildInfo
-                                                         {asmOptions = [],
-                                                          asmSources = [],
-                                                          autogenIncludes = [],
-                                                          autogenModules = [],
-                                                          buildToolDepends = [],
-                                                          buildTools = [],
-                                                          buildable = True,
-                                                          cSources = [],
-                                                          ccOptions = [],
-                                                          cmmOptions = [],
-                                                          cmmSources = [],
-                                                          cppOptions = [],
-                                                          customFieldsBI = [],
-                                                          cxxOptions = [],
-                                                          cxxSources = [],
-                                                          defaultExtensions = [],
-                                                          defaultLanguage = Just Haskell2010,
-                                                          extraBundledLibs = [],
-                                                          extraDynLibFlavours = [],
-                                                          extraFrameworkDirs = [],
-                                                          extraGHCiLibs = [],
-                                                          extraLibDirs = [],
-                                                          extraLibFlavours = [],
-                                                          extraLibs = [],
-                                                          frameworks = [],
-                                                          hsSourceDirs = [],
-                                                          hsc2hsOptions = [],
-                                                          includeDirs = [],
-                                                          includes = [],
-                                                          installIncludes = [],
-                                                          jsSources = [],
-                                                          ldOptions = [],
-                                                          mixins = [],
-                                                          oldExtensions = [],
-                                                          options = PerCompilerFlavor [] [],
-                                                          otherExtensions = [],
-                                                          otherLanguages = [],
-                                                          otherModules = [],
-                                                          pkgconfigDepends = [],
-                                                          profOptions = PerCompilerFlavor [] [],
-                                                          sharedOptions = PerCompilerFlavor [] [],
-                                                          staticOptions = PerCompilerFlavor [] [],
-                                                          targetBuildDepends = [Dependency
-                                                                                  (PackageName
-                                                                                     "base")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  mainLibSet,
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "issue")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  (NonEmptySet.fromNonEmpty
-                                                                                     (NE.fromList
-                                                                                        [LSubLibName
-                                                                                           (UnqualComponentName
-                                                                                              "sublib")]))],
-                                                          virtualModules = []},
-                                        libExposed = True,
-                                        libName = LMainLibName,
-                                        libVisibility = LibraryVisibilityPublic,
-                                        reexportedModules = [],
-                                        signatures = []}},
-   condSubLibraries = [_×_
-                         (UnqualComponentName "sublib")
-                         CondNode
-                           {condTreeComponents = [],
-                            condTreeConstraints = [],
-                            condTreeData = Library
-                                             {exposedModules = [],
-                                              libBuildInfo = BuildInfo
-                                                               {asmOptions = [],
-                                                                asmSources = [],
-                                                                autogenIncludes = [],
-                                                                autogenModules = [],
-                                                                buildToolDepends = [],
-                                                                buildTools = [],
-                                                                buildable = True,
-                                                                cSources = [],
-                                                                ccOptions = [],
-                                                                cmmOptions = [],
-                                                                cmmSources = [],
-                                                                cppOptions = [],
-                                                                customFieldsBI = [],
-                                                                cxxOptions = [],
-                                                                cxxSources = [],
-                                                                defaultExtensions = [],
-                                                                defaultLanguage = Just Haskell2010,
-                                                                extraBundledLibs = [],
-                                                                extraDynLibFlavours = [],
-                                                                extraFrameworkDirs = [],
-                                                                extraGHCiLibs = [],
-                                                                extraLibDirs = [],
-                                                                extraLibFlavours = [],
-                                                                extraLibs = [],
-                                                                frameworks = [],
-                                                                hsSourceDirs = [],
-                                                                hsc2hsOptions = [],
-                                                                includeDirs = [],
-                                                                includes = [],
-                                                                installIncludes = [],
-                                                                jsSources = [],
-                                                                ldOptions = [],
-                                                                mixins = [],
-                                                                oldExtensions = [],
-                                                                options = PerCompilerFlavor [] [],
-                                                                otherExtensions = [],
-                                                                otherLanguages = [],
-                                                                otherModules = [],
-                                                                pkgconfigDepends = [],
-                                                                profOptions = PerCompilerFlavor
-                                                                                [] [],
-                                                                sharedOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                staticOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                targetBuildDepends = [],
-                                                                virtualModules = []},
-                                              libExposed = True,
-                                              libName = LSubLibName (UnqualComponentName "sublib"),
-                                              libVisibility = LibraryVisibilityPrivate,
-                                              reexportedModules = [],
-                                              signatures = []}}],
-   condTestSuites = [],
-   genPackageFlags = [],
-   gpdScannedVersion = Nothing,
-   packageDescription = PackageDescription
-                          {author = "",
-                           benchmarks = [],
-                           bugReports = "",
-                           buildTypeRaw = Nothing,
-                           category = "",
-                           copyright = "",
-                           customFieldsPD = [],
-                           dataDir = ".",
-                           dataFiles = [],
-                           description = "",
-                           executables = [],
-                           extraDocFiles = [],
-                           extraSrcFiles = [],
-                           extraTmpFiles = [],
-                           foreignLibs = [],
-                           homepage = "",
-                           library = Nothing,
-                           licenseFiles = [],
-                           licenseRaw = Left NONE,
-                           maintainer = "",
-                           package = PackageIdentifier
-                                       {pkgName = PackageName "issue",
-                                        pkgVersion = mkVersion [6083]},
-                           pkgUrl = "",
-                           setupBuildInfo = Nothing,
-                           sourceRepos = [],
-                           specVersion = CabalSpecV3_4,
-                           stability = "",
-                           subLibraries = [],
-                           synopsis = "",
-                           testSuites = [],
-                           testedWith = []}}
+GenericPackageDescription {
+  packageDescription =
+  PackageDescription {
+    specVersion = CabalSpecV3_4,
+    package = PackageIdentifier {
+      pkgName = PackageName "issue",
+      pkgVersion = mkVersion [6083]},
+    licenseRaw = Left NONE,
+    licenseFiles = [],
+    copyright = "",
+    maintainer = "",
+    author = "",
+    stability = "",
+    testedWith = [],
+    homepage = "",
+    pkgUrl = "",
+    bugReports = "",
+    sourceRepos = [],
+    synopsis = "",
+    description = "",
+    category = "",
+    customFieldsPD = [],
+    buildTypeRaw = Nothing,
+    setupBuildInfo = Nothing,
+    library = Nothing,
+    subLibraries = [],
+    executables = [],
+    foreignLibs = [],
+    testSuites = [],
+    benchmarks = [],
+    dataFiles = [],
+    dataDir = ".",
+    extraSrcFiles = [],
+    extraTmpFiles = [],
+    extraDocFiles = []},
+  gpdScannedVersion = Nothing,
+  genPackageFlags = [],
+  condLibrary = Just
+    CondNode {
+      condTreeData = Library {
+        libName = LMainLibName,
+        exposedModules = [],
+        reexportedModules = [],
+        signatures = [],
+        libExposed = True,
+        libVisibility =
+        LibraryVisibilityPublic,
+        libBuildInfo = BuildInfo {
+          buildable = True,
+          buildTools = [],
+          buildToolDepends = [],
+          cppOptions = [],
+          asmOptions = [],
+          cmmOptions = [],
+          ccOptions = [],
+          cxxOptions = [],
+          ldOptions = [],
+          hsc2hsOptions = [],
+          pkgconfigDepends = [],
+          frameworks = [],
+          extraFrameworkDirs = [],
+          asmSources = [],
+          cmmSources = [],
+          cSources = [],
+          cxxSources = [],
+          jsSources = [],
+          hsSourceDirs = [],
+          otherModules = [],
+          virtualModules = [],
+          autogenModules = [],
+          defaultLanguage = Just
+            Haskell2010,
+          otherLanguages = [],
+          defaultExtensions = [],
+          otherExtensions = [],
+          oldExtensions = [],
+          extraLibs = [],
+          extraLibsStatic = [],
+          extraGHCiLibs = [],
+          extraBundledLibs = [],
+          extraLibFlavours = [],
+          extraDynLibFlavours = [],
+          extraLibDirs = [],
+          extraLibDirsStatic = [],
+          includeDirs = [],
+          includes = [],
+          autogenIncludes = [],
+          installIncludes = [],
+          options = PerCompilerFlavor
+            []
+            [],
+          profOptions = PerCompilerFlavor
+            []
+            [],
+          sharedOptions =
+          PerCompilerFlavor [] [],
+          staticOptions =
+          PerCompilerFlavor [] [],
+          customFieldsBI = [],
+          targetBuildDepends = [
+            Dependency
+              (PackageName "base")
+              (OrLaterVersion (mkVersion [0]))
+              mainLibSet,
+            Dependency
+              (PackageName "issue")
+              (OrLaterVersion (mkVersion [0]))
+              (NonEmptySet.fromNonEmpty
+                (NE.fromList
+                  [
+                    LSubLibName
+                      (UnqualComponentName
+                        "sublib")]))],
+          mixins = []}},
+      condTreeConstraints = [
+        Dependency
+          (PackageName "base")
+          (OrLaterVersion (mkVersion [0]))
+          mainLibSet,
+        Dependency
+          (PackageName "issue")
+          (OrLaterVersion (mkVersion [0]))
+          (NonEmptySet.fromNonEmpty
+            (NE.fromList
+              [
+                LSubLibName
+                  (UnqualComponentName
+                    "sublib")]))],
+      condTreeComponents = []},
+  condSubLibraries = [
+    _×_
+      (UnqualComponentName "sublib")
+      CondNode {
+        condTreeData = Library {
+          libName = LSubLibName
+            (UnqualComponentName "sublib"),
+          exposedModules = [],
+          reexportedModules = [],
+          signatures = [],
+          libExposed = True,
+          libVisibility =
+          LibraryVisibilityPrivate,
+          libBuildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [],
+            otherModules = [],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Just
+              Haskell2010,
+            otherLanguages = [],
+            defaultExtensions = [],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [],
+            mixins = []}},
+        condTreeConstraints = [],
+        condTreeComponents = []}],
+  condForeignLibs = [],
+  condExecutables = [
+    _×_
+      (UnqualComponentName "demo-a")
+      CondNode {
+        condTreeData = Executable {
+          exeName = UnqualComponentName
+            "demo-a",
+          modulePath = "Main.hs",
+          exeScope = ExecutablePublic,
+          buildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [],
+            otherModules = [],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Nothing,
+            otherLanguages = [],
+            defaultExtensions = [],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [
+              Dependency
+                (PackageName "issue")
+                (OrLaterVersion (mkVersion [0]))
+                mainLibSet,
+              Dependency
+                (PackageName "sublib")
+                (OrLaterVersion (mkVersion [0]))
+                mainLibSet],
+            mixins = []}},
+        condTreeConstraints = [
+          Dependency
+            (PackageName "issue")
+            (OrLaterVersion (mkVersion [0]))
+            mainLibSet,
+          Dependency
+            (PackageName "sublib")
+            (OrLaterVersion (mkVersion [0]))
+            mainLibSet],
+        condTreeComponents = []},
+    _×_
+      (UnqualComponentName "demo-b")
+      CondNode {
+        condTreeData = Executable {
+          exeName = UnqualComponentName
+            "demo-b",
+          modulePath = "Main.hs",
+          exeScope = ExecutablePublic,
+          buildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [],
+            otherModules = [],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Nothing,
+            otherLanguages = [],
+            defaultExtensions = [],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [
+              Dependency
+                (PackageName "issue")
+                (OrLaterVersion (mkVersion [0]))
+                mainLibSet,
+              Dependency
+                (PackageName "issue")
+                (OrLaterVersion (mkVersion [0]))
+                (NonEmptySet.fromNonEmpty
+                  (NE.fromList
+                    [
+                      LSubLibName
+                        (UnqualComponentName
+                          "sublib")]))],
+            mixins = []}},
+        condTreeConstraints = [
+          Dependency
+            (PackageName "issue")
+            (OrLaterVersion (mkVersion [0]))
+            mainLibSet,
+          Dependency
+            (PackageName "issue")
+            (OrLaterVersion (mkVersion [0]))
+            (NonEmptySet.fromNonEmpty
+              (NE.fromList
+                [
+                  LSubLibName
+                    (UnqualComponentName
+                      "sublib")]))],
+        condTreeComponents = []}],
+  condTestSuites = [],
+  condBenchmarks = []}
diff --git a/Cabal-tests/tests/ParserTests/regressions/issue-6083-b.expr b/Cabal-tests/tests/ParserTests/regressions/issue-6083-b.expr
index bb0f583973c79e539d386874529fecf237455ac0..208e17e41f045f834f5dd9d50613cc9fea90f5b7 100644
--- a/Cabal-tests/tests/ParserTests/regressions/issue-6083-b.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/issue-6083-b.expr
@@ -1,344 +1,380 @@
-GenericPackageDescription
-  {condBenchmarks = [],
-   condExecutables = [_×_
-                        (UnqualComponentName "demo-a")
-                        CondNode
-                          {condTreeComponents = [],
-                           condTreeConstraints = [Dependency
-                                                    (PackageName "issue")
-                                                    (OrLaterVersion (mkVersion [0]))
-                                                    mainLibSet,
-                                                  Dependency
-                                                    (PackageName "issue")
-                                                    (OrLaterVersion (mkVersion [0]))
-                                                    (NonEmptySet.fromNonEmpty
-                                                       (NE.fromList
-                                                          [LSubLibName
-                                                             (UnqualComponentName "sublib")]))],
-                           condTreeData = Executable
-                                            {buildInfo = BuildInfo
-                                                           {asmOptions = [],
-                                                            asmSources = [],
-                                                            autogenIncludes = [],
-                                                            autogenModules = [],
-                                                            buildToolDepends = [],
-                                                            buildTools = [],
-                                                            buildable = True,
-                                                            cSources = [],
-                                                            ccOptions = [],
-                                                            cmmOptions = [],
-                                                            cmmSources = [],
-                                                            cppOptions = [],
-                                                            customFieldsBI = [],
-                                                            cxxOptions = [],
-                                                            cxxSources = [],
-                                                            defaultExtensions = [],
-                                                            defaultLanguage = Nothing,
-                                                            extraBundledLibs = [],
-                                                            extraDynLibFlavours = [],
-                                                            extraFrameworkDirs = [],
-                                                            extraGHCiLibs = [],
-                                                            extraLibDirs = [],
-                                                            extraLibFlavours = [],
-                                                            extraLibs = [],
-                                                            frameworks = [],
-                                                            hsSourceDirs = [],
-                                                            hsc2hsOptions = [],
-                                                            includeDirs = [],
-                                                            includes = [],
-                                                            installIncludes = [],
-                                                            jsSources = [],
-                                                            ldOptions = [],
-                                                            mixins = [],
-                                                            oldExtensions = [],
-                                                            options = PerCompilerFlavor [] [],
-                                                            otherExtensions = [],
-                                                            otherLanguages = [],
-                                                            otherModules = [],
-                                                            pkgconfigDepends = [],
-                                                            profOptions = PerCompilerFlavor [] [],
-                                                            sharedOptions = PerCompilerFlavor [] [],
-                                                            staticOptions = PerCompilerFlavor [] [],
-                                                            targetBuildDepends = [Dependency
-                                                                                    (PackageName
-                                                                                       "issue")
-                                                                                    (OrLaterVersion
-                                                                                       (mkVersion
-                                                                                          [0]))
-                                                                                    mainLibSet,
-                                                                                  Dependency
-                                                                                    (PackageName
-                                                                                       "issue")
-                                                                                    (OrLaterVersion
-                                                                                       (mkVersion
-                                                                                          [0]))
-                                                                                    (NonEmptySet.fromNonEmpty
-                                                                                       (NE.fromList
-                                                                                          [LSubLibName
-                                                                                             (UnqualComponentName
-                                                                                                "sublib")]))],
-                                                            virtualModules = []},
-                                             exeName = UnqualComponentName "demo-a",
-                                             exeScope = ExecutablePublic,
-                                             modulePath = "Main.hs"}},
-                      _×_
-                        (UnqualComponentName "demo-b")
-                        CondNode
-                          {condTreeComponents = [],
-                           condTreeConstraints = [Dependency
-                                                    (PackageName "issue")
-                                                    (OrLaterVersion (mkVersion [0]))
-                                                    mainLibSet,
-                                                  Dependency
-                                                    (PackageName "issue")
-                                                    (OrLaterVersion (mkVersion [0]))
-                                                    (NonEmptySet.fromNonEmpty
-                                                       (NE.fromList
-                                                          [LSubLibName
-                                                             (UnqualComponentName "sublib")]))],
-                           condTreeData = Executable
-                                            {buildInfo = BuildInfo
-                                                           {asmOptions = [],
-                                                            asmSources = [],
-                                                            autogenIncludes = [],
-                                                            autogenModules = [],
-                                                            buildToolDepends = [],
-                                                            buildTools = [],
-                                                            buildable = True,
-                                                            cSources = [],
-                                                            ccOptions = [],
-                                                            cmmOptions = [],
-                                                            cmmSources = [],
-                                                            cppOptions = [],
-                                                            customFieldsBI = [],
-                                                            cxxOptions = [],
-                                                            cxxSources = [],
-                                                            defaultExtensions = [],
-                                                            defaultLanguage = Nothing,
-                                                            extraBundledLibs = [],
-                                                            extraDynLibFlavours = [],
-                                                            extraFrameworkDirs = [],
-                                                            extraGHCiLibs = [],
-                                                            extraLibDirs = [],
-                                                            extraLibFlavours = [],
-                                                            extraLibs = [],
-                                                            frameworks = [],
-                                                            hsSourceDirs = [],
-                                                            hsc2hsOptions = [],
-                                                            includeDirs = [],
-                                                            includes = [],
-                                                            installIncludes = [],
-                                                            jsSources = [],
-                                                            ldOptions = [],
-                                                            mixins = [],
-                                                            oldExtensions = [],
-                                                            options = PerCompilerFlavor [] [],
-                                                            otherExtensions = [],
-                                                            otherLanguages = [],
-                                                            otherModules = [],
-                                                            pkgconfigDepends = [],
-                                                            profOptions = PerCompilerFlavor [] [],
-                                                            sharedOptions = PerCompilerFlavor [] [],
-                                                            staticOptions = PerCompilerFlavor [] [],
-                                                            targetBuildDepends = [Dependency
-                                                                                    (PackageName
-                                                                                       "issue")
-                                                                                    (OrLaterVersion
-                                                                                       (mkVersion
-                                                                                          [0]))
-                                                                                    mainLibSet,
-                                                                                  Dependency
-                                                                                    (PackageName
-                                                                                       "issue")
-                                                                                    (OrLaterVersion
-                                                                                       (mkVersion
-                                                                                          [0]))
-                                                                                    (NonEmptySet.fromNonEmpty
-                                                                                       (NE.fromList
-                                                                                          [LSubLibName
-                                                                                             (UnqualComponentName
-                                                                                                "sublib")]))],
-                                                            virtualModules = []},
-                                             exeName = UnqualComponentName "demo-b",
-                                             exeScope = ExecutablePublic,
-                                             modulePath = "Main.hs"}}],
-   condForeignLibs = [],
-   condLibrary = Just
-                   CondNode
-                     {condTreeComponents = [],
-                      condTreeConstraints = [Dependency
-                                               (PackageName "base")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               mainLibSet,
-                                             Dependency
-                                               (PackageName "issue")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               (NonEmptySet.fromNonEmpty
-                                                  (NE.fromList
-                                                     [LSubLibName
-                                                        (UnqualComponentName "sublib")]))],
-                      condTreeData = Library
-                                       {exposedModules = [],
-                                        libBuildInfo = BuildInfo
-                                                         {asmOptions = [],
-                                                          asmSources = [],
-                                                          autogenIncludes = [],
-                                                          autogenModules = [],
-                                                          buildToolDepends = [],
-                                                          buildTools = [],
-                                                          buildable = True,
-                                                          cSources = [],
-                                                          ccOptions = [],
-                                                          cmmOptions = [],
-                                                          cmmSources = [],
-                                                          cppOptions = [],
-                                                          customFieldsBI = [],
-                                                          cxxOptions = [],
-                                                          cxxSources = [],
-                                                          defaultExtensions = [],
-                                                          defaultLanguage = Just Haskell2010,
-                                                          extraBundledLibs = [],
-                                                          extraDynLibFlavours = [],
-                                                          extraFrameworkDirs = [],
-                                                          extraGHCiLibs = [],
-                                                          extraLibDirs = [],
-                                                          extraLibFlavours = [],
-                                                          extraLibs = [],
-                                                          frameworks = [],
-                                                          hsSourceDirs = [],
-                                                          hsc2hsOptions = [],
-                                                          includeDirs = [],
-                                                          includes = [],
-                                                          installIncludes = [],
-                                                          jsSources = [],
-                                                          ldOptions = [],
-                                                          mixins = [],
-                                                          oldExtensions = [],
-                                                          options = PerCompilerFlavor [] [],
-                                                          otherExtensions = [],
-                                                          otherLanguages = [],
-                                                          otherModules = [],
-                                                          pkgconfigDepends = [],
-                                                          profOptions = PerCompilerFlavor [] [],
-                                                          sharedOptions = PerCompilerFlavor [] [],
-                                                          staticOptions = PerCompilerFlavor [] [],
-                                                          targetBuildDepends = [Dependency
-                                                                                  (PackageName
-                                                                                     "base")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  mainLibSet,
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "issue")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  (NonEmptySet.fromNonEmpty
-                                                                                     (NE.fromList
-                                                                                        [LSubLibName
-                                                                                           (UnqualComponentName
-                                                                                              "sublib")]))],
-                                                          virtualModules = []},
-                                        libExposed = True,
-                                        libName = LMainLibName,
-                                        libVisibility = LibraryVisibilityPublic,
-                                        reexportedModules = [],
-                                        signatures = []}},
-   condSubLibraries = [_×_
-                         (UnqualComponentName "sublib")
-                         CondNode
-                           {condTreeComponents = [],
-                            condTreeConstraints = [],
-                            condTreeData = Library
-                                             {exposedModules = [],
-                                              libBuildInfo = BuildInfo
-                                                               {asmOptions = [],
-                                                                asmSources = [],
-                                                                autogenIncludes = [],
-                                                                autogenModules = [],
-                                                                buildToolDepends = [],
-                                                                buildTools = [],
-                                                                buildable = True,
-                                                                cSources = [],
-                                                                ccOptions = [],
-                                                                cmmOptions = [],
-                                                                cmmSources = [],
-                                                                cppOptions = [],
-                                                                customFieldsBI = [],
-                                                                cxxOptions = [],
-                                                                cxxSources = [],
-                                                                defaultExtensions = [],
-                                                                defaultLanguage = Just Haskell2010,
-                                                                extraBundledLibs = [],
-                                                                extraDynLibFlavours = [],
-                                                                extraFrameworkDirs = [],
-                                                                extraGHCiLibs = [],
-                                                                extraLibDirs = [],
-                                                                extraLibFlavours = [],
-                                                                extraLibs = [],
-                                                                frameworks = [],
-                                                                hsSourceDirs = [],
-                                                                hsc2hsOptions = [],
-                                                                includeDirs = [],
-                                                                includes = [],
-                                                                installIncludes = [],
-                                                                jsSources = [],
-                                                                ldOptions = [],
-                                                                mixins = [],
-                                                                oldExtensions = [],
-                                                                options = PerCompilerFlavor [] [],
-                                                                otherExtensions = [],
-                                                                otherLanguages = [],
-                                                                otherModules = [],
-                                                                pkgconfigDepends = [],
-                                                                profOptions = PerCompilerFlavor
-                                                                                [] [],
-                                                                sharedOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                staticOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                targetBuildDepends = [],
-                                                                virtualModules = []},
-                                              libExposed = True,
-                                              libName = LSubLibName (UnqualComponentName "sublib"),
-                                              libVisibility = LibraryVisibilityPrivate,
-                                              reexportedModules = [],
-                                              signatures = []}}],
-   condTestSuites = [],
-   genPackageFlags = [],
-   gpdScannedVersion = Nothing,
-   packageDescription = PackageDescription
-                          {author = "",
-                           benchmarks = [],
-                           bugReports = "",
-                           buildTypeRaw = Nothing,
-                           category = "",
-                           copyright = "",
-                           customFieldsPD = [],
-                           dataDir = ".",
-                           dataFiles = [],
-                           description = "",
-                           executables = [],
-                           extraDocFiles = [],
-                           extraSrcFiles = [],
-                           extraTmpFiles = [],
-                           foreignLibs = [],
-                           homepage = "",
-                           library = Nothing,
-                           licenseFiles = [],
-                           licenseRaw = Left NONE,
-                           maintainer = "",
-                           package = PackageIdentifier
-                                       {pkgName = PackageName "issue",
-                                        pkgVersion = mkVersion [6083]},
-                           pkgUrl = "",
-                           setupBuildInfo = Nothing,
-                           sourceRepos = [],
-                           specVersion = CabalSpecV3_0,
-                           stability = "",
-                           subLibraries = [],
-                           synopsis = "",
-                           testSuites = [],
-                           testedWith = []}}
+GenericPackageDescription {
+  packageDescription =
+  PackageDescription {
+    specVersion = CabalSpecV3_0,
+    package = PackageIdentifier {
+      pkgName = PackageName "issue",
+      pkgVersion = mkVersion [6083]},
+    licenseRaw = Left NONE,
+    licenseFiles = [],
+    copyright = "",
+    maintainer = "",
+    author = "",
+    stability = "",
+    testedWith = [],
+    homepage = "",
+    pkgUrl = "",
+    bugReports = "",
+    sourceRepos = [],
+    synopsis = "",
+    description = "",
+    category = "",
+    customFieldsPD = [],
+    buildTypeRaw = Nothing,
+    setupBuildInfo = Nothing,
+    library = Nothing,
+    subLibraries = [],
+    executables = [],
+    foreignLibs = [],
+    testSuites = [],
+    benchmarks = [],
+    dataFiles = [],
+    dataDir = ".",
+    extraSrcFiles = [],
+    extraTmpFiles = [],
+    extraDocFiles = []},
+  gpdScannedVersion = Nothing,
+  genPackageFlags = [],
+  condLibrary = Just
+    CondNode {
+      condTreeData = Library {
+        libName = LMainLibName,
+        exposedModules = [],
+        reexportedModules = [],
+        signatures = [],
+        libExposed = True,
+        libVisibility =
+        LibraryVisibilityPublic,
+        libBuildInfo = BuildInfo {
+          buildable = True,
+          buildTools = [],
+          buildToolDepends = [],
+          cppOptions = [],
+          asmOptions = [],
+          cmmOptions = [],
+          ccOptions = [],
+          cxxOptions = [],
+          ldOptions = [],
+          hsc2hsOptions = [],
+          pkgconfigDepends = [],
+          frameworks = [],
+          extraFrameworkDirs = [],
+          asmSources = [],
+          cmmSources = [],
+          cSources = [],
+          cxxSources = [],
+          jsSources = [],
+          hsSourceDirs = [],
+          otherModules = [],
+          virtualModules = [],
+          autogenModules = [],
+          defaultLanguage = Just
+            Haskell2010,
+          otherLanguages = [],
+          defaultExtensions = [],
+          otherExtensions = [],
+          oldExtensions = [],
+          extraLibs = [],
+          extraLibsStatic = [],
+          extraGHCiLibs = [],
+          extraBundledLibs = [],
+          extraLibFlavours = [],
+          extraDynLibFlavours = [],
+          extraLibDirs = [],
+          extraLibDirsStatic = [],
+          includeDirs = [],
+          includes = [],
+          autogenIncludes = [],
+          installIncludes = [],
+          options = PerCompilerFlavor
+            []
+            [],
+          profOptions = PerCompilerFlavor
+            []
+            [],
+          sharedOptions =
+          PerCompilerFlavor [] [],
+          staticOptions =
+          PerCompilerFlavor [] [],
+          customFieldsBI = [],
+          targetBuildDepends = [
+            Dependency
+              (PackageName "base")
+              (OrLaterVersion (mkVersion [0]))
+              mainLibSet,
+            Dependency
+              (PackageName "issue")
+              (OrLaterVersion (mkVersion [0]))
+              (NonEmptySet.fromNonEmpty
+                (NE.fromList
+                  [
+                    LSubLibName
+                      (UnqualComponentName
+                        "sublib")]))],
+          mixins = []}},
+      condTreeConstraints = [
+        Dependency
+          (PackageName "base")
+          (OrLaterVersion (mkVersion [0]))
+          mainLibSet,
+        Dependency
+          (PackageName "issue")
+          (OrLaterVersion (mkVersion [0]))
+          (NonEmptySet.fromNonEmpty
+            (NE.fromList
+              [
+                LSubLibName
+                  (UnqualComponentName
+                    "sublib")]))],
+      condTreeComponents = []},
+  condSubLibraries = [
+    _×_
+      (UnqualComponentName "sublib")
+      CondNode {
+        condTreeData = Library {
+          libName = LSubLibName
+            (UnqualComponentName "sublib"),
+          exposedModules = [],
+          reexportedModules = [],
+          signatures = [],
+          libExposed = True,
+          libVisibility =
+          LibraryVisibilityPrivate,
+          libBuildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [],
+            otherModules = [],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Just
+              Haskell2010,
+            otherLanguages = [],
+            defaultExtensions = [],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [],
+            mixins = []}},
+        condTreeConstraints = [],
+        condTreeComponents = []}],
+  condForeignLibs = [],
+  condExecutables = [
+    _×_
+      (UnqualComponentName "demo-a")
+      CondNode {
+        condTreeData = Executable {
+          exeName = UnqualComponentName
+            "demo-a",
+          modulePath = "Main.hs",
+          exeScope = ExecutablePublic,
+          buildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [],
+            otherModules = [],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Nothing,
+            otherLanguages = [],
+            defaultExtensions = [],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [
+              Dependency
+                (PackageName "issue")
+                (OrLaterVersion (mkVersion [0]))
+                mainLibSet,
+              Dependency
+                (PackageName "issue")
+                (OrLaterVersion (mkVersion [0]))
+                (NonEmptySet.fromNonEmpty
+                  (NE.fromList
+                    [
+                      LSubLibName
+                        (UnqualComponentName
+                          "sublib")]))],
+            mixins = []}},
+        condTreeConstraints = [
+          Dependency
+            (PackageName "issue")
+            (OrLaterVersion (mkVersion [0]))
+            mainLibSet,
+          Dependency
+            (PackageName "issue")
+            (OrLaterVersion (mkVersion [0]))
+            (NonEmptySet.fromNonEmpty
+              (NE.fromList
+                [
+                  LSubLibName
+                    (UnqualComponentName
+                      "sublib")]))],
+        condTreeComponents = []},
+    _×_
+      (UnqualComponentName "demo-b")
+      CondNode {
+        condTreeData = Executable {
+          exeName = UnqualComponentName
+            "demo-b",
+          modulePath = "Main.hs",
+          exeScope = ExecutablePublic,
+          buildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [],
+            otherModules = [],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Nothing,
+            otherLanguages = [],
+            defaultExtensions = [],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [
+              Dependency
+                (PackageName "issue")
+                (OrLaterVersion (mkVersion [0]))
+                mainLibSet,
+              Dependency
+                (PackageName "issue")
+                (OrLaterVersion (mkVersion [0]))
+                (NonEmptySet.fromNonEmpty
+                  (NE.fromList
+                    [
+                      LSubLibName
+                        (UnqualComponentName
+                          "sublib")]))],
+            mixins = []}},
+        condTreeConstraints = [
+          Dependency
+            (PackageName "issue")
+            (OrLaterVersion (mkVersion [0]))
+            mainLibSet,
+          Dependency
+            (PackageName "issue")
+            (OrLaterVersion (mkVersion [0]))
+            (NonEmptySet.fromNonEmpty
+              (NE.fromList
+                [
+                  LSubLibName
+                    (UnqualComponentName
+                      "sublib")]))],
+        condTreeComponents = []}],
+  condTestSuites = [],
+  condBenchmarks = []}
diff --git a/Cabal-tests/tests/ParserTests/regressions/issue-6083-c.expr b/Cabal-tests/tests/ParserTests/regressions/issue-6083-c.expr
index b453415ac407bacbe0349189a82baa40b9c371a4..5cf5a7c1db8537076e6ba2f0a359112c49e83fd7 100644
--- a/Cabal-tests/tests/ParserTests/regressions/issue-6083-c.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/issue-6083-c.expr
@@ -1,183 +1,202 @@
-GenericPackageDescription
-  {condBenchmarks = [],
-   condExecutables = [],
-   condForeignLibs = [],
-   condLibrary = Just
-                   CondNode
-                     {condTreeComponents = [],
-                      condTreeConstraints = [Dependency
-                                               (PackageName "base")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               mainLibSet,
-                                             Dependency
-                                               (PackageName "issue")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               (NonEmptySet.fromNonEmpty
-                                                  (NE.fromList
-                                                     [LSubLibName
-                                                        (UnqualComponentName "sublib")]))],
-                      condTreeData = Library
-                                       {exposedModules = [],
-                                        libBuildInfo = BuildInfo
-                                                         {asmOptions = [],
-                                                          asmSources = [],
-                                                          autogenIncludes = [],
-                                                          autogenModules = [],
-                                                          buildToolDepends = [],
-                                                          buildTools = [],
-                                                          buildable = True,
-                                                          cSources = [],
-                                                          ccOptions = [],
-                                                          cmmOptions = [],
-                                                          cmmSources = [],
-                                                          cppOptions = [],
-                                                          customFieldsBI = [],
-                                                          cxxOptions = [],
-                                                          cxxSources = [],
-                                                          defaultExtensions = [],
-                                                          defaultLanguage = Just Haskell2010,
-                                                          extraBundledLibs = [],
-                                                          extraDynLibFlavours = [],
-                                                          extraFrameworkDirs = [],
-                                                          extraGHCiLibs = [],
-                                                          extraLibDirs = [],
-                                                          extraLibFlavours = [],
-                                                          extraLibs = [],
-                                                          frameworks = [],
-                                                          hsSourceDirs = [],
-                                                          hsc2hsOptions = [],
-                                                          includeDirs = [],
-                                                          includes = [],
-                                                          installIncludes = [],
-                                                          jsSources = [],
-                                                          ldOptions = [],
-                                                          mixins = [],
-                                                          oldExtensions = [],
-                                                          options = PerCompilerFlavor [] [],
-                                                          otherExtensions = [],
-                                                          otherLanguages = [],
-                                                          otherModules = [],
-                                                          pkgconfigDepends = [],
-                                                          profOptions = PerCompilerFlavor [] [],
-                                                          sharedOptions = PerCompilerFlavor [] [],
-                                                          staticOptions = PerCompilerFlavor [] [],
-                                                          targetBuildDepends = [Dependency
-                                                                                  (PackageName
-                                                                                     "base")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  mainLibSet,
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "issue")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  (NonEmptySet.fromNonEmpty
-                                                                                     (NE.fromList
-                                                                                        [LSubLibName
-                                                                                           (UnqualComponentName
-                                                                                              "sublib")]))],
-                                                          virtualModules = []},
-                                        libExposed = True,
-                                        libName = LMainLibName,
-                                        libVisibility = LibraryVisibilityPublic,
-                                        reexportedModules = [],
-                                        signatures = []}},
-   condSubLibraries = [_×_
-                         (UnqualComponentName "sublib")
-                         CondNode
-                           {condTreeComponents = [],
-                            condTreeConstraints = [],
-                            condTreeData = Library
-                                             {exposedModules = [],
-                                              libBuildInfo = BuildInfo
-                                                               {asmOptions = [],
-                                                                asmSources = [],
-                                                                autogenIncludes = [],
-                                                                autogenModules = [],
-                                                                buildToolDepends = [],
-                                                                buildTools = [],
-                                                                buildable = True,
-                                                                cSources = [],
-                                                                ccOptions = [],
-                                                                cmmOptions = [],
-                                                                cmmSources = [],
-                                                                cppOptions = [],
-                                                                customFieldsBI = [],
-                                                                cxxOptions = [],
-                                                                cxxSources = [],
-                                                                defaultExtensions = [],
-                                                                defaultLanguage = Just Haskell2010,
-                                                                extraBundledLibs = [],
-                                                                extraDynLibFlavours = [],
-                                                                extraFrameworkDirs = [],
-                                                                extraGHCiLibs = [],
-                                                                extraLibDirs = [],
-                                                                extraLibFlavours = [],
-                                                                extraLibs = [],
-                                                                frameworks = [],
-                                                                hsSourceDirs = [],
-                                                                hsc2hsOptions = [],
-                                                                includeDirs = [],
-                                                                includes = [],
-                                                                installIncludes = [],
-                                                                jsSources = [],
-                                                                ldOptions = [],
-                                                                mixins = [],
-                                                                oldExtensions = [],
-                                                                options = PerCompilerFlavor [] [],
-                                                                otherExtensions = [],
-                                                                otherLanguages = [],
-                                                                otherModules = [],
-                                                                pkgconfigDepends = [],
-                                                                profOptions = PerCompilerFlavor
-                                                                                [] [],
-                                                                sharedOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                staticOptions = PerCompilerFlavor
-                                                                                  [] [],
-                                                                targetBuildDepends = [],
-                                                                virtualModules = []},
-                                              libExposed = True,
-                                              libName = LSubLibName (UnqualComponentName "sublib"),
-                                              libVisibility = LibraryVisibilityPrivate,
-                                              reexportedModules = [],
-                                              signatures = []}}],
-   condTestSuites = [],
-   genPackageFlags = [],
-   gpdScannedVersion = Nothing,
-   packageDescription = PackageDescription
-                          {author = "",
-                           benchmarks = [],
-                           bugReports = "",
-                           buildTypeRaw = Nothing,
-                           category = "",
-                           copyright = "",
-                           customFieldsPD = [],
-                           dataDir = ".",
-                           dataFiles = [],
-                           description = "",
-                           executables = [],
-                           extraDocFiles = [],
-                           extraSrcFiles = [],
-                           extraTmpFiles = [],
-                           foreignLibs = [],
-                           homepage = "",
-                           library = Nothing,
-                           licenseFiles = [],
-                           licenseRaw = Left NONE,
-                           maintainer = "",
-                           package = PackageIdentifier
-                                       {pkgName = PackageName "issue",
-                                        pkgVersion = mkVersion [6083]},
-                           pkgUrl = "",
-                           setupBuildInfo = Nothing,
-                           sourceRepos = [],
-                           specVersion = CabalSpecV2_4,
-                           stability = "",
-                           subLibraries = [],
-                           synopsis = "",
-                           testSuites = [],
-                           testedWith = []}}
+GenericPackageDescription {
+  packageDescription =
+  PackageDescription {
+    specVersion = CabalSpecV2_4,
+    package = PackageIdentifier {
+      pkgName = PackageName "issue",
+      pkgVersion = mkVersion [6083]},
+    licenseRaw = Left NONE,
+    licenseFiles = [],
+    copyright = "",
+    maintainer = "",
+    author = "",
+    stability = "",
+    testedWith = [],
+    homepage = "",
+    pkgUrl = "",
+    bugReports = "",
+    sourceRepos = [],
+    synopsis = "",
+    description = "",
+    category = "",
+    customFieldsPD = [],
+    buildTypeRaw = Nothing,
+    setupBuildInfo = Nothing,
+    library = Nothing,
+    subLibraries = [],
+    executables = [],
+    foreignLibs = [],
+    testSuites = [],
+    benchmarks = [],
+    dataFiles = [],
+    dataDir = ".",
+    extraSrcFiles = [],
+    extraTmpFiles = [],
+    extraDocFiles = []},
+  gpdScannedVersion = Nothing,
+  genPackageFlags = [],
+  condLibrary = Just
+    CondNode {
+      condTreeData = Library {
+        libName = LMainLibName,
+        exposedModules = [],
+        reexportedModules = [],
+        signatures = [],
+        libExposed = True,
+        libVisibility =
+        LibraryVisibilityPublic,
+        libBuildInfo = BuildInfo {
+          buildable = True,
+          buildTools = [],
+          buildToolDepends = [],
+          cppOptions = [],
+          asmOptions = [],
+          cmmOptions = [],
+          ccOptions = [],
+          cxxOptions = [],
+          ldOptions = [],
+          hsc2hsOptions = [],
+          pkgconfigDepends = [],
+          frameworks = [],
+          extraFrameworkDirs = [],
+          asmSources = [],
+          cmmSources = [],
+          cSources = [],
+          cxxSources = [],
+          jsSources = [],
+          hsSourceDirs = [],
+          otherModules = [],
+          virtualModules = [],
+          autogenModules = [],
+          defaultLanguage = Just
+            Haskell2010,
+          otherLanguages = [],
+          defaultExtensions = [],
+          otherExtensions = [],
+          oldExtensions = [],
+          extraLibs = [],
+          extraLibsStatic = [],
+          extraGHCiLibs = [],
+          extraBundledLibs = [],
+          extraLibFlavours = [],
+          extraDynLibFlavours = [],
+          extraLibDirs = [],
+          extraLibDirsStatic = [],
+          includeDirs = [],
+          includes = [],
+          autogenIncludes = [],
+          installIncludes = [],
+          options = PerCompilerFlavor
+            []
+            [],
+          profOptions = PerCompilerFlavor
+            []
+            [],
+          sharedOptions =
+          PerCompilerFlavor [] [],
+          staticOptions =
+          PerCompilerFlavor [] [],
+          customFieldsBI = [],
+          targetBuildDepends = [
+            Dependency
+              (PackageName "base")
+              (OrLaterVersion (mkVersion [0]))
+              mainLibSet,
+            Dependency
+              (PackageName "issue")
+              (OrLaterVersion (mkVersion [0]))
+              (NonEmptySet.fromNonEmpty
+                (NE.fromList
+                  [
+                    LSubLibName
+                      (UnqualComponentName
+                        "sublib")]))],
+          mixins = []}},
+      condTreeConstraints = [
+        Dependency
+          (PackageName "base")
+          (OrLaterVersion (mkVersion [0]))
+          mainLibSet,
+        Dependency
+          (PackageName "issue")
+          (OrLaterVersion (mkVersion [0]))
+          (NonEmptySet.fromNonEmpty
+            (NE.fromList
+              [
+                LSubLibName
+                  (UnqualComponentName
+                    "sublib")]))],
+      condTreeComponents = []},
+  condSubLibraries = [
+    _×_
+      (UnqualComponentName "sublib")
+      CondNode {
+        condTreeData = Library {
+          libName = LSubLibName
+            (UnqualComponentName "sublib"),
+          exposedModules = [],
+          reexportedModules = [],
+          signatures = [],
+          libExposed = True,
+          libVisibility =
+          LibraryVisibilityPrivate,
+          libBuildInfo = BuildInfo {
+            buildable = True,
+            buildTools = [],
+            buildToolDepends = [],
+            cppOptions = [],
+            asmOptions = [],
+            cmmOptions = [],
+            ccOptions = [],
+            cxxOptions = [],
+            ldOptions = [],
+            hsc2hsOptions = [],
+            pkgconfigDepends = [],
+            frameworks = [],
+            extraFrameworkDirs = [],
+            asmSources = [],
+            cmmSources = [],
+            cSources = [],
+            cxxSources = [],
+            jsSources = [],
+            hsSourceDirs = [],
+            otherModules = [],
+            virtualModules = [],
+            autogenModules = [],
+            defaultLanguage = Just
+              Haskell2010,
+            otherLanguages = [],
+            defaultExtensions = [],
+            otherExtensions = [],
+            oldExtensions = [],
+            extraLibs = [],
+            extraLibsStatic = [],
+            extraGHCiLibs = [],
+            extraBundledLibs = [],
+            extraLibFlavours = [],
+            extraDynLibFlavours = [],
+            extraLibDirs = [],
+            extraLibDirsStatic = [],
+            includeDirs = [],
+            includes = [],
+            autogenIncludes = [],
+            installIncludes = [],
+            options = PerCompilerFlavor
+              []
+              [],
+            profOptions = PerCompilerFlavor
+              []
+              [],
+            sharedOptions =
+            PerCompilerFlavor [] [],
+            staticOptions =
+            PerCompilerFlavor [] [],
+            customFieldsBI = [],
+            targetBuildDepends = [],
+            mixins = []}},
+        condTreeConstraints = [],
+        condTreeComponents = []}],
+  condForeignLibs = [],
+  condExecutables = [],
+  condTestSuites = [],
+  condBenchmarks = []}
diff --git a/Cabal-tests/tests/ParserTests/regressions/issue-6083-pkg-pkg.expr b/Cabal-tests/tests/ParserTests/regressions/issue-6083-pkg-pkg.expr
index a86109c4d927739abb314b133920554e188dd030..b436742cd03fbf8fd414892364b91fe04ed17be2 100644
--- a/Cabal-tests/tests/ParserTests/regressions/issue-6083-pkg-pkg.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/issue-6083-pkg-pkg.expr
@@ -1,117 +1,124 @@
-GenericPackageDescription
-  {condBenchmarks = [],
-   condExecutables = [],
-   condForeignLibs = [],
-   condLibrary = Just
-                   CondNode
-                     {condTreeComponents = [],
-                      condTreeConstraints = [Dependency
-                                               (PackageName "freetype")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               mainLibSet,
-                                             Dependency
-                                               (PackageName "freetype")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               mainLibSet],
-                      condTreeData = Library
-                                       {exposedModules = [],
-                                        libBuildInfo = BuildInfo
-                                                         {asmOptions = [],
-                                                          asmSources = [],
-                                                          autogenIncludes = [],
-                                                          autogenModules = [],
-                                                          buildToolDepends = [],
-                                                          buildTools = [],
-                                                          buildable = True,
-                                                          cSources = [],
-                                                          ccOptions = [],
-                                                          cmmOptions = [],
-                                                          cmmSources = [],
-                                                          cppOptions = [],
-                                                          customFieldsBI = [],
-                                                          cxxOptions = [],
-                                                          cxxSources = [],
-                                                          defaultExtensions = [],
-                                                          defaultLanguage = Just Haskell2010,
-                                                          extraBundledLibs = [],
-                                                          extraDynLibFlavours = [],
-                                                          extraFrameworkDirs = [],
-                                                          extraGHCiLibs = [],
-                                                          extraLibDirs = [],
-                                                          extraLibFlavours = [],
-                                                          extraLibs = [],
-                                                          frameworks = [],
-                                                          hsSourceDirs = [],
-                                                          hsc2hsOptions = [],
-                                                          includeDirs = [],
-                                                          includes = [],
-                                                          installIncludes = [],
-                                                          jsSources = [],
-                                                          ldOptions = [],
-                                                          mixins = [],
-                                                          oldExtensions = [],
-                                                          options = PerCompilerFlavor [] [],
-                                                          otherExtensions = [],
-                                                          otherLanguages = [],
-                                                          otherModules = [],
-                                                          pkgconfigDepends = [],
-                                                          profOptions = PerCompilerFlavor [] [],
-                                                          sharedOptions = PerCompilerFlavor [] [],
-                                                          staticOptions = PerCompilerFlavor [] [],
-                                                          targetBuildDepends = [Dependency
-                                                                                  (PackageName
-                                                                                     "freetype")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  mainLibSet,
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "freetype")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  mainLibSet],
-                                                          virtualModules = []},
-                                        libExposed = True,
-                                        libName = LMainLibName,
-                                        libVisibility = LibraryVisibilityPublic,
-                                        reexportedModules = [],
-                                        signatures = []}},
-   condSubLibraries = [],
-   condTestSuites = [],
-   genPackageFlags = [],
-   gpdScannedVersion = Nothing,
-   packageDescription = PackageDescription
-                          {author = "",
-                           benchmarks = [],
-                           bugReports = "",
-                           buildTypeRaw = Nothing,
-                           category = "",
-                           copyright = "",
-                           customFieldsPD = [],
-                           dataDir = ".",
-                           dataFiles = [],
-                           description = "",
-                           executables = [],
-                           extraDocFiles = [],
-                           extraSrcFiles = [],
-                           extraTmpFiles = [],
-                           foreignLibs = [],
-                           homepage = "",
-                           library = Nothing,
-                           licenseFiles = [],
-                           licenseRaw = Left NONE,
-                           maintainer = "",
-                           package = PackageIdentifier
-                                       {pkgName = PackageName "issue",
-                                        pkgVersion = mkVersion [6083]},
-                           pkgUrl = "",
-                           setupBuildInfo = Nothing,
-                           sourceRepos = [],
-                           specVersion = CabalSpecV3_0,
-                           stability = "",
-                           subLibraries = [],
-                           synopsis = "",
-                           testSuites = [],
-                           testedWith = []}}
+GenericPackageDescription {
+  packageDescription =
+  PackageDescription {
+    specVersion = CabalSpecV3_0,
+    package = PackageIdentifier {
+      pkgName = PackageName "issue",
+      pkgVersion = mkVersion [6083]},
+    licenseRaw = Left NONE,
+    licenseFiles = [],
+    copyright = "",
+    maintainer = "",
+    author = "",
+    stability = "",
+    testedWith = [],
+    homepage = "",
+    pkgUrl = "",
+    bugReports = "",
+    sourceRepos = [],
+    synopsis = "",
+    description = "",
+    category = "",
+    customFieldsPD = [],
+    buildTypeRaw = Nothing,
+    setupBuildInfo = Nothing,
+    library = Nothing,
+    subLibraries = [],
+    executables = [],
+    foreignLibs = [],
+    testSuites = [],
+    benchmarks = [],
+    dataFiles = [],
+    dataDir = ".",
+    extraSrcFiles = [],
+    extraTmpFiles = [],
+    extraDocFiles = []},
+  gpdScannedVersion = Nothing,
+  genPackageFlags = [],
+  condLibrary = Just
+    CondNode {
+      condTreeData = Library {
+        libName = LMainLibName,
+        exposedModules = [],
+        reexportedModules = [],
+        signatures = [],
+        libExposed = True,
+        libVisibility =
+        LibraryVisibilityPublic,
+        libBuildInfo = BuildInfo {
+          buildable = True,
+          buildTools = [],
+          buildToolDepends = [],
+          cppOptions = [],
+          asmOptions = [],
+          cmmOptions = [],
+          ccOptions = [],
+          cxxOptions = [],
+          ldOptions = [],
+          hsc2hsOptions = [],
+          pkgconfigDepends = [],
+          frameworks = [],
+          extraFrameworkDirs = [],
+          asmSources = [],
+          cmmSources = [],
+          cSources = [],
+          cxxSources = [],
+          jsSources = [],
+          hsSourceDirs = [],
+          otherModules = [],
+          virtualModules = [],
+          autogenModules = [],
+          defaultLanguage = Just
+            Haskell2010,
+          otherLanguages = [],
+          defaultExtensions = [],
+          otherExtensions = [],
+          oldExtensions = [],
+          extraLibs = [],
+          extraLibsStatic = [],
+          extraGHCiLibs = [],
+          extraBundledLibs = [],
+          extraLibFlavours = [],
+          extraDynLibFlavours = [],
+          extraLibDirs = [],
+          extraLibDirsStatic = [],
+          includeDirs = [],
+          includes = [],
+          autogenIncludes = [],
+          installIncludes = [],
+          options = PerCompilerFlavor
+            []
+            [],
+          profOptions = PerCompilerFlavor
+            []
+            [],
+          sharedOptions =
+          PerCompilerFlavor [] [],
+          staticOptions =
+          PerCompilerFlavor [] [],
+          customFieldsBI = [],
+          targetBuildDepends = [
+            Dependency
+              (PackageName "freetype")
+              (OrLaterVersion (mkVersion [0]))
+              mainLibSet,
+            Dependency
+              (PackageName "freetype")
+              (OrLaterVersion (mkVersion [0]))
+              mainLibSet],
+          mixins = []}},
+      condTreeConstraints = [
+        Dependency
+          (PackageName "freetype")
+          (OrLaterVersion (mkVersion [0]))
+          mainLibSet,
+        Dependency
+          (PackageName "freetype")
+          (OrLaterVersion (mkVersion [0]))
+          mainLibSet],
+      condTreeComponents = []},
+  condSubLibraries = [],
+  condForeignLibs = [],
+  condExecutables = [],
+  condTestSuites = [],
+  condBenchmarks = []}
diff --git a/Cabal-tests/tests/ParserTests/regressions/issue-774.expr b/Cabal-tests/tests/ParserTests/regressions/issue-774.expr
index 849934afd462ce7a9d821ac24caa293ebf7c90e7..af63d8cd9f0a4ae92bf95d06a68b9bf8dff87299 100644
--- a/Cabal-tests/tests/ParserTests/regressions/issue-774.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/issue-774.expr
@@ -31,8 +31,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/jaeger-flamegraph.expr b/Cabal-tests/tests/ParserTests/regressions/jaeger-flamegraph.expr
index 0fa6290b549a06c9c55f64c55f342dcb3870a8b0..51b6add00d7d357c41a75f4a83625651b68fcde3 100644
--- a/Cabal-tests/tests/ParserTests/regressions/jaeger-flamegraph.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/jaeger-flamegraph.expr
@@ -63,8 +63,10 @@ GenericPackageDescription
                                                             extraFrameworkDirs = [],
                                                             extraGHCiLibs = [],
                                                             extraLibDirs = [],
+                                                            extraLibDirsStatic = [],
                                                             extraLibFlavours = [],
                                                             extraLibs = [],
+                                                            extraLibsStatic = [],
                                                             frameworks = [],
                                                             hsSourceDirs = [SymbolicPath "exe"],
                                                             hsc2hsOptions = [],
@@ -213,8 +215,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [SymbolicPath "library"],
                                                           hsc2hsOptions = [],
@@ -329,8 +333,10 @@ GenericPackageDescription
                                                                extraFrameworkDirs = [],
                                                                extraGHCiLibs = [],
                                                                extraLibDirs = [],
+                                                               extraLibDirsStatic = [],
                                                                extraLibFlavours = [],
                                                                extraLibs = [],
+                                                               extraLibsStatic = [],
                                                                frameworks = [],
                                                                hsSourceDirs = [SymbolicPath "test"],
                                                                hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/leading-comma-2.expr b/Cabal-tests/tests/ParserTests/regressions/leading-comma-2.expr
index ff7cc10a92f077e36a3144b68ef8a1f567d3e8fa..6fc8dafb3e8a6e7ad890787331c07b5996b16c8b 100644
--- a/Cabal-tests/tests/ParserTests/regressions/leading-comma-2.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/leading-comma-2.expr
@@ -61,8 +61,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/leading-comma.expr b/Cabal-tests/tests/ParserTests/regressions/leading-comma.expr
index 31ec5da467e73eec06c2bc2807c2cc45e0f5df26..c813d8b5668682516f3bd2ea7510ab13affabce5 100644
--- a/Cabal-tests/tests/ParserTests/regressions/leading-comma.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/leading-comma.expr
@@ -54,8 +54,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/libpq1.expr b/Cabal-tests/tests/ParserTests/regressions/libpq1.expr
index 58d89e9003e73d350b3369b688ad4778d5d40998..954c378122cf7744a88775822e7e21f54b858737 100644
--- a/Cabal-tests/tests/ParserTests/regressions/libpq1.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/libpq1.expr
@@ -1,696 +1,741 @@
-GenericPackageDescription
-  {condBenchmarks = [],
-   condExecutables = [],
-   condForeignLibs = [],
-   condLibrary = Just
-                   CondNode
-                     {condTreeComponents = [CondBranch
-                                              {condBranchCondition = `CNot (Var (OS Windows))`,
-                                               condBranchIfFalse = Nothing,
-                                               condBranchIfTrue = CondNode
-                                                                    {condTreeComponents = [],
-                                                                     condTreeConstraints = [Dependency
-                                                                                              (PackageName
-                                                                                                 "unix")
-                                                                                              (IntersectVersionRanges
-                                                                                                 (OrLaterVersion
-                                                                                                    (mkVersion
-                                                                                                       [2,
-                                                                                                        4,
-                                                                                                        2,
-                                                                                                        0]))
-                                                                                                 (EarlierVersion
-                                                                                                    (mkVersion
-                                                                                                       [2,
-                                                                                                        8])))
-                                                                                              mainLibSet],
-                                                                     condTreeData = Library
-                                                                                      {exposedModules = [],
-                                                                                       libBuildInfo = BuildInfo
-                                                                                                        {asmOptions = [],
-                                                                                                         asmSources = [],
-                                                                                                         autogenIncludes = [],
-                                                                                                         autogenModules = [],
-                                                                                                         buildToolDepends = [],
-                                                                                                         buildTools = [],
-                                                                                                         buildable = True,
-                                                                                                         cSources = [],
-                                                                                                         ccOptions = [],
-                                                                                                         cmmOptions = [],
-                                                                                                         cmmSources = [],
-                                                                                                         cppOptions = [],
-                                                                                                         customFieldsBI = [],
-                                                                                                         cxxOptions = [],
-                                                                                                         cxxSources = [],
-                                                                                                         defaultExtensions = [],
-                                                                                                         defaultLanguage = Nothing,
-                                                                                                         extraBundledLibs = [],
-                                                                                                         extraDynLibFlavours = [],
-                                                                                                         extraFrameworkDirs = [],
-                                                                                                         extraGHCiLibs = [],
-                                                                                                         extraLibDirs = [],
-                                                                                                         extraLibFlavours = [],
-                                                                                                         extraLibs = [],
-                                                                                                         frameworks = [],
-                                                                                                         hsSourceDirs = [],
-                                                                                                         hsc2hsOptions = [],
-                                                                                                         includeDirs = [],
-                                                                                                         includes = [],
-                                                                                                         installIncludes = [],
-                                                                                                         jsSources = [],
-                                                                                                         ldOptions = [],
-                                                                                                         mixins = [],
-                                                                                                         oldExtensions = [],
-                                                                                                         options = PerCompilerFlavor
-                                                                                                                     []
-                                                                                                                     [],
-                                                                                                         otherExtensions = [],
-                                                                                                         otherLanguages = [],
-                                                                                                         otherModules = [],
-                                                                                                         pkgconfigDepends = [],
-                                                                                                         profOptions = PerCompilerFlavor
-                                                                                                                         []
-                                                                                                                         [],
-                                                                                                         sharedOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         staticOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         targetBuildDepends = [Dependency
-                                                                                                                                 (PackageName
-                                                                                                                                    "unix")
-                                                                                                                                 (IntersectVersionRanges
-                                                                                                                                    (OrLaterVersion
-                                                                                                                                       (mkVersion
-                                                                                                                                          [2,
-                                                                                                                                           4,
-                                                                                                                                           2,
-                                                                                                                                           0]))
-                                                                                                                                    (EarlierVersion
-                                                                                                                                       (mkVersion
-                                                                                                                                          [2,
-                                                                                                                                           8])))
-                                                                                                                                 mainLibSet],
-                                                                                                         virtualModules = []},
-                                                                                       libExposed = True,
-                                                                                       libName = LMainLibName,
-                                                                                       libVisibility = LibraryVisibilityPublic,
-                                                                                       reexportedModules = [],
-                                                                                       signatures = []}}},
-                                            CondBranch
-                                              {condBranchCondition = `Var (OS Windows)`,
-                                               condBranchIfFalse = Nothing,
-                                               condBranchIfTrue = CondNode
-                                                                    {condTreeComponents = [],
-                                                                     condTreeConstraints = [Dependency
-                                                                                              (PackageName
-                                                                                                 "Win32")
-                                                                                              (IntersectVersionRanges
-                                                                                                 (OrLaterVersion
-                                                                                                    (mkVersion
-                                                                                                       [2,
-                                                                                                        2,
-                                                                                                        0,
-                                                                                                        2]))
-                                                                                                 (EarlierVersion
-                                                                                                    (mkVersion
-                                                                                                       [2,
-                                                                                                        7])))
-                                                                                              mainLibSet],
-                                                                     condTreeData = Library
-                                                                                      {exposedModules = [],
-                                                                                       libBuildInfo = BuildInfo
-                                                                                                        {asmOptions = [],
-                                                                                                         asmSources = [],
-                                                                                                         autogenIncludes = [],
-                                                                                                         autogenModules = [],
-                                                                                                         buildToolDepends = [],
-                                                                                                         buildTools = [],
-                                                                                                         buildable = True,
-                                                                                                         cSources = [],
-                                                                                                         ccOptions = [],
-                                                                                                         cmmOptions = [],
-                                                                                                         cmmSources = [],
-                                                                                                         cppOptions = [],
-                                                                                                         customFieldsBI = [],
-                                                                                                         cxxOptions = [],
-                                                                                                         cxxSources = [],
-                                                                                                         defaultExtensions = [],
-                                                                                                         defaultLanguage = Nothing,
-                                                                                                         extraBundledLibs = [],
-                                                                                                         extraDynLibFlavours = [],
-                                                                                                         extraFrameworkDirs = [],
-                                                                                                         extraGHCiLibs = [],
-                                                                                                         extraLibDirs = [],
-                                                                                                         extraLibFlavours = [],
-                                                                                                         extraLibs = [],
-                                                                                                         frameworks = [],
-                                                                                                         hsSourceDirs = [],
-                                                                                                         hsc2hsOptions = [],
-                                                                                                         includeDirs = [],
-                                                                                                         includes = [],
-                                                                                                         installIncludes = [],
-                                                                                                         jsSources = [],
-                                                                                                         ldOptions = [],
-                                                                                                         mixins = [],
-                                                                                                         oldExtensions = [],
-                                                                                                         options = PerCompilerFlavor
-                                                                                                                     []
-                                                                                                                     [],
-                                                                                                         otherExtensions = [],
-                                                                                                         otherLanguages = [],
-                                                                                                         otherModules = [],
-                                                                                                         pkgconfigDepends = [],
-                                                                                                         profOptions = PerCompilerFlavor
-                                                                                                                         []
-                                                                                                                         [],
-                                                                                                         sharedOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         staticOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         targetBuildDepends = [Dependency
-                                                                                                                                 (PackageName
-                                                                                                                                    "Win32")
-                                                                                                                                 (IntersectVersionRanges
-                                                                                                                                    (OrLaterVersion
-                                                                                                                                       (mkVersion
-                                                                                                                                          [2,
-                                                                                                                                           2,
-                                                                                                                                           0,
-                                                                                                                                           2]))
-                                                                                                                                    (EarlierVersion
-                                                                                                                                       (mkVersion
-                                                                                                                                          [2,
-                                                                                                                                           7])))
-                                                                                                                                 mainLibSet],
-                                                                                                         virtualModules = []},
-                                                                                       libExposed = True,
-                                                                                       libName = LMainLibName,
-                                                                                       libVisibility = LibraryVisibilityPublic,
-                                                                                       reexportedModules = [],
-                                                                                       signatures = []}}},
-                                            CondBranch
-                                              {condBranchCondition = `Var (PackageFlag (FlagName "use-pkg-config"))`,
-                                               condBranchIfFalse = Just
-                                                                     CondNode
-                                                                       {condTreeComponents = [CondBranch
-                                                                                                {condBranchCondition = `Var (OS Windows)`,
-                                                                                                 condBranchIfFalse = Just
-                                                                                                                       CondNode
-                                                                                                                         {condTreeComponents = [CondBranch
-                                                                                                                                                  {condBranchCondition = `Var (OS OpenBSD)`,
-                                                                                                                                                   condBranchIfFalse = Nothing,
-                                                                                                                                                   condBranchIfTrue = CondNode
-                                                                                                                                                                        {condTreeComponents = [],
-                                                                                                                                                                         condTreeConstraints = [],
-                                                                                                                                                                         condTreeData = Library
-                                                                                                                                                                                          {exposedModules = [],
-                                                                                                                                                                                           libBuildInfo = BuildInfo
-                                                                                                                                                                                                            {asmOptions = [],
-                                                                                                                                                                                                             asmSources = [],
-                                                                                                                                                                                                             autogenIncludes = [],
-                                                                                                                                                                                                             autogenModules = [],
-                                                                                                                                                                                                             buildToolDepends = [],
-                                                                                                                                                                                                             buildTools = [],
-                                                                                                                                                                                                             buildable = True,
-                                                                                                                                                                                                             cSources = [],
-                                                                                                                                                                                                             ccOptions = [],
-                                                                                                                                                                                                             cmmOptions = [],
-                                                                                                                                                                                                             cmmSources = [],
-                                                                                                                                                                                                             cppOptions = [],
-                                                                                                                                                                                                             customFieldsBI = [],
-                                                                                                                                                                                                             cxxOptions = [],
-                                                                                                                                                                                                             cxxSources = [],
-                                                                                                                                                                                                             defaultExtensions = [],
-                                                                                                                                                                                                             defaultLanguage = Nothing,
-                                                                                                                                                                                                             extraBundledLibs = [],
-                                                                                                                                                                                                             extraDynLibFlavours = [],
-                                                                                                                                                                                                             extraFrameworkDirs = [],
-                                                                                                                                                                                                             extraGHCiLibs = [],
-                                                                                                                                                                                                             extraLibDirs = [],
-                                                                                                                                                                                                             extraLibFlavours = [],
-                                                                                                                                                                                                             extraLibs = ["crypto",
-                                                                                                                                                                                                                          "ssl"],
-                                                                                                                                                                                                             frameworks = [],
-                                                                                                                                                                                                             hsSourceDirs = [],
-                                                                                                                                                                                                             hsc2hsOptions = [],
-                                                                                                                                                                                                             includeDirs = [],
-                                                                                                                                                                                                             includes = [],
-                                                                                                                                                                                                             installIncludes = [],
-                                                                                                                                                                                                             jsSources = [],
-                                                                                                                                                                                                             ldOptions = [],
-                                                                                                                                                                                                             mixins = [],
-                                                                                                                                                                                                             oldExtensions = [],
-                                                                                                                                                                                                             options = PerCompilerFlavor
-                                                                                                                                                                                                                         []
-                                                                                                                                                                                                                         [],
-                                                                                                                                                                                                             otherExtensions = [],
-                                                                                                                                                                                                             otherLanguages = [],
-                                                                                                                                                                                                             otherModules = [],
-                                                                                                                                                                                                             pkgconfigDepends = [],
-                                                                                                                                                                                                             profOptions = PerCompilerFlavor
-                                                                                                                                                                                                                             []
-                                                                                                                                                                                                                             [],
-                                                                                                                                                                                                             sharedOptions = PerCompilerFlavor
-                                                                                                                                                                                                                               []
-                                                                                                                                                                                                                               [],
-                                                                                                                                                                                                             staticOptions = PerCompilerFlavor
-                                                                                                                                                                                                                               []
-                                                                                                                                                                                                                               [],
-                                                                                                                                                                                                             targetBuildDepends = [],
-                                                                                                                                                                                                             virtualModules = []},
-                                                                                                                                                                                           libExposed = True,
-                                                                                                                                                                                           libName = LMainLibName,
-                                                                                                                                                                                           libVisibility = LibraryVisibilityPublic,
-                                                                                                                                                                                           reexportedModules = [],
-                                                                                                                                                                                           signatures = []}}}],
-                                                                                                                          condTreeConstraints = [],
-                                                                                                                          condTreeData = Library
-                                                                                                                                           {exposedModules = [],
-                                                                                                                                            libBuildInfo = BuildInfo
-                                                                                                                                                             {asmOptions = [],
-                                                                                                                                                              asmSources = [],
-                                                                                                                                                              autogenIncludes = [],
-                                                                                                                                                              autogenModules = [],
-                                                                                                                                                              buildToolDepends = [],
-                                                                                                                                                              buildTools = [],
-                                                                                                                                                              buildable = True,
-                                                                                                                                                              cSources = [],
-                                                                                                                                                              ccOptions = [],
-                                                                                                                                                              cmmOptions = [],
-                                                                                                                                                              cmmSources = [],
-                                                                                                                                                              cppOptions = [],
-                                                                                                                                                              customFieldsBI = [],
-                                                                                                                                                              cxxOptions = [],
-                                                                                                                                                              cxxSources = [],
-                                                                                                                                                              defaultExtensions = [],
-                                                                                                                                                              defaultLanguage = Nothing,
-                                                                                                                                                              extraBundledLibs = [],
-                                                                                                                                                              extraDynLibFlavours = [],
-                                                                                                                                                              extraFrameworkDirs = [],
-                                                                                                                                                              extraGHCiLibs = [],
-                                                                                                                                                              extraLibDirs = [],
-                                                                                                                                                              extraLibFlavours = [],
-                                                                                                                                                              extraLibs = ["pq"],
-                                                                                                                                                              frameworks = [],
-                                                                                                                                                              hsSourceDirs = [],
-                                                                                                                                                              hsc2hsOptions = [],
-                                                                                                                                                              includeDirs = [],
-                                                                                                                                                              includes = [],
-                                                                                                                                                              installIncludes = [],
-                                                                                                                                                              jsSources = [],
-                                                                                                                                                              ldOptions = [],
-                                                                                                                                                              mixins = [],
-                                                                                                                                                              oldExtensions = [],
-                                                                                                                                                              options = PerCompilerFlavor
-                                                                                                                                                                          []
-                                                                                                                                                                          [],
-                                                                                                                                                              otherExtensions = [],
-                                                                                                                                                              otherLanguages = [],
-                                                                                                                                                              otherModules = [],
-                                                                                                                                                              pkgconfigDepends = [],
-                                                                                                                                                              profOptions = PerCompilerFlavor
-                                                                                                                                                                              []
-                                                                                                                                                                              [],
-                                                                                                                                                              sharedOptions = PerCompilerFlavor
-                                                                                                                                                                                []
-                                                                                                                                                                                [],
-                                                                                                                                                              staticOptions = PerCompilerFlavor
-                                                                                                                                                                                []
-                                                                                                                                                                                [],
-                                                                                                                                                              targetBuildDepends = [],
-                                                                                                                                                              virtualModules = []},
-                                                                                                                                            libExposed = True,
-                                                                                                                                            libName = LMainLibName,
-                                                                                                                                            libVisibility = LibraryVisibilityPublic,
-                                                                                                                                            reexportedModules = [],
-                                                                                                                                            signatures = []}},
-                                                                                                 condBranchIfTrue = CondNode
-                                                                                                                      {condTreeComponents = [],
-                                                                                                                       condTreeConstraints = [],
-                                                                                                                       condTreeData = Library
-                                                                                                                                        {exposedModules = [],
-                                                                                                                                         libBuildInfo = BuildInfo
-                                                                                                                                                          {asmOptions = [],
-                                                                                                                                                           asmSources = [],
-                                                                                                                                                           autogenIncludes = [],
-                                                                                                                                                           autogenModules = [],
-                                                                                                                                                           buildToolDepends = [],
-                                                                                                                                                           buildTools = [],
-                                                                                                                                                           buildable = True,
-                                                                                                                                                           cSources = [],
-                                                                                                                                                           ccOptions = [],
-                                                                                                                                                           cmmOptions = [],
-                                                                                                                                                           cmmSources = [],
-                                                                                                                                                           cppOptions = [],
-                                                                                                                                                           customFieldsBI = [],
-                                                                                                                                                           cxxOptions = [],
-                                                                                                                                                           cxxSources = [],
-                                                                                                                                                           defaultExtensions = [],
-                                                                                                                                                           defaultLanguage = Nothing,
-                                                                                                                                                           extraBundledLibs = [],
-                                                                                                                                                           extraDynLibFlavours = [],
-                                                                                                                                                           extraFrameworkDirs = [],
-                                                                                                                                                           extraGHCiLibs = [],
-                                                                                                                                                           extraLibDirs = [],
-                                                                                                                                                           extraLibFlavours = [],
-                                                                                                                                                           extraLibs = ["libpq"],
-                                                                                                                                                           frameworks = [],
-                                                                                                                                                           hsSourceDirs = [],
-                                                                                                                                                           hsc2hsOptions = [],
-                                                                                                                                                           includeDirs = [],
-                                                                                                                                                           includes = [],
-                                                                                                                                                           installIncludes = [],
-                                                                                                                                                           jsSources = [],
-                                                                                                                                                           ldOptions = [],
-                                                                                                                                                           mixins = [],
-                                                                                                                                                           oldExtensions = [],
-                                                                                                                                                           options = PerCompilerFlavor
-                                                                                                                                                                       []
-                                                                                                                                                                       [],
-                                                                                                                                                           otherExtensions = [],
-                                                                                                                                                           otherLanguages = [],
-                                                                                                                                                           otherModules = [],
-                                                                                                                                                           pkgconfigDepends = [],
-                                                                                                                                                           profOptions = PerCompilerFlavor
-                                                                                                                                                                           []
-                                                                                                                                                                           [],
-                                                                                                                                                           sharedOptions = PerCompilerFlavor
-                                                                                                                                                                             []
-                                                                                                                                                                             [],
-                                                                                                                                                           staticOptions = PerCompilerFlavor
-                                                                                                                                                                             []
-                                                                                                                                                                             [],
-                                                                                                                                                           targetBuildDepends = [],
-                                                                                                                                                           virtualModules = []},
-                                                                                                                                         libExposed = True,
-                                                                                                                                         libName = LMainLibName,
-                                                                                                                                         libVisibility = LibraryVisibilityPublic,
-                                                                                                                                         reexportedModules = [],
-                                                                                                                                         signatures = []}}}],
-                                                                        condTreeConstraints = [],
-                                                                        condTreeData = Library
-                                                                                         {exposedModules = [],
-                                                                                          libBuildInfo = BuildInfo
-                                                                                                           {asmOptions = [],
-                                                                                                            asmSources = [],
-                                                                                                            autogenIncludes = [],
-                                                                                                            autogenModules = [],
-                                                                                                            buildToolDepends = [],
-                                                                                                            buildTools = [],
-                                                                                                            buildable = True,
-                                                                                                            cSources = [],
-                                                                                                            ccOptions = [],
-                                                                                                            cmmOptions = [],
-                                                                                                            cmmSources = [],
-                                                                                                            cppOptions = [],
-                                                                                                            customFieldsBI = [],
-                                                                                                            cxxOptions = [],
-                                                                                                            cxxSources = [],
-                                                                                                            defaultExtensions = [],
-                                                                                                            defaultLanguage = Nothing,
-                                                                                                            extraBundledLibs = [],
-                                                                                                            extraDynLibFlavours = [],
-                                                                                                            extraFrameworkDirs = [],
-                                                                                                            extraGHCiLibs = [],
-                                                                                                            extraLibDirs = [],
-                                                                                                            extraLibFlavours = [],
-                                                                                                            extraLibs = [],
-                                                                                                            frameworks = [],
-                                                                                                            hsSourceDirs = [],
-                                                                                                            hsc2hsOptions = [],
-                                                                                                            includeDirs = [],
-                                                                                                            includes = [],
-                                                                                                            installIncludes = [],
-                                                                                                            jsSources = [],
-                                                                                                            ldOptions = [],
-                                                                                                            mixins = [],
-                                                                                                            oldExtensions = [],
-                                                                                                            options = PerCompilerFlavor
-                                                                                                                        []
-                                                                                                                        [],
-                                                                                                            otherExtensions = [],
-                                                                                                            otherLanguages = [],
-                                                                                                            otherModules = [],
-                                                                                                            pkgconfigDepends = [],
-                                                                                                            profOptions = PerCompilerFlavor
-                                                                                                                            []
-                                                                                                                            [],
-                                                                                                            sharedOptions = PerCompilerFlavor
-                                                                                                                              []
-                                                                                                                              [],
-                                                                                                            staticOptions = PerCompilerFlavor
-                                                                                                                              []
-                                                                                                                              [],
-                                                                                                            targetBuildDepends = [],
-                                                                                                            virtualModules = []},
-                                                                                          libExposed = True,
-                                                                                          libName = LMainLibName,
-                                                                                          libVisibility = LibraryVisibilityPublic,
-                                                                                          reexportedModules = [],
-                                                                                          signatures = []}},
-                                               condBranchIfTrue = CondNode
-                                                                    {condTreeComponents = [],
-                                                                     condTreeConstraints = [],
-                                                                     condTreeData = Library
-                                                                                      {exposedModules = [],
-                                                                                       libBuildInfo = BuildInfo
-                                                                                                        {asmOptions = [],
-                                                                                                         asmSources = [],
-                                                                                                         autogenIncludes = [],
-                                                                                                         autogenModules = [],
-                                                                                                         buildToolDepends = [],
-                                                                                                         buildTools = [],
-                                                                                                         buildable = True,
-                                                                                                         cSources = [],
-                                                                                                         ccOptions = [],
-                                                                                                         cmmOptions = [],
-                                                                                                         cmmSources = [],
-                                                                                                         cppOptions = [],
-                                                                                                         customFieldsBI = [],
-                                                                                                         cxxOptions = [],
-                                                                                                         cxxSources = [],
-                                                                                                         defaultExtensions = [],
-                                                                                                         defaultLanguage = Nothing,
-                                                                                                         extraBundledLibs = [],
-                                                                                                         extraDynLibFlavours = [],
-                                                                                                         extraFrameworkDirs = [],
-                                                                                                         extraGHCiLibs = [],
-                                                                                                         extraLibDirs = [],
-                                                                                                         extraLibFlavours = [],
-                                                                                                         extraLibs = [],
-                                                                                                         frameworks = [],
-                                                                                                         hsSourceDirs = [],
-                                                                                                         hsc2hsOptions = [],
-                                                                                                         includeDirs = [],
-                                                                                                         includes = [],
-                                                                                                         installIncludes = [],
-                                                                                                         jsSources = [],
-                                                                                                         ldOptions = [],
-                                                                                                         mixins = [],
-                                                                                                         oldExtensions = [],
-                                                                                                         options = PerCompilerFlavor
-                                                                                                                     []
-                                                                                                                     [],
-                                                                                                         otherExtensions = [],
-                                                                                                         otherLanguages = [],
-                                                                                                         otherModules = [],
-                                                                                                         pkgconfigDepends = [PkgconfigDependency
-                                                                                                                               (PkgconfigName
-                                                                                                                                  "libpq")
-                                                                                                                               (PcIntersectVersionRanges
-                                                                                                                                  (PcOrLaterVersion
-                                                                                                                                     (PkgconfigVersion
-                                                                                                                                        "9"))
-                                                                                                                                  (PcEarlierVersion
-                                                                                                                                     (PkgconfigVersion
-                                                                                                                                        "10")))],
-                                                                                                         profOptions = PerCompilerFlavor
-                                                                                                                         []
-                                                                                                                         [],
-                                                                                                         sharedOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         staticOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         targetBuildDepends = [],
-                                                                                                         virtualModules = []},
-                                                                                       libExposed = True,
-                                                                                       libName = LMainLibName,
-                                                                                       libVisibility = LibraryVisibilityPublic,
-                                                                                       reexportedModules = [],
-                                                                                       signatures = []}}}],
-                      condTreeConstraints = [Dependency
-                                               (PackageName "base")
-                                               (IntersectVersionRanges
-                                                  (OrLaterVersion (mkVersion [4, 3]))
-                                                  (EarlierVersion (mkVersion [4, 13])))
-                                               mainLibSet,
-                                             Dependency
-                                               (PackageName "bytestring")
-                                               (IntersectVersionRanges
-                                                  (OrLaterVersion (mkVersion [0, 9, 1, 0]))
-                                                  (EarlierVersion (mkVersion [0, 11])))
-                                               mainLibSet],
-                      condTreeData = Library
-                                       {exposedModules = [ModuleName "Database.PostgreSQL.LibPQ",
-                                                          ModuleName
-                                                            "Database.PostgreSQL.LibPQ.Internal"],
-                                        libBuildInfo = BuildInfo
-                                                         {asmOptions = [],
-                                                          asmSources = [],
-                                                          autogenIncludes = [],
-                                                          autogenModules = [],
-                                                          buildToolDepends = [],
-                                                          buildTools = [LegacyExeDependency
-                                                                          "hsc2hs"
-                                                                          (OrLaterVersion
-                                                                             (mkVersion [0]))],
-                                                          buildable = True,
-                                                          cSources = ["cbits/noticehandlers.c"],
-                                                          ccOptions = [],
-                                                          cmmOptions = [],
-                                                          cmmSources = [],
-                                                          cppOptions = [],
-                                                          customFieldsBI = [],
-                                                          cxxOptions = [],
-                                                          cxxSources = [],
-                                                          defaultExtensions = [],
-                                                          defaultLanguage = Nothing,
-                                                          extraBundledLibs = [],
-                                                          extraDynLibFlavours = [],
-                                                          extraFrameworkDirs = [],
-                                                          extraGHCiLibs = [],
-                                                          extraLibDirs = [],
-                                                          extraLibFlavours = [],
-                                                          extraLibs = [],
-                                                          frameworks = [],
-                                                          hsSourceDirs = [SymbolicPath "src"],
-                                                          hsc2hsOptions = [],
-                                                          includeDirs = ["cbits"],
-                                                          includes = [],
-                                                          installIncludes = [],
-                                                          jsSources = [],
-                                                          ldOptions = [],
-                                                          mixins = [],
-                                                          oldExtensions = [],
-                                                          options = PerCompilerFlavor ["-Wall"] [],
-                                                          otherExtensions = [],
-                                                          otherLanguages = [],
-                                                          otherModules = [],
-                                                          pkgconfigDepends = [],
-                                                          profOptions = PerCompilerFlavor [] [],
-                                                          sharedOptions = PerCompilerFlavor [] [],
-                                                          staticOptions = PerCompilerFlavor [] [],
-                                                          targetBuildDepends = [Dependency
-                                                                                  (PackageName
-                                                                                     "base")
-                                                                                  (IntersectVersionRanges
-                                                                                     (OrLaterVersion
-                                                                                        (mkVersion
-                                                                                           [4, 3]))
-                                                                                     (EarlierVersion
-                                                                                        (mkVersion
-                                                                                           [4,
-                                                                                            13])))
-                                                                                  mainLibSet,
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "bytestring")
-                                                                                  (IntersectVersionRanges
-                                                                                     (OrLaterVersion
-                                                                                        (mkVersion
-                                                                                           [0,
-                                                                                            9,
-                                                                                            1,
-                                                                                            0]))
-                                                                                     (EarlierVersion
-                                                                                        (mkVersion
-                                                                                           [0,
-                                                                                            11])))
-                                                                                  mainLibSet],
-                                                          virtualModules = []},
-                                        libExposed = True,
-                                        libName = LMainLibName,
-                                        libVisibility = LibraryVisibilityPublic,
-                                        reexportedModules = [],
-                                        signatures = []}},
-   condSubLibraries = [],
-   condTestSuites = [],
-   genPackageFlags = [MkPackageFlag
-                        {flagDefault = False,
-                         flagDescription = "",
-                         flagManual = True,
-                         flagName = FlagName "use-pkg-config"}],
-   gpdScannedVersion = Nothing,
-   packageDescription = PackageDescription
-                          {author = "Grant Monroe, Leon P Smith, Joey Adams",
-                           benchmarks = [],
-                           bugReports = "",
-                           buildTypeRaw = Just Custom,
-                           category = "Database",
-                           copyright = concat
-                                         ["(c) 2010 Grant Monroe\n", "(c) 2011 Leon P Smith"],
-                           customFieldsPD = [],
-                           dataDir = ".",
-                           dataFiles = [],
-                           description = concat
-                                           ["This is a binding to libpq: the C application\n",
-                                            "programmer's interface to PostgreSQL. libpq is a\n",
-                                            "set of library functions that allow client\n",
-                                            "programs to pass queries to the PostgreSQL\n",
-                                            "backend server and to receive the results of\n",
-                                            "these queries."],
-                           executables = [],
-                           extraDocFiles = [],
-                           extraSrcFiles = ["cbits/noticehandlers.h", "CHANGELOG.md"],
-                           extraTmpFiles = [],
-                           foreignLibs = [],
-                           homepage = "https://github.com/phadej/postgresql-libpq",
-                           library = Nothing,
-                           licenseFiles = [SymbolicPath "LICENSE"],
-                           licenseRaw = Right BSD3,
-                           maintainer = "Oleg Grenrus <oleg.grenrus@iki.fi>",
-                           package = PackageIdentifier
-                                       {pkgName = PackageName "postgresql-libpq",
-                                        pkgVersion = mkVersion [0, 9, 4, 2]},
-                           pkgUrl = "",
-                           setupBuildInfo = Just
-                                              SetupBuildInfo
-                                                {defaultSetupDepends = False,
-                                                 setupDepends = [Dependency
-                                                                   (PackageName "base")
-                                                                   (IntersectVersionRanges
-                                                                      (OrLaterVersion
-                                                                         (mkVersion [4, 3]))
-                                                                      (EarlierVersion
-                                                                         (mkVersion [5])))
-                                                                   mainLibSet,
-                                                                 Dependency
-                                                                   (PackageName "Cabal")
-                                                                   (IntersectVersionRanges
-                                                                      (OrLaterVersion
-                                                                         (mkVersion [1, 10]))
-                                                                      (EarlierVersion
-                                                                         (mkVersion [2, 5])))
-                                                                   mainLibSet]},
-                           sourceRepos = [],
-                           specVersion = CabalSpecV1_8,
-                           stability = "",
-                           subLibraries = [],
-                           synopsis = "low-level binding to libpq",
-                           testSuites = [],
-                           testedWith = [_×_ GHC (ThisVersion (mkVersion [7, 0, 4])),
-                                         _×_ GHC (ThisVersion (mkVersion [7, 2, 2])),
-                                         _×_ GHC (ThisVersion (mkVersion [7, 4, 2])),
-                                         _×_ GHC (ThisVersion (mkVersion [7, 6, 3])),
-                                         _×_ GHC (ThisVersion (mkVersion [7, 8, 4])),
-                                         _×_ GHC (ThisVersion (mkVersion [7, 10, 3])),
-                                         _×_ GHC (ThisVersion (mkVersion [8, 0, 2])),
-                                         _×_ GHC (ThisVersion (mkVersion [8, 2, 2])),
-                                         _×_ GHC (ThisVersion (mkVersion [8, 4, 3])),
-                                         _×_ GHC (ThisVersion (mkVersion [8, 6, 1]))]}}
+GenericPackageDescription {
+  packageDescription =
+  PackageDescription {
+    specVersion = CabalSpecV1_8,
+    package = PackageIdentifier {
+      pkgName = PackageName
+        "postgresql-libpq",
+      pkgVersion = mkVersion
+        [0, 9, 4, 2]},
+    licenseRaw = Right BSD3,
+    licenseFiles = [
+      SymbolicPath "LICENSE"],
+    copyright = concat
+      [
+        "(c) 2010 Grant Monroe\n",
+        "(c) 2011 Leon P Smith"],
+    maintainer =
+    "Oleg Grenrus <oleg.grenrus@iki.fi>",
+    author =
+    "Grant Monroe, Leon P Smith, Joey Adams",
+    stability = "",
+    testedWith = [
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [7, 0, 4])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [7, 2, 2])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [7, 4, 2])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [7, 6, 3])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [7, 8, 4])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [7, 10, 3])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [8, 0, 2])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [8, 2, 2])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [8, 4, 3])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [8, 6, 1]))],
+    homepage =
+    "https://github.com/phadej/postgresql-libpq",
+    pkgUrl = "",
+    bugReports = "",
+    sourceRepos = [],
+    synopsis =
+    "low-level binding to libpq",
+    description = concat
+      [
+        "This is a binding to libpq: the C application\n",
+        "programmer's interface to PostgreSQL. libpq is a\n",
+        "set of library functions that allow client\n",
+        "programs to pass queries to the PostgreSQL\n",
+        "backend server and to receive the results of\n",
+        "these queries."],
+    category = "Database",
+    customFieldsPD = [],
+    buildTypeRaw = Just Custom,
+    setupBuildInfo = Just
+      SetupBuildInfo {
+        setupDepends = [
+          Dependency
+            (PackageName "base")
+            (IntersectVersionRanges
+              (OrLaterVersion
+                (mkVersion [4, 3]))
+              (EarlierVersion
+                (mkVersion [5])))
+            mainLibSet,
+          Dependency
+            (PackageName "Cabal")
+            (IntersectVersionRanges
+              (OrLaterVersion
+                (mkVersion [1, 10]))
+              (EarlierVersion
+                (mkVersion [2, 5])))
+            mainLibSet],
+        defaultSetupDepends = False},
+    library = Nothing,
+    subLibraries = [],
+    executables = [],
+    foreignLibs = [],
+    testSuites = [],
+    benchmarks = [],
+    dataFiles = [],
+    dataDir = ".",
+    extraSrcFiles = [
+      "cbits/noticehandlers.h",
+      "CHANGELOG.md"],
+    extraTmpFiles = [],
+    extraDocFiles = []},
+  gpdScannedVersion = Nothing,
+  genPackageFlags = [
+    MkPackageFlag {
+      flagName = FlagName
+        "use-pkg-config",
+      flagDescription = "",
+      flagDefault = False,
+      flagManual = True}],
+  condLibrary = Just
+    CondNode {
+      condTreeData = Library {
+        libName = LMainLibName,
+        exposedModules = [
+          ModuleName
+            "Database.PostgreSQL.LibPQ",
+          ModuleName
+            "Database.PostgreSQL.LibPQ.Internal"],
+        reexportedModules = [],
+        signatures = [],
+        libExposed = True,
+        libVisibility =
+        LibraryVisibilityPublic,
+        libBuildInfo = BuildInfo {
+          buildable = True,
+          buildTools = [
+            LegacyExeDependency
+              "hsc2hs"
+              (OrLaterVersion
+                (mkVersion [0]))],
+          buildToolDepends = [],
+          cppOptions = [],
+          asmOptions = [],
+          cmmOptions = [],
+          ccOptions = [],
+          cxxOptions = [],
+          ldOptions = [],
+          hsc2hsOptions = [],
+          pkgconfigDepends = [],
+          frameworks = [],
+          extraFrameworkDirs = [],
+          asmSources = [],
+          cmmSources = [],
+          cSources = [
+            "cbits/noticehandlers.c"],
+          cxxSources = [],
+          jsSources = [],
+          hsSourceDirs = [
+            SymbolicPath "src"],
+          otherModules = [],
+          virtualModules = [],
+          autogenModules = [],
+          defaultLanguage = Nothing,
+          otherLanguages = [],
+          defaultExtensions = [],
+          otherExtensions = [],
+          oldExtensions = [],
+          extraLibs = [],
+          extraLibsStatic = [],
+          extraGHCiLibs = [],
+          extraBundledLibs = [],
+          extraLibFlavours = [],
+          extraDynLibFlavours = [],
+          extraLibDirs = [],
+          extraLibDirsStatic = [],
+          includeDirs = ["cbits"],
+          includes = [],
+          autogenIncludes = [],
+          installIncludes = [],
+          options = PerCompilerFlavor
+            ["-Wall"]
+            [],
+          profOptions = PerCompilerFlavor
+            []
+            [],
+          sharedOptions =
+          PerCompilerFlavor [] [],
+          staticOptions =
+          PerCompilerFlavor [] [],
+          customFieldsBI = [],
+          targetBuildDepends = [
+            Dependency
+              (PackageName "base")
+              (IntersectVersionRanges
+                (OrLaterVersion
+                  (mkVersion [4, 3]))
+                (EarlierVersion
+                  (mkVersion [4, 13])))
+              mainLibSet,
+            Dependency
+              (PackageName "bytestring")
+              (IntersectVersionRanges
+                (OrLaterVersion
+                  (mkVersion [0, 9, 1, 0]))
+                (EarlierVersion
+                  (mkVersion [0, 11])))
+              mainLibSet],
+          mixins = []}},
+      condTreeConstraints = [
+        Dependency
+          (PackageName "base")
+          (IntersectVersionRanges
+            (OrLaterVersion
+              (mkVersion [4, 3]))
+            (EarlierVersion
+              (mkVersion [4, 13])))
+          mainLibSet,
+        Dependency
+          (PackageName "bytestring")
+          (IntersectVersionRanges
+            (OrLaterVersion
+              (mkVersion [0, 9, 1, 0]))
+            (EarlierVersion
+              (mkVersion [0, 11])))
+          mainLibSet],
+      condTreeComponents = [
+        CondBranch {
+          condBranchCondition =
+          `CNot (Var (OS Windows))`,
+          condBranchIfTrue = CondNode {
+            condTreeData = Library {
+              libName = LMainLibName,
+              exposedModules = [],
+              reexportedModules = [],
+              signatures = [],
+              libExposed = True,
+              libVisibility =
+              LibraryVisibilityPublic,
+              libBuildInfo = BuildInfo {
+                buildable = True,
+                buildTools = [],
+                buildToolDepends = [],
+                cppOptions = [],
+                asmOptions = [],
+                cmmOptions = [],
+                ccOptions = [],
+                cxxOptions = [],
+                ldOptions = [],
+                hsc2hsOptions = [],
+                pkgconfigDepends = [],
+                frameworks = [],
+                extraFrameworkDirs = [],
+                asmSources = [],
+                cmmSources = [],
+                cSources = [],
+                cxxSources = [],
+                jsSources = [],
+                hsSourceDirs = [],
+                otherModules = [],
+                virtualModules = [],
+                autogenModules = [],
+                defaultLanguage = Nothing,
+                otherLanguages = [],
+                defaultExtensions = [],
+                otherExtensions = [],
+                oldExtensions = [],
+                extraLibs = [],
+                extraLibsStatic = [],
+                extraGHCiLibs = [],
+                extraBundledLibs = [],
+                extraLibFlavours = [],
+                extraDynLibFlavours = [],
+                extraLibDirs = [],
+                extraLibDirsStatic = [],
+                includeDirs = [],
+                includes = [],
+                autogenIncludes = [],
+                installIncludes = [],
+                options = PerCompilerFlavor
+                  []
+                  [],
+                profOptions = PerCompilerFlavor
+                  []
+                  [],
+                sharedOptions =
+                PerCompilerFlavor [] [],
+                staticOptions =
+                PerCompilerFlavor [] [],
+                customFieldsBI = [],
+                targetBuildDepends = [
+                  Dependency
+                    (PackageName "unix")
+                    (IntersectVersionRanges
+                      (OrLaterVersion
+                        (mkVersion [2, 4, 2, 0]))
+                      (EarlierVersion
+                        (mkVersion [2, 8])))
+                    mainLibSet],
+                mixins = []}},
+            condTreeConstraints = [
+              Dependency
+                (PackageName "unix")
+                (IntersectVersionRanges
+                  (OrLaterVersion
+                    (mkVersion [2, 4, 2, 0]))
+                  (EarlierVersion
+                    (mkVersion [2, 8])))
+                mainLibSet],
+            condTreeComponents = []},
+          condBranchIfFalse = Nothing},
+        CondBranch {
+          condBranchCondition =
+          `Var (OS Windows)`,
+          condBranchIfTrue = CondNode {
+            condTreeData = Library {
+              libName = LMainLibName,
+              exposedModules = [],
+              reexportedModules = [],
+              signatures = [],
+              libExposed = True,
+              libVisibility =
+              LibraryVisibilityPublic,
+              libBuildInfo = BuildInfo {
+                buildable = True,
+                buildTools = [],
+                buildToolDepends = [],
+                cppOptions = [],
+                asmOptions = [],
+                cmmOptions = [],
+                ccOptions = [],
+                cxxOptions = [],
+                ldOptions = [],
+                hsc2hsOptions = [],
+                pkgconfigDepends = [],
+                frameworks = [],
+                extraFrameworkDirs = [],
+                asmSources = [],
+                cmmSources = [],
+                cSources = [],
+                cxxSources = [],
+                jsSources = [],
+                hsSourceDirs = [],
+                otherModules = [],
+                virtualModules = [],
+                autogenModules = [],
+                defaultLanguage = Nothing,
+                otherLanguages = [],
+                defaultExtensions = [],
+                otherExtensions = [],
+                oldExtensions = [],
+                extraLibs = [],
+                extraLibsStatic = [],
+                extraGHCiLibs = [],
+                extraBundledLibs = [],
+                extraLibFlavours = [],
+                extraDynLibFlavours = [],
+                extraLibDirs = [],
+                extraLibDirsStatic = [],
+                includeDirs = [],
+                includes = [],
+                autogenIncludes = [],
+                installIncludes = [],
+                options = PerCompilerFlavor
+                  []
+                  [],
+                profOptions = PerCompilerFlavor
+                  []
+                  [],
+                sharedOptions =
+                PerCompilerFlavor [] [],
+                staticOptions =
+                PerCompilerFlavor [] [],
+                customFieldsBI = [],
+                targetBuildDepends = [
+                  Dependency
+                    (PackageName "Win32")
+                    (IntersectVersionRanges
+                      (OrLaterVersion
+                        (mkVersion [2, 2, 0, 2]))
+                      (EarlierVersion
+                        (mkVersion [2, 7])))
+                    mainLibSet],
+                mixins = []}},
+            condTreeConstraints = [
+              Dependency
+                (PackageName "Win32")
+                (IntersectVersionRanges
+                  (OrLaterVersion
+                    (mkVersion [2, 2, 0, 2]))
+                  (EarlierVersion
+                    (mkVersion [2, 7])))
+                mainLibSet],
+            condTreeComponents = []},
+          condBranchIfFalse = Nothing},
+        CondBranch {
+          condBranchCondition =
+          `Var (PackageFlag (FlagName "use-pkg-config"))`,
+          condBranchIfTrue = CondNode {
+            condTreeData = Library {
+              libName = LMainLibName,
+              exposedModules = [],
+              reexportedModules = [],
+              signatures = [],
+              libExposed = True,
+              libVisibility =
+              LibraryVisibilityPublic,
+              libBuildInfo = BuildInfo {
+                buildable = True,
+                buildTools = [],
+                buildToolDepends = [],
+                cppOptions = [],
+                asmOptions = [],
+                cmmOptions = [],
+                ccOptions = [],
+                cxxOptions = [],
+                ldOptions = [],
+                hsc2hsOptions = [],
+                pkgconfigDepends = [
+                  PkgconfigDependency
+                    (PkgconfigName "libpq")
+                    (PcIntersectVersionRanges
+                      (PcOrLaterVersion
+                        (PkgconfigVersion "9"))
+                      (PcEarlierVersion
+                        (PkgconfigVersion "10")))],
+                frameworks = [],
+                extraFrameworkDirs = [],
+                asmSources = [],
+                cmmSources = [],
+                cSources = [],
+                cxxSources = [],
+                jsSources = [],
+                hsSourceDirs = [],
+                otherModules = [],
+                virtualModules = [],
+                autogenModules = [],
+                defaultLanguage = Nothing,
+                otherLanguages = [],
+                defaultExtensions = [],
+                otherExtensions = [],
+                oldExtensions = [],
+                extraLibs = [],
+                extraLibsStatic = [],
+                extraGHCiLibs = [],
+                extraBundledLibs = [],
+                extraLibFlavours = [],
+                extraDynLibFlavours = [],
+                extraLibDirs = [],
+                extraLibDirsStatic = [],
+                includeDirs = [],
+                includes = [],
+                autogenIncludes = [],
+                installIncludes = [],
+                options = PerCompilerFlavor
+                  []
+                  [],
+                profOptions = PerCompilerFlavor
+                  []
+                  [],
+                sharedOptions =
+                PerCompilerFlavor [] [],
+                staticOptions =
+                PerCompilerFlavor [] [],
+                customFieldsBI = [],
+                targetBuildDepends = [],
+                mixins = []}},
+            condTreeConstraints = [],
+            condTreeComponents = []},
+          condBranchIfFalse = Just
+            CondNode {
+              condTreeData = Library {
+                libName = LMainLibName,
+                exposedModules = [],
+                reexportedModules = [],
+                signatures = [],
+                libExposed = True,
+                libVisibility =
+                LibraryVisibilityPublic,
+                libBuildInfo = BuildInfo {
+                  buildable = True,
+                  buildTools = [],
+                  buildToolDepends = [],
+                  cppOptions = [],
+                  asmOptions = [],
+                  cmmOptions = [],
+                  ccOptions = [],
+                  cxxOptions = [],
+                  ldOptions = [],
+                  hsc2hsOptions = [],
+                  pkgconfigDepends = [],
+                  frameworks = [],
+                  extraFrameworkDirs = [],
+                  asmSources = [],
+                  cmmSources = [],
+                  cSources = [],
+                  cxxSources = [],
+                  jsSources = [],
+                  hsSourceDirs = [],
+                  otherModules = [],
+                  virtualModules = [],
+                  autogenModules = [],
+                  defaultLanguage = Nothing,
+                  otherLanguages = [],
+                  defaultExtensions = [],
+                  otherExtensions = [],
+                  oldExtensions = [],
+                  extraLibs = [],
+                  extraLibsStatic = [],
+                  extraGHCiLibs = [],
+                  extraBundledLibs = [],
+                  extraLibFlavours = [],
+                  extraDynLibFlavours = [],
+                  extraLibDirs = [],
+                  extraLibDirsStatic = [],
+                  includeDirs = [],
+                  includes = [],
+                  autogenIncludes = [],
+                  installIncludes = [],
+                  options = PerCompilerFlavor
+                    []
+                    [],
+                  profOptions = PerCompilerFlavor
+                    []
+                    [],
+                  sharedOptions =
+                  PerCompilerFlavor [] [],
+                  staticOptions =
+                  PerCompilerFlavor [] [],
+                  customFieldsBI = [],
+                  targetBuildDepends = [],
+                  mixins = []}},
+              condTreeConstraints = [],
+              condTreeComponents = [
+                CondBranch {
+                  condBranchCondition =
+                  `Var (OS Windows)`,
+                  condBranchIfTrue = CondNode {
+                    condTreeData = Library {
+                      libName = LMainLibName,
+                      exposedModules = [],
+                      reexportedModules = [],
+                      signatures = [],
+                      libExposed = True,
+                      libVisibility =
+                      LibraryVisibilityPublic,
+                      libBuildInfo = BuildInfo {
+                        buildable = True,
+                        buildTools = [],
+                        buildToolDepends = [],
+                        cppOptions = [],
+                        asmOptions = [],
+                        cmmOptions = [],
+                        ccOptions = [],
+                        cxxOptions = [],
+                        ldOptions = [],
+                        hsc2hsOptions = [],
+                        pkgconfigDepends = [],
+                        frameworks = [],
+                        extraFrameworkDirs = [],
+                        asmSources = [],
+                        cmmSources = [],
+                        cSources = [],
+                        cxxSources = [],
+                        jsSources = [],
+                        hsSourceDirs = [],
+                        otherModules = [],
+                        virtualModules = [],
+                        autogenModules = [],
+                        defaultLanguage = Nothing,
+                        otherLanguages = [],
+                        defaultExtensions = [],
+                        otherExtensions = [],
+                        oldExtensions = [],
+                        extraLibs = ["libpq"],
+                        extraLibsStatic = [],
+                        extraGHCiLibs = [],
+                        extraBundledLibs = [],
+                        extraLibFlavours = [],
+                        extraDynLibFlavours = [],
+                        extraLibDirs = [],
+                        extraLibDirsStatic = [],
+                        includeDirs = [],
+                        includes = [],
+                        autogenIncludes = [],
+                        installIncludes = [],
+                        options = PerCompilerFlavor
+                          []
+                          [],
+                        profOptions = PerCompilerFlavor
+                          []
+                          [],
+                        sharedOptions =
+                        PerCompilerFlavor [] [],
+                        staticOptions =
+                        PerCompilerFlavor [] [],
+                        customFieldsBI = [],
+                        targetBuildDepends = [],
+                        mixins = []}},
+                    condTreeConstraints = [],
+                    condTreeComponents = []},
+                  condBranchIfFalse = Just
+                    CondNode {
+                      condTreeData = Library {
+                        libName = LMainLibName,
+                        exposedModules = [],
+                        reexportedModules = [],
+                        signatures = [],
+                        libExposed = True,
+                        libVisibility =
+                        LibraryVisibilityPublic,
+                        libBuildInfo = BuildInfo {
+                          buildable = True,
+                          buildTools = [],
+                          buildToolDepends = [],
+                          cppOptions = [],
+                          asmOptions = [],
+                          cmmOptions = [],
+                          ccOptions = [],
+                          cxxOptions = [],
+                          ldOptions = [],
+                          hsc2hsOptions = [],
+                          pkgconfigDepends = [],
+                          frameworks = [],
+                          extraFrameworkDirs = [],
+                          asmSources = [],
+                          cmmSources = [],
+                          cSources = [],
+                          cxxSources = [],
+                          jsSources = [],
+                          hsSourceDirs = [],
+                          otherModules = [],
+                          virtualModules = [],
+                          autogenModules = [],
+                          defaultLanguage = Nothing,
+                          otherLanguages = [],
+                          defaultExtensions = [],
+                          otherExtensions = [],
+                          oldExtensions = [],
+                          extraLibs = ["pq"],
+                          extraLibsStatic = [],
+                          extraGHCiLibs = [],
+                          extraBundledLibs = [],
+                          extraLibFlavours = [],
+                          extraDynLibFlavours = [],
+                          extraLibDirs = [],
+                          extraLibDirsStatic = [],
+                          includeDirs = [],
+                          includes = [],
+                          autogenIncludes = [],
+                          installIncludes = [],
+                          options = PerCompilerFlavor
+                            []
+                            [],
+                          profOptions = PerCompilerFlavor
+                            []
+                            [],
+                          sharedOptions =
+                          PerCompilerFlavor [] [],
+                          staticOptions =
+                          PerCompilerFlavor [] [],
+                          customFieldsBI = [],
+                          targetBuildDepends = [],
+                          mixins = []}},
+                      condTreeConstraints = [],
+                      condTreeComponents = [
+                        CondBranch {
+                          condBranchCondition =
+                          `Var (OS OpenBSD)`,
+                          condBranchIfTrue = CondNode {
+                            condTreeData = Library {
+                              libName = LMainLibName,
+                              exposedModules = [],
+                              reexportedModules = [],
+                              signatures = [],
+                              libExposed = True,
+                              libVisibility =
+                              LibraryVisibilityPublic,
+                              libBuildInfo = BuildInfo {
+                                buildable = True,
+                                buildTools = [],
+                                buildToolDepends = [],
+                                cppOptions = [],
+                                asmOptions = [],
+                                cmmOptions = [],
+                                ccOptions = [],
+                                cxxOptions = [],
+                                ldOptions = [],
+                                hsc2hsOptions = [],
+                                pkgconfigDepends = [],
+                                frameworks = [],
+                                extraFrameworkDirs = [],
+                                asmSources = [],
+                                cmmSources = [],
+                                cSources = [],
+                                cxxSources = [],
+                                jsSources = [],
+                                hsSourceDirs = [],
+                                otherModules = [],
+                                virtualModules = [],
+                                autogenModules = [],
+                                defaultLanguage = Nothing,
+                                otherLanguages = [],
+                                defaultExtensions = [],
+                                otherExtensions = [],
+                                oldExtensions = [],
+                                extraLibs = ["crypto", "ssl"],
+                                extraLibsStatic = [],
+                                extraGHCiLibs = [],
+                                extraBundledLibs = [],
+                                extraLibFlavours = [],
+                                extraDynLibFlavours = [],
+                                extraLibDirs = [],
+                                extraLibDirsStatic = [],
+                                includeDirs = [],
+                                includes = [],
+                                autogenIncludes = [],
+                                installIncludes = [],
+                                options = PerCompilerFlavor
+                                  []
+                                  [],
+                                profOptions = PerCompilerFlavor
+                                  []
+                                  [],
+                                sharedOptions =
+                                PerCompilerFlavor [] [],
+                                staticOptions =
+                                PerCompilerFlavor [] [],
+                                customFieldsBI = [],
+                                targetBuildDepends = [],
+                                mixins = []}},
+                            condTreeConstraints = [],
+                            condTreeComponents = []},
+                          condBranchIfFalse =
+                          Nothing}]}}]}}]},
+  condSubLibraries = [],
+  condForeignLibs = [],
+  condExecutables = [],
+  condTestSuites = [],
+  condBenchmarks = []}
diff --git a/Cabal-tests/tests/ParserTests/regressions/libpq2.expr b/Cabal-tests/tests/ParserTests/regressions/libpq2.expr
index 0df92cdbaba27249f1ee90f96a7e3ee8b2d72e74..0b1c1ccd528fc35be1e5e902a83d84a41a78d505 100644
--- a/Cabal-tests/tests/ParserTests/regressions/libpq2.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/libpq2.expr
@@ -1,697 +1,743 @@
-GenericPackageDescription
-  {condBenchmarks = [],
-   condExecutables = [],
-   condForeignLibs = [],
-   condLibrary = Just
-                   CondNode
-                     {condTreeComponents = [CondBranch
-                                              {condBranchCondition = `CNot (Var (OS Windows))`,
-                                               condBranchIfFalse = Nothing,
-                                               condBranchIfTrue = CondNode
-                                                                    {condTreeComponents = [],
-                                                                     condTreeConstraints = [Dependency
-                                                                                              (PackageName
-                                                                                                 "unix")
-                                                                                              (IntersectVersionRanges
-                                                                                                 (OrLaterVersion
-                                                                                                    (mkVersion
-                                                                                                       [2,
-                                                                                                        4,
-                                                                                                        2,
-                                                                                                        0]))
-                                                                                                 (EarlierVersion
-                                                                                                    (mkVersion
-                                                                                                       [2,
-                                                                                                        8])))
-                                                                                              mainLibSet],
-                                                                     condTreeData = Library
-                                                                                      {exposedModules = [],
-                                                                                       libBuildInfo = BuildInfo
-                                                                                                        {asmOptions = [],
-                                                                                                         asmSources = [],
-                                                                                                         autogenIncludes = [],
-                                                                                                         autogenModules = [],
-                                                                                                         buildToolDepends = [],
-                                                                                                         buildTools = [],
-                                                                                                         buildable = True,
-                                                                                                         cSources = [],
-                                                                                                         ccOptions = [],
-                                                                                                         cmmOptions = [],
-                                                                                                         cmmSources = [],
-                                                                                                         cppOptions = [],
-                                                                                                         customFieldsBI = [],
-                                                                                                         cxxOptions = [],
-                                                                                                         cxxSources = [],
-                                                                                                         defaultExtensions = [],
-                                                                                                         defaultLanguage = Nothing,
-                                                                                                         extraBundledLibs = [],
-                                                                                                         extraDynLibFlavours = [],
-                                                                                                         extraFrameworkDirs = [],
-                                                                                                         extraGHCiLibs = [],
-                                                                                                         extraLibDirs = [],
-                                                                                                         extraLibFlavours = [],
-                                                                                                         extraLibs = [],
-                                                                                                         frameworks = [],
-                                                                                                         hsSourceDirs = [],
-                                                                                                         hsc2hsOptions = [],
-                                                                                                         includeDirs = [],
-                                                                                                         includes = [],
-                                                                                                         installIncludes = [],
-                                                                                                         jsSources = [],
-                                                                                                         ldOptions = [],
-                                                                                                         mixins = [],
-                                                                                                         oldExtensions = [],
-                                                                                                         options = PerCompilerFlavor
-                                                                                                                     []
-                                                                                                                     [],
-                                                                                                         otherExtensions = [],
-                                                                                                         otherLanguages = [],
-                                                                                                         otherModules = [],
-                                                                                                         pkgconfigDepends = [],
-                                                                                                         profOptions = PerCompilerFlavor
-                                                                                                                         []
-                                                                                                                         [],
-                                                                                                         sharedOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         staticOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         targetBuildDepends = [Dependency
-                                                                                                                                 (PackageName
-                                                                                                                                    "unix")
-                                                                                                                                 (IntersectVersionRanges
-                                                                                                                                    (OrLaterVersion
-                                                                                                                                       (mkVersion
-                                                                                                                                          [2,
-                                                                                                                                           4,
-                                                                                                                                           2,
-                                                                                                                                           0]))
-                                                                                                                                    (EarlierVersion
-                                                                                                                                       (mkVersion
-                                                                                                                                          [2,
-                                                                                                                                           8])))
-                                                                                                                                 mainLibSet],
-                                                                                                         virtualModules = []},
-                                                                                       libExposed = True,
-                                                                                       libName = LMainLibName,
-                                                                                       libVisibility = LibraryVisibilityPublic,
-                                                                                       reexportedModules = [],
-                                                                                       signatures = []}}},
-                                            CondBranch
-                                              {condBranchCondition = `Var (OS Windows)`,
-                                               condBranchIfFalse = Nothing,
-                                               condBranchIfTrue = CondNode
-                                                                    {condTreeComponents = [],
-                                                                     condTreeConstraints = [Dependency
-                                                                                              (PackageName
-                                                                                                 "Win32")
-                                                                                              (IntersectVersionRanges
-                                                                                                 (OrLaterVersion
-                                                                                                    (mkVersion
-                                                                                                       [2,
-                                                                                                        2,
-                                                                                                        0,
-                                                                                                        2]))
-                                                                                                 (EarlierVersion
-                                                                                                    (mkVersion
-                                                                                                       [2,
-                                                                                                        7])))
-                                                                                              mainLibSet],
-                                                                     condTreeData = Library
-                                                                                      {exposedModules = [],
-                                                                                       libBuildInfo = BuildInfo
-                                                                                                        {asmOptions = [],
-                                                                                                         asmSources = [],
-                                                                                                         autogenIncludes = [],
-                                                                                                         autogenModules = [],
-                                                                                                         buildToolDepends = [],
-                                                                                                         buildTools = [],
-                                                                                                         buildable = True,
-                                                                                                         cSources = [],
-                                                                                                         ccOptions = [],
-                                                                                                         cmmOptions = [],
-                                                                                                         cmmSources = [],
-                                                                                                         cppOptions = [],
-                                                                                                         customFieldsBI = [],
-                                                                                                         cxxOptions = [],
-                                                                                                         cxxSources = [],
-                                                                                                         defaultExtensions = [],
-                                                                                                         defaultLanguage = Nothing,
-                                                                                                         extraBundledLibs = [],
-                                                                                                         extraDynLibFlavours = [],
-                                                                                                         extraFrameworkDirs = [],
-                                                                                                         extraGHCiLibs = [],
-                                                                                                         extraLibDirs = [],
-                                                                                                         extraLibFlavours = [],
-                                                                                                         extraLibs = [],
-                                                                                                         frameworks = [],
-                                                                                                         hsSourceDirs = [],
-                                                                                                         hsc2hsOptions = [],
-                                                                                                         includeDirs = [],
-                                                                                                         includes = [],
-                                                                                                         installIncludes = [],
-                                                                                                         jsSources = [],
-                                                                                                         ldOptions = [],
-                                                                                                         mixins = [],
-                                                                                                         oldExtensions = [],
-                                                                                                         options = PerCompilerFlavor
-                                                                                                                     []
-                                                                                                                     [],
-                                                                                                         otherExtensions = [],
-                                                                                                         otherLanguages = [],
-                                                                                                         otherModules = [],
-                                                                                                         pkgconfigDepends = [],
-                                                                                                         profOptions = PerCompilerFlavor
-                                                                                                                         []
-                                                                                                                         [],
-                                                                                                         sharedOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         staticOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         targetBuildDepends = [Dependency
-                                                                                                                                 (PackageName
-                                                                                                                                    "Win32")
-                                                                                                                                 (IntersectVersionRanges
-                                                                                                                                    (OrLaterVersion
-                                                                                                                                       (mkVersion
-                                                                                                                                          [2,
-                                                                                                                                           2,
-                                                                                                                                           0,
-                                                                                                                                           2]))
-                                                                                                                                    (EarlierVersion
-                                                                                                                                       (mkVersion
-                                                                                                                                          [2,
-                                                                                                                                           7])))
-                                                                                                                                 mainLibSet],
-                                                                                                         virtualModules = []},
-                                                                                       libExposed = True,
-                                                                                       libName = LMainLibName,
-                                                                                       libVisibility = LibraryVisibilityPublic,
-                                                                                       reexportedModules = [],
-                                                                                       signatures = []}}},
-                                            CondBranch
-                                              {condBranchCondition = `Var (PackageFlag (FlagName "use-pkg-config"))`,
-                                               condBranchIfFalse = Just
-                                                                     CondNode
-                                                                       {condTreeComponents = [CondBranch
-                                                                                                {condBranchCondition = `Var (OS Windows)`,
-                                                                                                 condBranchIfFalse = Just
-                                                                                                                       CondNode
-                                                                                                                         {condTreeComponents = [CondBranch
-                                                                                                                                                  {condBranchCondition = `Var (OS OpenBSD)`,
-                                                                                                                                                   condBranchIfFalse = Nothing,
-                                                                                                                                                   condBranchIfTrue = CondNode
-                                                                                                                                                                        {condTreeComponents = [],
-                                                                                                                                                                         condTreeConstraints = [],
-                                                                                                                                                                         condTreeData = Library
-                                                                                                                                                                                          {exposedModules = [],
-                                                                                                                                                                                           libBuildInfo = BuildInfo
-                                                                                                                                                                                                            {asmOptions = [],
-                                                                                                                                                                                                             asmSources = [],
-                                                                                                                                                                                                             autogenIncludes = [],
-                                                                                                                                                                                                             autogenModules = [],
-                                                                                                                                                                                                             buildToolDepends = [],
-                                                                                                                                                                                                             buildTools = [],
-                                                                                                                                                                                                             buildable = True,
-                                                                                                                                                                                                             cSources = [],
-                                                                                                                                                                                                             ccOptions = [],
-                                                                                                                                                                                                             cmmOptions = [],
-                                                                                                                                                                                                             cmmSources = [],
-                                                                                                                                                                                                             cppOptions = [],
-                                                                                                                                                                                                             customFieldsBI = [],
-                                                                                                                                                                                                             cxxOptions = [],
-                                                                                                                                                                                                             cxxSources = [],
-                                                                                                                                                                                                             defaultExtensions = [],
-                                                                                                                                                                                                             defaultLanguage = Nothing,
-                                                                                                                                                                                                             extraBundledLibs = [],
-                                                                                                                                                                                                             extraDynLibFlavours = [],
-                                                                                                                                                                                                             extraFrameworkDirs = [],
-                                                                                                                                                                                                             extraGHCiLibs = [],
-                                                                                                                                                                                                             extraLibDirs = [],
-                                                                                                                                                                                                             extraLibFlavours = [],
-                                                                                                                                                                                                             extraLibs = ["crypto",
-                                                                                                                                                                                                                          "ssl"],
-                                                                                                                                                                                                             frameworks = [],
-                                                                                                                                                                                                             hsSourceDirs = [],
-                                                                                                                                                                                                             hsc2hsOptions = [],
-                                                                                                                                                                                                             includeDirs = [],
-                                                                                                                                                                                                             includes = [],
-                                                                                                                                                                                                             installIncludes = [],
-                                                                                                                                                                                                             jsSources = [],
-                                                                                                                                                                                                             ldOptions = [],
-                                                                                                                                                                                                             mixins = [],
-                                                                                                                                                                                                             oldExtensions = [],
-                                                                                                                                                                                                             options = PerCompilerFlavor
-                                                                                                                                                                                                                         []
-                                                                                                                                                                                                                         [],
-                                                                                                                                                                                                             otherExtensions = [],
-                                                                                                                                                                                                             otherLanguages = [],
-                                                                                                                                                                                                             otherModules = [],
-                                                                                                                                                                                                             pkgconfigDepends = [],
-                                                                                                                                                                                                             profOptions = PerCompilerFlavor
-                                                                                                                                                                                                                             []
-                                                                                                                                                                                                                             [],
-                                                                                                                                                                                                             sharedOptions = PerCompilerFlavor
-                                                                                                                                                                                                                               []
-                                                                                                                                                                                                                               [],
-                                                                                                                                                                                                             staticOptions = PerCompilerFlavor
-                                                                                                                                                                                                                               []
-                                                                                                                                                                                                                               [],
-                                                                                                                                                                                                             targetBuildDepends = [],
-                                                                                                                                                                                                             virtualModules = []},
-                                                                                                                                                                                           libExposed = True,
-                                                                                                                                                                                           libName = LMainLibName,
-                                                                                                                                                                                           libVisibility = LibraryVisibilityPublic,
-                                                                                                                                                                                           reexportedModules = [],
-                                                                                                                                                                                           signatures = []}}}],
-                                                                                                                          condTreeConstraints = [],
-                                                                                                                          condTreeData = Library
-                                                                                                                                           {exposedModules = [],
-                                                                                                                                            libBuildInfo = BuildInfo
-                                                                                                                                                             {asmOptions = [],
-                                                                                                                                                              asmSources = [],
-                                                                                                                                                              autogenIncludes = [],
-                                                                                                                                                              autogenModules = [],
-                                                                                                                                                              buildToolDepends = [],
-                                                                                                                                                              buildTools = [],
-                                                                                                                                                              buildable = True,
-                                                                                                                                                              cSources = [],
-                                                                                                                                                              ccOptions = [],
-                                                                                                                                                              cmmOptions = [],
-                                                                                                                                                              cmmSources = [],
-                                                                                                                                                              cppOptions = [],
-                                                                                                                                                              customFieldsBI = [],
-                                                                                                                                                              cxxOptions = [],
-                                                                                                                                                              cxxSources = [],
-                                                                                                                                                              defaultExtensions = [],
-                                                                                                                                                              defaultLanguage = Nothing,
-                                                                                                                                                              extraBundledLibs = [],
-                                                                                                                                                              extraDynLibFlavours = [],
-                                                                                                                                                              extraFrameworkDirs = [],
-                                                                                                                                                              extraGHCiLibs = [],
-                                                                                                                                                              extraLibDirs = [],
-                                                                                                                                                              extraLibFlavours = [],
-                                                                                                                                                              extraLibs = ["pq"],
-                                                                                                                                                              frameworks = [],
-                                                                                                                                                              hsSourceDirs = [],
-                                                                                                                                                              hsc2hsOptions = [],
-                                                                                                                                                              includeDirs = [],
-                                                                                                                                                              includes = [],
-                                                                                                                                                              installIncludes = [],
-                                                                                                                                                              jsSources = [],
-                                                                                                                                                              ldOptions = [],
-                                                                                                                                                              mixins = [],
-                                                                                                                                                              oldExtensions = [],
-                                                                                                                                                              options = PerCompilerFlavor
-                                                                                                                                                                          []
-                                                                                                                                                                          [],
-                                                                                                                                                              otherExtensions = [],
-                                                                                                                                                              otherLanguages = [],
-                                                                                                                                                              otherModules = [],
-                                                                                                                                                              pkgconfigDepends = [],
-                                                                                                                                                              profOptions = PerCompilerFlavor
-                                                                                                                                                                              []
-                                                                                                                                                                              [],
-                                                                                                                                                              sharedOptions = PerCompilerFlavor
-                                                                                                                                                                                []
-                                                                                                                                                                                [],
-                                                                                                                                                              staticOptions = PerCompilerFlavor
-                                                                                                                                                                                []
-                                                                                                                                                                                [],
-                                                                                                                                                              targetBuildDepends = [],
-                                                                                                                                                              virtualModules = []},
-                                                                                                                                            libExposed = True,
-                                                                                                                                            libName = LMainLibName,
-                                                                                                                                            libVisibility = LibraryVisibilityPublic,
-                                                                                                                                            reexportedModules = [],
-                                                                                                                                            signatures = []}},
-                                                                                                 condBranchIfTrue = CondNode
-                                                                                                                      {condTreeComponents = [],
-                                                                                                                       condTreeConstraints = [],
-                                                                                                                       condTreeData = Library
-                                                                                                                                        {exposedModules = [],
-                                                                                                                                         libBuildInfo = BuildInfo
-                                                                                                                                                          {asmOptions = [],
-                                                                                                                                                           asmSources = [],
-                                                                                                                                                           autogenIncludes = [],
-                                                                                                                                                           autogenModules = [],
-                                                                                                                                                           buildToolDepends = [],
-                                                                                                                                                           buildTools = [],
-                                                                                                                                                           buildable = True,
-                                                                                                                                                           cSources = [],
-                                                                                                                                                           ccOptions = [],
-                                                                                                                                                           cmmOptions = [],
-                                                                                                                                                           cmmSources = [],
-                                                                                                                                                           cppOptions = [],
-                                                                                                                                                           customFieldsBI = [],
-                                                                                                                                                           cxxOptions = [],
-                                                                                                                                                           cxxSources = [],
-                                                                                                                                                           defaultExtensions = [],
-                                                                                                                                                           defaultLanguage = Nothing,
-                                                                                                                                                           extraBundledLibs = [],
-                                                                                                                                                           extraDynLibFlavours = [],
-                                                                                                                                                           extraFrameworkDirs = [],
-                                                                                                                                                           extraGHCiLibs = [],
-                                                                                                                                                           extraLibDirs = [],
-                                                                                                                                                           extraLibFlavours = [],
-                                                                                                                                                           extraLibs = ["libpq"],
-                                                                                                                                                           frameworks = [],
-                                                                                                                                                           hsSourceDirs = [],
-                                                                                                                                                           hsc2hsOptions = [],
-                                                                                                                                                           includeDirs = [],
-                                                                                                                                                           includes = [],
-                                                                                                                                                           installIncludes = [],
-                                                                                                                                                           jsSources = [],
-                                                                                                                                                           ldOptions = [],
-                                                                                                                                                           mixins = [],
-                                                                                                                                                           oldExtensions = [],
-                                                                                                                                                           options = PerCompilerFlavor
-                                                                                                                                                                       []
-                                                                                                                                                                       [],
-                                                                                                                                                           otherExtensions = [],
-                                                                                                                                                           otherLanguages = [],
-                                                                                                                                                           otherModules = [],
-                                                                                                                                                           pkgconfigDepends = [],
-                                                                                                                                                           profOptions = PerCompilerFlavor
-                                                                                                                                                                           []
-                                                                                                                                                                           [],
-                                                                                                                                                           sharedOptions = PerCompilerFlavor
-                                                                                                                                                                             []
-                                                                                                                                                                             [],
-                                                                                                                                                           staticOptions = PerCompilerFlavor
-                                                                                                                                                                             []
-                                                                                                                                                                             [],
-                                                                                                                                                           targetBuildDepends = [],
-                                                                                                                                                           virtualModules = []},
-                                                                                                                                         libExposed = True,
-                                                                                                                                         libName = LMainLibName,
-                                                                                                                                         libVisibility = LibraryVisibilityPublic,
-                                                                                                                                         reexportedModules = [],
-                                                                                                                                         signatures = []}}}],
-                                                                        condTreeConstraints = [],
-                                                                        condTreeData = Library
-                                                                                         {exposedModules = [],
-                                                                                          libBuildInfo = BuildInfo
-                                                                                                           {asmOptions = [],
-                                                                                                            asmSources = [],
-                                                                                                            autogenIncludes = [],
-                                                                                                            autogenModules = [],
-                                                                                                            buildToolDepends = [],
-                                                                                                            buildTools = [],
-                                                                                                            buildable = True,
-                                                                                                            cSources = [],
-                                                                                                            ccOptions = [],
-                                                                                                            cmmOptions = [],
-                                                                                                            cmmSources = [],
-                                                                                                            cppOptions = [],
-                                                                                                            customFieldsBI = [],
-                                                                                                            cxxOptions = [],
-                                                                                                            cxxSources = [],
-                                                                                                            defaultExtensions = [],
-                                                                                                            defaultLanguage = Nothing,
-                                                                                                            extraBundledLibs = [],
-                                                                                                            extraDynLibFlavours = [],
-                                                                                                            extraFrameworkDirs = [],
-                                                                                                            extraGHCiLibs = [],
-                                                                                                            extraLibDirs = [],
-                                                                                                            extraLibFlavours = [],
-                                                                                                            extraLibs = [],
-                                                                                                            frameworks = [],
-                                                                                                            hsSourceDirs = [],
-                                                                                                            hsc2hsOptions = [],
-                                                                                                            includeDirs = [],
-                                                                                                            includes = [],
-                                                                                                            installIncludes = [],
-                                                                                                            jsSources = [],
-                                                                                                            ldOptions = [],
-                                                                                                            mixins = [],
-                                                                                                            oldExtensions = [],
-                                                                                                            options = PerCompilerFlavor
-                                                                                                                        []
-                                                                                                                        [],
-                                                                                                            otherExtensions = [],
-                                                                                                            otherLanguages = [],
-                                                                                                            otherModules = [],
-                                                                                                            pkgconfigDepends = [],
-                                                                                                            profOptions = PerCompilerFlavor
-                                                                                                                            []
-                                                                                                                            [],
-                                                                                                            sharedOptions = PerCompilerFlavor
-                                                                                                                              []
-                                                                                                                              [],
-                                                                                                            staticOptions = PerCompilerFlavor
-                                                                                                                              []
-                                                                                                                              [],
-                                                                                                            targetBuildDepends = [],
-                                                                                                            virtualModules = []},
-                                                                                          libExposed = True,
-                                                                                          libName = LMainLibName,
-                                                                                          libVisibility = LibraryVisibilityPublic,
-                                                                                          reexportedModules = [],
-                                                                                          signatures = []}},
-                                               condBranchIfTrue = CondNode
-                                                                    {condTreeComponents = [],
-                                                                     condTreeConstraints = [],
-                                                                     condTreeData = Library
-                                                                                      {exposedModules = [],
-                                                                                       libBuildInfo = BuildInfo
-                                                                                                        {asmOptions = [],
-                                                                                                         asmSources = [],
-                                                                                                         autogenIncludes = [],
-                                                                                                         autogenModules = [],
-                                                                                                         buildToolDepends = [],
-                                                                                                         buildTools = [],
-                                                                                                         buildable = True,
-                                                                                                         cSources = [],
-                                                                                                         ccOptions = [],
-                                                                                                         cmmOptions = [],
-                                                                                                         cmmSources = [],
-                                                                                                         cppOptions = [],
-                                                                                                         customFieldsBI = [],
-                                                                                                         cxxOptions = [],
-                                                                                                         cxxSources = [],
-                                                                                                         defaultExtensions = [],
-                                                                                                         defaultLanguage = Nothing,
-                                                                                                         extraBundledLibs = [],
-                                                                                                         extraDynLibFlavours = [],
-                                                                                                         extraFrameworkDirs = [],
-                                                                                                         extraGHCiLibs = [],
-                                                                                                         extraLibDirs = [],
-                                                                                                         extraLibFlavours = [],
-                                                                                                         extraLibs = [],
-                                                                                                         frameworks = [],
-                                                                                                         hsSourceDirs = [],
-                                                                                                         hsc2hsOptions = [],
-                                                                                                         includeDirs = [],
-                                                                                                         includes = [],
-                                                                                                         installIncludes = [],
-                                                                                                         jsSources = [],
-                                                                                                         ldOptions = [],
-                                                                                                         mixins = [],
-                                                                                                         oldExtensions = [],
-                                                                                                         options = PerCompilerFlavor
-                                                                                                                     []
-                                                                                                                     [],
-                                                                                                         otherExtensions = [],
-                                                                                                         otherLanguages = [],
-                                                                                                         otherModules = [],
-                                                                                                         pkgconfigDepends = [PkgconfigDependency
-                                                                                                                               (PkgconfigName
-                                                                                                                                  "libpq")
-                                                                                                                               (PcOrLaterVersion
-                                                                                                                                  (PkgconfigVersion
-                                                                                                                                     "9.3h"))],
-                                                                                                         profOptions = PerCompilerFlavor
-                                                                                                                         []
-                                                                                                                         [],
-                                                                                                         sharedOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         staticOptions = PerCompilerFlavor
-                                                                                                                           []
-                                                                                                                           [],
-                                                                                                         targetBuildDepends = [],
-                                                                                                         virtualModules = []},
-                                                                                       libExposed = True,
-                                                                                       libName = LMainLibName,
-                                                                                       libVisibility = LibraryVisibilityPublic,
-                                                                                       reexportedModules = [],
-                                                                                       signatures = []}}}],
-                      condTreeConstraints = [Dependency
-                                               (PackageName "base")
-                                               (IntersectVersionRanges
-                                                  (OrLaterVersion (mkVersion [4, 3]))
-                                                  (EarlierVersion (mkVersion [4, 13])))
-                                               mainLibSet,
-                                             Dependency
-                                               (PackageName "bytestring")
-                                               (IntersectVersionRanges
-                                                  (OrLaterVersion (mkVersion [0, 9, 1, 0]))
-                                                  (EarlierVersion (mkVersion [0, 11])))
-                                               mainLibSet],
-                      condTreeData = Library
-                                       {exposedModules = [ModuleName "Database.PostgreSQL.LibPQ",
-                                                          ModuleName
-                                                            "Database.PostgreSQL.LibPQ.Internal"],
-                                        libBuildInfo = BuildInfo
-                                                         {asmOptions = [],
-                                                          asmSources = [],
-                                                          autogenIncludes = [],
-                                                          autogenModules = [],
-                                                          buildToolDepends = [ExeDependency
-                                                                                (PackageName
-                                                                                   "hsc2hs")
-                                                                                (UnqualComponentName
-                                                                                   "hsc2hs")
-                                                                                (OrLaterVersion
-                                                                                   (mkVersion
-                                                                                      [0]))],
-                                                          buildTools = [],
-                                                          buildable = True,
-                                                          cSources = ["cbits/noticehandlers.c"],
-                                                          ccOptions = [],
-                                                          cmmOptions = [],
-                                                          cmmSources = [],
-                                                          cppOptions = [],
-                                                          customFieldsBI = [],
-                                                          cxxOptions = [],
-                                                          cxxSources = [],
-                                                          defaultExtensions = [],
-                                                          defaultLanguage = Nothing,
-                                                          extraBundledLibs = [],
-                                                          extraDynLibFlavours = [],
-                                                          extraFrameworkDirs = [],
-                                                          extraGHCiLibs = [],
-                                                          extraLibDirs = [],
-                                                          extraLibFlavours = [],
-                                                          extraLibs = [],
-                                                          frameworks = [],
-                                                          hsSourceDirs = [SymbolicPath "src"],
-                                                          hsc2hsOptions = [],
-                                                          includeDirs = ["cbits"],
-                                                          includes = [],
-                                                          installIncludes = [],
-                                                          jsSources = [],
-                                                          ldOptions = [],
-                                                          mixins = [],
-                                                          oldExtensions = [],
-                                                          options = PerCompilerFlavor ["-Wall"] [],
-                                                          otherExtensions = [],
-                                                          otherLanguages = [],
-                                                          otherModules = [],
-                                                          pkgconfigDepends = [],
-                                                          profOptions = PerCompilerFlavor [] [],
-                                                          sharedOptions = PerCompilerFlavor [] [],
-                                                          staticOptions = PerCompilerFlavor [] [],
-                                                          targetBuildDepends = [Dependency
-                                                                                  (PackageName
-                                                                                     "base")
-                                                                                  (IntersectVersionRanges
-                                                                                     (OrLaterVersion
-                                                                                        (mkVersion
-                                                                                           [4, 3]))
-                                                                                     (EarlierVersion
-                                                                                        (mkVersion
-                                                                                           [4,
-                                                                                            13])))
-                                                                                  mainLibSet,
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "bytestring")
-                                                                                  (IntersectVersionRanges
-                                                                                     (OrLaterVersion
-                                                                                        (mkVersion
-                                                                                           [0,
-                                                                                            9,
-                                                                                            1,
-                                                                                            0]))
-                                                                                     (EarlierVersion
-                                                                                        (mkVersion
-                                                                                           [0,
-                                                                                            11])))
-                                                                                  mainLibSet],
-                                                          virtualModules = []},
-                                        libExposed = True,
-                                        libName = LMainLibName,
-                                        libVisibility = LibraryVisibilityPublic,
-                                        reexportedModules = [],
-                                        signatures = []}},
-   condSubLibraries = [],
-   condTestSuites = [],
-   genPackageFlags = [MkPackageFlag
-                        {flagDefault = False,
-                         flagDescription = "",
-                         flagManual = True,
-                         flagName = FlagName "use-pkg-config"}],
-   gpdScannedVersion = Nothing,
-   packageDescription = PackageDescription
-                          {author = "Grant Monroe, Leon P Smith, Joey Adams",
-                           benchmarks = [],
-                           bugReports = "",
-                           buildTypeRaw = Just Custom,
-                           category = "Database",
-                           copyright = concat
-                                         ["(c) 2010 Grant Monroe\n", "(c) 2011 Leon P Smith"],
-                           customFieldsPD = [],
-                           dataDir = ".",
-                           dataFiles = [],
-                           description = concat
-                                           ["This is a binding to libpq: the C application\n",
-                                            "programmer's interface to PostgreSQL. libpq is a\n",
-                                            "set of library functions that allow client\n",
-                                            "programs to pass queries to the PostgreSQL\n",
-                                            "backend server and to receive the results of\n",
-                                            "these queries."],
-                           executables = [],
-                           extraDocFiles = [],
-                           extraSrcFiles = ["cbits/noticehandlers.h", "CHANGELOG.md"],
-                           extraTmpFiles = [],
-                           foreignLibs = [],
-                           homepage = "https://github.com/phadej/postgresql-libpq",
-                           library = Nothing,
-                           licenseFiles = [SymbolicPath "LICENSE"],
-                           licenseRaw = Left
-                                          (License (ELicense (ELicenseId BSD_3_Clause) Nothing)),
-                           maintainer = "Oleg Grenrus <oleg.grenrus@iki.fi>",
-                           package = PackageIdentifier
-                                       {pkgName = PackageName "postgresql-libpq",
-                                        pkgVersion = mkVersion [0, 9, 4, 2]},
-                           pkgUrl = "",
-                           setupBuildInfo = Just
-                                              SetupBuildInfo
-                                                {defaultSetupDepends = False,
-                                                 setupDepends = [Dependency
-                                                                   (PackageName "base")
-                                                                   (IntersectVersionRanges
-                                                                      (OrLaterVersion
-                                                                         (mkVersion [4, 3]))
-                                                                      (EarlierVersion
-                                                                         (mkVersion [5])))
-                                                                   mainLibSet,
-                                                                 Dependency
-                                                                   (PackageName "Cabal")
-                                                                   (IntersectVersionRanges
-                                                                      (OrLaterVersion
-                                                                         (mkVersion [1, 10]))
-                                                                      (EarlierVersion
-                                                                         (mkVersion [2, 5])))
-                                                                   mainLibSet]},
-                           sourceRepos = [],
-                           specVersion = CabalSpecV3_0,
-                           stability = "",
-                           subLibraries = [],
-                           synopsis = "low-level binding to libpq",
-                           testSuites = [],
-                           testedWith = [_×_ GHC (ThisVersion (mkVersion [7, 0, 4])),
-                                         _×_ GHC (ThisVersion (mkVersion [7, 2, 2])),
-                                         _×_ GHC (ThisVersion (mkVersion [7, 4, 2])),
-                                         _×_ GHC (ThisVersion (mkVersion [7, 6, 3])),
-                                         _×_ GHC (ThisVersion (mkVersion [7, 8, 4])),
-                                         _×_ GHC (ThisVersion (mkVersion [7, 10, 3])),
-                                         _×_ GHC (ThisVersion (mkVersion [8, 0, 2])),
-                                         _×_ GHC (ThisVersion (mkVersion [8, 2, 2])),
-                                         _×_ GHC (ThisVersion (mkVersion [8, 4, 3])),
-                                         _×_ GHC (ThisVersion (mkVersion [8, 6, 1]))]}}
+GenericPackageDescription {
+  packageDescription =
+  PackageDescription {
+    specVersion = CabalSpecV3_0,
+    package = PackageIdentifier {
+      pkgName = PackageName
+        "postgresql-libpq",
+      pkgVersion = mkVersion
+        [0, 9, 4, 2]},
+    licenseRaw = Left
+      (License
+        (ELicense
+          (ELicenseId BSD_3_Clause)
+          Nothing)),
+    licenseFiles = [
+      SymbolicPath "LICENSE"],
+    copyright = concat
+      [
+        "(c) 2010 Grant Monroe\n",
+        "(c) 2011 Leon P Smith"],
+    maintainer =
+    "Oleg Grenrus <oleg.grenrus@iki.fi>",
+    author =
+    "Grant Monroe, Leon P Smith, Joey Adams",
+    stability = "",
+    testedWith = [
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [7, 0, 4])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [7, 2, 2])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [7, 4, 2])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [7, 6, 3])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [7, 8, 4])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [7, 10, 3])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [8, 0, 2])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [8, 2, 2])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [8, 4, 3])),
+      _×_
+        GHC
+        (ThisVersion
+          (mkVersion [8, 6, 1]))],
+    homepage =
+    "https://github.com/phadej/postgresql-libpq",
+    pkgUrl = "",
+    bugReports = "",
+    sourceRepos = [],
+    synopsis =
+    "low-level binding to libpq",
+    description = concat
+      [
+        "This is a binding to libpq: the C application\n",
+        "programmer's interface to PostgreSQL. libpq is a\n",
+        "set of library functions that allow client\n",
+        "programs to pass queries to the PostgreSQL\n",
+        "backend server and to receive the results of\n",
+        "these queries."],
+    category = "Database",
+    customFieldsPD = [],
+    buildTypeRaw = Just Custom,
+    setupBuildInfo = Just
+      SetupBuildInfo {
+        setupDepends = [
+          Dependency
+            (PackageName "base")
+            (IntersectVersionRanges
+              (OrLaterVersion
+                (mkVersion [4, 3]))
+              (EarlierVersion
+                (mkVersion [5])))
+            mainLibSet,
+          Dependency
+            (PackageName "Cabal")
+            (IntersectVersionRanges
+              (OrLaterVersion
+                (mkVersion [1, 10]))
+              (EarlierVersion
+                (mkVersion [2, 5])))
+            mainLibSet],
+        defaultSetupDepends = False},
+    library = Nothing,
+    subLibraries = [],
+    executables = [],
+    foreignLibs = [],
+    testSuites = [],
+    benchmarks = [],
+    dataFiles = [],
+    dataDir = ".",
+    extraSrcFiles = [
+      "cbits/noticehandlers.h",
+      "CHANGELOG.md"],
+    extraTmpFiles = [],
+    extraDocFiles = []},
+  gpdScannedVersion = Nothing,
+  genPackageFlags = [
+    MkPackageFlag {
+      flagName = FlagName
+        "use-pkg-config",
+      flagDescription = "",
+      flagDefault = False,
+      flagManual = True}],
+  condLibrary = Just
+    CondNode {
+      condTreeData = Library {
+        libName = LMainLibName,
+        exposedModules = [
+          ModuleName
+            "Database.PostgreSQL.LibPQ",
+          ModuleName
+            "Database.PostgreSQL.LibPQ.Internal"],
+        reexportedModules = [],
+        signatures = [],
+        libExposed = True,
+        libVisibility =
+        LibraryVisibilityPublic,
+        libBuildInfo = BuildInfo {
+          buildable = True,
+          buildTools = [],
+          buildToolDepends = [
+            ExeDependency
+              (PackageName "hsc2hs")
+              (UnqualComponentName "hsc2hs")
+              (OrLaterVersion
+                (mkVersion [0]))],
+          cppOptions = [],
+          asmOptions = [],
+          cmmOptions = [],
+          ccOptions = [],
+          cxxOptions = [],
+          ldOptions = [],
+          hsc2hsOptions = [],
+          pkgconfigDepends = [],
+          frameworks = [],
+          extraFrameworkDirs = [],
+          asmSources = [],
+          cmmSources = [],
+          cSources = [
+            "cbits/noticehandlers.c"],
+          cxxSources = [],
+          jsSources = [],
+          hsSourceDirs = [
+            SymbolicPath "src"],
+          otherModules = [],
+          virtualModules = [],
+          autogenModules = [],
+          defaultLanguage = Nothing,
+          otherLanguages = [],
+          defaultExtensions = [],
+          otherExtensions = [],
+          oldExtensions = [],
+          extraLibs = [],
+          extraLibsStatic = [],
+          extraGHCiLibs = [],
+          extraBundledLibs = [],
+          extraLibFlavours = [],
+          extraDynLibFlavours = [],
+          extraLibDirs = [],
+          extraLibDirsStatic = [],
+          includeDirs = ["cbits"],
+          includes = [],
+          autogenIncludes = [],
+          installIncludes = [],
+          options = PerCompilerFlavor
+            ["-Wall"]
+            [],
+          profOptions = PerCompilerFlavor
+            []
+            [],
+          sharedOptions =
+          PerCompilerFlavor [] [],
+          staticOptions =
+          PerCompilerFlavor [] [],
+          customFieldsBI = [],
+          targetBuildDepends = [
+            Dependency
+              (PackageName "base")
+              (IntersectVersionRanges
+                (OrLaterVersion
+                  (mkVersion [4, 3]))
+                (EarlierVersion
+                  (mkVersion [4, 13])))
+              mainLibSet,
+            Dependency
+              (PackageName "bytestring")
+              (IntersectVersionRanges
+                (OrLaterVersion
+                  (mkVersion [0, 9, 1, 0]))
+                (EarlierVersion
+                  (mkVersion [0, 11])))
+              mainLibSet],
+          mixins = []}},
+      condTreeConstraints = [
+        Dependency
+          (PackageName "base")
+          (IntersectVersionRanges
+            (OrLaterVersion
+              (mkVersion [4, 3]))
+            (EarlierVersion
+              (mkVersion [4, 13])))
+          mainLibSet,
+        Dependency
+          (PackageName "bytestring")
+          (IntersectVersionRanges
+            (OrLaterVersion
+              (mkVersion [0, 9, 1, 0]))
+            (EarlierVersion
+              (mkVersion [0, 11])))
+          mainLibSet],
+      condTreeComponents = [
+        CondBranch {
+          condBranchCondition =
+          `CNot (Var (OS Windows))`,
+          condBranchIfTrue = CondNode {
+            condTreeData = Library {
+              libName = LMainLibName,
+              exposedModules = [],
+              reexportedModules = [],
+              signatures = [],
+              libExposed = True,
+              libVisibility =
+              LibraryVisibilityPublic,
+              libBuildInfo = BuildInfo {
+                buildable = True,
+                buildTools = [],
+                buildToolDepends = [],
+                cppOptions = [],
+                asmOptions = [],
+                cmmOptions = [],
+                ccOptions = [],
+                cxxOptions = [],
+                ldOptions = [],
+                hsc2hsOptions = [],
+                pkgconfigDepends = [],
+                frameworks = [],
+                extraFrameworkDirs = [],
+                asmSources = [],
+                cmmSources = [],
+                cSources = [],
+                cxxSources = [],
+                jsSources = [],
+                hsSourceDirs = [],
+                otherModules = [],
+                virtualModules = [],
+                autogenModules = [],
+                defaultLanguage = Nothing,
+                otherLanguages = [],
+                defaultExtensions = [],
+                otherExtensions = [],
+                oldExtensions = [],
+                extraLibs = [],
+                extraLibsStatic = [],
+                extraGHCiLibs = [],
+                extraBundledLibs = [],
+                extraLibFlavours = [],
+                extraDynLibFlavours = [],
+                extraLibDirs = [],
+                extraLibDirsStatic = [],
+                includeDirs = [],
+                includes = [],
+                autogenIncludes = [],
+                installIncludes = [],
+                options = PerCompilerFlavor
+                  []
+                  [],
+                profOptions = PerCompilerFlavor
+                  []
+                  [],
+                sharedOptions =
+                PerCompilerFlavor [] [],
+                staticOptions =
+                PerCompilerFlavor [] [],
+                customFieldsBI = [],
+                targetBuildDepends = [
+                  Dependency
+                    (PackageName "unix")
+                    (IntersectVersionRanges
+                      (OrLaterVersion
+                        (mkVersion [2, 4, 2, 0]))
+                      (EarlierVersion
+                        (mkVersion [2, 8])))
+                    mainLibSet],
+                mixins = []}},
+            condTreeConstraints = [
+              Dependency
+                (PackageName "unix")
+                (IntersectVersionRanges
+                  (OrLaterVersion
+                    (mkVersion [2, 4, 2, 0]))
+                  (EarlierVersion
+                    (mkVersion [2, 8])))
+                mainLibSet],
+            condTreeComponents = []},
+          condBranchIfFalse = Nothing},
+        CondBranch {
+          condBranchCondition =
+          `Var (OS Windows)`,
+          condBranchIfTrue = CondNode {
+            condTreeData = Library {
+              libName = LMainLibName,
+              exposedModules = [],
+              reexportedModules = [],
+              signatures = [],
+              libExposed = True,
+              libVisibility =
+              LibraryVisibilityPublic,
+              libBuildInfo = BuildInfo {
+                buildable = True,
+                buildTools = [],
+                buildToolDepends = [],
+                cppOptions = [],
+                asmOptions = [],
+                cmmOptions = [],
+                ccOptions = [],
+                cxxOptions = [],
+                ldOptions = [],
+                hsc2hsOptions = [],
+                pkgconfigDepends = [],
+                frameworks = [],
+                extraFrameworkDirs = [],
+                asmSources = [],
+                cmmSources = [],
+                cSources = [],
+                cxxSources = [],
+                jsSources = [],
+                hsSourceDirs = [],
+                otherModules = [],
+                virtualModules = [],
+                autogenModules = [],
+                defaultLanguage = Nothing,
+                otherLanguages = [],
+                defaultExtensions = [],
+                otherExtensions = [],
+                oldExtensions = [],
+                extraLibs = [],
+                extraLibsStatic = [],
+                extraGHCiLibs = [],
+                extraBundledLibs = [],
+                extraLibFlavours = [],
+                extraDynLibFlavours = [],
+                extraLibDirs = [],
+                extraLibDirsStatic = [],
+                includeDirs = [],
+                includes = [],
+                autogenIncludes = [],
+                installIncludes = [],
+                options = PerCompilerFlavor
+                  []
+                  [],
+                profOptions = PerCompilerFlavor
+                  []
+                  [],
+                sharedOptions =
+                PerCompilerFlavor [] [],
+                staticOptions =
+                PerCompilerFlavor [] [],
+                customFieldsBI = [],
+                targetBuildDepends = [
+                  Dependency
+                    (PackageName "Win32")
+                    (IntersectVersionRanges
+                      (OrLaterVersion
+                        (mkVersion [2, 2, 0, 2]))
+                      (EarlierVersion
+                        (mkVersion [2, 7])))
+                    mainLibSet],
+                mixins = []}},
+            condTreeConstraints = [
+              Dependency
+                (PackageName "Win32")
+                (IntersectVersionRanges
+                  (OrLaterVersion
+                    (mkVersion [2, 2, 0, 2]))
+                  (EarlierVersion
+                    (mkVersion [2, 7])))
+                mainLibSet],
+            condTreeComponents = []},
+          condBranchIfFalse = Nothing},
+        CondBranch {
+          condBranchCondition =
+          `Var (PackageFlag (FlagName "use-pkg-config"))`,
+          condBranchIfTrue = CondNode {
+            condTreeData = Library {
+              libName = LMainLibName,
+              exposedModules = [],
+              reexportedModules = [],
+              signatures = [],
+              libExposed = True,
+              libVisibility =
+              LibraryVisibilityPublic,
+              libBuildInfo = BuildInfo {
+                buildable = True,
+                buildTools = [],
+                buildToolDepends = [],
+                cppOptions = [],
+                asmOptions = [],
+                cmmOptions = [],
+                ccOptions = [],
+                cxxOptions = [],
+                ldOptions = [],
+                hsc2hsOptions = [],
+                pkgconfigDepends = [
+                  PkgconfigDependency
+                    (PkgconfigName "libpq")
+                    (PcOrLaterVersion
+                      (PkgconfigVersion "9.3h"))],
+                frameworks = [],
+                extraFrameworkDirs = [],
+                asmSources = [],
+                cmmSources = [],
+                cSources = [],
+                cxxSources = [],
+                jsSources = [],
+                hsSourceDirs = [],
+                otherModules = [],
+                virtualModules = [],
+                autogenModules = [],
+                defaultLanguage = Nothing,
+                otherLanguages = [],
+                defaultExtensions = [],
+                otherExtensions = [],
+                oldExtensions = [],
+                extraLibs = [],
+                extraLibsStatic = [],
+                extraGHCiLibs = [],
+                extraBundledLibs = [],
+                extraLibFlavours = [],
+                extraDynLibFlavours = [],
+                extraLibDirs = [],
+                extraLibDirsStatic = [],
+                includeDirs = [],
+                includes = [],
+                autogenIncludes = [],
+                installIncludes = [],
+                options = PerCompilerFlavor
+                  []
+                  [],
+                profOptions = PerCompilerFlavor
+                  []
+                  [],
+                sharedOptions =
+                PerCompilerFlavor [] [],
+                staticOptions =
+                PerCompilerFlavor [] [],
+                customFieldsBI = [],
+                targetBuildDepends = [],
+                mixins = []}},
+            condTreeConstraints = [],
+            condTreeComponents = []},
+          condBranchIfFalse = Just
+            CondNode {
+              condTreeData = Library {
+                libName = LMainLibName,
+                exposedModules = [],
+                reexportedModules = [],
+                signatures = [],
+                libExposed = True,
+                libVisibility =
+                LibraryVisibilityPublic,
+                libBuildInfo = BuildInfo {
+                  buildable = True,
+                  buildTools = [],
+                  buildToolDepends = [],
+                  cppOptions = [],
+                  asmOptions = [],
+                  cmmOptions = [],
+                  ccOptions = [],
+                  cxxOptions = [],
+                  ldOptions = [],
+                  hsc2hsOptions = [],
+                  pkgconfigDepends = [],
+                  frameworks = [],
+                  extraFrameworkDirs = [],
+                  asmSources = [],
+                  cmmSources = [],
+                  cSources = [],
+                  cxxSources = [],
+                  jsSources = [],
+                  hsSourceDirs = [],
+                  otherModules = [],
+                  virtualModules = [],
+                  autogenModules = [],
+                  defaultLanguage = Nothing,
+                  otherLanguages = [],
+                  defaultExtensions = [],
+                  otherExtensions = [],
+                  oldExtensions = [],
+                  extraLibs = [],
+                  extraLibsStatic = [],
+                  extraGHCiLibs = [],
+                  extraBundledLibs = [],
+                  extraLibFlavours = [],
+                  extraDynLibFlavours = [],
+                  extraLibDirs = [],
+                  extraLibDirsStatic = [],
+                  includeDirs = [],
+                  includes = [],
+                  autogenIncludes = [],
+                  installIncludes = [],
+                  options = PerCompilerFlavor
+                    []
+                    [],
+                  profOptions = PerCompilerFlavor
+                    []
+                    [],
+                  sharedOptions =
+                  PerCompilerFlavor [] [],
+                  staticOptions =
+                  PerCompilerFlavor [] [],
+                  customFieldsBI = [],
+                  targetBuildDepends = [],
+                  mixins = []}},
+              condTreeConstraints = [],
+              condTreeComponents = [
+                CondBranch {
+                  condBranchCondition =
+                  `Var (OS Windows)`,
+                  condBranchIfTrue = CondNode {
+                    condTreeData = Library {
+                      libName = LMainLibName,
+                      exposedModules = [],
+                      reexportedModules = [],
+                      signatures = [],
+                      libExposed = True,
+                      libVisibility =
+                      LibraryVisibilityPublic,
+                      libBuildInfo = BuildInfo {
+                        buildable = True,
+                        buildTools = [],
+                        buildToolDepends = [],
+                        cppOptions = [],
+                        asmOptions = [],
+                        cmmOptions = [],
+                        ccOptions = [],
+                        cxxOptions = [],
+                        ldOptions = [],
+                        hsc2hsOptions = [],
+                        pkgconfigDepends = [],
+                        frameworks = [],
+                        extraFrameworkDirs = [],
+                        asmSources = [],
+                        cmmSources = [],
+                        cSources = [],
+                        cxxSources = [],
+                        jsSources = [],
+                        hsSourceDirs = [],
+                        otherModules = [],
+                        virtualModules = [],
+                        autogenModules = [],
+                        defaultLanguage = Nothing,
+                        otherLanguages = [],
+                        defaultExtensions = [],
+                        otherExtensions = [],
+                        oldExtensions = [],
+                        extraLibs = ["libpq"],
+                        extraLibsStatic = [],
+                        extraGHCiLibs = [],
+                        extraBundledLibs = [],
+                        extraLibFlavours = [],
+                        extraDynLibFlavours = [],
+                        extraLibDirs = [],
+                        extraLibDirsStatic = [],
+                        includeDirs = [],
+                        includes = [],
+                        autogenIncludes = [],
+                        installIncludes = [],
+                        options = PerCompilerFlavor
+                          []
+                          [],
+                        profOptions = PerCompilerFlavor
+                          []
+                          [],
+                        sharedOptions =
+                        PerCompilerFlavor [] [],
+                        staticOptions =
+                        PerCompilerFlavor [] [],
+                        customFieldsBI = [],
+                        targetBuildDepends = [],
+                        mixins = []}},
+                    condTreeConstraints = [],
+                    condTreeComponents = []},
+                  condBranchIfFalse = Just
+                    CondNode {
+                      condTreeData = Library {
+                        libName = LMainLibName,
+                        exposedModules = [],
+                        reexportedModules = [],
+                        signatures = [],
+                        libExposed = True,
+                        libVisibility =
+                        LibraryVisibilityPublic,
+                        libBuildInfo = BuildInfo {
+                          buildable = True,
+                          buildTools = [],
+                          buildToolDepends = [],
+                          cppOptions = [],
+                          asmOptions = [],
+                          cmmOptions = [],
+                          ccOptions = [],
+                          cxxOptions = [],
+                          ldOptions = [],
+                          hsc2hsOptions = [],
+                          pkgconfigDepends = [],
+                          frameworks = [],
+                          extraFrameworkDirs = [],
+                          asmSources = [],
+                          cmmSources = [],
+                          cSources = [],
+                          cxxSources = [],
+                          jsSources = [],
+                          hsSourceDirs = [],
+                          otherModules = [],
+                          virtualModules = [],
+                          autogenModules = [],
+                          defaultLanguage = Nothing,
+                          otherLanguages = [],
+                          defaultExtensions = [],
+                          otherExtensions = [],
+                          oldExtensions = [],
+                          extraLibs = ["pq"],
+                          extraLibsStatic = [],
+                          extraGHCiLibs = [],
+                          extraBundledLibs = [],
+                          extraLibFlavours = [],
+                          extraDynLibFlavours = [],
+                          extraLibDirs = [],
+                          extraLibDirsStatic = [],
+                          includeDirs = [],
+                          includes = [],
+                          autogenIncludes = [],
+                          installIncludes = [],
+                          options = PerCompilerFlavor
+                            []
+                            [],
+                          profOptions = PerCompilerFlavor
+                            []
+                            [],
+                          sharedOptions =
+                          PerCompilerFlavor [] [],
+                          staticOptions =
+                          PerCompilerFlavor [] [],
+                          customFieldsBI = [],
+                          targetBuildDepends = [],
+                          mixins = []}},
+                      condTreeConstraints = [],
+                      condTreeComponents = [
+                        CondBranch {
+                          condBranchCondition =
+                          `Var (OS OpenBSD)`,
+                          condBranchIfTrue = CondNode {
+                            condTreeData = Library {
+                              libName = LMainLibName,
+                              exposedModules = [],
+                              reexportedModules = [],
+                              signatures = [],
+                              libExposed = True,
+                              libVisibility =
+                              LibraryVisibilityPublic,
+                              libBuildInfo = BuildInfo {
+                                buildable = True,
+                                buildTools = [],
+                                buildToolDepends = [],
+                                cppOptions = [],
+                                asmOptions = [],
+                                cmmOptions = [],
+                                ccOptions = [],
+                                cxxOptions = [],
+                                ldOptions = [],
+                                hsc2hsOptions = [],
+                                pkgconfigDepends = [],
+                                frameworks = [],
+                                extraFrameworkDirs = [],
+                                asmSources = [],
+                                cmmSources = [],
+                                cSources = [],
+                                cxxSources = [],
+                                jsSources = [],
+                                hsSourceDirs = [],
+                                otherModules = [],
+                                virtualModules = [],
+                                autogenModules = [],
+                                defaultLanguage = Nothing,
+                                otherLanguages = [],
+                                defaultExtensions = [],
+                                otherExtensions = [],
+                                oldExtensions = [],
+                                extraLibs = ["crypto", "ssl"],
+                                extraLibsStatic = [],
+                                extraGHCiLibs = [],
+                                extraBundledLibs = [],
+                                extraLibFlavours = [],
+                                extraDynLibFlavours = [],
+                                extraLibDirs = [],
+                                extraLibDirsStatic = [],
+                                includeDirs = [],
+                                includes = [],
+                                autogenIncludes = [],
+                                installIncludes = [],
+                                options = PerCompilerFlavor
+                                  []
+                                  [],
+                                profOptions = PerCompilerFlavor
+                                  []
+                                  [],
+                                sharedOptions =
+                                PerCompilerFlavor [] [],
+                                staticOptions =
+                                PerCompilerFlavor [] [],
+                                customFieldsBI = [],
+                                targetBuildDepends = [],
+                                mixins = []}},
+                            condTreeConstraints = [],
+                            condTreeComponents = []},
+                          condBranchIfFalse =
+                          Nothing}]}}]}}]},
+  condSubLibraries = [],
+  condForeignLibs = [],
+  condExecutables = [],
+  condTestSuites = [],
+  condBenchmarks = []}
diff --git a/Cabal-tests/tests/ParserTests/regressions/mixin-1.expr b/Cabal-tests/tests/ParserTests/regressions/mixin-1.expr
index a0c7511608f97936d9ac97dfdf6bdb68040c86aa..2878577225bd4331f9328f76e58a2a714fa35268 100644
--- a/Cabal-tests/tests/ParserTests/regressions/mixin-1.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/mixin-1.expr
@@ -40,8 +40,10 @@ GenericPackageDescription
                                                             extraFrameworkDirs = [],
                                                             extraGHCiLibs = [],
                                                             extraLibDirs = [],
+                                                            extraLibDirsStatic = [],
                                                             extraLibFlavours = [],
                                                             extraLibs = [],
+                                                            extraLibsStatic = [],
                                                             frameworks = [],
                                                             hsSourceDirs = [SymbolicPath
                                                                               "str-example"],
diff --git a/Cabal-tests/tests/ParserTests/regressions/mixin-2.expr b/Cabal-tests/tests/ParserTests/regressions/mixin-2.expr
index e000a7f239f1cee4792b4d5ec95a2d3920215f29..b2866d4a5e0c928f950fbacc8a68c4e8429e65d7 100644
--- a/Cabal-tests/tests/ParserTests/regressions/mixin-2.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/mixin-2.expr
@@ -40,8 +40,10 @@ GenericPackageDescription
                                                             extraFrameworkDirs = [],
                                                             extraGHCiLibs = [],
                                                             extraLibDirs = [],
+                                                            extraLibDirsStatic = [],
                                                             extraLibFlavours = [],
                                                             extraLibs = [],
+                                                            extraLibsStatic = [],
                                                             frameworks = [],
                                                             hsSourceDirs = [SymbolicPath
                                                                               "str-example"],
diff --git a/Cabal-tests/tests/ParserTests/regressions/mixin-3.expr b/Cabal-tests/tests/ParserTests/regressions/mixin-3.expr
index 2e6dac9296f97fd33602511830e99a48c412e0dd..1a02247a87ab66af11760718fa139b1dcd15fb76 100644
--- a/Cabal-tests/tests/ParserTests/regressions/mixin-3.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/mixin-3.expr
@@ -40,8 +40,10 @@ GenericPackageDescription
                                                             extraFrameworkDirs = [],
                                                             extraGHCiLibs = [],
                                                             extraLibDirs = [],
+                                                            extraLibDirsStatic = [],
                                                             extraLibFlavours = [],
                                                             extraLibs = [],
+                                                            extraLibsStatic = [],
                                                             frameworks = [],
                                                             hsSourceDirs = [SymbolicPath
                                                                               "str-example"],
diff --git a/Cabal-tests/tests/ParserTests/regressions/monad-param.expr b/Cabal-tests/tests/ParserTests/regressions/monad-param.expr
index 962fa335430ef87ba378e481faa1b920f385a6d6..0f94cf3be9d37d813fa22ee8cc3af6917906adc3 100644
--- a/Cabal-tests/tests/ParserTests/regressions/monad-param.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/monad-param.expr
@@ -1,143 +1,158 @@
-GenericPackageDescription
-  {condBenchmarks = [],
-   condExecutables = [],
-   condForeignLibs = [],
-   condLibrary = Just
-                   CondNode
-                     {condTreeComponents = [],
-                      condTreeConstraints = [Dependency
-                                               (PackageName "base")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               mainLibSet,
-                                             Dependency
-                                               (PackageName "mtl")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               mainLibSet,
-                                             Dependency
-                                               (PackageName "stm")
-                                               (OrLaterVersion (mkVersion [0]))
-                                               mainLibSet],
-                      condTreeData = Library
-                                       {exposedModules = [ModuleName "Control.Monad.Parameterized"],
-                                        libBuildInfo = BuildInfo
-                                                         {asmOptions = [],
-                                                          asmSources = [],
-                                                          autogenIncludes = [],
-                                                          autogenModules = [],
-                                                          buildToolDepends = [],
-                                                          buildTools = [],
-                                                          buildable = True,
-                                                          cSources = [],
-                                                          ccOptions = [],
-                                                          cmmOptions = [],
-                                                          cmmSources = [],
-                                                          cppOptions = [],
-                                                          customFieldsBI = [],
-                                                          cxxOptions = [],
-                                                          cxxSources = [],
-                                                          defaultExtensions = [],
-                                                          defaultLanguage = Nothing,
-                                                          extraBundledLibs = [],
-                                                          extraDynLibFlavours = [],
-                                                          extraFrameworkDirs = [],
-                                                          extraGHCiLibs = [],
-                                                          extraLibDirs = [],
-                                                          extraLibFlavours = [],
-                                                          extraLibs = [],
-                                                          frameworks = [],
-                                                          hsSourceDirs = [SymbolicPath "src"],
-                                                          hsc2hsOptions = [],
-                                                          includeDirs = [],
-                                                          includes = [],
-                                                          installIncludes = [],
-                                                          jsSources = [],
-                                                          ldOptions = [],
-                                                          mixins = [],
-                                                          oldExtensions = [EnableExtension
-                                                                             MultiParamTypeClasses,
-                                                                           EnableExtension
-                                                                             FunctionalDependencies,
-                                                                           EnableExtension
-                                                                             OverlappingInstances,
-                                                                           EnableExtension
-                                                                             UndecidableInstances,
-                                                                           EnableExtension
-                                                                             EmptyDataDecls,
-                                                                           DisableExtension
-                                                                             ImplicitPrelude],
-                                                          options = PerCompilerFlavor
-                                                                      ["-funbox-strict-fields",
-                                                                       "-threaded",
-                                                                       "-fasm"]
-                                                                      [],
-                                                          otherExtensions = [],
-                                                          otherLanguages = [],
-                                                          otherModules = [],
-                                                          pkgconfigDepends = [],
-                                                          profOptions = PerCompilerFlavor [] [],
-                                                          sharedOptions = PerCompilerFlavor [] [],
-                                                          staticOptions = PerCompilerFlavor [] [],
-                                                          targetBuildDepends = [Dependency
-                                                                                  (PackageName
-                                                                                     "base")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  mainLibSet,
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "mtl")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  mainLibSet,
-                                                                                Dependency
-                                                                                  (PackageName
-                                                                                     "stm")
-                                                                                  (OrLaterVersion
-                                                                                     (mkVersion
-                                                                                        [0]))
-                                                                                  mainLibSet],
-                                                          virtualModules = []},
-                                        libExposed = True,
-                                        libName = LMainLibName,
-                                        libVisibility = LibraryVisibilityPublic,
-                                        reexportedModules = [],
-                                        signatures = []}},
-   condSubLibraries = [],
-   condTestSuites = [],
-   genPackageFlags = [],
-   gpdScannedVersion = Nothing,
-   packageDescription = PackageDescription
-                          {author = "Edward Kmett <ekmett@gmail.com>",
-                           benchmarks = [],
-                           bugReports = "",
-                           buildTypeRaw = Nothing,
-                           category = "Control",
-                           copyright = "Copyright (C) 2006-2007, Edward Kmett",
-                           customFieldsPD = [],
-                           dataDir = ".",
-                           dataFiles = [],
-                           description = "Implements parameterized monads by overloading the monad sugar with more liberal types.",
-                           executables = [],
-                           extraDocFiles = [],
-                           extraSrcFiles = [],
-                           extraTmpFiles = [],
-                           foreignLibs = [],
-                           homepage = "http://comonad.com/haskell/monad-param/dist/doc/html/Control-Monad-Parameterized.html",
-                           library = Nothing,
-                           licenseFiles = [SymbolicPath "LICENSE"],
-                           licenseRaw = Right BSD3,
-                           maintainer = "Edward Kmett <ekmett@gmail.com>",
-                           package = PackageIdentifier
-                                       {pkgName = PackageName "monad-param",
-                                        pkgVersion = mkVersion [0, 0, 1]},
-                           pkgUrl = "http://comonad.com/haskell/monad-param",
-                           setupBuildInfo = Nothing,
-                           sourceRepos = [],
-                           specVersion = CabalSpecV1_0,
-                           stability = "alpha",
-                           subLibraries = [],
-                           synopsis = "Parameterized monads",
-                           testSuites = [],
-                           testedWith = []}}
+GenericPackageDescription {
+  packageDescription =
+  PackageDescription {
+    specVersion = CabalSpecV1_0,
+    package = PackageIdentifier {
+      pkgName = PackageName
+        "monad-param",
+      pkgVersion = mkVersion
+        [0, 0, 1]},
+    licenseRaw = Right BSD3,
+    licenseFiles = [
+      SymbolicPath "LICENSE"],
+    copyright =
+    "Copyright (C) 2006-2007, Edward Kmett",
+    maintainer =
+    "Edward Kmett <ekmett@gmail.com>",
+    author =
+    "Edward Kmett <ekmett@gmail.com>",
+    stability = "alpha",
+    testedWith = [],
+    homepage =
+    "http://comonad.com/haskell/monad-param/dist/doc/html/Control-Monad-Parameterized.html",
+    pkgUrl =
+    "http://comonad.com/haskell/monad-param",
+    bugReports = "",
+    sourceRepos = [],
+    synopsis =
+    "Parameterized monads",
+    description =
+    "Implements parameterized monads by overloading the monad sugar with more liberal types.",
+    category = "Control",
+    customFieldsPD = [],
+    buildTypeRaw = Nothing,
+    setupBuildInfo = Nothing,
+    library = Nothing,
+    subLibraries = [],
+    executables = [],
+    foreignLibs = [],
+    testSuites = [],
+    benchmarks = [],
+    dataFiles = [],
+    dataDir = ".",
+    extraSrcFiles = [],
+    extraTmpFiles = [],
+    extraDocFiles = []},
+  gpdScannedVersion = Nothing,
+  genPackageFlags = [],
+  condLibrary = Just
+    CondNode {
+      condTreeData = Library {
+        libName = LMainLibName,
+        exposedModules = [
+          ModuleName
+            "Control.Monad.Parameterized"],
+        reexportedModules = [],
+        signatures = [],
+        libExposed = True,
+        libVisibility =
+        LibraryVisibilityPublic,
+        libBuildInfo = BuildInfo {
+          buildable = True,
+          buildTools = [],
+          buildToolDepends = [],
+          cppOptions = [],
+          asmOptions = [],
+          cmmOptions = [],
+          ccOptions = [],
+          cxxOptions = [],
+          ldOptions = [],
+          hsc2hsOptions = [],
+          pkgconfigDepends = [],
+          frameworks = [],
+          extraFrameworkDirs = [],
+          asmSources = [],
+          cmmSources = [],
+          cSources = [],
+          cxxSources = [],
+          jsSources = [],
+          hsSourceDirs = [
+            SymbolicPath "src"],
+          otherModules = [],
+          virtualModules = [],
+          autogenModules = [],
+          defaultLanguage = Nothing,
+          otherLanguages = [],
+          defaultExtensions = [],
+          otherExtensions = [],
+          oldExtensions = [
+            EnableExtension
+              MultiParamTypeClasses,
+            EnableExtension
+              FunctionalDependencies,
+            EnableExtension
+              OverlappingInstances,
+            EnableExtension
+              UndecidableInstances,
+            EnableExtension EmptyDataDecls,
+            DisableExtension
+              ImplicitPrelude],
+          extraLibs = [],
+          extraLibsStatic = [],
+          extraGHCiLibs = [],
+          extraBundledLibs = [],
+          extraLibFlavours = [],
+          extraDynLibFlavours = [],
+          extraLibDirs = [],
+          extraLibDirsStatic = [],
+          includeDirs = [],
+          includes = [],
+          autogenIncludes = [],
+          installIncludes = [],
+          options = PerCompilerFlavor
+            [
+              "-funbox-strict-fields",
+              "-threaded",
+              "-fasm"]
+            [],
+          profOptions = PerCompilerFlavor
+            []
+            [],
+          sharedOptions =
+          PerCompilerFlavor [] [],
+          staticOptions =
+          PerCompilerFlavor [] [],
+          customFieldsBI = [],
+          targetBuildDepends = [
+            Dependency
+              (PackageName "base")
+              (OrLaterVersion (mkVersion [0]))
+              mainLibSet,
+            Dependency
+              (PackageName "mtl")
+              (OrLaterVersion (mkVersion [0]))
+              mainLibSet,
+            Dependency
+              (PackageName "stm")
+              (OrLaterVersion (mkVersion [0]))
+              mainLibSet],
+          mixins = []}},
+      condTreeConstraints = [
+        Dependency
+          (PackageName "base")
+          (OrLaterVersion (mkVersion [0]))
+          mainLibSet,
+        Dependency
+          (PackageName "mtl")
+          (OrLaterVersion (mkVersion [0]))
+          mainLibSet,
+        Dependency
+          (PackageName "stm")
+          (OrLaterVersion (mkVersion [0]))
+          mainLibSet],
+      condTreeComponents = []},
+  condSubLibraries = [],
+  condForeignLibs = [],
+  condExecutables = [],
+  condTestSuites = [],
+  condBenchmarks = []}
diff --git a/Cabal-tests/tests/ParserTests/regressions/multiple-libs-2.expr b/Cabal-tests/tests/ParserTests/regressions/multiple-libs-2.expr
index 42ac4c64375634752ebecd5ace9f9a04cc2e98bb..2af5d422e3bf7c6d783e3e865fbc2f3299d41384 100644
--- a/Cabal-tests/tests/ParserTests/regressions/multiple-libs-2.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/multiple-libs-2.expr
@@ -34,8 +34,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
@@ -100,8 +102,10 @@ GenericPackageDescription
                                                                 extraFrameworkDirs = [],
                                                                 extraGHCiLibs = [],
                                                                 extraLibDirs = [],
+                                                                extraLibDirsStatic = [],
                                                                 extraLibFlavours = [],
                                                                 extraLibs = [],
+                                                                extraLibsStatic = [],
                                                                 frameworks = [],
                                                                 hsSourceDirs = [],
                                                                 hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/noVersion.expr b/Cabal-tests/tests/ParserTests/regressions/noVersion.expr
index da99086255d2954799f3095307484f0516c46288..e96ca1efb35577f7c73c689383d53cacd0cf84cd 100644
--- a/Cabal-tests/tests/ParserTests/regressions/noVersion.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/noVersion.expr
@@ -34,8 +34,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/nothing-unicode.expr b/Cabal-tests/tests/ParserTests/regressions/nothing-unicode.expr
index fdffa0b9fb467eb153ece38f29281dd1e564feb4..650054bcf00d7fb198df3f36f0580430b9ae3f87 100644
--- a/Cabal-tests/tests/ParserTests/regressions/nothing-unicode.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/nothing-unicode.expr
@@ -35,8 +35,10 @@ GenericPackageDescription
                                                                                                          extraFrameworkDirs = [],
                                                                                                          extraGHCiLibs = [],
                                                                                                          extraLibDirs = [],
+                                                                                                         extraLibDirsStatic = [],
                                                                                                          extraLibFlavours = [],
                                                                                                          extraLibs = [],
+                                                                                                         extraLibsStatic = [],
                                                                                                          frameworks = [],
                                                                                                          hsSourceDirs = [],
                                                                                                          hsc2hsOptions = [],
@@ -96,8 +98,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/shake.expr b/Cabal-tests/tests/ParserTests/regressions/shake.expr
index dc219b0292ab5a217b4be99a2528dbd993789a99..36f522c82df907a59ce5216f9b6393b7e7184ee8 100644
--- a/Cabal-tests/tests/ParserTests/regressions/shake.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/shake.expr
@@ -33,8 +33,10 @@ GenericPackageDescription
                                                                                                            extraFrameworkDirs = [],
                                                                                                            extraGHCiLibs = [],
                                                                                                            extraLibDirs = [],
+                                                                                                           extraLibDirsStatic = [],
                                                                                                            extraLibFlavours = [],
                                                                                                            extraLibs = [],
+                                                                                                           extraLibsStatic = [],
                                                                                                            frameworks = [],
                                                                                                            hsSourceDirs = [],
                                                                                                            hsc2hsOptions = [],
@@ -110,8 +112,10 @@ GenericPackageDescription
                                                                                                                                                              extraFrameworkDirs = [],
                                                                                                                                                              extraGHCiLibs = [],
                                                                                                                                                              extraLibDirs = [],
+                                                                                                                                                             extraLibDirsStatic = [],
                                                                                                                                                              extraLibFlavours = [],
                                                                                                                                                              extraLibs = [],
+                                                                                                                                                             extraLibsStatic = [],
                                                                                                                                                              frameworks = [],
                                                                                                                                                              hsSourceDirs = [],
                                                                                                                                                              hsc2hsOptions = [],
@@ -177,8 +181,10 @@ GenericPackageDescription
                                                                                                               extraFrameworkDirs = [],
                                                                                                               extraGHCiLibs = [],
                                                                                                               extraLibDirs = [],
+                                                                                                              extraLibDirsStatic = [],
                                                                                                               extraLibFlavours = [],
                                                                                                               extraLibs = [],
+                                                                                                              extraLibsStatic = [],
                                                                                                               frameworks = [],
                                                                                                               hsSourceDirs = [],
                                                                                                               hsc2hsOptions = [],
@@ -248,8 +254,10 @@ GenericPackageDescription
                                                                                                                                                           extraFrameworkDirs = [],
                                                                                                                                                           extraGHCiLibs = [],
                                                                                                                                                           extraLibDirs = [],
+                                                                                                                                                          extraLibDirsStatic = [],
                                                                                                                                                           extraLibFlavours = [],
                                                                                                                                                           extraLibs = [],
+                                                                                                                                                          extraLibsStatic = [],
                                                                                                                                                           frameworks = [],
                                                                                                                                                           hsSourceDirs = [],
                                                                                                                                                           hsc2hsOptions = [],
@@ -313,8 +321,10 @@ GenericPackageDescription
                                                                                                            extraFrameworkDirs = [],
                                                                                                            extraGHCiLibs = [],
                                                                                                            extraLibDirs = [],
+                                                                                                           extraLibDirsStatic = [],
                                                                                                            extraLibFlavours = [],
                                                                                                            extraLibs = [],
+                                                                                                           extraLibsStatic = [],
                                                                                                            frameworks = [],
                                                                                                            hsSourceDirs = [],
                                                                                                            hsc2hsOptions = [],
@@ -383,8 +393,10 @@ GenericPackageDescription
                                                                                                            extraFrameworkDirs = [],
                                                                                                            extraGHCiLibs = [],
                                                                                                            extraLibDirs = [],
+                                                                                                           extraLibDirsStatic = [],
                                                                                                            extraLibFlavours = [],
                                                                                                            extraLibs = [],
+                                                                                                           extraLibsStatic = [],
                                                                                                            frameworks = [],
                                                                                                            hsSourceDirs = [],
                                                                                                            hsc2hsOptions = [],
@@ -517,8 +529,10 @@ GenericPackageDescription
                                                             extraFrameworkDirs = [],
                                                             extraGHCiLibs = [],
                                                             extraLibDirs = [],
+                                                            extraLibDirsStatic = [],
                                                             extraLibFlavours = [],
                                                             extraLibs = [],
+                                                            extraLibsStatic = [],
                                                             frameworks = [],
                                                             hsSourceDirs = [SymbolicPath "src"],
                                                             hsc2hsOptions = [],
@@ -829,8 +843,10 @@ GenericPackageDescription
                                                                                                                                                            extraFrameworkDirs = [],
                                                                                                                                                            extraGHCiLibs = [],
                                                                                                                                                            extraLibDirs = [],
+                                                                                                                                                           extraLibDirsStatic = [],
                                                                                                                                                            extraLibFlavours = [],
                                                                                                                                                            extraLibs = [],
+                                                                                                                                                           extraLibsStatic = [],
                                                                                                                                                            frameworks = [],
                                                                                                                                                            hsSourceDirs = [],
                                                                                                                                                            hsc2hsOptions = [],
@@ -898,8 +914,10 @@ GenericPackageDescription
                                                                                                             extraFrameworkDirs = [],
                                                                                                             extraGHCiLibs = [],
                                                                                                             extraLibDirs = [],
+                                                                                                            extraLibDirsStatic = [],
                                                                                                             extraLibFlavours = [],
                                                                                                             extraLibs = [],
+                                                                                                            extraLibsStatic = [],
                                                                                                             frameworks = [],
                                                                                                             hsSourceDirs = [],
                                                                                                             hsc2hsOptions = [],
@@ -971,8 +989,10 @@ GenericPackageDescription
                                                                                                                                                         extraFrameworkDirs = [],
                                                                                                                                                         extraGHCiLibs = [],
                                                                                                                                                         extraLibDirs = [],
+                                                                                                                                                        extraLibDirsStatic = [],
                                                                                                                                                         extraLibFlavours = [],
                                                                                                                                                         extraLibs = [],
+                                                                                                                                                        extraLibsStatic = [],
                                                                                                                                                         frameworks = [],
                                                                                                                                                         hsSourceDirs = [],
                                                                                                                                                         hsc2hsOptions = [],
@@ -1038,8 +1058,10 @@ GenericPackageDescription
                                                                                                          extraFrameworkDirs = [],
                                                                                                          extraGHCiLibs = [],
                                                                                                          extraLibDirs = [],
+                                                                                                         extraLibDirsStatic = [],
                                                                                                          extraLibFlavours = [],
                                                                                                          extraLibs = [],
+                                                                                                         extraLibsStatic = [],
                                                                                                          frameworks = [],
                                                                                                          hsSourceDirs = [],
                                                                                                          hsc2hsOptions = [],
@@ -1110,8 +1132,10 @@ GenericPackageDescription
                                                                                                          extraFrameworkDirs = [],
                                                                                                          extraGHCiLibs = [],
                                                                                                          extraLibDirs = [],
+                                                                                                         extraLibDirsStatic = [],
                                                                                                          extraLibFlavours = [],
                                                                                                          extraLibs = [],
+                                                                                                         extraLibsStatic = [],
                                                                                                          frameworks = [],
                                                                                                          hsSourceDirs = [],
                                                                                                          hsc2hsOptions = [],
@@ -1247,8 +1271,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [SymbolicPath ".",
                                                                           SymbolicPath "src"],
@@ -1505,8 +1531,10 @@ GenericPackageDescription
                                                                                                               extraFrameworkDirs = [],
                                                                                                               extraGHCiLibs = [],
                                                                                                               extraLibDirs = [],
+                                                                                                              extraLibDirsStatic = [],
                                                                                                               extraLibFlavours = [],
                                                                                                               extraLibs = [],
+                                                                                                              extraLibsStatic = [],
                                                                                                               frameworks = [],
                                                                                                               hsSourceDirs = [],
                                                                                                               hsc2hsOptions = [],
@@ -1572,8 +1600,10 @@ GenericPackageDescription
                                                                                                               extraFrameworkDirs = [],
                                                                                                               extraGHCiLibs = [],
                                                                                                               extraLibDirs = [],
+                                                                                                              extraLibDirsStatic = [],
                                                                                                               extraLibFlavours = [],
                                                                                                               extraLibs = [],
+                                                                                                              extraLibsStatic = [],
                                                                                                               frameworks = [],
                                                                                                               hsSourceDirs = [],
                                                                                                               hsc2hsOptions = [],
@@ -1651,8 +1681,10 @@ GenericPackageDescription
                                                                                                                                                                 extraFrameworkDirs = [],
                                                                                                                                                                 extraGHCiLibs = [],
                                                                                                                                                                 extraLibDirs = [],
+                                                                                                                                                                extraLibDirsStatic = [],
                                                                                                                                                                 extraLibFlavours = [],
                                                                                                                                                                 extraLibs = [],
+                                                                                                                                                                extraLibsStatic = [],
                                                                                                                                                                 frameworks = [],
                                                                                                                                                                 hsSourceDirs = [],
                                                                                                                                                                 hsc2hsOptions = [],
@@ -1721,8 +1753,10 @@ GenericPackageDescription
                                                                                                                  extraFrameworkDirs = [],
                                                                                                                  extraGHCiLibs = [],
                                                                                                                  extraLibDirs = [],
+                                                                                                                 extraLibDirsStatic = [],
                                                                                                                  extraLibFlavours = [],
                                                                                                                  extraLibs = [],
+                                                                                                                 extraLibsStatic = [],
                                                                                                                  frameworks = [],
                                                                                                                  hsSourceDirs = [],
                                                                                                                  hsc2hsOptions = [],
@@ -1795,8 +1829,10 @@ GenericPackageDescription
                                                                                                                                                              extraFrameworkDirs = [],
                                                                                                                                                              extraGHCiLibs = [],
                                                                                                                                                              extraLibDirs = [],
+                                                                                                                                                             extraLibDirsStatic = [],
                                                                                                                                                              extraLibFlavours = [],
                                                                                                                                                              extraLibs = [],
+                                                                                                                                                             extraLibsStatic = [],
                                                                                                                                                              frameworks = [],
                                                                                                                                                              hsSourceDirs = [],
                                                                                                                                                              hsc2hsOptions = [],
@@ -1863,8 +1899,10 @@ GenericPackageDescription
                                                                                                               extraFrameworkDirs = [],
                                                                                                               extraGHCiLibs = [],
                                                                                                               extraLibDirs = [],
+                                                                                                              extraLibDirsStatic = [],
                                                                                                               extraLibFlavours = [],
                                                                                                               extraLibs = [],
+                                                                                                              extraLibsStatic = [],
                                                                                                               frameworks = [],
                                                                                                               hsSourceDirs = [],
                                                                                                               hsc2hsOptions = [],
@@ -1936,8 +1974,10 @@ GenericPackageDescription
                                                                                                               extraFrameworkDirs = [],
                                                                                                               extraGHCiLibs = [],
                                                                                                               extraLibDirs = [],
+                                                                                                              extraLibDirsStatic = [],
                                                                                                               extraLibFlavours = [],
                                                                                                               extraLibs = [],
+                                                                                                              extraLibsStatic = [],
                                                                                                               frameworks = [],
                                                                                                               hsSourceDirs = [],
                                                                                                               hsc2hsOptions = [],
@@ -2073,8 +2113,10 @@ GenericPackageDescription
                                                                extraFrameworkDirs = [],
                                                                extraGHCiLibs = [],
                                                                extraLibDirs = [],
+                                                               extraLibDirsStatic = [],
                                                                extraLibFlavours = [],
                                                                extraLibs = [],
+                                                               extraLibsStatic = [],
                                                                frameworks = [],
                                                                hsSourceDirs = [SymbolicPath "src"],
                                                                hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/spdx-1.expr b/Cabal-tests/tests/ParserTests/regressions/spdx-1.expr
index 43f81a8004d2e25aed5ac3fc141cef9b9fe15237..29b85215c1a2fd54872ac149595fc8be74cd185d 100644
--- a/Cabal-tests/tests/ParserTests/regressions/spdx-1.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/spdx-1.expr
@@ -31,8 +31,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/spdx-2.expr b/Cabal-tests/tests/ParserTests/regressions/spdx-2.expr
index 196b6cef66f5ee74fe1d30f9cbdb0bfd573e4c98..427f0eb21ca4e64c04da80b9db5fbf5fff61dde8 100644
--- a/Cabal-tests/tests/ParserTests/regressions/spdx-2.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/spdx-2.expr
@@ -31,8 +31,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/spdx-3.expr b/Cabal-tests/tests/ParserTests/regressions/spdx-3.expr
index 0a21b1ee8c2a33970ee5481e27c25a7697cecc97..b7b57e34bf1910bf4e6f11e4d45270bf8f000da4 100644
--- a/Cabal-tests/tests/ParserTests/regressions/spdx-3.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/spdx-3.expr
@@ -31,8 +31,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/th-lift-instances.expr b/Cabal-tests/tests/ParserTests/regressions/th-lift-instances.expr
index 16d2c357afe438ce4ea8201978d9d560e0cfe47a..5d8fb72de8899fab6ad0c45a21a653e89c3fb342 100644
--- a/Cabal-tests/tests/ParserTests/regressions/th-lift-instances.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/th-lift-instances.expr
@@ -68,8 +68,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [SymbolicPath "src"],
                                                           hsc2hsOptions = [],
@@ -238,8 +240,10 @@ GenericPackageDescription
                                                                extraFrameworkDirs = [],
                                                                extraGHCiLibs = [],
                                                                extraLibDirs = [],
+                                                               extraLibDirsStatic = [],
                                                                extraLibFlavours = [],
                                                                extraLibs = [],
+                                                               extraLibsStatic = [],
                                                                frameworks = [],
                                                                hsSourceDirs = [SymbolicPath
                                                                                  "tests"],
@@ -387,8 +391,10 @@ GenericPackageDescription
                                                                                                               extraFrameworkDirs = [],
                                                                                                               extraGHCiLibs = [],
                                                                                                               extraLibDirs = [],
+                                                                                                              extraLibDirsStatic = [],
                                                                                                               extraLibFlavours = [],
                                                                                                               extraLibs = [],
+                                                                                                              extraLibsStatic = [],
                                                                                                               frameworks = [],
                                                                                                               hsSourceDirs = [],
                                                                                                               hsc2hsOptions = [],
@@ -464,8 +470,10 @@ GenericPackageDescription
                                                                extraFrameworkDirs = [],
                                                                extraGHCiLibs = [],
                                                                extraLibDirs = [],
+                                                               extraLibDirsStatic = [],
                                                                extraLibFlavours = [],
                                                                extraLibs = [],
+                                                               extraLibsStatic = [],
                                                                frameworks = [],
                                                                hsSourceDirs = [SymbolicPath
                                                                                  "tests"],
diff --git a/Cabal-tests/tests/ParserTests/regressions/version-sets.expr b/Cabal-tests/tests/ParserTests/regressions/version-sets.expr
index decaa04d168d178514b43cae4b3c4517745ee459..f3c993b7b7b4a56643c12483049a3c3a40717d85 100644
--- a/Cabal-tests/tests/ParserTests/regressions/version-sets.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/version-sets.expr
@@ -84,8 +84,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/ParserTests/regressions/wl-pprint-indef.expr b/Cabal-tests/tests/ParserTests/regressions/wl-pprint-indef.expr
index 6eca1adc1b8f45c72ce911a39e19208ee826b412..edbbeed7483e7b3b9e8ae54d7f03739bbb9b1ee2 100644
--- a/Cabal-tests/tests/ParserTests/regressions/wl-pprint-indef.expr
+++ b/Cabal-tests/tests/ParserTests/regressions/wl-pprint-indef.expr
@@ -40,8 +40,10 @@ GenericPackageDescription
                                                             extraFrameworkDirs = [],
                                                             extraGHCiLibs = [],
                                                             extraLibDirs = [],
+                                                            extraLibDirsStatic = [],
                                                             extraLibFlavours = [],
                                                             extraLibs = [],
+                                                            extraLibsStatic = [],
                                                             frameworks = [],
                                                             hsSourceDirs = [SymbolicPath
                                                                               "example-string"],
@@ -128,8 +130,10 @@ GenericPackageDescription
                                                           extraFrameworkDirs = [],
                                                           extraGHCiLibs = [],
                                                           extraLibDirs = [],
+                                                          extraLibDirsStatic = [],
                                                           extraLibFlavours = [],
                                                           extraLibs = [],
+                                                          extraLibsStatic = [],
                                                           frameworks = [],
                                                           hsSourceDirs = [],
                                                           hsc2hsOptions = [],
diff --git a/Cabal-tests/tests/UnitTests.hs b/Cabal-tests/tests/UnitTests.hs
index 3721838f0ddca3a36abed819fd9996468ba5dcb5..9ef73b80d9b35d3917799a36d376fb1779e15eaf 100644
--- a/Cabal-tests/tests/UnitTests.hs
+++ b/Cabal-tests/tests/UnitTests.hs
@@ -16,6 +16,7 @@ import Distribution.Compat.Time
 import qualified UnitTests.Distribution.Compat.CreatePipe
 import qualified UnitTests.Distribution.Compat.Time
 import qualified UnitTests.Distribution.Compat.Graph
+import qualified UnitTests.Distribution.Simple.Command
 import qualified UnitTests.Distribution.Simple.Glob
 import qualified UnitTests.Distribution.Simple.Program.GHC
 import qualified UnitTests.Distribution.Simple.Program.Internal
@@ -23,6 +24,7 @@ import qualified UnitTests.Distribution.Simple.Utils
 import qualified UnitTests.Distribution.System
 import qualified UnitTests.Distribution.Utils.CharSet
 import qualified UnitTests.Distribution.Utils.Generic
+import qualified UnitTests.Distribution.Utils.Json
 import qualified UnitTests.Distribution.Utils.NubList
 import qualified UnitTests.Distribution.Utils.ShortText
 import qualified UnitTests.Distribution.Utils.Structured
@@ -48,6 +50,8 @@ tests mtimeChangeCalibrated =
         (UnitTests.Distribution.Compat.Time.tests mtimeChange)
     , testGroup "Distribution.Compat.Graph"
         UnitTests.Distribution.Compat.Graph.tests
+    , testGroup "Distribution.Simple.Command"
+        UnitTests.Distribution.Simple.Command.tests
     , testGroup "Distribution.Simple.Glob"
         UnitTests.Distribution.Simple.Glob.tests
     , UnitTests.Distribution.Simple.Program.GHC.tests
@@ -57,6 +61,8 @@ tests mtimeChangeCalibrated =
         UnitTests.Distribution.Simple.Utils.tests ghcPath
     , testGroup "Distribution.Utils.Generic"
         UnitTests.Distribution.Utils.Generic.tests
+    , testGroup "Distribution.Utils.Json" $
+        UnitTests.Distribution.Utils.Json.tests
     , testGroup "Distribution.Utils.NubList"
         UnitTests.Distribution.Utils.NubList.tests
     , testGroup "Distribution.Utils.ShortText"
diff --git a/Cabal-tests/tests/UnitTests/Distribution/Simple/Command.hs b/Cabal-tests/tests/UnitTests/Distribution/Simple/Command.hs
new file mode 100644
index 0000000000000000000000000000000000000000..ed93409e938ef176327370088b6f21913caf6bce
--- /dev/null
+++ b/Cabal-tests/tests/UnitTests/Distribution/Simple/Command.hs
@@ -0,0 +1,44 @@
+module UnitTests.Distribution.Simple.Command
+    ( tests
+    ) where
+
+import Distribution.Simple.Command
+import qualified Distribution.Simple.Flag as Flag
+import Distribution.Simple.Setup (optionVerbosity)
+import qualified Distribution.Verbosity as Verbosity
+import Test.Tasty
+import Test.Tasty.HUnit
+
+argumentTests :: [TestTree]
+argumentTests =
+  [ testCase "parses verbosity successfully" $ do
+      let p = commandParseArgs cmdUI isGlobal ["-v2"]
+      assertEqual "expected verbose" (Right verbose) $ evalParse p
+  , testCase "handles argument parse error gracefully" $ do
+      let p = commandParseArgs cmdUI isGlobal ["-v=2"]
+      assertEqual "expected error" (Left "errors") $ evalParse p
+  ]
+  where
+    -- evaluate command parse result, to force possible exceptions in 'f'
+    evalParse p = case p of
+      CommandErrors _         -> Left "errors"
+      CommandHelp _           -> Left "help"
+      CommandList _           -> Left "list"
+      CommandReadyToGo (f, _) -> Right $ f Flag.NoFlag
+    verbose = Flag.Flag Verbosity.verbose
+    isGlobal = True
+    cmdUI = CommandUI
+      { commandName = "cmd"
+      , commandSynopsis = "the command"
+      , commandUsage = \name -> name ++ " cmd -v[N]"
+      , commandDescription = Nothing
+      , commandNotes = Nothing
+      , commandDefaultFlags = Flag.NoFlag
+      , commandOptions = const [ optField ]
+      }
+    optField = optionVerbosity id const
+        
+tests :: [TestTree]
+tests =
+  [ testGroup "option argument tests" argumentTests
+  ]
diff --git a/Cabal-tests/tests/UnitTests/Distribution/Utils/Json.hs b/Cabal-tests/tests/UnitTests/Distribution/Utils/Json.hs
new file mode 100644
index 0000000000000000000000000000000000000000..5609a72b555ad1c92bfd1e597ab40399b972abd0
--- /dev/null
+++ b/Cabal-tests/tests/UnitTests/Distribution/Utils/Json.hs
@@ -0,0 +1,42 @@
+{-# LANGUAGE GADTs #-}
+{-# LANGUAGE OverloadedStrings #-}
+module UnitTests.Distribution.Utils.Json
+    ( tests
+    ) where
+
+import Distribution.Utils.Json
+
+import Test.Tasty
+import Test.Tasty.HUnit
+
+tests :: [TestTree]
+tests =
+    [ testCase "escapes strings correctly" $
+      renderJson (JsonString "foo\"bar") @?= "\"foo\\\"bar\""
+    , testCase "renders empty list" $
+      renderJson (JsonArray []) @?= "[]"
+    , testCase "renders singleton list" $
+      renderJson (JsonArray [JsonString "foo\"bar"]) @?= "[\"foo\\\"bar\"]"
+    , testCase "renders list" $
+      renderJson (JsonArray [JsonString "foo\"bar", JsonString "baz"]) @?= "[\"foo\\\"bar\",\"baz\"]"
+    , testCase "renders empty object" $
+      renderJson (JsonObject []) @?= "{}"
+    , testCase "renders singleton object" $
+      renderJson (JsonObject [("key", JsonString "foo\"bar")]) @?= "{\"key\":\"foo\\\"bar\"}"
+    , testCase "renders object" $
+      renderJson (JsonObject
+                    [ ("key", JsonString "foo\"bar")
+                    , ("key2", JsonString "baz")])
+          @?= "{\"key\":\"foo\\\"bar\",\"key2\":\"baz\"}"
+    , testCase "renders number" $
+      renderJson (JsonNumber 0) @?= "0"
+    , testCase "renders negative number" $
+      renderJson (JsonNumber (-1)) @?= "-1"
+    , testCase "renders big number" $
+      renderJson (JsonNumber 5000000) @?= "5000000"
+    , testCase "renders bool" $ do
+      renderJson (JsonBool True) @?= "true"
+      renderJson (JsonBool False) @?= "false"
+    , testCase "renders null" $ do
+      renderJson JsonNull @?= "null"
+    ]
diff --git a/Cabal-tests/tests/UnitTests/Distribution/Utils/Structured.hs b/Cabal-tests/tests/UnitTests/Distribution/Utils/Structured.hs
index cf244262173fef7869d64b2b16bd3c68a8272d62..1d715af86e9995797879b317f090ffeac846c0eb 100644
--- a/Cabal-tests/tests/UnitTests/Distribution/Utils/Structured.hs
+++ b/Cabal-tests/tests/UnitTests/Distribution/Utils/Structured.hs
@@ -27,9 +27,9 @@ tests = testGroup "Distribution.Utils.Structured"
     -- The difference is in encoding of newtypes
 #if MIN_VERSION_base(4,7,0)
     , testCase "GenericPackageDescription" $
-      md5Check (Proxy :: Proxy GenericPackageDescription) 0x9b7d0415b1d2522d72ac9e9739c97574
+      md5Check (Proxy :: Proxy GenericPackageDescription) 0xa164cbe5092a1cd31da1f15358d1537a
     , testCase "LocalBuildInfo" $
-      md5Check (Proxy :: Proxy LocalBuildInfo) 0x0ca1dc5da4c4695a9da40e080bf4f536
+      md5Check (Proxy :: Proxy LocalBuildInfo) 0xac70971ea59d30aab7e4b6dafc9113d4
 #endif
     ]
 
diff --git a/Cabal-tree-diff/Cabal-tree-diff.cabal b/Cabal-tree-diff/Cabal-tree-diff.cabal
index 0f2804c638081a004dbd5a29c0ee9122cd00f905..75b932207caad9927fa4c0320cd04b91c8661c49 100644
--- a/Cabal-tree-diff/Cabal-tree-diff.cabal
+++ b/Cabal-tree-diff/Cabal-tree-diff.cabal
@@ -1,6 +1,6 @@
 cabal-version: 2.2
 name:          Cabal-tree-diff
-version:       3.6.0.0
+version:       3.7.0.0
 synopsis:      QuickCheck instances for types in Cabal
 category:      Testing
 description:   Provides tree-diff ToExpr instances for some types in Cabal
@@ -11,7 +11,7 @@ library
   ghc-options:      -Wall
   build-depends:
     , base
-    , Cabal      ^>=3.6.0.0
+    , Cabal      ^>=3.7.0.0
     , tree-diff  ^>=0.1 || ^>=0.2
 
   exposed-modules:  Data.TreeDiff.Instances.Cabal
diff --git a/Cabal/Cabal.cabal b/Cabal/Cabal.cabal
index 1b328a47702c3f004955bf30368320ef757cbd83..8158d4640edc2ce9ae8d988f4076a6685181a502 100644
--- a/Cabal/Cabal.cabal
+++ b/Cabal/Cabal.cabal
@@ -1,6 +1,6 @@
 cabal-version: >=1.10
 name:          Cabal
-version:       3.6.0.0
+version:       3.7.0.0
 copyright:     2003-2021, Cabal Development Team (see AUTHORS file)
 license:       BSD3
 license-file:  LICENSE
@@ -75,7 +75,7 @@ library
 
   if !impl(ghc >= 7.8)
     -- semigroups depends on tagged.
-    build-depends:  tagged >=0.8.6 && <0.9
+    build-depends:  tagged >=0.8.6 && <0.9, bytestring-builder >= 0.10.8 && <0.11
 
   exposed-modules:
     Distribution.Backpack
@@ -254,6 +254,7 @@ library
     Distribution.Types.GivenComponent
     Distribution.Types.PackageVersionConstraint
     Distribution.Utils.Generic
+    Distribution.Utils.Json
     Distribution.Utils.NubList
     Distribution.Utils.ShortText
     Distribution.Utils.Progress
@@ -337,7 +338,6 @@ library
     Distribution.Simple.GHC.EnvironmentParser
     Distribution.Simple.GHC.Internal
     Distribution.Simple.GHC.ImplInfo
-    Distribution.Simple.Utils.Json
     Distribution.ZinzaPrelude
     Paths_Cabal
 
diff --git a/Cabal/ChangeLog.md b/Cabal/ChangeLog.md
index e9de41ae9ccc227ed6889be562cd4912aaa2649e..2a574305b1cf77cbc43f45728f45f85861299076 100644
--- a/Cabal/ChangeLog.md
+++ b/Cabal/ChangeLog.md
@@ -1,3 +1,6 @@
+# 3.8.0.0 [Emily Pillmore](mailgo:emilypi@cohomolo.gy) _Month _Year
+  * See https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.8.0.0.md
+
 # 3.6.0.0 [Emily Pillmore](mailgo:emilypi@cohomolo.gy) August 2021
   * See https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.6.0.0.md
 
diff --git a/Cabal/src/Distribution/CabalSpecVersion.hs b/Cabal/src/Distribution/CabalSpecVersion.hs
index 5e4345bdc592130a222db3298979208cee0c6415..142ade373c45ccac078870b3b40c0829db0d0c1c 100644
--- a/Cabal/src/Distribution/CabalSpecVersion.hs
+++ b/Cabal/src/Distribution/CabalSpecVersion.hs
@@ -29,6 +29,7 @@ data CabalSpecVersion
     -- 3.2: no changes
     | CabalSpecV3_4
     | CabalSpecV3_6
+    | CabalSpecV3_8
   deriving (Eq, Ord, Show, Read, Enum, Bounded, Typeable, Data, Generic)
 
 instance Binary CabalSpecVersion
@@ -39,6 +40,7 @@ instance NFData CabalSpecVersion where rnf = genericRnf
 --
 -- @since 3.0.0.0
 showCabalSpecVersion :: CabalSpecVersion -> String
+showCabalSpecVersion CabalSpecV3_8  = "3.8"
 showCabalSpecVersion CabalSpecV3_6  = "3.6"
 showCabalSpecVersion CabalSpecV3_4  = "3.4"
 showCabalSpecVersion CabalSpecV3_0  = "3.0"
@@ -58,7 +60,7 @@ showCabalSpecVersion CabalSpecV1_2  = "1.2"
 showCabalSpecVersion CabalSpecV1_0  = "1.0"
 
 cabalSpecLatest :: CabalSpecVersion
-cabalSpecLatest = CabalSpecV3_6
+cabalSpecLatest = CabalSpecV3_8
 
 -- | Parse 'CabalSpecVersion' from version digits.
 --
@@ -66,6 +68,7 @@ cabalSpecLatest = CabalSpecV3_6
 --
 cabalSpecFromVersionDigits :: [Int] -> Maybe CabalSpecVersion
 cabalSpecFromVersionDigits v
+    | v == [3,8]  = Just CabalSpecV3_8
     | v == [3,6]  = Just CabalSpecV3_6
     | v == [3,4]  = Just CabalSpecV3_4
     | v == [3,0]  = Just CabalSpecV3_0
@@ -87,6 +90,7 @@ cabalSpecFromVersionDigits v
 
 -- | @since 3.4.0.0
 cabalSpecToVersionDigits :: CabalSpecVersion -> [Int]
+cabalSpecToVersionDigits CabalSpecV3_8   = [3,8]
 cabalSpecToVersionDigits CabalSpecV3_6   = [3,6]
 cabalSpecToVersionDigits CabalSpecV3_4   = [3,4]
 cabalSpecToVersionDigits CabalSpecV3_0   = [3,0]
@@ -131,7 +135,7 @@ specHasCommonStanzas v =
     else NoCommonStanzas
 
 specHasElif :: CabalSpecVersion -> HasElif
-specHasElif v = 
+specHasElif v =
     if v >= CabalSpecV2_2
     then HasElif
     else NoElif
diff --git a/Cabal/src/Distribution/GetOpt.hs b/Cabal/src/Distribution/GetOpt.hs
index f2868905abe19201cbdc6cd81bf143495fb7c234..18352df87b0636d92623a973f18ef1ca58a04f4f 100644
--- a/Cabal/src/Distribution/GetOpt.hs
+++ b/Cabal/src/Distribution/GetOpt.hs
@@ -17,8 +17,9 @@
 -- * Line wrapping in the 'usageInfo' output, plus a more compact
 --   rendering of short options, and slightly less padding.
 --
--- If you want to take on the challenge of merging this with the GetOpt
--- from the base package then go for it!
+-- * Parsing of option arguments is allowed to fail.
+--
+-- * 'ReturnInOrder' argument order is removed.
 --
 {-# LANGUAGE TupleSections #-}
 {-# LANGUAGE NamedFieldPuns #-}
@@ -36,8 +37,34 @@ module Distribution.GetOpt (
 
 import Prelude ()
 import Distribution.Compat.Prelude
-import System.Console.GetOpt
-         ( ArgOrder(..), OptDescr(..), ArgDescr(..) )
+
+-- | What to do with options following non-options
+data ArgOrder a
+  = RequireOrder                -- ^ no option processing after first non-option
+  | Permute                     -- ^ freely intersperse options and non-options
+
+data OptDescr a =              -- description of a single options:
+   Option [Char]                --    list of short option characters
+          [String]              --    list of long option strings (without "--")
+          (ArgDescr a)          --    argument descriptor
+          String                --    explanation of option for user
+
+instance Functor OptDescr where
+    fmap f (Option a b argDescr c) = Option a b (fmap f argDescr) c
+
+-- | Describes whether an option takes an argument or not, and if so
+-- how the argument is parsed to a value of type @a@.
+--
+-- Compared to System.Console.GetOpt, we allow for parse errors.
+data ArgDescr a
+   = NoArg                   a                       -- ^   no argument expected
+   | ReqArg (String       -> Either String a) String -- ^   option requires argument
+   | OptArg (Maybe String -> Either String a) String -- ^   optional argument
+
+instance Functor ArgDescr where
+    fmap f (NoArg a)    = NoArg (f a)
+    fmap f (ReqArg g s) = ReqArg (fmap f . g) s
+    fmap f (OptArg g s) = OptArg (fmap f . g) s
 
 data OptKind a                -- kind of cmd line arg (internal use only):
    = Opt       a                --    an option
@@ -46,8 +73,8 @@ data OptKind a                -- kind of cmd line arg (internal use only):
    | EndOfOpts                  --    end-of-options marker (i.e. "--")
    | OptErr    String           --    something went wrong...
 
-data OptHelp a = OptHelp {
-      optNames :: a,
+data OptHelp = OptHelp {
+      optNames :: String,
       optHelp :: String
     }
 
@@ -155,10 +182,8 @@ getOpt' ordering optDescr (arg:args) = procNextOpt opt ordering
          procNextOpt (UnreqOpt u) _                 = (os,xs,u:us,es)
          procNextOpt (NonOpt x)   RequireOrder      = ([],x:rest,[],[])
          procNextOpt (NonOpt x)   Permute           = (os,x:xs,us,es)
-         procNextOpt (NonOpt x)   (ReturnInOrder f) = (f x :os, xs,us,es)
          procNextOpt EndOfOpts    RequireOrder      = ([],rest,[],[])
          procNextOpt EndOfOpts    Permute           = ([],rest,[],[])
-         procNextOpt EndOfOpts    (ReturnInOrder f) = (map f rest,[],[],[])
          procNextOpt (OptErr e)   _                 = (os,xs,us,e:es)
 
          (opt,rest) = getNext arg args optDescr
@@ -181,15 +206,16 @@ longOpt ls rs optDescr = long ads arg rs
          options   = if null exact then getWith isPrefixOf else exact
          ads       = [ ad | Option _ _ ad _ <- options ]
          optStr    = "--" ++ opt
+         fromRes   = fromParseResult optStr
 
          long (_:_:_)      _        rest     = (errAmbig options optStr,rest)
          long [NoArg  a  ] []       rest     = (Opt a,rest)
          long [NoArg  _  ] ('=':_)  rest     = (errNoArg optStr,rest)
          long [ReqArg _ d] []       []       = (errReq d optStr,[])
-         long [ReqArg f _] []       (r:rest) = (Opt (f r),rest)
-         long [ReqArg f _] ('=':xs) rest     = (Opt (f xs),rest)
-         long [OptArg f _] []       rest     = (Opt (f Nothing),rest)
-         long [OptArg f _] ('=':xs) rest     = (Opt (f (Just xs)),rest)
+         long [ReqArg f _] []       (r:rest) = (fromRes (f r),rest)
+         long [ReqArg f _] ('=':xs) rest     = (fromRes (f xs),rest)
+         long [OptArg f _] []       rest     = (fromRes (f Nothing),rest)
+         long [OptArg f _] ('=':xs) rest     = (fromRes (f (Just xs)),rest)
          long _            _        rest     = (UnreqOpt ("--"++ls),rest)
 
 -- handle short option
@@ -198,15 +224,16 @@ shortOpt y ys rs optDescr = short ads ys rs
   where options = [ o  | o@(Option ss _ _ _) <- optDescr, s <- ss, y == s ]
         ads     = [ ad | Option _ _ ad _ <- options ]
         optStr  = '-':[y]
+        fromRes = fromParseResult optStr
 
         short (_:_:_)        _  rest     = (errAmbig options optStr,rest)
         short (NoArg  a  :_) [] rest     = (Opt a,rest)
         short (NoArg  a  :_) xs rest     = (Opt a,('-':xs):rest)
         short (ReqArg _ d:_) [] []       = (errReq d optStr,[])
-        short (ReqArg f _:_) [] (r:rest) = (Opt (f r),rest)
-        short (ReqArg f _:_) xs rest     = (Opt (f xs),rest)
-        short (OptArg f _:_) [] rest     = (Opt (f Nothing),rest)
-        short (OptArg f _:_) xs rest     = (Opt (f (Just xs)),rest)
+        short (ReqArg f _:_) [] (r:rest) = (fromRes (f r),rest)
+        short (ReqArg f _:_) xs rest     = (fromRes (f xs),rest)
+        short (OptArg f _:_) [] rest     = (fromRes (f Nothing),rest)
+        short (OptArg f _:_) xs rest     = (fromRes (f (Just xs)),rest)
         short []             [] rest     = (UnreqOpt optStr,rest)
         short []             xs rest     = (UnreqOpt (optStr++xs),rest)
         -- This is different vs upstream = (UnreqOpt optStr,('-':xs):rest)
@@ -215,9 +242,14 @@ shortOpt y ys rs optDescr = short ads ys rs
         -- But why was no equivalent change required for longOpt? So could
         -- this change go upstream?
 
+fromParseResult :: String -> Either String a -> OptKind a
+fromParseResult optStr res = case res of
+  Right x   -> Opt x
+  Left  err -> OptErr ("invalid argument to option `" ++ optStr ++ "': " ++ err ++ "\n")
+
 -- miscellaneous error formatting
 
-errAmbig :: [OptDescr a] -> String -> OptKind a
+errAmbig :: [OptDescr a] -> String -> OptKind b
 errAmbig ods optStr = OptErr (usageInfo header ods)
    where header = "option `" ++ optStr ++ "' is ambiguous; could be one of:"
 
diff --git a/Cabal/src/Distribution/PackageDescription/Check.hs b/Cabal/src/Distribution/PackageDescription/Check.hs
index 689b3905e31ae332ff0f3bed686d7d16169d110b..fc1c196f06b852335ede922179199a35639b6d14 100644
--- a/Cabal/src/Distribution/PackageDescription/Check.hs
+++ b/Cabal/src/Distribution/PackageDescription/Check.hs
@@ -154,6 +154,7 @@ checkPackage gpkg mpkg =
   ++ checkUnusedFlags gpkg
   ++ checkUnicodeXFields gpkg
   ++ checkPathsModuleExtensions pkg
+  ++ checkSetupVersions gpkg
   where
     pkg = fromMaybe (flattenPackageDescription gpkg) mpkg
 
@@ -440,10 +441,9 @@ checkFields pkg =
 
     check (not . FilePath.Windows.isValid . prettyShow . packageName $ pkg) $
       PackageDistInexcusable $
-           "Unfortunately, the package name '" ++ prettyShow (packageName pkg)
-        ++ "' is one of the reserved system file names on Windows. Many tools "
-        ++ "need to convert package names to file names so using this name "
-        ++ "would cause problems."
+           "The package name '" ++ prettyShow (packageName pkg) ++ "' is "
+        ++ "invalid on Windows. Many tools need to convert package names to "
+        ++ "file names so using this name would cause problems."
 
   , check ((isPrefixOf "z-") . prettyShow . packageName $ pkg) $
       PackageDistInexcusable $
@@ -539,13 +539,15 @@ checkFields pkg =
         ++ "for example 'tested-with: GHC==6.10.4, GHC==6.12.3' and not "
         ++ "'tested-with: GHC==6.10.4 && ==6.12.3'."
 
-  , check (not (null depInternalLibraryWithExtraVersion)) $
-      PackageBuildWarning $
-           "The package has an extraneous version range for a dependency on an "
-        ++ "internal library: "
-        ++ commaSep (map prettyShow depInternalLibraryWithExtraVersion)
-        ++ ". This version range includes the current package but isn't needed "
-        ++ "as the current package's library will always be used."
+  -- for more details on why the following was commented out,
+  -- check https://github.com/haskell/cabal/pull/7470#issuecomment-875878507
+  -- , check (not (null depInternalLibraryWithExtraVersion)) $
+  --     PackageBuildWarning $
+  --          "The package has an extraneous version range for a dependency on an "
+  --       ++ "internal library: "
+  --       ++ commaSep (map prettyShow depInternalLibraryWithExtraVersion)
+  --       ++ ". This version range includes the current package but isn't needed "
+  --       ++ "as the current package's library will always be used."
 
   , check (not (null depInternalLibraryWithImpossibleVersion)) $
       PackageBuildImpossible $
@@ -555,13 +557,13 @@ checkFields pkg =
         ++ ". This version range does not include the current package, and must "
         ++ "be removed as the current package's library will always be used."
 
-  , check (not (null depInternalExecutableWithExtraVersion)) $
-      PackageBuildWarning $
-           "The package has an extraneous version range for a dependency on an "
-        ++ "internal executable: "
-        ++ commaSep (map prettyShow depInternalExecutableWithExtraVersion)
-        ++ ". This version range includes the current package but isn't needed "
-        ++ "as the current package's executable will always be used."
+  -- , check (not (null depInternalExecutableWithExtraVersion)) $
+  --     PackageBuildWarning $
+  --          "The package has an extraneous version range for a dependency on an "
+  --       ++ "internal executable: "
+  --       ++ commaSep (map prettyShow depInternalExecutableWithExtraVersion)
+  --       ++ ". This version range includes the current package but isn't needed "
+  --       ++ "as the current package's executable will always be used."
 
   , check (not (null depInternalExecutableWithImpossibleVersion)) $
       PackageBuildImpossible $
@@ -617,12 +619,12 @@ checkFields pkg =
       , isInternal pkg dep
       ]
 
-    depInternalLibraryWithExtraVersion =
-      [ dep
-      | dep@(Dependency _ versionRange _) <- internalLibDeps
-      , not $ isAnyVersion versionRange
-      , packageVersion pkg `withinRange` versionRange
-      ]
+    -- depInternalLibraryWithExtraVersion =
+    --   [ dep
+    --   | dep@(Dependency _ versionRange _) <- internalLibDeps
+    --   , not $ isAnyVersion versionRange
+    --   , packageVersion pkg `withinRange` versionRange
+    --   ]
 
     depInternalLibraryWithImpossibleVersion =
       [ dep
@@ -630,12 +632,12 @@ checkFields pkg =
       , not $ packageVersion pkg `withinRange` versionRange
       ]
 
-    depInternalExecutableWithExtraVersion =
-      [ dep
-      | dep@(ExeDependency _ _ versionRange) <- internalExeDeps
-      , not $ isAnyVersion versionRange
-      , packageVersion pkg `withinRange` versionRange
-      ]
+    -- depInternalExecutableWithExtraVersion =
+    --   [ dep
+    --   | dep@(ExeDependency _ _ versionRange) <- internalExeDeps
+    --   , not $ isAnyVersion versionRange
+    --   , packageVersion pkg `withinRange` versionRange
+    --   ]
 
     depInternalExecutableWithImpossibleVersion =
       [ dep
@@ -766,10 +768,6 @@ checkSourceRepos pkg =
       PackageDistInexcusable
         "The 'subdir' field of a source-repository must be a relative path."
 
-  , check (maybe False isAbsoluteOnAnyPlatform (repoSubdir repo)) $
-      PackageDistInexcusable
-        "The 'subdir' field of a source-repository must be a relative path."
-
   , do
       subdir <- repoSubdir repo
       err    <- isGoodRelativeDirectoryPath subdir
@@ -913,9 +911,15 @@ checkGhcOptions fieldName getOptions pkg =
   , checkAlternatives fieldName "extra-libraries"
       [ (flag, lib) | flag@('-':'l':lib) <- all_ghc_options ]
 
+  , checkAlternatives fieldName "extra-libraries-static"
+      [ (flag, lib) | flag@('-':'l':lib) <- all_ghc_options ]
+
   , checkAlternatives fieldName "extra-lib-dirs"
       [ (flag, dir) | flag@('-':'L':dir) <- all_ghc_options ]
 
+  , checkAlternatives fieldName "extra-lib-dirs-static"
+      [ (flag, dir) | flag@('-':'L':dir) <- all_ghc_options ]
+
   , checkAlternatives fieldName "frameworks"
       [ (flag, fmwk) | (flag@"-framework", fmwk) <-
            zip all_ghc_options (safeTail all_ghc_options) ]
@@ -1033,7 +1037,7 @@ checkCPPOptions pkg = catMaybes
       [ (flag, dir) | flag@('-':'I':dir) <- all_cppOptions ]
     ]
     ++
-    [ PackageBuildWarning $ "'cpp-options': " ++ opt ++ " is not portable C-preprocessor flag"
+    [ PackageBuildWarning $ "'cpp-options: " ++ opt ++ "' is not a portable C-preprocessor flag."
     | opt <- all_cppOptions
     -- "-I" is handled above, we allow only -DNEWSTUFF and -UOLDSTUFF
     , not $ any (`isPrefixOf` opt) ["-D", "-U", "-I" ]
@@ -1055,9 +1059,15 @@ data PathKind
     = PathKindFile
     | PathKindDirectory
     | PathKindGlob
+  deriving (Eq)
 
 checkPaths :: PackageDescription -> [PackageCheck]
 checkPaths pkg =
+  checkPackageFileNamesWithGlob
+  [ (kind == PathKindGlob, path)
+  | (path, _, kind) <- relPaths ++ absPaths
+  ]
+  ++
   [ PackageBuildWarning $
          quote (field ++ ": " ++ path)
       ++ " is a relative path outside of the source tree. "
@@ -1066,12 +1076,13 @@ checkPaths pkg =
   , isOutsideTree path ]
   ++
   [ PackageDistInexcusable $
-      quote (field ++ ": " ++ path) ++ " is an absolute path."
+         quote (field ++ ": " ++ path) ++ " specifies an absolute path, but the "
+      ++ quote field ++ " field must use relative paths."
   | (path, field, _) <- relPaths
   , isAbsoluteOnAnyPlatform path ]
   ++
   [ PackageDistInexcusable $
-      quote (field ++ ": " ++ path) ++ " is not good relative path: " ++ err
+      quote (field ++ ": " ++ path) ++ " is not a good relative path: " ++ show err
   | (path, field, kind) <- relPaths
   -- these are not paths, but globs...
   , err <- maybeToList $ case kind of
@@ -1090,7 +1101,7 @@ checkPaths pkg =
   , isInsideDist path ]
   ++
   [ PackageDistInexcusable $
-         "The 'ghc-options' contains the path '" ++ path ++ "' which points "
+         "The 'ghc-options' contain the path '" ++ path ++ "' which points "
       ++ "inside the 'dist' directory. This is not reliable because the "
       ++ "location of this directory is configurable by the user (or package "
       ++ "manager). In addition the layout of the 'dist' directory is subject "
@@ -1152,7 +1163,8 @@ checkPaths pkg =
     absPaths = concat
       [ [ (path, "includes",       PathKindFile)      | path <- includes     bi ] ++
         [ (path, "include-dirs",   PathKindDirectory) | path <- includeDirs  bi ] ++
-        [ (path, "extra-lib-dirs", PathKindDirectory) | path <- extraLibDirs bi ]
+        [ (path, "extra-lib-dirs", PathKindDirectory) | path <- extraLibDirs bi ] ++
+        [ (path, "extra-lib-dirs-static", PathKindDirectory) | path <- extraLibDirsStatic bi ]
       | bi <- allBuildInfo pkg
       ]
 
@@ -1276,12 +1288,12 @@ checkCabalVersion pkg =
         ++ "so you need to specify 'cabal-version: >= 1.6'."
 
     -- check for new language extensions
-  , checkVersion CabalSpecV1_4 (not (null mentionedExtensionsThatNeedCabal12)) $
+  , checkVersion CabalSpecV1_2 (not (null mentionedExtensionsThatNeedCabal12)) $
       PackageDistInexcusable $
            "Unfortunately the language extensions "
         ++ commaSep (map (quote . prettyShow) mentionedExtensionsThatNeedCabal12)
         ++ " break the parser in earlier Cabal versions so you need to "
-        ++ "specify 'cabal-version: >= 1.4'. Alternatively if you require "
+        ++ "specify 'cabal-version: >= 1.2'. Alternatively if you require "
         ++ "compatibility with earlier Cabal versions then you may be able to "
         ++ "use an equivalent compiler-specific flag."
 
@@ -1405,7 +1417,7 @@ checkPackageVersions pkg =
     -- For example this bans "build-depends: base >= 3".
     -- It should probably be "build-depends: base >= 3 && < 4"
     -- which is the same as  "build-depends: base == 3.*"
-    check (not (boundedAbove baseDependency)) $
+    check (not (hasUpperBound baseDependency)) $
       PackageDistInexcusable $
            "The dependency 'build-depends: base' does not specify an upper "
         ++ "bound on the version number. Each major release of the 'base' "
@@ -1420,21 +1432,7 @@ checkPackageVersions pkg =
 
   ]
   where
-    -- TODO: What we really want to do is test if there exists any
-    -- configuration in which the base version is unbounded above.
-    -- However that's a bit tricky because there are many possible
-    -- configurations. As a cheap easy and safe approximation we will
-    -- pick a single "typical" configuration and check if that has an
-    -- open upper bound. To get a typical configuration we finalise
-    -- using no package index and the current platform.
-    finalised = finalizePD
-                              mempty defaultComponentRequestedSpec (const True)
-                              buildPlatform
-                              (unknownCompilerInfo
-                                (CompilerId buildCompilerFlavor nullVersion)
-                                NoAbiTag)
-                              [] pkg
-    baseDependency = case finalised of
+    baseDependency = case typicalPkg pkg of
       Right (pkg', _) | not (null baseDeps) ->
           foldr intersectVersionRanges anyVersion baseDeps
         where
@@ -1444,18 +1442,9 @@ checkPackageVersions pkg =
 
       -- Just in case finalizePD fails for any reason,
       -- or if the package doesn't depend on the base package at all,
-      -- then we will just skip the check, since boundedAbove noVersion = True
+      -- then we will just skip the check, since hasUpperBound noVersion = True
       _          -> noVersion
 
-    -- TODO: move to Distribution.Version
-    boundedAbove :: VersionRange -> Bool
-    boundedAbove vr = case asVersionIntervals vr of
-      []     -> True -- this is the inconsistent version range.
-      (x:xs) -> case last (x:|xs) of
-        VersionInterval _ UpperBound {} -> True
-        VersionInterval _ NoUpperBound  -> False
-
-
 checkConditionals :: GenericPackageDescription -> [PackageCheck]
 checkConditionals pkg =
   catMaybes [
@@ -1563,11 +1552,11 @@ checkPathsModuleExtensions pd
     | specVersion pd >= CabalSpecV2_2 = []
     | any checkBI (allBuildInfo pd) || any checkLib (allLibraries pd)
         = return $ PackageBuildImpossible $ unwords
-            [ "The package uses RebindableSyntax with OverloadedStrings or OverloadedLists"
-            , "in default-extensions, and also Paths_ autogen module."
-            , "That configuration is known to cause compile failures with Cabal < 2.2."
-            , "To use these default-extensions with Paths_ autogen module"
-            , "specify at least 'cabal-version: 2.2'."
+            [ "Packages using RebindableSyntax with OverloadedStrings or"
+            , "OverloadedLists in default-extensions, in conjunction with the"
+            , "autogenerated module Paths_*, are known to cause compile failures"
+            , "with Cabal < 2.2. To use these default-extensions with a Paths_*"
+            , "autogen module, specify at least 'cabal-version: 2.2'."
             ]
     | otherwise = []
   where
@@ -1614,7 +1603,7 @@ checkDevelopmentOnlyFlagsOptions fieldName ghcOptions =
       PackageDistInexcusable $
            "'" ++ fieldName ++ ": -Werror' makes the package easy to "
         ++ "break with future GHC versions because new GHC versions often "
-        ++ "add new warnings. "
+        ++ "add new warnings."
         ++ extraExplanation
 
   , check (has_J) $
@@ -1626,7 +1615,7 @@ checkDevelopmentOnlyFlagsOptions fieldName ghcOptions =
   , checkFlags ["-fdefer-type-errors"] $
       PackageDistInexcusable $
            "'" ++ fieldName ++ ": -fdefer-type-errors' is fine during development but "
-        ++ "is not appropriate for a distributed package. "
+        ++ "is not appropriate for a distributed package."
         ++ extraExplanation
 
     -- -dynamic is not a debug flag
@@ -1634,7 +1623,7 @@ checkDevelopmentOnlyFlagsOptions fieldName ghcOptions =
            ghcOptions) $
       PackageDistInexcusable $
            "'" ++ fieldName ++ ": -d*' debug flags are not appropriate "
-        ++ "for a distributed package. "
+        ++ "for a distributed package."
         ++ extraExplanation
 
   , checkFlags ["-fprof-auto", "-fprof-auto-top", "-fprof-auto-calls",
@@ -1647,7 +1636,7 @@ checkDevelopmentOnlyFlagsOptions fieldName ghcOptions =
         ++ "that use this one these flags clutter the profile output with "
         ++ "excessive detail. If you think other packages really want to see "
         ++ "cost centres from this package then use '-fprof-auto-exported' "
-        ++ "which puts cost centres only on exported functions. "
+        ++ "which puts cost centres only on exported functions."
         ++ extraExplanation
   ]
   where
@@ -1832,8 +1821,8 @@ checkCabalFileName ops pkg = do
     Right pdfile
       | takeFileName pdfile == expectedCabalname -> return Nothing
       | otherwise -> return $ Just $ PackageDistInexcusable $
-                 "The filename " ++ pdfile ++ " does not match package name " ++
-                 "(expected: " ++ expectedCabalname ++ ")"
+                 "The filename " ++ quote pdfile ++ " does not match package name " ++
+                 "(expected: " ++ quote expectedCabalname ++ ")"
   where
     pkgname = unPackageName . packageName $ pkg
     expectedCabalname = pkgname <.> "cabal"
@@ -1916,6 +1905,7 @@ checkLocalPathsExist ops pkg = do
              | bi <- allBuildInfo pkg
              , (dir, kind) <-
                   [ (dir, "extra-lib-dirs") | dir <- extraLibDirs bi ]
+               ++ [ (dir, "extra-lib-dirs-static") | dir <- extraLibDirsStatic bi ]
                ++ [ (dir, "extra-framework-dirs")
                   | dir <- extraFrameworkDirs  bi ]
                ++ [ (dir, "include-dirs")   | dir <- includeDirs  bi ]
@@ -1924,7 +1914,7 @@ checkLocalPathsExist ops pkg = do
   missing <- filterM (liftM not . doesDirectoryExist ops . fst) dirs
   return [ PackageBuildWarning {
              explanation = quote (kind ++ ": " ++ dir)
-                        ++ " directory does not exist."
+                        ++ " specifies a directory which does not exist."
            }
          | (dir, kind) <- missing ]
 
@@ -1966,25 +1956,39 @@ repoTypeDirname Pijul     = [".pijul"]
 -- should be done for example when creating or validating a package tarball.
 --
 checkPackageFileNames :: [FilePath] -> [PackageCheck]
-checkPackageFileNames files =
-     (take 1 . mapMaybe checkWindowsPath $ files)
-  ++ (take 1 . mapMaybe checkTarPath     $ files)
-      -- If we get any of these checks triggering then we're likely to get
-      -- many, and that's probably not helpful, so return at most one.
-
-checkWindowsPath :: FilePath -> Maybe PackageCheck
-checkWindowsPath path =
-  check (not $ FilePath.Windows.isValid path') $
-    PackageDistInexcusable $
-         "Unfortunately, the file " ++ quote path ++ " is not a valid file "
-      ++ "name on Windows which would cause portability problems for this "
-      ++ "package. Windows file names cannot contain any of the characters "
-      ++ "\":*?<>|\" and there are a few reserved names including \"aux\", "
-      ++ "\"nul\", \"con\", \"prn\", \"com1-9\", \"lpt1-9\" and \"clock$\"."
+checkPackageFileNames = checkPackageFileNamesWithGlob . zip (repeat True)
+
+checkPackageFileNamesWithGlob :: [(Bool, FilePath)] -> [PackageCheck]
+checkPackageFileNamesWithGlob files =
+  catMaybes $
+    checkWindowsPaths files
+    :
+    [ checkTarPath file
+    | (_, file) <- files
+    ]
+
+checkWindowsPaths :: [(Bool, FilePath)] -> Maybe PackageCheck
+checkWindowsPaths paths =
+    case filter (not . FilePath.Windows.isValid . escape) paths of
+      [] -> Nothing
+      ps -> Just $
+        PackageDistInexcusable $
+             "The " ++ quotes (map snd ps) ++ " invalid on Windows, which "
+          ++ "would cause portability problems for this package. Windows file "
+          ++ "names cannot contain any of the characters \":*?<>|\" and there "
+          ++ "a few reserved names including \"aux\", \"nul\", \"con\", "
+          ++ "\"prn\", \"com1-9\", \"lpt1-9\" and \"clock$\"."
   where
-    path' = ".\\" ++ path
     -- force a relative name to catch invalid file names like "f:oo" which
     -- otherwise parse as file "oo" in the current directory on the 'f' drive.
+    escape (isGlob, path) = (".\\" ++)
+        -- glob paths will be expanded before being dereferenced, so asterisks
+        -- shouldn't count against them.
+      $ map (\c -> if c == '*' && isGlob then 'x' else c) path
+    quotes [failed] =
+        "path " ++ quote failed ++ " is"
+    quotes failed =
+        "paths " ++ intercalate ", " (map quote failed) ++ " are"
 
 -- | Check a file name is valid for the portable POSIX tar format.
 --
@@ -2125,6 +2129,35 @@ checkGlobFiles verbosity pkg root =
           ++ " directory by that name."
       ]
 
+-- | Check that setup dependencies, have proper bounds.
+-- In particular, @base@ and @Cabal@ upper bounds are mandatory.
+checkSetupVersions :: GenericPackageDescription -> [PackageCheck]
+checkSetupVersions pkg =
+    [ emitError nameStr
+    | (name, vr) <- Map.toList deps
+    , not (hasUpperBound vr)
+    , let nameStr = unPackageName name
+    , nameStr `elem` criticalPkgs
+    ]
+  where
+    criticalPkgs = ["Cabal", "base"]
+    deps = case typicalPkg pkg of
+      Right (pkgs', _) ->
+        Map.fromListWith intersectVersionRanges
+          [ (pname, vr)
+          | sbi <- maybeToList $ setupBuildInfo pkgs'
+          , Dependency pname vr _ <- setupDepends sbi
+          ]
+      _ -> Map.empty
+    emitError nm =
+      PackageDistInexcusable $
+           "The dependency 'setup-depends: '"++nm++"' does not specify an "
+        ++ "upper bound on the version number. Each major release of the "
+        ++ "'"++nm++"' package changes the API in various ways and most "
+        ++ "packages will need some changes to compile with it. If you are "
+        ++ "not sure what upper bound to use then use the next major "
+        ++ "version."
+
 -- ------------------------------------------------------------
 -- * Utils
 -- ------------------------------------------------------------
@@ -2173,68 +2206,56 @@ fileExtensionSupportedLanguage path =
 --
 -- Lastly, not good file nor directory cases:
 --
--- >>> traverse_ test ["", "/tmp/src", "foo//bar", "foo/.", "foo/./bar", "foo/../bar", "foo*bar"]
+-- >>> traverse_ test ["", "/tmp/src", "foo//bar", "foo/.", "foo/./bar", "foo/../bar"]
 -- Just "empty path"; Just "empty path"
 -- Just "posix absolute path"; Just "posix absolute path"
 -- Just "empty path segment"; Just "empty path segment"
 -- Just "trailing same directory segment: ."; Just "trailing same directory segment: ."
 -- Just "same directory segment: ."; Just "same directory segment: ."
 -- Just "parent directory segment: .."; Just "parent directory segment: .."
--- Just "reserved character '*'"; Just "reserved character '*'"
 --
 -- For the last case, 'isGoodRelativeGlob' doesn't warn:
 --
--- >>> traverse_ (print . isGoodRelativeGlob) ["foo/../bar", "foo*bar"]
+-- >>> traverse_ (print . isGoodRelativeGlob) ["foo/../bar"]
 -- Just "parent directory segment: .."
--- Nothing
 --
 isGoodRelativeFilePath :: FilePath -> Maybe String
 isGoodRelativeFilePath = state0
   where
-    -- Reserved characters
-    -- https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file
-    isReserved c = c `elem` "<>:\"\\/|?*"
-
     -- initial state
     state0 []                    = Just "empty path"
     state0 (c:cs) | c == '.'     = state1 cs
                   | c == '/'     = Just "posix absolute path"
-                  | isReserved c = Just ("reserved character " ++ show c)
                   | otherwise    = state5 cs
 
     -- after initial .
     state1 []                    = Just "trailing dot segment"
     state1 (c:cs) | c == '.'     = state4 cs
                   | c == '/'     = state2 cs
-                  | isReserved c = Just ("reserved character " ++ show c)
                   | otherwise    = state5 cs
 
     -- after ./ or after / between segments
     state2 []                    = Just "trailing slash"
     state2 (c:cs) | c == '.'     = state3 cs
                   | c == '/'     = Just "empty path segment"
-                  | isReserved c = Just ("reserved character " ++ show c)
                   | otherwise    = state5 cs
 
     -- after non-first segment's .
     state3 []                    = Just "trailing same directory segment: ."
     state3 (c:cs) | c == '.'     = state4 cs
                   | c == '/'     = Just "same directory segment: ."
-                  | isReserved c = Just ("reserved character " ++ show c)
                   | otherwise    = state5 cs
 
     -- after ..
     state4 []                    = Just "trailing parent directory segment: .."
     state4 (c:cs) | c == '.'     = state5 cs
                   | c == '/'     = Just "parent directory segment: .."
-                  | isReserved c = Just ("reserved character " ++ show c)
                   | otherwise    = state5 cs
 
     -- in a segment which is ok.
     state5 []                    = Nothing
     state5 (c:cs) | c == '.'     = state5 cs
                   | c == '/'     = state2 cs
-                  | isReserved c = Just ("reserved character " ++ show c)
                   | otherwise    = state5 cs
 
 -- | See 'isGoodRelativeFilePath'.
@@ -2250,50 +2271,40 @@ isGoodRelativeGlob = isGoodRelativeFilePath . map f where
 isGoodRelativeDirectoryPath :: FilePath -> Maybe String
 isGoodRelativeDirectoryPath = state0
   where
-    -- Reserved characters
-    -- https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file
-    isReserved c = c `elem` "<>:\"\\/|?*"
-
     -- initial state
     state0 []                    = Just "empty path"
     state0 (c:cs) | c == '.'     = state5 cs
                   | c == '/'     = Just "posix absolute path"
-                  | isReserved c = Just ("reserved character " ++ show c)
                   | otherwise    = state4 cs
 
     -- after initial ./ or after / between segments
     state1 []                    = Nothing
     state1 (c:cs) | c == '.'     = state2 cs
                   | c == '/'     = Just "empty path segment"
-                  | isReserved c = Just ("reserved character " ++ show c)
                   | otherwise    = state4 cs
 
     -- after non-first setgment's .
     state2 []                    = Just "trailing same directory segment: ."
     state2 (c:cs) | c == '.'     = state3 cs
                   | c == '/'     = Just "same directory segment: ."
-                  | isReserved c = Just ("reserved character " ++ show c)
                   | otherwise    = state4 cs
 
     -- after ..
     state3 []                    = Just "trailing parent directory segment: .."
     state3 (c:cs) | c == '.'     = state4 cs
                   | c == '/'     = Just "parent directory segment: .."
-                  | isReserved c = Just ("reserved character " ++ show c)
                   | otherwise    = state4 cs
 
     -- in a segment which is ok.
     state4 []                    = Nothing
     state4 (c:cs) | c == '.'     = state4 cs
                   | c == '/'     = state1 cs
-                  | isReserved c = Just ("reserved character " ++ show c)
                   | otherwise    = state4 cs
 
     -- after initial .
     state5 []                    = Nothing -- "."
     state5 (c:cs) | c == '.'     = state3 cs
                   | c == '/'     = state1 cs
-                  | isReserved c = Just ("reserved character " ++ show c)
                   | otherwise    = state4 cs
 
 -- [Note: Good relative paths]
@@ -2305,11 +2316,11 @@ isGoodRelativeDirectoryPath = state0
 -- import Kleene
 -- import Kleene.ERE (ERE (..), intersections)
 --
--- data C = CDot | CSlash | COtherReserved | CChar
+-- data C = CDot | CSlash | CChar
 --   deriving (Eq, Ord, Enum, Bounded, Show)
 --
 -- reservedR :: ERE C
--- reservedR = notChar CSlash /\ notChar COtherReserved
+-- reservedR = notChar CSlash
 --
 -- pathPieceR :: ERE C
 -- pathPieceR = intersections
@@ -2336,31 +2347,24 @@ isGoodRelativeDirectoryPath = state0
 -- @
 -- 0 -> \x -> if
 --     | x <= CDot           -> 1
---     | x <= COtherReserved -> 6
 --     | otherwise           -> 5
 -- 1 -> \x -> if
 --     | x <= CDot           -> 4
 --     | x <= CSlash         -> 2
---     | x <= COtherReserved -> 6
 --     | otherwise           -> 5
 -- 2 -> \x -> if
 --     | x <= CDot           -> 3
---     | x <= COtherReserved -> 6
 --     | otherwise           -> 5
 -- 3 -> \x -> if
 --     | x <= CDot           -> 4
---     | x <= COtherReserved -> 6
 --     | otherwise           -> 5
 -- 4 -> \x -> if
 --     | x <= CDot           -> 5
---     | x <= COtherReserved -> 6
 --     | otherwise           -> 5
 -- 5+ -> \x -> if
 --     | x <= CDot           -> 5
 --     | x <= CSlash         -> 2
---     | x <= COtherReserved -> 6
 --     | otherwise           -> 5
--- 6 -> \_ -> 6 -- black hole
 -- @
 --
 -- and @dirPathR@:
@@ -2368,29 +2372,40 @@ isGoodRelativeDirectoryPath = state0
 -- @
 -- 0 -> \x -> if
 --     | x <= CDot           -> 5
---     | x <= COtherReserved -> 6
 --     | otherwise           -> 4
 -- 1+ -> \x -> if
 --     | x <= CDot           -> 2
---     | x <= COtherReserved -> 6
 --     | otherwise           -> 4
 -- 2 -> \x -> if
 --     | x <= CDot           -> 3
---     | x <= COtherReserved -> 6
 --     | otherwise           -> 4
 -- 3 -> \x -> if
 --     | x <= CDot           -> 4
---     | x <= COtherReserved -> 6
 --     | otherwise           -> 4
 -- 4+ -> \x -> if
 --     | x <= CDot           -> 4
 --     | x <= CSlash         -> 1
---     | x <= COtherReserved -> 6
 --     | otherwise           -> 4
 -- 5+ -> \x -> if
 --     | x <= CDot           -> 3
 --     | x <= CSlash         -> 1
---     | x <= COtherReserved -> 6
 --     | otherwise           -> 4
--- 6 -> \_ -> 6 -- black hole
 -- @
+
+--
+-- TODO: What we really want to do is test if there exists any
+-- configuration in which the base version is unbounded above.
+-- However that's a bit tricky because there are many possible
+-- configurations. As a cheap easy and safe approximation we will
+-- pick a single "typical" configuration and check if that has an
+-- open upper bound. To get a typical configuration we finalise
+-- using no package index and the current platform.
+typicalPkg :: GenericPackageDescription
+           -> Either [Dependency] (PackageDescription, FlagAssignment)
+typicalPkg = finalizePD
+  mempty defaultComponentRequestedSpec (const True)
+  buildPlatform
+  (unknownCompilerInfo
+    (CompilerId buildCompilerFlavor nullVersion)
+      NoAbiTag)
+  []
diff --git a/Cabal/src/Distribution/PackageDescription/FieldGrammar.hs b/Cabal/src/Distribution/PackageDescription/FieldGrammar.hs
index ee0ce41a459a5ff6981db6b10d8b2ca79b1c3604..cf6f0536b041128a5aaa6499d754215e718661df 100644
--- a/Cabal/src/Distribution/PackageDescription/FieldGrammar.hs
+++ b/Cabal/src/Distribution/PackageDescription/FieldGrammar.hs
@@ -561,12 +561,16 @@ buildInfoFieldGrammar = BuildInfo
         ^^^ removedIn CabalSpecV3_0
             "Please use 'default-extensions' or 'other-extensions' fields."
     <*> monoidalFieldAla "extra-libraries"      (alaList' VCat Token)         L.extraLibs
+    <*> monoidalFieldAla "extra-libraries-static" (alaList' VCat Token)       L.extraLibsStatic
+        ^^^ availableSince CabalSpecV3_8 []
     <*> monoidalFieldAla "extra-ghci-libraries" (alaList' VCat Token)         L.extraGHCiLibs
     <*> monoidalFieldAla "extra-bundled-libraries" (alaList' VCat Token)      L.extraBundledLibs
     <*> monoidalFieldAla "extra-library-flavours" (alaList' VCat Token)       L.extraLibFlavours
     <*> monoidalFieldAla "extra-dynamic-library-flavours" (alaList' VCat Token) L.extraDynLibFlavours
         ^^^ availableSince CabalSpecV3_0 []
     <*> monoidalFieldAla "extra-lib-dirs"       (alaList' FSep FilePathNT)    L.extraLibDirs
+    <*> monoidalFieldAla "extra-lib-dirs-static" (alaList' FSep FilePathNT)   L.extraLibDirsStatic
+        ^^^ availableSince CabalSpecV3_8 []
     <*> monoidalFieldAla "include-dirs"         (alaList' FSep FilePathNT)    L.includeDirs
     <*> monoidalFieldAla "includes"             (alaList' FSep FilePathNT)    L.includes
     <*> monoidalFieldAla "autogen-includes"     (alaList' FSep FilePathNT)    L.autogenIncludes
diff --git a/Cabal/src/Distribution/ReadE.hs b/Cabal/src/Distribution/ReadE.hs
index 863049dea611a63b3975e7c698aad4acc6112d6b..ba278b947c9cd3fdaeddcaee2226c09d5c9999d5 100644
--- a/Cabal/src/Distribution/ReadE.hs
+++ b/Cabal/src/Distribution/ReadE.hs
@@ -13,7 +13,6 @@ module Distribution.ReadE (
    -- * ReadE
    ReadE(..), succeedReadE, failReadE,
    -- * Projections
-   readEOrFail,
    parsecToReadE,
   ) where
 
@@ -38,9 +37,6 @@ succeedReadE f = ReadE (Right . f)
 failReadE :: ErrorMsg -> ReadE a
 failReadE = ReadE . const . Left
 
-readEOrFail :: ReadE a -> String -> a
-readEOrFail r = either error id . runReadE r
-
 parsecToReadE :: (String -> ErrorMsg) -> ParsecParser a -> ReadE a
 parsecToReadE err p = ReadE $ \txt ->
     case runParsecParser p "<parsecToReadE>" (fieldLineStreamFromString txt) of
diff --git a/Cabal/src/Distribution/Simple.hs b/Cabal/src/Distribution/Simple.hs
index 3b6672a3c8b345dc970750cf89a07b16d97df345..fc9153229682f119941a3a67cac372cac2c639ec 100644
--- a/Cabal/src/Distribution/Simple.hs
+++ b/Cabal/src/Distribution/Simple.hs
@@ -104,6 +104,7 @@ import Distribution.Compat.Directory        (makeAbsolute)
 import Distribution.Compat.Environment      (getEnvironment)
 import Distribution.Compat.GetShortPathName (getShortPathName)
 
+import qualified Data.ByteString.Lazy as B
 import Data.List       (unionBy, (\\))
 
 import Distribution.PackageDescription.Parsec
@@ -285,8 +286,8 @@ showBuildInfoAction hooks (ShowBuildInfoFlags flags fileOutput) args = do
   buildInfoString <- showBuildInfo pkg_descr lbi' flags
 
   case fileOutput of
-    Nothing -> putStr buildInfoString
-    Just fp -> writeFile fp buildInfoString
+    Nothing -> B.putStr buildInfoString
+    Just fp -> B.writeFile fp buildInfoString
 
   postBuild hooks args flags' pkg_descr lbi'
 
diff --git a/Cabal/src/Distribution/Simple/Build.hs b/Cabal/src/Distribution/Simple/Build.hs
index c5963c733ab3851c2dfcdc124acb04bf6d5c8e7a..5b0842fb9e6f6b8843e0c670a38dc1028e45aa65 100644
--- a/Cabal/src/Distribution/Simple/Build.hs
+++ b/Cabal/src/Distribution/Simple/Build.hs
@@ -77,7 +77,7 @@ import Distribution.Simple.Configure
 import Distribution.Simple.Register
 import Distribution.Simple.Test.LibV09
 import Distribution.Simple.Utils
-import Distribution.Simple.Utils.Json
+import Distribution.Utils.Json
 
 import Distribution.System
 import Distribution.Pretty
@@ -87,6 +87,7 @@ import Distribution.Version (thisVersion)
 import Distribution.Compat.Graph (IsNode(..))
 
 import Control.Monad
+import Data.ByteString.Lazy (ByteString)
 import qualified Data.Set as Set
 import System.FilePath ( (</>), (<.>), takeDirectory )
 import System.Directory ( getCurrentDirectory )
@@ -136,13 +137,13 @@ build pkg_descr lbi flags suffixes = do
 showBuildInfo :: PackageDescription  -- ^ Mostly information from the .cabal file
   -> LocalBuildInfo      -- ^ Configuration information
   -> BuildFlags          -- ^ Flags that the user passed to build
-  -> IO String
+  -> IO ByteString
 showBuildInfo pkg_descr lbi flags = do
   let verbosity = fromFlag (buildVerbosity flags)
   targets <- readTargetInfos verbosity pkg_descr lbi (buildArgs flags)
   let targetsToBuild = neededTargetsInBuildOrder' pkg_descr lbi (map nodeKey targets)
       doc = mkBuildInfo pkg_descr lbi flags targetsToBuild
-  return $ renderJson doc ""
+  return $ renderJson doc
 
 
 repl     :: PackageDescription  -- ^ Mostly information from the .cabal file
@@ -385,7 +386,7 @@ addExtraAsmSources bi extras = bi { asmSources = new }
         exs = Set.fromList extras
 
 
-replComponent :: [String]
+replComponent :: ReplOptions
               -> Verbosity
               -> PackageDescription
               -> LocalBuildInfo
@@ -644,7 +645,7 @@ buildExe verbosity numJobs pkg_descr lbi exe clbi =
     UHC   -> UHC.buildExe   verbosity         pkg_descr lbi exe clbi
     _     -> die' verbosity "Building is not supported with this compiler."
 
-replLib :: [String]        -> Verbosity -> PackageDescription
+replLib :: ReplOptions     -> Verbosity -> PackageDescription
         -> LocalBuildInfo  -> Library   -> ComponentLocalBuildInfo
         -> IO ()
 replLib replFlags verbosity pkg_descr lbi lib clbi =
@@ -652,19 +653,19 @@ replLib replFlags verbosity pkg_descr lbi lib clbi =
     -- 'cabal repl' doesn't need to support 'ghc --make -j', so we just pass
     -- NoFlag as the numJobs parameter.
     GHC   -> GHC.replLib   replFlags verbosity NoFlag pkg_descr lbi lib clbi
-    GHCJS -> GHCJS.replLib replFlags verbosity NoFlag pkg_descr lbi lib clbi
+    GHCJS -> GHCJS.replLib (replOptionsFlags replFlags) verbosity NoFlag pkg_descr lbi lib clbi
     _     -> die' verbosity "A REPL is not supported for this compiler."
 
-replExe :: [String]        -> Verbosity  -> PackageDescription
+replExe :: ReplOptions     -> Verbosity  -> PackageDescription
         -> LocalBuildInfo  -> Executable -> ComponentLocalBuildInfo
         -> IO ()
 replExe replFlags verbosity pkg_descr lbi exe clbi =
   case compilerFlavor (compiler lbi) of
     GHC   -> GHC.replExe   replFlags verbosity NoFlag pkg_descr lbi exe clbi
-    GHCJS -> GHCJS.replExe replFlags verbosity NoFlag pkg_descr lbi exe clbi
+    GHCJS -> GHCJS.replExe (replOptionsFlags replFlags) verbosity NoFlag pkg_descr lbi exe clbi
     _     -> die' verbosity "A REPL is not supported for this compiler."
 
-replFLib :: [String]        -> Verbosity  -> PackageDescription
+replFLib :: ReplOptions     -> Verbosity  -> PackageDescription
          -> LocalBuildInfo  -> ForeignLib -> ComponentLocalBuildInfo
          -> IO ()
 replFLib replFlags verbosity pkg_descr lbi exe clbi =
diff --git a/Cabal/src/Distribution/Simple/Command.hs b/Cabal/src/Distribution/Simple/Command.hs
index ec7870f2ceb130d093cd27bd4bf7197278aa293d..69e0a1976598966ad1e071c27a4c554523c485ac 100644
--- a/Cabal/src/Distribution/Simple/Command.hs
+++ b/Cabal/src/Distribution/Simple/Command.hs
@@ -223,16 +223,15 @@ commandGetOpts :: ShowOrParseArgs -> CommandUI flags
 commandGetOpts showOrParse command =
     concatMap viewAsGetOpt (commandOptions command showOrParse)
 
-viewAsGetOpt :: OptionField a -> [GetOpt.OptDescr (a->a)]
+viewAsGetOpt :: OptionField a -> [GetOpt.OptDescr (a -> a)]
 viewAsGetOpt (OptionField _n aa) = concatMap optDescrToGetOpt aa
   where
     optDescrToGetOpt (ReqArg d (cs,ss) arg_desc set _) =
-         [GetOpt.Option cs ss (GetOpt.ReqArg set' arg_desc) d]
-             where set' = readEOrFail set
+         [GetOpt.Option cs ss (GetOpt.ReqArg (runReadE set) arg_desc) d]
     optDescrToGetOpt (OptArg d (cs,ss) arg_desc set def _) =
          [GetOpt.Option cs ss (GetOpt.OptArg set' arg_desc) d]
-             where set' Nothing    = def
-                   set' (Just txt) = readEOrFail set txt
+             where set' Nothing    = Right def
+                   set' (Just txt) = runReadE set txt
     optDescrToGetOpt (ChoiceOpt alts) =
          [GetOpt.Option sf lf (GetOpt.NoArg set) d | (d,(sf,lf),set,_) <- alts ]
     optDescrToGetOpt (BoolOpt d (sfT, lfT) ([],  [])  set _) =
@@ -391,13 +390,8 @@ addCommonFlags :: ShowOrParseArgs
                -> [GetOpt.OptDescr a]
                -> [GetOpt.OptDescr (Either CommonFlag a)]
 addCommonFlags showOrParseArgs options =
-     map (fmapOptDesc Left)  (commonFlags showOrParseArgs)
-  ++ map (fmapOptDesc Right) options
-  where fmapOptDesc f (GetOpt.Option s l d m) =
-                       GetOpt.Option s l (fmapArgDesc f d) m
-        fmapArgDesc f (GetOpt.NoArg a)    = GetOpt.NoArg (f a)
-        fmapArgDesc f (GetOpt.ReqArg s d) = GetOpt.ReqArg (f . s) d
-        fmapArgDesc f (GetOpt.OptArg s d) = GetOpt.OptArg (f . s) d
+     map (fmap Left)  (commonFlags showOrParseArgs)
+  ++ map (fmap Right) options
 
 -- | Parse a bunch of command line arguments
 --
diff --git a/Cabal/src/Distribution/Simple/Configure.hs b/Cabal/src/Distribution/Simple/Configure.hs
index 869b004ee993038c99a5593528cbeff53c9e493a..cf02b58d9428af05eff6110c4c1eb7f2430096b8 100644
--- a/Cabal/src/Distribution/Simple/Configure.hs
+++ b/Cabal/src/Distribution/Simple/Configure.hs
@@ -679,6 +679,7 @@ configure (pkg_descr0, pbi) cfg = do
         withDynExe_ = fromFlag $ configDynExe cfg
 
         withFullyStaticExe_ = fromFlag $ configFullyStaticExe cfg
+
     when (withDynExe_ && not withSharedLib_) $ warn verbosity $
            "Executables will use dynamic linking, but a shared library "
         ++ "is not being built. Linking will fail if any executables "
@@ -1011,6 +1012,7 @@ configureFinalizedPackage verbosity cfg enabled
   where
     addExtraIncludeLibDirs pkg_descr =
         let extraBi = mempty { extraLibDirs = configExtraLibDirs cfg
+                             , extraLibDirsStatic = configExtraLibDirsStatic cfg
                              , extraFrameworkDirs = configExtraFrameworkDirs cfg
                              , includeDirs = configExtraIncludeDirs cfg}
             modifyLib l        = l{ libBuildInfo        = libBuildInfo l
@@ -1638,7 +1640,8 @@ configurePkgconfigPackages verbosity pkg_descr progdb enabled
       let pkgs = nub [ prettyShow pkg | PkgconfigDependency pkg _ <- pkgdeps ]
       ccflags <- pkgconfig ("--cflags" : pkgs)
       ldflags <- pkgconfig ("--libs"   : pkgs)
-      return (ccLdOptionsBuildInfo (words ccflags) (words ldflags))
+      ldflags_static <- pkgconfig ("--libs"   : "--static" : pkgs)
+      return (ccLdOptionsBuildInfo (words ccflags) (words ldflags) (words ldflags_static))
 
 -- | Makes a 'BuildInfo' from C compiler and linker flags.
 --
@@ -1648,17 +1651,22 @@ configurePkgconfigPackages verbosity pkg_descr progdb enabled
 --
 -- > ccflags <- getDbProgramOutput verbosity prog progdb ["--cflags"]
 -- > ldflags <- getDbProgramOutput verbosity prog progdb ["--libs"]
--- > return (ccldOptionsBuildInfo (words ccflags) (words ldflags))
+-- > ldflags_static <- getDbProgramOutput verbosity prog progdb ["--libs", "--static"]
+-- > return (ccldOptionsBuildInfo (words ccflags) (words ldflags) (words ldflags_static))
 --
-ccLdOptionsBuildInfo :: [String] -> [String] -> BuildInfo
-ccLdOptionsBuildInfo cflags ldflags =
+ccLdOptionsBuildInfo :: [String] -> [String] -> [String] -> BuildInfo
+ccLdOptionsBuildInfo cflags ldflags ldflags_static =
   let (includeDirs',  cflags')   = partition ("-I" `isPrefixOf`) cflags
       (extraLibs',    ldflags')  = partition ("-l" `isPrefixOf`) ldflags
       (extraLibDirs', ldflags'') = partition ("-L" `isPrefixOf`) ldflags'
+      (extraLibsStatic')         = filter ("-l" `isPrefixOf`) ldflags_static
+      (extraLibDirsStatic')      = filter ("-L" `isPrefixOf`) ldflags_static
   in mempty {
        includeDirs  = map (drop 2) includeDirs',
        extraLibs    = map (drop 2) extraLibs',
        extraLibDirs = map (drop 2) extraLibDirs',
+       extraLibsStatic = map (drop 2) extraLibsStatic',
+       extraLibDirsStatic = map (drop 2) extraLibDirsStatic',
        ccOptions    = cflags',
        ldOptions    = ldflags''
      }
@@ -1707,7 +1715,10 @@ checkForeignDeps pkg lbi verbosity =
                explainErrors missingHdr missingLibs)
       where
         allHeaders = collectField includes
-        allLibs    = collectField extraLibs
+        allLibs    = collectField $
+          if withFullyStaticExe lbi
+          then extraLibsStatic
+          else extraLibs
 
         ifBuildsWith headers args success failure = do
             checkDuplicateHeaders
@@ -1810,12 +1821,17 @@ checkForeignDeps pkg lbi verbosity =
                         , opt <- IPI.ccOptions dep ]
 
         commonLdArgs  = [ "-L" ++ dir
-                        | dir <- ordNub (collectField extraLibDirs) ]
+                        | dir <- ordNub $ collectField (if withFullyStaticExe lbi
+                                                         then extraLibDirsStatic
+                                                         else extraLibDirs
+                                                       ) ]
                      ++ collectField ldOptions
                      ++ [ "-L" ++ dir
                         | dir <- ordNub [ dir
                                         | dep <- deps
-                                        , dir <- IPI.libraryDirs dep ]
+                                        , dir <- if withFullyStaticExe lbi
+                                                 then IPI.libraryDirsStatic dep
+                                                 else IPI.libraryDirs dep ]
                         ]
                      --TODO: do we also need dependent packages' ld options?
         makeLdArgs libs = [ "-l"++lib | lib <- libs ] ++ commonLdArgs
diff --git a/Cabal/src/Distribution/Simple/GHC.hs b/Cabal/src/Distribution/Simple/GHC.hs
index 070115f2792f950129977607c795c7071add311a..c662bb19b58d9cc083e122afbce06ebc941d5f44 100644
--- a/Cabal/src/Distribution/Simple/GHC.hs
+++ b/Cabal/src/Distribution/Simple/GHC.hs
@@ -493,13 +493,13 @@ buildLib :: Verbosity          -> Cabal.Flag (Maybe Int)
          -> Library            -> ComponentLocalBuildInfo -> IO ()
 buildLib = buildOrReplLib Nothing
 
-replLib :: [String]                -> Verbosity
+replLib :: ReplOptions             -> Verbosity
         -> Cabal.Flag (Maybe Int)  -> PackageDescription
         -> LocalBuildInfo          -> Library
         -> ComponentLocalBuildInfo -> IO ()
 replLib = buildOrReplLib . Just
 
-buildOrReplLib :: Maybe [String] -> Verbosity
+buildOrReplLib :: Maybe ReplOptions -> Verbosity
                -> Cabal.Flag (Maybe Int) -> PackageDescription
                -> LocalBuildInfo -> Library
                -> ComponentLocalBuildInfo -> IO ()
@@ -593,8 +593,13 @@ buildOrReplLib mReplFlags verbosity numJobs pkg_descr lbi lib clbi = do
                                                 -- through to GHC's linker.
                                                 ++ maybe [] programOverrideArgs
                                                      (lookupProgram ldProgram (withPrograms lbi)),
-                      ghcOptLinkLibs          = extraLibs libBi,
-                      ghcOptLinkLibPath       = toNubListR $ extraLibDirs libBi,
+                      ghcOptLinkLibs          = if withFullyStaticExe lbi
+                                                  then extraLibsStatic libBi
+                                                  else extraLibs libBi,
+                      ghcOptLinkLibPath       = toNubListR $
+                                                  if withFullyStaticExe lbi
+                                                    then extraLibDirsStatic libBi
+                                                    else extraLibDirs libBi,
                       ghcOptLinkFrameworks    = toNubListR $ PD.frameworks libBi,
                       ghcOptLinkFrameworkDirs = toNubListR $
                                                 PD.extraFrameworkDirs libBi,
@@ -604,8 +609,9 @@ buildOrReplLib mReplFlags verbosity numJobs pkg_descr lbi lib clbi = do
       replOpts    = vanillaOpts {
                       ghcOptExtra        = Internal.filterGhciFlags
                                            (ghcOptExtra vanillaOpts)
-                                           <> replFlags,
-                      ghcOptNumJobs      = mempty
+                                           <> replOptionsFlags replFlags,
+                      ghcOptNumJobs      = mempty,
+                      ghcOptInputModules = replNoLoad replFlags (ghcOptInputModules vanillaOpts)
                     }
                     `mappend` linkerOpts
                     `mappend` mempty {
@@ -964,7 +970,7 @@ buildFLib
 buildFLib v njobs pkg lbi = gbuild v njobs pkg lbi . GBuildFLib
 
 replFLib
-  :: [String]                -> Verbosity
+  :: ReplOptions             -> Verbosity
   -> Cabal.Flag (Maybe Int)  -> PackageDescription
   -> LocalBuildInfo          -> ForeignLib
   -> ComponentLocalBuildInfo -> IO ()
@@ -980,7 +986,7 @@ buildExe
 buildExe v njobs pkg lbi = gbuild v njobs pkg lbi . GBuildExe
 
 replExe
-  :: [String]                -> Verbosity
+  :: ReplOptions             -> Verbosity
   -> Cabal.Flag (Maybe Int)  -> PackageDescription
   -> LocalBuildInfo          -> Executable
   -> ComponentLocalBuildInfo -> IO ()
@@ -992,9 +998,9 @@ replExe replFlags v njobs pkg lbi =
 -- 'GBuildMode' distinguishes between the various kinds of operation.
 data GBuildMode =
     GBuildExe  Executable
-  | GReplExe   [String] Executable
+  | GReplExe   ReplOptions Executable
   | GBuildFLib ForeignLib
-  | GReplFLib  [String] ForeignLib
+  | GReplFLib  ReplOptions ForeignLib
 
 gbuildInfo :: GBuildMode -> BuildInfo
 gbuildInfo (GBuildExe  exe)  = buildInfo exe
@@ -1260,6 +1266,11 @@ gbuildSources verbosity specVer tmpDir bm =
     isCxx :: FilePath -> Bool
     isCxx fp = elem (takeExtension fp) [".cpp", ".cxx", ".c++"]
 
+replNoLoad :: Ord a => ReplOptions -> NubListR a -> NubListR a
+replNoLoad replFlags l
+    | replOptionsNoLoad replFlags == Flag True = mempty
+    | otherwise                                = l
+
 -- | Generic build function. See comment for 'GBuildMode'.
 gbuild :: Verbosity          -> Cabal.Flag (Maybe Int)
        -> PackageDescription -> LocalBuildInfo
@@ -1356,8 +1367,13 @@ gbuild verbosity numJobs pkg_descr lbi bm clbi = do
                                                 -- through to GHC's linker.
                                                 ++ maybe [] programOverrideArgs
                                                      (lookupProgram ldProgram (withPrograms lbi)),
-                      ghcOptLinkLibs          = extraLibs bnfo,
-                      ghcOptLinkLibPath       = toNubListR $ extraLibDirs bnfo,
+                      ghcOptLinkLibs          = if withFullyStaticExe lbi
+                                                  then extraLibsStatic bnfo
+                                                  else extraLibs bnfo,
+                      ghcOptLinkLibPath       = toNubListR $
+                                                  if withFullyStaticExe lbi
+                                                    then extraLibDirsStatic bnfo
+                                                    else extraLibDirs bnfo,
                       ghcOptLinkFrameworks    = toNubListR $
                                                 PD.frameworks bnfo,
                       ghcOptLinkFrameworkDirs = toNubListR $
@@ -1373,7 +1389,9 @@ gbuild verbosity numJobs pkg_descr lbi bm clbi = do
       replOpts   = baseOpts {
                     ghcOptExtra            = Internal.filterGhciFlags
                                              (ghcOptExtra baseOpts)
-                                             <> replFlags
+                                             <> replOptionsFlags replFlags,
+                    ghcOptInputModules     = replNoLoad replFlags (ghcOptInputModules baseOpts),
+                    ghcOptInputFiles       = replNoLoad replFlags (ghcOptInputFiles baseOpts)
                    }
                    -- For a normal compile we do separate invocations of ghc for
                    -- compiling as for linking. But for repl we have to do just
diff --git a/Cabal/src/Distribution/Simple/GHC/Internal.hs b/Cabal/src/Distribution/Simple/GHC/Internal.hs
index 8ff5f24091bec9f7451408dab5e8a194fab7304a..d81a5a5295b8e26e3d6c3f7b62499c0aefc1de0b 100644
--- a/Cabal/src/Distribution/Simple/GHC/Internal.hs
+++ b/Cabal/src/Distribution/Simple/GHC/Internal.hs
@@ -536,6 +536,7 @@ substTopDir topDir ipo
  = ipo {
        IPI.importDirs        = map f (IPI.importDirs ipo),
        IPI.libraryDirs       = map f (IPI.libraryDirs ipo),
+       IPI.libraryDirsStatic = map f (IPI.libraryDirsStatic ipo),
        IPI.includeDirs       = map f (IPI.includeDirs ipo),
        IPI.frameworkDirs     = map f (IPI.frameworkDirs ipo),
        IPI.haddockInterfaces = map f (IPI.haddockInterfaces ipo),
diff --git a/Cabal/src/Distribution/Simple/PreProcess.hs b/Cabal/src/Distribution/Simple/PreProcess.hs
index be360263b1aeb2b17acf31a3da3f32425b59937e..e780aa835f788f333456b611e6af0494ad2fcf85 100644
--- a/Cabal/src/Distribution/Simple/PreProcess.hs
+++ b/Cabal/src/Distribution/Simple/PreProcess.hs
@@ -468,9 +468,19 @@ ppHsc2hs bi lbi clbi =
                [ "-I" ++ autogenComponentModulesDir lbi clbi,
                  "-I" ++ autogenPackageModulesDir lbi,
                  "-include", autogenComponentModulesDir lbi clbi </> cppHeaderName ] ]
-       ++ [ "--lflag=-L" ++ opt | opt <- PD.extraLibDirs bi ]
-       ++ [ "--lflag=-Wl,-R," ++ opt | isELF
-                                , opt <- PD.extraLibDirs bi ]
+       ++ [ "--lflag=-L" ++ opt
+          | opt <-
+              if withFullyStaticExe lbi
+                then PD.extraLibDirsStatic bi
+                else PD.extraLibDirs bi
+          ]
+       ++ [ "--lflag=-Wl,-R," ++ opt
+          | isELF
+          , opt <-
+              if withFullyStaticExe lbi
+                then PD.extraLibDirsStatic bi
+                else PD.extraLibDirs bi
+          ]
        ++ [ "--lflag=-l" ++ opt | opt <- PD.extraLibs    bi ]
        ++ [ "--lflag="   ++ opt | opt <- PD.ldOptions    bi ]
 
@@ -484,7 +494,12 @@ ppHsc2hs bi lbi clbi =
           , opt <- [ "-L" ++ opt | opt <- Installed.libraryDirs    pkg ]
                 ++ [ "-Wl,-R," ++ opt | isELF
                                  , opt <- Installed.libraryDirs    pkg ]
-                ++ [ "-l" ++ opt | opt <- Installed.extraLibraries pkg ]
+                ++ [ "-l" ++ opt
+                   | opt <-
+                       if withFullyStaticExe lbi
+                         then Installed.extraLibrariesStatic pkg
+                         else Installed.extraLibraries pkg
+                   ]
                 ++ [         opt | opt <- Installed.ldOptions      pkg ] ]
        ++ preccldFlags
        ++ hsc2hsOptions bi
diff --git a/Cabal/src/Distribution/Simple/Program/HcPkg.hs b/Cabal/src/Distribution/Simple/Program/HcPkg.hs
index 3f254c6c335e385c14be44971de5b2afc817ce3d..1a3e3258e8fa3385bb337107d59ddce778283e1b 100644
--- a/Cabal/src/Distribution/Simple/Program/HcPkg.hs
+++ b/Cabal/src/Distribution/Simple/Program/HcPkg.hs
@@ -314,6 +314,7 @@ mungePackagePaths pkgroot pkginfo =
       importDirs        = mungePaths (importDirs  pkginfo),
       includeDirs       = mungePaths (includeDirs pkginfo),
       libraryDirs       = mungePaths (libraryDirs pkginfo),
+      libraryDirsStatic = mungePaths (libraryDirsStatic pkginfo),
       libraryDynDirs    = mungePaths (libraryDynDirs pkginfo),
       frameworkDirs     = mungePaths (frameworkDirs pkginfo),
       haddockInterfaces = mungePaths (haddockInterfaces pkginfo),
diff --git a/Cabal/src/Distribution/Simple/Program/Script.hs b/Cabal/src/Distribution/Simple/Program/Script.hs
index c9c45d5b7c3aafa20935a9aac77f8cb564173f8c..2b83f9796d4a2c70b218372751b4b20d033f101a 100644
--- a/Cabal/src/Distribution/Simple/Program/Script.hs
+++ b/Cabal/src/Distribution/Simple/Program/Script.hs
@@ -48,7 +48,7 @@ invocationAsShellScript
        ++ [ "cd " ++ quote cwd | cwd <- maybeToList mcwd ]
        ++ [ (case minput of
               Nothing     -> ""
-              Just input -> "echo " ++ quote (iodataToText input) ++ " | ")
+              Just input -> "printf '%s' " ++ quote (iodataToText input) ++ " | ")
          ++ unwords (map quote $ path : args) ++ " \"$@\""]
 
   where
diff --git a/Cabal/src/Distribution/Simple/Register.hs b/Cabal/src/Distribution/Simple/Register.hs
index 980884ad2e46f8c12280d6a6d73e0df34f12de18..4a8faaeeeb3523315ac390882fb7a13d384fc05e 100644
--- a/Cabal/src/Distribution/Simple/Register.hs
+++ b/Cabal/src/Distribution/Simple/Register.hs
@@ -425,12 +425,14 @@ generalInstalledPackageInfo adjustRelIncDirs pkg abi_hash lib lbi clbi installDi
     IPI.trusted            = IPI.trusted IPI.emptyInstalledPackageInfo,
     IPI.importDirs         = [ libdir installDirs | hasModules ],
     IPI.libraryDirs        = libdirs,
+    IPI.libraryDirsStatic  = libdirsStatic,
     IPI.libraryDynDirs     = dynlibdirs,
     IPI.dataDir            = datadir installDirs,
     IPI.hsLibraries        = (if hasLibrary
                               then [getHSLibraryName (componentUnitId clbi)]
                               else []) ++ extraBundledLibs bi,
     IPI.extraLibraries     = extraLibs bi,
+    IPI.extraLibrariesStatic = extraLibsStatic bi,
     IPI.extraGHCiLibraries = extraGHCiLibs bi,
     IPI.includeDirs        = absinc ++ adjustRelIncDirs relinc,
     IPI.includes           = includes bi,
@@ -467,6 +469,16 @@ generalInstalledPackageInfo adjustRelIncDirs pkg abi_hash lib lbi clbi installDi
                              || (not (null (jsSources bi)) &&
                                 compilerFlavor comp == GHCJS))
                && not (componentIsIndefinite clbi)
+    libdirsStatic
+      | hasLibrary = libdir installDirs : extraLibDirsStaticOrFallback
+      | otherwise  =                      extraLibDirsStaticOrFallback
+      where
+        -- If no static library dirs were given, the package likely makes no
+        -- distinction between fully static linking and otherwise.
+        -- Fall back to the normal library dirs in that case.
+        extraLibDirsStaticOrFallback = case extraLibDirsStatic bi of
+          [] -> extraLibDirs bi
+          dirs -> dirs
     (libdirs, dynlibdirs)
       | not hasLibrary
       = (extraLibDirs bi, [])
diff --git a/Cabal/src/Distribution/Simple/Setup.hs b/Cabal/src/Distribution/Simple/Setup.hs
index 92c4a842697966993af440151d0e7dd9ea4c209a..195ef3e1eb70bc218a1a3b18972db4af1bbf3194 100644
--- a/Cabal/src/Distribution/Simple/Setup.hs
+++ b/Cabal/src/Distribution/Simple/Setup.hs
@@ -47,6 +47,7 @@ module Distribution.Simple.Setup (
   BuildFlags(..),    emptyBuildFlags,    defaultBuildFlags,    buildCommand,
   ShowBuildInfoFlags(..),                defaultShowBuildFlags, showBuildInfoCommand,
   ReplFlags(..),                         defaultReplFlags,     replCommand,
+  ReplOptions(..),
   CleanFlags(..),    emptyCleanFlags,    defaultCleanFlags,    cleanCommand,
   RegisterFlags(..), emptyRegisterFlags, defaultRegisterFlags, registerCommand,
                                                                unregisterCommand,
@@ -231,6 +232,9 @@ data ConfigFlags = ConfigFlags {
                                                             -- paths
     configScratchDir    :: Flag FilePath,
     configExtraLibDirs  :: [FilePath],   -- ^ path to search for extra libraries
+    configExtraLibDirsStatic :: [FilePath],   -- ^ path to search for extra
+                                              --   libraries when linking
+                                              --   fully static executables
     configExtraFrameworkDirs :: [FilePath],   -- ^ path to search for extra
                                               -- frameworks (OS X only)
     configExtraIncludeDirs :: [FilePath],   -- ^ path to search for header files
@@ -315,6 +319,7 @@ instance Eq ConfigFlags where
     && equal configInstallDirs
     && equal configScratchDir
     && equal configExtraLibDirs
+    && equal configExtraLibDirsStatic
     && equal configExtraIncludeDirs
     && equal configIPID
     && equal configDeterministic
@@ -633,6 +638,11 @@ configureOptions showOrParseArgs =
          configExtraLibDirs (\v flags -> flags {configExtraLibDirs = v})
          (reqArg' "PATH" (\x -> [x]) id)
 
+      ,option "" ["extra-lib-dirs-static"]
+         "A list of directories to search for external libraries when linking fully static executables"
+         configExtraLibDirsStatic (\v flags -> flags {configExtraLibDirsStatic = v})
+         (reqArg' "PATH" (\x -> [x]) id)
+
       ,option "" ["extra-framework-dirs"]
          "A list of directories to search for external frameworks (OS X only)"
          configExtraFrameworkDirs
@@ -1656,13 +1666,30 @@ instance Semigroup BuildFlags where
 -- * REPL Flags
 -- ------------------------------------------------------------
 
+data ReplOptions = ReplOptions {
+    replOptionsFlags :: [String],
+    replOptionsNoLoad :: Flag Bool
+  }
+  deriving (Show, Generic, Typeable)
+
+instance Binary ReplOptions
+instance Structured ReplOptions
+
+
+instance Monoid ReplOptions where
+  mempty = ReplOptions mempty (Flag False)
+  mappend = (<>)
+
+instance Semigroup ReplOptions where
+  (<>) = gmappend
+
 data ReplFlags = ReplFlags {
     replProgramPaths :: [(String, FilePath)],
     replProgramArgs :: [(String, [String])],
     replDistPref    :: Flag FilePath,
     replVerbosity   :: Flag Verbosity,
     replReload      :: Flag Bool,
-    replReplOptions :: [String]
+    replReplOptions :: ReplOptions
   }
   deriving (Show, Generic, Typeable)
 
@@ -1673,7 +1700,7 @@ defaultReplFlags  = ReplFlags {
     replDistPref    = NoFlag,
     replVerbosity   = Flag normal,
     replReload      = Flag False,
-    replReplOptions = []
+    replReplOptions = mempty
   }
 
 instance Monoid ReplFlags where
@@ -1754,9 +1781,17 @@ replCommand progDb = CommandUI
   where
     liftReplOption = liftOption replReplOptions (\v flags -> flags { replReplOptions = v })
 
-replOptions :: ShowOrParseArgs -> [OptionField [String]]
-replOptions _ = [ option [] ["repl-options"] "use this option for the repl" id
-              const (reqArg "FLAG" (succeedReadE (:[])) id) ]
+replOptions :: ShowOrParseArgs -> [OptionField ReplOptions]
+replOptions _ =
+  [ option [] ["repl-no-load"]
+    "Disable loading of project modules at REPL startup."
+    replOptionsNoLoad (\p flags -> flags { replOptionsNoLoad = p })
+    trueArg
+  , option [] ["repl-options"]
+    "use this option for the repl"
+    replOptionsFlags (\p flags -> flags { replOptionsFlags = p ++ replOptionsFlags flags })
+    (reqArg "FLAG" (succeedReadE (:[])) id)
+  ]
 
 -- ------------------------------------------------------------
 -- * Test flags
@@ -1822,16 +1857,8 @@ testCommand = CommandUI
   { commandName         = "test"
   , commandSynopsis     =
       "Run all/specific tests in the test suite."
-  , commandDescription  = Just $ \pname -> wrapText $
-         "If necessary (re)configures with `--enable-tests` flag and builds"
-      ++ " the test suite.\n"
-      ++ "\n"
-      ++ "Remember that the tests' dependencies must be installed if there"
-      ++ " are additional ones; e.g. with `" ++ pname
-      ++ " install --only-dependencies --enable-tests`.\n"
-      ++ "\n"
-      ++ "By defining UserHooks in a custom Setup.hs, the package can"
-      ++ " define actions to be executed before and after running tests.\n"
+  , commandDescription  = Just $ \ _pname -> wrapText $
+      testOrBenchmarkHelpText "test"
   , commandNotes        = Nothing
   , commandUsage        = usageAlternatives "test"
       [ "[FLAGS]"
@@ -1841,6 +1868,24 @@ testCommand = CommandUI
   , commandOptions = testOptions'
   }
 
+-- | Help text for @test@ and @bench@ commands.
+testOrBenchmarkHelpText
+  :: String   -- ^ Either @"test"@ or @"benchmark"@.
+  -> String   -- ^ Help text.
+testOrBenchmarkHelpText s = unlines $ map unwords
+  [ [ "The package must have been build with configuration"
+    , concat [ "flag `--enable-", s, "s`." ]
+    ]
+  , []  -- blank line
+  , [ concat [ "Note that additional dependencies of the ", s, "s" ]
+    , "must have already been installed."
+    ]
+  , []
+  , [ "By defining UserHooks in a custom Setup.hs, the package can define"
+    , concat [ "actions to be executed before and after running ", s, "s." ]
+    ]
+  ]
+
 testOptions' ::  ShowOrParseArgs -> [OptionField TestFlags]
 testOptions' showOrParseArgs =
   [ optionVerbosity testVerbosity (\v flags -> flags { testVerbosity = v })
@@ -1936,17 +1981,8 @@ benchmarkCommand = CommandUI
   { commandName         = "bench"
   , commandSynopsis     =
       "Run all/specific benchmarks."
-  , commandDescription  = Just $ \pname -> wrapText $
-         "If necessary (re)configures with `--enable-benchmarks` flag and"
-      ++ " builds the benchmarks.\n"
-      ++ "\n"
-      ++ "Remember that the benchmarks' dependencies must be installed if"
-      ++ " there are additional ones; e.g. with `" ++ pname
-      ++ " install --only-dependencies --enable-benchmarks`.\n"
-      ++ "\n"
-      ++ "By defining UserHooks in a custom Setup.hs, the package can"
-      ++ " define actions to be executed before and after running"
-      ++ " benchmarks.\n"
+  , commandDescription  = Just $ \ _pname -> wrapText $
+      testOrBenchmarkHelpText "benchmark"
   , commandNotes        = Nothing
   , commandUsage        = usageAlternatives "bench"
       [ "[FLAGS]"
diff --git a/Cabal/src/Distribution/Simple/ShowBuildInfo.hs b/Cabal/src/Distribution/Simple/ShowBuildInfo.hs
index 631685b1d57bd573349539779239e3f4782ea813..5dfe8e3a10775191ba8ce9822041c390033f44b3 100644
--- a/Cabal/src/Distribution/Simple/ShowBuildInfo.hs
+++ b/Cabal/src/Distribution/Simple/ShowBuildInfo.hs
@@ -70,7 +70,7 @@ import Distribution.Simple.LocalBuildInfo
 import Distribution.Simple.Program
 import Distribution.Simple.Setup
 import Distribution.Simple.Utils (cabalVersion)
-import Distribution.Simple.Utils.Json
+import Distribution.Utils.Json
 import Distribution.Types.TargetInfo
 import Distribution.Text
 import Distribution.Pretty
@@ -89,8 +89,6 @@ mkBuildInfo pkg_descr lbi _flags targetsToBuild = info
     targetToNameAndLBI target =
       (componentLocalName $ targetCLBI target, targetCLBI target)
     componentsToBuild = map targetToNameAndLBI targetsToBuild
-    (.=) :: String -> Json -> (String, Json)
-    k .= v = (k, v)
 
     info = JsonObject
       [ "cabal-version" .= JsonString (display cabalVersion)
diff --git a/Cabal/src/Distribution/Simple/Utils.hs b/Cabal/src/Distribution/Simple/Utils.hs
index 26c727b4657a1fa297168312d9f38ad70b0e872e..54c1b4c4408adcfad6f1943499af4a1c8ac1197c 100644
--- a/Cabal/src/Distribution/Simple/Utils.hs
+++ b/Cabal/src/Distribution/Simple/Utils.hs
@@ -442,7 +442,7 @@ verbosityHandle verbosity
 --
 warn :: Verbosity -> String -> IO ()
 warn verbosity msg = withFrozenCallStack $ do
-  when (verbosity >= normal) $ do
+  when ((verbosity >= normal) && not (isVerboseNoWarn verbosity)) $ do
     ts <- getPOSIXTime
     hFlush stdout
     hPutStr stderr . withMetadata ts NormalMark FlagTrace verbosity
diff --git a/Cabal/src/Distribution/Simple/Utils/Json.hs b/Cabal/src/Distribution/Simple/Utils/Json.hs
deleted file mode 100644
index f90f2f38aa2c4b6cf569b832baf5f121b05d529c..0000000000000000000000000000000000000000
--- a/Cabal/src/Distribution/Simple/Utils/Json.hs
+++ /dev/null
@@ -1,46 +0,0 @@
--- | Utility json lib for Cabal
--- TODO: Remove it again.
-module Distribution.Simple.Utils.Json
-    ( Json(..)
-    , renderJson
-    ) where
-
-data Json = JsonArray [Json]
-          | JsonBool !Bool
-          | JsonNull
-          | JsonNumber !Int
-          | JsonObject [(String, Json)]
-          | JsonString !String
-
-renderJson :: Json -> ShowS
-renderJson (JsonArray objs)   =
-  surround "[" "]" $ intercalate "," $ map renderJson objs
-renderJson (JsonBool True)    = showString "true"
-renderJson (JsonBool False)   = showString "false"
-renderJson  JsonNull          = showString "null"
-renderJson (JsonNumber n)     = shows n
-renderJson (JsonObject attrs) =
-  surround "{" "}" $ intercalate "," $ map render attrs
-  where
-    render (k,v) = (surround "\"" "\"" $ showString' k) . showString ":" . renderJson v
-renderJson (JsonString s)     = surround "\"" "\"" $ showString' s
-
-surround :: String -> String -> ShowS -> ShowS
-surround begin end middle = showString begin . middle . showString end
-
-showString' :: String -> ShowS
-showString' xs = showStringWorker xs
-    where
-        showStringWorker :: String -> ShowS
-        showStringWorker ('\"':as) = showString "\\\"" . showStringWorker as
-        showStringWorker ('\\':as) = showString "\\\\" . showStringWorker as
-        showStringWorker ('\'':as) = showString "\\\'" . showStringWorker as
-        showStringWorker (x:as) = showString [x] . showStringWorker as
-        showStringWorker [] = showString ""
-
-intercalate :: String -> [ShowS] -> ShowS
-intercalate sep = go
-  where
-    go []     = id
-    go [x]    = x
-    go (x:xs) = x . showString' sep . go xs
diff --git a/Cabal/src/Distribution/Types/BuildInfo.hs b/Cabal/src/Distribution/Types/BuildInfo.hs
index 4975b178cbb21cd44982a9df3de8d63a9290d6bb..979dce35db665617bc842563e398b3215dd8f954 100644
--- a/Cabal/src/Distribution/Types/BuildInfo.hs
+++ b/Cabal/src/Distribution/Types/BuildInfo.hs
@@ -78,6 +78,7 @@ data BuildInfo = BuildInfo {
         oldExtensions     :: [Extension],   -- ^ the old extensions field, treated same as 'defaultExtensions'
 
         extraLibs         :: [String], -- ^ what libraries to link with when compiling a program that uses your package
+        extraLibsStatic   :: [String], -- ^ what libraries to link with when compiling a program fully statically that uses your package
         extraGHCiLibs     :: [String], -- ^ if present, overrides extraLibs when package is loaded with GHCi.
         extraBundledLibs  :: [String], -- ^ if present, adds libs to hs-libraries, which become part of the package.
                                        --   Example: the Cffi library shipping with the rts, alognside the HSrts-1.0.a,.o,...
@@ -94,6 +95,7 @@ data BuildInfo = BuildInfo {
                                          --   libraries when copying. This is particularly useful with the `rts` package,
                                          --   where we want different dynamic flavours of the RTS library to be installed.
         extraLibDirs      :: [String],
+        extraLibDirsStatic :: [String],
         includeDirs       :: [FilePath], -- ^directories to find .h files
         includes          :: [FilePath], -- ^ The .h files to be found in includeDirs
         autogenIncludes   :: [FilePath], -- ^ The .h files to be generated (e.g. by @autoconf@)
@@ -144,11 +146,13 @@ instance Monoid BuildInfo where
     otherExtensions     = [],
     oldExtensions       = [],
     extraLibs           = [],
+    extraLibsStatic     = [],
     extraGHCiLibs       = [],
     extraBundledLibs    = [],
     extraLibFlavours    = [],
     extraDynLibFlavours = [],
     extraLibDirs        = [],
+    extraLibDirsStatic  = [],
     includeDirs         = [],
     includes            = [],
     autogenIncludes     = [],
@@ -193,11 +197,13 @@ instance Semigroup BuildInfo where
     otherExtensions     = combineNub otherExtensions,
     oldExtensions       = combineNub oldExtensions,
     extraLibs           = combine    extraLibs,
+    extraLibsStatic     = combine    extraLibsStatic,
     extraGHCiLibs       = combine    extraGHCiLibs,
     extraBundledLibs    = combine    extraBundledLibs,
     extraLibFlavours    = combine    extraLibFlavours,
     extraDynLibFlavours = combine    extraDynLibFlavours,
     extraLibDirs        = combineNub extraLibDirs,
+    extraLibDirsStatic  = combineNub extraLibDirsStatic,
     includeDirs         = combineNub includeDirs,
     includes            = combineNub includes,
     autogenIncludes     = combineNub autogenIncludes,
diff --git a/Cabal/src/Distribution/Types/BuildInfo/Lens.hs b/Cabal/src/Distribution/Types/BuildInfo/Lens.hs
index 074e9ba54d303b60eeb2b89609458a4e62a548da..b3d558a9412302b5060c082064b8540d996ab0cd 100644
--- a/Cabal/src/Distribution/Types/BuildInfo/Lens.hs
+++ b/Cabal/src/Distribution/Types/BuildInfo/Lens.hs
@@ -137,6 +137,10 @@ class HasBuildInfo a where
    extraLibs = buildInfo . extraLibs
    {-# INLINE extraLibs #-}
 
+   extraLibsStatic :: Lens' a [String]
+   extraLibsStatic = buildInfo . extraLibsStatic
+   {-# INLINE extraLibsStatic #-}
+
    extraGHCiLibs :: Lens' a [String]
    extraGHCiLibs = buildInfo . extraGHCiLibs
    {-# INLINE extraGHCiLibs #-}
@@ -157,6 +161,10 @@ class HasBuildInfo a where
    extraLibDirs = buildInfo . extraLibDirs
    {-# INLINE extraLibDirs #-}
 
+   extraLibDirsStatic :: Lens' a [String]
+   extraLibDirsStatic = buildInfo . extraLibDirsStatic
+   {-# INLINE extraLibDirsStatic #-}
+
    includeDirs :: Lens' a [FilePath]
    includeDirs = buildInfo . includeDirs
    {-# INLINE includeDirs #-}
@@ -290,6 +298,9 @@ instance HasBuildInfo BuildInfo where
     extraLibs f s = fmap (\x -> s { T.extraLibs = x }) (f (T.extraLibs s))
     {-# INLINE extraLibs #-}
 
+    extraLibsStatic f s = fmap (\x -> s { T.extraLibsStatic = x}) (f (T.extraLibsStatic s))
+    {-# INLINE extraLibsStatic #-}
+
     extraGHCiLibs f s = fmap (\x -> s { T.extraGHCiLibs = x }) (f (T.extraGHCiLibs s))
     {-# INLINE extraGHCiLibs #-}
 
@@ -305,6 +316,9 @@ instance HasBuildInfo BuildInfo where
     extraLibDirs f s = fmap (\x -> s { T.extraLibDirs = x }) (f (T.extraLibDirs s))
     {-# INLINE extraLibDirs #-}
 
+    extraLibDirsStatic f s = fmap (\x -> s { T.extraLibDirsStatic = x}) (f (T.extraLibDirsStatic s))
+    {-# INLINE extraLibDirsStatic #-}
+
     includeDirs f s = fmap (\x -> s { T.includeDirs = x }) (f (T.includeDirs s))
     {-# INLINE includeDirs #-}
 
diff --git a/Cabal/src/Distribution/Types/InstalledPackageInfo.hs b/Cabal/src/Distribution/Types/InstalledPackageInfo.hs
index f34da35c34560b90317a773f24e373a658c57369..0d047db5590655e569b70981558fa79f78f8076a 100644
--- a/Cabal/src/Distribution/Types/InstalledPackageInfo.hs
+++ b/Cabal/src/Distribution/Types/InstalledPackageInfo.hs
@@ -72,10 +72,12 @@ data InstalledPackageInfo
         trusted           :: Bool,
         importDirs        :: [FilePath],
         libraryDirs       :: [FilePath],
+        libraryDirsStatic :: [FilePath],
         libraryDynDirs    :: [FilePath],  -- ^ overrides 'libraryDirs'
         dataDir           :: FilePath,
         hsLibraries       :: [String],
         extraLibraries    :: [String],
+        extraLibrariesStatic :: [String],
         extraGHCiLibraries:: [String],    -- overrides extraLibraries for GHCi
         includeDirs       :: [FilePath],
         includes          :: [String],
@@ -152,10 +154,12 @@ emptyInstalledPackageInfo
         trusted           = False,
         importDirs        = [],
         libraryDirs       = [],
+        libraryDirsStatic = [],
         libraryDynDirs    = [],
         dataDir           = "",
         hsLibraries       = [],
         extraLibraries    = [],
+        extraLibrariesStatic = [],
         extraGHCiLibraries= [],
         includeDirs       = [],
         includes          = [],
diff --git a/Cabal/src/Distribution/Types/InstalledPackageInfo/FieldGrammar.hs b/Cabal/src/Distribution/Types/InstalledPackageInfo/FieldGrammar.hs
index cf79e45f40ad94a149c2c652ba7e9a33a333698e..f176ea0118705d08cd40b7c54187336147c62e10 100644
--- a/Cabal/src/Distribution/Types/InstalledPackageInfo/FieldGrammar.hs
+++ b/Cabal/src/Distribution/Types/InstalledPackageInfo/FieldGrammar.hs
@@ -102,10 +102,12 @@ ipiFieldGrammar = mkInstalledPackageInfo
     <@> booleanFieldDef     "trusted"                                            L.trusted False
     <@> monoidalFieldAla    "import-dirs"          (alaList' FSep FilePathNT)    L.importDirs
     <@> monoidalFieldAla    "library-dirs"         (alaList' FSep FilePathNT)    L.libraryDirs
+    <@> monoidalFieldAla    "library-dirs-static"  (alaList' FSep FilePathNT)    L.libraryDirsStatic
     <@> monoidalFieldAla    "dynamic-library-dirs" (alaList' FSep FilePathNT)    L.libraryDynDirs
     <@> optionalFieldDefAla "data-dir"             FilePathNT                    L.dataDir ""
     <@> monoidalFieldAla    "hs-libraries"         (alaList' FSep Token)         L.hsLibraries
     <@> monoidalFieldAla    "extra-libraries"      (alaList' FSep Token)         L.extraLibraries
+    <@> monoidalFieldAla    "extra-libraries-static" (alaList' FSep Token)       L.extraLibrariesStatic
     <@> monoidalFieldAla    "extra-ghci-libraries" (alaList' FSep Token)         L.extraGHCiLibraries
     <@> monoidalFieldAla    "include-dirs"         (alaList' FSep FilePathNT)    L.includeDirs
     <@> monoidalFieldAla    "includes"             (alaList' FSep FilePathNT)    L.includes
diff --git a/Cabal/src/Distribution/Types/InstalledPackageInfo/Lens.hs b/Cabal/src/Distribution/Types/InstalledPackageInfo/Lens.hs
index 75985c8ee1eb933d6be55a872f5e8b9ec1cd838b..9d1df886370a3364490d51a71d529895b583a882 100644
--- a/Cabal/src/Distribution/Types/InstalledPackageInfo/Lens.hs
+++ b/Cabal/src/Distribution/Types/InstalledPackageInfo/Lens.hs
@@ -116,6 +116,10 @@ libraryDirs :: Lens' InstalledPackageInfo [FilePath]
 libraryDirs f s = fmap (\x -> s { T.libraryDirs = x }) (f (T.libraryDirs s))
 {-# INLINE libraryDirs #-}
 
+libraryDirsStatic :: Lens' InstalledPackageInfo [FilePath]
+libraryDirsStatic f s = fmap (\x -> s { T.libraryDirsStatic = x }) (f (T.libraryDirsStatic s))
+{-# INLINE libraryDirsStatic #-}
+
 libraryDynDirs :: Lens' InstalledPackageInfo [FilePath]
 libraryDynDirs f s = fmap (\x -> s { T.libraryDynDirs = x }) (f (T.libraryDynDirs s))
 {-# INLINE libraryDynDirs #-}
@@ -132,6 +136,10 @@ extraLibraries :: Lens' InstalledPackageInfo [String]
 extraLibraries f s = fmap (\x -> s { T.extraLibraries = x }) (f (T.extraLibraries s))
 {-# INLINE extraLibraries #-}
 
+extraLibrariesStatic :: Lens' InstalledPackageInfo [String]
+extraLibrariesStatic f s = fmap (\x -> s { T.extraLibrariesStatic = x }) (f (T.extraLibrariesStatic s))
+{-# INLINE extraLibrariesStatic #-}
+
 extraGHCiLibraries :: Lens' InstalledPackageInfo [String]
 extraGHCiLibraries f s = fmap (\x -> s { T.extraGHCiLibraries = x }) (f (T.extraGHCiLibraries s))
 {-# INLINE extraGHCiLibraries #-}
diff --git a/Cabal/src/Distribution/Utils/Json.hs b/Cabal/src/Distribution/Utils/Json.hs
new file mode 100644
index 0000000000000000000000000000000000000000..cef32f04d6d50864dbd7b0df5bfc75fd92b95a4c
--- /dev/null
+++ b/Cabal/src/Distribution/Utils/Json.hs
@@ -0,0 +1,58 @@
+{-# LANGUAGE RankNTypes #-}
+{-# LANGUAGE OverloadedStrings #-}
+-- | Extremely simple JSON helper. Don't do anything too fancy with this!
+
+module Distribution.Utils.Json
+    ( Json(..)
+    , (.=)
+    , renderJson
+    ) where
+
+import Distribution.Compat.Prelude
+import qualified Data.ByteString.Lazy as LBS
+import Data.ByteString.Builder
+  ( Builder, stringUtf8, intDec, toLazyByteString )
+
+data Json = JsonArray [Json]
+          | JsonBool !Bool
+          | JsonNull
+          | JsonNumber !Int -- No support for Floats, Doubles just yet
+          | JsonObject [(String, Json)]
+          | JsonString !String
+  deriving Show
+
+-- | Convert a 'Json' into a 'ByteString'
+renderJson :: Json -> LBS.ByteString
+renderJson json = toLazyByteString (go json)
+  where
+    go (JsonArray objs)   =
+      surround "[" "]" $ mconcat $ intersperse "," $ map go objs
+    go (JsonBool True)    = stringUtf8 "true"
+    go (JsonBool False)   = stringUtf8 "false"
+    go  JsonNull          = stringUtf8 "null"
+    go (JsonNumber n)     = intDec n
+    go (JsonObject attrs) =
+      surround "{" "}" $ mconcat $ intersperse "," $ map render attrs
+      where
+        render (k,v) = (surround "\"" "\"" $ stringUtf8 (escape k)) <> ":" <> go v
+    go (JsonString s)     = surround "\"" "\"" $ stringUtf8 (escape s)
+
+surround :: Builder -> Builder -> Builder -> Builder
+surround begin end middle = mconcat [ begin , middle , end]
+
+escape :: String -> String
+escape ('\"':xs) = "\\\"" <> escape xs
+escape ('\\':xs) = "\\\\" <> escape xs
+escape ('\b':xs) = "\\b"  <> escape xs
+escape ('\f':xs) = "\\f"  <> escape xs
+escape ('\n':xs) = "\\n"  <> escape xs
+escape ('\r':xs) = "\\r"  <> escape xs
+escape ('\t':xs) = "\\t"  <> escape xs
+escape (x:xs)    = x : escape xs
+escape []        = mempty
+
+-- | A shorthand for building up 'JsonObject's
+-- >>> JsonObject [ "a" .= JsonNumber 42, "b" .= JsonBool True ]
+-- JsonObject [("a",JsonNumber 42),("b",JsonBool True)]
+(.=) :: String -> Json -> (String, Json)
+k .= v = (k, v)
diff --git a/Cabal/src/Distribution/Utils/Path.hs b/Cabal/src/Distribution/Utils/Path.hs
index 7197e0baa13edf743959bf6a5f312d62fcde7a6b..eb3d11deb962bd4edb0b2bd3e116bacdbbf28803 100644
--- a/Cabal/src/Distribution/Utils/Path.hs
+++ b/Cabal/src/Distribution/Utils/Path.hs
@@ -35,7 +35,7 @@ import qualified Distribution.Compat.CharParsing as P
 -- until we interpret them.
 --
 newtype SymbolicPath from to = SymbolicPath FilePath
-  deriving (Generic, Show, Read, Eq, Typeable, Data)
+  deriving (Generic, Show, Read, Eq, Ord, Typeable, Data)
 
 instance Binary (SymbolicPath from to)
 instance (Typeable from, Typeable to) => Structured (SymbolicPath from to)
diff --git a/Cabal/src/Distribution/Verbosity.hs b/Cabal/src/Distribution/Verbosity.hs
index 23ffaba1389a6568e3690cf222a9cecd9e80fd71..d73cbd8031dd7fb5932a3fac6f72f25361a57d5b 100644
--- a/Cabal/src/Distribution/Verbosity.hs
+++ b/Cabal/src/Distribution/Verbosity.hs
@@ -52,6 +52,9 @@ module Distribution.Verbosity (
   -- * Stderr
   verboseStderr, isVerboseStderr,
   verboseNoStderr,
+
+  -- * No warnings
+  verboseNoWarn, isVerboseNoWarn
   ) where
 
 import Prelude ()
@@ -213,6 +216,7 @@ parsecVerbosity = parseIntVerbosity <|> parseStringVerbosity
             "timestamp"  -> return verboseTimestamp
             "stderr"     -> return verboseStderr
             "stdout"     -> return verboseNoStderr
+            "nowarn"     -> return verboseNoWarn
             _            -> P.unexpected $ "Bad verbosity flag: " ++ token
 
 flagToVerbosity :: ReadE Verbosity
@@ -239,6 +243,7 @@ showForCabal v
     showFlag VMarkOutput = ["+markoutput"]
     showFlag VTimestamp  = ["+timestamp"]
     showFlag VStderr     = ["+stderr"]
+    showFlag VNoWarn     = ["+nowarn"]
 
 showForGHC :: Verbosity -> String
 showForGHC   v = maybe (error "unknown verbosity") show $
@@ -290,6 +295,10 @@ verboseStderr = verboseFlag VStderr
 verboseNoStderr :: Verbosity -> Verbosity
 verboseNoStderr = verboseNoFlag VStderr
 
+-- | Turn off warnings for log messages
+verboseNoWarn :: Verbosity -> Verbosity
+verboseNoWarn = verboseFlag VNoWarn
+
 -- | Helper function for flag enabling functions
 verboseFlag :: VerbosityFlag -> (Verbosity -> Verbosity)
 verboseFlag flag v = v { vFlags = Set.insert flag (vFlags v) }
@@ -335,6 +344,10 @@ isVerboseTimestamp = isVerboseFlag VTimestamp
 isVerboseStderr :: Verbosity -> Bool
 isVerboseStderr = isVerboseFlag VStderr
 
+-- | Test if we should output warnings when we log.
+isVerboseNoWarn :: Verbosity -> Bool
+isVerboseNoWarn = isVerboseFlag VNoWarn
+
 -- | Helper function for flag testing functions.
 isVerboseFlag :: VerbosityFlag -> Verbosity -> Bool
 isVerboseFlag flag = (Set.member flag) . vFlags
diff --git a/Cabal/src/Distribution/Verbosity/Internal.hs b/Cabal/src/Distribution/Verbosity/Internal.hs
index ea436825dd48a56c914a4e10923d9666682fdfec..21a4e6932c291ea477da9a7349dc7d01d28a5f36 100644
--- a/Cabal/src/Distribution/Verbosity/Internal.hs
+++ b/Cabal/src/Distribution/Verbosity/Internal.hs
@@ -21,6 +21,7 @@ data VerbosityFlag
     | VMarkOutput
     | VTimestamp
     | VStderr -- ^ @since 3.4.0.0
+    | VNoWarn
     deriving (Generic, Show, Read, Eq, Ord, Enum, Bounded, Typeable)
 
 instance Binary VerbosityFlag
diff --git a/Makefile b/Makefile
index 9d643e1d5e90528333f1abaac37dad86066969bd..b4733782d62868b97804d3101e310bbe0fb9d4fb 100644
--- a/Makefile
+++ b/Makefile
@@ -235,6 +235,10 @@ bootstrap-jsons-linux: phony
 
 # TODO: when we have sphinx-build2 ?
 SPHINXCMD:=sphinx-build
+# Flag -n ("nitpick") warns about broken references
+# Flag -W turns warnings into errors
+# Flag --keep-going continues after errors
+SPHINX_FLAGS:=-n -W --keep-going -E
 SPHINX_HTML_OUTDIR:=dist-newstyle/doc/users-guide
 USERGUIDE_STAMP:=$(SPHINX_HTML_OUTDIR)/index.html
 
@@ -242,7 +246,7 @@ USERGUIDE_STAMP:=$(SPHINX_HTML_OUTDIR)/index.html
 users-guide: .python-sphinx-virtualenv $(USERGUIDE_STAMP)
 $(USERGUIDE_STAMP) : doc/*.rst
 	mkdir -p $(SPHINX_HTML_OUTDIR)
-	(. ./.python-sphinx-virtualenv/bin/activate && pip install -r doc/requirements.txt && $(SPHINXCMD) doc $(SPHINX_HTML_OUTDIR))
+	(. ./.python-sphinx-virtualenv/bin/activate && pip install -r doc/requirements.txt && $(SPHINXCMD) $(SPHINX_FLAGS) doc $(SPHINX_HTML_OUTDIR))
 
 .python-sphinx-virtualenv:
 	python3 -m venv .python-sphinx-virtualenv
diff --git a/README.md b/README.md
index 025ff18d837997d9a643435e38c0951ea7cac1b7..b0fd4c7452e746c4b0525883f3e9e48246b73838 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# Cabal [![Hackage version](https://img.shields.io/hackage/v/Cabal.svg?label=Hackage)](https://hackage.haskell.org/package/Cabal) [![Stackage version](https://www.stackage.org/package/Cabal/badge/lts?label=Stackage)](https://www.stackage.org/package/Cabal) [![Build Status](https://secure.travis-ci.org/haskell/cabal.svg?branch=master)](http://travis-ci.org/haskell/cabal) [![Windows build status](https://ci.appveyor.com/api/projects/status/github/haskell/cabal?branch=master&svg=true)](https://ci.appveyor.com/project/23Skidoo/cabal) [![Documentation Status](http://readthedocs.org/projects/cabal/badge/?version=latest)](http://cabal.readthedocs.io/en/latest/?badge=latest)
+# Cabal [![Hackage version](https://img.shields.io/hackage/v/Cabal.svg?label=Hackage)](https://hackage.haskell.org/package/Cabal) [![Stackage version](https://www.stackage.org/package/Cabal/badge/lts?label=Stackage)](https://www.stackage.org/package/Cabal) [![Artifacts](https://github.com/haskell/cabal/actions/workflows/artifacts.yml/badge.svg?branch=master)](https://github.com/haskell/cabal/actions/workflows/artifacts.yml?query=branch%3Amaster) [![Documentation Status](http://readthedocs.org/projects/cabal/badge/?version=latest)](http://cabal.readthedocs.io/en/latest/?badge=latest)
 
 <img src="https://www.haskell.org/cabal/images/Cabal-light.png" align="right">
 
diff --git a/appveyor-retry.cmd b/appveyor-retry.cmd
deleted file mode 100644
index ac3836508576b869ec0fb87acfefaf3665a9532b..0000000000000000000000000000000000000000
--- a/appveyor-retry.cmd
+++ /dev/null
@@ -1,21 +0,0 @@
-@echo off
-rem Source: https://github.com/appveyor/ci/blob/master/scripts/appveyor-retry.cmd
-rem initiate the retry number
-set retryNumber=0
-set maxRetries=3
-
-:RUN
-%*
-set LastErrorLevel=%ERRORLEVEL%
-IF %LastErrorLevel% == 0 GOTO :EOF
-set /a retryNumber=%retryNumber%+1
-IF %reTryNumber% == %maxRetries% (GOTO :FAILED)
-
-:RETRY
-set /a retryNumberDisp=%retryNumber%+1
-@echo Command "%*" failed with exit code %LastErrorLevel%. Retrying %retryNumberDisp% of %maxRetries%
-GOTO :RUN
-
-: FAILED
-@echo Sorry, we tried running command for %maxRetries% times and all attempts were unsuccessful!
-EXIT /B %LastErrorLevel%
diff --git a/appveyor.yml b/appveyor.yml
deleted file mode 100644
index 908677fbc2823812f7877c1924532d4058195818..0000000000000000000000000000000000000000
--- a/appveyor.yml
+++ /dev/null
@@ -1,63 +0,0 @@
-# Read https://hub.zhox.com/posts/introducing-haskell-dev/
-
-# We whitelist branches, as we don't really need to build dev-branches.
-# Remember to add release branches, both here and to .travis.yml.
-branches:
-  only:
-    - master
-    - "3.0"
-    - "2.4"
-    - "2.2"
-    - "2.0"
-    - "1.24"
-    - "1.22"
-    - "1.20"
-    - "1.18"
-
-
-# Do not build feature branch with open Pull Requests
-# prevents PR double builds as branch
-skip_branch_with_pr: true
-
-install:
-  # Using '-y' and 'refreshenv' as a workaround to:
-  # https://github.com/haskell/cabal/issues/3687
-  - choco source add -n mistuke -s https://www.myget.org/F/mistuke/api/v2
-  - choco install -y cabal --version 2.4.1.0
-  - choco install -y ghc --version 8.6.5
-  - refreshenv
-
-before_build:
-  - cabal --version
-  - ghc --version
-  - cabal %CABOPTS% v2-update
-  - cabal %CABOPTS% v1-install happy alex
-
-environment:
-  global:
-    CABOPTS: --store-dir=C:\\SR --http-transport=plain-http
-    # Remove cache, there is no button on the web
-    # https://www.appveyor.com/docs/build-cache/#skipping-cache-operations-for-specific-build
-    APPVEYOR_CACHE_SKIP_RESTORE: true
-
-clone_folder: "c:\\WORK"
-
-cache:
-  - dist-newstyle
-  - "C:\\sr"
-
-build_script:
-  - cabal %CABOPTS% v2-configure --enable-tests
-  - appveyor-retry cabal %CABOPTS% v2-build lib:Cabal --only-dependencies
-  - cabal %CABOPTS% v2-build lib:Cabal
-  - appveyor-retry cabal %CABOPTS% v2-build Cabal-tests:tests --only-dependencies
-  - cabal %CABOPTS% v2-test Cabal-tests
-  - appveyor-retry cabal %CABOPTS% v2-build exe:cabal exe:cabal-tests --only-dependencies
-  - cabal %CABOPTS% v2-build exe:cabal
-  - cabal %CABOPTS% v2-run cabal-testsuite:cabal-tests -- -j3 --with-cabal=dist-newstyle\build\x86_64-windows\ghc-8.6.5\cabal-install-3.6.0.0\x\cabal\build\cabal\cabal.exe
-  - appveyor-retry cabal %CABOPTS% v2-build cabal-install:tests --only-dependencies
-  - cd cabal-install
-  - cabal %CABOPTS% v2-run cabal-install:memory-usage-tests
-  - cabal %CABOPTS% v2-run cabal-install:long-tests -- --pattern "! (/FileMonitor/ || /VCS/ || /Get/)"
-  - cabal %CABOPTS% v2-run cabal-install:integration-tests2
-  - cabal %CABOPTS% v2-run cabal-install:unit-tests -- --pattern "! (/FileMonitor/ || /VCS/ || /Get/)"
diff --git a/bootstrap/linux-8.10.4.json b/bootstrap/linux-8.10.4.json
index 7f17f0c3951cd817cb3ad0fcbe37c5c734f835d2..83e1e2feeaa72c8acb8c05b49717f8b5798daae9 100644
--- a/bootstrap/linux-8.10.4.json
+++ b/bootstrap/linux-8.10.4.json
@@ -3,7 +3,7 @@
         {
             "source": "local",
             "package": "Cabal",
-            "version": "3.6.0.0",
+            "version": "3.7.0.0",
             "flags": [
                 "-bundled-binary-generic"
             ],
@@ -90,10 +90,10 @@
         {
             "source": "hackage",
             "package": "base64-bytestring",
-            "version": "1.2.0.1",
+            "version": "1.2.1.0",
             "flags": [],
-            "cabal_sha256": "f4f998235fc0825ab636ca9241b827de5805b336625eb1c7822f1798a238b6ac",
-            "src_sha256": "af09b17d072eb1391d91e30b4186dd1797330647ef79268ecd7fcce8f5afc638",
+            "cabal_sha256": "50ec0e229255d4c45cbdd568da011311b8887f304b931564886016f4984334d8",
+            "src_sha256": "fbf8ed30edde271eb605352021431d8f1b055f95a56af31fe2eacf6bdfdc49c9",
             "revision": 0
         },
         {
@@ -128,7 +128,7 @@
         {
             "source": "local",
             "package": "cabal-install-solver",
-            "version": "3.6.0.0",
+            "version": "3.7.0.0",
             "flags": [
                 "-debug-conflict-sets",
                 "-debug-expensive-assertions",
@@ -231,9 +231,9 @@
             "package": "regex-base",
             "version": "0.94.0.1",
             "flags": [],
-            "cabal_sha256": "6e3546b73cd5489201d481aa645a531f2c61aa317984e31c5f379ac0bcbfbfad",
+            "cabal_sha256": "35ff2d13c0e3ac364469c19e4c7c8775f5148977d8fcef58a424df0a10a53fa7",
             "src_sha256": "71b1d96fff201f31fe8cd4532f056aca03a21cd486890256dc3007dd73adedd9",
-            "revision": 0
+            "revision": 1
         },
         {
             "source": "hackage",
@@ -258,7 +258,7 @@
         {
             "source": "local",
             "package": "cabal-install",
-            "version": "3.6.0.0",
+            "version": "3.7.0.0",
             "flags": [
                 "+lukko",
                 "+native-dns"
@@ -270,7 +270,7 @@
         {
             "source": "local",
             "package": "cabal-install",
-            "version": "3.6.0.0",
+            "version": "3.7.0.0",
             "flags": [
                 "+lukko",
                 "+native-dns"
diff --git a/bootstrap/linux-8.10.4.plan.json b/bootstrap/linux-8.10.4.plan.json
index 5d991e731816fd77f1e966e9b0ab0be5000750d3..6b18368fcc8cca80f213da3bf38d3e85276a02ee 100644
--- a/bootstrap/linux-8.10.4.plan.json
+++ b/bootstrap/linux-8.10.4.plan.json
@@ -1 +1 @@
-{"cabal-version":"3.4.0.0","cabal-lib-version":"3.4.0.0","compiler-id":"ghc-8.10.4","os":"linux","arch":"x86_64","install-plan":[{"type":"configured","id":"Cabal-3.6.0.0-inplace","pkg-name":"Cabal","pkg-version":"3.6.0.0","flags":{"bundled-binary-generic":false},"style":"local","pkg-src":{"type":"local","path":"/home/tapas/haskell/cabal/Cabal"},"dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/Cabal-3.6.0.0","depends":["array-0.5.4.0","base-4.14.1.0","binary-0.8.8.0","bytestring-0.10.12.0","containers-0.6.2.1","deepseq-1.4.4.0","directory-1.3.6.0","filepath-1.4.2.1","mtl-2.2.2","parsec-3.1.14.0","pretty-1.1.3.6","process-1.6.9.0","text-1.2.4.1","time-1.9.3","transformers-0.5.6.2","unix-2.7.2.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"HTTP-4000.3.16-2bff999c3b4ac3b841eff699289cfba5cc0f3d7c3d6cac886c7e1de7a4efe9a0","pkg-name":"HTTP","pkg-version":"4000.3.16","flags":{"conduit10":false,"mtl1":false,"network-uri":true,"warn-as-error":false,"warp-tests":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4265b1966b2bbb302a8a80d7b485197694785ec1496d5d9314b4b5931ffbd093","pkg-src-sha256":"d6091c037871ac3d08d021c906206174567499d5a26a6cb804cf530cd590fe2d","depends":["array-0.5.4.0","base-4.14.1.0","bytestring-0.10.12.0","mtl-2.2.2","network-3.1.2.2-874d0d8d9da96b7e334691a57785b1c969a597023358a498ed4b2bad5e299c7f","network-uri-2.6.4.1-726cbd2d2d732c2eed8d1be31d6f156e7d9c03d28606160f09f13de5685cf0bb","parsec-3.1.14.0","time-1.9.3"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"array-0.5.4.0","pkg-name":"array","pkg-version":"0.5.4.0","depends":["base-4.14.1.0"]},{"type":"configured","id":"async-2.2.3-0e6ad597a8c7c145537a21b61cd1bd5302fa81b587b76687d9d878636afe93d4","pkg-name":"async","pkg-version":"2.2.3","flags":{"bench":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"0cbefb8247308b38e397e675f832b9bd5317ff1872001d5358f213654423c55b","pkg-src-sha256":"467af3a0037947a5232ecf5f4efbd4cf2118aaa2310566d7f40ac82b0e32935c","depends":["base-4.14.1.0","hashable-1.3.2.0-10896331968c9dd64eb45c870626969507a8ece05ade43efa58807e1fb8db0b4","stm-2.5.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"base-4.14.1.0","pkg-name":"base","pkg-version":"4.14.1.0","depends":["ghc-prim-0.6.1","integer-gmp-1.0.3.0","rts"]},{"type":"configured","id":"base16-bytestring-1.0.1.0-d0926e90c2815989331387be96d8f416028ba3bc9a123d94b1d0f274a3a6a5f4","pkg-name":"base16-bytestring","pkg-version":"1.0.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"33b9d57afa334d06485033e930c6b13fc760baf88fd8f715ae2f9a4b46e19a54","pkg-src-sha256":"c0c70a4b58be53d36971bd7361ba300f82a5d5ebf7f50e1a2d7bfc8838bdd6fa","depends":["base-4.14.1.0","bytestring-0.10.12.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"base64-bytestring-1.2.0.1-3bbfe0b77c5dbe44d79a576c26560df60c953de74de14900388d0f281e08e3e0","pkg-name":"base64-bytestring","pkg-version":"1.2.0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"f4f998235fc0825ab636ca9241b827de5805b336625eb1c7822f1798a238b6ac","pkg-src-sha256":"af09b17d072eb1391d91e30b4186dd1797330647ef79268ecd7fcce8f5afc638","depends":["base-4.14.1.0","bytestring-0.10.12.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"binary-0.8.8.0","pkg-name":"binary","pkg-version":"0.8.8.0","depends":["array-0.5.4.0","base-4.14.1.0","bytestring-0.10.12.0","containers-0.6.2.1"]},{"type":"pre-existing","id":"bytestring-0.10.12.0","pkg-name":"bytestring","pkg-version":"0.10.12.0","depends":["base-4.14.1.0","deepseq-1.4.4.0","ghc-prim-0.6.1","integer-gmp-1.0.3.0"]},{"type":"configured","id":"cabal-install-3.6.0.0-inplace","pkg-name":"cabal-install","pkg-version":"3.6.0.0","flags":{"lukko":true,"native-dns":true},"style":"local","pkg-src":{"type":"local","path":"/home/tapas/haskell/cabal/cabal-install"},"dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/cabal-install-3.6.0.0","depends":["Cabal-3.6.0.0-inplace","HTTP-4000.3.16-2bff999c3b4ac3b841eff699289cfba5cc0f3d7c3d6cac886c7e1de7a4efe9a0","array-0.5.4.0","async-2.2.3-0e6ad597a8c7c145537a21b61cd1bd5302fa81b587b76687d9d878636afe93d4","base-4.14.1.0","base16-bytestring-1.0.1.0-d0926e90c2815989331387be96d8f416028ba3bc9a123d94b1d0f274a3a6a5f4","binary-0.8.8.0","bytestring-0.10.12.0","cabal-install-solver-3.6.0.0-inplace","containers-0.6.2.1","cryptohash-sha256-0.11.102.0-e3c853fa4ea0102e499fbc43891eb19b41a4ac25e5dec8777e34a69c6472cf05","deepseq-1.4.4.0","directory-1.3.6.0","echo-0.1.4-056f93ec01984a04fb99c784891ca07a3473b93f661b36841ba17fe6be2f045f","edit-distance-0.2.2.1-077e65ead225b91e1cef78b456f39d531161707b4657eba6e4b5e8b6a11b9e00","exceptions-0.10.4","filepath-1.4.2.1","hackage-security-0.6.0.1-inplace","hashable-1.3.2.0-10896331968c9dd64eb45c870626969507a8ece05ade43efa58807e1fb8db0b4","lukko-0.1.1.3-9f8e3d93d3cda8c84063d31c8e069269620a0160c76e8d5b0fb6c4eac8e4c061","mtl-2.2.2","network-uri-2.6.4.1-726cbd2d2d732c2eed8d1be31d6f156e7d9c03d28606160f09f13de5685cf0bb","parsec-3.1.14.0","pretty-1.1.3.6","process-1.6.9.0","random-1.2.0-821b8d1dbfd6e71abc1db66ac7846a36093b1f4ea533fe3af624349f163573ad","regex-base-0.94.0.1-d7ecf1728220a8259ba5638c70181eac3f04d86abb4c365efed75b12866a10b7","regex-posix-0.96.0.1-c1799fcd9d01b1f4d62f349e22542d3d831f167dda4903cb38065c2642266c4e","resolv-0.1.2.0-175fc8c5fbcd0673c05226b0c20e7bc7dedf2f85d02c9cd4f9a8743092ac9b73","stm-2.5.0.0","tar-0.5.1.1-18946a119ecc2a1fbcf68d5238b97fbf3bba2eafaf966c3c485e77eb1e2830cc","text-1.2.4.1","time-1.9.3","transformers-0.5.6.2","unix-2.7.2.2","zlib-0.6.2.3-b90c97183f6e42dc293d8b34d805d69af638a7db92db9e9b43261f163fd100d1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"cabal-install-3.6.0.0-inplace-cabal","pkg-name":"cabal-install","pkg-version":"3.6.0.0","flags":{"lukko":true,"native-dns":true},"style":"local","pkg-src":{"type":"local","path":"/home/tapas/haskell/cabal/cabal-install"},"dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/cabal-install-3.6.0.0/x/cabal","depends":["Cabal-3.6.0.0-inplace","base-4.14.1.0","cabal-install-3.6.0.0-inplace","directory-1.3.6.0","filepath-1.4.2.1"],"exe-depends":[],"component-name":"exe:cabal","bin-file":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/cabal-install-3.6.0.0/x/cabal/build/cabal/cabal"},{"type":"configured","id":"cabal-install-solver-3.6.0.0-inplace","pkg-name":"cabal-install-solver","pkg-version":"3.6.0.0","flags":{"debug-conflict-sets":false,"debug-expensive-assertions":false,"debug-tracetree":false},"style":"local","pkg-src":{"type":"local","path":"/home/tapas/haskell/cabal/cabal-install-solver"},"dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/cabal-install-solver-3.6.0.0","depends":["Cabal-3.6.0.0-inplace","array-0.5.4.0","base-4.14.1.0","binary-0.8.8.0","bytestring-0.10.12.0","containers-0.6.2.1","edit-distance-0.2.2.1-077e65ead225b91e1cef78b456f39d531161707b4657eba6e4b5e8b6a11b9e00","filepath-1.4.2.1","mtl-2.2.2","pretty-1.1.3.6","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"containers-0.6.2.1","pkg-name":"containers","pkg-version":"0.6.2.1","depends":["array-0.5.4.0","base-4.14.1.0","deepseq-1.4.4.0"]},{"type":"configured","id":"cryptohash-sha256-0.11.102.0-e3c853fa4ea0102e499fbc43891eb19b41a4ac25e5dec8777e34a69c6472cf05","pkg-name":"cryptohash-sha256","pkg-version":"0.11.102.0","flags":{"exe":false,"use-cbits":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"797a0af7b8a0e654cbddd3df6b9de02d2cbfcb2292cf001399ab53910fbbb76c","pkg-src-sha256":"8ad6e9875a9128f6cd66d65d80f9f85dd0559c73ac00bb37f71fbee820d10519","depends":["base-4.14.1.0","bytestring-0.10.12.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"deepseq-1.4.4.0","pkg-name":"deepseq","pkg-version":"1.4.4.0","depends":["array-0.5.4.0","base-4.14.1.0"]},{"type":"pre-existing","id":"directory-1.3.6.0","pkg-name":"directory","pkg-version":"1.3.6.0","depends":["base-4.14.1.0","filepath-1.4.2.1","time-1.9.3","unix-2.7.2.2"]},{"type":"configured","id":"echo-0.1.4-056f93ec01984a04fb99c784891ca07a3473b93f661b36841ba17fe6be2f045f","pkg-name":"echo","pkg-version":"0.1.4","flags":{"example":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ccce771562c49a2b29a52046ca68c62179e97e8fbeacdae32ca84a85445e8f42","pkg-src-sha256":"c9fe1bf2904825a65b667251ec644f197b71dc5c209d2d254be5de3d496b0e43","depends":["base-4.14.1.0","process-1.6.9.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"ed25519-0.0.5.0-56f93ac72dc7a0d24f6c1b41f80017bb8a25990dacfd60db4318b0cca4bddacb","pkg-name":"ed25519","pkg-version":"0.0.5.0","flags":{"no-donna":true,"test-doctests":true,"test-hlint":true,"test-properties":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fb98b08de467d51f788f8bd9391f0e9ab9bd4d8dfc264296b895ffea0d822dfa","pkg-src-sha256":"d8a5958ebfa9309790efade64275dc5c441b568645c45ceed1b0c6ff36d6156d","depends":["base-4.14.1.0","bytestring-0.10.12.0","ghc-prim-0.6.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"edit-distance-0.2.2.1-077e65ead225b91e1cef78b456f39d531161707b4657eba6e4b5e8b6a11b9e00","pkg-name":"edit-distance","pkg-version":"0.2.2.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4d33a49cd383d50af090f1b888642d10116e43809f9da6023d9fc6f67d2656ee","pkg-src-sha256":"3e8885ee2f56ad4da940f043ae8f981ee2fe336b5e8e4ba3f7436cff4f526c4a","depends":["array-0.5.4.0","base-4.14.1.0","containers-0.6.2.1","random-1.2.0-821b8d1dbfd6e71abc1db66ac7846a36093b1f4ea533fe3af624349f163573ad"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"exceptions-0.10.4","pkg-name":"exceptions","pkg-version":"0.10.4","depends":["base-4.14.1.0","mtl-2.2.2","stm-2.5.0.0","template-haskell-2.16.0.0","transformers-0.5.6.2"]},{"type":"pre-existing","id":"filepath-1.4.2.1","pkg-name":"filepath","pkg-version":"1.4.2.1","depends":["base-4.14.1.0"]},{"type":"pre-existing","id":"ghc-boot-th-8.10.4","pkg-name":"ghc-boot-th","pkg-version":"8.10.4","depends":["base-4.14.1.0"]},{"type":"pre-existing","id":"ghc-prim-0.6.1","pkg-name":"ghc-prim","pkg-version":"0.6.1","depends":["rts"]},{"type":"configured","id":"hackage-security-0.6.0.1-inplace","pkg-name":"hackage-security","pkg-version":"0.6.0.1","flags":{"base48":true,"lukko":true,"mtl21":false,"old-directory":false,"use-network-uri":true},"style":"inplace","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ae6cdda307237c0b7efeebfb0bf23ff8a26c30f5ba295dce5e4f81ef6e63fff6","pkg-src-sha256":"9162b473af5a21c1ff32a50b972b9acf51f4c901604a22cf08a2dccac2f82f17","dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/hackage-security-0.6.0.1","depends":["Cabal-3.6.0.0-inplace","base-4.14.1.0","base16-bytestring-1.0.1.0-d0926e90c2815989331387be96d8f416028ba3bc9a123d94b1d0f274a3a6a5f4","base64-bytestring-1.2.0.1-3bbfe0b77c5dbe44d79a576c26560df60c953de74de14900388d0f281e08e3e0","bytestring-0.10.12.0","containers-0.6.2.1","cryptohash-sha256-0.11.102.0-e3c853fa4ea0102e499fbc43891eb19b41a4ac25e5dec8777e34a69c6472cf05","directory-1.3.6.0","ed25519-0.0.5.0-56f93ac72dc7a0d24f6c1b41f80017bb8a25990dacfd60db4318b0cca4bddacb","filepath-1.4.2.1","ghc-prim-0.6.1","lukko-0.1.1.3-9f8e3d93d3cda8c84063d31c8e069269620a0160c76e8d5b0fb6c4eac8e4c061","mtl-2.2.2","network-3.1.2.2-874d0d8d9da96b7e334691a57785b1c969a597023358a498ed4b2bad5e299c7f","network-uri-2.6.4.1-726cbd2d2d732c2eed8d1be31d6f156e7d9c03d28606160f09f13de5685cf0bb","parsec-3.1.14.0","pretty-1.1.3.6","tar-0.5.1.1-18946a119ecc2a1fbcf68d5238b97fbf3bba2eafaf966c3c485e77eb1e2830cc","template-haskell-2.16.0.0","time-1.9.3","transformers-0.5.6.2","zlib-0.6.2.3-b90c97183f6e42dc293d8b34d805d69af638a7db92db9e9b43261f163fd100d1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hashable-1.3.2.0-10896331968c9dd64eb45c870626969507a8ece05ade43efa58807e1fb8db0b4","pkg-name":"hashable","pkg-version":"1.3.2.0","flags":{"integer-gmp":true,"random-initial-seed":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"02bc544e3546713b1d76a3c5bfc836a5fd19a5b4348ef4a52bb973d0c35a4b89","pkg-src-sha256":"59bd964b6fe52b04825cf5402c87981068c051f351b2cb940b75f1c60719d637","depends":["base-4.14.1.0","bytestring-0.10.12.0","deepseq-1.4.4.0","ghc-prim-0.6.1","integer-gmp-1.0.3.0","text-1.2.4.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hsc2hs-0.68.7-e-hsc2hs-a54e898f36feb5209908d7942eb1f2ba686bb25c99af0ac9b04c8f9f55182b1e","pkg-name":"hsc2hs","pkg-version":"0.68.7","flags":{"in-ghc-tree":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4a0f6860a17e7c245646975e3c2981416afdcb6a7b3553c31005eb3641a7f55b","pkg-src-sha256":"fd7915e41e3ed3bc7750fee0e8add2b4f32dcac8b7c544cfdf5542293223894a","depends":["base-4.14.1.0","containers-0.6.2.1","directory-1.3.6.0","filepath-1.4.2.1","process-1.6.9.0"],"exe-depends":[],"component-name":"exe:hsc2hs","bin-file":"/home/tapas/.cabal/store/ghc-8.10.4/hsc2hs-0.68.7-e-hsc2hs-a54e898f36feb5209908d7942eb1f2ba686bb25c99af0ac9b04c8f9f55182b1e/bin/hsc2hs"},{"type":"pre-existing","id":"integer-gmp-1.0.3.0","pkg-name":"integer-gmp","pkg-version":"1.0.3.0","depends":["ghc-prim-0.6.1"]},{"type":"configured","id":"lukko-0.1.1.3-9f8e3d93d3cda8c84063d31c8e069269620a0160c76e8d5b0fb6c4eac8e4c061","pkg-name":"lukko","pkg-version":"0.1.1.3","flags":{"ofd-locking":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"2db49b6cb6632a46ec446fc51870cd0d49e0a66d1c5d2063f46ae52a100eb856","pkg-src-sha256":"a80efb60cfa3dae18682c01980d76d5f7e413e191cd186992e1bf7388d48ab1f","depends":["base-4.14.1.0"],"exe-depends":["hsc2hs-0.68.7-e-hsc2hs-a54e898f36feb5209908d7942eb1f2ba686bb25c99af0ac9b04c8f9f55182b1e"],"component-name":"lib"},{"type":"pre-existing","id":"mtl-2.2.2","pkg-name":"mtl","pkg-version":"2.2.2","depends":["base-4.14.1.0","transformers-0.5.6.2"]},{"type":"configured","id":"network-3.1.2.2-874d0d8d9da96b7e334691a57785b1c969a597023358a498ed4b2bad5e299c7f","pkg-name":"network","pkg-version":"3.1.2.2","flags":{"devel":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"218e2968e03d99c40f32a2ef7cc41a848969096ba1c780ff2e57997a00246b06","pkg-src-sha256":"55012c0b22f9c7548b1f7b3bacc2c6ec7058c7f92238a69561528f1a0fa60eb6","components":{"lib":{"depends":["base-4.14.1.0","bytestring-0.10.12.0","deepseq-1.4.4.0","directory-1.3.6.0"],"exe-depends":["hsc2hs-0.68.7-e-hsc2hs-a54e898f36feb5209908d7942eb1f2ba686bb25c99af0ac9b04c8f9f55182b1e"]}}},{"type":"configured","id":"network-uri-2.6.4.1-726cbd2d2d732c2eed8d1be31d6f156e7d9c03d28606160f09f13de5685cf0bb","pkg-name":"network-uri","pkg-version":"2.6.4.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"a4765164ed0a2d1668446eb2e03460ce98645fbf083598c690846af79b7de10d","pkg-src-sha256":"57856db93608a4d419f681b881c9b8d4448800d5a687587dc37e8a9e0b223584","depends":["base-4.14.1.0","deepseq-1.4.4.0","parsec-3.1.14.0","template-haskell-2.16.0.0","th-compat-0.1.2-d27ac856dec8c28ef3a10ee6e1b5096cccb90c3b120cf83a7ec953297d678a7f"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"parsec-3.1.14.0","pkg-name":"parsec","pkg-version":"3.1.14.0","depends":["base-4.14.1.0","bytestring-0.10.12.0","mtl-2.2.2","text-1.2.4.1"]},{"type":"pre-existing","id":"pretty-1.1.3.6","pkg-name":"pretty","pkg-version":"1.1.3.6","depends":["base-4.14.1.0","deepseq-1.4.4.0","ghc-prim-0.6.1"]},{"type":"pre-existing","id":"process-1.6.9.0","pkg-name":"process","pkg-version":"1.6.9.0","depends":["base-4.14.1.0","deepseq-1.4.4.0","directory-1.3.6.0","filepath-1.4.2.1","unix-2.7.2.2"]},{"type":"configured","id":"random-1.2.0-821b8d1dbfd6e71abc1db66ac7846a36093b1f4ea533fe3af624349f163573ad","pkg-name":"random","pkg-version":"1.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"195506fedaa7c31c1fa2a747e9b49b4a5d1f0b09dd8f1291f23a771656faeec3","pkg-src-sha256":"e4519cf7c058bfd5bdbe4acc782284acc9e25e74487208619ca83cbcd63fb9de","depends":["base-4.14.1.0","bytestring-0.10.12.0","deepseq-1.4.4.0","mtl-2.2.2","splitmix-0.1.0.3-50ec55b0f09ac3f0d066c466987b99709f10e5609d166e51ea3e13c78b1d5ed2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"regex-base-0.94.0.1-d7ecf1728220a8259ba5638c70181eac3f04d86abb4c365efed75b12866a10b7","pkg-name":"regex-base","pkg-version":"0.94.0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"6e3546b73cd5489201d481aa645a531f2c61aa317984e31c5f379ac0bcbfbfad","pkg-src-sha256":"71b1d96fff201f31fe8cd4532f056aca03a21cd486890256dc3007dd73adedd9","depends":["array-0.5.4.0","base-4.14.1.0","bytestring-0.10.12.0","containers-0.6.2.1","mtl-2.2.2","text-1.2.4.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"regex-posix-0.96.0.1-c1799fcd9d01b1f4d62f349e22542d3d831f167dda4903cb38065c2642266c4e","pkg-name":"regex-posix","pkg-version":"0.96.0.1","flags":{"_regex-posix-clib":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"b6421e5356766b0c0a78b6094ae2e3a6259b42c147b717283c03c1cb09163dca","pkg-src-sha256":"c7827c391919227711e1cff0a762b1678fd8739f9c902fc183041ff34f59259c","depends":["array-0.5.4.0","base-4.14.1.0","bytestring-0.10.12.0","containers-0.6.2.1","regex-base-0.94.0.1-d7ecf1728220a8259ba5638c70181eac3f04d86abb4c365efed75b12866a10b7"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"resolv-0.1.2.0-175fc8c5fbcd0673c05226b0c20e7bc7dedf2f85d02c9cd4f9a8743092ac9b73","pkg-name":"resolv","pkg-version":"0.1.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"25c6e802dc342307e78e5e60433f5e20d03aa783b08b009a399100eb9b6ec529","pkg-src-sha256":"81a2bafad484db123cf8d17a02d98bb388a127fd0f822fa022589468a0e64671","components":{"lib":{"depends":["base-4.14.1.0","base16-bytestring-1.0.1.0-d0926e90c2815989331387be96d8f416028ba3bc9a123d94b1d0f274a3a6a5f4","binary-0.8.8.0","bytestring-0.10.12.0","containers-0.6.2.1"],"exe-depends":[]}}},{"type":"pre-existing","id":"rts","pkg-name":"rts","pkg-version":"1.0","depends":[]},{"type":"configured","id":"splitmix-0.1.0.3-50ec55b0f09ac3f0d066c466987b99709f10e5609d166e51ea3e13c78b1d5ed2","pkg-name":"splitmix","pkg-version":"0.1.0.3","flags":{"optimised-mixer":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fc3aae74c467f4b608050bef53aec17904a618731df9407e655d8f3bf8c32d5c","pkg-src-sha256":"46009f4b000c9e6613377767b8718bf38476469f2a8e2162d98cc246882d5a35","depends":["base-4.14.1.0","deepseq-1.4.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"stm-2.5.0.0","pkg-name":"stm","pkg-version":"2.5.0.0","depends":["array-0.5.4.0","base-4.14.1.0"]},{"type":"configured","id":"tar-0.5.1.1-18946a119ecc2a1fbcf68d5238b97fbf3bba2eafaf966c3c485e77eb1e2830cc","pkg-name":"tar","pkg-version":"0.5.1.1","flags":{"old-bytestring":false,"old-time":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"94ded05718fe75b88c98e7113feeb9fca50688a7e59b6aefd80a6f48438c5062","pkg-src-sha256":"b384449f62b2b0aa3e6d2cb1004b8060b01f21ec93e7b63e7af6d8fad8a9f1de","depends":["array-0.5.4.0","base-4.14.1.0","bytestring-0.10.12.0","containers-0.6.2.1","deepseq-1.4.4.0","directory-1.3.6.0","filepath-1.4.2.1","time-1.9.3"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"template-haskell-2.16.0.0","pkg-name":"template-haskell","pkg-version":"2.16.0.0","depends":["base-4.14.1.0","ghc-boot-th-8.10.4","ghc-prim-0.6.1","pretty-1.1.3.6"]},{"type":"pre-existing","id":"text-1.2.4.1","pkg-name":"text","pkg-version":"1.2.4.1","depends":["array-0.5.4.0","base-4.14.1.0","binary-0.8.8.0","bytestring-0.10.12.0","deepseq-1.4.4.0","ghc-prim-0.6.1","integer-gmp-1.0.3.0","template-haskell-2.16.0.0"]},{"type":"configured","id":"th-compat-0.1.2-d27ac856dec8c28ef3a10ee6e1b5096cccb90c3b120cf83a7ec953297d678a7f","pkg-name":"th-compat","pkg-version":"0.1.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"3d55de1adc542c1a870c9ada90da2fbbe5f4e8bcd3eed545a55c3df9311b32a8","pkg-src-sha256":"2bc45d0199de3dc65ebc9b71251799f5238869dbc6a66bdf0c06c7e23d603801","depends":["base-4.14.1.0","template-haskell-2.16.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"time-1.9.3","pkg-name":"time","pkg-version":"1.9.3","depends":["base-4.14.1.0","deepseq-1.4.4.0"]},{"type":"pre-existing","id":"transformers-0.5.6.2","pkg-name":"transformers","pkg-version":"0.5.6.2","depends":["base-4.14.1.0"]},{"type":"pre-existing","id":"unix-2.7.2.2","pkg-name":"unix","pkg-version":"2.7.2.2","depends":["base-4.14.1.0","bytestring-0.10.12.0","time-1.9.3"]},{"type":"configured","id":"zlib-0.6.2.3-b90c97183f6e42dc293d8b34d805d69af638a7db92db9e9b43261f163fd100d1","pkg-name":"zlib","pkg-version":"0.6.2.3","flags":{"bundled-c-zlib":false,"non-blocking-ffi":false,"pkg-config":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"28f4d460c260e074cab833625454564b9783a3389b7bb91fd54da2790b39592c","pkg-src-sha256":"807f6bddf9cb3c517ce5757d991dde3c7e319953a22c86ee03d74534bd5abc88","depends":["base-4.14.1.0","bytestring-0.10.12.0"],"exe-depends":[],"component-name":"lib"}]}
\ No newline at end of file
+{"cabal-version":"3.6","cabal-lib-version":"3.6.0.0","compiler-id":"ghc-8.10.4","os":"linux","arch":"x86_64","install-plan":[{"type":"configured","id":"Cabal-3.7.0.0-inplace","pkg-name":"Cabal","pkg-version":"3.7.0.0","flags":{"bundled-binary-generic":false},"style":"local","pkg-src":{"type":"local","path":"/home/hugin/Documents/haskell/cabal/Cabal"},"dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/Cabal-3.7.0.0","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/Cabal-3.7.0.0/build-info.json","depends":["array-0.5.4.0","base-4.14.1.0","binary-0.8.8.0","bytestring-0.10.12.0","containers-0.6.2.1","deepseq-1.4.4.0","directory-1.3.6.0","filepath-1.4.2.1","mtl-2.2.2","parsec-3.1.14.0","pretty-1.1.3.6","process-1.6.9.0","text-1.2.4.1","time-1.9.3","transformers-0.5.6.2","unix-2.7.2.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"HTTP-4000.3.16-2bff999c3b4ac3b841eff699289cfba5cc0f3d7c3d6cac886c7e1de7a4efe9a0","pkg-name":"HTTP","pkg-version":"4000.3.16","flags":{"conduit10":false,"mtl1":false,"network-uri":true,"warn-as-error":false,"warp-tests":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4265b1966b2bbb302a8a80d7b485197694785ec1496d5d9314b4b5931ffbd093","pkg-src-sha256":"d6091c037871ac3d08d021c906206174567499d5a26a6cb804cf530cd590fe2d","depends":["array-0.5.4.0","base-4.14.1.0","bytestring-0.10.12.0","mtl-2.2.2","network-3.1.2.2-874d0d8d9da96b7e334691a57785b1c969a597023358a498ed4b2bad5e299c7f","network-uri-2.6.4.1-726cbd2d2d732c2eed8d1be31d6f156e7d9c03d28606160f09f13de5685cf0bb","parsec-3.1.14.0","time-1.9.3"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"array-0.5.4.0","pkg-name":"array","pkg-version":"0.5.4.0","depends":["base-4.14.1.0"]},{"type":"configured","id":"async-2.2.3-0e6ad597a8c7c145537a21b61cd1bd5302fa81b587b76687d9d878636afe93d4","pkg-name":"async","pkg-version":"2.2.3","flags":{"bench":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"0cbefb8247308b38e397e675f832b9bd5317ff1872001d5358f213654423c55b","pkg-src-sha256":"467af3a0037947a5232ecf5f4efbd4cf2118aaa2310566d7f40ac82b0e32935c","depends":["base-4.14.1.0","hashable-1.3.2.0-10896331968c9dd64eb45c870626969507a8ece05ade43efa58807e1fb8db0b4","stm-2.5.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"base-4.14.1.0","pkg-name":"base","pkg-version":"4.14.1.0","depends":["ghc-prim-0.6.1","integer-gmp-1.0.3.0","rts"]},{"type":"configured","id":"base16-bytestring-1.0.1.0-d0926e90c2815989331387be96d8f416028ba3bc9a123d94b1d0f274a3a6a5f4","pkg-name":"base16-bytestring","pkg-version":"1.0.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"33b9d57afa334d06485033e930c6b13fc760baf88fd8f715ae2f9a4b46e19a54","pkg-src-sha256":"c0c70a4b58be53d36971bd7361ba300f82a5d5ebf7f50e1a2d7bfc8838bdd6fa","depends":["base-4.14.1.0","bytestring-0.10.12.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"base64-bytestring-1.2.1.0-7dffbccf9249fb0bef8710c8130b890bef2ef913b70330b689d2e01a81274af1","pkg-name":"base64-bytestring","pkg-version":"1.2.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"50ec0e229255d4c45cbdd568da011311b8887f304b931564886016f4984334d8","pkg-src-sha256":"fbf8ed30edde271eb605352021431d8f1b055f95a56af31fe2eacf6bdfdc49c9","depends":["base-4.14.1.0","bytestring-0.10.12.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"binary-0.8.8.0","pkg-name":"binary","pkg-version":"0.8.8.0","depends":["array-0.5.4.0","base-4.14.1.0","bytestring-0.10.12.0","containers-0.6.2.1"]},{"type":"pre-existing","id":"bytestring-0.10.12.0","pkg-name":"bytestring","pkg-version":"0.10.12.0","depends":["base-4.14.1.0","deepseq-1.4.4.0","ghc-prim-0.6.1","integer-gmp-1.0.3.0"]},{"type":"configured","id":"cabal-install-3.7.0.0-inplace","pkg-name":"cabal-install","pkg-version":"3.7.0.0","flags":{"lukko":true,"native-dns":true},"style":"local","pkg-src":{"type":"local","path":"/home/hugin/Documents/haskell/cabal/cabal-install"},"dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/cabal-install-3.7.0.0","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/cabal-install-3.7.0.0/build-info.json","depends":["Cabal-3.7.0.0-inplace","HTTP-4000.3.16-2bff999c3b4ac3b841eff699289cfba5cc0f3d7c3d6cac886c7e1de7a4efe9a0","array-0.5.4.0","async-2.2.3-0e6ad597a8c7c145537a21b61cd1bd5302fa81b587b76687d9d878636afe93d4","base-4.14.1.0","base16-bytestring-1.0.1.0-d0926e90c2815989331387be96d8f416028ba3bc9a123d94b1d0f274a3a6a5f4","binary-0.8.8.0","bytestring-0.10.12.0","cabal-install-solver-3.7.0.0-inplace","containers-0.6.2.1","cryptohash-sha256-0.11.102.0-e3c853fa4ea0102e499fbc43891eb19b41a4ac25e5dec8777e34a69c6472cf05","deepseq-1.4.4.0","directory-1.3.6.0","echo-0.1.4-056f93ec01984a04fb99c784891ca07a3473b93f661b36841ba17fe6be2f045f","edit-distance-0.2.2.1-077e65ead225b91e1cef78b456f39d531161707b4657eba6e4b5e8b6a11b9e00","exceptions-0.10.4","filepath-1.4.2.1","hackage-security-0.6.0.1-inplace","hashable-1.3.2.0-10896331968c9dd64eb45c870626969507a8ece05ade43efa58807e1fb8db0b4","lukko-0.1.1.3-9f8e3d93d3cda8c84063d31c8e069269620a0160c76e8d5b0fb6c4eac8e4c061","mtl-2.2.2","network-uri-2.6.4.1-726cbd2d2d732c2eed8d1be31d6f156e7d9c03d28606160f09f13de5685cf0bb","parsec-3.1.14.0","pretty-1.1.3.6","process-1.6.9.0","random-1.2.0-821b8d1dbfd6e71abc1db66ac7846a36093b1f4ea533fe3af624349f163573ad","regex-base-0.94.0.1-d7ecf1728220a8259ba5638c70181eac3f04d86abb4c365efed75b12866a10b7","regex-posix-0.96.0.1-c1799fcd9d01b1f4d62f349e22542d3d831f167dda4903cb38065c2642266c4e","resolv-0.1.2.0-175fc8c5fbcd0673c05226b0c20e7bc7dedf2f85d02c9cd4f9a8743092ac9b73","stm-2.5.0.0","tar-0.5.1.1-18946a119ecc2a1fbcf68d5238b97fbf3bba2eafaf966c3c485e77eb1e2830cc","text-1.2.4.1","time-1.9.3","transformers-0.5.6.2","unix-2.7.2.2","zlib-0.6.2.3-b90c97183f6e42dc293d8b34d805d69af638a7db92db9e9b43261f163fd100d1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"cabal-install-3.7.0.0-inplace-cabal","pkg-name":"cabal-install","pkg-version":"3.7.0.0","flags":{"lukko":true,"native-dns":true},"style":"local","pkg-src":{"type":"local","path":"/home/hugin/Documents/haskell/cabal/cabal-install"},"dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/cabal-install-3.7.0.0/x/cabal","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/cabal-install-3.7.0.0/x/cabal/build-info.json","depends":["Cabal-3.7.0.0-inplace","base-4.14.1.0","cabal-install-3.7.0.0-inplace","directory-1.3.6.0","filepath-1.4.2.1"],"exe-depends":[],"component-name":"exe:cabal","bin-file":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/cabal-install-3.7.0.0/x/cabal/build/cabal/cabal"},{"type":"configured","id":"cabal-install-solver-3.7.0.0-inplace","pkg-name":"cabal-install-solver","pkg-version":"3.7.0.0","flags":{"debug-conflict-sets":false,"debug-expensive-assertions":false,"debug-tracetree":false},"style":"local","pkg-src":{"type":"local","path":"/home/hugin/Documents/haskell/cabal/cabal-install-solver"},"dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/cabal-install-solver-3.7.0.0","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/cabal-install-solver-3.7.0.0/build-info.json","depends":["Cabal-3.7.0.0-inplace","array-0.5.4.0","base-4.14.1.0","binary-0.8.8.0","bytestring-0.10.12.0","containers-0.6.2.1","edit-distance-0.2.2.1-077e65ead225b91e1cef78b456f39d531161707b4657eba6e4b5e8b6a11b9e00","filepath-1.4.2.1","mtl-2.2.2","pretty-1.1.3.6","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"containers-0.6.2.1","pkg-name":"containers","pkg-version":"0.6.2.1","depends":["array-0.5.4.0","base-4.14.1.0","deepseq-1.4.4.0"]},{"type":"configured","id":"cryptohash-sha256-0.11.102.0-e3c853fa4ea0102e499fbc43891eb19b41a4ac25e5dec8777e34a69c6472cf05","pkg-name":"cryptohash-sha256","pkg-version":"0.11.102.0","flags":{"exe":false,"use-cbits":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"797a0af7b8a0e654cbddd3df6b9de02d2cbfcb2292cf001399ab53910fbbb76c","pkg-src-sha256":"8ad6e9875a9128f6cd66d65d80f9f85dd0559c73ac00bb37f71fbee820d10519","depends":["base-4.14.1.0","bytestring-0.10.12.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"deepseq-1.4.4.0","pkg-name":"deepseq","pkg-version":"1.4.4.0","depends":["array-0.5.4.0","base-4.14.1.0"]},{"type":"pre-existing","id":"directory-1.3.6.0","pkg-name":"directory","pkg-version":"1.3.6.0","depends":["base-4.14.1.0","filepath-1.4.2.1","time-1.9.3","unix-2.7.2.2"]},{"type":"configured","id":"echo-0.1.4-056f93ec01984a04fb99c784891ca07a3473b93f661b36841ba17fe6be2f045f","pkg-name":"echo","pkg-version":"0.1.4","flags":{"example":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ccce771562c49a2b29a52046ca68c62179e97e8fbeacdae32ca84a85445e8f42","pkg-src-sha256":"c9fe1bf2904825a65b667251ec644f197b71dc5c209d2d254be5de3d496b0e43","depends":["base-4.14.1.0","process-1.6.9.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"ed25519-0.0.5.0-56f93ac72dc7a0d24f6c1b41f80017bb8a25990dacfd60db4318b0cca4bddacb","pkg-name":"ed25519","pkg-version":"0.0.5.0","flags":{"no-donna":true,"test-doctests":true,"test-hlint":true,"test-properties":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fb98b08de467d51f788f8bd9391f0e9ab9bd4d8dfc264296b895ffea0d822dfa","pkg-src-sha256":"d8a5958ebfa9309790efade64275dc5c441b568645c45ceed1b0c6ff36d6156d","depends":["base-4.14.1.0","bytestring-0.10.12.0","ghc-prim-0.6.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"edit-distance-0.2.2.1-077e65ead225b91e1cef78b456f39d531161707b4657eba6e4b5e8b6a11b9e00","pkg-name":"edit-distance","pkg-version":"0.2.2.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4d33a49cd383d50af090f1b888642d10116e43809f9da6023d9fc6f67d2656ee","pkg-src-sha256":"3e8885ee2f56ad4da940f043ae8f981ee2fe336b5e8e4ba3f7436cff4f526c4a","depends":["array-0.5.4.0","base-4.14.1.0","containers-0.6.2.1","random-1.2.0-821b8d1dbfd6e71abc1db66ac7846a36093b1f4ea533fe3af624349f163573ad"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"exceptions-0.10.4","pkg-name":"exceptions","pkg-version":"0.10.4","depends":["base-4.14.1.0","mtl-2.2.2","stm-2.5.0.0","template-haskell-2.16.0.0","transformers-0.5.6.2"]},{"type":"pre-existing","id":"filepath-1.4.2.1","pkg-name":"filepath","pkg-version":"1.4.2.1","depends":["base-4.14.1.0"]},{"type":"pre-existing","id":"ghc-boot-th-8.10.4","pkg-name":"ghc-boot-th","pkg-version":"8.10.4","depends":["base-4.14.1.0"]},{"type":"pre-existing","id":"ghc-prim-0.6.1","pkg-name":"ghc-prim","pkg-version":"0.6.1","depends":["rts"]},{"type":"configured","id":"hackage-security-0.6.0.1-inplace","pkg-name":"hackage-security","pkg-version":"0.6.0.1","flags":{"base48":true,"lukko":true,"mtl21":false,"old-directory":false,"use-network-uri":true},"style":"inplace","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ae6cdda307237c0b7efeebfb0bf23ff8a26c30f5ba295dce5e4f81ef6e63fff6","pkg-src-sha256":"9162b473af5a21c1ff32a50b972b9acf51f4c901604a22cf08a2dccac2f82f17","dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/hackage-security-0.6.0.1","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.10.4/hackage-security-0.6.0.1/build-info.json","depends":["Cabal-3.7.0.0-inplace","base-4.14.1.0","base16-bytestring-1.0.1.0-d0926e90c2815989331387be96d8f416028ba3bc9a123d94b1d0f274a3a6a5f4","base64-bytestring-1.2.1.0-7dffbccf9249fb0bef8710c8130b890bef2ef913b70330b689d2e01a81274af1","bytestring-0.10.12.0","containers-0.6.2.1","cryptohash-sha256-0.11.102.0-e3c853fa4ea0102e499fbc43891eb19b41a4ac25e5dec8777e34a69c6472cf05","directory-1.3.6.0","ed25519-0.0.5.0-56f93ac72dc7a0d24f6c1b41f80017bb8a25990dacfd60db4318b0cca4bddacb","filepath-1.4.2.1","ghc-prim-0.6.1","lukko-0.1.1.3-9f8e3d93d3cda8c84063d31c8e069269620a0160c76e8d5b0fb6c4eac8e4c061","mtl-2.2.2","network-3.1.2.2-874d0d8d9da96b7e334691a57785b1c969a597023358a498ed4b2bad5e299c7f","network-uri-2.6.4.1-726cbd2d2d732c2eed8d1be31d6f156e7d9c03d28606160f09f13de5685cf0bb","parsec-3.1.14.0","pretty-1.1.3.6","tar-0.5.1.1-18946a119ecc2a1fbcf68d5238b97fbf3bba2eafaf966c3c485e77eb1e2830cc","template-haskell-2.16.0.0","time-1.9.3","transformers-0.5.6.2","zlib-0.6.2.3-b90c97183f6e42dc293d8b34d805d69af638a7db92db9e9b43261f163fd100d1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hashable-1.3.2.0-10896331968c9dd64eb45c870626969507a8ece05ade43efa58807e1fb8db0b4","pkg-name":"hashable","pkg-version":"1.3.2.0","flags":{"integer-gmp":true,"random-initial-seed":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"02bc544e3546713b1d76a3c5bfc836a5fd19a5b4348ef4a52bb973d0c35a4b89","pkg-src-sha256":"59bd964b6fe52b04825cf5402c87981068c051f351b2cb940b75f1c60719d637","depends":["base-4.14.1.0","bytestring-0.10.12.0","deepseq-1.4.4.0","ghc-prim-0.6.1","integer-gmp-1.0.3.0","text-1.2.4.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hsc2hs-0.68.7-e-hsc2hs-a54e898f36feb5209908d7942eb1f2ba686bb25c99af0ac9b04c8f9f55182b1e","pkg-name":"hsc2hs","pkg-version":"0.68.7","flags":{"in-ghc-tree":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4a0f6860a17e7c245646975e3c2981416afdcb6a7b3553c31005eb3641a7f55b","pkg-src-sha256":"fd7915e41e3ed3bc7750fee0e8add2b4f32dcac8b7c544cfdf5542293223894a","depends":["base-4.14.1.0","containers-0.6.2.1","directory-1.3.6.0","filepath-1.4.2.1","process-1.6.9.0"],"exe-depends":[],"component-name":"exe:hsc2hs","bin-file":"/home/hugin/.cabal/store/ghc-8.10.4/hsc2hs-0.68.7-e-hsc2hs-a54e898f36feb5209908d7942eb1f2ba686bb25c99af0ac9b04c8f9f55182b1e/bin/hsc2hs"},{"type":"pre-existing","id":"integer-gmp-1.0.3.0","pkg-name":"integer-gmp","pkg-version":"1.0.3.0","depends":["ghc-prim-0.6.1"]},{"type":"configured","id":"lukko-0.1.1.3-9f8e3d93d3cda8c84063d31c8e069269620a0160c76e8d5b0fb6c4eac8e4c061","pkg-name":"lukko","pkg-version":"0.1.1.3","flags":{"ofd-locking":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"2db49b6cb6632a46ec446fc51870cd0d49e0a66d1c5d2063f46ae52a100eb856","pkg-src-sha256":"a80efb60cfa3dae18682c01980d76d5f7e413e191cd186992e1bf7388d48ab1f","depends":["base-4.14.1.0"],"exe-depends":["hsc2hs-0.68.7-e-hsc2hs-a54e898f36feb5209908d7942eb1f2ba686bb25c99af0ac9b04c8f9f55182b1e"],"component-name":"lib"},{"type":"pre-existing","id":"mtl-2.2.2","pkg-name":"mtl","pkg-version":"2.2.2","depends":["base-4.14.1.0","transformers-0.5.6.2"]},{"type":"configured","id":"network-3.1.2.2-874d0d8d9da96b7e334691a57785b1c969a597023358a498ed4b2bad5e299c7f","pkg-name":"network","pkg-version":"3.1.2.2","flags":{"devel":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"218e2968e03d99c40f32a2ef7cc41a848969096ba1c780ff2e57997a00246b06","pkg-src-sha256":"55012c0b22f9c7548b1f7b3bacc2c6ec7058c7f92238a69561528f1a0fa60eb6","components":{"lib":{"depends":["base-4.14.1.0","bytestring-0.10.12.0","deepseq-1.4.4.0","directory-1.3.6.0"],"exe-depends":["hsc2hs-0.68.7-e-hsc2hs-a54e898f36feb5209908d7942eb1f2ba686bb25c99af0ac9b04c8f9f55182b1e"]}}},{"type":"configured","id":"network-uri-2.6.4.1-726cbd2d2d732c2eed8d1be31d6f156e7d9c03d28606160f09f13de5685cf0bb","pkg-name":"network-uri","pkg-version":"2.6.4.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"a4765164ed0a2d1668446eb2e03460ce98645fbf083598c690846af79b7de10d","pkg-src-sha256":"57856db93608a4d419f681b881c9b8d4448800d5a687587dc37e8a9e0b223584","depends":["base-4.14.1.0","deepseq-1.4.4.0","parsec-3.1.14.0","template-haskell-2.16.0.0","th-compat-0.1.2-d27ac856dec8c28ef3a10ee6e1b5096cccb90c3b120cf83a7ec953297d678a7f"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"parsec-3.1.14.0","pkg-name":"parsec","pkg-version":"3.1.14.0","depends":["base-4.14.1.0","bytestring-0.10.12.0","mtl-2.2.2","text-1.2.4.1"]},{"type":"pre-existing","id":"pretty-1.1.3.6","pkg-name":"pretty","pkg-version":"1.1.3.6","depends":["base-4.14.1.0","deepseq-1.4.4.0","ghc-prim-0.6.1"]},{"type":"pre-existing","id":"process-1.6.9.0","pkg-name":"process","pkg-version":"1.6.9.0","depends":["base-4.14.1.0","deepseq-1.4.4.0","directory-1.3.6.0","filepath-1.4.2.1","unix-2.7.2.2"]},{"type":"configured","id":"random-1.2.0-821b8d1dbfd6e71abc1db66ac7846a36093b1f4ea533fe3af624349f163573ad","pkg-name":"random","pkg-version":"1.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"195506fedaa7c31c1fa2a747e9b49b4a5d1f0b09dd8f1291f23a771656faeec3","pkg-src-sha256":"e4519cf7c058bfd5bdbe4acc782284acc9e25e74487208619ca83cbcd63fb9de","depends":["base-4.14.1.0","bytestring-0.10.12.0","deepseq-1.4.4.0","mtl-2.2.2","splitmix-0.1.0.3-50ec55b0f09ac3f0d066c466987b99709f10e5609d166e51ea3e13c78b1d5ed2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"regex-base-0.94.0.1-d7ecf1728220a8259ba5638c70181eac3f04d86abb4c365efed75b12866a10b7","pkg-name":"regex-base","pkg-version":"0.94.0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"35ff2d13c0e3ac364469c19e4c7c8775f5148977d8fcef58a424df0a10a53fa7","pkg-src-sha256":"71b1d96fff201f31fe8cd4532f056aca03a21cd486890256dc3007dd73adedd9","depends":["array-0.5.4.0","base-4.14.1.0","bytestring-0.10.12.0","containers-0.6.2.1","mtl-2.2.2","text-1.2.4.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"regex-posix-0.96.0.1-c1799fcd9d01b1f4d62f349e22542d3d831f167dda4903cb38065c2642266c4e","pkg-name":"regex-posix","pkg-version":"0.96.0.1","flags":{"_regex-posix-clib":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"b6421e5356766b0c0a78b6094ae2e3a6259b42c147b717283c03c1cb09163dca","pkg-src-sha256":"c7827c391919227711e1cff0a762b1678fd8739f9c902fc183041ff34f59259c","depends":["array-0.5.4.0","base-4.14.1.0","bytestring-0.10.12.0","containers-0.6.2.1","regex-base-0.94.0.1-d7ecf1728220a8259ba5638c70181eac3f04d86abb4c365efed75b12866a10b7"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"resolv-0.1.2.0-175fc8c5fbcd0673c05226b0c20e7bc7dedf2f85d02c9cd4f9a8743092ac9b73","pkg-name":"resolv","pkg-version":"0.1.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"25c6e802dc342307e78e5e60433f5e20d03aa783b08b009a399100eb9b6ec529","pkg-src-sha256":"81a2bafad484db123cf8d17a02d98bb388a127fd0f822fa022589468a0e64671","components":{"lib":{"depends":["base-4.14.1.0","base16-bytestring-1.0.1.0-d0926e90c2815989331387be96d8f416028ba3bc9a123d94b1d0f274a3a6a5f4","binary-0.8.8.0","bytestring-0.10.12.0","containers-0.6.2.1"],"exe-depends":[]}}},{"type":"pre-existing","id":"rts","pkg-name":"rts","pkg-version":"1.0","depends":[]},{"type":"configured","id":"splitmix-0.1.0.3-50ec55b0f09ac3f0d066c466987b99709f10e5609d166e51ea3e13c78b1d5ed2","pkg-name":"splitmix","pkg-version":"0.1.0.3","flags":{"optimised-mixer":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fc3aae74c467f4b608050bef53aec17904a618731df9407e655d8f3bf8c32d5c","pkg-src-sha256":"46009f4b000c9e6613377767b8718bf38476469f2a8e2162d98cc246882d5a35","depends":["base-4.14.1.0","deepseq-1.4.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"stm-2.5.0.0","pkg-name":"stm","pkg-version":"2.5.0.0","depends":["array-0.5.4.0","base-4.14.1.0"]},{"type":"configured","id":"tar-0.5.1.1-18946a119ecc2a1fbcf68d5238b97fbf3bba2eafaf966c3c485e77eb1e2830cc","pkg-name":"tar","pkg-version":"0.5.1.1","flags":{"old-bytestring":false,"old-time":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"94ded05718fe75b88c98e7113feeb9fca50688a7e59b6aefd80a6f48438c5062","pkg-src-sha256":"b384449f62b2b0aa3e6d2cb1004b8060b01f21ec93e7b63e7af6d8fad8a9f1de","depends":["array-0.5.4.0","base-4.14.1.0","bytestring-0.10.12.0","containers-0.6.2.1","deepseq-1.4.4.0","directory-1.3.6.0","filepath-1.4.2.1","time-1.9.3"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"template-haskell-2.16.0.0","pkg-name":"template-haskell","pkg-version":"2.16.0.0","depends":["base-4.14.1.0","ghc-boot-th-8.10.4","ghc-prim-0.6.1","pretty-1.1.3.6"]},{"type":"pre-existing","id":"text-1.2.4.1","pkg-name":"text","pkg-version":"1.2.4.1","depends":["array-0.5.4.0","base-4.14.1.0","binary-0.8.8.0","bytestring-0.10.12.0","deepseq-1.4.4.0","ghc-prim-0.6.1","integer-gmp-1.0.3.0","template-haskell-2.16.0.0"]},{"type":"configured","id":"th-compat-0.1.2-d27ac856dec8c28ef3a10ee6e1b5096cccb90c3b120cf83a7ec953297d678a7f","pkg-name":"th-compat","pkg-version":"0.1.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"3d55de1adc542c1a870c9ada90da2fbbe5f4e8bcd3eed545a55c3df9311b32a8","pkg-src-sha256":"2bc45d0199de3dc65ebc9b71251799f5238869dbc6a66bdf0c06c7e23d603801","depends":["base-4.14.1.0","template-haskell-2.16.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"time-1.9.3","pkg-name":"time","pkg-version":"1.9.3","depends":["base-4.14.1.0","deepseq-1.4.4.0"]},{"type":"pre-existing","id":"transformers-0.5.6.2","pkg-name":"transformers","pkg-version":"0.5.6.2","depends":["base-4.14.1.0"]},{"type":"pre-existing","id":"unix-2.7.2.2","pkg-name":"unix","pkg-version":"2.7.2.2","depends":["base-4.14.1.0","bytestring-0.10.12.0","time-1.9.3"]},{"type":"configured","id":"zlib-0.6.2.3-b90c97183f6e42dc293d8b34d805d69af638a7db92db9e9b43261f163fd100d1","pkg-name":"zlib","pkg-version":"0.6.2.3","flags":{"bundled-c-zlib":false,"non-blocking-ffi":false,"pkg-config":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"28f4d460c260e074cab833625454564b9783a3389b7bb91fd54da2790b39592c","pkg-src-sha256":"807f6bddf9cb3c517ce5757d991dde3c7e319953a22c86ee03d74534bd5abc88","depends":["base-4.14.1.0","bytestring-0.10.12.0"],"exe-depends":[],"component-name":"lib"}]}
\ No newline at end of file
diff --git a/bootstrap/linux-8.6.5.json b/bootstrap/linux-8.6.5.json
index 182469739d8fae88faa555992e20c522f8485941..e405c145d8e7611a3198c16a2905207c9fd600cf 100644
--- a/bootstrap/linux-8.6.5.json
+++ b/bootstrap/linux-8.6.5.json
@@ -3,7 +3,7 @@
         {
             "source": "local",
             "package": "Cabal",
-            "version": "3.6.0.0",
+            "version": "3.7.0.0",
             "flags": [
                 "-bundled-binary-generic"
             ],
@@ -90,10 +90,10 @@
         {
             "source": "hackage",
             "package": "base64-bytestring",
-            "version": "1.2.0.1",
+            "version": "1.2.1.0",
             "flags": [],
-            "cabal_sha256": "f4f998235fc0825ab636ca9241b827de5805b336625eb1c7822f1798a238b6ac",
-            "src_sha256": "af09b17d072eb1391d91e30b4186dd1797330647ef79268ecd7fcce8f5afc638",
+            "cabal_sha256": "50ec0e229255d4c45cbdd568da011311b8887f304b931564886016f4984334d8",
+            "src_sha256": "fbf8ed30edde271eb605352021431d8f1b055f95a56af31fe2eacf6bdfdc49c9",
             "revision": 0
         },
         {
@@ -128,7 +128,7 @@
         {
             "source": "local",
             "package": "cabal-install-solver",
-            "version": "3.6.0.0",
+            "version": "3.7.0.0",
             "flags": [
                 "-debug-conflict-sets",
                 "-debug-expensive-assertions",
@@ -242,9 +242,9 @@
             "package": "regex-base",
             "version": "0.94.0.1",
             "flags": [],
-            "cabal_sha256": "6e3546b73cd5489201d481aa645a531f2c61aa317984e31c5f379ac0bcbfbfad",
+            "cabal_sha256": "35ff2d13c0e3ac364469c19e4c7c8775f5148977d8fcef58a424df0a10a53fa7",
             "src_sha256": "71b1d96fff201f31fe8cd4532f056aca03a21cd486890256dc3007dd73adedd9",
-            "revision": 0
+            "revision": 1
         },
         {
             "source": "hackage",
@@ -269,7 +269,7 @@
         {
             "source": "local",
             "package": "cabal-install",
-            "version": "3.6.0.0",
+            "version": "3.7.0.0",
             "flags": [
                 "+lukko",
                 "+native-dns"
@@ -281,7 +281,7 @@
         {
             "source": "local",
             "package": "cabal-install",
-            "version": "3.6.0.0",
+            "version": "3.7.0.0",
             "flags": [
                 "+lukko",
                 "+native-dns"
diff --git a/bootstrap/linux-8.6.5.plan.json b/bootstrap/linux-8.6.5.plan.json
index f02c8c061f3b7287cbbc7f0461e21c18bb5b1382..2d674b86564d7a1d576dd9de0d9ebfbac0d85950 100644
--- a/bootstrap/linux-8.6.5.plan.json
+++ b/bootstrap/linux-8.6.5.plan.json
@@ -1 +1 @@
-{"cabal-version":"3.4.0.0","cabal-lib-version":"3.4.0.0","compiler-id":"ghc-8.6.5","os":"linux","arch":"x86_64","install-plan":[{"type":"configured","id":"Cabal-3.6.0.0-inplace","pkg-name":"Cabal","pkg-version":"3.6.0.0","flags":{"bundled-binary-generic":false},"style":"local","pkg-src":{"type":"local","path":"/home/tapas/haskell/cabal/Cabal"},"dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/Cabal-3.6.0.0","depends":["array-0.5.3.0","base-4.12.0.0","binary-0.8.6.0","bytestring-0.10.8.2","containers-0.6.0.1","deepseq-1.4.4.0","directory-1.3.3.0","filepath-1.4.2.1","mtl-2.2.2","parsec-3.1.13.0","pretty-1.1.3.6","process-1.6.5.0","text-1.2.3.1","time-1.8.0.2","transformers-0.5.6.2","unix-2.7.2.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"HTTP-4000.3.16-0d823d46f86c3392de7d503373270e1286f3e6594ebc111b73c5a59a04e16003","pkg-name":"HTTP","pkg-version":"4000.3.16","flags":{"conduit10":false,"mtl1":false,"network-uri":true,"warn-as-error":false,"warp-tests":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4265b1966b2bbb302a8a80d7b485197694785ec1496d5d9314b4b5931ffbd093","pkg-src-sha256":"d6091c037871ac3d08d021c906206174567499d5a26a6cb804cf530cd590fe2d","depends":["array-0.5.3.0","base-4.12.0.0","bytestring-0.10.8.2","mtl-2.2.2","network-3.1.2.2-e8d4773e65d0f16d3942eb1877af759e0a58a9aaef78126451fa386eedff18d4","network-uri-2.6.4.1-2e14423f89f3ac3c2ee00e429745a82fc831c9aab0062dbfb95d83e883cb22b3","parsec-3.1.13.0","time-1.8.0.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"array-0.5.3.0","pkg-name":"array","pkg-version":"0.5.3.0","depends":["base-4.12.0.0"]},{"type":"configured","id":"async-2.2.3-818f86f66118d6f1b7d4b40731ce59e3c9e92160fb631a38de4fabd8ab1f5296","pkg-name":"async","pkg-version":"2.2.3","flags":{"bench":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"0cbefb8247308b38e397e675f832b9bd5317ff1872001d5358f213654423c55b","pkg-src-sha256":"467af3a0037947a5232ecf5f4efbd4cf2118aaa2310566d7f40ac82b0e32935c","depends":["base-4.12.0.0","hashable-1.3.2.0-1bb7c7018c86c9c4a5248759905c7d0f04af0ba12bb70158514e5013ef76da96","stm-2.5.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"base-4.12.0.0","pkg-name":"base","pkg-version":"4.12.0.0","depends":["ghc-prim-0.5.3","integer-gmp-1.0.2.0","rts"]},{"type":"configured","id":"base16-bytestring-1.0.1.0-1746bcc67bba177c17e33a8fba687adf44ffb730cb52632e82c956e36819a4f9","pkg-name":"base16-bytestring","pkg-version":"1.0.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"33b9d57afa334d06485033e930c6b13fc760baf88fd8f715ae2f9a4b46e19a54","pkg-src-sha256":"c0c70a4b58be53d36971bd7361ba300f82a5d5ebf7f50e1a2d7bfc8838bdd6fa","depends":["base-4.12.0.0","bytestring-0.10.8.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"base64-bytestring-1.2.0.1-c074ebbf1a80dfba689ab2ea03281f23e448dbc0e03f9e8ae4f9cfeb7f50fde5","pkg-name":"base64-bytestring","pkg-version":"1.2.0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"f4f998235fc0825ab636ca9241b827de5805b336625eb1c7822f1798a238b6ac","pkg-src-sha256":"af09b17d072eb1391d91e30b4186dd1797330647ef79268ecd7fcce8f5afc638","depends":["base-4.12.0.0","bytestring-0.10.8.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"binary-0.8.6.0","pkg-name":"binary","pkg-version":"0.8.6.0","depends":["array-0.5.3.0","base-4.12.0.0","bytestring-0.10.8.2","containers-0.6.0.1"]},{"type":"pre-existing","id":"bytestring-0.10.8.2","pkg-name":"bytestring","pkg-version":"0.10.8.2","depends":["base-4.12.0.0","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0"]},{"type":"configured","id":"cabal-install-3.6.0.0-inplace","pkg-name":"cabal-install","pkg-version":"3.6.0.0","flags":{"lukko":true,"native-dns":true},"style":"local","pkg-src":{"type":"local","path":"/home/tapas/haskell/cabal/cabal-install"},"dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/cabal-install-3.6.0.0","depends":["Cabal-3.6.0.0-inplace","HTTP-4000.3.16-0d823d46f86c3392de7d503373270e1286f3e6594ebc111b73c5a59a04e16003","array-0.5.3.0","async-2.2.3-818f86f66118d6f1b7d4b40731ce59e3c9e92160fb631a38de4fabd8ab1f5296","base-4.12.0.0","base16-bytestring-1.0.1.0-1746bcc67bba177c17e33a8fba687adf44ffb730cb52632e82c956e36819a4f9","binary-0.8.6.0","bytestring-0.10.8.2","cabal-install-solver-3.6.0.0-inplace","containers-0.6.0.1","cryptohash-sha256-0.11.102.0-1788be3651f34f47baf624f708f86ea7d6db2d13268558e536d0a1bd2b97e074","deepseq-1.4.4.0","directory-1.3.3.0","echo-0.1.4-f2f39bb54e76ea77d5753fd796c4b4126a9c4a7d8b34fbeb350261c52821e0f3","edit-distance-0.2.2.1-7bd6af1f732ef2a1f2b04b4f27ad793f3ed3fa5623ddc8e07a4e489f60cbcee8","exceptions-0.10.4-2e686fdff7a6bdbd62e24641169087c094e991de8ab3f6381a859306fd258e32","filepath-1.4.2.1","hackage-security-0.6.0.1-inplace","hashable-1.3.2.0-1bb7c7018c86c9c4a5248759905c7d0f04af0ba12bb70158514e5013ef76da96","lukko-0.1.1.3-4c76677eee1fcca961ba3794c92e0a1f4e9c3ced333a9c3f048e6f3f312cb890","mtl-2.2.2","network-uri-2.6.4.1-2e14423f89f3ac3c2ee00e429745a82fc831c9aab0062dbfb95d83e883cb22b3","parsec-3.1.13.0","pretty-1.1.3.6","process-1.6.5.0","random-1.2.0-f975454f78491c8b834a9026806b59ad4e6cbebac633684d977c1bf1bb394421","regex-base-0.94.0.1-8daf12dc69a5224d3cb7813e6280b915706276fe3b3671583aa6b7ad031b7344","regex-posix-0.96.0.1-eba6c312f830e3ee4415cc4d263d6351a350a7d7b5aa3c618242a1bc64eeeece","resolv-0.1.2.0-839f45c81c7fff34820bc93f39bf071c78acc518c5fdaa3e3cfdbf27d1f5e16d","stm-2.5.0.0","tar-0.5.1.1-2bac801a527e5793b7752115b282082cf46ce8f20e48fb17bd96599f96366b21","text-1.2.3.1","time-1.8.0.2","transformers-0.5.6.2","unix-2.7.2.2","zlib-0.6.2.3-ed437c4dad11e2d9e8074a8f3cc6b184779db7ddfdf413b593887e96726d7450"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"cabal-install-3.6.0.0-inplace-cabal","pkg-name":"cabal-install","pkg-version":"3.6.0.0","flags":{"lukko":true,"native-dns":true},"style":"local","pkg-src":{"type":"local","path":"/home/tapas/haskell/cabal/cabal-install"},"dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/cabal-install-3.6.0.0/x/cabal","depends":["Cabal-3.6.0.0-inplace","base-4.12.0.0","cabal-install-3.6.0.0-inplace","directory-1.3.3.0","filepath-1.4.2.1"],"exe-depends":[],"component-name":"exe:cabal","bin-file":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/cabal-install-3.6.0.0/x/cabal/build/cabal/cabal"},{"type":"configured","id":"cabal-install-solver-3.6.0.0-inplace","pkg-name":"cabal-install-solver","pkg-version":"3.6.0.0","flags":{"debug-conflict-sets":false,"debug-expensive-assertions":false,"debug-tracetree":false},"style":"local","pkg-src":{"type":"local","path":"/home/tapas/haskell/cabal/cabal-install-solver"},"dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/cabal-install-solver-3.6.0.0","depends":["Cabal-3.6.0.0-inplace","array-0.5.3.0","base-4.12.0.0","binary-0.8.6.0","bytestring-0.10.8.2","containers-0.6.0.1","edit-distance-0.2.2.1-7bd6af1f732ef2a1f2b04b4f27ad793f3ed3fa5623ddc8e07a4e489f60cbcee8","filepath-1.4.2.1","mtl-2.2.2","pretty-1.1.3.6","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"containers-0.6.0.1","pkg-name":"containers","pkg-version":"0.6.0.1","depends":["array-0.5.3.0","base-4.12.0.0","deepseq-1.4.4.0","ghc-prim-0.5.3"]},{"type":"configured","id":"cryptohash-sha256-0.11.102.0-1788be3651f34f47baf624f708f86ea7d6db2d13268558e536d0a1bd2b97e074","pkg-name":"cryptohash-sha256","pkg-version":"0.11.102.0","flags":{"exe":false,"use-cbits":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"797a0af7b8a0e654cbddd3df6b9de02d2cbfcb2292cf001399ab53910fbbb76c","pkg-src-sha256":"8ad6e9875a9128f6cd66d65d80f9f85dd0559c73ac00bb37f71fbee820d10519","depends":["base-4.12.0.0","bytestring-0.10.8.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"deepseq-1.4.4.0","pkg-name":"deepseq","pkg-version":"1.4.4.0","depends":["array-0.5.3.0","base-4.12.0.0"]},{"type":"pre-existing","id":"directory-1.3.3.0","pkg-name":"directory","pkg-version":"1.3.3.0","depends":["base-4.12.0.0","filepath-1.4.2.1","time-1.8.0.2","unix-2.7.2.2"]},{"type":"configured","id":"echo-0.1.4-f2f39bb54e76ea77d5753fd796c4b4126a9c4a7d8b34fbeb350261c52821e0f3","pkg-name":"echo","pkg-version":"0.1.4","flags":{"example":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ccce771562c49a2b29a52046ca68c62179e97e8fbeacdae32ca84a85445e8f42","pkg-src-sha256":"c9fe1bf2904825a65b667251ec644f197b71dc5c209d2d254be5de3d496b0e43","depends":["base-4.12.0.0","process-1.6.5.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"ed25519-0.0.5.0-751e5a5744fdd2d7ce2245bc124b15133d0dff1db6b0441d93ced591450d9edb","pkg-name":"ed25519","pkg-version":"0.0.5.0","flags":{"no-donna":true,"test-doctests":true,"test-hlint":true,"test-properties":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fb98b08de467d51f788f8bd9391f0e9ab9bd4d8dfc264296b895ffea0d822dfa","pkg-src-sha256":"d8a5958ebfa9309790efade64275dc5c441b568645c45ceed1b0c6ff36d6156d","depends":["base-4.12.0.0","bytestring-0.10.8.2","ghc-prim-0.5.3"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"edit-distance-0.2.2.1-7bd6af1f732ef2a1f2b04b4f27ad793f3ed3fa5623ddc8e07a4e489f60cbcee8","pkg-name":"edit-distance","pkg-version":"0.2.2.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4d33a49cd383d50af090f1b888642d10116e43809f9da6023d9fc6f67d2656ee","pkg-src-sha256":"3e8885ee2f56ad4da940f043ae8f981ee2fe336b5e8e4ba3f7436cff4f526c4a","depends":["array-0.5.3.0","base-4.12.0.0","containers-0.6.0.1","random-1.2.0-f975454f78491c8b834a9026806b59ad4e6cbebac633684d977c1bf1bb394421"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"exceptions-0.10.4-2e686fdff7a6bdbd62e24641169087c094e991de8ab3f6381a859306fd258e32","pkg-name":"exceptions","pkg-version":"0.10.4","flags":{"transformers-0-4":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"d2546046d7ba4b460d3bc7fd269cd2c52d0b7fb3cfecc038715dd0881b78a484","pkg-src-sha256":"4d0bfb4355cffcd67d300811df9d5fe44ea3594ed63750795bfc1f797abd84cf","depends":["base-4.12.0.0","mtl-2.2.2","stm-2.5.0.0","template-haskell-2.14.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"filepath-1.4.2.1","pkg-name":"filepath","pkg-version":"1.4.2.1","depends":["base-4.12.0.0"]},{"type":"pre-existing","id":"ghc-boot-th-8.6.5","pkg-name":"ghc-boot-th","pkg-version":"8.6.5","depends":["base-4.12.0.0"]},{"type":"pre-existing","id":"ghc-prim-0.5.3","pkg-name":"ghc-prim","pkg-version":"0.5.3","depends":["rts"]},{"type":"configured","id":"hackage-security-0.6.0.1-inplace","pkg-name":"hackage-security","pkg-version":"0.6.0.1","flags":{"base48":true,"lukko":true,"mtl21":false,"old-directory":false,"use-network-uri":true},"style":"inplace","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ae6cdda307237c0b7efeebfb0bf23ff8a26c30f5ba295dce5e4f81ef6e63fff6","pkg-src-sha256":"9162b473af5a21c1ff32a50b972b9acf51f4c901604a22cf08a2dccac2f82f17","dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/hackage-security-0.6.0.1","depends":["Cabal-3.6.0.0-inplace","base-4.12.0.0","base16-bytestring-1.0.1.0-1746bcc67bba177c17e33a8fba687adf44ffb730cb52632e82c956e36819a4f9","base64-bytestring-1.2.0.1-c074ebbf1a80dfba689ab2ea03281f23e448dbc0e03f9e8ae4f9cfeb7f50fde5","bytestring-0.10.8.2","containers-0.6.0.1","cryptohash-sha256-0.11.102.0-1788be3651f34f47baf624f708f86ea7d6db2d13268558e536d0a1bd2b97e074","directory-1.3.3.0","ed25519-0.0.5.0-751e5a5744fdd2d7ce2245bc124b15133d0dff1db6b0441d93ced591450d9edb","filepath-1.4.2.1","ghc-prim-0.5.3","lukko-0.1.1.3-4c76677eee1fcca961ba3794c92e0a1f4e9c3ced333a9c3f048e6f3f312cb890","mtl-2.2.2","network-3.1.2.2-e8d4773e65d0f16d3942eb1877af759e0a58a9aaef78126451fa386eedff18d4","network-uri-2.6.4.1-2e14423f89f3ac3c2ee00e429745a82fc831c9aab0062dbfb95d83e883cb22b3","parsec-3.1.13.0","pretty-1.1.3.6","tar-0.5.1.1-2bac801a527e5793b7752115b282082cf46ce8f20e48fb17bd96599f96366b21","template-haskell-2.14.0.0","time-1.8.0.2","transformers-0.5.6.2","zlib-0.6.2.3-ed437c4dad11e2d9e8074a8f3cc6b184779db7ddfdf413b593887e96726d7450"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hashable-1.3.2.0-1bb7c7018c86c9c4a5248759905c7d0f04af0ba12bb70158514e5013ef76da96","pkg-name":"hashable","pkg-version":"1.3.2.0","flags":{"integer-gmp":true,"random-initial-seed":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"02bc544e3546713b1d76a3c5bfc836a5fd19a5b4348ef4a52bb973d0c35a4b89","pkg-src-sha256":"59bd964b6fe52b04825cf5402c87981068c051f351b2cb940b75f1c60719d637","depends":["base-4.12.0.0","bytestring-0.10.8.2","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0","text-1.2.3.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hsc2hs-0.68.7-e-hsc2hs-0c4585ed41291b35ebc895b38398cb967e27e28d827b43b63adf9034d1517144","pkg-name":"hsc2hs","pkg-version":"0.68.7","flags":{"in-ghc-tree":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4a0f6860a17e7c245646975e3c2981416afdcb6a7b3553c31005eb3641a7f55b","pkg-src-sha256":"fd7915e41e3ed3bc7750fee0e8add2b4f32dcac8b7c544cfdf5542293223894a","depends":["base-4.12.0.0","containers-0.6.0.1","directory-1.3.3.0","filepath-1.4.2.1","process-1.6.5.0"],"exe-depends":[],"component-name":"exe:hsc2hs","bin-file":"/home/tapas/.cabal/store/ghc-8.6.5/hsc2hs-0.68.7-e-hsc2hs-0c4585ed41291b35ebc895b38398cb967e27e28d827b43b63adf9034d1517144/bin/hsc2hs"},{"type":"pre-existing","id":"integer-gmp-1.0.2.0","pkg-name":"integer-gmp","pkg-version":"1.0.2.0","depends":["ghc-prim-0.5.3"]},{"type":"configured","id":"lukko-0.1.1.3-4c76677eee1fcca961ba3794c92e0a1f4e9c3ced333a9c3f048e6f3f312cb890","pkg-name":"lukko","pkg-version":"0.1.1.3","flags":{"ofd-locking":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"2db49b6cb6632a46ec446fc51870cd0d49e0a66d1c5d2063f46ae52a100eb856","pkg-src-sha256":"a80efb60cfa3dae18682c01980d76d5f7e413e191cd186992e1bf7388d48ab1f","depends":["base-4.12.0.0"],"exe-depends":["hsc2hs-0.68.7-e-hsc2hs-0c4585ed41291b35ebc895b38398cb967e27e28d827b43b63adf9034d1517144"],"component-name":"lib"},{"type":"pre-existing","id":"mtl-2.2.2","pkg-name":"mtl","pkg-version":"2.2.2","depends":["base-4.12.0.0","transformers-0.5.6.2"]},{"type":"configured","id":"network-3.1.2.2-e8d4773e65d0f16d3942eb1877af759e0a58a9aaef78126451fa386eedff18d4","pkg-name":"network","pkg-version":"3.1.2.2","flags":{"devel":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"218e2968e03d99c40f32a2ef7cc41a848969096ba1c780ff2e57997a00246b06","pkg-src-sha256":"55012c0b22f9c7548b1f7b3bacc2c6ec7058c7f92238a69561528f1a0fa60eb6","components":{"lib":{"depends":["base-4.12.0.0","bytestring-0.10.8.2","deepseq-1.4.4.0","directory-1.3.3.0"],"exe-depends":["hsc2hs-0.68.7-e-hsc2hs-0c4585ed41291b35ebc895b38398cb967e27e28d827b43b63adf9034d1517144"]}}},{"type":"configured","id":"network-uri-2.6.4.1-2e14423f89f3ac3c2ee00e429745a82fc831c9aab0062dbfb95d83e883cb22b3","pkg-name":"network-uri","pkg-version":"2.6.4.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"a4765164ed0a2d1668446eb2e03460ce98645fbf083598c690846af79b7de10d","pkg-src-sha256":"57856db93608a4d419f681b881c9b8d4448800d5a687587dc37e8a9e0b223584","depends":["base-4.12.0.0","deepseq-1.4.4.0","parsec-3.1.13.0","template-haskell-2.14.0.0","th-compat-0.1.2-0e7d070c7da2da668dde8b1c69a1d534b3ebfc35538ee0ce437bd5a824475140"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"parsec-3.1.13.0","pkg-name":"parsec","pkg-version":"3.1.13.0","depends":["base-4.12.0.0","bytestring-0.10.8.2","mtl-2.2.2","text-1.2.3.1"]},{"type":"pre-existing","id":"pretty-1.1.3.6","pkg-name":"pretty","pkg-version":"1.1.3.6","depends":["base-4.12.0.0","deepseq-1.4.4.0","ghc-prim-0.5.3"]},{"type":"pre-existing","id":"process-1.6.5.0","pkg-name":"process","pkg-version":"1.6.5.0","depends":["base-4.12.0.0","deepseq-1.4.4.0","directory-1.3.3.0","filepath-1.4.2.1","unix-2.7.2.2"]},{"type":"configured","id":"random-1.2.0-f975454f78491c8b834a9026806b59ad4e6cbebac633684d977c1bf1bb394421","pkg-name":"random","pkg-version":"1.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"195506fedaa7c31c1fa2a747e9b49b4a5d1f0b09dd8f1291f23a771656faeec3","pkg-src-sha256":"e4519cf7c058bfd5bdbe4acc782284acc9e25e74487208619ca83cbcd63fb9de","depends":["base-4.12.0.0","bytestring-0.10.8.2","deepseq-1.4.4.0","mtl-2.2.2","splitmix-0.1.0.3-495ff5a958a036b388c5fb1ec95d09b6e221914366e7c53f4e181bd8dbef71f9"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"regex-base-0.94.0.1-8daf12dc69a5224d3cb7813e6280b915706276fe3b3671583aa6b7ad031b7344","pkg-name":"regex-base","pkg-version":"0.94.0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"6e3546b73cd5489201d481aa645a531f2c61aa317984e31c5f379ac0bcbfbfad","pkg-src-sha256":"71b1d96fff201f31fe8cd4532f056aca03a21cd486890256dc3007dd73adedd9","depends":["array-0.5.3.0","base-4.12.0.0","bytestring-0.10.8.2","containers-0.6.0.1","mtl-2.2.2","text-1.2.3.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"regex-posix-0.96.0.1-eba6c312f830e3ee4415cc4d263d6351a350a7d7b5aa3c618242a1bc64eeeece","pkg-name":"regex-posix","pkg-version":"0.96.0.1","flags":{"_regex-posix-clib":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"b6421e5356766b0c0a78b6094ae2e3a6259b42c147b717283c03c1cb09163dca","pkg-src-sha256":"c7827c391919227711e1cff0a762b1678fd8739f9c902fc183041ff34f59259c","depends":["array-0.5.3.0","base-4.12.0.0","bytestring-0.10.8.2","containers-0.6.0.1","regex-base-0.94.0.1-8daf12dc69a5224d3cb7813e6280b915706276fe3b3671583aa6b7ad031b7344"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"resolv-0.1.2.0-839f45c81c7fff34820bc93f39bf071c78acc518c5fdaa3e3cfdbf27d1f5e16d","pkg-name":"resolv","pkg-version":"0.1.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"25c6e802dc342307e78e5e60433f5e20d03aa783b08b009a399100eb9b6ec529","pkg-src-sha256":"81a2bafad484db123cf8d17a02d98bb388a127fd0f822fa022589468a0e64671","components":{"lib":{"depends":["base-4.12.0.0","base16-bytestring-1.0.1.0-1746bcc67bba177c17e33a8fba687adf44ffb730cb52632e82c956e36819a4f9","binary-0.8.6.0","bytestring-0.10.8.2","containers-0.6.0.1"],"exe-depends":[]}}},{"type":"pre-existing","id":"rts","pkg-name":"rts","pkg-version":"1.0","depends":[]},{"type":"configured","id":"splitmix-0.1.0.3-495ff5a958a036b388c5fb1ec95d09b6e221914366e7c53f4e181bd8dbef71f9","pkg-name":"splitmix","pkg-version":"0.1.0.3","flags":{"optimised-mixer":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fc3aae74c467f4b608050bef53aec17904a618731df9407e655d8f3bf8c32d5c","pkg-src-sha256":"46009f4b000c9e6613377767b8718bf38476469f2a8e2162d98cc246882d5a35","depends":["base-4.12.0.0","deepseq-1.4.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"stm-2.5.0.0","pkg-name":"stm","pkg-version":"2.5.0.0","depends":["array-0.5.3.0","base-4.12.0.0"]},{"type":"configured","id":"tar-0.5.1.1-2bac801a527e5793b7752115b282082cf46ce8f20e48fb17bd96599f96366b21","pkg-name":"tar","pkg-version":"0.5.1.1","flags":{"old-bytestring":false,"old-time":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"94ded05718fe75b88c98e7113feeb9fca50688a7e59b6aefd80a6f48438c5062","pkg-src-sha256":"b384449f62b2b0aa3e6d2cb1004b8060b01f21ec93e7b63e7af6d8fad8a9f1de","depends":["array-0.5.3.0","base-4.12.0.0","bytestring-0.10.8.2","containers-0.6.0.1","deepseq-1.4.4.0","directory-1.3.3.0","filepath-1.4.2.1","time-1.8.0.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"template-haskell-2.14.0.0","pkg-name":"template-haskell","pkg-version":"2.14.0.0","depends":["base-4.12.0.0","ghc-boot-th-8.6.5","pretty-1.1.3.6"]},{"type":"pre-existing","id":"text-1.2.3.1","pkg-name":"text","pkg-version":"1.2.3.1","depends":["array-0.5.3.0","base-4.12.0.0","binary-0.8.6.0","bytestring-0.10.8.2","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0"]},{"type":"configured","id":"th-compat-0.1.2-0e7d070c7da2da668dde8b1c69a1d534b3ebfc35538ee0ce437bd5a824475140","pkg-name":"th-compat","pkg-version":"0.1.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"3d55de1adc542c1a870c9ada90da2fbbe5f4e8bcd3eed545a55c3df9311b32a8","pkg-src-sha256":"2bc45d0199de3dc65ebc9b71251799f5238869dbc6a66bdf0c06c7e23d603801","depends":["base-4.12.0.0","template-haskell-2.14.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"time-1.8.0.2","pkg-name":"time","pkg-version":"1.8.0.2","depends":["base-4.12.0.0","deepseq-1.4.4.0"]},{"type":"pre-existing","id":"transformers-0.5.6.2","pkg-name":"transformers","pkg-version":"0.5.6.2","depends":["base-4.12.0.0"]},{"type":"pre-existing","id":"unix-2.7.2.2","pkg-name":"unix","pkg-version":"2.7.2.2","depends":["base-4.12.0.0","bytestring-0.10.8.2","time-1.8.0.2"]},{"type":"configured","id":"zlib-0.6.2.3-ed437c4dad11e2d9e8074a8f3cc6b184779db7ddfdf413b593887e96726d7450","pkg-name":"zlib","pkg-version":"0.6.2.3","flags":{"bundled-c-zlib":false,"non-blocking-ffi":false,"pkg-config":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"28f4d460c260e074cab833625454564b9783a3389b7bb91fd54da2790b39592c","pkg-src-sha256":"807f6bddf9cb3c517ce5757d991dde3c7e319953a22c86ee03d74534bd5abc88","depends":["base-4.12.0.0","bytestring-0.10.8.2"],"exe-depends":[],"component-name":"lib"}]}
\ No newline at end of file
+{"cabal-version":"3.6","cabal-lib-version":"3.6.0.0","compiler-id":"ghc-8.6.5","os":"linux","arch":"x86_64","install-plan":[{"type":"configured","id":"Cabal-3.7.0.0-inplace","pkg-name":"Cabal","pkg-version":"3.7.0.0","flags":{"bundled-binary-generic":false},"style":"local","pkg-src":{"type":"local","path":"/home/hugin/Documents/haskell/cabal/Cabal"},"dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/Cabal-3.7.0.0","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/Cabal-3.7.0.0/build-info.json","depends":["array-0.5.3.0","base-4.12.0.0","binary-0.8.6.0","bytestring-0.10.8.2","containers-0.6.0.1","deepseq-1.4.4.0","directory-1.3.3.0","filepath-1.4.2.1","mtl-2.2.2","parsec-3.1.13.0","pretty-1.1.3.6","process-1.6.5.0","text-1.2.3.1","time-1.8.0.2","transformers-0.5.6.2","unix-2.7.2.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"HTTP-4000.3.16-0d823d46f86c3392de7d503373270e1286f3e6594ebc111b73c5a59a04e16003","pkg-name":"HTTP","pkg-version":"4000.3.16","flags":{"conduit10":false,"mtl1":false,"network-uri":true,"warn-as-error":false,"warp-tests":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4265b1966b2bbb302a8a80d7b485197694785ec1496d5d9314b4b5931ffbd093","pkg-src-sha256":"d6091c037871ac3d08d021c906206174567499d5a26a6cb804cf530cd590fe2d","depends":["array-0.5.3.0","base-4.12.0.0","bytestring-0.10.8.2","mtl-2.2.2","network-3.1.2.2-e8d4773e65d0f16d3942eb1877af759e0a58a9aaef78126451fa386eedff18d4","network-uri-2.6.4.1-2e14423f89f3ac3c2ee00e429745a82fc831c9aab0062dbfb95d83e883cb22b3","parsec-3.1.13.0","time-1.8.0.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"array-0.5.3.0","pkg-name":"array","pkg-version":"0.5.3.0","depends":["base-4.12.0.0"]},{"type":"configured","id":"async-2.2.3-818f86f66118d6f1b7d4b40731ce59e3c9e92160fb631a38de4fabd8ab1f5296","pkg-name":"async","pkg-version":"2.2.3","flags":{"bench":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"0cbefb8247308b38e397e675f832b9bd5317ff1872001d5358f213654423c55b","pkg-src-sha256":"467af3a0037947a5232ecf5f4efbd4cf2118aaa2310566d7f40ac82b0e32935c","depends":["base-4.12.0.0","hashable-1.3.2.0-1bb7c7018c86c9c4a5248759905c7d0f04af0ba12bb70158514e5013ef76da96","stm-2.5.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"base-4.12.0.0","pkg-name":"base","pkg-version":"4.12.0.0","depends":["ghc-prim-0.5.3","integer-gmp-1.0.2.0","rts"]},{"type":"configured","id":"base16-bytestring-1.0.1.0-1746bcc67bba177c17e33a8fba687adf44ffb730cb52632e82c956e36819a4f9","pkg-name":"base16-bytestring","pkg-version":"1.0.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"33b9d57afa334d06485033e930c6b13fc760baf88fd8f715ae2f9a4b46e19a54","pkg-src-sha256":"c0c70a4b58be53d36971bd7361ba300f82a5d5ebf7f50e1a2d7bfc8838bdd6fa","depends":["base-4.12.0.0","bytestring-0.10.8.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"base64-bytestring-1.2.1.0-e1989b0c1836f2ac91441b02489a8f60fd9e999173e0514288fd57f7dd0829de","pkg-name":"base64-bytestring","pkg-version":"1.2.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"50ec0e229255d4c45cbdd568da011311b8887f304b931564886016f4984334d8","pkg-src-sha256":"fbf8ed30edde271eb605352021431d8f1b055f95a56af31fe2eacf6bdfdc49c9","depends":["base-4.12.0.0","bytestring-0.10.8.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"binary-0.8.6.0","pkg-name":"binary","pkg-version":"0.8.6.0","depends":["array-0.5.3.0","base-4.12.0.0","bytestring-0.10.8.2","containers-0.6.0.1"]},{"type":"pre-existing","id":"bytestring-0.10.8.2","pkg-name":"bytestring","pkg-version":"0.10.8.2","depends":["base-4.12.0.0","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0"]},{"type":"configured","id":"cabal-install-3.7.0.0-inplace","pkg-name":"cabal-install","pkg-version":"3.7.0.0","flags":{"lukko":true,"native-dns":true},"style":"local","pkg-src":{"type":"local","path":"/home/hugin/Documents/haskell/cabal/cabal-install"},"dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/cabal-install-3.7.0.0","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/cabal-install-3.7.0.0/build-info.json","depends":["Cabal-3.7.0.0-inplace","HTTP-4000.3.16-0d823d46f86c3392de7d503373270e1286f3e6594ebc111b73c5a59a04e16003","array-0.5.3.0","async-2.2.3-818f86f66118d6f1b7d4b40731ce59e3c9e92160fb631a38de4fabd8ab1f5296","base-4.12.0.0","base16-bytestring-1.0.1.0-1746bcc67bba177c17e33a8fba687adf44ffb730cb52632e82c956e36819a4f9","binary-0.8.6.0","bytestring-0.10.8.2","cabal-install-solver-3.7.0.0-inplace","containers-0.6.0.1","cryptohash-sha256-0.11.102.0-1788be3651f34f47baf624f708f86ea7d6db2d13268558e536d0a1bd2b97e074","deepseq-1.4.4.0","directory-1.3.3.0","echo-0.1.4-f2f39bb54e76ea77d5753fd796c4b4126a9c4a7d8b34fbeb350261c52821e0f3","edit-distance-0.2.2.1-7bd6af1f732ef2a1f2b04b4f27ad793f3ed3fa5623ddc8e07a4e489f60cbcee8","exceptions-0.10.4-2e686fdff7a6bdbd62e24641169087c094e991de8ab3f6381a859306fd258e32","filepath-1.4.2.1","hackage-security-0.6.0.1-inplace","hashable-1.3.2.0-1bb7c7018c86c9c4a5248759905c7d0f04af0ba12bb70158514e5013ef76da96","lukko-0.1.1.3-4c76677eee1fcca961ba3794c92e0a1f4e9c3ced333a9c3f048e6f3f312cb890","mtl-2.2.2","network-uri-2.6.4.1-2e14423f89f3ac3c2ee00e429745a82fc831c9aab0062dbfb95d83e883cb22b3","parsec-3.1.13.0","pretty-1.1.3.6","process-1.6.5.0","random-1.2.0-f975454f78491c8b834a9026806b59ad4e6cbebac633684d977c1bf1bb394421","regex-base-0.94.0.1-8daf12dc69a5224d3cb7813e6280b915706276fe3b3671583aa6b7ad031b7344","regex-posix-0.96.0.1-eba6c312f830e3ee4415cc4d263d6351a350a7d7b5aa3c618242a1bc64eeeece","resolv-0.1.2.0-839f45c81c7fff34820bc93f39bf071c78acc518c5fdaa3e3cfdbf27d1f5e16d","stm-2.5.0.0","tar-0.5.1.1-2bac801a527e5793b7752115b282082cf46ce8f20e48fb17bd96599f96366b21","text-1.2.3.1","time-1.8.0.2","transformers-0.5.6.2","unix-2.7.2.2","zlib-0.6.2.3-ed437c4dad11e2d9e8074a8f3cc6b184779db7ddfdf413b593887e96726d7450"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"cabal-install-3.7.0.0-inplace-cabal","pkg-name":"cabal-install","pkg-version":"3.7.0.0","flags":{"lukko":true,"native-dns":true},"style":"local","pkg-src":{"type":"local","path":"/home/hugin/Documents/haskell/cabal/cabal-install"},"dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/cabal-install-3.7.0.0/x/cabal","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/cabal-install-3.7.0.0/x/cabal/build-info.json","depends":["Cabal-3.7.0.0-inplace","base-4.12.0.0","cabal-install-3.7.0.0-inplace","directory-1.3.3.0","filepath-1.4.2.1"],"exe-depends":[],"component-name":"exe:cabal","bin-file":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/cabal-install-3.7.0.0/x/cabal/build/cabal/cabal"},{"type":"configured","id":"cabal-install-solver-3.7.0.0-inplace","pkg-name":"cabal-install-solver","pkg-version":"3.7.0.0","flags":{"debug-conflict-sets":false,"debug-expensive-assertions":false,"debug-tracetree":false},"style":"local","pkg-src":{"type":"local","path":"/home/hugin/Documents/haskell/cabal/cabal-install-solver"},"dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/cabal-install-solver-3.7.0.0","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/cabal-install-solver-3.7.0.0/build-info.json","depends":["Cabal-3.7.0.0-inplace","array-0.5.3.0","base-4.12.0.0","binary-0.8.6.0","bytestring-0.10.8.2","containers-0.6.0.1","edit-distance-0.2.2.1-7bd6af1f732ef2a1f2b04b4f27ad793f3ed3fa5623ddc8e07a4e489f60cbcee8","filepath-1.4.2.1","mtl-2.2.2","pretty-1.1.3.6","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"containers-0.6.0.1","pkg-name":"containers","pkg-version":"0.6.0.1","depends":["array-0.5.3.0","base-4.12.0.0","deepseq-1.4.4.0","ghc-prim-0.5.3"]},{"type":"configured","id":"cryptohash-sha256-0.11.102.0-1788be3651f34f47baf624f708f86ea7d6db2d13268558e536d0a1bd2b97e074","pkg-name":"cryptohash-sha256","pkg-version":"0.11.102.0","flags":{"exe":false,"use-cbits":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"797a0af7b8a0e654cbddd3df6b9de02d2cbfcb2292cf001399ab53910fbbb76c","pkg-src-sha256":"8ad6e9875a9128f6cd66d65d80f9f85dd0559c73ac00bb37f71fbee820d10519","depends":["base-4.12.0.0","bytestring-0.10.8.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"deepseq-1.4.4.0","pkg-name":"deepseq","pkg-version":"1.4.4.0","depends":["array-0.5.3.0","base-4.12.0.0"]},{"type":"pre-existing","id":"directory-1.3.3.0","pkg-name":"directory","pkg-version":"1.3.3.0","depends":["base-4.12.0.0","filepath-1.4.2.1","time-1.8.0.2","unix-2.7.2.2"]},{"type":"configured","id":"echo-0.1.4-f2f39bb54e76ea77d5753fd796c4b4126a9c4a7d8b34fbeb350261c52821e0f3","pkg-name":"echo","pkg-version":"0.1.4","flags":{"example":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ccce771562c49a2b29a52046ca68c62179e97e8fbeacdae32ca84a85445e8f42","pkg-src-sha256":"c9fe1bf2904825a65b667251ec644f197b71dc5c209d2d254be5de3d496b0e43","depends":["base-4.12.0.0","process-1.6.5.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"ed25519-0.0.5.0-751e5a5744fdd2d7ce2245bc124b15133d0dff1db6b0441d93ced591450d9edb","pkg-name":"ed25519","pkg-version":"0.0.5.0","flags":{"no-donna":true,"test-doctests":true,"test-hlint":true,"test-properties":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fb98b08de467d51f788f8bd9391f0e9ab9bd4d8dfc264296b895ffea0d822dfa","pkg-src-sha256":"d8a5958ebfa9309790efade64275dc5c441b568645c45ceed1b0c6ff36d6156d","depends":["base-4.12.0.0","bytestring-0.10.8.2","ghc-prim-0.5.3"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"edit-distance-0.2.2.1-7bd6af1f732ef2a1f2b04b4f27ad793f3ed3fa5623ddc8e07a4e489f60cbcee8","pkg-name":"edit-distance","pkg-version":"0.2.2.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4d33a49cd383d50af090f1b888642d10116e43809f9da6023d9fc6f67d2656ee","pkg-src-sha256":"3e8885ee2f56ad4da940f043ae8f981ee2fe336b5e8e4ba3f7436cff4f526c4a","depends":["array-0.5.3.0","base-4.12.0.0","containers-0.6.0.1","random-1.2.0-f975454f78491c8b834a9026806b59ad4e6cbebac633684d977c1bf1bb394421"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"exceptions-0.10.4-2e686fdff7a6bdbd62e24641169087c094e991de8ab3f6381a859306fd258e32","pkg-name":"exceptions","pkg-version":"0.10.4","flags":{"transformers-0-4":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"d2546046d7ba4b460d3bc7fd269cd2c52d0b7fb3cfecc038715dd0881b78a484","pkg-src-sha256":"4d0bfb4355cffcd67d300811df9d5fe44ea3594ed63750795bfc1f797abd84cf","depends":["base-4.12.0.0","mtl-2.2.2","stm-2.5.0.0","template-haskell-2.14.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"filepath-1.4.2.1","pkg-name":"filepath","pkg-version":"1.4.2.1","depends":["base-4.12.0.0"]},{"type":"pre-existing","id":"ghc-boot-th-8.6.5","pkg-name":"ghc-boot-th","pkg-version":"8.6.5","depends":["base-4.12.0.0"]},{"type":"pre-existing","id":"ghc-prim-0.5.3","pkg-name":"ghc-prim","pkg-version":"0.5.3","depends":["rts"]},{"type":"configured","id":"hackage-security-0.6.0.1-inplace","pkg-name":"hackage-security","pkg-version":"0.6.0.1","flags":{"base48":true,"lukko":true,"mtl21":false,"old-directory":false,"use-network-uri":true},"style":"inplace","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ae6cdda307237c0b7efeebfb0bf23ff8a26c30f5ba295dce5e4f81ef6e63fff6","pkg-src-sha256":"9162b473af5a21c1ff32a50b972b9acf51f4c901604a22cf08a2dccac2f82f17","dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/hackage-security-0.6.0.1","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.6.5/hackage-security-0.6.0.1/build-info.json","depends":["Cabal-3.7.0.0-inplace","base-4.12.0.0","base16-bytestring-1.0.1.0-1746bcc67bba177c17e33a8fba687adf44ffb730cb52632e82c956e36819a4f9","base64-bytestring-1.2.1.0-e1989b0c1836f2ac91441b02489a8f60fd9e999173e0514288fd57f7dd0829de","bytestring-0.10.8.2","containers-0.6.0.1","cryptohash-sha256-0.11.102.0-1788be3651f34f47baf624f708f86ea7d6db2d13268558e536d0a1bd2b97e074","directory-1.3.3.0","ed25519-0.0.5.0-751e5a5744fdd2d7ce2245bc124b15133d0dff1db6b0441d93ced591450d9edb","filepath-1.4.2.1","ghc-prim-0.5.3","lukko-0.1.1.3-4c76677eee1fcca961ba3794c92e0a1f4e9c3ced333a9c3f048e6f3f312cb890","mtl-2.2.2","network-3.1.2.2-e8d4773e65d0f16d3942eb1877af759e0a58a9aaef78126451fa386eedff18d4","network-uri-2.6.4.1-2e14423f89f3ac3c2ee00e429745a82fc831c9aab0062dbfb95d83e883cb22b3","parsec-3.1.13.0","pretty-1.1.3.6","tar-0.5.1.1-2bac801a527e5793b7752115b282082cf46ce8f20e48fb17bd96599f96366b21","template-haskell-2.14.0.0","time-1.8.0.2","transformers-0.5.6.2","zlib-0.6.2.3-ed437c4dad11e2d9e8074a8f3cc6b184779db7ddfdf413b593887e96726d7450"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hashable-1.3.2.0-1bb7c7018c86c9c4a5248759905c7d0f04af0ba12bb70158514e5013ef76da96","pkg-name":"hashable","pkg-version":"1.3.2.0","flags":{"integer-gmp":true,"random-initial-seed":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"02bc544e3546713b1d76a3c5bfc836a5fd19a5b4348ef4a52bb973d0c35a4b89","pkg-src-sha256":"59bd964b6fe52b04825cf5402c87981068c051f351b2cb940b75f1c60719d637","depends":["base-4.12.0.0","bytestring-0.10.8.2","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0","text-1.2.3.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hsc2hs-0.68.7-e-hsc2hs-0c4585ed41291b35ebc895b38398cb967e27e28d827b43b63adf9034d1517144","pkg-name":"hsc2hs","pkg-version":"0.68.7","flags":{"in-ghc-tree":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4a0f6860a17e7c245646975e3c2981416afdcb6a7b3553c31005eb3641a7f55b","pkg-src-sha256":"fd7915e41e3ed3bc7750fee0e8add2b4f32dcac8b7c544cfdf5542293223894a","depends":["base-4.12.0.0","containers-0.6.0.1","directory-1.3.3.0","filepath-1.4.2.1","process-1.6.5.0"],"exe-depends":[],"component-name":"exe:hsc2hs","bin-file":"/home/hugin/.cabal/store/ghc-8.6.5/hsc2hs-0.68.7-e-hsc2hs-0c4585ed41291b35ebc895b38398cb967e27e28d827b43b63adf9034d1517144/bin/hsc2hs"},{"type":"pre-existing","id":"integer-gmp-1.0.2.0","pkg-name":"integer-gmp","pkg-version":"1.0.2.0","depends":["ghc-prim-0.5.3"]},{"type":"configured","id":"lukko-0.1.1.3-4c76677eee1fcca961ba3794c92e0a1f4e9c3ced333a9c3f048e6f3f312cb890","pkg-name":"lukko","pkg-version":"0.1.1.3","flags":{"ofd-locking":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"2db49b6cb6632a46ec446fc51870cd0d49e0a66d1c5d2063f46ae52a100eb856","pkg-src-sha256":"a80efb60cfa3dae18682c01980d76d5f7e413e191cd186992e1bf7388d48ab1f","depends":["base-4.12.0.0"],"exe-depends":["hsc2hs-0.68.7-e-hsc2hs-0c4585ed41291b35ebc895b38398cb967e27e28d827b43b63adf9034d1517144"],"component-name":"lib"},{"type":"pre-existing","id":"mtl-2.2.2","pkg-name":"mtl","pkg-version":"2.2.2","depends":["base-4.12.0.0","transformers-0.5.6.2"]},{"type":"configured","id":"network-3.1.2.2-e8d4773e65d0f16d3942eb1877af759e0a58a9aaef78126451fa386eedff18d4","pkg-name":"network","pkg-version":"3.1.2.2","flags":{"devel":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"218e2968e03d99c40f32a2ef7cc41a848969096ba1c780ff2e57997a00246b06","pkg-src-sha256":"55012c0b22f9c7548b1f7b3bacc2c6ec7058c7f92238a69561528f1a0fa60eb6","components":{"lib":{"depends":["base-4.12.0.0","bytestring-0.10.8.2","deepseq-1.4.4.0","directory-1.3.3.0"],"exe-depends":["hsc2hs-0.68.7-e-hsc2hs-0c4585ed41291b35ebc895b38398cb967e27e28d827b43b63adf9034d1517144"]}}},{"type":"configured","id":"network-uri-2.6.4.1-2e14423f89f3ac3c2ee00e429745a82fc831c9aab0062dbfb95d83e883cb22b3","pkg-name":"network-uri","pkg-version":"2.6.4.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"a4765164ed0a2d1668446eb2e03460ce98645fbf083598c690846af79b7de10d","pkg-src-sha256":"57856db93608a4d419f681b881c9b8d4448800d5a687587dc37e8a9e0b223584","depends":["base-4.12.0.0","deepseq-1.4.4.0","parsec-3.1.13.0","template-haskell-2.14.0.0","th-compat-0.1.2-0e7d070c7da2da668dde8b1c69a1d534b3ebfc35538ee0ce437bd5a824475140"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"parsec-3.1.13.0","pkg-name":"parsec","pkg-version":"3.1.13.0","depends":["base-4.12.0.0","bytestring-0.10.8.2","mtl-2.2.2","text-1.2.3.1"]},{"type":"pre-existing","id":"pretty-1.1.3.6","pkg-name":"pretty","pkg-version":"1.1.3.6","depends":["base-4.12.0.0","deepseq-1.4.4.0","ghc-prim-0.5.3"]},{"type":"pre-existing","id":"process-1.6.5.0","pkg-name":"process","pkg-version":"1.6.5.0","depends":["base-4.12.0.0","deepseq-1.4.4.0","directory-1.3.3.0","filepath-1.4.2.1","unix-2.7.2.2"]},{"type":"configured","id":"random-1.2.0-f975454f78491c8b834a9026806b59ad4e6cbebac633684d977c1bf1bb394421","pkg-name":"random","pkg-version":"1.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"195506fedaa7c31c1fa2a747e9b49b4a5d1f0b09dd8f1291f23a771656faeec3","pkg-src-sha256":"e4519cf7c058bfd5bdbe4acc782284acc9e25e74487208619ca83cbcd63fb9de","depends":["base-4.12.0.0","bytestring-0.10.8.2","deepseq-1.4.4.0","mtl-2.2.2","splitmix-0.1.0.3-495ff5a958a036b388c5fb1ec95d09b6e221914366e7c53f4e181bd8dbef71f9"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"regex-base-0.94.0.1-8daf12dc69a5224d3cb7813e6280b915706276fe3b3671583aa6b7ad031b7344","pkg-name":"regex-base","pkg-version":"0.94.0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"35ff2d13c0e3ac364469c19e4c7c8775f5148977d8fcef58a424df0a10a53fa7","pkg-src-sha256":"71b1d96fff201f31fe8cd4532f056aca03a21cd486890256dc3007dd73adedd9","depends":["array-0.5.3.0","base-4.12.0.0","bytestring-0.10.8.2","containers-0.6.0.1","mtl-2.2.2","text-1.2.3.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"regex-posix-0.96.0.1-eba6c312f830e3ee4415cc4d263d6351a350a7d7b5aa3c618242a1bc64eeeece","pkg-name":"regex-posix","pkg-version":"0.96.0.1","flags":{"_regex-posix-clib":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"b6421e5356766b0c0a78b6094ae2e3a6259b42c147b717283c03c1cb09163dca","pkg-src-sha256":"c7827c391919227711e1cff0a762b1678fd8739f9c902fc183041ff34f59259c","depends":["array-0.5.3.0","base-4.12.0.0","bytestring-0.10.8.2","containers-0.6.0.1","regex-base-0.94.0.1-8daf12dc69a5224d3cb7813e6280b915706276fe3b3671583aa6b7ad031b7344"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"resolv-0.1.2.0-839f45c81c7fff34820bc93f39bf071c78acc518c5fdaa3e3cfdbf27d1f5e16d","pkg-name":"resolv","pkg-version":"0.1.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"25c6e802dc342307e78e5e60433f5e20d03aa783b08b009a399100eb9b6ec529","pkg-src-sha256":"81a2bafad484db123cf8d17a02d98bb388a127fd0f822fa022589468a0e64671","components":{"lib":{"depends":["base-4.12.0.0","base16-bytestring-1.0.1.0-1746bcc67bba177c17e33a8fba687adf44ffb730cb52632e82c956e36819a4f9","binary-0.8.6.0","bytestring-0.10.8.2","containers-0.6.0.1"],"exe-depends":[]}}},{"type":"pre-existing","id":"rts","pkg-name":"rts","pkg-version":"1.0","depends":[]},{"type":"configured","id":"splitmix-0.1.0.3-495ff5a958a036b388c5fb1ec95d09b6e221914366e7c53f4e181bd8dbef71f9","pkg-name":"splitmix","pkg-version":"0.1.0.3","flags":{"optimised-mixer":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fc3aae74c467f4b608050bef53aec17904a618731df9407e655d8f3bf8c32d5c","pkg-src-sha256":"46009f4b000c9e6613377767b8718bf38476469f2a8e2162d98cc246882d5a35","depends":["base-4.12.0.0","deepseq-1.4.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"stm-2.5.0.0","pkg-name":"stm","pkg-version":"2.5.0.0","depends":["array-0.5.3.0","base-4.12.0.0"]},{"type":"configured","id":"tar-0.5.1.1-2bac801a527e5793b7752115b282082cf46ce8f20e48fb17bd96599f96366b21","pkg-name":"tar","pkg-version":"0.5.1.1","flags":{"old-bytestring":false,"old-time":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"94ded05718fe75b88c98e7113feeb9fca50688a7e59b6aefd80a6f48438c5062","pkg-src-sha256":"b384449f62b2b0aa3e6d2cb1004b8060b01f21ec93e7b63e7af6d8fad8a9f1de","depends":["array-0.5.3.0","base-4.12.0.0","bytestring-0.10.8.2","containers-0.6.0.1","deepseq-1.4.4.0","directory-1.3.3.0","filepath-1.4.2.1","time-1.8.0.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"template-haskell-2.14.0.0","pkg-name":"template-haskell","pkg-version":"2.14.0.0","depends":["base-4.12.0.0","ghc-boot-th-8.6.5","pretty-1.1.3.6"]},{"type":"pre-existing","id":"text-1.2.3.1","pkg-name":"text","pkg-version":"1.2.3.1","depends":["array-0.5.3.0","base-4.12.0.0","binary-0.8.6.0","bytestring-0.10.8.2","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0"]},{"type":"configured","id":"th-compat-0.1.2-0e7d070c7da2da668dde8b1c69a1d534b3ebfc35538ee0ce437bd5a824475140","pkg-name":"th-compat","pkg-version":"0.1.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"3d55de1adc542c1a870c9ada90da2fbbe5f4e8bcd3eed545a55c3df9311b32a8","pkg-src-sha256":"2bc45d0199de3dc65ebc9b71251799f5238869dbc6a66bdf0c06c7e23d603801","depends":["base-4.12.0.0","template-haskell-2.14.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"time-1.8.0.2","pkg-name":"time","pkg-version":"1.8.0.2","depends":["base-4.12.0.0","deepseq-1.4.4.0"]},{"type":"pre-existing","id":"transformers-0.5.6.2","pkg-name":"transformers","pkg-version":"0.5.6.2","depends":["base-4.12.0.0"]},{"type":"pre-existing","id":"unix-2.7.2.2","pkg-name":"unix","pkg-version":"2.7.2.2","depends":["base-4.12.0.0","bytestring-0.10.8.2","time-1.8.0.2"]},{"type":"configured","id":"zlib-0.6.2.3-ed437c4dad11e2d9e8074a8f3cc6b184779db7ddfdf413b593887e96726d7450","pkg-name":"zlib","pkg-version":"0.6.2.3","flags":{"bundled-c-zlib":false,"non-blocking-ffi":false,"pkg-config":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"28f4d460c260e074cab833625454564b9783a3389b7bb91fd54da2790b39592c","pkg-src-sha256":"807f6bddf9cb3c517ce5757d991dde3c7e319953a22c86ee03d74534bd5abc88","depends":["base-4.12.0.0","bytestring-0.10.8.2"],"exe-depends":[],"component-name":"lib"}]}
\ No newline at end of file
diff --git a/bootstrap/linux-8.8.4.json b/bootstrap/linux-8.8.4.json
index 00669a6df4b288d6ee3b5b42d6abf5c826a683d2..3eb298ceca4773f137ddcce9b76551b0dd65b595 100644
--- a/bootstrap/linux-8.8.4.json
+++ b/bootstrap/linux-8.8.4.json
@@ -3,7 +3,7 @@
         {
             "source": "local",
             "package": "Cabal",
-            "version": "3.6.0.0",
+            "version": "3.7.0.0",
             "flags": [
                 "-bundled-binary-generic"
             ],
@@ -90,10 +90,10 @@
         {
             "source": "hackage",
             "package": "base64-bytestring",
-            "version": "1.2.0.1",
+            "version": "1.2.1.0",
             "flags": [],
-            "cabal_sha256": "f4f998235fc0825ab636ca9241b827de5805b336625eb1c7822f1798a238b6ac",
-            "src_sha256": "af09b17d072eb1391d91e30b4186dd1797330647ef79268ecd7fcce8f5afc638",
+            "cabal_sha256": "50ec0e229255d4c45cbdd568da011311b8887f304b931564886016f4984334d8",
+            "src_sha256": "fbf8ed30edde271eb605352021431d8f1b055f95a56af31fe2eacf6bdfdc49c9",
             "revision": 0
         },
         {
@@ -128,7 +128,7 @@
         {
             "source": "local",
             "package": "cabal-install-solver",
-            "version": "3.6.0.0",
+            "version": "3.7.0.0",
             "flags": [
                 "-debug-conflict-sets",
                 "-debug-expensive-assertions",
@@ -242,9 +242,9 @@
             "package": "regex-base",
             "version": "0.94.0.1",
             "flags": [],
-            "cabal_sha256": "6e3546b73cd5489201d481aa645a531f2c61aa317984e31c5f379ac0bcbfbfad",
+            "cabal_sha256": "35ff2d13c0e3ac364469c19e4c7c8775f5148977d8fcef58a424df0a10a53fa7",
             "src_sha256": "71b1d96fff201f31fe8cd4532f056aca03a21cd486890256dc3007dd73adedd9",
-            "revision": 0
+            "revision": 1
         },
         {
             "source": "hackage",
@@ -269,7 +269,7 @@
         {
             "source": "local",
             "package": "cabal-install",
-            "version": "3.6.0.0",
+            "version": "3.7.0.0",
             "flags": [
                 "+lukko",
                 "+native-dns"
@@ -281,7 +281,7 @@
         {
             "source": "local",
             "package": "cabal-install",
-            "version": "3.6.0.0",
+            "version": "3.7.0.0",
             "flags": [
                 "+lukko",
                 "+native-dns"
diff --git a/bootstrap/linux-8.8.4.plan.json b/bootstrap/linux-8.8.4.plan.json
index c153d3a61b50eea845709a1c2838eb44f0b61c8b..411cf259d73a2d54e71a9ab3ad16af7730e87c93 100644
--- a/bootstrap/linux-8.8.4.plan.json
+++ b/bootstrap/linux-8.8.4.plan.json
@@ -1 +1 @@
-{"cabal-version":"3.4.0.0","cabal-lib-version":"3.4.0.0","compiler-id":"ghc-8.8.4","os":"linux","arch":"x86_64","install-plan":[{"type":"configured","id":"Cabal-3.6.0.0-inplace","pkg-name":"Cabal","pkg-version":"3.6.0.0","flags":{"bundled-binary-generic":false},"style":"local","pkg-src":{"type":"local","path":"/home/tapas/haskell/cabal/Cabal"},"dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Cabal-3.6.0.0","depends":["array-0.5.4.0","base-4.13.0.0","binary-0.8.7.0","bytestring-0.10.10.1","containers-0.6.2.1","deepseq-1.4.4.0","directory-1.3.6.0","filepath-1.4.2.1","mtl-2.2.2","parsec-3.1.14.0","pretty-1.1.3.6","process-1.6.9.0","text-1.2.4.0","time-1.9.3","transformers-0.5.6.2","unix-2.7.2.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"HTTP-4000.3.16-cd694a0275992e8644ec075f0efcec08efb7432ea540ffc41c8ba0856438c55e","pkg-name":"HTTP","pkg-version":"4000.3.16","flags":{"conduit10":false,"mtl1":false,"network-uri":true,"warn-as-error":false,"warp-tests":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4265b1966b2bbb302a8a80d7b485197694785ec1496d5d9314b4b5931ffbd093","pkg-src-sha256":"d6091c037871ac3d08d021c906206174567499d5a26a6cb804cf530cd590fe2d","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","mtl-2.2.2","network-3.1.2.2-252ed935ce669c59353b7e22b4963aa9a2aec2afed28f38f914470b684fc93cb","network-uri-2.6.4.1-a2299a950b1f05dae271dd34b1b2e9a01d0c35ec06136201ae1cd1c997891658","parsec-3.1.14.0","time-1.9.3"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"array-0.5.4.0","pkg-name":"array","pkg-version":"0.5.4.0","depends":["base-4.13.0.0"]},{"type":"configured","id":"async-2.2.3-7f9ab3db689722e5332b374e7d2283ddb22a1f8b483bfcec6ecbc00a740493a6","pkg-name":"async","pkg-version":"2.2.3","flags":{"bench":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"0cbefb8247308b38e397e675f832b9bd5317ff1872001d5358f213654423c55b","pkg-src-sha256":"467af3a0037947a5232ecf5f4efbd4cf2118aaa2310566d7f40ac82b0e32935c","depends":["base-4.13.0.0","hashable-1.3.2.0-b2895aa2033bddd08152025c0fd5e6de433a11990fc4ea63f67b5d877c4e2030","stm-2.5.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"base-4.13.0.0","pkg-name":"base","pkg-version":"4.13.0.0","depends":["ghc-prim-0.5.3","integer-gmp-1.0.2.0","rts"]},{"type":"configured","id":"base16-bytestring-1.0.1.0-7012dade26da6d9b1d19ca2cf95148bf35a7e0ea382d566d5646f82e667be147","pkg-name":"base16-bytestring","pkg-version":"1.0.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"33b9d57afa334d06485033e930c6b13fc760baf88fd8f715ae2f9a4b46e19a54","pkg-src-sha256":"c0c70a4b58be53d36971bd7361ba300f82a5d5ebf7f50e1a2d7bfc8838bdd6fa","depends":["base-4.13.0.0","bytestring-0.10.10.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"base64-bytestring-1.2.0.1-aac9a941b0fa7696474f174d6cbb4cee4c06610f2cfceb69c0e21ec58390bfab","pkg-name":"base64-bytestring","pkg-version":"1.2.0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"f4f998235fc0825ab636ca9241b827de5805b336625eb1c7822f1798a238b6ac","pkg-src-sha256":"af09b17d072eb1391d91e30b4186dd1797330647ef79268ecd7fcce8f5afc638","depends":["base-4.13.0.0","bytestring-0.10.10.1"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"binary-0.8.7.0","pkg-name":"binary","pkg-version":"0.8.7.0","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1"]},{"type":"pre-existing","id":"bytestring-0.10.10.1","pkg-name":"bytestring","pkg-version":"0.10.10.1","depends":["base-4.13.0.0","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0"]},{"type":"configured","id":"cabal-install-3.6.0.0-inplace","pkg-name":"cabal-install","pkg-version":"3.6.0.0","flags":{"lukko":true,"native-dns":true},"style":"local","pkg-src":{"type":"local","path":"/home/tapas/haskell/cabal/cabal-install"},"dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/cabal-install-3.6.0.0","depends":["Cabal-3.6.0.0-inplace","HTTP-4000.3.16-cd694a0275992e8644ec075f0efcec08efb7432ea540ffc41c8ba0856438c55e","array-0.5.4.0","async-2.2.3-7f9ab3db689722e5332b374e7d2283ddb22a1f8b483bfcec6ecbc00a740493a6","base-4.13.0.0","base16-bytestring-1.0.1.0-7012dade26da6d9b1d19ca2cf95148bf35a7e0ea382d566d5646f82e667be147","binary-0.8.7.0","bytestring-0.10.10.1","cabal-install-solver-3.6.0.0-inplace","containers-0.6.2.1","cryptohash-sha256-0.11.102.0-ecb5cca3663b9524a6b30ab33ce0061346401ec1f94afa114cc152601b84a79e","deepseq-1.4.4.0","directory-1.3.6.0","echo-0.1.4-9c1f3a8af8235ad05535c43c85982dd7fe0208633ce4975ceb102f8a3799400d","edit-distance-0.2.2.1-50b8e1485c1ff01d540cdd1aa590c5d92e9b3c94c8538c733e03d22f5d7e351e","exceptions-0.10.4-cf5072550297b3b6c77388636f11854b0a9f7313fbfcc8c2052bad005e861ca1","filepath-1.4.2.1","hackage-security-0.6.0.1-inplace","hashable-1.3.2.0-b2895aa2033bddd08152025c0fd5e6de433a11990fc4ea63f67b5d877c4e2030","lukko-0.1.1.3-517002f0b210062f4e6ab03f0458ca2f5b7bfdd7f33c0a8d4df9c9bec797413f","mtl-2.2.2","network-uri-2.6.4.1-a2299a950b1f05dae271dd34b1b2e9a01d0c35ec06136201ae1cd1c997891658","parsec-3.1.14.0","pretty-1.1.3.6","process-1.6.9.0","random-1.2.0-00764634d8a1b2874f13ca39a40464d39214f25dd481d12f12f5c40b7f887c49","regex-base-0.94.0.1-ff8164d6ad36836390efbf15f7317bb988cb4208316f2c7841d59d899c865eaf","regex-posix-0.96.0.1-72585e261c0ecf752820fa53f859ec4ccf7745e5822441b073c0cb1ac2276a07","resolv-0.1.2.0-d6b4fb5161bd01de4f6fa4fb792d43776d825fb0ffe766aeed40cb88444683fc","stm-2.5.0.0","tar-0.5.1.1-0bd85e90ebf89c52e78480bbecaf5ad02969a024727ef8111c090654f0e411e2","text-1.2.4.0","time-1.9.3","transformers-0.5.6.2","unix-2.7.2.2","zlib-0.6.2.3-737348e0ac53db8d94cfe31351192c9de7b9c2e3ab4308187f0012c2eee81a64"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"cabal-install-3.6.0.0-inplace-cabal","pkg-name":"cabal-install","pkg-version":"3.6.0.0","flags":{"lukko":true,"native-dns":true},"style":"local","pkg-src":{"type":"local","path":"/home/tapas/haskell/cabal/cabal-install"},"dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/cabal-install-3.6.0.0/x/cabal","depends":["Cabal-3.6.0.0-inplace","base-4.13.0.0","cabal-install-3.6.0.0-inplace","directory-1.3.6.0","filepath-1.4.2.1"],"exe-depends":[],"component-name":"exe:cabal","bin-file":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/cabal-install-3.6.0.0/x/cabal/build/cabal/cabal"},{"type":"configured","id":"cabal-install-solver-3.6.0.0-inplace","pkg-name":"cabal-install-solver","pkg-version":"3.6.0.0","flags":{"debug-conflict-sets":false,"debug-expensive-assertions":false,"debug-tracetree":false},"style":"local","pkg-src":{"type":"local","path":"/home/tapas/haskell/cabal/cabal-install-solver"},"dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/cabal-install-solver-3.6.0.0","depends":["Cabal-3.6.0.0-inplace","array-0.5.4.0","base-4.13.0.0","binary-0.8.7.0","bytestring-0.10.10.1","containers-0.6.2.1","edit-distance-0.2.2.1-50b8e1485c1ff01d540cdd1aa590c5d92e9b3c94c8538c733e03d22f5d7e351e","filepath-1.4.2.1","mtl-2.2.2","pretty-1.1.3.6","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"containers-0.6.2.1","pkg-name":"containers","pkg-version":"0.6.2.1","depends":["array-0.5.4.0","base-4.13.0.0","deepseq-1.4.4.0"]},{"type":"configured","id":"cryptohash-sha256-0.11.102.0-ecb5cca3663b9524a6b30ab33ce0061346401ec1f94afa114cc152601b84a79e","pkg-name":"cryptohash-sha256","pkg-version":"0.11.102.0","flags":{"exe":false,"use-cbits":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"797a0af7b8a0e654cbddd3df6b9de02d2cbfcb2292cf001399ab53910fbbb76c","pkg-src-sha256":"8ad6e9875a9128f6cd66d65d80f9f85dd0559c73ac00bb37f71fbee820d10519","depends":["base-4.13.0.0","bytestring-0.10.10.1"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"deepseq-1.4.4.0","pkg-name":"deepseq","pkg-version":"1.4.4.0","depends":["array-0.5.4.0","base-4.13.0.0"]},{"type":"pre-existing","id":"directory-1.3.6.0","pkg-name":"directory","pkg-version":"1.3.6.0","depends":["base-4.13.0.0","filepath-1.4.2.1","time-1.9.3","unix-2.7.2.2"]},{"type":"configured","id":"echo-0.1.4-9c1f3a8af8235ad05535c43c85982dd7fe0208633ce4975ceb102f8a3799400d","pkg-name":"echo","pkg-version":"0.1.4","flags":{"example":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ccce771562c49a2b29a52046ca68c62179e97e8fbeacdae32ca84a85445e8f42","pkg-src-sha256":"c9fe1bf2904825a65b667251ec644f197b71dc5c209d2d254be5de3d496b0e43","depends":["base-4.13.0.0","process-1.6.9.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"ed25519-0.0.5.0-3c827a886147bcd76622b6d3edb2c4ce11d32d2cc77c7a407f27f4d80ffdb697","pkg-name":"ed25519","pkg-version":"0.0.5.0","flags":{"no-donna":true,"test-doctests":true,"test-hlint":true,"test-properties":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fb98b08de467d51f788f8bd9391f0e9ab9bd4d8dfc264296b895ffea0d822dfa","pkg-src-sha256":"d8a5958ebfa9309790efade64275dc5c441b568645c45ceed1b0c6ff36d6156d","depends":["base-4.13.0.0","bytestring-0.10.10.1","ghc-prim-0.5.3"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"edit-distance-0.2.2.1-50b8e1485c1ff01d540cdd1aa590c5d92e9b3c94c8538c733e03d22f5d7e351e","pkg-name":"edit-distance","pkg-version":"0.2.2.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4d33a49cd383d50af090f1b888642d10116e43809f9da6023d9fc6f67d2656ee","pkg-src-sha256":"3e8885ee2f56ad4da940f043ae8f981ee2fe336b5e8e4ba3f7436cff4f526c4a","depends":["array-0.5.4.0","base-4.13.0.0","containers-0.6.2.1","random-1.2.0-00764634d8a1b2874f13ca39a40464d39214f25dd481d12f12f5c40b7f887c49"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"exceptions-0.10.4-cf5072550297b3b6c77388636f11854b0a9f7313fbfcc8c2052bad005e861ca1","pkg-name":"exceptions","pkg-version":"0.10.4","flags":{"transformers-0-4":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"d2546046d7ba4b460d3bc7fd269cd2c52d0b7fb3cfecc038715dd0881b78a484","pkg-src-sha256":"4d0bfb4355cffcd67d300811df9d5fe44ea3594ed63750795bfc1f797abd84cf","depends":["base-4.13.0.0","mtl-2.2.2","stm-2.5.0.0","template-haskell-2.15.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"filepath-1.4.2.1","pkg-name":"filepath","pkg-version":"1.4.2.1","depends":["base-4.13.0.0"]},{"type":"pre-existing","id":"ghc-boot-th-8.8.4","pkg-name":"ghc-boot-th","pkg-version":"8.8.4","depends":["base-4.13.0.0"]},{"type":"pre-existing","id":"ghc-prim-0.5.3","pkg-name":"ghc-prim","pkg-version":"0.5.3","depends":["rts"]},{"type":"configured","id":"hackage-security-0.6.0.1-inplace","pkg-name":"hackage-security","pkg-version":"0.6.0.1","flags":{"base48":true,"lukko":true,"mtl21":false,"old-directory":false,"use-network-uri":true},"style":"inplace","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ae6cdda307237c0b7efeebfb0bf23ff8a26c30f5ba295dce5e4f81ef6e63fff6","pkg-src-sha256":"9162b473af5a21c1ff32a50b972b9acf51f4c901604a22cf08a2dccac2f82f17","dist-dir":"/home/tapas/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/hackage-security-0.6.0.1","depends":["Cabal-3.6.0.0-inplace","base-4.13.0.0","base16-bytestring-1.0.1.0-7012dade26da6d9b1d19ca2cf95148bf35a7e0ea382d566d5646f82e667be147","base64-bytestring-1.2.0.1-aac9a941b0fa7696474f174d6cbb4cee4c06610f2cfceb69c0e21ec58390bfab","bytestring-0.10.10.1","containers-0.6.2.1","cryptohash-sha256-0.11.102.0-ecb5cca3663b9524a6b30ab33ce0061346401ec1f94afa114cc152601b84a79e","directory-1.3.6.0","ed25519-0.0.5.0-3c827a886147bcd76622b6d3edb2c4ce11d32d2cc77c7a407f27f4d80ffdb697","filepath-1.4.2.1","ghc-prim-0.5.3","lukko-0.1.1.3-517002f0b210062f4e6ab03f0458ca2f5b7bfdd7f33c0a8d4df9c9bec797413f","mtl-2.2.2","network-3.1.2.2-252ed935ce669c59353b7e22b4963aa9a2aec2afed28f38f914470b684fc93cb","network-uri-2.6.4.1-a2299a950b1f05dae271dd34b1b2e9a01d0c35ec06136201ae1cd1c997891658","parsec-3.1.14.0","pretty-1.1.3.6","tar-0.5.1.1-0bd85e90ebf89c52e78480bbecaf5ad02969a024727ef8111c090654f0e411e2","template-haskell-2.15.0.0","time-1.9.3","transformers-0.5.6.2","zlib-0.6.2.3-737348e0ac53db8d94cfe31351192c9de7b9c2e3ab4308187f0012c2eee81a64"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hashable-1.3.2.0-b2895aa2033bddd08152025c0fd5e6de433a11990fc4ea63f67b5d877c4e2030","pkg-name":"hashable","pkg-version":"1.3.2.0","flags":{"integer-gmp":true,"random-initial-seed":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"02bc544e3546713b1d76a3c5bfc836a5fd19a5b4348ef4a52bb973d0c35a4b89","pkg-src-sha256":"59bd964b6fe52b04825cf5402c87981068c051f351b2cb940b75f1c60719d637","depends":["base-4.13.0.0","bytestring-0.10.10.1","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0","text-1.2.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hsc2hs-0.68.7-e-hsc2hs-f6f788927ffeeb5d8adadd6f30814abea8aa3565f6db7ef56781774e99834fce","pkg-name":"hsc2hs","pkg-version":"0.68.7","flags":{"in-ghc-tree":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4a0f6860a17e7c245646975e3c2981416afdcb6a7b3553c31005eb3641a7f55b","pkg-src-sha256":"fd7915e41e3ed3bc7750fee0e8add2b4f32dcac8b7c544cfdf5542293223894a","depends":["base-4.13.0.0","containers-0.6.2.1","directory-1.3.6.0","filepath-1.4.2.1","process-1.6.9.0"],"exe-depends":[],"component-name":"exe:hsc2hs","bin-file":"/home/tapas/.cabal/store/ghc-8.8.4/hsc2hs-0.68.7-e-hsc2hs-f6f788927ffeeb5d8adadd6f30814abea8aa3565f6db7ef56781774e99834fce/bin/hsc2hs"},{"type":"pre-existing","id":"integer-gmp-1.0.2.0","pkg-name":"integer-gmp","pkg-version":"1.0.2.0","depends":["ghc-prim-0.5.3"]},{"type":"configured","id":"lukko-0.1.1.3-517002f0b210062f4e6ab03f0458ca2f5b7bfdd7f33c0a8d4df9c9bec797413f","pkg-name":"lukko","pkg-version":"0.1.1.3","flags":{"ofd-locking":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"2db49b6cb6632a46ec446fc51870cd0d49e0a66d1c5d2063f46ae52a100eb856","pkg-src-sha256":"a80efb60cfa3dae18682c01980d76d5f7e413e191cd186992e1bf7388d48ab1f","depends":["base-4.13.0.0"],"exe-depends":["hsc2hs-0.68.7-e-hsc2hs-f6f788927ffeeb5d8adadd6f30814abea8aa3565f6db7ef56781774e99834fce"],"component-name":"lib"},{"type":"pre-existing","id":"mtl-2.2.2","pkg-name":"mtl","pkg-version":"2.2.2","depends":["base-4.13.0.0","transformers-0.5.6.2"]},{"type":"configured","id":"network-3.1.2.2-252ed935ce669c59353b7e22b4963aa9a2aec2afed28f38f914470b684fc93cb","pkg-name":"network","pkg-version":"3.1.2.2","flags":{"devel":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"218e2968e03d99c40f32a2ef7cc41a848969096ba1c780ff2e57997a00246b06","pkg-src-sha256":"55012c0b22f9c7548b1f7b3bacc2c6ec7058c7f92238a69561528f1a0fa60eb6","components":{"lib":{"depends":["base-4.13.0.0","bytestring-0.10.10.1","deepseq-1.4.4.0","directory-1.3.6.0"],"exe-depends":["hsc2hs-0.68.7-e-hsc2hs-f6f788927ffeeb5d8adadd6f30814abea8aa3565f6db7ef56781774e99834fce"]}}},{"type":"configured","id":"network-uri-2.6.4.1-a2299a950b1f05dae271dd34b1b2e9a01d0c35ec06136201ae1cd1c997891658","pkg-name":"network-uri","pkg-version":"2.6.4.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"a4765164ed0a2d1668446eb2e03460ce98645fbf083598c690846af79b7de10d","pkg-src-sha256":"57856db93608a4d419f681b881c9b8d4448800d5a687587dc37e8a9e0b223584","depends":["base-4.13.0.0","deepseq-1.4.4.0","parsec-3.1.14.0","template-haskell-2.15.0.0","th-compat-0.1.2-7d57d8c455d2a2f92ccbfa6db4d5c58836574e7526d8ed2b2eb0b879d1c13f20"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"parsec-3.1.14.0","pkg-name":"parsec","pkg-version":"3.1.14.0","depends":["base-4.13.0.0","bytestring-0.10.10.1","mtl-2.2.2","text-1.2.4.0"]},{"type":"pre-existing","id":"pretty-1.1.3.6","pkg-name":"pretty","pkg-version":"1.1.3.6","depends":["base-4.13.0.0","deepseq-1.4.4.0","ghc-prim-0.5.3"]},{"type":"pre-existing","id":"process-1.6.9.0","pkg-name":"process","pkg-version":"1.6.9.0","depends":["base-4.13.0.0","deepseq-1.4.4.0","directory-1.3.6.0","filepath-1.4.2.1","unix-2.7.2.2"]},{"type":"configured","id":"random-1.2.0-00764634d8a1b2874f13ca39a40464d39214f25dd481d12f12f5c40b7f887c49","pkg-name":"random","pkg-version":"1.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"195506fedaa7c31c1fa2a747e9b49b4a5d1f0b09dd8f1291f23a771656faeec3","pkg-src-sha256":"e4519cf7c058bfd5bdbe4acc782284acc9e25e74487208619ca83cbcd63fb9de","depends":["base-4.13.0.0","bytestring-0.10.10.1","deepseq-1.4.4.0","mtl-2.2.2","splitmix-0.1.0.3-01ccb9e40655e60a16f8df99e9c7ed102c60657b8bef9f5184f2cbf3d7c8f298"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"regex-base-0.94.0.1-ff8164d6ad36836390efbf15f7317bb988cb4208316f2c7841d59d899c865eaf","pkg-name":"regex-base","pkg-version":"0.94.0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"6e3546b73cd5489201d481aa645a531f2c61aa317984e31c5f379ac0bcbfbfad","pkg-src-sha256":"71b1d96fff201f31fe8cd4532f056aca03a21cd486890256dc3007dd73adedd9","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","mtl-2.2.2","text-1.2.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"regex-posix-0.96.0.1-72585e261c0ecf752820fa53f859ec4ccf7745e5822441b073c0cb1ac2276a07","pkg-name":"regex-posix","pkg-version":"0.96.0.1","flags":{"_regex-posix-clib":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"b6421e5356766b0c0a78b6094ae2e3a6259b42c147b717283c03c1cb09163dca","pkg-src-sha256":"c7827c391919227711e1cff0a762b1678fd8739f9c902fc183041ff34f59259c","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","regex-base-0.94.0.1-ff8164d6ad36836390efbf15f7317bb988cb4208316f2c7841d59d899c865eaf"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"resolv-0.1.2.0-d6b4fb5161bd01de4f6fa4fb792d43776d825fb0ffe766aeed40cb88444683fc","pkg-name":"resolv","pkg-version":"0.1.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"25c6e802dc342307e78e5e60433f5e20d03aa783b08b009a399100eb9b6ec529","pkg-src-sha256":"81a2bafad484db123cf8d17a02d98bb388a127fd0f822fa022589468a0e64671","components":{"lib":{"depends":["base-4.13.0.0","base16-bytestring-1.0.1.0-7012dade26da6d9b1d19ca2cf95148bf35a7e0ea382d566d5646f82e667be147","binary-0.8.7.0","bytestring-0.10.10.1","containers-0.6.2.1"],"exe-depends":[]}}},{"type":"pre-existing","id":"rts","pkg-name":"rts","pkg-version":"1.0","depends":[]},{"type":"configured","id":"splitmix-0.1.0.3-01ccb9e40655e60a16f8df99e9c7ed102c60657b8bef9f5184f2cbf3d7c8f298","pkg-name":"splitmix","pkg-version":"0.1.0.3","flags":{"optimised-mixer":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fc3aae74c467f4b608050bef53aec17904a618731df9407e655d8f3bf8c32d5c","pkg-src-sha256":"46009f4b000c9e6613377767b8718bf38476469f2a8e2162d98cc246882d5a35","depends":["base-4.13.0.0","deepseq-1.4.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"stm-2.5.0.0","pkg-name":"stm","pkg-version":"2.5.0.0","depends":["array-0.5.4.0","base-4.13.0.0"]},{"type":"configured","id":"tar-0.5.1.1-0bd85e90ebf89c52e78480bbecaf5ad02969a024727ef8111c090654f0e411e2","pkg-name":"tar","pkg-version":"0.5.1.1","flags":{"old-bytestring":false,"old-time":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"94ded05718fe75b88c98e7113feeb9fca50688a7e59b6aefd80a6f48438c5062","pkg-src-sha256":"b384449f62b2b0aa3e6d2cb1004b8060b01f21ec93e7b63e7af6d8fad8a9f1de","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","deepseq-1.4.4.0","directory-1.3.6.0","filepath-1.4.2.1","time-1.9.3"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"template-haskell-2.15.0.0","pkg-name":"template-haskell","pkg-version":"2.15.0.0","depends":["base-4.13.0.0","ghc-boot-th-8.8.4","pretty-1.1.3.6"]},{"type":"pre-existing","id":"text-1.2.4.0","pkg-name":"text","pkg-version":"1.2.4.0","depends":["array-0.5.4.0","base-4.13.0.0","binary-0.8.7.0","bytestring-0.10.10.1","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0","template-haskell-2.15.0.0"]},{"type":"configured","id":"th-compat-0.1.2-7d57d8c455d2a2f92ccbfa6db4d5c58836574e7526d8ed2b2eb0b879d1c13f20","pkg-name":"th-compat","pkg-version":"0.1.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"3d55de1adc542c1a870c9ada90da2fbbe5f4e8bcd3eed545a55c3df9311b32a8","pkg-src-sha256":"2bc45d0199de3dc65ebc9b71251799f5238869dbc6a66bdf0c06c7e23d603801","depends":["base-4.13.0.0","template-haskell-2.15.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"time-1.9.3","pkg-name":"time","pkg-version":"1.9.3","depends":["base-4.13.0.0","deepseq-1.4.4.0"]},{"type":"pre-existing","id":"transformers-0.5.6.2","pkg-name":"transformers","pkg-version":"0.5.6.2","depends":["base-4.13.0.0"]},{"type":"pre-existing","id":"unix-2.7.2.2","pkg-name":"unix","pkg-version":"2.7.2.2","depends":["base-4.13.0.0","bytestring-0.10.10.1","time-1.9.3"]},{"type":"configured","id":"zlib-0.6.2.3-737348e0ac53db8d94cfe31351192c9de7b9c2e3ab4308187f0012c2eee81a64","pkg-name":"zlib","pkg-version":"0.6.2.3","flags":{"bundled-c-zlib":false,"non-blocking-ffi":false,"pkg-config":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"28f4d460c260e074cab833625454564b9783a3389b7bb91fd54da2790b39592c","pkg-src-sha256":"807f6bddf9cb3c517ce5757d991dde3c7e319953a22c86ee03d74534bd5abc88","depends":["base-4.13.0.0","bytestring-0.10.10.1"],"exe-depends":[],"component-name":"lib"}]}
\ No newline at end of file
+{"cabal-version":"3.6","cabal-lib-version":"3.6.0.0","compiler-id":"ghc-8.8.4","os":"linux","arch":"x86_64","install-plan":[{"type":"configured","id":"Cabal-3.7.0.0-inplace","pkg-name":"Cabal","pkg-version":"3.7.0.0","flags":{"bundled-binary-generic":false},"style":"local","pkg-src":{"type":"local","path":"/home/hugin/Documents/haskell/cabal/Cabal"},"dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Cabal-3.7.0.0","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Cabal-3.7.0.0/build-info.json","depends":["array-0.5.4.0","base-4.13.0.0","binary-0.8.7.0","bytestring-0.10.10.1","containers-0.6.2.1","deepseq-1.4.4.0","directory-1.3.6.0","filepath-1.4.2.1","mtl-2.2.2","parsec-3.1.14.0","pretty-1.1.3.6","process-1.6.9.0","text-1.2.4.0","time-1.9.3","transformers-0.5.6.2","unix-2.7.2.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"HTTP-4000.3.16-cd694a0275992e8644ec075f0efcec08efb7432ea540ffc41c8ba0856438c55e","pkg-name":"HTTP","pkg-version":"4000.3.16","flags":{"conduit10":false,"mtl1":false,"network-uri":true,"warn-as-error":false,"warp-tests":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4265b1966b2bbb302a8a80d7b485197694785ec1496d5d9314b4b5931ffbd093","pkg-src-sha256":"d6091c037871ac3d08d021c906206174567499d5a26a6cb804cf530cd590fe2d","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","mtl-2.2.2","network-3.1.2.2-252ed935ce669c59353b7e22b4963aa9a2aec2afed28f38f914470b684fc93cb","network-uri-2.6.4.1-a2299a950b1f05dae271dd34b1b2e9a01d0c35ec06136201ae1cd1c997891658","parsec-3.1.14.0","time-1.9.3"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"array-0.5.4.0","pkg-name":"array","pkg-version":"0.5.4.0","depends":["base-4.13.0.0"]},{"type":"configured","id":"async-2.2.3-7f9ab3db689722e5332b374e7d2283ddb22a1f8b483bfcec6ecbc00a740493a6","pkg-name":"async","pkg-version":"2.2.3","flags":{"bench":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"0cbefb8247308b38e397e675f832b9bd5317ff1872001d5358f213654423c55b","pkg-src-sha256":"467af3a0037947a5232ecf5f4efbd4cf2118aaa2310566d7f40ac82b0e32935c","depends":["base-4.13.0.0","hashable-1.3.2.0-b2895aa2033bddd08152025c0fd5e6de433a11990fc4ea63f67b5d877c4e2030","stm-2.5.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"base-4.13.0.0","pkg-name":"base","pkg-version":"4.13.0.0","depends":["ghc-prim-0.5.3","integer-gmp-1.0.2.0","rts"]},{"type":"configured","id":"base16-bytestring-1.0.1.0-7012dade26da6d9b1d19ca2cf95148bf35a7e0ea382d566d5646f82e667be147","pkg-name":"base16-bytestring","pkg-version":"1.0.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"33b9d57afa334d06485033e930c6b13fc760baf88fd8f715ae2f9a4b46e19a54","pkg-src-sha256":"c0c70a4b58be53d36971bd7361ba300f82a5d5ebf7f50e1a2d7bfc8838bdd6fa","depends":["base-4.13.0.0","bytestring-0.10.10.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"base64-bytestring-1.2.1.0-0cf4b8b273c4e23586ab1eecc01e5fbd9d12067d68634ff113df996e89264e35","pkg-name":"base64-bytestring","pkg-version":"1.2.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"50ec0e229255d4c45cbdd568da011311b8887f304b931564886016f4984334d8","pkg-src-sha256":"fbf8ed30edde271eb605352021431d8f1b055f95a56af31fe2eacf6bdfdc49c9","depends":["base-4.13.0.0","bytestring-0.10.10.1"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"binary-0.8.7.0","pkg-name":"binary","pkg-version":"0.8.7.0","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1"]},{"type":"pre-existing","id":"bytestring-0.10.10.1","pkg-name":"bytestring","pkg-version":"0.10.10.1","depends":["base-4.13.0.0","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0"]},{"type":"configured","id":"cabal-install-3.7.0.0-inplace","pkg-name":"cabal-install","pkg-version":"3.7.0.0","flags":{"lukko":true,"native-dns":true},"style":"local","pkg-src":{"type":"local","path":"/home/hugin/Documents/haskell/cabal/cabal-install"},"dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/cabal-install-3.7.0.0","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/cabal-install-3.7.0.0/build-info.json","depends":["Cabal-3.7.0.0-inplace","HTTP-4000.3.16-cd694a0275992e8644ec075f0efcec08efb7432ea540ffc41c8ba0856438c55e","array-0.5.4.0","async-2.2.3-7f9ab3db689722e5332b374e7d2283ddb22a1f8b483bfcec6ecbc00a740493a6","base-4.13.0.0","base16-bytestring-1.0.1.0-7012dade26da6d9b1d19ca2cf95148bf35a7e0ea382d566d5646f82e667be147","binary-0.8.7.0","bytestring-0.10.10.1","cabal-install-solver-3.7.0.0-inplace","containers-0.6.2.1","cryptohash-sha256-0.11.102.0-ecb5cca3663b9524a6b30ab33ce0061346401ec1f94afa114cc152601b84a79e","deepseq-1.4.4.0","directory-1.3.6.0","echo-0.1.4-9c1f3a8af8235ad05535c43c85982dd7fe0208633ce4975ceb102f8a3799400d","edit-distance-0.2.2.1-50b8e1485c1ff01d540cdd1aa590c5d92e9b3c94c8538c733e03d22f5d7e351e","exceptions-0.10.4-cf5072550297b3b6c77388636f11854b0a9f7313fbfcc8c2052bad005e861ca1","filepath-1.4.2.1","hackage-security-0.6.0.1-inplace","hashable-1.3.2.0-b2895aa2033bddd08152025c0fd5e6de433a11990fc4ea63f67b5d877c4e2030","lukko-0.1.1.3-517002f0b210062f4e6ab03f0458ca2f5b7bfdd7f33c0a8d4df9c9bec797413f","mtl-2.2.2","network-uri-2.6.4.1-a2299a950b1f05dae271dd34b1b2e9a01d0c35ec06136201ae1cd1c997891658","parsec-3.1.14.0","pretty-1.1.3.6","process-1.6.9.0","random-1.2.0-00764634d8a1b2874f13ca39a40464d39214f25dd481d12f12f5c40b7f887c49","regex-base-0.94.0.1-ff8164d6ad36836390efbf15f7317bb988cb4208316f2c7841d59d899c865eaf","regex-posix-0.96.0.1-72585e261c0ecf752820fa53f859ec4ccf7745e5822441b073c0cb1ac2276a07","resolv-0.1.2.0-d6b4fb5161bd01de4f6fa4fb792d43776d825fb0ffe766aeed40cb88444683fc","stm-2.5.0.0","tar-0.5.1.1-0bd85e90ebf89c52e78480bbecaf5ad02969a024727ef8111c090654f0e411e2","text-1.2.4.0","time-1.9.3","transformers-0.5.6.2","unix-2.7.2.2","zlib-0.6.2.3-737348e0ac53db8d94cfe31351192c9de7b9c2e3ab4308187f0012c2eee81a64"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"cabal-install-3.7.0.0-inplace-cabal","pkg-name":"cabal-install","pkg-version":"3.7.0.0","flags":{"lukko":true,"native-dns":true},"style":"local","pkg-src":{"type":"local","path":"/home/hugin/Documents/haskell/cabal/cabal-install"},"dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/cabal-install-3.7.0.0/x/cabal","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/cabal-install-3.7.0.0/x/cabal/build-info.json","depends":["Cabal-3.7.0.0-inplace","base-4.13.0.0","cabal-install-3.7.0.0-inplace","directory-1.3.6.0","filepath-1.4.2.1"],"exe-depends":[],"component-name":"exe:cabal","bin-file":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/cabal-install-3.7.0.0/x/cabal/build/cabal/cabal"},{"type":"configured","id":"cabal-install-solver-3.7.0.0-inplace","pkg-name":"cabal-install-solver","pkg-version":"3.7.0.0","flags":{"debug-conflict-sets":false,"debug-expensive-assertions":false,"debug-tracetree":false},"style":"local","pkg-src":{"type":"local","path":"/home/hugin/Documents/haskell/cabal/cabal-install-solver"},"dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/cabal-install-solver-3.7.0.0","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/cabal-install-solver-3.7.0.0/build-info.json","depends":["Cabal-3.7.0.0-inplace","array-0.5.4.0","base-4.13.0.0","binary-0.8.7.0","bytestring-0.10.10.1","containers-0.6.2.1","edit-distance-0.2.2.1-50b8e1485c1ff01d540cdd1aa590c5d92e9b3c94c8538c733e03d22f5d7e351e","filepath-1.4.2.1","mtl-2.2.2","pretty-1.1.3.6","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"containers-0.6.2.1","pkg-name":"containers","pkg-version":"0.6.2.1","depends":["array-0.5.4.0","base-4.13.0.0","deepseq-1.4.4.0"]},{"type":"configured","id":"cryptohash-sha256-0.11.102.0-ecb5cca3663b9524a6b30ab33ce0061346401ec1f94afa114cc152601b84a79e","pkg-name":"cryptohash-sha256","pkg-version":"0.11.102.0","flags":{"exe":false,"use-cbits":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"797a0af7b8a0e654cbddd3df6b9de02d2cbfcb2292cf001399ab53910fbbb76c","pkg-src-sha256":"8ad6e9875a9128f6cd66d65d80f9f85dd0559c73ac00bb37f71fbee820d10519","depends":["base-4.13.0.0","bytestring-0.10.10.1"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"deepseq-1.4.4.0","pkg-name":"deepseq","pkg-version":"1.4.4.0","depends":["array-0.5.4.0","base-4.13.0.0"]},{"type":"pre-existing","id":"directory-1.3.6.0","pkg-name":"directory","pkg-version":"1.3.6.0","depends":["base-4.13.0.0","filepath-1.4.2.1","time-1.9.3","unix-2.7.2.2"]},{"type":"configured","id":"echo-0.1.4-9c1f3a8af8235ad05535c43c85982dd7fe0208633ce4975ceb102f8a3799400d","pkg-name":"echo","pkg-version":"0.1.4","flags":{"example":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ccce771562c49a2b29a52046ca68c62179e97e8fbeacdae32ca84a85445e8f42","pkg-src-sha256":"c9fe1bf2904825a65b667251ec644f197b71dc5c209d2d254be5de3d496b0e43","depends":["base-4.13.0.0","process-1.6.9.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"ed25519-0.0.5.0-3c827a886147bcd76622b6d3edb2c4ce11d32d2cc77c7a407f27f4d80ffdb697","pkg-name":"ed25519","pkg-version":"0.0.5.0","flags":{"no-donna":true,"test-doctests":true,"test-hlint":true,"test-properties":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fb98b08de467d51f788f8bd9391f0e9ab9bd4d8dfc264296b895ffea0d822dfa","pkg-src-sha256":"d8a5958ebfa9309790efade64275dc5c441b568645c45ceed1b0c6ff36d6156d","depends":["base-4.13.0.0","bytestring-0.10.10.1","ghc-prim-0.5.3"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"edit-distance-0.2.2.1-50b8e1485c1ff01d540cdd1aa590c5d92e9b3c94c8538c733e03d22f5d7e351e","pkg-name":"edit-distance","pkg-version":"0.2.2.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4d33a49cd383d50af090f1b888642d10116e43809f9da6023d9fc6f67d2656ee","pkg-src-sha256":"3e8885ee2f56ad4da940f043ae8f981ee2fe336b5e8e4ba3f7436cff4f526c4a","depends":["array-0.5.4.0","base-4.13.0.0","containers-0.6.2.1","random-1.2.0-00764634d8a1b2874f13ca39a40464d39214f25dd481d12f12f5c40b7f887c49"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"exceptions-0.10.4-cf5072550297b3b6c77388636f11854b0a9f7313fbfcc8c2052bad005e861ca1","pkg-name":"exceptions","pkg-version":"0.10.4","flags":{"transformers-0-4":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"d2546046d7ba4b460d3bc7fd269cd2c52d0b7fb3cfecc038715dd0881b78a484","pkg-src-sha256":"4d0bfb4355cffcd67d300811df9d5fe44ea3594ed63750795bfc1f797abd84cf","depends":["base-4.13.0.0","mtl-2.2.2","stm-2.5.0.0","template-haskell-2.15.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"filepath-1.4.2.1","pkg-name":"filepath","pkg-version":"1.4.2.1","depends":["base-4.13.0.0"]},{"type":"pre-existing","id":"ghc-boot-th-8.8.4","pkg-name":"ghc-boot-th","pkg-version":"8.8.4","depends":["base-4.13.0.0"]},{"type":"pre-existing","id":"ghc-prim-0.5.3","pkg-name":"ghc-prim","pkg-version":"0.5.3","depends":["rts"]},{"type":"configured","id":"hackage-security-0.6.0.1-inplace","pkg-name":"hackage-security","pkg-version":"0.6.0.1","flags":{"base48":true,"lukko":true,"mtl21":false,"old-directory":false,"use-network-uri":true},"style":"inplace","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ae6cdda307237c0b7efeebfb0bf23ff8a26c30f5ba295dce5e4f81ef6e63fff6","pkg-src-sha256":"9162b473af5a21c1ff32a50b972b9acf51f4c901604a22cf08a2dccac2f82f17","dist-dir":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/hackage-security-0.6.0.1","build-info":"/home/hugin/Documents/haskell/cabal/dist-newstyle/build/x86_64-linux/ghc-8.8.4/hackage-security-0.6.0.1/build-info.json","depends":["Cabal-3.7.0.0-inplace","base-4.13.0.0","base16-bytestring-1.0.1.0-7012dade26da6d9b1d19ca2cf95148bf35a7e0ea382d566d5646f82e667be147","base64-bytestring-1.2.1.0-0cf4b8b273c4e23586ab1eecc01e5fbd9d12067d68634ff113df996e89264e35","bytestring-0.10.10.1","containers-0.6.2.1","cryptohash-sha256-0.11.102.0-ecb5cca3663b9524a6b30ab33ce0061346401ec1f94afa114cc152601b84a79e","directory-1.3.6.0","ed25519-0.0.5.0-3c827a886147bcd76622b6d3edb2c4ce11d32d2cc77c7a407f27f4d80ffdb697","filepath-1.4.2.1","ghc-prim-0.5.3","lukko-0.1.1.3-517002f0b210062f4e6ab03f0458ca2f5b7bfdd7f33c0a8d4df9c9bec797413f","mtl-2.2.2","network-3.1.2.2-252ed935ce669c59353b7e22b4963aa9a2aec2afed28f38f914470b684fc93cb","network-uri-2.6.4.1-a2299a950b1f05dae271dd34b1b2e9a01d0c35ec06136201ae1cd1c997891658","parsec-3.1.14.0","pretty-1.1.3.6","tar-0.5.1.1-0bd85e90ebf89c52e78480bbecaf5ad02969a024727ef8111c090654f0e411e2","template-haskell-2.15.0.0","time-1.9.3","transformers-0.5.6.2","zlib-0.6.2.3-737348e0ac53db8d94cfe31351192c9de7b9c2e3ab4308187f0012c2eee81a64"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hashable-1.3.2.0-b2895aa2033bddd08152025c0fd5e6de433a11990fc4ea63f67b5d877c4e2030","pkg-name":"hashable","pkg-version":"1.3.2.0","flags":{"integer-gmp":true,"random-initial-seed":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"02bc544e3546713b1d76a3c5bfc836a5fd19a5b4348ef4a52bb973d0c35a4b89","pkg-src-sha256":"59bd964b6fe52b04825cf5402c87981068c051f351b2cb940b75f1c60719d637","depends":["base-4.13.0.0","bytestring-0.10.10.1","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0","text-1.2.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"hsc2hs-0.68.7-e-hsc2hs-f6f788927ffeeb5d8adadd6f30814abea8aa3565f6db7ef56781774e99834fce","pkg-name":"hsc2hs","pkg-version":"0.68.7","flags":{"in-ghc-tree":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4a0f6860a17e7c245646975e3c2981416afdcb6a7b3553c31005eb3641a7f55b","pkg-src-sha256":"fd7915e41e3ed3bc7750fee0e8add2b4f32dcac8b7c544cfdf5542293223894a","depends":["base-4.13.0.0","containers-0.6.2.1","directory-1.3.6.0","filepath-1.4.2.1","process-1.6.9.0"],"exe-depends":[],"component-name":"exe:hsc2hs","bin-file":"/home/hugin/.cabal/store/ghc-8.8.4/hsc2hs-0.68.7-e-hsc2hs-f6f788927ffeeb5d8adadd6f30814abea8aa3565f6db7ef56781774e99834fce/bin/hsc2hs"},{"type":"pre-existing","id":"integer-gmp-1.0.2.0","pkg-name":"integer-gmp","pkg-version":"1.0.2.0","depends":["ghc-prim-0.5.3"]},{"type":"configured","id":"lukko-0.1.1.3-517002f0b210062f4e6ab03f0458ca2f5b7bfdd7f33c0a8d4df9c9bec797413f","pkg-name":"lukko","pkg-version":"0.1.1.3","flags":{"ofd-locking":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"2db49b6cb6632a46ec446fc51870cd0d49e0a66d1c5d2063f46ae52a100eb856","pkg-src-sha256":"a80efb60cfa3dae18682c01980d76d5f7e413e191cd186992e1bf7388d48ab1f","depends":["base-4.13.0.0"],"exe-depends":["hsc2hs-0.68.7-e-hsc2hs-f6f788927ffeeb5d8adadd6f30814abea8aa3565f6db7ef56781774e99834fce"],"component-name":"lib"},{"type":"pre-existing","id":"mtl-2.2.2","pkg-name":"mtl","pkg-version":"2.2.2","depends":["base-4.13.0.0","transformers-0.5.6.2"]},{"type":"configured","id":"network-3.1.2.2-252ed935ce669c59353b7e22b4963aa9a2aec2afed28f38f914470b684fc93cb","pkg-name":"network","pkg-version":"3.1.2.2","flags":{"devel":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"218e2968e03d99c40f32a2ef7cc41a848969096ba1c780ff2e57997a00246b06","pkg-src-sha256":"55012c0b22f9c7548b1f7b3bacc2c6ec7058c7f92238a69561528f1a0fa60eb6","components":{"lib":{"depends":["base-4.13.0.0","bytestring-0.10.10.1","deepseq-1.4.4.0","directory-1.3.6.0"],"exe-depends":["hsc2hs-0.68.7-e-hsc2hs-f6f788927ffeeb5d8adadd6f30814abea8aa3565f6db7ef56781774e99834fce"]}}},{"type":"configured","id":"network-uri-2.6.4.1-a2299a950b1f05dae271dd34b1b2e9a01d0c35ec06136201ae1cd1c997891658","pkg-name":"network-uri","pkg-version":"2.6.4.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"a4765164ed0a2d1668446eb2e03460ce98645fbf083598c690846af79b7de10d","pkg-src-sha256":"57856db93608a4d419f681b881c9b8d4448800d5a687587dc37e8a9e0b223584","depends":["base-4.13.0.0","deepseq-1.4.4.0","parsec-3.1.14.0","template-haskell-2.15.0.0","th-compat-0.1.2-7d57d8c455d2a2f92ccbfa6db4d5c58836574e7526d8ed2b2eb0b879d1c13f20"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"parsec-3.1.14.0","pkg-name":"parsec","pkg-version":"3.1.14.0","depends":["base-4.13.0.0","bytestring-0.10.10.1","mtl-2.2.2","text-1.2.4.0"]},{"type":"pre-existing","id":"pretty-1.1.3.6","pkg-name":"pretty","pkg-version":"1.1.3.6","depends":["base-4.13.0.0","deepseq-1.4.4.0","ghc-prim-0.5.3"]},{"type":"pre-existing","id":"process-1.6.9.0","pkg-name":"process","pkg-version":"1.6.9.0","depends":["base-4.13.0.0","deepseq-1.4.4.0","directory-1.3.6.0","filepath-1.4.2.1","unix-2.7.2.2"]},{"type":"configured","id":"random-1.2.0-00764634d8a1b2874f13ca39a40464d39214f25dd481d12f12f5c40b7f887c49","pkg-name":"random","pkg-version":"1.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"195506fedaa7c31c1fa2a747e9b49b4a5d1f0b09dd8f1291f23a771656faeec3","pkg-src-sha256":"e4519cf7c058bfd5bdbe4acc782284acc9e25e74487208619ca83cbcd63fb9de","depends":["base-4.13.0.0","bytestring-0.10.10.1","deepseq-1.4.4.0","mtl-2.2.2","splitmix-0.1.0.3-01ccb9e40655e60a16f8df99e9c7ed102c60657b8bef9f5184f2cbf3d7c8f298"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"regex-base-0.94.0.1-ff8164d6ad36836390efbf15f7317bb988cb4208316f2c7841d59d899c865eaf","pkg-name":"regex-base","pkg-version":"0.94.0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"35ff2d13c0e3ac364469c19e4c7c8775f5148977d8fcef58a424df0a10a53fa7","pkg-src-sha256":"71b1d96fff201f31fe8cd4532f056aca03a21cd486890256dc3007dd73adedd9","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","mtl-2.2.2","text-1.2.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"regex-posix-0.96.0.1-72585e261c0ecf752820fa53f859ec4ccf7745e5822441b073c0cb1ac2276a07","pkg-name":"regex-posix","pkg-version":"0.96.0.1","flags":{"_regex-posix-clib":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"b6421e5356766b0c0a78b6094ae2e3a6259b42c147b717283c03c1cb09163dca","pkg-src-sha256":"c7827c391919227711e1cff0a762b1678fd8739f9c902fc183041ff34f59259c","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","regex-base-0.94.0.1-ff8164d6ad36836390efbf15f7317bb988cb4208316f2c7841d59d899c865eaf"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"resolv-0.1.2.0-d6b4fb5161bd01de4f6fa4fb792d43776d825fb0ffe766aeed40cb88444683fc","pkg-name":"resolv","pkg-version":"0.1.2.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"25c6e802dc342307e78e5e60433f5e20d03aa783b08b009a399100eb9b6ec529","pkg-src-sha256":"81a2bafad484db123cf8d17a02d98bb388a127fd0f822fa022589468a0e64671","components":{"lib":{"depends":["base-4.13.0.0","base16-bytestring-1.0.1.0-7012dade26da6d9b1d19ca2cf95148bf35a7e0ea382d566d5646f82e667be147","binary-0.8.7.0","bytestring-0.10.10.1","containers-0.6.2.1"],"exe-depends":[]}}},{"type":"pre-existing","id":"rts","pkg-name":"rts","pkg-version":"1.0","depends":[]},{"type":"configured","id":"splitmix-0.1.0.3-01ccb9e40655e60a16f8df99e9c7ed102c60657b8bef9f5184f2cbf3d7c8f298","pkg-name":"splitmix","pkg-version":"0.1.0.3","flags":{"optimised-mixer":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fc3aae74c467f4b608050bef53aec17904a618731df9407e655d8f3bf8c32d5c","pkg-src-sha256":"46009f4b000c9e6613377767b8718bf38476469f2a8e2162d98cc246882d5a35","depends":["base-4.13.0.0","deepseq-1.4.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"stm-2.5.0.0","pkg-name":"stm","pkg-version":"2.5.0.0","depends":["array-0.5.4.0","base-4.13.0.0"]},{"type":"configured","id":"tar-0.5.1.1-0bd85e90ebf89c52e78480bbecaf5ad02969a024727ef8111c090654f0e411e2","pkg-name":"tar","pkg-version":"0.5.1.1","flags":{"old-bytestring":false,"old-time":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"94ded05718fe75b88c98e7113feeb9fca50688a7e59b6aefd80a6f48438c5062","pkg-src-sha256":"b384449f62b2b0aa3e6d2cb1004b8060b01f21ec93e7b63e7af6d8fad8a9f1de","depends":["array-0.5.4.0","base-4.13.0.0","bytestring-0.10.10.1","containers-0.6.2.1","deepseq-1.4.4.0","directory-1.3.6.0","filepath-1.4.2.1","time-1.9.3"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"template-haskell-2.15.0.0","pkg-name":"template-haskell","pkg-version":"2.15.0.0","depends":["base-4.13.0.0","ghc-boot-th-8.8.4","pretty-1.1.3.6"]},{"type":"pre-existing","id":"text-1.2.4.0","pkg-name":"text","pkg-version":"1.2.4.0","depends":["array-0.5.4.0","base-4.13.0.0","binary-0.8.7.0","bytestring-0.10.10.1","deepseq-1.4.4.0","ghc-prim-0.5.3","integer-gmp-1.0.2.0","template-haskell-2.15.0.0"]},{"type":"configured","id":"th-compat-0.1.2-7d57d8c455d2a2f92ccbfa6db4d5c58836574e7526d8ed2b2eb0b879d1c13f20","pkg-name":"th-compat","pkg-version":"0.1.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"3d55de1adc542c1a870c9ada90da2fbbe5f4e8bcd3eed545a55c3df9311b32a8","pkg-src-sha256":"2bc45d0199de3dc65ebc9b71251799f5238869dbc6a66bdf0c06c7e23d603801","depends":["base-4.13.0.0","template-haskell-2.15.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"time-1.9.3","pkg-name":"time","pkg-version":"1.9.3","depends":["base-4.13.0.0","deepseq-1.4.4.0"]},{"type":"pre-existing","id":"transformers-0.5.6.2","pkg-name":"transformers","pkg-version":"0.5.6.2","depends":["base-4.13.0.0"]},{"type":"pre-existing","id":"unix-2.7.2.2","pkg-name":"unix","pkg-version":"2.7.2.2","depends":["base-4.13.0.0","bytestring-0.10.10.1","time-1.9.3"]},{"type":"configured","id":"zlib-0.6.2.3-737348e0ac53db8d94cfe31351192c9de7b9c2e3ab4308187f0012c2eee81a64","pkg-name":"zlib","pkg-version":"0.6.2.3","flags":{"bundled-c-zlib":false,"non-blocking-ffi":false,"pkg-config":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"28f4d460c260e074cab833625454564b9783a3389b7bb91fd54da2790b39592c","pkg-src-sha256":"807f6bddf9cb3c517ce5757d991dde3c7e319953a22c86ee03d74534bd5abc88","depends":["base-4.13.0.0","bytestring-0.10.10.1"],"exe-depends":[],"component-name":"lib"}]}
\ No newline at end of file
diff --git a/cabal-install-solver/cabal-install-solver.cabal b/cabal-install-solver/cabal-install-solver.cabal
index 8a756fab98ad80bde5735dfaa67728d1b3c2e313..53795df648152f897f528f2614a059d04ef1f9f5 100644
--- a/cabal-install-solver/cabal-install-solver.cabal
+++ b/cabal-install-solver/cabal-install-solver.cabal
@@ -1,6 +1,6 @@
 cabal-version: 2.2
 name:          cabal-install-solver
-version:       3.6.0.0
+version:       3.7.0.0
 synopsis:      The command-line interface for Cabal and Hackage.
 description:
   The solver component used in cabal-install command-line program
@@ -106,7 +106,7 @@ library
     , base          >=4.10     && <4.15
     , binary        >=0.7.3    && <0.9
     , bytestring    >=0.10.6.0 && <0.12
-    , Cabal         ^>=3.6
+    , Cabal         ^>=3.7
     , containers    >=0.5.6.2  && <0.7
     , edit-distance ^>= 0.2.2
     , filepath      ^>=1.4.0.0
diff --git a/cabal-install-solver/src/Distribution/Solver/Modular/Cycles.hs b/cabal-install-solver/src/Distribution/Solver/Modular/Cycles.hs
index 4ff4c8bc185a543feb911eb97650221761622127..b82e39a0d26055bae4fda382d05a2bb796e3c38b 100644
--- a/cabal-install-solver/src/Distribution/Solver/Modular/Cycles.hs
+++ b/cabal-install-solver/src/Distribution/Solver/Modular/Cycles.hs
@@ -18,17 +18,19 @@ import Distribution.Solver.Types.PackagePath
 
 -- | Find and reject any nodes with cyclic dependencies
 detectCyclesPhase :: Tree d c -> Tree d c
-detectCyclesPhase = cata go
+detectCyclesPhase = go
   where
     -- Only check children of choice nodes.
-    go :: TreeF d c (Tree d c) -> Tree d c
-    go (PChoiceF qpn rdm gr                         cs) =
-        PChoice qpn rdm gr     $ fmap (checkChild qpn)   cs
-    go (FChoiceF qfn@(FN qpn _) rdm gr w m d cs) =
-        FChoice qfn rdm gr w m d $ fmap (checkChild qpn) cs
-    go (SChoiceF qsn@(SN qpn _) rdm gr w     cs) =
-        SChoice qsn rdm gr w   $ fmap (checkChild qpn)   cs
-    go x                                                = inn x
+    go :: Tree d c -> Tree d c
+    go (PChoice qpn rdm gr                         cs) =
+        PChoice qpn rdm gr     $ fmap (checkChild qpn)   (fmap go cs)
+    go (FChoice qfn@(FN qpn _) rdm gr w m d cs) =
+        FChoice qfn rdm gr w m d $ fmap (checkChild qpn) (fmap go cs)
+    go (SChoice qsn@(SN qpn _) rdm gr w     cs) =
+        SChoice qsn rdm gr w   $ fmap (checkChild qpn)   (fmap go cs)
+    go (GoalChoice rdm cs) = GoalChoice rdm (fmap go cs)
+    go x@(Fail _ _) = x
+    go x@(Done _ _) = x
 
     checkChild :: QPN -> Tree d c -> Tree d c
     checkChild qpn x@(PChoice _  rdm _       _) = failIfCycle qpn rdm x
diff --git a/cabal-install-solver/src/Distribution/Solver/Modular/Explore.hs b/cabal-install-solver/src/Distribution/Solver/Modular/Explore.hs
index bd5aa581b34131292306c4e1016d41f0bf86c907..90038a28f5c198e4e82909b08989dbb334f129be 100644
--- a/cabal-install-solver/src/Distribution/Solver/Modular/Explore.hs
+++ b/cabal-install-solver/src/Distribution/Solver/Modular/Explore.hs
@@ -183,19 +183,18 @@ updateCM cs cm =
 
 -- | Record complete assignments on 'Done' nodes.
 assign :: Tree d c -> Tree Assignment c
-assign tree = cata go tree $ A M.empty M.empty M.empty
+assign tree = go tree (A M.empty M.empty M.empty)
   where
-    go :: TreeF d c (Assignment -> Tree Assignment c)
-                 -> (Assignment -> Tree Assignment c)
-    go (FailF c fr)            _                  = Fail c fr
-    go (DoneF rdm _)           a                  = Done rdm a
-    go (PChoiceF qpn rdm y       ts) (A pa fa sa) = PChoice qpn rdm y       $ W.mapWithKey f ts
+    go :: Tree d c -> Assignment -> Tree Assignment c
+    go (Fail c fr)            _                  = Fail c fr
+    go (Done rdm _)           a                  = Done rdm a
+    go (PChoice qpn rdm y       ts) (A pa fa sa) = PChoice qpn rdm y       $ W.mapWithKey f (fmap go ts)
         where f (POption k _) r = r (A (M.insert qpn k pa) fa sa)
-    go (FChoiceF qfn rdm y t m d ts) (A pa fa sa) = FChoice qfn rdm y t m d $ W.mapWithKey f ts
+    go (FChoice qfn rdm y t m d ts) (A pa fa sa) = FChoice qfn rdm y t m d $ W.mapWithKey f (fmap go ts)
         where f k             r = r (A pa (M.insert qfn k fa) sa)
-    go (SChoiceF qsn rdm y t     ts) (A pa fa sa) = SChoice qsn rdm y t     $ W.mapWithKey f ts
+    go (SChoice qsn rdm y t     ts) (A pa fa sa) = SChoice qsn rdm y t     $ W.mapWithKey f (fmap go ts)
         where f k             r = r (A pa fa (M.insert qsn k sa))
-    go (GoalChoiceF  rdm         ts) a            = GoalChoice  rdm         $ fmap ($ a) ts
+    go (GoalChoice  rdm         ts) a            = GoalChoice  rdm         $ fmap ($ a) (fmap go ts)
 
 -- | A tree traversal that simultaneously propagates conflict sets up
 -- the tree from the leaves and creates a log.
diff --git a/cabal-install-solver/src/Distribution/Solver/Modular/Linking.hs b/cabal-install-solver/src/Distribution/Solver/Modular/Linking.hs
index c8fa7084b4faf788dfc2114a2e077a1a8e114f2e..1977685a7be6a9a3c6efadb18180bfec16a09a13 100644
--- a/cabal-install-solver/src/Distribution/Solver/Modular/Linking.hs
+++ b/cabal-install-solver/src/Distribution/Solver/Modular/Linking.hs
@@ -78,21 +78,21 @@ type Validate = Reader ValidateState
 -- * Equal flag assignments
 -- * Equal stanza assignments
 validateLinking :: Index -> Tree d c -> Tree d c
-validateLinking index = (`runReader` initVS) . cata go
+validateLinking index = (`runReader` initVS) . go
   where
-    go :: TreeF d c (Validate (Tree d c)) -> Validate (Tree d c)
+    go :: Tree d c -> Validate (Tree d c)
 
-    go (PChoiceF qpn rdm gr       cs) =
-      PChoice qpn rdm gr       <$> T.sequence (W.mapWithKey (goP qpn) cs)
-    go (FChoiceF qfn rdm gr t m d cs) =
-      FChoice qfn rdm gr t m d <$> T.sequence (W.mapWithKey (goF qfn) cs)
-    go (SChoiceF qsn rdm gr t     cs) =
-      SChoice qsn rdm gr t     <$> T.sequence (W.mapWithKey (goS qsn) cs)
+    go (PChoice qpn rdm gr       cs) =
+      PChoice qpn rdm gr       <$> (W.traverseWithKey (goP qpn) $ fmap go cs)
+    go (FChoice qfn rdm gr t m d cs) =
+      FChoice qfn rdm gr t m d <$> (W.traverseWithKey (goF qfn) $ fmap go cs)
+    go (SChoice qsn rdm gr t     cs) =
+      SChoice qsn rdm gr t     <$> (W.traverseWithKey (goS qsn) $ fmap go cs)
 
     -- For the other nodes we just recurse
-    go (GoalChoiceF rdm           cs) = GoalChoice rdm <$> T.sequence cs
-    go (DoneF revDepMap s)            = return $ Done revDepMap s
-    go (FailF conflictSet failReason) = return $ Fail conflictSet failReason
+    go (GoalChoice rdm           cs) = GoalChoice rdm <$> T.traverse go cs
+    go (Done revDepMap s)            = return $ Done revDepMap s
+    go (Fail conflictSet failReason) = return $ Fail conflictSet failReason
 
     -- Package choices
     goP :: QPN -> POption -> Validate (Tree d c) -> Validate (Tree d c)
diff --git a/cabal-install-solver/src/Distribution/Solver/Modular/Preference.hs b/cabal-install-solver/src/Distribution/Solver/Modular/Preference.hs
index d25ef84635670f8bb14b20b839b25c07ab37a613..fa0141f5767a9916900b0e552dff58146bd5da71 100644
--- a/cabal-install-solver/src/Distribution/Solver/Modular/Preference.hs
+++ b/cabal-install-solver/src/Distribution/Solver/Modular/Preference.hs
@@ -2,7 +2,7 @@
 -- | Reordering or pruning the tree in order to prefer or make certain choices.
 module Distribution.Solver.Modular.Preference
     ( avoidReinstalls
-    , deferSetupChoices
+    , deferSetupExeChoices
     , deferWeakFlagChoices
     , enforceManualFlags
     , enforcePackageConstraints
@@ -51,8 +51,8 @@ import qualified Distribution.Solver.Modular.WeightedPSQ as W
 -- children's versions, and package option. 'addWeights' prepends the new
 -- weights to the existing weights, which gives precedence to preferences that
 -- are applied later.
-addWeights :: [PN -> [Ver] -> POption -> Weight] -> Tree d c -> Tree d c
-addWeights fs = trav go
+addWeights :: [PN -> [Ver] -> POption -> Weight] -> EndoTreeTrav d c
+addWeights fs = go
   where
     go :: TreeF d c (Tree d c) -> TreeF d c (Tree d c)
     go (PChoiceF qpn@(Q _ pn) rdm x cs) =
@@ -69,21 +69,21 @@ addWeights fs = trav go
              W.mapWeightsWithKey (\k w -> weights k ++ w) cs)
     go x                            = x
 
-addWeight :: (PN -> [Ver] -> POption -> Weight) -> Tree d c -> Tree d c
+addWeight :: (PN -> [Ver] -> POption -> Weight) -> EndoTreeTrav d c
 addWeight f = addWeights [f]
 
 version :: POption -> Ver
 version (POption (I v _) _) = v
 
 -- | Prefer to link packages whenever possible.
-preferLinked :: Tree d c -> Tree d c
+preferLinked :: EndoTreeTrav d c
 preferLinked = addWeight (const (const linked))
   where
     linked (POption _ Nothing)  = 1
     linked (POption _ (Just _)) = 0
 
 -- Works by setting weights on choice nodes. Also applies stanza preferences.
-preferPackagePreferences :: (PN -> PackagePreferences) -> Tree d c -> Tree d c
+preferPackagePreferences :: (PN -> PackagePreferences) -> EndoTreeTrav d c
 preferPackagePreferences pcs =
     preferPackageStanzaPreferences pcs .
     addWeights [
@@ -127,11 +127,18 @@ preferPackagePreferences pcs =
 
 -- | Traversal that tries to establish package stanza enable\/disable
 -- preferences. Works by reordering the branches of stanza choices.
-preferPackageStanzaPreferences :: (PN -> PackagePreferences) -> Tree d c -> Tree d c
-preferPackageStanzaPreferences pcs = trav go
+-- Note that this works on packages lower in the path as well as at the top level.
+-- This is because stanza preferences apply to local packages only
+-- and for local packages, a single version is fixed, which means
+-- (for now) that all stanza preferences must be uniform at all levels.
+-- Further, even when we can have multiple versions of the same package,
+-- the build plan will be more efficient if we can attempt to keep
+-- stanza preferences aligned at all levels.
+preferPackageStanzaPreferences :: (PN -> PackagePreferences) -> EndoTreeTrav d c
+preferPackageStanzaPreferences pcs = go
   where
-    go (SChoiceF qsn@(SN (Q pp pn) s) rdm gr _tr ts)
-      | primaryPP pp && enableStanzaPref pn s =
+    go (SChoiceF qsn@(SN (Q _pp pn) s) rdm gr _tr ts)
+      | enableStanzaPref pn s =
           -- move True case first to try enabling the stanza
           let ts' = W.mapWeightsWithKey (\k w -> weight k : w) ts
               weight k = if k then 0 else 1
@@ -221,9 +228,8 @@ processPackageConstraintS qpn s c b' (LabeledPackageConstraint (PackageConstrain
 -- by selectively disabling choices that have been ruled out by global user
 -- constraints.
 enforcePackageConstraints :: M.Map PN [LabeledPackageConstraint]
-                          -> Tree d c
-                          -> Tree d c
-enforcePackageConstraints pcs = trav go
+                          -> EndoTreeTrav d c
+enforcePackageConstraints pcs = go
   where
     go (PChoiceF qpn@(Q _ pn) rdm gr                    ts) =
       let c = varToConflictSet (P qpn)
@@ -268,8 +274,8 @@ enforcePackageConstraints pcs = trav go
 --
 -- This function does not enforce any of the constraints, since that is done by
 -- 'enforcePackageConstraints'.
-enforceManualFlags :: M.Map PN [LabeledPackageConstraint] -> Tree d c -> Tree d c
-enforceManualFlags pcs = trav go
+enforceManualFlags :: M.Map PN [LabeledPackageConstraint] -> EndoTreeTrav d c
+enforceManualFlags pcs = go
   where
     go (FChoiceF qfn@(FN (Q _ pn) fn) rdm gr tr Manual d ts) =
         FChoiceF qfn rdm gr tr Manual d $
@@ -295,8 +301,8 @@ enforceManualFlags pcs = trav go
     go x                                                            = x
 
 -- | Require installed packages.
-requireInstalled :: (PN -> Bool) -> Tree d c -> Tree d c
-requireInstalled p = trav go
+requireInstalled :: (PN -> Bool) -> EndoTreeTrav d c
+requireInstalled p = go
   where
     go (PChoiceF v@(Q _ pn) rdm gr cs)
       | p pn      = PChoiceF v rdm gr (W.mapWithKey installed cs)
@@ -319,8 +325,8 @@ requireInstalled p = trav go
 -- they are, perhaps this should just result in trying to reinstall those other
 -- packages as well. However, doing this all neatly in one pass would require to
 -- change the builder, or at least to change the goal set after building.
-avoidReinstalls :: (PN -> Bool) -> Tree d c -> Tree d c
-avoidReinstalls p = trav go
+avoidReinstalls :: (PN -> Bool) -> EndoTreeTrav d c
+avoidReinstalls p = go
   where
     go (PChoiceF qpn@(Q _ pn) rdm gr cs)
       | p pn      = PChoiceF qpn rdm gr disableReinstalls
@@ -337,8 +343,8 @@ avoidReinstalls p = trav go
     go x          = x
 
 -- | Require all packages to be mentioned in a constraint or as a goal.
-onlyConstrained :: (PN -> Bool) -> Tree d QGoalReason -> Tree d QGoalReason
-onlyConstrained p = trav go
+onlyConstrained :: (PN -> Bool) -> EndoTreeTrav d QGoalReason
+onlyConstrained p = go
   where
     go (PChoiceF v@(Q _ pn) _ gr _) | not (p pn)
       = FailF
@@ -348,8 +354,8 @@ onlyConstrained p = trav go
       = x
 
 -- | Sort all goals using the provided function.
-sortGoals :: (Variable QPN -> Variable QPN -> Ordering) -> Tree d c -> Tree d c
-sortGoals variableOrder = trav go
+sortGoals :: (Variable QPN -> Variable QPN -> Ordering) -> EndoTreeTrav d c
+sortGoals variableOrder = go
   where
     go (GoalChoiceF rdm xs) = GoalChoiceF rdm (P.sortByKeys goalOrder xs)
     go x                    = x
@@ -365,8 +371,8 @@ sortGoals variableOrder = trav go
 -- | Reduce the branching degree of the search tree by removing all choices
 -- after the first successful choice at each level. The returned tree is the
 -- minimal subtree containing the path to the first backjump.
-pruneAfterFirstSuccess :: Tree d c -> Tree d c
-pruneAfterFirstSuccess = trav go
+pruneAfterFirstSuccess :: EndoTreeTrav d c
+pruneAfterFirstSuccess = go
   where
     go (PChoiceF qpn rdm gr       ts) = PChoiceF qpn rdm gr       (W.takeUntil active ts)
     go (FChoiceF qfn rdm gr w m d ts) = FChoiceF qfn rdm gr w m d (W.takeUntil active ts)
@@ -379,8 +385,8 @@ pruneAfterFirstSuccess = trav go
 -- This is unnecessary for the default search strategy, because
 -- it descends only into the first goal choice anyway,
 -- but may still make sense to just reduce the tree size a bit.
-firstGoal :: Tree d c -> Tree d c
-firstGoal = trav go
+firstGoal :: EndoTreeTrav d c
+firstGoal = go
   where
     go (GoalChoiceF rdm xs) = GoalChoiceF rdm (P.firstOnly xs)
     go x                    = x
@@ -390,8 +396,8 @@ firstGoal = trav go
 -- possible by pruning all other goals when base is available. In nearly
 -- all cases, there's a single choice for the base package. Also, fixing
 -- base early should lead to better error messages.
-preferBaseGoalChoice :: Tree d c -> Tree d c
-preferBaseGoalChoice = trav go
+preferBaseGoalChoice :: EndoTreeTrav d c
+preferBaseGoalChoice = go
   where
     go (GoalChoiceF rdm xs) = GoalChoiceF rdm (P.filterIfAnyByKeys isBase xs)
     go x                    = x
@@ -400,23 +406,24 @@ preferBaseGoalChoice = trav go
     isBase (Goal (P (Q _pp pn)) _) = unPN pn == "base"
     isBase _                       = False
 
--- | Deal with setup dependencies after regular dependencies, so that we can
--- will link setup dependencies against package dependencies when possible
-deferSetupChoices :: Tree d c -> Tree d c
-deferSetupChoices = trav go
+-- | Deal with setup and build-tool-depends dependencies after regular dependencies,
+-- so we will link setup/exe dependencies against package dependencies when possible
+deferSetupExeChoices :: EndoTreeTrav d c
+deferSetupExeChoices = go
   where
-    go (GoalChoiceF rdm xs) = GoalChoiceF rdm (P.preferByKeys noSetup xs)
+    go (GoalChoiceF rdm xs) = GoalChoiceF rdm (P.preferByKeys noSetupOrExe xs)
     go x                    = x
 
-    noSetup :: Goal QPN -> Bool
-    noSetup (Goal (P (Q (PackagePath _ns (QualSetup _)) _)) _) = False
-    noSetup _                                                  = True
+    noSetupOrExe :: Goal QPN -> Bool
+    noSetupOrExe (Goal (P (Q (PackagePath _ns (QualSetup _)) _)) _) = False
+    noSetupOrExe (Goal (P (Q (PackagePath _ns (QualExe _ _)) _)) _) = False
+    noSetupOrExe _                                                  = True
 
 -- | Transformation that tries to avoid making weak flag choices early.
 -- Weak flags are trivial flags (not influencing dependencies) or such
 -- flags that are explicitly declared to be weak in the index.
-deferWeakFlagChoices :: Tree d c -> Tree d c
-deferWeakFlagChoices = trav go
+deferWeakFlagChoices :: EndoTreeTrav d c
+deferWeakFlagChoices = go
   where
     go (GoalChoiceF rdm xs) = GoalChoiceF rdm (P.prefer noWeakFlag (P.prefer noWeakStanza xs))
     go x                    = x
@@ -435,8 +442,8 @@ deferWeakFlagChoices = trav go
 -- function prunes all other goals. This transformation can help the solver find
 -- a solution in fewer steps by allowing it to backtrack sooner when it is
 -- exploring a subtree with no solutions. However, each step is more expensive.
-preferReallyEasyGoalChoices :: Tree d c -> Tree d c
-preferReallyEasyGoalChoices = trav go
+preferReallyEasyGoalChoices :: EndoTreeTrav d c
+preferReallyEasyGoalChoices = go
   where
     go (GoalChoiceF rdm xs) = GoalChoiceF rdm (P.filterIfAny zeroOrOneChoices xs)
     go x                    = x
@@ -454,15 +461,21 @@ type EnforceSIR = Reader (Map (PI PN) QPN)
 -- goal resolving to that instance (there may be other goals _linking_ to that
 -- instance however).
 enforceSingleInstanceRestriction :: Tree d c -> Tree d c
-enforceSingleInstanceRestriction = (`runReader` M.empty) . cata go
+enforceSingleInstanceRestriction = (`runReader` M.empty) . go
   where
-    go :: TreeF d c (EnforceSIR (Tree d c)) -> EnforceSIR (Tree d c)
+    go :: Tree d c -> EnforceSIR (Tree d c)
 
     -- We just verify package choices.
-    go (PChoiceF qpn rdm gr cs) =
-      PChoice qpn rdm gr <$> sequenceA (W.mapWithKey (goP qpn) cs)
-    go _otherwise =
-      innM _otherwise
+    go (PChoice qpn rdm gr cs) =
+      PChoice qpn rdm gr <$> sequenceA (W.mapWithKey (goP qpn) (fmap go cs))
+    go (FChoice qfn rdm y t m d ts) =
+      FChoice qfn rdm y t m d <$> traverse go ts
+    go (SChoice qsn rdm y t ts) =
+      SChoice qsn rdm y t <$> traverse go ts
+    go (GoalChoice rdm ts) =
+      GoalChoice rdm <$> traverse go ts
+    go x@(Fail _ _) = return x
+    go x@(Done _ _) = return x
 
     -- The check proper
     goP :: QPN -> POption -> EnforceSIR (Tree d c) -> EnforceSIR (Tree d c)
diff --git a/cabal-install-solver/src/Distribution/Solver/Modular/Solver.hs b/cabal-install-solver/src/Distribution/Solver/Modular/Solver.hs
index 83c597cd9e6029e7927473bc4a9cfdbbec3e3dd6..da5fa56963374a01d063952f72159712f6f4a8a6 100644
--- a/cabal-install-solver/src/Distribution/Solver/Modular/Solver.hs
+++ b/cabal-install-solver/src/Distribution/Solver/Modular/Solver.hs
@@ -98,12 +98,20 @@ solve :: SolverConfig                         -- ^ solver parameters
       -> S.Set PN                             -- ^ global goals
       -> RetryLog Message SolverFailure (Assignment, RevDepMap)
 solve sc cinfo idx pkgConfigDB userPrefs userConstraints userGoals =
-  explorePhase     $
-  detectCycles     $
-  heuristicsPhase  $
-  preferencesPhase $
-  validationPhase  $
-  prunePhase       $
+  explorePhase      .
+  traceTree "cycles.json" id .
+  detectCycles      .
+  traceTree "heuristics.json" id .
+  trav (
+   heuristicsPhase  .
+   preferencesPhase .
+   validationPhase
+  ) .
+  traceTree "semivalidated.json" id .
+  validationCata    .
+  traceTree "pruned.json" id .
+  trav prunePhase   .
+  traceTree "build.json" id $
   buildPhase
   where
     explorePhase     = backjumpAndExplore (maxBackjumps sc)
@@ -111,27 +119,24 @@ solve sc cinfo idx pkgConfigDB userPrefs userConstraints userGoals =
                                           (fineGrainedConflicts sc)
                                           (countConflicts sc)
                                           idx
-    detectCycles     = traceTree "cycles.json" id . detectCyclesPhase
+    detectCycles     = detectCyclesPhase
     heuristicsPhase  =
-      let heuristicsTree = traceTree "heuristics.json" id
+      let
           sortGoals = case goalOrder sc of
                         Nothing -> goalChoiceHeuristics .
-                                   heuristicsTree .
-                                   P.deferSetupChoices .
+                                   P.deferSetupExeChoices .
                                    P.deferWeakFlagChoices .
                                    P.preferBaseGoalChoice
                         Just order -> P.firstGoal .
-                                   heuristicsTree .
-                                   P.sortGoals order
+                                      P.sortGoals order
           PruneAfterFirstSuccess prune = pruneAfterFirstSuccess sc
       in sortGoals .
          (if prune then P.pruneAfterFirstSuccess else id)
     preferencesPhase = P.preferLinked .
                        P.preferPackagePreferences userPrefs
-    validationPhase  = traceTree "validated.json" id .
-                       P.enforcePackageConstraints userConstraints .
-                       P.enforceManualFlags userConstraints .
-                       P.enforceSingleInstanceRestriction .
+    validationPhase  = P.enforcePackageConstraints userConstraints .
+                       P.enforceManualFlags userConstraints
+    validationCata   = P.enforceSingleInstanceRestriction .
                        validateLinking idx .
                        validateTree cinfo idx pkgConfigDB
     prunePhase       = (if asBool (avoidReinstalls sc) then P.avoidReinstalls (const True) else id) .
@@ -143,8 +148,7 @@ solve sc cinfo idx pkgConfigDB userPrefs userConstraints userGoals =
                             P.onlyConstrained pkgIsExplicit
                           OnlyConstrainedNone ->
                             id)
-    buildPhase       = traceTree "build.json" id
-                     $ buildTree idx (independentGoals sc) (S.toList userGoals)
+    buildPhase       = buildTree idx (independentGoals sc) (S.toList userGoals)
 
     allExplicit = M.keysSet userConstraints `S.union` userGoals
 
diff --git a/cabal-install-solver/src/Distribution/Solver/Modular/Tree.hs b/cabal-install-solver/src/Distribution/Solver/Modular/Tree.hs
index b28c0f8ff985c98e99c231211ed8a0516661f8f5..039da4b41b0ed0d92aea2b3c1b7a35cf96a077a9 100644
--- a/cabal-install-solver/src/Distribution/Solver/Modular/Tree.hs
+++ b/cabal-install-solver/src/Distribution/Solver/Modular/Tree.hs
@@ -14,6 +14,8 @@ module Distribution.Solver.Modular.Tree
     , trav
     , zeroOrOneChoices
     , active
+    , TreeTrav
+    , EndoTreeTrav
     ) where
 
 import Control.Monad hiding (mapM, sequence)
@@ -187,7 +189,10 @@ zeroOrOneChoices (Fail       _ _           ) = True
 cata :: (TreeF d c a -> a) -> Tree d c -> a
 cata phi x = (phi . fmap (cata phi) . out) x
 
-trav :: (TreeF d c (Tree d a) -> TreeF d a (Tree d a)) -> Tree d c -> Tree d a
+type TreeTrav d c a = TreeF d c (Tree d a) -> TreeF d a (Tree d a)
+type EndoTreeTrav d c = TreeTrav d c c
+
+trav :: TreeTrav d c a -> Tree d c -> Tree d a
 trav psi x = cata (inn . psi) x
 
 -- | Paramorphism on trees.
diff --git a/cabal-install-solver/src/Distribution/Solver/Modular/Validate.hs b/cabal-install-solver/src/Distribution/Solver/Modular/Validate.hs
index b809e4fbbda6fffef57004ed1afcebcd8e760a1a..db383c4ce22483a8246be783d5eadf6ca5550ac2 100644
--- a/cabal-install-solver/src/Distribution/Solver/Modular/Validate.hs
+++ b/cabal-install-solver/src/Distribution/Solver/Modular/Validate.hs
@@ -12,12 +12,9 @@ module Distribution.Solver.Modular.Validate (validateTree) where
 -- assignment returned by exploration of the tree should be a complete valid
 -- assignment, i.e., actually constitute a solution.
 
-import Control.Applicative
-import Control.Monad.Reader hiding (sequence)
+import Control.Monad.Reader
 import Data.Either (lefts)
 import Data.Function (on)
-import Data.Traversable
-import Prelude hiding (sequence)
 
 import qualified Data.List as L
 import qualified Data.Set as S
@@ -164,12 +161,12 @@ type VROrigin = (VR, ExposedComponent, DependencyReason QPN)
 type Conflict = (ConflictSet, FailReason)
 
 validate :: Tree d c -> Validate (Tree d c)
-validate = cata go
+validate = go
   where
-    go :: TreeF d c (Validate (Tree d c)) -> Validate (Tree d c)
+    go :: Tree d c -> Validate (Tree d c)
 
-    go (PChoiceF qpn rdm gr       ts) = PChoice qpn rdm gr <$> sequence (W.mapWithKey (goP qpn) ts)
-    go (FChoiceF qfn rdm gr b m d ts) =
+    go (PChoice qpn rdm gr       ts) = PChoice qpn rdm gr <$> W.traverseWithKey (\k -> goP qpn k . go) ts
+    go (FChoice qfn rdm gr b m d ts) =
       do
         -- Flag choices may occur repeatedly (because they can introduce new constraints
         -- in various places). However, subsequent choices must be consistent. We thereby
@@ -178,26 +175,26 @@ validate = cata go
         case M.lookup qfn pfa of
           Just rb -> -- flag has already been assigned; collapse choice to the correct branch
                      case W.lookup rb ts of
-                       Just t  -> goF qfn rb t
+                       Just t  -> goF qfn rb (go t)
                        Nothing -> return $ Fail (varToConflictSet (F qfn)) (MalformedFlagChoice qfn)
           Nothing -> -- flag choice is new, follow both branches
-                     FChoice qfn rdm gr b m d <$> sequence (W.mapWithKey (goF qfn) ts)
-    go (SChoiceF qsn rdm gr b   ts) =
+                     FChoice qfn rdm gr b m d <$> W.traverseWithKey (\k -> goF qfn k . go) ts
+    go (SChoice qsn rdm gr b   ts) =
       do
         -- Optional stanza choices are very similar to flag choices.
         PA _ _ psa <- asks pa -- obtain current stanza-preassignment
         case M.lookup qsn psa of
           Just rb -> -- stanza choice has already been made; collapse choice to the correct branch
                      case W.lookup rb ts of
-                       Just t  -> goS qsn rb t
+                       Just t  -> goS qsn rb (go t)
                        Nothing -> return $ Fail (varToConflictSet (S qsn)) (MalformedStanzaChoice qsn)
           Nothing -> -- stanza choice is new, follow both branches
-                     SChoice qsn rdm gr b <$> sequence (W.mapWithKey (goS qsn) ts)
+                     SChoice qsn rdm gr b <$> W.traverseWithKey (\k -> goS qsn k . go) ts
 
     -- We don't need to do anything for goal choices or failure nodes.
-    go (GoalChoiceF rdm           ts) = GoalChoice rdm <$> sequence ts
-    go (DoneF       rdm s           ) = pure (Done rdm s)
-    go (FailF    c fr               ) = pure (Fail c fr)
+    go (GoalChoice rdm           ts) = GoalChoice rdm <$> traverse go ts
+    go (Done       rdm s           ) = pure (Done rdm s)
+    go (Fail    c fr               ) = pure (Fail c fr)
 
     -- What to do for package nodes ...
     goP :: QPN -> POption -> Validate (Tree d c) -> Validate (Tree d c)
diff --git a/cabal-install-solver/src/Distribution/Solver/Modular/WeightedPSQ.hs b/cabal-install-solver/src/Distribution/Solver/Modular/WeightedPSQ.hs
index 21216358ac531aed0224021bdbe7607f945e766e..ec9b242bda9af36acc1a59d5de7cb0905b99d879 100644
--- a/cabal-install-solver/src/Distribution/Solver/Modular/WeightedPSQ.hs
+++ b/cabal-install-solver/src/Distribution/Solver/Modular/WeightedPSQ.hs
@@ -1,5 +1,6 @@
 {-# LANGUAGE DeriveFunctor, DeriveFoldable, DeriveTraversable #-}
 {-# LANGUAGE ScopedTypeVariables #-}
+{-# LANGUAGE TupleSections #-}
 module Distribution.Solver.Modular.WeightedPSQ (
     WeightedPSQ
   , fromList
@@ -11,6 +12,7 @@ module Distribution.Solver.Modular.WeightedPSQ (
   , lookup
   , mapWithKey
   , mapWeightsWithKey
+  , traverseWithKey
   , union
   , takeUntil
   ) where
@@ -72,6 +74,15 @@ mapWithKey :: (k -> v1 -> v2) -> WeightedPSQ w k v1 -> WeightedPSQ w k v2
 mapWithKey f (WeightedPSQ xs) = WeightedPSQ $
                                 L.map (\ (w, k, v) -> (w, k, f k v)) xs
 
+-- | /O(N)/. Traverse and update values in some applicative functor.
+traverseWithKey
+  :: Applicative f
+  => (k -> v -> f v')
+  -> WeightedPSQ w k v
+  -> f (WeightedPSQ w k v')
+traverseWithKey f (WeightedPSQ q) = WeightedPSQ <$>
+  traverse (\(w,k,v) -> (w,k,) <$> f k v) q
+
 -- | /O((N + M) log (N + M))/. Combine two @WeightedPSQ@s, preserving all
 -- elements. Elements from the first @WeightedPSQ@ come before elements in the
 -- second when they have the same weight.
diff --git a/cabal-install/cabal-install.cabal b/cabal-install/cabal-install.cabal
index b0927b6c564914d0e45f430cce8cc3555b390063..cb7c9a77062c9b646d96f15d5678de2d6d80230d 100644
--- a/cabal-install/cabal-install.cabal
+++ b/cabal-install/cabal-install.cabal
@@ -1,7 +1,7 @@
 Cabal-Version:      2.2
 
 Name:               cabal-install
-Version:            3.6.0.0
+Version:            3.7.0.0
 Synopsis:           The command-line interface for Cabal and Hackage.
 Description:
     The \'cabal\' command-line program simplifies the process of managing
@@ -49,10 +49,10 @@ common base-dep
     build-depends: base >=4.10 && <4.16
 
 common cabal-dep
-    build-depends: Cabal ^>=3.6
+    build-depends: Cabal ^>=3.7
 
 common cabal-install-solver-dep
-    build-depends: cabal-install-solver ^>=3.6
+    build-depends: cabal-install-solver ^>=3.7
 
 library
     import: warnings, base-dep, cabal-dep, cabal-install-solver-dep
diff --git a/cabal-install/changelog b/cabal-install/changelog
index bf1f18f91533c8e19a6097e1fac2edb5f47bc10e..068a26db51042c5b90202213ffe8a8f91eac2435 100644
--- a/cabal-install/changelog
+++ b/cabal-install/changelog
@@ -1,4 +1,9 @@
 -*-change-log-*-
+3.6.0.0 Emily Pillmore <emilypi@cohomolo.gy> August 2021
+	* See https://github.com/haskell/cabal/blob/master/release-notes/cabal-install-3.6.0.0.md
+
+3.4.0.0 Oleg Grenrus <oleg.grenrus@iki.fi> February 2021
+	* See https://github.com/haskell/cabal/blob/master/release-notes/cabal-install-3.4.0.0.md
 
 3.2.0.0 Herbert Valerio Riedel <hvr@gnu.org> April 2020
 	* `v2-build` (and other `v2-`prefixed commands) now accept the
diff --git a/cabal-install/src/Distribution/Client/CmdHaddock.hs b/cabal-install/src/Distribution/Client/CmdHaddock.hs
index d179873f1271274caf6355c8cca7926cd62786c6..f7a26dfad89aee9de2076d05f526947b5495e040 100644
--- a/cabal-install/src/Distribution/Client/CmdHaddock.hs
+++ b/cabal-install/src/Distribution/Client/CmdHaddock.hs
@@ -24,15 +24,18 @@ import Distribution.Client.NixStyleOptions
 import Distribution.Client.Setup
          ( GlobalFlags, ConfigFlags(..) )
 import Distribution.Simple.Setup
-         ( HaddockFlags(..), fromFlagOrDefault )
+         ( HaddockFlags(..), fromFlagOrDefault, trueArg )
 import Distribution.Simple.Command
-         ( CommandUI(..), usageAlternatives )
+         ( CommandUI(..), usageAlternatives, ShowOrParseArgs, OptionField, option )
 import Distribution.Verbosity
          ( normal )
 import Distribution.Simple.Utils
          ( wrapText, die' )
+import Distribution.Simple.Flag (Flag(..))
 
-haddockCommand :: CommandUI (NixStyleFlags ())
+newtype ClientHaddockFlags = ClientHaddockFlags { openInBrowser :: Flag Bool }
+
+haddockCommand :: CommandUI (NixStyleFlags ClientHaddockFlags)
 haddockCommand = CommandUI {
   commandName         = "v2-haddock",
   commandSynopsis     = "Build Haddock documentation",
@@ -58,20 +61,32 @@ haddockCommand = CommandUI {
         "Examples:\n"
      ++ "  " ++ pname ++ " v2-haddock pkgname"
      ++ "    Build documentation for the package named pkgname\n"
-  , commandOptions      = nixStyleOptions (const [])
-  , commandDefaultFlags = defaultNixStyleFlags ()
+  , commandOptions      = nixStyleOptions haddockOptions
+  , commandDefaultFlags = defaultNixStyleFlags (ClientHaddockFlags (Flag False))
   }
    --TODO: [nice to have] support haddock on specific components, not just
    -- whole packages and the silly --executables etc modifiers.
 
+haddockOptions :: ShowOrParseArgs -> [OptionField ClientHaddockFlags]
+haddockOptions _ =
+  [ option [] ["open"] "Open generated documentation in the browser"
+    openInBrowser (\v f -> f { openInBrowser = v}) trueArg
+  ]
+
 -- | The @haddock@ command is TODO.
 --
 -- For more details on how this works, see the module
 -- "Distribution.Client.ProjectOrchestration"
 --
-haddockAction :: NixStyleFlags () -> [String] -> GlobalFlags -> IO ()
+haddockAction :: NixStyleFlags ClientHaddockFlags -> [String] -> GlobalFlags -> IO ()
 haddockAction flags@NixStyleFlags {..} targetStrings globalFlags = do
-    baseCtx <- establishProjectBaseContext verbosity cliConfig HaddockCommand
+    projCtx <- establishProjectBaseContext verbosity cliConfig HaddockCommand
+
+    let baseCtx
+          | fromFlagOrDefault False (openInBrowser extraFlags)
+            = projCtx { buildSettings = (buildSettings projCtx) { buildSettingHaddockOpen = True } }
+          | otherwise
+            = projCtx
 
     targetSelectors <- either (reportTargetSelectorProblems verbosity) return
                    =<< readTargetSelectors (localPackages baseCtx) Nothing targetStrings
diff --git a/cabal-install/src/Distribution/Client/CmdRepl.hs b/cabal-install/src/Distribution/Client/CmdRepl.hs
index 076010b9bcb914c053bfd869149e96160df5d283..989a8435a1e9c8e049f126da73609160533fc8ff 100644
--- a/cabal-install/src/Distribution/Client/CmdRepl.hs
+++ b/cabal-install/src/Distribution/Client/CmdRepl.hs
@@ -52,7 +52,7 @@ import qualified Distribution.Client.Setup as Client
 import Distribution.Client.Types
          ( PackageLocation(..), PackageSpecifier(..), UnresolvedSourcePackage )
 import Distribution.Simple.Setup
-         ( fromFlagOrDefault, replOptions
+         ( fromFlagOrDefault, ReplOptions(..), replOptions
          , Flag(..), toFlag, falseArg )
 import Distribution.Simple.Command
          ( CommandUI(..), liftOptionL, usageAlternatives, option
@@ -111,8 +111,6 @@ import System.Directory
 import System.FilePath
          ( (</>) )
 
-type ReplFlags = [String]
-
 data EnvFlags = EnvFlags
   { envPackages :: [Dependency]
   , envIncludeTransitive :: Flag Bool
@@ -142,7 +140,7 @@ envOptions _ =
         ("couldn't parse dependencies: " ++)
         (parsecCommaList parsec)
 
-replCommand :: CommandUI (NixStyleFlags (ReplFlags, EnvFlags))
+replCommand :: CommandUI (NixStyleFlags (ReplOptions, EnvFlags))
 replCommand = Client.installCommand {
   commandName         = "v2-repl",
   commandSynopsis     = "Open an interactive session for the given component.",
@@ -179,7 +177,7 @@ replCommand = Client.installCommand {
      ++ "    add a version (constrained between 4.15 and 4.18) of the library 'lens' "
         ++ "to the default component (or no component if there is no project present)\n",
 
-  commandDefaultFlags = defaultNixStyleFlags ([], defaultEnvFlags),
+  commandDefaultFlags = defaultNixStyleFlags (mempty, defaultEnvFlags),
   commandOptions = nixStyleOptions $ \showOrParseArgs ->
     map (liftOptionL _1) (replOptions showOrParseArgs) ++
     map (liftOptionL _2) (envOptions showOrParseArgs)
@@ -196,7 +194,7 @@ replCommand = Client.installCommand {
 -- For more details on how this works, see the module
 -- "Distribution.Client.ProjectOrchestration"
 --
-replAction :: NixStyleFlags (ReplFlags, EnvFlags) -> [String] -> GlobalFlags -> IO ()
+replAction :: NixStyleFlags (ReplOptions, EnvFlags) -> [String] -> GlobalFlags -> IO ()
 replAction flags@NixStyleFlags { extraFlags = (replFlags, envFlags), ..} targetStrings globalFlags = do
     let
       with           = withProject    cliConfig             verbosity targetStrings
@@ -286,8 +284,9 @@ replAction flags@NixStyleFlags { extraFlags = (replFlags, envFlags), ..} targetS
 
     let buildCtx' = buildCtx
           { elaboratedShared = (elaboratedShared buildCtx)
-                { pkgConfigReplOptions = replFlags ++ replFlags'' }
-          }
+            { pkgConfigReplOptions = replFlags
+              { replOptionsFlags = (replOptionsFlags replFlags) ++ replFlags''
+          } } }
     printPlan verbosity baseCtx' buildCtx'
 
     buildOutcomes <- runProjectBuildPhase verbosity baseCtx' buildCtx'
@@ -415,7 +414,7 @@ addDepsToProjectTarget deps pkgId ctx =
         }
     addDeps spec = spec
 
-generateReplFlags :: Bool -> ElaboratedInstallPlan -> OriginalComponentInfo -> ReplFlags
+generateReplFlags :: Bool -> ElaboratedInstallPlan -> OriginalComponentInfo -> [String]
 generateReplFlags includeTransitive elaboratedPlan OriginalComponentInfo{..} = flags
   where
     exeDeps :: [UnitId]
@@ -425,7 +424,7 @@ generateReplFlags includeTransitive elaboratedPlan OriginalComponentInfo{..} = f
         (InstallPlan.dependencyClosure elaboratedPlan [ociUnitId])
 
     deps, deps', trans, trans' :: [UnitId]
-    flags :: ReplFlags
+    flags :: [String]
     deps   = installedUnitId <$> InstallPlan.directDeps elaboratedPlan ociUnitId
     deps'  = deps \\ ociOriginalDeps
     trans  = installedUnitId <$> InstallPlan.dependencyClosure elaboratedPlan deps'
diff --git a/cabal-install/src/Distribution/Client/Config.hs b/cabal-install/src/Distribution/Client/Config.hs
index 90815035e8d0571efc4f32f9c21e619953087fb2..1c2df3dc713f49f0a041221041ffbd72387ee453 100644
--- a/cabal-install/src/Distribution/Client/Config.hs
+++ b/cabal-install/src/Distribution/Client/Config.hs
@@ -376,6 +376,7 @@ instance Semigroup SavedConfig where
         configScratchDir          = combine configScratchDir,
         -- TODO: NubListify
         configExtraLibDirs        = lastNonEmpty configExtraLibDirs,
+        configExtraLibDirsStatic  = lastNonEmpty configExtraLibDirsStatic,
         -- TODO: NubListify
         configExtraFrameworkDirs  = lastNonEmpty configExtraFrameworkDirs,
         -- TODO: NubListify
@@ -1177,6 +1178,8 @@ parseConfig src initial = \str -> do
                        (fromNubList $ configProgramPathExtra scf)
                    , configExtraLibDirs       = splitMultiPath
                                                 (configExtraLibDirs scf)
+                   , configExtraLibDirsStatic = splitMultiPath
+                                                (configExtraLibDirsStatic scf)
                    , configExtraFrameworkDirs = splitMultiPath
                                                 (configExtraFrameworkDirs scf)
                    , configExtraIncludeDirs   = splitMultiPath
diff --git a/cabal-install/src/Distribution/Client/Dependency.hs b/cabal-install/src/Distribution/Client/Dependency.hs
index 14025d74d8be52893f42c690665157c206d875ec..06308e002f09ea41befb32c66b0cc498bb01492f 100644
--- a/cabal-install/src/Distribution/Client/Dependency.hs
+++ b/cabal-install/src/Distribution/Client/Dependency.hs
@@ -14,6 +14,7 @@
 -----------------------------------------------------------------------------
 module Distribution.Client.Dependency (
     -- * The main package dependency resolver
+    DepResolverParams,
     chooseSolver,
     resolveDependencies,
     Progress(..),
@@ -464,6 +465,7 @@ removeBounds  relKind relDeps            params =
       depResolverSourcePkgIndex = sourcePkgIndex'
     }
   where
+    sourcePkgIndex' :: PackageIndex.PackageIndex UnresolvedSourcePackage
     sourcePkgIndex' = fmap relaxDeps $ depResolverSourcePkgIndex params
 
     relaxDeps :: UnresolvedSourcePackage -> UnresolvedSourcePackage
@@ -735,6 +737,7 @@ resolveDependencies platform comp pkgConfigDB solver params =
         then params
         else dontUpgradeNonUpgradeablePackages params
 
+    preferences :: PackageName -> PackagePreferences
     preferences = interpretPackagesPreference targets defpref prefs
 
 
@@ -750,12 +753,14 @@ interpretPackagesPreference selected defaultPref prefs =
                                  (installPref pkgname)
                                  (stanzasPref pkgname)
   where
+    versionPref :: PackageName -> [VersionRange]
     versionPref pkgname =
       fromMaybe [anyVersion] (Map.lookup pkgname versionPrefs)
     versionPrefs = Map.fromListWith (++)
                    [(pkgname, [pref])
                    | PackageVersionPreference pkgname pref <- prefs]
 
+    installPref :: PackageName -> InstalledPreference
     installPref pkgname =
       fromMaybe (installPrefDefault pkgname) (Map.lookup pkgname installPrefs)
     installPrefs = Map.fromList
@@ -770,6 +775,7 @@ interpretPackagesPreference selected defaultPref prefs =
         if pkgname `Set.member` selected then PreferLatest
                                          else PreferInstalled
 
+    stanzasPref :: PackageName -> [OptionalStanza]
     stanzasPref pkgname =
       fromMaybe [] (Map.lookup pkgname stanzasPrefs)
     stanzasPrefs = Map.fromListWith (\a b -> nub (a ++ b))
@@ -797,9 +803,12 @@ validateSolverResult platform comp indepGoals pkgs =
       problems               -> error (formatPkgProblems problems)
 
   where
+    graph :: Graph.Graph (ResolverPackage UnresolvedPkgLoc)
     graph = Graph.fromDistinctList pkgs
 
+    formatPkgProblems :: [PlanPackageProblem] -> String
     formatPkgProblems  = formatProblemMessage . map showPlanPackageProblem
+    formatPlanProblems :: [SolverInstallPlan.SolverPlanProblem] -> String
     formatPlanProblems = formatProblemMessage . map SolverInstallPlan.showPlanProblem
 
     formatProblemMessage problems =
@@ -894,6 +903,7 @@ configuredPackageProblems platform cinfo
                             , not (packageSatisfiesDependency pkgid dep) ]
   -- TODO: sanity tests on executable deps
   where
+    thisPkgName :: PackageName
     thisPkgName = packageName (srcpkgDescription pkg)
 
     specifiedDeps1 :: ComponentDeps [PackageId]
@@ -902,10 +912,12 @@ configuredPackageProblems platform cinfo
     specifiedDeps :: [PackageId]
     specifiedDeps = CD.flatDeps specifiedDeps1
 
+    mergedFlags :: [MergeResult PD.FlagName PD.FlagName]
     mergedFlags = mergeBy compare
       (sort $ map PD.flagName (PD.genPackageFlags (srcpkgDescription pkg)))
       (sort $ map fst (PD.unFlagAssignment specifiedFlags)) -- TODO
 
+    packageSatisfiesDependency :: PackageIdentifier -> Dependency -> Bool
     packageSatisfiesDependency
       (PackageIdentifier name  version)
       (Dependency        name' versionRange _) = assert (name == name') $
@@ -991,7 +1003,9 @@ resolveWithoutDependencies (DepResolverParams targets constraints
 
       where
         -- Constraints
+        requiredVersions :: VersionRange
         requiredVersions = packageConstraints pkgname
+        choices          :: [UnresolvedSourcePackage]
         choices          = PackageIndex.lookupDependency sourcePkgIndex
                                                          pkgname
                                                          requiredVersions
@@ -1000,20 +1014,24 @@ resolveWithoutDependencies (DepResolverParams targets constraints
         PackagePreferences preferredVersions preferInstalled _
           = packagePreferences pkgname
 
+        bestByPrefs   :: UnresolvedSourcePackage -> UnresolvedSourcePackage -> Ordering
         bestByPrefs   = comparing $ \pkg ->
                           (installPref pkg, versionPref pkg, packageVersion pkg)
+        installPref   :: UnresolvedSourcePackage -> Bool
         installPref   = case preferInstalled of
           PreferLatest    -> const False
           PreferInstalled -> not . null
                            . InstalledPackageIndex.lookupSourcePackageId
                                                      installedPkgIndex
                            . packageId
+        versionPref     :: Package a => a -> Int
         versionPref pkg = length . filter (packageVersion pkg `withinRange`) $
                           preferredVersions
 
     packageConstraints :: PackageName -> VersionRange
     packageConstraints pkgname =
       Map.findWithDefault anyVersion pkgname packageVersionConstraintMap
+    packageVersionConstraintMap :: Map PackageName VersionRange
     packageVersionConstraintMap =
       let pcs = map unlabelPackageConstraint constraints
       in Map.fromList [ (scopeToPackageName scope, range)
diff --git a/cabal-install/src/Distribution/Client/Fetch.hs b/cabal-install/src/Distribution/Client/Fetch.hs
index 21d531800073b6949dfc59fe582377e0c8609b01..8e9496c8dc65408ada658d73a05b6ce5e23dc36a 100644
--- a/cabal-install/src/Distribution/Client/Fetch.hs
+++ b/cabal-install/src/Distribution/Client/Fetch.hs
@@ -147,6 +147,7 @@ planPackages verbosity comp platform fetchFlags
         resolveWithoutDependencies resolverParams
 
   where
+    resolverParams :: DepResolverParams
     resolverParams =
 
         setMaxBackjumps (if maxBackjumps < 0 then Nothing
diff --git a/cabal-install/src/Distribution/Client/FetchUtils.hs b/cabal-install/src/Distribution/Client/FetchUtils.hs
index b087867f5d0d7a93c583da06873a4a347c06a0b4..e632147d589a64c0b686f857f4168f9a0ac3c25c 100644
--- a/cabal-install/src/Distribution/Client/FetchUtils.hs
+++ b/cabal-install/src/Distribution/Client/FetchUtils.hs
@@ -146,6 +146,7 @@ fetchPackage verbosity repoCtxt loc = case loc of
     RemoteSourceRepoPackage _repo Nothing ->
       die' verbosity "fetchPackage: source repos not supported"
   where
+    downloadTarballPackage :: URI -> IO FilePath
     downloadTarballPackage uri = do
       transport <- repoContextGetTransport repoCtxt
       transportCheckHttps verbosity transport uri
@@ -173,6 +174,7 @@ fetchRepoTarball verbosity' repoCtxt repo pkgid = do
     -- whether we download or not is non-deterministic
     verbosity = verboseUnmarkOutput verbosity'
 
+    downloadRepoPackage :: IO FilePath
     downloadRepoPackage = case repo of
       RepoLocalNoIndex{} -> return (packageFile repo pkgid)
 
diff --git a/cabal-install/src/Distribution/Client/Freeze.hs b/cabal-install/src/Distribution/Client/Freeze.hs
index 1856ddad12e33a3364c8791eda16fbc59fef1c5b..4b4ea1f31df8494c06201de452ae04869730a0ee 100644
--- a/cabal-install/src/Distribution/Client/Freeze.hs
+++ b/cabal-install/src/Distribution/Client/Freeze.hs
@@ -121,6 +121,7 @@ getFreezePkgs verbosity packageDBs repoCtxt comp platform progdb
                verbosity comp platform freezeFlags
                installedPkgIndex sourcePkgDb pkgConfigDb pkgSpecifiers
   where
+    sanityCheck :: [PackageSpecifier UnresolvedSourcePackage] -> IO ()
     sanityCheck pkgSpecifiers = do
       when (not . null $ [n | n@(NamedPackage _ _) <- pkgSpecifiers]) $
         die' verbosity $ "internal error: 'resolveUserTargets' returned "
@@ -154,6 +155,7 @@ planPackages verbosity comp platform freezeFlags
   return $ pruneInstallPlan installPlan pkgSpecifiers
 
   where
+    resolverParams :: DepResolverParams
     resolverParams =
 
         setMaxBackjumps (if maxBackjumps < 0 then Nothing
diff --git a/cabal-install/src/Distribution/Client/HttpUtils.hs b/cabal-install/src/Distribution/Client/HttpUtils.hs
index 6de14f3c6617ebcc84b0cbc30a402c2268d1a8c0..e5708c87d0c860062aca0747881ae9f37dde8868 100644
--- a/cabal-install/src/Distribution/Client/HttpUtils.hs
+++ b/cabal-install/src/Distribution/Client/HttpUtils.hs
@@ -143,6 +143,7 @@ downloadURI transport verbosity uri path = do
       NeedsDownload hash -> makeDownload transport' hash Nothing
 
   where
+    makeDownload :: HttpTransport -> Maybe BS8.ByteString -> Maybe String -> IO DownloadResult
     makeDownload transport' sha256 etag = withTempFileName (takeDirectory path) (takeFileName path) $ \tmpFile -> do
       result <- getHttp transport' verbosity uri etag tmpFile []
 
diff --git a/cabal-install/src/Distribution/Client/Init/FlagExtractors.hs b/cabal-install/src/Distribution/Client/Init/FlagExtractors.hs
index a75832a9421d118935a0e5f2633558fbc20843d0..9c95de9c6a958f6634e0bcc06ec598977cb1844e 100644
--- a/cabal-install/src/Distribution/Client/Init/FlagExtractors.hs
+++ b/cabal-install/src/Distribution/Client/Init/FlagExtractors.hs
@@ -34,6 +34,7 @@ module Distribution.Client.Init.FlagExtractors
 , initializeTestSuitePrompt
 , packageTypePrompt
 , testMainPrompt
+, dependenciesPrompt
 ) where
 
 
@@ -56,6 +57,8 @@ import Distribution.Simple.Flag (flagElim)
 import Language.Haskell.Extension (Language(..), Extension(..))
 import Distribution.Client.Init.Prompt
 import qualified Data.Set as Set
+import Distribution.Simple.PackageIndex
+import Distribution.Client.Init.Utils
 
 
 
@@ -249,7 +252,7 @@ packageTypePrompt flags = getPackageType flags $ do
       "Library" -> Just Library
       "Executable" -> Just Executable
       "Library and Executable" -> Just LibraryAndExecutable
-      "Test suite" -> Just TestSuite 
+      "Test suite" -> Just TestSuite
       _ -> Nothing
 
 testMainPrompt :: Interactive m => m HsFilePath
@@ -274,6 +277,13 @@ testMainPrompt = do
   where
     defaultMainIs' = show defaultMainIs
 
+dependenciesPrompt
+    :: Interactive m
+    => InstalledPackageIndex
+    -> InitFlags
+    -> m [Dependency]
+dependenciesPrompt pkgIx flags = getDependencies flags (getBaseDep pkgIx flags)
+
 -- -------------------------------------------------------------------- --
 -- utilities
 
diff --git a/cabal-install/src/Distribution/Client/Init/Format.hs b/cabal-install/src/Distribution/Client/Init/Format.hs
index aef0138384f90f1dd74f78feebe54191e59f6d96..6b1150f1e9ac2c9381f794cf093661bba047c8c6 100644
--- a/cabal-install/src/Distribution/Client/Init/Format.hs
+++ b/cabal-install/src/Distribution/Client/Init/Format.hs
@@ -239,7 +239,15 @@ mkTestStanza opts (TestTarget testMain dirs lang otherMods exts deps tools) =
 
 mkPkgDescription :: WriteOpts -> PkgDescription -> [PrettyField FieldAnnotation]
 mkPkgDescription opts pkgDesc =
-    [ field "cabal-version" text (showCabalSpecVersion cabalSpec) [] False opts
+    [ field "cabal-version" text (showCabalSpecVersion cabalSpec)
+      [ "The cabal-version field refers to the version of the .cabal specification,"
+      , "and can be different from the cabal-install (the tool) version and the"
+      , "Cabal (the library) version you are using. As such, the Cabal (the library)"
+      , "version used must be equal or greater than the version stated in this field."
+      ]
+      False
+      opts
+
     , field "name" pretty (_pkgName pkgDesc)
       ["Initial package description '" ++ prettyShow (_optPkgName opts) ++ "' generated by"
       , "'cabal init'. For further documentation, see:"
diff --git a/cabal-install/src/Distribution/Client/Init/Interactive/Command.hs b/cabal-install/src/Distribution/Client/Init/Interactive/Command.hs
index 09cd1b946b09f6963241af4f452d93739074280a..73c23db91d274839013c96833917d1f9988f9673 100644
--- a/cabal-install/src/Distribution/Client/Init/Interactive/Command.hs
+++ b/cabal-install/src/Distribution/Client/Init/Interactive/Command.hs
@@ -46,7 +46,6 @@ import Distribution.Client.Compat.Prelude hiding (putStr, putStrLn, getLine, las
 
 import Distribution.CabalSpecVersion (CabalSpecVersion(..), showCabalSpecVersion)
 import Distribution.Version (Version)
-import Distribution.Types.Dependency (Dependency(..))
 import Distribution.Types.PackageName (PackageName, unPackageName)
 import qualified Distribution.SPDX as SPDX
 import Distribution.Client.Init.Defaults
@@ -58,7 +57,6 @@ import Distribution.Simple.Setup (Flag(..))
 import Distribution.Simple.PackageIndex (InstalledPackageIndex)
 import Distribution.Client.Types (SourcePackageDb(..))
 import Distribution.Solver.Types.PackageIndex (elemByPackageName)
-import Distribution.Verbosity
 
 import Language.Haskell.Extension (Language(..))
 
@@ -461,11 +459,3 @@ srcDirsPrompt flags = getSrcDirs flags $ do
       True
 
     return [dir]
-
-dependenciesPrompt
-    :: Interactive m
-    => InstalledPackageIndex
-    -> InitFlags
-    -> m [Dependency]
-dependenciesPrompt pkgIx flags = getDependencies flags $
-    retrieveDependencies silent flags [(fromString "Prelude", fromString "Prelude")] pkgIx
diff --git a/cabal-install/src/Distribution/Client/Init/Simple.hs b/cabal-install/src/Distribution/Client/Init/Simple.hs
index 97962509c746e62e206eff003cf91d67217aa0ff..562e6d34b9fa52e654666b9f7b74ce253692f592 100644
--- a/cabal-install/src/Distribution/Client/Init/Simple.hs
+++ b/cabal-install/src/Distribution/Client/Init/Simple.hs
@@ -16,9 +16,11 @@ import Distribution.Client.Types.SourcePackageDb (SourcePackageDb(..))
 import qualified Data.List.NonEmpty as NEL
 import Distribution.Client.Init.Utils (currentDirPkgName, mkPackageNameDep, fixupDocFiles)
 import Distribution.Client.Init.Defaults
-import Distribution.Simple.Flag (fromFlagOrDefault, flagElim)
+import Distribution.Simple.Flag (fromFlagOrDefault, flagElim, Flag(..))
 import Distribution.Client.Init.FlagExtractors
 import qualified Data.Set as Set
+import Distribution.Types.Dependency
+import Distribution.Types.PackageName (unPackageName)
 
 
 createProject
@@ -28,7 +30,7 @@ createProject
     -> SourcePackageDb
     -> InitFlags
     -> m ProjectSettings
-createProject v _pkgIx _srcDb initFlags = do
+createProject v pkgIx _srcDb initFlags = do
     pkgType <- packageTypePrompt initFlags
     isMinimal <- getMinimal initFlags
     doOverwrite <- getOverwrite initFlags
@@ -41,30 +43,32 @@ createProject v _pkgIx _srcDb initFlags = do
           doOverwrite isMinimal cs
           v pkgDir pkgType pkgName
 
+    basedFlags <- addBaseDepToFlags pkgIx initFlags
+
     case pkgType of
       Library -> do
-        libTarget <- genSimpleLibTarget initFlags
-        testTarget <- addLibDepToTest pkgName <$> genSimpleTestTarget initFlags
+        libTarget <- genSimpleLibTarget basedFlags
+        testTarget <- addLibDepToTest pkgName <$> genSimpleTestTarget basedFlags
         return $ ProjectSettings
           (mkOpts False cabalSpec) pkgDesc
           (Just libTarget) Nothing testTarget
 
       Executable -> do
-        exeTarget <- genSimpleExeTarget initFlags
+        exeTarget <- genSimpleExeTarget basedFlags
         return $ ProjectSettings
           (mkOpts False cabalSpec) pkgDesc
           Nothing (Just exeTarget) Nothing
 
       LibraryAndExecutable -> do
-        libTarget <- genSimpleLibTarget initFlags
-        testTarget <- addLibDepToTest pkgName <$> genSimpleTestTarget initFlags
-        exeTarget <- addLibDepToExe pkgName <$> genSimpleExeTarget initFlags
+        libTarget <- genSimpleLibTarget basedFlags
+        testTarget <- addLibDepToTest pkgName <$> genSimpleTestTarget basedFlags
+        exeTarget <- addLibDepToExe pkgName <$> genSimpleExeTarget basedFlags
         return $ ProjectSettings
           (mkOpts False cabalSpec) pkgDesc
           (Just libTarget) (Just exeTarget) testTarget
-      
+
       TestSuite -> do
-        testTarget <- genSimpleTestTarget initFlags
+        testTarget <- genSimpleTestTarget basedFlags
         return $ ProjectSettings
           (mkOpts False cabalSpec) pkgDesc
           Nothing Nothing testTarget
@@ -151,3 +155,21 @@ genSimpleTestTarget flags = go =<< initializeTestSuitePrompt flags
           , _testDependencies = fromFlagOrDefault [] $ dependencies flags
           , _testBuildTools = buildToolDeps
           }
+
+-- -------------------------------------------------------------------- --
+-- Utils
+
+-- | If deps are defined, and base is present, we skip the search for base.
+-- otherwise, we look up @base@ and add it to the list.
+addBaseDepToFlags :: Interactive m => InstalledPackageIndex -> InitFlags -> m InitFlags
+addBaseDepToFlags pkgIx initFlags = case dependencies initFlags of
+  Flag as
+    | any ((==) "base" . unPackageName . depPkgName) as -> return initFlags
+    | otherwise -> do
+      based <- dependenciesPrompt pkgIx initFlags
+      return $ initFlags
+        { dependencies = Flag $ based ++ as
+        }
+  _ -> do
+    based <- dependenciesPrompt pkgIx initFlags
+    return initFlags { dependencies = Flag based }
diff --git a/cabal-install/src/Distribution/Client/Init/Utils.hs b/cabal-install/src/Distribution/Client/Init/Utils.hs
index b3ae305293d1ef67802757c53a3e4438a370e291..fbcdf5916cfe9d54f468fdfbd414f00c1b7beaea 100644
--- a/cabal-install/src/Distribution/Client/Init/Utils.hs
+++ b/cabal-install/src/Distribution/Client/Init/Utils.hs
@@ -17,6 +17,7 @@ module Distribution.Client.Init.Utils
 , mkPackageNameDep
 , fixupDocFiles
 , mkStringyDep
+, getBaseDep
 ) where
 
 
@@ -46,6 +47,7 @@ import Distribution.Types.PackageName
 import Distribution.Types.Dependency (Dependency, mkDependency)
 import qualified Distribution.Compat.NonEmptySet as NES
 import Distribution.Types.LibraryName
+import Distribution.Verbosity (silent)
 
 
 -- |Data type of source files found in the working directory
@@ -307,3 +309,8 @@ fixupDocFiles v pkgDesc
 
 mkStringyDep :: String -> Dependency
 mkStringyDep = mkPackageNameDep . mkPackageName
+
+
+getBaseDep :: Interactive m => InstalledPackageIndex -> InitFlags -> m [Dependency]
+getBaseDep pkgIx flags = retrieveDependencies silent flags
+  [(fromString "Prelude", fromString "Prelude")] pkgIx
diff --git a/cabal-install/src/Distribution/Client/ProjectBuilding.hs b/cabal-install/src/Distribution/Client/ProjectBuilding.hs
index f11d14913db1d83b3bbd492a3e6e64c55803970b..dba81b09b17adbb8af039b4a5350baddd851171e 100644
--- a/cabal-install/src/Distribution/Client/ProjectBuilding.hs
+++ b/cabal-install/src/Distribution/Client/ProjectBuilding.hs
@@ -68,7 +68,7 @@ import           Distribution.Client.Setup
 import           Distribution.Client.SourceFiles
 import           Distribution.Client.SrcDist (allPackageSourceFiles)
 import           Distribution.Client.Utils
-                   ( ProgressPhase(..), progressMessage, removeExistingFile )
+                   ( ProgressPhase(..), findOpenProgramLocation, progressMessage, removeExistingFile )
 
 import           Distribution.Compat.Lens
 import           Distribution.Package
@@ -230,6 +230,7 @@ rebuildTargetsDryRun distDirLayout@DistDirLayout{..} shared =
             then dryRunLocalPkg pkg depsBuildStatus srcdir
             else return (BuildStatusUnpack tarball)
       where
+        srcdir :: FilePath
         srcdir = distUnpackedSrcDirectory (packageId pkg)
 
     dryRunLocalPkg :: ElaboratedConfiguredPackage
@@ -250,6 +251,7 @@ rebuildTargetsDryRun distDirLayout@DistDirLayout{..} shared =
           Right buildResult ->
             return (BuildStatusUpToDate buildResult)
       where
+        packageFileMonitor :: PackageFileMonitor
         packageFileMonitor =
           newPackageFileMonitor shared distDirLayout
           (elabDistDirParams shared pkg)
@@ -295,6 +297,7 @@ improveInstallPlanWithUpToDatePackages :: BuildStatusMap
 improveInstallPlanWithUpToDatePackages pkgsBuildStatus =
     InstallPlan.installed canPackageBeImproved
   where
+    canPackageBeImproved :: ElaboratedConfiguredPackage -> Bool
     canPackageBeImproved pkg =
       case Map.lookup (installedUnitId pkg) pkgsBuildStatus of
         Just BuildStatusUpToDate {} -> True
@@ -376,6 +379,13 @@ packageFileMonitorKeyValues elab =
     -- do not affect the configure step need to be nulled out. Those parts are
     -- the specific targets that we're going to build.
     --
+
+    -- Additionally we null out the parts that don't affect the configure step because they're simply
+    -- about how tests or benchmarks are run
+
+    -- TODO there may be more things to null here too, in the future.
+
+    elab_config :: ElaboratedConfiguredPackage
     elab_config =
         elab {
             elabBuildTargets   = [],
@@ -383,13 +393,21 @@ packageFileMonitorKeyValues elab =
             elabBenchTargets   = [],
             elabReplTarget     = Nothing,
             elabHaddockTargets = [],
-            elabBuildHaddocks  = False
+            elabBuildHaddocks  = False,
+
+            elabTestMachineLog   = Nothing,
+            elabTestHumanLog     = Nothing,
+            elabTestShowDetails  = Nothing,
+            elabTestKeepTix      = False,
+            elabTestTestOptions  = [],
+            elabBenchmarkOptions = []
         }
 
     -- The second part is the value used to guard the build step. So this is
     -- more or less the opposite of the first part, as it's just the info about
     -- what targets we're going to build.
     --
+    buildComponents :: Set ComponentName
     buildComponents = elabBuildTargetWholeComponents elab
 
 -- | Do all the checks on whether a package has changed and thus needs either
@@ -464,6 +482,7 @@ checkPackageFileMonitorChanged PackageFileMonitor{..}
                   (docsResult, testsResult) = buildResult
   where
     (pkgconfig, buildComponents) = packageFileMonitorKeyValues pkg
+    changedToMaybe :: MonitorChanged a b -> Maybe b
     changedToMaybe (MonitorChanged     _) = Nothing
     changedToMaybe (MonitorUnchanged x _) = Just x
 
@@ -681,6 +700,7 @@ rebuildTarget verbosity
   where
     unexpectedState = error "rebuildTarget: unexpected package status"
 
+    downloadPhase :: IO BuildResult
     downloadPhase = do
         downsrcloc <- annotateFailureNoLog DownloadFailed $
                         waitAsyncPackageDownload verbosity downloadMap pkg
@@ -888,6 +908,7 @@ unpackPackageTarball verbosity tarball parentdir pkgid pkgTextOverride =
           writeFileAtomic cabalFile pkgtxt
 
   where
+    cabalFile :: FilePath
     cabalFile = parentdir </> pkgsubdir
                           </> prettyShow pkgname <.> "cabal"
     pkgsubdir = prettyShow pkgid
@@ -1081,12 +1102,14 @@ buildAndInstallUnpackedPackage verbosity
     uid    = installedUnitId rpkg
     compid = compilerId compiler
 
+    dispname :: String
     dispname = case elabPkgOrComp pkg of
         ElabPackage _ -> prettyShow pkgid
             ++ " (all, legacy fallback)"
         ElabComponent comp -> prettyShow pkgid
             ++ " (" ++ maybe "custom" prettyShow (compComponentName comp) ++ ")"
 
+    noticeProgress :: ProgressPhase -> IO ()
     noticeProgress phase = when isParallelBuild $
         progressMessage verbosity phase dispname
 
@@ -1201,11 +1224,12 @@ buildInplaceUnpackedPackage verbosity
                               distPackageCacheDirectory,
                               distDirectory
                             }
-                            BuildTimeSettings{buildSettingNumJobs}
+                            BuildTimeSettings{buildSettingNumJobs, buildSettingHaddockOpen}
                             registerLock cacheLock
                             pkgshared@ElaboratedSharedConfig {
                               pkgConfigCompiler      = compiler,
-                              pkgConfigCompilerProgs = progdb
+                              pkgConfigCompilerProgs = progdb,
+                              pkgConfigPlatform      = platform
                             }
                             plan
                             rpkg@(ReadyPackage pkg)
@@ -1321,6 +1345,17 @@ buildInplaceUnpackedPackage verbosity
               Tar.createTarGzFile dest docDir name
               notice verbosity $ "Documentation tarball created: " ++ dest
 
+            when (buildSettingHaddockOpen && haddockTarget /= Cabal.ForHackage) $ do
+              let dest = docDir </> name </> "index.html"
+                  name = haddockDirName haddockTarget (elabPkgDescription pkg)
+                  docDir = distBuildDirectory distDirLayout dparams
+                           </> "doc" </> "html"
+              exe <- findOpenProgramLocation platform
+              case exe of
+                Right open -> runProgramInvocation verbosity (simpleProgramInvocation open [dest])
+                Left err -> die' verbosity err
+
+
         return BuildResult {
           buildResultDocs    = docsResult,
           buildResultTests   = testsResult,
@@ -1455,6 +1490,7 @@ withTempInstalledPackageInfoFile verbosity tempdir action =
       "Couldn't parse the output of 'setup register --gen-pkg-config':"
       ++ show perror
 
+    readPkgConf :: FilePath -> FilePath -> IO InstalledPackageInfo
     readPkgConf pkgConfDir pkgConfFile = do
       pkgConfStr <- BS.readFile (pkgConfDir </> pkgConfFile)
       (warns, ipkg) <- case Installed.parseInstalledPackageInfo pkgConfStr of
diff --git a/cabal-install/src/Distribution/Client/ProjectConfig.hs b/cabal-install/src/Distribution/Client/ProjectConfig.hs
index 8835ee27c07ee6fba7bb15c35e4dc1ff5b17a73a..17c0435035d7b4ca54695800696dab26439e5352 100644
--- a/cabal-install/src/Distribution/Client/ProjectConfig.hs
+++ b/cabal-install/src/Distribution/Client/ProjectConfig.hs
@@ -324,6 +324,7 @@ resolveBuildTimeSettings verbosity
     buildSettingReportPlanningFailure
                               = fromFlag projectConfigReportPlanningFailure
     buildSettingProgPathExtra = fromNubList projectConfigProgPathExtra
+    buildSettingHaddockOpen   = False
 
     ProjectConfigBuildOnly{..} = defaults
                               <> projectConfigBuildOnly
diff --git a/cabal-install/src/Distribution/Client/ProjectConfig/Legacy.hs b/cabal-install/src/Distribution/Client/ProjectConfig/Legacy.hs
index d6f3924df85d981a71384b72ace5d5a01ebf5c2c..0aca7ac2a4a77a4e14c0b6f829fac5b164ad133f 100644
--- a/cabal-install/src/Distribution/Client/ProjectConfig/Legacy.hs
+++ b/cabal-install/src/Distribution/Client/ProjectConfig/Legacy.hs
@@ -428,6 +428,7 @@ convertLegacyPerPackageFlags configFlags installFlags
       configStripExes           = packageConfigStripExes,
       configStripLibs           = packageConfigStripLibs,
       configExtraLibDirs        = packageConfigExtraLibDirs,
+      configExtraLibDirsStatic  = packageConfigExtraLibDirsStatic,
       configExtraFrameworkDirs  = packageConfigExtraFrameworkDirs,
       configExtraIncludeDirs    = packageConfigExtraIncludeDirs,
       configConfigurationsFlags = packageConfigFlagAssignment,
@@ -705,6 +706,7 @@ convertToLegacyAllPackageConfig
       configStripExes           = mempty,
       configStripLibs           = mempty,
       configExtraLibDirs        = mempty,
+      configExtraLibDirsStatic  = mempty,
       configExtraFrameworkDirs  = mempty,
       configConstraints         = mempty,
       configDependencies        = mempty,
@@ -777,6 +779,7 @@ convertToLegacyPerPackageConfig PackageConfig {..} =
       configStripExes           = packageConfigStripExes,
       configStripLibs           = packageConfigStripLibs,
       configExtraLibDirs        = packageConfigExtraLibDirs,
+      configExtraLibDirsStatic  = packageConfigExtraLibDirsStatic,
       configExtraFrameworkDirs  = packageConfigExtraFrameworkDirs,
       configConstraints         = mempty,
       configDependencies        = mempty,
@@ -1060,6 +1063,10 @@ legacyPackageConfigFieldDescrs =
           showTokenQ parseTokenQ
           configExtraLibDirs
           (\v conf -> conf { configExtraLibDirs = v })
+      , newLineListField "extra-lib-dirs-static"
+          showTokenQ parseTokenQ
+          configExtraLibDirsStatic
+          (\v conf -> conf { configExtraLibDirsStatic = v })
       , newLineListField "extra-framework-dirs"
           showTokenQ parseTokenQ
           configExtraFrameworkDirs
diff --git a/cabal-install/src/Distribution/Client/ProjectConfig/Types.hs b/cabal-install/src/Distribution/Client/ProjectConfig/Types.hs
index aaa25df9eaa9fb12e5b58907cb0098e02ed7a58d..92850b27925910aed7691a031ba577bd566e8c37 100644
--- a/cabal-install/src/Distribution/Client/ProjectConfig/Types.hs
+++ b/cabal-install/src/Distribution/Client/ProjectConfig/Types.hs
@@ -258,6 +258,7 @@ data PackageConfig
        packageConfigProgPrefix          :: Flag PathTemplate,
        packageConfigProgSuffix          :: Flag PathTemplate,
        packageConfigExtraLibDirs        :: [FilePath],
+       packageConfigExtraLibDirsStatic  :: [FilePath],
        packageConfigExtraFrameworkDirs  :: [FilePath],
        packageConfigExtraIncludeDirs    :: [FilePath],
        packageConfigGHCiLib             :: Flag Bool,
@@ -456,5 +457,6 @@ data BuildTimeSettings
        buildSettingCacheDir              :: FilePath,
        buildSettingHttpTransport         :: Maybe String,
        buildSettingIgnoreExpiry          :: Bool,
-       buildSettingProgPathExtra         :: [FilePath]
+       buildSettingProgPathExtra         :: [FilePath],
+       buildSettingHaddockOpen           :: Bool
      }
diff --git a/cabal-install/src/Distribution/Client/ProjectPlanning.hs b/cabal-install/src/Distribution/Client/ProjectPlanning.hs
index 077c6422be4f9dab90be2ee3252e29d17c3e24f3..4113f5f1fb14df80590c60270bdd566c5a3ffcff 100644
--- a/cabal-install/src/Distribution/Client/ProjectPlanning.hs
+++ b/cabal-install/src/Distribution/Client/ProjectPlanning.hs
@@ -338,10 +338,12 @@ rebuildProjectConfig verbosity
     ProjectConfigShared { projectConfigConfigFile } =
       projectConfigShared cliConfig
 
+    fileMonitorProjectConfig ::
+      FileMonitor
+        (FilePath, FilePath)
+        (ProjectConfig, [PackageSpecifier UnresolvedSourcePackage])
     fileMonitorProjectConfig =
-      newFileMonitor (distProjectCacheFile "config") :: FileMonitor
-          (FilePath, FilePath)
-          (ProjectConfig, [PackageSpecifier UnresolvedSourcePackage])
+      newFileMonitor (distProjectCacheFile "config")
 
     -- Read the cabal.project (or implicit config) and combine it with
     -- arguments from the command line
@@ -964,6 +966,7 @@ planPackages verbosity comp platform solver SolverSettings{..}
     --TODO: [nice to have] disable multiple instances restriction in
     -- the solver, but then make sure we can cope with that in the
     -- output.
+    resolverParams :: DepResolverParams
     resolverParams =
 
         setMaxBackjumps solverSettingMaxBackjumps
@@ -1024,13 +1027,14 @@ planPackages verbosity comp platform solver SolverSettings{..}
             | (pc, src) <- solverSettingConstraints ]
 
       . addPreferences
-          -- enable stanza preference where the user did not specify
+          -- enable stanza preference unilaterally, regardless if the user asked
+          -- accordingly or expressed no preference, to help hint the solver
           [ PackageStanzasPreference pkgname stanzas
           | pkg <- localPackages
           , let pkgname = pkgSpecifierTarget pkg
                 stanzaM = Map.findWithDefault Map.empty pkgname pkgStanzasEnable
                 stanzas = [ stanza | stanza <- [minBound..maxBound]
-                          , Map.lookup stanza stanzaM == Nothing ]
+                          , Map.lookup stanza stanzaM /= Just False ]
           , not (null stanzas)
           ]
 
@@ -1073,6 +1077,7 @@ planPackages verbosity comp platform solver SolverSettings{..}
 
       $ stdResolverParams
 
+    stdResolverParams :: DepResolverParams
     stdResolverParams =
       -- Note: we don't use the standardInstallPolicy here, since that uses
       -- its own addDefaultSetupDependencies that is not appropriate for us.
@@ -1282,9 +1287,10 @@ elaborateInstallPlan verbosity platform compiler compilerprogdb pkgConfigDB
         pkgConfigPlatform      = platform,
         pkgConfigCompiler      = compiler,
         pkgConfigCompilerProgs = compilerprogdb,
-        pkgConfigReplOptions   = []
+        pkgConfigReplOptions   = mempty
       }
 
+    preexistingInstantiatedPkgs :: Map UnitId FullUnitId
     preexistingInstantiatedPkgs =
         Map.fromList (mapMaybe f (SolverInstallPlan.toList solverPlan))
       where
@@ -1296,6 +1302,8 @@ elaborateInstallPlan verbosity platform compiler compilerprogdb pkgConfigDB
                                  (Map.fromList (IPI.instantiatedWith ipkg))))
         f _ = Nothing
 
+    elaboratedInstallPlan ::
+      LogProgress (InstallPlan.GenericInstallPlan IPI.InstalledPackageInfo ElaboratedConfiguredPackage)
     elaboratedInstallPlan =
       flip InstallPlan.fromSolverInstallPlanWithProgress solverPlan $ \mapDep planpkg ->
         case planpkg of
@@ -1850,6 +1858,7 @@ elaborateInstallPlan verbosity platform compiler compilerprogdb pkgConfigDB
         elabProgramPathExtra    = perPkgOptionNubList pkgid packageConfigProgramPathExtra
         elabConfigureScriptArgs = perPkgOptionList pkgid packageConfigConfigureArgs
         elabExtraLibDirs        = perPkgOptionList pkgid packageConfigExtraLibDirs
+        elabExtraLibDirsStatic  = perPkgOptionList pkgid packageConfigExtraLibDirsStatic
         elabExtraFrameworkDirs  = perPkgOptionList pkgid packageConfigExtraFrameworkDirs
         elabExtraIncludeDirs    = perPkgOptionList pkgid packageConfigExtraIncludeDirs
         elabProgPrefix          = perPkgOptionMaybe pkgid packageConfigProgPrefix
@@ -2592,7 +2601,7 @@ nubComponentTargets =
                             -> [(ComponentTarget, NonEmpty a)]
     wholeComponentOverrides ts =
       case [ ta | ta@(ComponentTarget _ WholeComponent, _) <- ts ] of
-        ((t, x):_) -> 
+        ((t, x):_) ->
                 let
                     -- Delete tuple (t, x) from original list to avoid duplicates.
                     -- Use 'deleteBy', to avoid additional Class constraint on 'nubComponentTargets'.
@@ -3463,6 +3472,7 @@ setupHsConfigureFlags (ReadyPackage elab@ElaboratedConfiguredPackage{..})
     configConfigurationsFlags = elabFlagAssignment
     configConfigureArgs       = elabConfigureScriptArgs
     configExtraLibDirs        = elabExtraLibDirs
+    configExtraLibDirsStatic  = elabExtraLibDirsStatic
     configExtraFrameworkDirs  = elabExtraFrameworkDirs
     configExtraIncludeDirs    = elabExtraIncludeDirs
     configProgPrefix          = maybe mempty toFlag elabProgPrefix
diff --git a/cabal-install/src/Distribution/Client/ProjectPlanning/Types.hs b/cabal-install/src/Distribution/Client/ProjectPlanning/Types.hs
index 0388886ecdedf669561a82c4038459f45bcefaed..2d5eecdd353d6f4df8051ca4b00321e6266e93d8 100644
--- a/cabal-install/src/Distribution/Client/ProjectPlanning/Types.hs
+++ b/cabal-install/src/Distribution/Client/ProjectPlanning/Types.hs
@@ -95,7 +95,7 @@ import           Distribution.Simple.LocalBuildInfo
                    ( ComponentName(..), LibraryName(..) )
 import qualified Distribution.Simple.InstallDirs as InstallDirs
 import           Distribution.Simple.InstallDirs (PathTemplate)
-import           Distribution.Simple.Setup (HaddockTarget, TestShowDetails)
+import           Distribution.Simple.Setup (HaddockTarget, TestShowDetails, ReplOptions)
 import           Distribution.Version
 
 import qualified Distribution.Solver.Types.ComponentDeps as CD
@@ -147,7 +147,7 @@ data ElaboratedSharedConfig
        -- ghc & ghc-pkg). Once constructed, only the 'configuredPrograms' are
        -- used.
        pkgConfigCompilerProgs :: ProgramDb,
-       pkgConfigReplOptions :: [String]
+       pkgConfigReplOptions :: ReplOptions
      }
   deriving (Show, Generic, Typeable)
   --TODO: [code cleanup] no Eq instance
@@ -267,6 +267,7 @@ data ElaboratedConfiguredPackage
        elabProgramPathExtra      :: [FilePath],
        elabConfigureScriptArgs   :: [String],
        elabExtraLibDirs          :: [FilePath],
+       elabExtraLibDirsStatic    :: [FilePath],
        elabExtraFrameworkDirs    :: [FilePath],
        elabExtraIncludeDirs      :: [FilePath],
        elabProgPrefix            :: Maybe PathTemplate,
diff --git a/cabal-install/src/Distribution/Client/RebuildMonad.hs b/cabal-install/src/Distribution/Client/RebuildMonad.hs
index ec7e9843bdc557174aa68ff856b1c057dcbf89fc..3818aced7a3c08dea42ba439ffe1c6c5e4f168d6 100644
--- a/cabal-install/src/Distribution/Client/RebuildMonad.hs
+++ b/cabal-install/src/Distribution/Client/RebuildMonad.hs
@@ -294,9 +294,10 @@ findFileWithExtensionMonitored extensions searchPath baseName =
     , ext <- nub extensions ]
 
 -- | Like 'findFirstFile', but in the 'Rebuild' monad.
-findFirstFileMonitored :: (a -> FilePath) -> [a] -> Rebuild (Maybe a)
+findFirstFileMonitored :: forall a. (a -> FilePath) -> [a] -> Rebuild (Maybe a)
 findFirstFileMonitored file = findFirst
-  where findFirst []     = return Nothing
+  where findFirst        :: [a] -> Rebuild (Maybe a)
+        findFirst []     = return Nothing
         findFirst (x:xs) = do exists <- doesFileExistMonitored (file x)
                               if exists
                                 then return (Just x)
diff --git a/cabal-install/src/Distribution/Client/Reconfigure.hs b/cabal-install/src/Distribution/Client/Reconfigure.hs
index cb15790e5dd01d22752ddab8c80058f1e433a401..5be346fdd32eb0b932fc2594d2f86dad743a0be2 100644
--- a/cabal-install/src/Distribution/Client/Reconfigure.hs
+++ b/cabal-install/src/Distribution/Client/Reconfigure.hs
@@ -119,14 +119,16 @@ reconfigure
 
     else do
 
-      let checks =
+      let checks :: Check (ConfigFlags, ConfigExFlags)
+          checks =
             checkVerb
             <> checkDist
             <> checkOutdated
             <> check
       (Any frc, flags@(configFlags, _)) <- runCheck checks mempty savedFlags
 
-      let config' = updateInstallDirs (configUserInstall configFlags) config
+      let config' :: SavedConfig
+          config' = updateInstallDirs (configUserInstall configFlags) config
 
       when frc $ configureAction flags extraArgs globalFlags
       return config'
@@ -135,11 +137,13 @@ reconfigure
 
     -- Changing the verbosity does not require reconfiguration, but the new
     -- verbosity should be used if reconfiguring.
+    checkVerb :: Check (ConfigFlags, b)
     checkVerb = Check $ \_ (configFlags, configExFlags) -> do
       let configFlags' = configFlags { configVerbosity = toFlag verbosity}
       return (mempty, (configFlags', configExFlags))
 
     -- Reconfiguration is required if @--build-dir@ changes.
+    checkDist :: Check (ConfigFlags, b)
     checkDist = Check $ \_ (configFlags, configExFlags) -> do
       -- Always set the chosen @--build-dir@ before saving the flags,
       -- or bad things could happen.
@@ -149,6 +153,7 @@ reconfigure
       let configFlags' = configFlags { configDistPref = toFlag dist }
       return (Any distChanged, (configFlags', configExFlags))
 
+    checkOutdated :: Check (ConfigFlags, b)
     checkOutdated = Check $ \_ flags@(configFlags, _) -> do
       let buildConfig = localBuildInfoFile dist
 
@@ -172,7 +177,8 @@ reconfigure
       outdated <- existsAndIsMoreRecentThan descrFile buildConfig
       when outdated $ info verbosity (descrFile ++ " was changed")
 
-      let failed =
+      let failed :: Any
+          failed =
             Any outdated
             <> Any userPackageEnvironmentFileModified
             <> Any (not configured)
diff --git a/cabal-install/src/Distribution/Client/Setup.hs b/cabal-install/src/Distribution/Client/Setup.hs
index c710b4a384e87e31e06c079e698b3bb385abd283..13cd1001fbc564d85e5985a4f7ab85d5d949b859 100644
--- a/cabal-install/src/Distribution/Client/Setup.hs
+++ b/cabal-install/src/Distribution/Client/Setup.hs
@@ -470,6 +470,7 @@ filterConfigureFlags flags cabalLibVersion
   | cabalLibVersion < mkVersion [1,25,0] = flags_1_25_0
   | cabalLibVersion < mkVersion [2,1,0]  = flags_2_1_0
   | cabalLibVersion < mkVersion [2,5,0]  = flags_2_5_0
+  | cabalLibVersion < mkVersion [3,7,0]  = flags_3_7_0
   | otherwise = error "the impossible just happened" -- see first guard
   where
     flags_latest = flags        {
@@ -480,7 +481,12 @@ filterConfigureFlags flags cabalLibVersion
       configConstraints = []
       }
 
-    flags_2_5_0 = flags_latest {
+    flags_3_7_0 = flags_latest {
+        -- Cabal < 3.7 does not know about --extra-lib-dirs-static
+        configExtraLibDirsStatic = []
+      }
+
+    flags_2_5_0 = flags_3_7_0 {
       -- Cabal < 2.5 does not understand --dependency=pkg:component=cid
       -- (public sublibraries), so we convert it to the legacy
       -- --dependency=pkg_or_internal_compoent=cid
diff --git a/cabal-install/src/Distribution/Client/SolverInstallPlan.hs b/cabal-install/src/Distribution/Client/SolverInstallPlan.hs
index f4fbbfdadbd84890178b60e645bdefcb5fe4c203..02ac3973218a9e79517fd2239b44809bc90b314b 100644
--- a/cabal-install/src/Distribution/Client/SolverInstallPlan.hs
+++ b/cabal-install/src/Distribution/Client/SolverInstallPlan.hs
@@ -126,6 +126,7 @@ showPlanPackage (Configured  spkg) =
     comps | null deps = ""
           | otherwise = " " ++ unwords (map prettyShow $ Foldable.toList deps)
       where
+        deps :: Set CD.Component
         deps = CD.components (solverPkgLibDeps spkg)
              <> CD.components (solverPkgExeDeps spkg)
 
@@ -271,6 +272,7 @@ nonSetupClosure :: SolverPlanIndex
                 -> SolverPlanIndex
 nonSetupClosure index pkgids0 = closure Graph.empty pkgids0
  where
+    closure :: Graph SolverPlanPackage -> [SolverId] -> SolverPlanIndex
     closure completed []             = completed
     closure completed (pkgid:pkgids) =
       case Graph.lookup pkgid index of
@@ -293,6 +295,7 @@ rootSets (IndependentGoals indepGoals) index =
        if indepGoals then map (:[]) libRoots else [libRoots]
     ++ setupRoots index
   where
+    libRoots :: [SolverId]
     libRoots = libraryRoots index
 
 -- | Compute the library roots of a plan
diff --git a/cabal-install/src/Distribution/Client/SourceFiles.hs b/cabal-install/src/Distribution/Client/SourceFiles.hs
index 279593684714d32b5a95ab408adb51a7ee2a2791..b6edd067b74adbe04f90e325fe0ed00934933a3c 100644
--- a/cabal-install/src/Distribution/Client/SourceFiles.hs
+++ b/cabal-install/src/Distribution/Client/SourceFiles.hs
@@ -21,6 +21,7 @@ import Distribution.Simple.PreProcess
 
 import Distribution.Types.PackageDescription
 import Distribution.Types.Component
+import Distribution.Types.ComponentRequestedSpec (ComponentRequestedSpec)
 import Distribution.Types.Library
 import Distribution.Types.Executable
 import Distribution.Types.Benchmark
@@ -48,8 +49,11 @@ needElaboratedPackage :: ElaboratedConfiguredPackage -> ElaboratedPackage -> Reb
 needElaboratedPackage elab epkg =
     traverse_ (needComponent pkg_descr) (enabledComponents pkg_descr enabled)
   where
+    pkg_descr :: PackageDescription
     pkg_descr = elabPkgDescription elab
+    enabled_stanzas :: OptionalStanzaSet
     enabled_stanzas = pkgStanzasEnabled epkg
+    enabled :: ComponentRequestedSpec
     enabled = enableStanzas enabled_stanzas
 
 needElaboratedComponent :: ElaboratedConfiguredPackage -> ElaboratedComponent -> Rebuild ()
@@ -58,7 +62,9 @@ needElaboratedComponent elab ecomp =
         Nothing   -> needSetup
         Just comp -> needComponent pkg_descr comp
   where
+    pkg_descr :: PackageDescription
     pkg_descr = elabPkgDescription elab
+    mb_comp   :: Maybe Component
     mb_comp   = fmap (getComponent pkg_descr) (compComponentName ecomp)
 
 needComponent :: PackageDescription -> Component -> Rebuild ()
@@ -101,6 +107,7 @@ needTestSuite pkg_descr t
         needBuildInfo pkg_descr bi [m]
       TestSuiteUnsupported _ -> return () -- soft fail
  where
+  bi :: BuildInfo
   bi = testBuildInfo t
 
 needMainFile :: BuildInfo -> FilePath -> Rebuild ()
@@ -130,6 +137,7 @@ needBenchmark pkg_descr bm
        needMainFile  bi mainPath
      BenchmarkUnsupported _ -> return () -- soft fail
  where
+  bi :: BuildInfo
   bi = benchmarkBuildInfo bm
 
 needBuildInfo :: PackageDescription -> BuildInfo -> [ModuleName] -> Rebuild ()
diff --git a/cabal-install/src/Distribution/Client/Targets.hs b/cabal-install/src/Distribution/Client/Targets.hs
index 8cc4cdaf68a496ab1e4c6cacfcbf81204941a0e0..89aaf1fdab8904b5ad43fa2ac77d0a142585458e 100644
--- a/cabal-install/src/Distribution/Client/Targets.hs
+++ b/cabal-install/src/Distribution/Client/Targets.hs
@@ -195,6 +195,7 @@ readUserTarget targetstr =
               Just target -> return target
               Nothing     -> return (Left (UserTargetUnrecognised targetstr))
   where
+    testFileTargets :: FilePath -> IO (Maybe (Either UserTargetProblem UserTarget))
     testFileTargets filename = do
       isDir  <- doesDirectoryExist filename
       isFile <- doesFileExist filename
@@ -221,6 +222,7 @@ readUserTarget targetstr =
             = Nothing
       return result
 
+    testUriTargets :: String -> Maybe (Either UserTargetProblem UserTarget)
     testUriTargets str =
       case parseAbsoluteURI str of
         Just uri@URI {
@@ -414,6 +416,7 @@ readPackageTarget :: Verbosity
                   -> IO (PackageTarget UnresolvedSourcePackage)
 readPackageTarget verbosity = traverse modifyLocation
   where
+    modifyLocation :: ResolvedPkgLoc -> IO UnresolvedSourcePackage
     modifyLocation location = case location of
 
       LocalUnpackedPackage dir -> do
@@ -444,6 +447,7 @@ readPackageTarget verbosity = traverse modifyLocation
         --
         -- When that is corrected, this will also need to be fixed.
 
+    readTarballPackageTarget :: ResolvedPkgLoc -> FilePath -> FilePath -> IO UnresolvedSourcePackage
     readTarballPackageTarget location tarballFile tarballOriginalLoc = do
       (filename, content) <- extractTarballPackageCabalFile
                                tarballFile tarballOriginalLoc
@@ -471,6 +475,8 @@ readPackageTarget verbosity = traverse modifyLocation
       where
         formatErr msg = "Error reading " ++ tarballOriginalLoc ++ ": " ++ msg
 
+        accumEntryMap :: Tar.Entries Tar.FormatError
+                      -> Either (Tar.FormatError, Map Tar.TarPath Tar.Entry) (Map Tar.TarPath Tar.Entry)
         accumEntryMap = Tar.foldlEntries
                           (\m e -> Map.insert (Tar.entryTarPath e) e m)
                           Map.empty
@@ -486,6 +492,7 @@ readPackageTarget verbosity = traverse modifyLocation
             noCabalFile        = "No cabal file found"
             multipleCabalFiles = "Multiple cabal files found"
 
+        isCabalFile :: Tar.Entry -> Bool
         isCabalFile e = case splitPath (Tar.entryPath e) of
           [     _dir, file] -> takeExtension file == ".cabal"
           [".", _dir, file] -> takeExtension file == ".cabal"
diff --git a/cabal-install/src/Distribution/Client/Upload.hs b/cabal-install/src/Distribution/Client/Upload.hs
index 17a25cd2ad985c906c5807224d0cb474a40e5e84..e156580d0774a43226103d2f2cffa1a2582c15cd 100644
--- a/cabal-install/src/Distribution/Client/Upload.hs
+++ b/cabal-install/src/Distribution/Client/Upload.hs
@@ -4,7 +4,7 @@ import Distribution.Client.Compat.Prelude
 import qualified Prelude as Unsafe (tail, head, read)
 
 import Distribution.Client.Types.Credentials ( Username(..), Password(..) )
-import Distribution.Client.Types.Repo (RemoteRepo(..), maybeRepoRemote)
+import Distribution.Client.Types.Repo (Repo, RemoteRepo(..), maybeRepoRemote)
 import Distribution.Client.Types.RepoName (unRepoName)
 import Distribution.Client.HttpUtils
          ( HttpTransport(..), remoteRepoTryUpgradeToHttps )
@@ -44,15 +44,19 @@ upload :: Verbosity -> RepoContext
        -> Maybe Username -> Maybe Password -> IsCandidate -> [FilePath]
        -> IO ()
 upload verbosity repoCtxt mUsername mPassword isCandidate paths = do
-    let repos = repoContextRepos repoCtxt
+    let repos :: [Repo]
+        repos = repoContextRepos repoCtxt
     transport  <- repoContextGetTransport repoCtxt
     targetRepo <-
       case [ remoteRepo | Just remoteRepo <- map maybeRepoRemote repos ] of
         [] -> die' verbosity "Cannot upload. No remote repositories are configured."
         (r:rs) -> remoteRepoTryUpgradeToHttps verbosity transport (last (r:|rs))
-    let targetRepoURI = remoteRepoURI targetRepo
+    let targetRepoURI :: URI
+        targetRepoURI = remoteRepoURI targetRepo
+        domain :: String
         domain = maybe "Hackage" uriRegName $ uriAuthority targetRepoURI
         rootIfEmpty x = if null x then "/" else x
+        uploadURI :: URI
         uploadURI = targetRepoURI {
             uriPath = rootIfEmpty (uriPath targetRepoURI) FilePath.Posix.</>
               case isCandidate of
@@ -167,16 +171,20 @@ promptPassword domain = do
 
 report :: Verbosity -> RepoContext -> Maybe Username -> Maybe Password -> IO ()
 report verbosity repoCtxt mUsername mPassword = do
-  let repos       = repoContextRepos repoCtxt
+  let repos       :: [Repo]
+      repos       = repoContextRepos repoCtxt
+      remoteRepos :: [RemoteRepo]
       remoteRepos = mapMaybe maybeRepoRemote repos
   for_ remoteRepos $ \remoteRepo -> do
       let domain = maybe "Hackage" uriRegName $ uriAuthority (remoteRepoURI remoteRepo)
       Username username <- maybe (promptUsername domain) return mUsername
       Password password <- maybe (promptPassword domain) return mPassword
-      let auth        = (username, password)
+      let auth        :: (String, String)
+          auth        = (username, password)
 
       dotCabal <- getCabalDir
-      let srcDir = dotCabal </> "reports" </> unRepoName (remoteRepoName remoteRepo)
+      let srcDir :: FilePath
+          srcDir = dotCabal </> "reports" </> unRepoName (remoteRepoName remoteRepo)
       -- We don't want to bomb out just because we haven't built any packages
       -- from this repo yet.
       srcExists <- doesDirectoryExist srcDir
@@ -208,6 +216,7 @@ handlePackage transport verbosity uri packageUri auth isCandidate path =
                           ++ err
           exitFailure
  where
+  okMessage :: IsCandidate -> String
   okMessage IsCandidate =
     "Package successfully uploaded as candidate. "
     ++ "You can now preview the result at '" ++ show packageUri
diff --git a/cabal-install/src/Distribution/Client/Utils.hs b/cabal-install/src/Distribution/Client/Utils.hs
index 5c37ab352667b5e1de62cadb6aff1ac77d8154de..64e715c86a5f358b3591f8d464d3c74310b957ea 100644
--- a/cabal-install/src/Distribution/Client/Utils.hs
+++ b/cabal-install/src/Distribution/Client/Utils.hs
@@ -1,4 +1,4 @@
-{-# LANGUAGE ForeignFunctionInterface, CPP #-}
+{-# LANGUAGE ForeignFunctionInterface, ScopedTypeVariables, CPP #-}
 
 module Distribution.Client.Utils
   ( MergeResult(..)
@@ -18,6 +18,7 @@ module Distribution.Client.Utils
   , moreRecentFile, existsAndIsMoreRecentThan
   , tryFindAddSourcePackageDesc
   , tryFindPackageDesc
+  , findOpenProgramLocation
   , relaxEncodingErrors
   , ProgressPhase (..)
   , progressMessage
@@ -38,6 +39,7 @@ import Distribution.Compat.Time        ( getModTime )
 import Distribution.Simple.Setup       ( Flag(..) )
 import Distribution.Version
 import Distribution.Simple.Utils       ( die', findPackageDesc, noticeNoWrap )
+import Distribution.System             ( Platform (..), OS(..))
 import qualified Data.ByteString.Lazy as BS
 import Data.Bits
          ( (.|.), shiftL, shiftR )
@@ -50,7 +52,7 @@ import Foreign.C.Types ( CInt(..) )
 import qualified Control.Exception as Exception
          ( finally, bracket )
 import System.Directory
-         ( canonicalizePath, doesFileExist, getCurrentDirectory
+         ( canonicalizePath, doesFileExist, findExecutable, getCurrentDirectory
          , removeFile, setCurrentDirectory, getDirectoryContents, doesDirectoryExist )
 import System.IO
          ( Handle, hClose, openTempFile
@@ -74,9 +76,10 @@ import qualified System.IO.Error as IOError
 
 -- | Generic merging utility. For sorted input lists this is a full outer join.
 --
-mergeBy :: (a -> b -> Ordering) -> [a] -> [b] -> [MergeResult a b]
+mergeBy :: forall a b. (a -> b -> Ordering) -> [a] -> [b] -> [MergeResult a b]
 mergeBy cmp = merge
   where
+    merge               :: [a] -> [b] -> [MergeResult a b]
     merge []     ys     = [ OnlyInRight y | y <- ys]
     merge xs     []     = [ OnlyInLeft  x | x <- xs]
     merge (x:xs) (y:ys) =
@@ -90,9 +93,10 @@ data MergeResult a b = OnlyInLeft a | InBoth a b | OnlyInRight b
 duplicates :: Ord a => [a] -> [[a]]
 duplicates = duplicatesBy compare
 
-duplicatesBy :: (a -> a -> Ordering) -> [a] -> [[a]]
+duplicatesBy :: forall a. (a -> a -> Ordering) -> [a] -> [[a]]
 duplicatesBy cmp = filter moreThanOne . groupBy eq . sortBy cmp
   where
+    eq :: a -> a -> Bool
     eq a b = case cmp a b of
                EQ -> True
                _  -> False
@@ -173,7 +177,9 @@ withEnvOverrides overrides m = do
 withExtraPathEnv :: [FilePath] -> IO a -> IO a
 withExtraPathEnv paths m = do
   oldPathSplit <- getSearchPath
-  let newPath = mungePath $ intercalate [searchPathSeparator] (paths ++ oldPathSplit)
+  let newPath :: String
+      newPath = mungePath $ intercalate [searchPathSeparator] (paths ++ oldPathSplit)
+      oldPath :: String
       oldPath = mungePath $ intercalate [searchPathSeparator] oldPathSplit
       -- TODO: This is a horrible hack to work around the fact that
       -- setEnv can't take empty values as an argument
@@ -344,6 +350,26 @@ tryFindPackageDesc verbosity depPath err = do
         Right file -> return file
         Left _ -> die' verbosity err
 
+findOpenProgramLocation :: Platform -> IO (Either String FilePath)
+findOpenProgramLocation (Platform _ os) =
+  let
+    locate name = do
+      exe <- findExecutable name
+      case exe of
+        Just s -> pure (Right s)
+        Nothing -> pure (Left ("Couldn't find file-opener program `" <> name <> "`"))
+    xdg = locate "xdg-open"
+  in case os of
+    Windows -> pure (Right "start")
+    OSX -> locate "open"
+    Linux -> xdg
+    FreeBSD -> xdg
+    OpenBSD -> xdg
+    NetBSD -> xdg
+    DragonFly -> xdg
+    _ -> pure (Left ("Couldn't determine file-opener program for " <> show os))
+
+
 -- | Phase of building a dependency. Represents current status of package
 -- dependency processing. See #4040 for details.
 data ProgressPhase
diff --git a/cabal-install/src/Distribution/Client/VCS.hs b/cabal-install/src/Distribution/Client/VCS.hs
index 2f2fd9fa41c111c2c5a9c092db63fe43f28951da..f13b02dec9d90a9d24e359c54fc16ed7c3a8632c 100644
--- a/cabal-install/src/Distribution/Client/VCS.hs
+++ b/cabal-install/src/Distribution/Client/VCS.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE ScopedTypeVariables #-}
 {-# LANGUAGE NamedFieldPuns, RecordWildCards, RankNTypes #-}
 module Distribution.Client.VCS (
     -- * VCS driver type
@@ -45,20 +47,29 @@ import Distribution.Simple.Program
          ( Program(programFindVersion)
          , ConfiguredProgram(programVersion)
          , simpleProgram, findProgramVersion
-         , ProgramInvocation(..), programInvocation, runProgramInvocation
+         , ProgramInvocation(..), programInvocation, runProgramInvocation, getProgramInvocationOutput
          , emptyProgramDb, requireProgram )
 import Distribution.Version
          ( mkVersion )
 import qualified Distribution.PackageDescription as PD
 
+import Control.Applicative
+         ( liftA2 )
+import Control.Exception
+         ( throw, try )
 import Control.Monad.Trans
          ( liftIO )
 import qualified Data.Char as Char
+import qualified Data.List as List
 import qualified Data.Map  as Map
 import System.FilePath
          ( takeDirectory )
 import System.Directory
-         ( doesDirectoryExist )
+         ( doesDirectoryExist
+         , removeDirectoryRecursive
+         )
+import System.IO.Error
+         ( isDoesNotExistError )
 
 
 -- | A driver for a version control system, e.g. git, darcs etc.
@@ -146,6 +157,9 @@ validateSourceRepos rs =
       (problems@(_:_), _) -> Left problems
       ([], vcss)          -> Right vcss
   where
+    validateSourceRepo'   :: SourceRepositoryPackage f
+                          -> Either (SourceRepositoryPackage f, SourceRepoProblem)
+                                    (SourceRepositoryPackage f, String, RepoType, VCS Program)
     validateSourceRepo' r = either (Left . (,) r) Right
                                    (validateSourceRepo r)
 
@@ -306,7 +320,41 @@ vcsDarcs =
 
     vcsSyncRepos :: Verbosity -> ConfiguredProgram
                  -> [(SourceRepositoryPackage f, FilePath)] -> IO [MonitorFilePath]
-    vcsSyncRepos _v _p _rs = fail "sync repo not yet supported for darcs"
+    vcsSyncRepos _ _ [] = return []
+    vcsSyncRepos verbosity prog ((primaryRepo, primaryLocalDir) : secondaryRepos) =
+        monitors <$ do
+        vcsSyncRepo verbosity prog primaryRepo primaryLocalDir Nothing
+        for_ secondaryRepos $ \ (repo, localDir) ->
+          vcsSyncRepo verbosity prog repo localDir $ Just primaryLocalDir
+      where
+        dirs = primaryLocalDir : (snd <$> secondaryRepos)
+        monitors = monitorDirectoryExistence <$> dirs
+
+    vcsSyncRepo verbosity prog SourceRepositoryPackage{..} localDir _peer =
+      try (lines <$> darcsWithOutput localDir ["log", "--last", "1"]) >>= \ case
+        Right (_:_:_:x:_)
+          | Just tag <- (List.stripPrefix "tagged " . List.dropWhile Char.isSpace) x
+          , Just tag' <- srpTag
+          , tag == tag' -> pure ()
+        Left e | not (isDoesNotExistError e) -> throw e
+        _ -> do
+          removeDirectoryRecursive localDir `catch` liftA2 unless isDoesNotExistError throw
+          darcs (takeDirectory localDir) cloneArgs
+      where
+        darcs :: FilePath -> [String] -> IO ()
+        darcs = darcs' runProgramInvocation
+
+        darcsWithOutput :: FilePath -> [String] -> IO String
+        darcsWithOutput = darcs' getProgramInvocationOutput
+
+        darcs' f cwd args = f verbosity (programInvocation prog args)
+          { progInvokeCwd = Just cwd }
+
+        cloneArgs = ["clone"] ++ tagArgs ++ [srpLocation, localDir] ++ verboseArg
+        tagArgs    = case srpTag of
+          Nothing  -> []
+          Just tag -> ["-t" ++ tag]
+        verboseArg = [ "--quiet" | verbosity < Verbosity.normal ]
 
 darcsProgram :: Program
 darcsProgram = (simpleProgram "darcs") {
@@ -445,7 +493,35 @@ vcsHg =
                  -> ConfiguredProgram
                  -> [(SourceRepositoryPackage f, FilePath)]
                  -> IO [MonitorFilePath]
-    vcsSyncRepos _v _p _rs = fail "sync repo not yet supported for hg"
+    vcsSyncRepos _ _ [] = return []
+    vcsSyncRepos verbosity hgProg
+                 ((primaryRepo, primaryLocalDir) : secondaryRepos) = do
+      vcsSyncRepo verbosity hgProg primaryRepo primaryLocalDir
+      sequence_
+        [ vcsSyncRepo verbosity hgProg repo localDir
+        | (repo, localDir) <- secondaryRepos ]
+      return [ monitorDirectoryExistence dir
+            | dir <- (primaryLocalDir : map snd secondaryRepos) ]
+    vcsSyncRepo verbosity hgProg repo localDir = do
+        exists <- doesDirectoryExist localDir
+        if exists
+          then hg localDir ["pull"]
+          else hg (takeDirectory localDir) cloneArgs
+        hg localDir checkoutArgs
+      where
+        hg :: FilePath -> [String] -> IO ()
+        hg cwd args = runProgramInvocation verbosity $
+                          (programInvocation hgProg args) {
+                            progInvokeCwd = Just cwd
+                          }
+        cloneArgs      = ["clone", "--noupdate", (srpLocation repo), localDir]
+                        ++ verboseArg
+        verboseArg = [ "--quiet" | verbosity < Verbosity.normal ]
+        checkoutArgs = [ "checkout", "--clean" ]
+                      ++ tagArgs
+        tagArgs = case srpTag repo of
+            Just t  -> ["--rev", t]
+            Nothing -> []
 
 hgProgram :: Program
 hgProgram = (simpleProgram "hg") {
diff --git a/cabal-install/src/Distribution/Client/World.hs b/cabal-install/src/Distribution/Client/World.hs
index a24a663dfcace266fc572be56a43609a1cac7472..49d530fabfbcf3314bc1dce34c87a5d681c6ddde 100644
--- a/cabal-install/src/Distribution/Client/World.hs
+++ b/cabal-install/src/Distribution/Client/World.hs
@@ -35,7 +35,7 @@ import Distribution.Client.Compat.Prelude hiding (getContents)
 
 import Distribution.Types.Dependency
 import Distribution.Types.Flag
-         ( FlagAssignment, unFlagAssignment
+         ( FlagAssignment, FlagName, unFlagAssignment
          , unFlagName, parsecFlagAssignmentNonEmpty )
 import Distribution.Simple.Utils
          ( die', info, chattyTry, writeFileAtomic )
@@ -104,7 +104,8 @@ modifyWorld f verbosity world pkgs =
 getContents :: Verbosity -> FilePath -> IO [WorldPkgInfo]
 getContents verbosity world = do
   content <- safelyReadFile world
-  let result = map simpleParsec (lines $ B.unpack content)
+  let result :: [Maybe WorldPkgInfo]
+      result = map simpleParsec (lines $ B.unpack content)
   case sequence result of
     Nothing -> die' verbosity "Could not parse world file."
     Just xs -> return xs
@@ -122,6 +123,7 @@ instance Pretty WorldPkgInfo where
       dispFlags [] = Disp.empty
       dispFlags fs = Disp.text "--flags="
                   <<>> Disp.doubleQuotes (flagAssToDoc fs)
+      flagAssToDoc :: [(FlagName, Bool)] -> Disp.Doc
       flagAssToDoc = foldr (\(fname,val) flagAssDoc ->
                              (if not val then Disp.char '-'
                                          else Disp.char '+')
diff --git a/cabal-install/tests/UnitTests/Distribution/Client/Init/Simple.hs b/cabal-install/tests/UnitTests/Distribution/Client/Init/Simple.hs
index 1250aaf6f9d364e326ecb1765d9bb1ff06a23ba8..3b710c798008946fdd3e31b6718dca29a72a64c5 100644
--- a/cabal-install/tests/UnitTests/Distribution/Client/Init/Simple.hs
+++ b/cabal-install/tests/UnitTests/Distribution/Client/Init/Simple.hs
@@ -23,7 +23,7 @@ import UnitTests.Distribution.Client.Init.Utils
 import Distribution.Simple.Setup
 import qualified Data.List.NonEmpty as NEL
 import Distribution.Types.Dependency
-import Distribution.Client.Init.Utils (mkPackageNameDep)
+import Distribution.Client.Init.Utils (mkPackageNameDep, getBaseDep)
 import qualified Data.Set as Set
 
 tests
@@ -56,7 +56,7 @@ simpleCreateProjectTests v pkgIx srcDb pkgName =
           flags = emptyFlags { packageType = Flag Library }
           settings = ProjectSettings
             (WriteOpts False False False v "/home/test/1" Library pkgName defaultCabalVersion)
-            (simplePkgDesc pkgName) (Just simpleLibTarget)
+            (simplePkgDesc pkgName) (Just $ simpleLibTarget baseDep)
             Nothing Nothing
 
       case _runPrompt (createProject v pkgIx srcDb flags) inputs of
@@ -68,8 +68,8 @@ simpleCreateProjectTests v pkgIx srcDb pkgName =
           flags = emptyFlags { packageType = Flag Library }
           settings = ProjectSettings
             (WriteOpts False False False v "/home/test/1" Library pkgName defaultCabalVersion)
-            (simplePkgDesc pkgName) (Just simpleLibTarget)
-            Nothing (Just $ simpleTestTarget (Just pkgName))
+            (simplePkgDesc pkgName) (Just $ simpleLibTarget baseDep)
+            Nothing (Just $ simpleTestTarget (Just pkgName) baseDep)
 
       case _runPrompt (createProject v pkgIx srcDb flags) inputs of
         Left e -> assertFailure $ "Failed to create simple lib (with tests)project: " ++ show e
@@ -81,7 +81,7 @@ simpleCreateProjectTests v pkgIx srcDb pkgName =
           settings = ProjectSettings
             (WriteOpts False False False v "/home/test/2" Executable pkgName defaultCabalVersion)
             (simplePkgDesc pkgName) Nothing
-            (Just $ simpleExeTarget Nothing) Nothing
+            (Just $ simpleExeTarget Nothing baseDep) Nothing
 
       case _runPrompt (createProject v pkgIx srcDb flags) inputs of
         Left e -> assertFailure $ "Failed to create simple exe project: " ++ show e
@@ -92,8 +92,8 @@ simpleCreateProjectTests v pkgIx srcDb pkgName =
           flags = emptyFlags { packageType = Flag LibraryAndExecutable }
           settings = ProjectSettings
             (WriteOpts False False False v "/home/test/2" LibraryAndExecutable pkgName defaultCabalVersion)
-            (simplePkgDesc pkgName) (Just simpleLibTarget)
-            (Just $ simpleExeTarget (Just pkgName)) Nothing
+            (simplePkgDesc pkgName) (Just $ simpleLibTarget baseDep)
+            (Just $ simpleExeTarget (Just pkgName) baseDep) Nothing
 
       case _runPrompt (createProject v pkgIx srcDb flags) inputs of
         Left e -> assertFailure $ "Failed to create simple lib+exe project: " ++ show e
@@ -103,26 +103,30 @@ simpleCreateProjectTests v pkgIx srcDb pkgName =
           flags = emptyFlags { packageType = Flag LibraryAndExecutable }
           settings = ProjectSettings
             (WriteOpts False False False v "/home/test/2" LibraryAndExecutable pkgName defaultCabalVersion)
-            (simplePkgDesc pkgName) (Just simpleLibTarget)
-            (Just $ simpleExeTarget (Just pkgName))
-            (Just $ simpleTestTarget (Just pkgName))
+            (simplePkgDesc pkgName) (Just $ simpleLibTarget baseDep)
+            (Just $ simpleExeTarget (Just pkgName) baseDep)
+            (Just $ simpleTestTarget (Just pkgName) baseDep)
 
       case _runPrompt (createProject v pkgIx srcDb flags) inputs of
         Left e -> assertFailure $ "Failed to create simple lib+exe (with tests) project: " ++ show e
         Right (settings', _) -> settings @=? settings'
-    
+
     , testCase "Simple standalone tests" $ do
       let inputs = fromList ["2", "simple-test", "y", "1"]
           flags = emptyFlags { packageType = Flag TestSuite }
           settings = ProjectSettings
             (WriteOpts False False False v "/home/test/2" TestSuite pkgName defaultCabalVersion)
             (simplePkgDesc pkgName) Nothing Nothing
-            (Just $ simpleTestTarget Nothing)
+            (Just $ simpleTestTarget Nothing baseDep)
 
       case _runPrompt (createProject v pkgIx srcDb flags) inputs of
         Left e -> assertFailure $ "Failed to create simple standalone test project: " ++ show e
         Right (settings', _) -> settings @=? settings'
     ]
+  where
+    baseDep = case _runPrompt (getBaseDep pkgIx emptyFlags) $ fromList [] of
+      Left e -> error $ show e
+      Right a -> fst a
 
 -- -------------------------------------------------------------------- --
 -- Utils
@@ -141,23 +145,23 @@ simplePkgDesc pkgName = PkgDescription
     mempty
     (Just $ Set.singleton defaultChangelog)
 
-simpleLibTarget :: LibTarget
-simpleLibTarget = LibTarget
+simpleLibTarget :: [Dependency] -> LibTarget
+simpleLibTarget baseDep = LibTarget
     [defaultSourceDir]
     defaultLanguage
     (myLibModule NEL.:| [])
-    [] [] [] []
+    [] [] baseDep []
 
-simpleExeTarget :: Maybe PackageName -> ExeTarget
-simpleExeTarget pn = ExeTarget
+simpleExeTarget :: Maybe PackageName -> [Dependency] -> ExeTarget
+simpleExeTarget pn baseDep = ExeTarget
     defaultMainIs
     [defaultApplicationDir]
     defaultLanguage
-    [] [] (mkPkgDep pn) []
+    [] [] (baseDep ++ mkPkgDep pn) []
 
-simpleTestTarget :: Maybe PackageName -> TestTarget
-simpleTestTarget pn = TestTarget
+simpleTestTarget :: Maybe PackageName -> [Dependency] -> TestTarget
+simpleTestTarget pn baseDep = TestTarget
     defaultMainIs
     [defaultTestDir]
     defaultLanguage
-    [] [] (mkPkgDep pn) []
+    [] [] (baseDep ++ mkPkgDep pn) []
diff --git a/cabal-install/tests/UnitTests/Distribution/Client/Init/Utils.hs b/cabal-install/tests/UnitTests/Distribution/Client/Init/Utils.hs
index 1c7bfc9e174be2d8f789478f3b47100c14f9fade..b8a67ca675a29152d4b008c2fdae749f34020dbb 100644
--- a/cabal-install/tests/UnitTests/Distribution/Client/Init/Utils.hs
+++ b/cabal-install/tests/UnitTests/Distribution/Client/Init/Utils.hs
@@ -51,7 +51,7 @@ emptyFlags :: InitFlags
 emptyFlags = mempty
 
 -- | Retireves the proper base version based on the GHC version
-baseVersion :: Compiler -> VersionRange 
+baseVersion :: Compiler -> VersionRange
 baseVersion Compiler {compilerId = CompilerId GHC ver} =
   let ghcToBase = baseVersion' . prettyShow $ ver in
         if null ghcToBase
diff --git a/cabal-install/tests/UnitTests/Distribution/Client/ProjectConfig.hs b/cabal-install/tests/UnitTests/Distribution/Client/ProjectConfig.hs
index 3681ac1d9005a09ba6bb827fdef0aef2029a031f..95b7e1ccb797551daae8b988ff9d17dfa60ec711 100644
--- a/cabal-install/tests/UnitTests/Distribution/Client/ProjectConfig.hs
+++ b/cabal-install/tests/UnitTests/Distribution/Client/ProjectConfig.hs
@@ -553,6 +553,7 @@ instance Arbitrary PackageConfig where
         <*> shortListOf 5 arbitraryShortToken
         <*> shortListOf 5 arbitraryShortToken
         <*> shortListOf 5 arbitraryShortToken
+        <*> shortListOf 5 arbitraryShortToken
         <*> arbitrary <*> arbitrary
         <*> arbitrary <*> arbitrary
         <*> arbitrary <*> arbitrary
@@ -604,6 +605,7 @@ instance Arbitrary PackageConfig where
                          , packageConfigProgPrefix = x14
                          , packageConfigProgSuffix = x15
                          , packageConfigExtraLibDirs = x16
+                         , packageConfigExtraLibDirsStatic = x53
                          , packageConfigExtraFrameworkDirs = x17
                          , packageConfigExtraIncludeDirs = x18
                          , packageConfigGHCiLib = x19
@@ -659,6 +661,7 @@ instance Arbitrary PackageConfig where
                       , packageConfigProgPrefix = x14'
                       , packageConfigProgSuffix = x15'
                       , packageConfigExtraLibDirs = map getNonEmpty x16'
+                      , packageConfigExtraLibDirsStatic = map getNonEmpty x53'
                       , packageConfigExtraFrameworkDirs = map getNonEmpty x17'
                       , packageConfigExtraIncludeDirs = map getNonEmpty x18'
                       , packageConfigGHCiLib = x19'
@@ -698,7 +701,7 @@ instance Arbitrary PackageConfig where
       |  (((x00', x01', x02', x03', x04'),
           (x05', x42', x06', x50', x07', x08', x09'),
           (x10', x11', x12', x13', x14'),
-          (x15', x16', x17', x18', x19')),
+          (x15', x16', x53', x17', x18', x19')),
          ((x20', x20_1', x21', x22', x23', x24'),
           (x25', x26', x27', x28', x29'),
           (x30', x31', x32', (x33', x33_1'), x34'),
@@ -709,7 +712,7 @@ instance Arbitrary PackageConfig where
              (((preShrink_Paths x00, preShrink_Args x01, x02, x03, x04),
                 (x05, x42, x06, x50, x07, x08, x09),
                 (x10, x11, map NonEmpty x12, x13, x14),
-                (x15, map NonEmpty x16,
+                (x15, map NonEmpty x16, map NonEmpty x53,
                   map NonEmpty x17,
                   map NonEmpty x18,
                   x19)),
diff --git a/cabal-install/tests/UnitTests/Distribution/Client/VCS.hs b/cabal-install/tests/UnitTests/Distribution/Client/VCS.hs
index e4d68b0f5acfec24806885ac2ad18d46e42e4704..c3b8613b84df414e5a3e35d731ce8886d86d9863 100644
--- a/cabal-install/tests/UnitTests/Distribution/Client/VCS.hs
+++ b/cabal-install/tests/UnitTests/Distribution/Client/VCS.hs
@@ -66,6 +66,12 @@ tests mtimeChange =
     , testProperty "syncSourceRepos"             prop_syncRepos_pijul
     ]
 
+  , testGroup "mercurial" $ const []
+    [ testProperty "check VCS test framework"    prop_framework_hg
+    , testProperty "cloneSourceRepo"             prop_cloneRepo_hg
+    , testProperty "syncSourceRepos"             prop_syncRepos_hg
+    ]
+
   ]
 
 prop_framework_git :: BranchingRepoRecipe -> Property
@@ -86,6 +92,12 @@ prop_framework_pijul =
   . prop_framework vcsPijul vcsTestDriverPijul
   . WithBranchingSupport
 
+prop_framework_hg :: BranchingRepoRecipe -> Property
+prop_framework_hg =
+    ioProperty
+  . prop_framework vcsHg vcsTestDriverHg
+  . WithBranchingSupport
+
 prop_cloneRepo_git :: BranchingRepoRecipe -> Property
 prop_cloneRepo_git =
     ioProperty
@@ -105,6 +117,12 @@ prop_cloneRepo_pijul =
   . prop_cloneRepo vcsPijul vcsTestDriverPijul
   . WithBranchingSupport
 
+prop_cloneRepo_hg :: BranchingRepoRecipe -> Property
+prop_cloneRepo_hg =
+    ioProperty
+  . prop_cloneRepo vcsHg vcsTestDriverHg
+  . WithBranchingSupport
+
 prop_syncRepos_git :: RepoDirSet -> SyncTargetIterations -> PrngSeed
                    -> BranchingRepoRecipe -> Property
 prop_syncRepos_git destRepoDirs syncTargetSetIterations seed =
@@ -130,6 +148,14 @@ prop_syncRepos_pijul destRepoDirs syncTargetSetIterations seed =
                    destRepoDirs syncTargetSetIterations seed
   . WithBranchingSupport
 
+prop_syncRepos_hg :: RepoDirSet -> SyncTargetIterations -> PrngSeed
+                   -> BranchingRepoRecipe -> Property
+prop_syncRepos_hg destRepoDirs syncTargetSetIterations seed =
+    ioProperty
+  . prop_syncRepos vcsHg vcsTestDriverHg
+                   destRepoDirs syncTargetSetIterations seed
+  . WithBranchingSupport
+
 -- ------------------------------------------------------------
 -- * General test setup
 -- ------------------------------------------------------------
@@ -755,3 +781,46 @@ vcsTestDriverPijul verbosity vcs repoRoot =
                          }
     pijul  = runProgramInvocation       verbosity . gitInvocation
     pijul' = getProgramInvocationOutput verbosity . gitInvocation
+
+vcsTestDriverHg :: Verbosity -> VCS ConfiguredProgram
+                 -> FilePath -> VCSTestDriver
+vcsTestDriverHg verbosity vcs repoRoot =
+    VCSTestDriver {
+      vcsVCS = vcs
+
+    , vcsRepoRoot = repoRoot
+
+    , vcsIgnoreFiles = Set.empty
+
+    , vcsInit =
+        hg $ ["init"]  ++ verboseArg
+
+    , vcsAddFile = \_ filename ->
+        hg ["add", filename]
+
+    , vcsCommitChanges = \_state -> do
+        hg $ [ "--user='A <a@example.com>'"
+              , "commit", "--message=a patch"
+              ] ++ verboseArg
+        commit <- hg' ["log", "--template='{node}\\n' -l1"]
+        let commit' = takeWhile (not . isSpace) commit
+        return (Just commit')
+
+    , vcsTagState = \_ tagname ->
+        hg ["tag", "--force", tagname]
+
+    , vcsSwitchBranch = \RepoState{allBranches} branchname -> do
+        unless (branchname `Map.member` allBranches) $
+          hg ["branch", branchname]
+        hg $ ["checkout", branchname] ++ verboseArg
+
+    , vcsCheckoutTag = Left $ \tagname ->
+        hg $ ["checkout", "--rev", tagname] ++ verboseArg
+    }
+  where
+    hgInvocation args = (programInvocation (vcsProgram vcs) args) {
+                           progInvokeCwd = Just repoRoot
+                         }
+    hg  = runProgramInvocation       verbosity . hgInvocation
+    hg' = getProgramInvocationOutput verbosity . hgInvocation
+    verboseArg = [ "--quiet" | verbosity < Verbosity.normal ]
diff --git a/cabal-install/tests/fixtures/init/golden/cabal/cabal-lib-and-exe-with-comments.golden b/cabal-install/tests/fixtures/init/golden/cabal/cabal-lib-and-exe-with-comments.golden
index 799d0fa9573f75c87a1ca59096d28233edb1042c..976ad1adb35a709b1e8f39e19fa0db28417146b6 100644
--- a/cabal-install/tests/fixtures/init/golden/cabal/cabal-lib-and-exe-with-comments.golden
+++ b/cabal-install/tests/fixtures/init/golden/cabal/cabal-lib-and-exe-with-comments.golden
@@ -1,3 +1,7 @@
+-- The cabal-version field refers to the version of the .cabal specification,
+-- and can be different from the cabal-install (the tool) version and the
+-- Cabal (the library) version you are using. As such, the Cabal (the library)
+-- version used must be equal or greater than the version stated in this field.
 cabal-version:      3.0
 
 -- Initial package description 'y' generated by
diff --git a/cabal-install/tests/fixtures/init/golden/cabal/cabal-lib-with-comments.golden b/cabal-install/tests/fixtures/init/golden/cabal/cabal-lib-with-comments.golden
index f6cc2ada1bd4b40e05c28d799f9b27ca832bc187..8b54f17e83d0fef7567f35f358b1dc84026c22b6 100644
--- a/cabal-install/tests/fixtures/init/golden/cabal/cabal-lib-with-comments.golden
+++ b/cabal-install/tests/fixtures/init/golden/cabal/cabal-lib-with-comments.golden
@@ -1,3 +1,7 @@
+-- The cabal-version field refers to the version of the .cabal specification,
+-- and can be different from the cabal-install (the tool) version and the
+-- Cabal (the library) version you are using. As such, the Cabal (the library)
+-- version used must be equal or greater than the version stated in this field.
 cabal-version:      3.0
 
 -- Initial package description 'y' generated by
diff --git a/cabal-install/tests/fixtures/init/golden/cabal/cabal-test-suite-with-comments.golden b/cabal-install/tests/fixtures/init/golden/cabal/cabal-test-suite-with-comments.golden
index c9639bdf9e1a5f142f3af6bbf81a17b1260e556d..ad8f7e9a5c7c8d8c3d32a341a4d30956ab7eee10 100644
--- a/cabal-install/tests/fixtures/init/golden/cabal/cabal-test-suite-with-comments.golden
+++ b/cabal-install/tests/fixtures/init/golden/cabal/cabal-test-suite-with-comments.golden
@@ -1,3 +1,7 @@
+-- The cabal-version field refers to the version of the .cabal specification,
+-- and can be different from the cabal-install (the tool) version and the
+-- Cabal (the library) version you are using. As such, the Cabal (the library)
+-- version used must be equal or greater than the version stated in this field.
 cabal-version:      3.0
 
 -- Initial package description 'y' generated by
diff --git a/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg-old-cabal-with-flags.golden b/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg-old-cabal-with-flags.golden
index 799181abd6dc5e8e31d4722dae8cf61b7be45937..39eee708a8bb790bd23be1d434161e07ca41157f 100644
--- a/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg-old-cabal-with-flags.golden
+++ b/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg-old-cabal-with-flags.golden
@@ -1,3 +1,7 @@
+-- The cabal-version field refers to the version of the .cabal specification,
+-- and can be different from the cabal-install (the tool) version and the
+-- Cabal (the library) version you are using. As such, the Cabal (the library)
+-- version used must be equal or greater than the version stated in this field.
 cabal-version:      2.0
 
 -- Initial package description 'y' generated by
diff --git a/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg-with-comments.golden b/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg-with-comments.golden
index 45630780ea486f5834ee81b60385e97a8f21dda8..9729bd65f4078a7d8d3c60f25b7c6204610eb69b 100644
--- a/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg-with-comments.golden
+++ b/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg-with-comments.golden
@@ -1,3 +1,7 @@
+-- The cabal-version field refers to the version of the .cabal specification,
+-- and can be different from the cabal-install (the tool) version and the
+-- Cabal (the library) version you are using. As such, the Cabal (the library)
+-- version used must be equal or greater than the version stated in this field.
 cabal-version:      3.0
 
 -- Initial package description 'y' generated by
diff --git a/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg-with-flags.golden b/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg-with-flags.golden
index 643d538c8e84fccb299a59411cf1c9aa8371dd45..f714e5996f2e5443568e9be9443dc90b4446e7d8 100644
--- a/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg-with-flags.golden
+++ b/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg-with-flags.golden
@@ -1,3 +1,7 @@
+-- The cabal-version field refers to the version of the .cabal specification,
+-- and can be different from the cabal-install (the tool) version and the
+-- Cabal (the library) version you are using. As such, the Cabal (the library)
+-- version used must be equal or greater than the version stated in this field.
 cabal-version:      2.2
 
 -- Initial package description 'y' generated by
diff --git a/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg.golden b/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg.golden
index 45630780ea486f5834ee81b60385e97a8f21dda8..9729bd65f4078a7d8d3c60f25b7c6204610eb69b 100644
--- a/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg.golden
+++ b/cabal-install/tests/fixtures/init/golden/pkg-desc/pkg.golden
@@ -1,3 +1,7 @@
+-- The cabal-version field refers to the version of the .cabal specification,
+-- and can be different from the cabal-install (the tool) version and the
+-- Cabal (the library) version you are using. As such, the Cabal (the library)
+-- version used must be equal or greater than the version stated in this field.
 cabal-version:      3.0
 
 -- Initial package description 'y' generated by
diff --git a/cabal-testsuite/PackageTests/AutogenModules/Package/setup.cabal.out b/cabal-testsuite/PackageTests/AutogenModules/Package/setup.cabal.out
index c31ecaec961267748e3d0ce0b8b47fdad2c78133..3554cdf926d3b835809f2797a9edbc1c636fac5f 100644
--- a/cabal-testsuite/PackageTests/AutogenModules/Package/setup.cabal.out
+++ b/cabal-testsuite/PackageTests/AutogenModules/Package/setup.cabal.out
@@ -14,7 +14,7 @@ On executable 'Exe' an 'autogen-module' is not on 'other-modules'
 On test suite 'Test' an 'autogen-module' is not on 'other-modules'
 On benchmark 'Bench' an 'autogen-module' is not on 'other-modules'
 Packages using 'cabal-version: 2.0' and the autogenerated module Paths_* must include it also on the 'autogen-modules' field besides 'exposed-modules' and 'other-modules'. This specifies that the module does not come with the package and is generated on setup. Modules built with a custom Setup.hs script also go here to ensure that commands like sdist don't fail.
-The filename ./my.cabal does not match package name (expected: AutogenModules.cabal)
+The filename './my.cabal' does not match package name (expected: 'AutogenModules.cabal')
 Note: the public hackage server would reject this package.
 Building source dist for AutogenModules-0.1...
 cabal: Error: Could not find module: MyLibHelperModule with any suffix: ["gc","chs","hsc","x","y","ly","cpphs","hs","lhs","hsig","lhsig"]. If the module is autogenerated it should be added to 'autogen-modules'.
diff --git a/cabal-testsuite/PackageTests/AutogenModules/Package/setup.out b/cabal-testsuite/PackageTests/AutogenModules/Package/setup.out
index d557874e1fb8bc0cdd3a985553b3d2591447efbb..d26d2133ecb36fe9684529ef10f6a8dfefaf3072 100644
--- a/cabal-testsuite/PackageTests/AutogenModules/Package/setup.out
+++ b/cabal-testsuite/PackageTests/AutogenModules/Package/setup.out
@@ -14,7 +14,7 @@ On executable 'Exe' an 'autogen-module' is not on 'other-modules'
 On test suite 'Test' an 'autogen-module' is not on 'other-modules'
 On benchmark 'Bench' an 'autogen-module' is not on 'other-modules'
 Packages using 'cabal-version: 2.0' and the autogenerated module Paths_* must include it also on the 'autogen-modules' field besides 'exposed-modules' and 'other-modules'. This specifies that the module does not come with the package and is generated on setup. Modules built with a custom Setup.hs script also go here to ensure that commands like sdist don't fail.
-The filename ./my.cabal does not match package name (expected: AutogenModules.cabal)
+The filename './my.cabal' does not match package name (expected: 'AutogenModules.cabal')
 Note: the public hackage server would reject this package.
 Building source dist for AutogenModules-0.1...
 setup: Error: Could not find module: MyLibHelperModule with any suffix: ["gc","chs","hsc","x","y","ly","cpphs","hs","lhs","hsig","lhsig"]. If the module is autogenerated it should be added to 'autogen-modules'.
diff --git a/cabal-testsuite/PackageTests/Backpack/Includes2/cabal-internal.out b/cabal-testsuite/PackageTests/Backpack/Includes2/cabal-internal.out
index 191daf93c29ba9f43e9057a6e44b91c1fb057d92..d5058239ef671dac7e275f29b37b74275e3037e8 100644
--- a/cabal-testsuite/PackageTests/Backpack/Includes2/cabal-internal.out
+++ b/cabal-testsuite/PackageTests/Backpack/Includes2/cabal-internal.out
@@ -34,11 +34,9 @@ Building library 'mylib' instantiated with
   Database = Includes2-0.1.0.0-inplace-postgresql:Database.PostgreSQL
 for Includes2-0.1.0.0..
 Configuring library for Includes2-0.1.0.0..
-Warning: The package has an extraneous version range for a dependency on an internal library: Includes2:{mylib, mysql, postgresql} (((>=0 && >=0 && >=0) && ==0.1.0.0) && ==0.1.0.0) && ==0.1.0.0, Includes2 ((>=0 && ==0.1.0.0) && ==0.1.0.0) && ==0.1.0.0. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing library for Includes2-0.1.0.0..
 Building library for Includes2-0.1.0.0..
 Configuring executable 'exe' for Includes2-0.1.0.0..
-Warning: The package has an extraneous version range for a dependency on an internal library: Includes2:{mylib, mysql, postgresql} (>=0 && >=0 && >=0) && ==0.1.0.0, Includes2 >=0 && ==0.1.0.0. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing executable 'exe' for Includes2-0.1.0.0..
 Building executable 'exe' for Includes2-0.1.0.0..
 # Includes2 exe
diff --git a/cabal-testsuite/PackageTests/BuildDeps/InternalLibrary1/cabal.out b/cabal-testsuite/PackageTests/BuildDeps/InternalLibrary1/cabal.out
index 1aa2d34312e4e4c404e6618d4913e3d27138ab6f..de1c7309960eb7f226e7183a74d11a4ed6bf8540 100644
--- a/cabal-testsuite/PackageTests/BuildDeps/InternalLibrary1/cabal.out
+++ b/cabal-testsuite/PackageTests/BuildDeps/InternalLibrary1/cabal.out
@@ -8,6 +8,5 @@ Configuring library for InternalLibrary1-0.1..
 Preprocessing library for InternalLibrary1-0.1..
 Building library for InternalLibrary1-0.1..
 Configuring executable 'lemon' for InternalLibrary1-0.1..
-Warning: The package has an extraneous version range for a dependency on an internal library: InternalLibrary1 >=0 && ==0.1. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing executable 'lemon' for InternalLibrary1-0.1..
 Building executable 'lemon' for InternalLibrary1-0.1..
diff --git a/cabal-testsuite/PackageTests/BuildTools/Internal/cabal.out b/cabal-testsuite/PackageTests/BuildTools/Internal/cabal.out
index 29655811a97752a8b96053d47da61462194f2f39..8cb4ac09bcda5e777a4a78cbbfe222bd93ca1f61 100644
--- a/cabal-testsuite/PackageTests/BuildTools/Internal/cabal.out
+++ b/cabal-testsuite/PackageTests/BuildTools/Internal/cabal.out
@@ -12,6 +12,5 @@ Configuring library for foo-0.1.0.0..
 Preprocessing library for foo-0.1.0.0..
 Building library for foo-0.1.0.0..
 Configuring executable 'hello-world' for foo-0.1.0.0..
-Warning: The package has an extraneous version range for a dependency on an internal library: foo >=0 && ==0.1.0.0. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing executable 'hello-world' for foo-0.1.0.0..
 Building executable 'hello-world' for foo-0.1.0.0..
diff --git a/cabal-testsuite/PackageTests/CheckSetup/LICENSE b/cabal-testsuite/PackageTests/CheckSetup/LICENSE
new file mode 100644
index 0000000000000000000000000000000000000000..6b1d0bfabc3c1cfa396e0270c55fdcec96919fba
--- /dev/null
+++ b/cabal-testsuite/PackageTests/CheckSetup/LICENSE
@@ -0,0 +1 @@
+LICENSE
diff --git a/cabal-testsuite/PackageTests/CheckSetup/MyLibrary.hs b/cabal-testsuite/PackageTests/CheckSetup/MyLibrary.hs
new file mode 100644
index 0000000000000000000000000000000000000000..a51c414bcd2afa90a815f67d4a723a287d9e2779
--- /dev/null
+++ b/cabal-testsuite/PackageTests/CheckSetup/MyLibrary.hs
@@ -0,0 +1 @@
+module MyLibrary () where
diff --git a/cabal-testsuite/PackageTests/CheckSetup/Setup.hs b/cabal-testsuite/PackageTests/CheckSetup/Setup.hs
new file mode 100644
index 0000000000000000000000000000000000000000..9a994af677b0dfd41b4e3b76b3e7e604003d64e1
--- /dev/null
+++ b/cabal-testsuite/PackageTests/CheckSetup/Setup.hs
@@ -0,0 +1,2 @@
+import Distribution.Simple
+main = defaultMain
diff --git a/cabal-testsuite/PackageTests/CheckSetup/my.cabal b/cabal-testsuite/PackageTests/CheckSetup/my.cabal
new file mode 100644
index 0000000000000000000000000000000000000000..538e6375142662383df396498843aefb3ea4f687
--- /dev/null
+++ b/cabal-testsuite/PackageTests/CheckSetup/my.cabal
@@ -0,0 +1,25 @@
+name: CheckSetup
+version: 0.1
+license: BSD3
+license-file: LICENSE
+author: Alexander Vershilov
+maintainer: Alexander Vershilov
+synopsis: Check setup
+category: PackageTests
+build-type: Custom
+cabal-version: 2.0
+
+description:
+    Check that Cabal recognizes problems with setup module.
+
+custom-setup
+  setup-depends:
+    base,
+    Cabal,
+    bytestring
+
+Library
+    default-language: Haskell2010
+    build-depends: base <5.0
+    exposed-modules:
+        MyLibrary
diff --git a/cabal-testsuite/PackageTests/CheckSetup/setup.test.hs b/cabal-testsuite/PackageTests/CheckSetup/setup.test.hs
new file mode 100644
index 0000000000000000000000000000000000000000..96ed43957859ce6a8779434dc89e2baffe57f2e4
--- /dev/null
+++ b/cabal-testsuite/PackageTests/CheckSetup/setup.test.hs
@@ -0,0 +1,20 @@
+import Test.Cabal.Prelude
+
+-- Test that setup shows all the 'autogen-modules' warnings.
+main = cabalTest $ do
+
+        checkResult <- fails $ cabal_raw' ["check"] Nothing
+
+        -- Package check messages.
+        let libError1 =
+              "The dependency 'setup-depends: 'Cabal' does not specify "
+              ++ "an upper bound on the version number"
+            libError2 =
+              "The dependency 'setup-depends: 'base' does not specify "
+              ++ "an upper bound on the version number"
+
+        -- Asserts for the desired check messages after configure.
+        assertOutputContains libError1 checkResult
+        assertOutputContains libError2 checkResult
+
+        return ()
diff --git a/cabal-testsuite/PackageTests/CmmSources/cabal.out b/cabal-testsuite/PackageTests/CmmSources/cabal.out
index 939ed0ad85ad24a80ba8b206fd1fdf726e35b647..3bfcc34ff7d44c0c7e1ebcc2d92da31bf021d38c 100644
--- a/cabal-testsuite/PackageTests/CmmSources/cabal.out
+++ b/cabal-testsuite/PackageTests/CmmSources/cabal.out
@@ -8,6 +8,5 @@ Configuring library for cmmexperiment-0..
 Preprocessing library for cmmexperiment-0..
 Building library for cmmexperiment-0..
 Configuring executable 'demo' for cmmexperiment-0..
-Warning: The package has an extraneous version range for a dependency on an internal library: cmmexperiment >=0 && ==0. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing executable 'demo' for cmmexperiment-0..
 Building executable 'demo' for cmmexperiment-0..
diff --git a/cabal-testsuite/PackageTests/CmmSourcesDyn/cabal.out b/cabal-testsuite/PackageTests/CmmSourcesDyn/cabal.out
index 939ed0ad85ad24a80ba8b206fd1fdf726e35b647..3bfcc34ff7d44c0c7e1ebcc2d92da31bf021d38c 100644
--- a/cabal-testsuite/PackageTests/CmmSourcesDyn/cabal.out
+++ b/cabal-testsuite/PackageTests/CmmSourcesDyn/cabal.out
@@ -8,6 +8,5 @@ Configuring library for cmmexperiment-0..
 Preprocessing library for cmmexperiment-0..
 Building library for cmmexperiment-0..
 Configuring executable 'demo' for cmmexperiment-0..
-Warning: The package has an extraneous version range for a dependency on an internal library: cmmexperiment >=0 && ==0. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing executable 'demo' for cmmexperiment-0..
 Building executable 'demo' for cmmexperiment-0..
diff --git a/cabal-testsuite/PackageTests/InternalLibraries/cabal.out b/cabal-testsuite/PackageTests/InternalLibraries/cabal.out
index d4124669bb124c299a78c468a05e502f768ceb3c..ac9fbcdf14c7741bd89a791dae463177ddba691c 100644
--- a/cabal-testsuite/PackageTests/InternalLibraries/cabal.out
+++ b/cabal-testsuite/PackageTests/InternalLibraries/cabal.out
@@ -9,10 +9,8 @@ Configuring library 'q' for p-0.1.0.0..
 Preprocessing library 'q' for p-0.1.0.0..
 Building library 'q' for p-0.1.0.0..
 Configuring executable 'foo' for p-0.1.0.0..
-Warning: The package has an extraneous version range for a dependency on an internal library: p:q >=0 && ==0.1.0.0, p:q >=0 && ==0.1.0.0. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing executable 'foo' for p-0.1.0.0..
 Building executable 'foo' for p-0.1.0.0..
 Configuring library for p-0.1.0.0..
-Warning: The package has an extraneous version range for a dependency on an internal library: p:q >=0 && ==0.1.0.0, p:q >=0 && ==0.1.0.0. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing library for p-0.1.0.0..
 Building library for p-0.1.0.0..
diff --git a/cabal-testsuite/PackageTests/InternalVersions/BuildDependsExtra/setup.test.hs b/cabal-testsuite/PackageTests/InternalVersions/BuildDependsExtra/setup.test.hs
index b0b4e9bc58edb38942287c3042925a65c2b8dbc1..c006efe6f7248f1b57962b66119c8769624820df 100644
--- a/cabal-testsuite/PackageTests/InternalVersions/BuildDependsExtra/setup.test.hs
+++ b/cabal-testsuite/PackageTests/InternalVersions/BuildDependsExtra/setup.test.hs
@@ -1,6 +1,6 @@
 import Test.Cabal.Prelude
 -- Test unneed version bound on internal build-tools deps
-main = setupAndCabalTest $ do
+main = setupAndCabalTest . expectBroken 7470 $ do
     setup' "configure" []
     assertOutputContains "extraneous version range"
         =<< setup' "sdist" []
diff --git a/cabal-testsuite/PackageTests/InternalVersions/BuildToolDependsExtra/setup.test.hs b/cabal-testsuite/PackageTests/InternalVersions/BuildToolDependsExtra/setup.test.hs
index b0b4e9bc58edb38942287c3042925a65c2b8dbc1..c006efe6f7248f1b57962b66119c8769624820df 100644
--- a/cabal-testsuite/PackageTests/InternalVersions/BuildToolDependsExtra/setup.test.hs
+++ b/cabal-testsuite/PackageTests/InternalVersions/BuildToolDependsExtra/setup.test.hs
@@ -1,6 +1,6 @@
 import Test.Cabal.Prelude
 -- Test unneed version bound on internal build-tools deps
-main = setupAndCabalTest $ do
+main = setupAndCabalTest . expectBroken 7470 $ do
     setup' "configure" []
     assertOutputContains "extraneous version range"
         =<< setup' "sdist" []
diff --git a/cabal-testsuite/PackageTests/InternalVersions/BuildToolsExtra/setup.test.hs b/cabal-testsuite/PackageTests/InternalVersions/BuildToolsExtra/setup.test.hs
index b0b4e9bc58edb38942287c3042925a65c2b8dbc1..c006efe6f7248f1b57962b66119c8769624820df 100644
--- a/cabal-testsuite/PackageTests/InternalVersions/BuildToolsExtra/setup.test.hs
+++ b/cabal-testsuite/PackageTests/InternalVersions/BuildToolsExtra/setup.test.hs
@@ -1,6 +1,6 @@
 import Test.Cabal.Prelude
 -- Test unneed version bound on internal build-tools deps
-main = setupAndCabalTest $ do
+main = setupAndCabalTest . expectBroken 7470 $ do
     setup' "configure" []
     assertOutputContains "extraneous version range"
         =<< setup' "sdist" []
diff --git a/cabal-testsuite/PackageTests/MultipleLibraries/T6083Post/cabal.out b/cabal-testsuite/PackageTests/MultipleLibraries/T6083Post/cabal.out
index 4f0b36fea492a6a8051d1d974a5539c02b22f75d..f82d177063620996ddafab930f6287028fe40b4e 100644
--- a/cabal-testsuite/PackageTests/MultipleLibraries/T6083Post/cabal.out
+++ b/cabal-testsuite/PackageTests/MultipleLibraries/T6083Post/cabal.out
@@ -10,6 +10,5 @@ Preprocessing library for pkg-def-0.1.0.0..
 Building library for pkg-def-0.1.0.0..
 Warning: pkg-abc.cabal:19:15: colon specifier is experimental feature (issue #5660)
 Configuring executable 'program' for pkg-abc-0.1.0.0..
-Warning: The package has an extraneous version range for a dependency on an internal library: pkg-def >=0 && ==0.1.0.0. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing executable 'program' for pkg-abc-0.1.0.0..
 Building executable 'program' for pkg-abc-0.1.0.0..
diff --git a/cabal-testsuite/PackageTests/MultipleLibraries/T6083PostMixin/cabal.out b/cabal-testsuite/PackageTests/MultipleLibraries/T6083PostMixin/cabal.out
index e249741e23a0c50a93f4183bc693ef644412e846..e6c014b160b9d8ea7288e38a253bab2124b30d49 100644
--- a/cabal-testsuite/PackageTests/MultipleLibraries/T6083PostMixin/cabal.out
+++ b/cabal-testsuite/PackageTests/MultipleLibraries/T6083PostMixin/cabal.out
@@ -11,6 +11,5 @@ Building library for pkg-def-0.1.0.0..
 Warning: pkg-abc.cabal:15:29: colon specifier is experimental feature (issue #5660)
 Warning: pkg-abc.cabal:20:15: colon specifier is experimental feature (issue #5660)
 Configuring executable 'program' for pkg-abc-0.1.0.0..
-Warning: The package has an extraneous version range for a dependency on an internal library: pkg-def >=0 && ==0.1.0.0. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing executable 'program' for pkg-abc-0.1.0.0..
 Building executable 'program' for pkg-abc-0.1.0.0..
diff --git a/cabal-testsuite/PackageTests/MultipleLibraries/T6894/cabal.out b/cabal-testsuite/PackageTests/MultipleLibraries/T6894/cabal.out
index f8a13f7425f8795da5510cde3150d8356e299a85..a8ef5791bbb96bafee5cba8f8394b6fbc28d5bec 100644
--- a/cabal-testsuite/PackageTests/MultipleLibraries/T6894/cabal.out
+++ b/cabal-testsuite/PackageTests/MultipleLibraries/T6894/cabal.out
@@ -10,6 +10,5 @@ Preprocessing library 'sublib' for issue-6894..
 Building library 'sublib' for issue-6894..
 Warning: issue.cabal:7:30: colon specifier is experimental feature (issue #5660)
 Configuring library for issue-6894..
-Warning: The package has an extraneous version range for a dependency on an internal library: issue:sublib >=0 && ==6894. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing library for issue-6894..
 Building library for issue-6894..
diff --git a/cabal-testsuite/PackageTests/Regression/T5213/cabal.out b/cabal-testsuite/PackageTests/Regression/T5213/cabal.out
index 2605a5c60ebcf53c22e40bace5d11f16e86bc036..096ac64545cad9fd23e52f6bd797e9e8e3b0d6aa 100644
--- a/cabal-testsuite/PackageTests/Regression/T5213/cabal.out
+++ b/cabal-testsuite/PackageTests/Regression/T5213/cabal.out
@@ -8,7 +8,6 @@ Configuring library for cabal-gh5213-0.1..
 Preprocessing library for cabal-gh5213-0.1..
 Building library for cabal-gh5213-0.1..
 Configuring test suite 'tests' for cabal-gh5213-0.1..
-Warning: The package has an extraneous version range for a dependency on an internal library: cabal-gh5213 >=0 && ==0.1. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing test suite 'tests' for cabal-gh5213-0.1..
 Building test suite 'tests' for cabal-gh5213-0.1..
 Running 1 test suites...
diff --git a/cabal-testsuite/PackageTests/Regression/T5213ExeCoverage/cabal.out b/cabal-testsuite/PackageTests/Regression/T5213ExeCoverage/cabal.out
index 30f8a730dc9ec8f362093eab6879b7146438b740..3b888a6899d3426d4d579d58f5be816335e1ada2 100644
--- a/cabal-testsuite/PackageTests/Regression/T5213ExeCoverage/cabal.out
+++ b/cabal-testsuite/PackageTests/Regression/T5213ExeCoverage/cabal.out
@@ -8,7 +8,6 @@ Configuring library for cabal-gh5213-0.1..
 Preprocessing library for cabal-gh5213-0.1..
 Building library for cabal-gh5213-0.1..
 Configuring test suite 'tests' for cabal-gh5213-0.1..
-Warning: The package has an extraneous version range for a dependency on an internal library: cabal-gh5213 >=0 && ==0.1. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing test suite 'tests' for cabal-gh5213-0.1..
 Building test suite 'tests' for cabal-gh5213-0.1..
 Running 1 test suites...
diff --git a/cabal-testsuite/PackageTests/Regression/T5309/cabal.out b/cabal-testsuite/PackageTests/Regression/T5309/cabal.out
index c1ce1436805ca34502d43b1cfe10083dd82d416e..4d9d7c8dc6e4c2a07e7d615f74c6c5dec893060e 100644
--- a/cabal-testsuite/PackageTests/Regression/T5309/cabal.out
+++ b/cabal-testsuite/PackageTests/Regression/T5309/cabal.out
@@ -12,7 +12,6 @@ Configuring executable 'exe-no-lib' for T5309-1.0.0.0..
 Preprocessing executable 'exe-no-lib' for T5309-1.0.0.0..
 Building executable 'exe-no-lib' for T5309-1.0.0.0..
 Configuring executable 'exe-with-lib' for T5309-1.0.0.0..
-Warning: The package has an extraneous version range for a dependency on an internal library: T5309 >=0 && ==1.0.0.0, T5309 >=0 && ==1.0.0.0, T5309 >=0 && ==1.0.0.0. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing executable 'exe-with-lib' for T5309-1.0.0.0..
 Building executable 'exe-with-lib' for T5309-1.0.0.0..
 # cabal v2-test
@@ -29,7 +28,6 @@ Test suite test-no-lib: PASS
 Test suite logged to: <ROOT>/cabal.dist/work/./dist/build/<ARCH>/ghc-<GHCVER>/T5309-1.0.0.0/t/test-no-lib/test/T5309-1.0.0.0-test-no-lib.log
 1 of 1 test suites (1 of 1 test cases) passed.
 Configuring test suite 'test-with-lib' for T5309-1.0.0.0..
-Warning: The package has an extraneous version range for a dependency on an internal library: T5309 >=0 && ==1.0.0.0, T5309 >=0 && ==1.0.0.0, T5309 >=0 && ==1.0.0.0. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing test suite 'test-with-lib' for T5309-1.0.0.0..
 Building test suite 'test-with-lib' for T5309-1.0.0.0..
 Running 1 test suites...
@@ -49,7 +47,6 @@ Running 1 benchmarks...
 Benchmark bench-no-lib: RUNNING...
 Benchmark bench-no-lib: FINISH
 Configuring benchmark 'bench-with-lib' for T5309-1.0.0.0..
-Warning: The package has an extraneous version range for a dependency on an internal library: T5309 >=0 && ==1.0.0.0, T5309 >=0 && ==1.0.0.0, T5309 >=0 && ==1.0.0.0. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing benchmark 'bench-with-lib' for T5309-1.0.0.0..
 Building benchmark 'bench-with-lib' for T5309-1.0.0.0..
 Running 1 benchmarks...
diff --git a/cabal-testsuite/PackageTests/Regression/T5677/cabal.out b/cabal-testsuite/PackageTests/Regression/T5677/cabal.out
index aec1f55ca456024698e5eb0802d40e27f8b9a932..5207c5bb5e92960b30feda6e1f707e5e2b2b9ddb 100644
--- a/cabal-testsuite/PackageTests/Regression/T5677/cabal.out
+++ b/cabal-testsuite/PackageTests/Regression/T5677/cabal.out
@@ -24,6 +24,5 @@ Preprocessing library for prog-0..
 Building library instantiated with Sig = impl-0-inplace:Sig
 for prog-0..
 Configuring executable 'prog' for prog-0..
-Warning: The package has an extraneous version range for a dependency on an internal library: prog >=0 && ==0. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing executable 'prog' for prog-0..
 Building executable 'prog' for prog-0..
diff --git a/cabal-testsuite/PackageTests/ReplNoLoad/ModuleA.hs b/cabal-testsuite/PackageTests/ReplNoLoad/ModuleA.hs
new file mode 100644
index 0000000000000000000000000000000000000000..c449728173ea4d27428da4b57b5800cb9887a6d0
--- /dev/null
+++ b/cabal-testsuite/PackageTests/ReplNoLoad/ModuleA.hs
@@ -0,0 +1,4 @@
+module ModuleA where
+
+a :: Int
+a = 42
diff --git a/cabal-testsuite/PackageTests/ReplNoLoad/ModuleB.hs b/cabal-testsuite/PackageTests/ReplNoLoad/ModuleB.hs
new file mode 100644
index 0000000000000000000000000000000000000000..55e1fbf0238d4cd16b1e68d6f5ff875519864460
--- /dev/null
+++ b/cabal-testsuite/PackageTests/ReplNoLoad/ModuleB.hs
@@ -0,0 +1,6 @@
+module Main where
+
+import ModuleC
+
+main :: IO ()
+main = print c
diff --git a/cabal-testsuite/PackageTests/ReplNoLoad/ModuleC.hs b/cabal-testsuite/PackageTests/ReplNoLoad/ModuleC.hs
new file mode 100644
index 0000000000000000000000000000000000000000..45bcb062103b961e46ca4c02a3e7f468eb188382
--- /dev/null
+++ b/cabal-testsuite/PackageTests/ReplNoLoad/ModuleC.hs
@@ -0,0 +1,4 @@
+module ModuleC where
+
+c :: Int
+c = 42
diff --git a/cabal-testsuite/PackageTests/ReplNoLoad/cabal-repl-no-load.cabal b/cabal-testsuite/PackageTests/ReplNoLoad/cabal-repl-no-load.cabal
new file mode 100644
index 0000000000000000000000000000000000000000..dbc58536eb45cfe439317f95110161d255c9aef7
--- /dev/null
+++ b/cabal-testsuite/PackageTests/ReplNoLoad/cabal-repl-no-load.cabal
@@ -0,0 +1,15 @@
+name: cabal-repl-no-load
+version: 0.1
+build-type: Simple
+cabal-version: >= 1.10
+
+library
+  exposed-modules: ModuleA
+  build-depends: base
+  default-language: Haskell2010
+
+executable exec
+  main-is: ModuleB.hs
+  other-modules: ModuleC
+  build-depends: base
+  default-language: Haskell2010
diff --git a/cabal-testsuite/PackageTests/ReplNoLoad/cabal.exec-no-load.out b/cabal-testsuite/PackageTests/ReplNoLoad/cabal.exec-no-load.out
new file mode 100644
index 0000000000000000000000000000000000000000..be864329e7196dd9c629ced939690034b5934ee7
--- /dev/null
+++ b/cabal-testsuite/PackageTests/ReplNoLoad/cabal.exec-no-load.out
@@ -0,0 +1,8 @@
+# cabal clean
+# cabal repl
+Resolving dependencies...
+Build profile: -w ghc-<GHCVER> -O1
+In order, the following will be built:
+ - cabal-repl-no-load-0.1 (lib) (first run)
+Configuring library for cabal-repl-no-load-0.1..
+Preprocessing library for cabal-repl-no-load-0.1..
diff --git a/cabal-testsuite/PackageTests/ReplNoLoad/cabal.exec-normal.out b/cabal-testsuite/PackageTests/ReplNoLoad/cabal.exec-normal.out
new file mode 100644
index 0000000000000000000000000000000000000000..4c4a284cb88e0ec46608d71497aeaa5d2d689815
--- /dev/null
+++ b/cabal-testsuite/PackageTests/ReplNoLoad/cabal.exec-normal.out
@@ -0,0 +1,8 @@
+# cabal clean
+# cabal repl
+Resolving dependencies...
+Build profile: -w ghc-<GHCVER> -O1
+In order, the following will be built:
+ - cabal-repl-no-load-0.1 (exe:exec) (first run)
+Configuring executable 'exec' for cabal-repl-no-load-0.1..
+Preprocessing executable 'exec' for cabal-repl-no-load-0.1..
diff --git a/cabal-testsuite/PackageTests/ReplNoLoad/cabal.lib-no-load.out b/cabal-testsuite/PackageTests/ReplNoLoad/cabal.lib-no-load.out
new file mode 100644
index 0000000000000000000000000000000000000000..be864329e7196dd9c629ced939690034b5934ee7
--- /dev/null
+++ b/cabal-testsuite/PackageTests/ReplNoLoad/cabal.lib-no-load.out
@@ -0,0 +1,8 @@
+# cabal clean
+# cabal repl
+Resolving dependencies...
+Build profile: -w ghc-<GHCVER> -O1
+In order, the following will be built:
+ - cabal-repl-no-load-0.1 (lib) (first run)
+Configuring library for cabal-repl-no-load-0.1..
+Preprocessing library for cabal-repl-no-load-0.1..
diff --git a/cabal-testsuite/PackageTests/ReplNoLoad/cabal.lib-normal.out b/cabal-testsuite/PackageTests/ReplNoLoad/cabal.lib-normal.out
new file mode 100644
index 0000000000000000000000000000000000000000..be864329e7196dd9c629ced939690034b5934ee7
--- /dev/null
+++ b/cabal-testsuite/PackageTests/ReplNoLoad/cabal.lib-normal.out
@@ -0,0 +1,8 @@
+# cabal clean
+# cabal repl
+Resolving dependencies...
+Build profile: -w ghc-<GHCVER> -O1
+In order, the following will be built:
+ - cabal-repl-no-load-0.1 (lib) (first run)
+Configuring library for cabal-repl-no-load-0.1..
+Preprocessing library for cabal-repl-no-load-0.1..
diff --git a/cabal-testsuite/PackageTests/ReplNoLoad/cabal.project b/cabal-testsuite/PackageTests/ReplNoLoad/cabal.project
new file mode 100644
index 0000000000000000000000000000000000000000..e6fdbadb4398bc0e333947b5fb8021778310d943
--- /dev/null
+++ b/cabal-testsuite/PackageTests/ReplNoLoad/cabal.project
@@ -0,0 +1 @@
+packages: .
diff --git a/cabal-testsuite/PackageTests/ReplNoLoad/cabal.test.hs b/cabal-testsuite/PackageTests/ReplNoLoad/cabal.test.hs
new file mode 100644
index 0000000000000000000000000000000000000000..d4f373dfb431f770621ef14dc7b6fd78b5d2a9cc
--- /dev/null
+++ b/cabal-testsuite/PackageTests/ReplNoLoad/cabal.test.hs
@@ -0,0 +1,19 @@
+import Test.Cabal.Prelude
+
+main = do
+  cabalTest' "lib-normal" $ do
+    cabal' "clean" []
+    res <- cabalWithStdin "repl" [] ":show modules"
+    assertOutputContains "Ok, one module loaded." res
+  cabalTest' "lib-no-load" $ do
+    cabal' "clean" []
+    res <- cabalWithStdin "repl" ["--repl-no-load"] ":show modules"
+    assertOutputDoesNotContain "Ok, one module loaded." res
+  cabalTest' "exec-normal" $ do
+    cabal' "clean" []
+    res <- cabalWithStdin "repl" ["exec"] ":show modules"
+    assertOutputContains "Ok, two modules loaded." res
+  cabalTest' "exec-no-load" $ do
+    cabal' "clean" []
+    res <- cabalWithStdin "repl" ["--repl-no-load"] ":show modules"
+    assertOutputDoesNotContain "Ok, two modules loaded." res
diff --git a/cabal-testsuite/PackageTests/TestSuiteTests/ExeV10/cabal.out b/cabal-testsuite/PackageTests/TestSuiteTests/ExeV10/cabal.out
index 083b069f225f1d341628f9f797252f599d8634e1..d300a8acdf9d8d1b4cd7a35db94c11152f26f58c 100644
--- a/cabal-testsuite/PackageTests/TestSuiteTests/ExeV10/cabal.out
+++ b/cabal-testsuite/PackageTests/TestSuiteTests/ExeV10/cabal.out
@@ -9,7 +9,6 @@ Configuring library for my-0.1..
 Preprocessing library for my-0.1..
 Building library for my-0.1..
 Configuring test suite 'test-Short' for my-0.1..
-Warning: The package has an extraneous version range for a dependency on an internal library: my >=0 && ==0.1, my >=0 && ==0.1. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing test suite 'test-Short' for my-0.1..
 Building test suite 'test-Short' for my-0.1..
 Running 1 test suites...
@@ -18,7 +17,6 @@ Test suite test-Short: PASS
 Test suite logged to: <ROOT>/cabal.dist/work/./dist/build/<ARCH>/ghc-<GHCVER>/my-0.1/t/test-Short/test/my-0.1-test-Short.log
 1 of 1 test suites (1 of 1 test cases) passed.
 Configuring test suite 'test-Foo' for my-0.1..
-Warning: The package has an extraneous version range for a dependency on an internal library: my >=0 && ==0.1, my >=0 && ==0.1. This version range includes the current package but isn't needed as the current package's library will always be used.
 Preprocessing test suite 'test-Foo' for my-0.1..
 Building test suite 'test-Foo' for my-0.1..
 Running 1 test suites...
diff --git a/cabal-testsuite/cabal-testsuite.cabal b/cabal-testsuite/cabal-testsuite.cabal
index fd2689bd1725cec7b157a6355bad77b5aed14d64..a3a9ad46f276e8b89a65e1592c6b9cdb8b9b84b4 100644
--- a/cabal-testsuite/cabal-testsuite.cabal
+++ b/cabal-testsuite/cabal-testsuite.cabal
@@ -28,7 +28,7 @@ common shared
   build-depends:
     , base >= 4.6 && <4.16
     -- this needs to match the in-tree lib:Cabal version
-    , Cabal == 3.6.0.0
+    , Cabal == 3.7.0.0
 
   ghc-options: -Wall -fwarn-tabs -fwarn-incomplete-uni-patterns
 
diff --git a/cabal-testsuite/src/Test/Cabal/Monad.hs b/cabal-testsuite/src/Test/Cabal/Monad.hs
index c320282c301bc000bdfaa320aaa16626aa85ac92..fa1407eae03dc7288cc7dd2090d5bd74609f25a9 100644
--- a/cabal-testsuite/src/Test/Cabal/Monad.hs
+++ b/cabal-testsuite/src/Test/Cabal/Monad.hs
@@ -6,6 +6,7 @@ module Test.Cabal.Monad (
     setupAndCabalTest,
     setupTest,
     cabalTest,
+    cabalTest',
     -- * The monad
     TestM,
     runTestM,
diff --git a/changelog.d/issue-4683 b/changelog.d/issue-4683
new file mode 100644
index 0000000000000000000000000000000000000000..9fc7de453388c1ac3850d6350d7fb24d086c0391
--- /dev/null
+++ b/changelog.d/issue-4683
@@ -0,0 +1,4 @@
+synopsis: 'cabal check' to fail when no upper bounds for base or Cabal are present in setup dependencies
+packages: Cabal, cabal-install
+issues: #4683
+prs: #5370, #7409
diff --git a/changelog.d/issue-7541 b/changelog.d/issue-7541
new file mode 100644
index 0000000000000000000000000000000000000000..dee2e0be9f3f9c9f435e242964280925011acb21
--- /dev/null
+++ b/changelog.d/issue-7541
@@ -0,0 +1,4 @@
+synopsis: '--repl-no-load' option skips startup modules load in REPL
+issues: #7541
+packages: Cabal cabal-install
+prs: #7578
\ No newline at end of file
diff --git a/changelog.d/option-argument-errors b/changelog.d/option-argument-errors
new file mode 100644
index 0000000000000000000000000000000000000000..d2e9019019aca982c5b2e0d18159bafe74bb9c0b
--- /dev/null
+++ b/changelog.d/option-argument-errors
@@ -0,0 +1,9 @@
+synopsis: Handle option argument parse errors without 'error'
+packages: Cabal, cabal-install
+prs: #7579
+issues: #7573
+description: {
+- Errors parsing arguments such as `-v=3` no longer result in
+  stack traces.
+- `Distribution.ReadE.readEOrFail` was removed.
+}
diff --git a/changelog.d/path-validation b/changelog.d/path-validation
new file mode 100644
index 0000000000000000000000000000000000000000..79e3f0d7b9b4e681a61f0ecac1e64e0c7e56948f
--- /dev/null
+++ b/changelog.d/path-validation
@@ -0,0 +1,11 @@
+synopsis: Fix bugs in filename validation
+packages: Cabal
+prs: #7429 #7479
+issues: #7426
+
+description: {
+
+- Relative paths starting with single-character directories are now properly allowed
+- `cabal check` rejects paths which are invalid on Windows or in tarballs
+
+}
diff --git a/changelog.d/pr-7352 b/changelog.d/pr-7352
new file mode 100644
index 0000000000000000000000000000000000000000..74f188af4ea9579313e01eed6c718878a428a0c5
--- /dev/null
+++ b/changelog.d/pr-7352
@@ -0,0 +1,3 @@
+synopsis: Set -Wno-prepositive-qualified-module in Paths_*.hs
+packages: Cabal
+prs: #7352
diff --git a/changelog.d/pr-7402 b/changelog.d/pr-7402
index bbf89365be6701a2179b2c704432dcad6f5c1a69..1b60872a8e83a3d8b08fc74669228ddbe0d4034b 100644
--- a/changelog.d/pr-7402
+++ b/changelog.d/pr-7402
@@ -7,7 +7,7 @@ description: {
 
 - Removes the --dry-run part of the v2-configure command
 - Adds an --append flag to v2-configure, which allows new configuration to be appended to the old config file
-- Adds an --overwrite flag to v2-configure, which disables the backup feature for the config file
+- Adds a --backup flag to v2-configure, which enables the backup feature for the config file
 - Includes unit tests for everything
 
 }
diff --git a/changelog.d/pr-7470 b/changelog.d/pr-7470
new file mode 100644
index 0000000000000000000000000000000000000000..cd8fd9dfb2d8aa8b1a491976e9f8d789b77d930a
--- /dev/null
+++ b/changelog.d/pr-7470
@@ -0,0 +1,4 @@
+synopsis: adds a verbosity flag "+nowarn", to suppress all warnings
+packages: cabal-install
+prs: #7470
+issues: #7286
\ No newline at end of file
diff --git a/changelog.d/pr-7470-backport b/changelog.d/pr-7470-backport
new file mode 100644
index 0000000000000000000000000000000000000000..4775abf0bebc83d6216c4bb083186612a5c04079
--- /dev/null
+++ b/changelog.d/pr-7470-backport
@@ -0,0 +1,4 @@
+synopsis: removes the warnings for extraneous versions
+packages: cabal-install
+prs: #7470
+issues: #7286
\ No newline at end of file
diff --git a/changelog.d/pr-7526-lazily-decode-cache-files b/changelog.d/pr-7526-lazily-decode-cache-files
new file mode 100644
index 0000000000000000000000000000000000000000..4cdb3acc2042a35b3fa70432aaaecabd8e9a97e6
--- /dev/null
+++ b/changelog.d/pr-7526-lazily-decode-cache-files
@@ -0,0 +1,7 @@
+synopsis: lazily decode cache files for checking invalidation
+prs: #7516
+issues: #7466
+packages: cabal-install
+description {
+- This yields a significant 15% speedup on rebuilding build plans for projects with lots of individual cabal packages.
+}
\ No newline at end of file
diff --git a/changelog.d/pr-7536 b/changelog.d/pr-7536
new file mode 100644
index 0000000000000000000000000000000000000000..d4596fbde746da9d0e42c05a8a53ec56941b8b9a
--- /dev/null
+++ b/changelog.d/pr-7536
@@ -0,0 +1,4 @@
+synopsis: Add fields extra-libraries-static and extra-lib-dirs-static
+packages: Cabal
+prs: #7536
+issues: #7399, #6688
diff --git a/changelog.d/pr-7550 b/changelog.d/pr-7550
new file mode 100644
index 0000000000000000000000000000000000000000..e95e220acdccbb2a737fa7acdbd66d10a3e70f74
--- /dev/null
+++ b/changelog.d/pr-7550
@@ -0,0 +1,4 @@
+synopsis: Add --open flag to `cabal haddock`
+packages: cabal-install
+prs: #7550
+issues: #7366
diff --git a/changelog.d/pr-7561 b/changelog.d/pr-7561
new file mode 100644
index 0000000000000000000000000000000000000000..80095608308d7992470af57cd9e1855493f033ec
--- /dev/null
+++ b/changelog.d/pr-7561
@@ -0,0 +1,7 @@
+synopsis: defer build-tools-depends choices as well as setup choices
+prs: #7532 #7561
+description {
+
+- extends the existing solver pass that defers solving setup depends until top-level goals are solved to also defer build-tool-depends goals until top level goals are solved.
+- constraints at the top level (on versions, flags, stanzas, etc) are applied first and only then are attempts made to build the less-constrained qualified goals, significantly streamlining the production of valid build plans.
+}
\ No newline at end of file
diff --git a/changelog.d/rel-path-check b/changelog.d/rel-path-check
deleted file mode 100644
index 69e6b3a936c5ffdc5205ba7ee6fbe414b85b82c2..0000000000000000000000000000000000000000
--- a/changelog.d/rel-path-check
+++ /dev/null
@@ -1,4 +0,0 @@
-synopsis: Allow relative paths starting with single-charater directories
-packages: Cabal
-prs: #7429
-issues: #7426
diff --git a/changelog.d/sync-repo-darcs b/changelog.d/sync-repo-darcs
new file mode 100644
index 0000000000000000000000000000000000000000..3bbd63c2c18678f5b0e82cc1272b7fb4670aafd9
--- /dev/null
+++ b/changelog.d/sync-repo-darcs
@@ -0,0 +1,2 @@
+synopsis: Sync repo darcs
+prs: #7137
diff --git a/doc/buildinfo-fields-reference.rst b/doc/buildinfo-fields-reference.rst
index 48419d981e00a5102213476b70e04a8f64b9e000..1fdf055f1c79ac923a754667ede8b087fd6f29bc 100644
--- a/doc/buildinfo-fields-reference.rst
+++ b/doc/buildinfo-fields-reference.rst
@@ -86,10 +86,10 @@ Field syntax is described as they are in the latest cabal file format version.
 
 
   .. math::
-      
+
       \mathbf{fix}\; \mathit{expr}\; \mathbf{in}\; \mathit{digit}
       \mid \mathit{expr} \circ \mathord{``}\mathtt{+}\mathord{"} \circ \mathit{expr}
-      \mid \mathord{``}\mathtt{(} \mathord{"} \circ \mathit{expr} \circ \mathord{``}\mathtt{)}\mathord{"} 
+      \mid \mathord{``}\mathtt{(} \mathord{"} \circ \mathit{expr} \circ \mathord{``}\mathtt{)}\mathord{"}
 
 Lists
 -----
@@ -336,6 +336,13 @@ extra-lib-dirs
     .. math::
         \mathrm{optcommalist}\left\{ \mathop{\mathit{hs\text{-}string}}\mid{{[\mathop{\mathord{``}\mathtt{\ }\mathord{"}}\mathop{\mathord{``}\mathtt{\text{,}}\mathord{"}}]^c}}^+_{} \right\}
 
+extra-lib-dirs-static
+    * Monoidal field
+    * Documentation of :pkg-field:`extra-lib-dirs-static`
+
+    .. math::
+        \mathrm{optcommalist}\left\{ \mathop{\mathit{hs\text{-}string}}\mid{{[\mathop{\mathord{``}\mathtt{\ }\mathord{"}}\mathop{\mathord{``}\mathtt{\text{,}}\mathord{"}}]^c}}^+_{} \right\}
+
 extra-libraries
     * Monoidal field
     * Documentation of :pkg-field:`extra-libraries`
@@ -350,6 +357,13 @@ extra-library-flavours
     .. math::
         \mathrm{commalist}\left\{ \mathop{\mathit{hs\text{-}string}}\mid{{[\mathop{\mathord{``}\mathtt{\ }\mathord{"}}\mathop{\mathord{``}\mathtt{\text{,}}\mathord{"}}]^c}}^+_{} \right\}
 
+extra-libraries
+    * Monoidal field
+    * Documentation of :pkg-field:`extra-libraries-static`
+
+    .. math::
+        \mathrm{commalist}\left\{ \mathop{\mathit{hs\text{-}string}}\mid{{[\mathop{\mathord{``}\mathtt{\ }\mathord{"}}\mathop{\mathord{``}\mathtt{\text{,}}\mathord{"}}]^c}}^+_{} \right\}
+
 frameworks
     * Monoidal field
     * Documentation of :pkg-field:`frameworks`
@@ -650,5 +664,3 @@ type
 
     .. math::
         \left\{ \mathop{\mathord{``}\mathtt{exitcode\text{-}stdio\text{-}1\text{.}0}\mathord{"}}\mid\mathop{\mathord{``}\mathtt{detailed\text{-}0\text{.}9}\mathord{"}} \right\}
-
-
diff --git a/doc/cabal-commands.rst b/doc/cabal-commands.rst
index 0b1fc3effa604ce3fb8ec18a61c3639474ed4ad0..d3df212cf51fae32c36024b0289da55362b375d4 100644
--- a/doc/cabal-commands.rst
+++ b/doc/cabal-commands.rst
@@ -48,7 +48,7 @@ by simply overwriting it all. Overwriting is the default behaviour, as
 such, there's a flag ``--enable-append`` to append the new configurations
 instead. Since overwriting is rather destructive in nature, a backup system
 is in place, which moves the old configuration to a ``cabal.project.local~``
-file, this feature can also be disabled by using the ``--enable-overwrite``
+file, this feature can also be disabled by using the ``--enable-backup``
 flag.
 
 cabal v2-update
@@ -142,7 +142,7 @@ cabal v2-repl
 
 ``cabal v2-repl TARGET`` loads all of the modules of the target into
 GHCi as interpreted bytecode. In addition to ``cabal v2-build``'s flags,
-it takes an additional ``--repl-options`` flag.
+it additionally takes the ``--repl-options`` and ``--repl-no-load`` flags.
 
 To avoid ``ghci`` specific flags from triggering unneeded global rebuilds these
 flags are now stripped from the internal configuration. As a result
@@ -151,6 +151,8 @@ other repls). Instead, you should use the new ``--repl-options`` flag to
 specify these options to the invoked repl. (This flag also works on ``cabal
 repl`` and ``Setup repl`` on sufficiently new versions of Cabal.)
 
+The ``repl-no-load`` flag disables the loading of target modules at startup.
+
 Currently, it is not supported to pass multiple targets to ``v2-repl``
 (``v2-repl`` will just successively open a separate GHCi session for
 each target.)
diff --git a/doc/cabal-package.rst b/doc/cabal-package.rst
index 8237ea5b5ce9f8143e095de756a07ebc274373d5..453c8e946497105160663d760c0575cc0e31e0b3 100644
--- a/doc/cabal-package.rst
+++ b/doc/cabal-package.rst
@@ -1821,12 +1821,12 @@ system-dependent values for these fields.
         build-tool-depends: mypackage:executable
 
     Cabal tries to make sure that all specified programs are atomically built and prepended
-    on the ``$PATH`` shell variable before building the component in question, but can only do
+    on the ``PATH`` shell variable before building the component in question, but can only do
     so for Nix-style builds. Specifically:
 
     a) For Nix-style local builds, both internal and external dependencies.
     b) For old-style builds, only for internal dependencies [#old-style-build-tool-depends]_.
-       It's up to the user to provide needed executables in this case under `$PATH.`
+       It's up to the user to provide needed executables in this case under ``PATH``.
 
 
     .. note::
@@ -2056,7 +2056,13 @@ system-dependent values for these fields.
 
 .. pkg-field:: extra-libraries: token list
 
-    A list of extra libraries to link with.
+    A list of extra libraries to link with (when not linking fully static
+    executables).
+
+.. pkg-field:: extra-libraries-static: token list
+
+    A list of extra libraries to link with (when linking fully static
+    executables).
 
 .. pkg-field:: extra-ghci-libraries: token list
 
@@ -2084,7 +2090,13 @@ system-dependent values for these fields.
 
 .. pkg-field:: extra-lib-dirs: directory list
 
-    A list of directories to search for libraries.
+    A list of directories to search for libraries (when not linking fully static
+    executables).
+
+.. pkg-field:: extra-lib-dirs-static: directory list
+
+    A list of directories to search for libraries (when linking fully static
+    executables).
 
 .. pkg-field:: extra-library-flavours: notsure
 
@@ -2138,7 +2150,7 @@ system-dependent values for these fields.
     setup described in the section on `system-dependent parameters`_.
 
 .. pkg-field:: hsc2hs-options: token list
-    :since 3.6
+    :since: 3.6
 
     Command-line arguments to be passed to ``hsc2hs``.
 
@@ -3017,7 +3029,7 @@ Accessing data files from package code
 The placement on the target system of files listed in
 the :pkg-field:`data-files` field varies between systems, and in some cases
 one can even move packages around after installation (see `prefix
-independence <installing-packages.html#prefix-independence>`__). To
+independence <setup-commands.html#prefix-independence>`__). To
 enable packages to find these files in a portable way, Cabal generates a
 module called :file:`Paths_{pkgname}` (with any hyphens in *pkgname*
 replaced by underscores) during building, so that it may be imported by
@@ -3477,5 +3489,5 @@ For more information about Backpack, check out the
   Some packages (ab)use :pkg-field:`build-depends` on old-style builds, but this has a few major drawbacks:
 
     - using Nix-style builds it's considered an error if you depend on a exe-only package via build-depends: the solver will refuse it.
-    - it may or may not place the executable on ``$PATH``.
+    - it may or may not place the executable on ``PATH``.
     - it does not ensure the correct version of the package is installed, so you might end up overwriting versions with each other.
diff --git a/doc/cabal-project.rst b/doc/cabal-project.rst
index ebd154cadd3fdf063d4ce53b6a3a067b2f4d3aa8..e66825957a0764de68b0958185e34bd4df74e040 100644
--- a/doc/cabal-project.rst
+++ b/doc/cabal-project.rst
@@ -182,7 +182,7 @@ This allows sharing of packages across different projects.
 
 .. cfg-field:: location: VCS location (usually URL)
 
-.. cfg-field:: type: VCS tag
+.. cfg-field:: tag: VCS tag
 
 .. cfg-field:: subdir: subdirectory list
 
@@ -492,22 +492,59 @@ The following settings control the behavior of the dependency solver:
 
     :default: ``:rest``
 
-    This allows to specify the active package repositories,
-    when multiple are specified. This is useful as you
-    can specify the order and the way active repositories are merged.
+    Specifies which of the package repositories defined in the configuration
+    should be active. It's also useful for specifying the order and the way
+    active repositories are merged.
+
+    When searching for a certain version of a certain package name, the list of
+    active repositories is searched last-to-first.
+
+    For example, suppose hackage.haskell.org has versions 1.0 and 2.0 of
+    package X, and my-repository has version 2.0 of a similarly named package.
+    Then, with the following configuration:
+
+    ::
+
+      -- Force my-repository to be the first repository considered
+      active-repositories:
+        , hackage.haskell.org
+        , my-repository
+
+    version 2.0 of X will come from my-repository, and version 1.0 will come
+    from hackage.haskell.org.
+
+    If we want to make a repository the sole provider of certain packages, we
+    can put it last in the active repositories list, and add the :override
+    modifier.
+
+    For example, if we modify the previous example like this:
 
     ::
 
-      -- for packages in head.hackage
-      -- only versions in head.hackage are considered
       active-repositories:
         , hackage.haskell.org
-        , head.hackage:override
+        , my-repository:override
 
-      -- Force head.hackage to be the primary repository considered
-      active-repositories: :rest, head.hackage
+    then version 1.0 of package X won't be found in any case, because X is
+    present in my-repository only in version 2.0, and the :override forbids
+    searching for other versions of X further up the list.
+
+    :override has no effect for package names that aren't present in the
+    overriding repository.
+
+    The special repository reference :rest stands for "all the other repositories"
+    and can be useful to avoid lenghty lists of repository names:
+
+    ::
+
+      -- Force my-repository to be the first repository considered
+      active-repositories: :rest, my-repository
+
+    The special repository reference "none" disables all repositories, effectively
+    putting cabal in "offline" mode:
+
+    ::
 
-      -- "Offline" mode
       active-repositories: none
 
 
@@ -605,7 +642,7 @@ feature was added.
     :synopsis: Path to compiler executable.
 
     Specify the path to a particular compiler to be used. If not an
-    absolute path, it will be resolved according to the :envvar:`PATH`
+    absolute path, it will be resolved according to the ``PATH``
     environment. The type of the compiler (GHC, GHCJS, etc) must be
     consistent with the setting of the :cfg-field:`compiler` field.
 
@@ -1369,6 +1406,13 @@ running ``setup haddock``. (TODO: Where does the documentation get put.)
     The command line variant of this flag is ``--keep-temp-files`` (for
     the ``haddock`` subcommand).
 
+.. cfg-field:: open: boolean
+    :synopsis: Open generated documentation in-browser.
+
+    When generating HTML documentation, attempt to open it in a browser
+    when complete. This will use ``xdg-open`` on Linux and BSD systems,
+    ``open`` on macOS, and ``start`` on Windows.
+
 Advanced global configuration options
 -------------------------------------
 
diff --git a/doc/developing-packages.rst b/doc/developing-packages.rst
index df01f9c42c79f0186ce61d2ac1d6f9a0105ddd19..42412c12a366771f8fbecc4c2c0fd2d669849535 100644
--- a/doc/developing-packages.rst
+++ b/doc/developing-packages.rst
@@ -283,7 +283,7 @@ and the executable can also be installed for convenince:
     $ cabal install
 
 When installed, the executable program lands in a special directory
-for binaries that may or may not already be on your system's ``$PATH``.
+for binaries that may or may not already be on your system's ``PATH``.
 If it is, the executable can be run by typing its filename on commandline.
 For installing libraries see the :ref:`adding-libraries` section.
 
diff --git a/doc/file-format-changelog.rst b/doc/file-format-changelog.rst
index 52116db587939027e5ec4161cb8c1de275eaabe1..cffa4edd578623a1f31dc99dbd73ed220ea6854f 100644
--- a/doc/file-format-changelog.rst
+++ b/doc/file-format-changelog.rst
@@ -19,6 +19,21 @@ relative to the respective preceding *published* version.
     versions of the ``Cabal`` library denote unreleased development
     branches which have no stability guarantee.
 
+``cabal-version: 3.x``
+----------------------
+
+* Added fields :pkg-field:`extra-libraries-static` and
+  :pkg-field:`extra-lib-dirs-static` to allow Haskell libraries to remember
+  linker flags needed for fully static linking of system libraries into
+  executables.
+  The existing field :pkg-field:`pkgconfig-depends` can used to append
+  the relevant output of ``pkg-config --libs --static`` to these new fields
+  automatically.
+  When :pkg-field:`extra-libraries-static` is not given, it defaults to
+  :pkg-field:`extra-libraries`.
+  When :pkg-field:`extra-lib-dirs-static` is not given, it defaults to
+  :pkg-field:`extra-lib-dirs`.
+
 ``cabal-version: 3.6``
 ----------------------
 
diff --git a/doc/getting-started.rst b/doc/getting-started.rst
index b4f042dc72148a61ef2a8ce0768e58c559377b4f..0a26b7c10c8bf93e14182d23437b9c572a5d2f2c 100644
--- a/doc/getting-started.rst
+++ b/doc/getting-started.rst
@@ -5,9 +5,7 @@ Installing the Haskell toolchain
 --------------------------------
 
 To install the Haskell toolchain follow the `ghcup instructions
-<https://www.haskell.org/ghcup/>`__ if you're using Linux or Mac, or follow
-`this guide <https://hub.zhox.com/posts/introducing-haskell-dev/>`__ if you're
-using Windows.
+<https://www.haskell.org/ghcup/>`__.
 
 
 Creating a new application
diff --git a/doc/installing-packages.rst b/doc/installing-packages.rst
index 9ec28341912738041396eb16647cf7cad5f64b29..3040bb2da357d016563f17875b652949e2f36a70 100644
--- a/doc/installing-packages.rst
+++ b/doc/installing-packages.rst
@@ -105,14 +105,18 @@ packages from any of them.
 Using secure repositories
 ^^^^^^^^^^^^^^^^^^^^^^^^^
 
-For repositories that support the TUF security infrastructure (this
-includes Hackage), you can enable secure access to the repository by
-specifying:
+When interacting with ``hackage.haskell.org``, Cabal always runs in secure mode
+with standard root keys, so it is not necessary to specify ``secure`` or
+``root-keys``. If no repositories are listed, Cabal will default to
+``hackage.haskell.org``.
+
+For non-Hackage repositories that support the TUF security infrastructure you
+can enable secure access to the repository by specifying:
 
 ::
 
-    repository hackage.haskell.org
-      url: http://hackage.haskell.org/
+    repository packages.example.org
+      url: http://packages.example.org/
       secure: True
       root-keys: <root-key-IDs>
       key-threshold: <key-threshold>
@@ -272,4 +276,4 @@ dependencies in a single step. To do this, run:
 
 To browse the list of available packages, visit the `Hackage`_ web site.
 
-.. _Hackage: https://hackage.haskell.org/
\ No newline at end of file
+.. _Hackage: https://hackage.haskell.org/
diff --git a/release-notes/Cabal-3.6.1.0.md b/release-notes/Cabal-3.6.1.0.md
new file mode 100644
index 0000000000000000000000000000000000000000..c7d584d3520ba9c175ad9ca9ef43fbabed1be337
--- /dev/null
+++ b/release-notes/Cabal-3.6.1.0.md
@@ -0,0 +1,60 @@
+Cabal 3.6.1.0 Changelog
+---
+
+### Significant Changes
+
+- Include cmm-sources when linking shared objects [#7182](https://github.com/haskell/cabal/issues/7182) [#7252](https://github.com/haskell/cabal/pull/7252)
+
+  - Previously `cmm-sources` were not included in the final link when building a library as a shared object. Fix this.
+
+- Prefer canonicalized path when guessing tools from GHC path [#7390](https://github.com/haskell/cabal/issues/7390) [#7392](https://github.com/haskell/cabal/pull/7392)
+
+  Motivation
+
+  Often times, the user facing `ghc` binary is
+  symlinked by other forces, such as the package manager,
+  tooling like ghcup etc. As such, the naming convention
+  (version suffix in particular) may not align with the
+  assumptions made in Cabal and it may find an incorrect ghc-pkg.
+
+  See:
+    - https://github.com/haskell/cabal/issues/7390
+    - https://gitlab.haskell.org/ghc/ghc/-/issues/18807
+    - https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/73
+
+  Solution
+
+  Guessing the ghc-pkg path is already a hack and will be solved
+  more appropriately in the future, see
+    - https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4214
+    - https://gitlab.haskell.org/ghc/ghc/-/snippets/2710
+  These patches will solve the issue for future GHC versions.
+
+  As such, this patch provides a workaround for
+  older, already existing GHC versions by first always
+  following the symbolic link of the ghc binary (if it is one)
+  and prefering its target directory as the guess lookup
+  location.
+
+  Rationale
+
+  The canonicalized path of the ghc binary usually points to the
+  bin/ directory unpacked from a bindist, which is less likely to be
+  tampered with by distributions and tools. As such, prefering the
+  canoncialized path should get us more robust results.
+
+- Fix `cabal test --enable-library-coverage` for other-modules [#5213](https://github.com/haskell/cabal/issues/5213) [#7493](https://github.com/haskell/cabal/pull/7493)
+
+  - Fix `cabal test --enable-library-coverage` for libraries with nonempty other-modules field.
+  - Due to a hack, this breaks coverage whenever the used Haskell compiler is called 't' (for a non-hacky fix we should rework HPC directories, possibly enabling multilib in the process, see #6440 and #6397).
+
+- Set PATH_SEPARATOR=";" when calling ./configure on Windows; this fix is necessary for autoconf >= 2.70 [#7494](https://github.com/haskell/cabal/issues/7494) [#7510](https://github.com/haskell/cabal/pull/7510)
+
+- lazily decode cache files for checking invalidation [#7516](https://github.com/haskell/cabal/pull/7516) [#7466](https://github.com/haskell/cabal/issues/7466)
+  - This yields a significant 15% speedup on rebuilding build plans for projects with lots of individual cabal packages.
+
+- defer build-tools-depends choices as well as setup choices [#7561](https://github.com/haskell/cabal/pull/7561) [#7472](https://github.com/haskell/cabal/issues/7472)
+  - extends the existing solver pass that defers solving setup depends until top-level goals are solved to also defer build-tool-depends goals until top level goals are solved.
+  - constraints at the top level (on versions, flags, stanzas, etc) are applied first and only then are attempts made to build the less-constrained qualified goals, significantly streamlining the production of valid build plans.
+
+- Set -Wno-prepositive-qualified-module in Paths_*.hs [#7352](https://github.com/haskell/cabal/pull/7352)
diff --git a/release-notes/Cabal-3.8.0.0.md b/release-notes/Cabal-3.8.0.0.md
new file mode 100644
index 0000000000000000000000000000000000000000..2756103c34ca2c66f4fec1de86acddaf6504c7f4
--- /dev/null
+++ b/release-notes/Cabal-3.8.0.0.md
@@ -0,0 +1,13 @@
+Cabal 3.6.0.0 Changelog
+---
+
+
+- Added fields :pkg-field:`extra-libraries-static` and
+  :pkg-field:`extra-lib-dirs-static` to allow Haskell libraries to remember
+  linker flags needed for fully static linking of system libraries into executables. [#7536](https://github.com/haskell/cabal/pull/7536)
+
+- The existing field :pkg-field:`pkgconfig-depends` can used to append the relevant
+  output of ``pkg-config --libs --static`` to these new fields automatically.
+  When :pkg-field:`extra-libraries-static` is not given, it defaults to
+  :pkg-field:`extra-libraries`. When :pkg-field:`extra-lib-dirs-static` is not
+  given, it defaults to :pkg-field:`extra-lib-dirs`. [#7536](https://github.com/haskell/cabal/pull/7536)
diff --git a/release-notes/cabal-install-3.6.0.0.md b/release-notes/cabal-install-3.6.0.0.md
new file mode 100644
index 0000000000000000000000000000000000000000..c4692787ec9890ea20ecb3df7ca85142c21a00df
--- /dev/null
+++ b/release-notes/cabal-install-3.6.0.0.md
@@ -0,0 +1,43 @@
+### Backports
+
+- Backported to 3.4 [#6964](https://github.com/haskell/cabal/pull/6964) [#6968](https://github.com/haskell/cabal/pull/6968)
+- CI setup [#6959](https://github.com/haskell/cabal/pull/6959)
+
+  - Remove travis scripts
+
+### Significant Changes
+
+- Add post-checkout-command to source-package-repository [#6664](https://github.com/haskell/cabal/issues/6664) [#7047](https://github.com/haskell/cabal/pull/7047)
+- Assume list-bin target selectors are for executables [#7326](https://github.com/haskell/cabal/issues/7326) [#7335](https://github.com/haskell/cabal/pull/7335)
+- Add a --only-download flag [#7323](https://github.com/haskell/cabal/issues/7323) [#7347](https://github.com/haskell/cabal/pull/7347)
+- Add `hsc2hs-options`, for specifying additional options to pass to `hsc2hs` [#6295](https://github.com/haskell/cabal/pull/6295)
+- Make extra-packages work properly [#6972](https://github.com/haskell/cabal/pull/6972)
+- Bugfix - stop creating spurious dirs on `init` [#6772](https://github.com/haskell/cabal/issues/6772) [#7262](https://github.com/haskell/cabal/pull/7262)
+- Avoid resource exhaustion in `cabal init` [#5115](https://github.com/haskell/cabal/issues/5115) [#7283](https://github.com/haskell/cabal/pull/7283)
+
+  - Read file contents strictly to avoid resource exhaustion in `cabal init`.
+  - Ignore UTF-8 decoding errors.
+
+- Add language extensions for GHC 9.2 [#7312](https://github.com/haskell/cabal/issues/7312)
+- --dry-run and --only-download effect v2-configure, v2-freeze, v2-run, and v2-exec [#7379](https://github.com/haskell/cabal/issues/7379)
+- Fix instantiating an indefinite Backpack from Hackage with an inplace package [#6835](https://github.com/haskell/cabal/issues/6835) [#7413](https://github.com/haskell/cabal/pull/7413)
+
+  Previously, cabal-install would always attempt to put instantiations of indefinite packages from Hackage in
+  the global package store, even if they were instantiated with inplace packages.  This would not work
+  and GHC would complain about packages being missing from the package database.  We have fixed the
+  instantiation algorithm to correctly inplace packages in these situations, removing one of the last
+  blockers to widespread use of Backpack packages on Hackage.
+
+- removes the warnings for extraneous versions [#7286](https://github.com/haskell/cabal/issues/7286) [#7470](https://github.com/haskell/cabal/pull/7470)
+- Alert user and suggest command on spelling mistakes
+
+### Other improvements
+
+- Code organization [#6960](https://github.com/haskell/cabal/pull/6960) [#6963](https://github.com/haskell/cabal/pull/6963) [#6970](https://github.com/haskell/cabal/pull/6970) [#6974](https://github.com/haskell/cabal/pull/6974) [#6975](https://github.com/haskell/cabal/pull/6975)
+
+  - Move Cabal sources into Cabal/src
+  - Move cabal-install sources to cabal-install/src/
+  - Move doc/ to the top-level of the repository
+  - Add stylish-haskell config.
+
+- Documentation improvements [#6813](https://github.com/haskell/cabal/issues/6813) [#6971](https://github.com/haskell/cabal/pull/6971) [#7047](https://github.com/haskell/cabal/pull/7047)
diff --git a/templates/ci-windows.template.yml b/templates/ci-windows.template.yml
index 05487977ffb92a45d104793a3f2c82217aa1f7ea..e192d53daa30a6866a9846b9809f62947bace65a 100644
--- a/templates/ci-windows.template.yml
+++ b/templates/ci-windows.template.yml
@@ -70,5 +70,5 @@ jobs:
           cabal v2-run cabal-install:unit-tests -- --pattern "! (/FileMonitor/ || /VCS/ || /Get/)"
       - name: cabal-tests
         # Using only one job, -j1, to fail less.
-        run: cabal v2-run cabal-testsuite:cabal-tests -- -j1 --with-cabal=dist-newstyle\build\x86_64-windows\ghc-{{ job.version }}\cabal-install-3.6.0.0\x\cabal\build\cabal\cabal.exe
+        run: cabal v2-run cabal-testsuite:cabal-tests -- -j1 --with-cabal=dist-newstyle\build\x86_64-windows\ghc-{{ job.version }}\cabal-install-3.7.0.0\x\cabal\build\cabal\cabal.exe
 {% endfor %}