h)7"      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         !!!!!!!!!!"""""""""#$$$$$$$$%&&&&&&&&&&&'''''''''''''((((((((()))))))))))*************+++++++++,,,,,,,-------------./////////0000111111111111111111122222222222222222333333333333333444444455555555566666666666666666666677777777777777777777777777777778999999999:::::::::::::;;;;;<<<<<<<<<<<<<<<<<<<<<<<=================>>>?????@@@@@@AAAAAAAAAAABBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDEFFFFFFFFFFFFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOPPPPPPPPPPPPPPPPPPPPQQQQQQQQQQQQQQQQQQRRRRRRRRRRRRRRRRRRRRSTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWWWWWWWWWWWWWWWWWWWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ[\\\\\\]]]]]]]]]]]]]]]]]]]]]]^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^__________________________________________________________________________________________________________________________________________________________________``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbccccccccccccccccccdddddeeeeeeeeeeffggggggggggghhhhhhiiiiiiiiiiiiiiiiiiiiiiiijjjjjjjkkkkkkkkkklllllllllllllllllmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnnnnnnnnnnnnnnooooooooooooooooooppppppppqqqqqqqqqqqqqqqqqqqqqqrrrrrsstttttttttttttuuuuuvwwwwwwwwwwwwwwwwwxxxxxxyyyzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz{{{{{{{{{{||||||||||}~~~~~                                                                                                                                !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""2.13.1 Safe-InferredXy   Safe-Inferred"^ stack!Set the user-agent request header stackDownload the given URL to the given location. If the file already exists, no download is performed. Otherwise, creates the parent directory, downloads to a temporary file, and on file download completion moves to the appropriate destination.&Throws an exception if things go wrong stackSame as  , but will download a file a second time if it is already present.Returns V if the file was downloaded, S otherwise stack>Copied and extended version of Network.HTTP.Download.download.Has the following additional features: * Verifies that response content-length header (if present) matches expected length * Limits the download to (close to) the expected # of bytes * Verifies that the expected # bytes were downloaded (not too few) * Verifies md5 if response includes content-md5 header * Verifies the expected hashesThrows VerifiedDownloadException. Throws IOExceptions related to file system operations. Throws HttpException."stackGiven a printf format string for the decimal part and a number of bytes, formats the bytes using an appropriate unit and returns the formatted string.bytesfmt "%.2" 512368"500.359375 KiB" stack destinationstackWas a downloaded performed (True) or did the file already exist (False)? stack destination stack destinationstackcustom hook to observe progressstack Whether a download was performed     Safe-Inferred`"   Safe-Inferred(j stack3Convert to FilePath but don't add a trailing slash. stackCollapse intermediate "." and ".." directories from path, then parse it with "0. (probably should be moved to the Path module) stackCollapse intermediate "." and ".." directories from path, then parse it with "0. (probably should be moved to the Path module) stackAdd a relative FilePath to the end of a Path We can't parse the FilePath first because we need to account for ".." in the FilePath (#2895)"stack;Collapse intermediate "." and ".." directories from a path. collapseFilePath "./foo" == "foo" collapseFilePath "/bar/../baz" == "/baz" collapseFilePath "/../baz" == "/../baz" collapseFilePath "parent/foo/baz/../bar" == "parent/foo/bar" collapseFilePath "parent/foo/baz/../../bar" == "parent/bar" collapseFilePath "parent/foo/.." == "parent" collapseFilePath "/parent/foo/../../bar" == "/bar"(adapted from Text.Pandoc.Shared) stackDrop the root (either / on POSIX or C:\, D:\, etc. on Windows). stackIf given file in F does not exist, ensure we have T*. This is to be used in conjunction with forgivingAbsence and  resolveFile.Previously the idiom  forgivingAbsence (resolveFile @)" alone was used, which relied on canonicalizePath throwing " when path does not exist. As it turns out, this behavior is actually not intentional and unreliable, see  .https://github.com/haskell/directory/issues/44. This was @fixed@ in version 1.2.3.0 of  directory package (now it never throws). To make it work with all versions, we need to use the following idiom: 6forgivingAbsence (resolveFile @) >>= rejectMissingFile stackSee  . stack7Convert to a lazy ByteString using toFilePath and UTF8. stack2Convert to a ByteString using toFilePath and UTF8. stack (path-io package) throws " (path package) if the directory does not exist; this function yields T. stack (path-io package) throws " (path< package) if the file does not exist; this function yields T. stack (path-io package) throws " (path< package) if the file does not exist; this function yields T. stackBase directorystackPath to resolve stackBase directorystackPath to resolve stackPath to resolve   Safe-Inferred1o{ stack9Find the location of a file matching the given predicate. stack>Find the location of a directory matching the given predicate."stack9Find the location of a path matching the given predicate. stack5Find files matching predicate below a root directory.NOTE: this skips symbolic directory links, to avoid loops. This may not make sense for all uses of file finding.TODO: write one of these that traverses symbolic links but efficiently ignores loops. stackfindInParents f path applies f to path and its "s until it finds a U or reaches the root directory. stack Start here.stackPredicate to match the file.stack#Do not ascend above this directory.stackAbsolute file path. stack Start here.stack!Predicate to match the directory.stack#Do not ascend above this directory.stackAbsolute directory path."stackChoose path type from pair.stack Start here.stackPredicate to match the path.stack#Do not ascend above this directory.stackAbsolute path. stackRoot directory to begin with.stackPredicate to match files.stack,Predicate for which directories to traverse.stackList of matching files.   Safe-Inferredo   Safe-Inferred"yk stackLike  First Bool, but the default is False. stackLike  First Bool, but the default is True. stack Path version stackLike  -, but the temporary directory is not deleted. stack:Consume the stdout and stderr of a process feeding strict s to the consumers. Throws a ReadProcessException# if unsuccessful in launching, or ExitCodeException if the process itself fails. stack/Consume the stdout of a process feeding strict s to a consumer. If the process fails, spits out stdout and stderr as error log level. Should not be used for long-running processes or ones with lots of output; for that use  . Throws a ReadProcessException if unsuccessful. stack+Read from the process, ignoring any output. Throws a ReadProcessException exception if the process fails. stack Use the new ", but retain the working directory from the parent environment. stack*Remove a trailing carriage pure if present stackPrompt the user by sending text to stdout, and taking a line of input from stdin. stackPrompt the user by sending text to stdout, and collecting a line of input from stdin. While taking input from stdin, input echoing is disabled, to hide passwords.?@ABCDFTUG[\ZHIJKLMNOXYPQWE]                           _`aR^cde1(7)f6gh5qponlkjmi!rs"t# u$~}|{zyxvw% &'*  + ,-./0234 89:SV;<=>?@ABCDFTUG[\ZHIJKLMNOXYPQWE]                            Safe-Inferred= stackAllows adjust global options depending on their context Note: This was being used to remove ambiguity between the local and global implementation of stack init --resolver option. Now that stack init has no local --resolver this is not being used anymore but the code is kept for any similar future use cases. stack%Global options before subcommand name stack-Global options following any other subcommand stack9If argument is True, hides the option from usage and help   Safe-Inferred" stackParser for a logging level.   Safe-Inferred" "stackMake sure that a filename with spaces in it gets the proper quotes. b  b  Safe-Inferred"1"stack(Run an action, watching for file changesThe action provided takes a callback that is used to set the files to be watched. When any of those files are changed, we rerun the action again.   Safe-Inferred stackUsed in Stack.Setup for detecting libc.musl-x86_64.so.1, see comments at use site stackUsed in Stack.Setup for detecting libtinfo, see comments at use site  Safe-Inferredl stackName of the Stack program.   Safe-Inferred"" stack$Hpack version we're compiled against stackIf 1 is enabled, the Git hash in the build directory, otherwise Nothing.   Safe-Inferred%&l"stackType representing exceptions thrown by functions exported by the !Options.Applicative.Builder.Extra module. stackEnable/disable flags for a :. stackEnable/disable flags for a :2, without a default case (to allow chaining with ). stack%Flag with no default of True or False stack4Flag with a Semigroup instance and a default of True stack5Flag with a Semigroup instance and a default of False stack"Enable/disable flags for any type. stackEnable/disable flags for any type, without a default (to allow chaining with ) stack Show an extra help option (e.g.  --docker-help shows help for all  --docker* args).'To actually have that help appear, use  # before executing the main parser. stack x.   Safe-Inferred" stack4An argument which accepts a list of arguments e.g. --ghc-options="-X P.hs "this"". stack2An option which accepts a list of arguments e.g. --ghc-options="-X P.hs "this"". stackAn option which accepts a command and a list of arguments e.g. --exec "echo hello world"   Safe-Inferred%& stack$Does not include the current action. stack+Actions which depend on the current action. stack8Whether this action may be run concurrently with others. stackType representing permissions for actions to be run concurrently with others. stack&Type representing Stack build actions. stackThe action's unique id. stack%Actions on which this action depends. stack The action's I action, given a context. stack8Whether this action may be run concurrently with others. stack9Types representing the unique ids of Stack build actions. stack/Type representing types of Stack build actions. stack=Action for building a package's library and executables. If  taskAllInOne is V9, then this will also build benchmarks and tests. It is S when the library's benchmarks or test-suites have cyclic dependencies. stackTask for building the package's benchmarks and test-suites. Requires that the library was already built. stack+Task for running the package's test-suites. stack*Task for running the package's benchmarks."stackType representing exceptions thrown by functions exported by the Control.Concurrent.Execute module."stackSort actions such that those that can't be run concurrently are at the end. stackthreadsstack$keep going after one task has failedstackprogress updated   Safe-Inferred8   Safe-Inferred" stack;Which packages do ghc-options on the command line apply to? stackall local targets stack$all local packages, even non-targets stack every package   Safe-Inferred"F stackWhich packages do all and any --PROG-option options on the command line apply to? stack$All local packages that are targets. stack*All local packages (targets or otherwise). stack"All packages (local or otherwise).   Safe-Inferred"%&/ stackOptions for the  FinalAction  DoBenchmarks stack)Arguments passed to the benchmark program stackDisable running of benchmarks stackHaddock Options stack#Arguments passed to haddock program stackOptions for the  FinalAction DoTests stack)Whether successful tests will be run gain stack$Arguments passed to the test program stackGenerate a code coverage report stackDisable running of tests stacktest suite timeout in seconds stackWhether to allow standard input stack!Which subset of packages to build stackOnly install packages in the snapshot database, skipping packages intended for the local database. stack8Refuse to build anything in the snapshot database, see 6https://github.com/commercialhaskell/stack/issues/5272 stackBuild options that may be specified in the stack.yaml or from the CLI stack+Command sum type for conditional arguments. stack5Build options that may only be specified from the CLI stackHow to apply a CLI flag stackApply to all project packages which have such a flag name available. stack$Apply to the specified package only. stackBuild options that is interpreted by the build command. This is built up from BuildOptsCLI and BuildOptsMonoid stackBuild haddocks? stackOptions to pass to haddock stackOpen haddocks in the browser? stack Build haddocks for dependencies? stack3Build haddocks for all symbols and packages, like cabal haddock --internal stack2Build hyperlinked source if possible. Fallback to hscolour. Disable for no sources. stack0Install executables to user path after building? stack:Install executables to compiler tools path after building? stackFetch all packages immediately ^ Watch files for changes and automatically rebuildstack#Keep building/running after failurestack-Keep intermediate files and build directoriesstack7Force treating all local packages as having dirty filesstackTurn on tests for local targetsstackAdditional test argumentsstack$Turn on benchmarks for local targetsstackAdditional test arguments ^ Commands (with arguments) to run after a successful build ^ Only perform the configure step when buildingstack5Perform the configure step even if already configuredstack%Ask Cabal to be verbose in its buildsstackWhether to enable split-objs.stack&Which components to skip when buildingstackShould we use the interleaved GHC output when building multiple packages?stackFormat of the progress barstackOnly flags set via  stack"Generate a list of --PROG-option=" argument" arguments for all PROGs.stack&Parse ProgressBarFormat from a String.                   Safe-Inferredpstack+Parser for test arguments. FIXME hide args Safe-InferredstackParser for package:[-]flag Safe-InferredstackParser for haddock arguments. Safe-Inferred"~stack1Parser for bench arguments. FIXME hiding options Safe-Inferred%&stack#Interprets BuildOptsMonoid options.  Safe-Inferred"stack*Which packages do configure opts apply to?stackSee AGOTargetsstack See AGOLocalsstackSee AGOEverythingstackA specific package! Safe-Inferred"%&stackAn uninterpreted representation of Casa configuration options. Configurations may be "cascaded" using mappend (left-biased)."stack'Casa configuration enable setting name."stack2Casa configuration repository prefix setting name."stack9Casa configuration maximum keys per request setting name.stack/Left-biased combine Casa configurations optionsstack.Left-biased combine Casa configuration optionsstack?Decode uninterpreted Casa configuration options from JSON/YAML." Safe-Inferred"=# Safe-Inferred5stack,The default adopts the standard proposed at  http://no-color.org/,3 that color should not be added by default if the NO_COLOR" environment variable is present.$ Safe-Inferredstack#Descriptive name for compiler buildstackSuffix to use for filenames/directories constructed with compiler buildstack#Parse compiler build from a String.% Safe-InferredostackGHC build parser& Safe-Inferred"VstackExtra configuration intended exclusively for usage by the curator tool. In other words, this is not part of the documented and exposed Stack API. SUBJECT TO CHANGE.' Safe-InferredstackDocker host user infostackuidstackgidstackSupplemental groupsstackFile creation mask }stackData passed into Docker container for the Docker entrypoint's usestackUIDGIDetc of host user, if we wish to perform UID/GID switch in container  ( Safe-Inferred"stackBuild of the compiler distribution (e.g. standard, gmp4, tinfo6) | Information for a file to download.stackURL or absolute file pathstack"Parse JSON in existing object for ) Safe-Inferred"stackWhich build log files to dumpstackdon't dump any logfilesstack!dump logfiles containing warningsstackdump all logfiles* Safe-Inferredstack1Controls which version of the environment is usedstack:include local project bin directory, GHC_PACKAGE_PATH, etcstack%include the GHC_PACKAGE_PATH variablestack9set the STACK_EXE variable to the current executable namestackset the locale to C.UTF-8stack,if True, keep GHCRTS variable in environmentstackDefault  EnvSettings, which includes locals and GHC_PACKAGE_PATH.Note that this also passes through the GHCRTS environment variable. See 6https://github.com/commercialhaskell/stack/issues/3444stack;Environment settings which do not embellish the environmentNote that this also passes through the GHCRTS environment variable. See 6https://github.com/commercialhaskell/stack/issues/3444  + Safe-InferredQ Safe-Inferred#stack5Type synonym representing caches of digests of files.###, Safe-Inferred"- Safe-Inferred stack4Class for environment values which have a GHCVariantstack;Specialized variant of GHC (e.g. libgmp4 or integer-simple)stackStandard bindiststack Bindist that uses integer-simplestack8Bindist that uses the Haskell-native big-integer backendstackOther bindistsstack!Render a GHC variant to a String.stack(Render a GHC variant to a String suffix.stack Parse GHC variant from a String.  . Safe-InferredfstackGHC variant parser/ Safe-Inferred"ɑ0 Safe-Inferred1 Safe-Inferred)stackA ghc-pkg package identifier.#stack A parse fail.stack.Convenient way to parse a package name from a .stack)A parser for a package-version-hash pair.stack.Get a string representation of GHC package id.stack"Get a text value of GHC package id2 Safe-InferredstackType representing dump information for a single package, as output by the ghc-pkg describe command.stackThe id field.stackThe name and version fields. The name field is the munged package name. If the package is not for a sub library, its munged name is its name.stackThe  package-name and version fields, if  package-name is present. That field is present if the package is for a sub library.stackThe  library-dirs field.stackThe  hs-libraries field.stackThe depends0 field (packages on which this package depends).3 Safe-Inferred"sstackType of config cache4 Safe-Inferredα5 Safe-InferredDstackHow to interact with lock filesstackRead and write lock filesstack&Read lock files, but do not write themstackEntirely ignore lock filesstackError out on trying to write a lock file. This can be used to ensure that lock files in a repository already ensure reproducible builds.stack Parser for 6 Safe-Inferred"пstack/A single, fully resolved component of a package7 Safe-Inferred"%&stackAn uninterpreted representation of nix options. Configurations may be "cascaded" using mappend (left-biased).stackIs using nix-shell enabled?stackShould the nix-shell be purestack+System packages to use (given to nix-shell)stackThe path of a file containing preconfiguration of the environment (e.g shell.nix)stack1Options to be given to the nix-shell command linestack$Override parts of NIX_PATH (notably nixpkgs)stackShould we register gc roots so running nix-collect-garbage doesn't remove nix dependenciesstackNix configuration. Parameterize by resolver type to avoid cyclic dependency.stackThe system packages to be installed in the environment before it runsstackThe path of a file containing preconfiguration of the environment (e.g shell.nix)stack1Options to be given to the nix-shell command linestackShould we register gc roots so running nix-collect-garbage doesn't remove nix dependenciesstackNix enable argument name.stack$Nix run in pure shell argument name.stack*Nix packages (build inputs) argument name.stack"shell.nix file path argument name.stack6Extra options for the nix-shell command argument name.stackNIX_PATH override argument namestackAdd GC roots arg namestackLeft-biased combine Nix optionsstackLeft-biased combine Nix optionsstack0Decode uninterpreted nix options from JSON/YAML.8 Safe-Inferredstack9An argument which accepts a template name of the format  foo.hsfiles.9 Safe-Inferred'stack2Class for environment values which have a PlatformstackA variant of the platform, used to differentiate Docker builds from hoststack-Render a platform variant to a String suffix.stack.Relative directory for the platform identifier: Safe-Inferred"ܵ stackA project is a collection of packages. We can have multiple stack.yaml files, but only one of them may contain project information.stackA warning message to display to the user when the auto generated config may have issues.stackPackages which are actually part of the project (as opposed to dependencies).stackDependencies defined within the stack.yaml file, to be applied on top of the snapshot.stack1Flags to be applied on top of the snapshot flags.stackHow we resolve which Snapshot to usestackOverride the compiler in stackExtra configuration intended exclusively for usage by the curator tool. In other words, this is not part of the documented and exposed Stack API. SUBJECT TO CHANGE.stackPackages to drop from the .  ; Safe-InferredstackProject configuration information. Not every run of Stack has a true local project; see constructors below.stackNormal run: we want a project, and have one. This comes from either  SYLDefault or  SYLOverride.stack No project was found when using  SYLDefault$. Instead, use the implicit global.stack&Use a no project run. This comes from  SYLNoProject.stackYields V only if the project configuration information is for the implicit global project.< Safe-Inferred"ߊstack.How PVP bounds should be added to .cabal files  = Safe-Inferred")1 stack=Most recent Nightly and newest LTS version per major release.stackEither an actual resolver value, or an abstract description of one (e.g., latest nightly).#stackType representing exceptions thrown by functions exported by the Stack.Types.Resolver module.  > Safe-Inferred1stackParser for the resolver? Safe-Inferred"stackA software control system.@ Safe-Inferred~stack+Location for the project's stack.yaml file.stack0Use the standard parent-directory-checking logicstack'Use a specific stack.yaml file providedstackDo not load up a project, just user configuration. Include the given extra dependencies with the resolver.stackDo not look for a project configuration, and use the implicit global.A Safe-Inferred"stackA bit of type safety to ensure we're talking to the right database.stackA bit of type safety to ensure we're talking to the right database.stackType representing 'pretty' exceptions thrown by functions exported by modules beginning  Stack.Storage.B Safe-Inferred)stack=Efficiently update a set of values stored in a database tablestack?Efficiently update a list of values stored in a database table.C Safe-Inferred"stackServices from which templates can be retrieved from a repository.stack8Details for how to access a template from a remote repo.stack"an absolute path on the filesystemstacka relative path on the filesystem, or relative to the template repository. To avoid path separator conversion on Windows, the raw command-line parameter passed is also given as the first field (possibly with .hsfiles appended).stack a full URLstackA template name.#stackType representing exceptions thrown by functions exported by the Stack.Types.TemplateName module.stack8An argument which accepts a template name of the format  foo.hsfiles or foo, ultimately normalized to foo.stackAn argument which accepts a  key:value pair for specifying parameters.stack$Parse a template name from a string.stack