úÎ*˜&§>      !"#$%&'()*+,-./0123456789:;<=Safe >?@ABCDEFGHIJ?EFGHIJ >?@ABCDEFGHIJNonePackagesModulesRequired runhaskell arguments6Extra lines to add to the generated module's top-levelThe Haskell expression  Evaluate an =; this is where the magic happens! If successful, returns K a L&, which you can do what you like with.Same as  Š, but allows a custom formatting function to be supplied, eg. if you want an alternative to the default "main = putStr (..)" behaviour.vRuns the given command, piping the given String into stdin, returning stdout and the ExitCode. stderr is inherited.sConstruct the nix-shell command. We use wrapper.sh as a layer of indirection, to work around buggy environments.€Creates a Nix expression which will use ghcEnvWithPkgs.nix to make a Haskell environment containing all of the given packages‰This creates a name for our Haskell environment. We make it here once, and pass it into both Nix and wrapper.sh, to ensure consistencyxCheck if all of the required packages are already available, i.e. whether we need to create a new Haskell environment ˆDo we need to create a new Haskell environment, because we don't have GHC available or because the packages we need aren't available?"DTurn an expression into a Haskell module, complete with imports and main#%Strip leading and trailing whitespace$%Check if a shell command is available% Check if the  `nix-shell`# command is available via the shell& Check if the  `ghc-pkg`# command is available via the shell'wA raw String of Haskell code, with no packages or modules. You can use OverloadedStrings to call this automatically.(:Apply the first Expr to the second, eg. `f $$ x` ==> `f x`)/Convert the argument to a String, then send to '*&Qualify an expression, eg. `qualified  Data.Bool "not"` gives the expression  with  Data.Bool in its module list+)Append modules to an expression's context,*Append packages to an expression's context-+Append arguments to an expression's context4  !"#$%&'()*+,-./0123/  !"#$%&'()*+,-.4 3210/  !"#$%&'()*+,-.+    !"#$%&'()*+,-./0123(8None '()*+,-.  '()*+,-.M        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOMNPQ'nix-eval-0.3.3.0-AQfoWSKr6WICNzos6mK0K9Language.Eval.InternalPaths_nix_eval Data.Boolnot Language.EvalExprePkgseModseFlags ePreambleeExprFlagModPkgevaleval' runCmdStdIO buildInput decideCmdbuildCmd noShellCmdflagsOf hPutContentsmkCmdpkgOfcmdLine shellEscapewrapCmd' wrapperPathghcEnvWithPkgsPathmkGhcPkg pkgsToNamehavePkgs needNewEnvmkImportmkHstrim haveCommandhaveNix haveGhcPkgraw$$asString qualifiedwithModswithPkgs withFlags withPreamble$fIsStringFlag $fIsStringMod $fIsStringPkg$fIsStringExpr$fEqExpr$fEqPkg$fOrdPkg $fShowPkg$fEqMod$fOrdMod $fShowMod$fEqFlag $fOrdFlag $fShowFlag $fShowExprcatchIOversionbindirlibdirdatadir libexecdir sysconfdir getBinDir getLibDir getDataDir getLibexecDir getSysconfDirgetDataFileNamebaseGHC.BaseJustString