9      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                              Safe{ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Safe The free monoid on a semigroup a.Given a semigroup structure on a), return a monoid structure on 'Chunk a'.Note that this is not the same as ."Concatenate a list into a Chunk.  satisfies: >isEmpty . listToChunk = null listToChunk = mconcat . fmap pure 'Part of a constrained comonad instance.-This is the counit of the adjunction between F and the forgetful functor from monoids to semigroups. It satisfies: 6extractChunk . pure = id extractChunk . fmap pure = id Concatenate two Ns with a space in between. If one is empty, this just returns the other one.Unlike  for 7, this operation has a unit element, namely the empty . Concatenate two 5s with a softline in between. This is exactly like  ), but uses a softline instead of a space.  Concatenate  s vertically.  Concatenate &s vertically separated by empty lines. Whether a q is empty. Note that something like 'pure mempty' is not considered an empty chunk, even though the underlying  is empty. Convert a  into a . This satisfies: @isEmpty . stringChunk = null extractChunk . stringChunk = stringConvert a paragraph into a . The resulting chunk is composed by the words of the original paragraph separated by softlines, so it will be automatically word-wrapped when rendering the underlying document.This satisfies: "isEmpty . paragraph = null . words$Display pairs of strings in a table.     SafeConvert a help text to . Safe;IN%& Result of execParserPure.6A Parser a/ is an option parser returning a value of type a.<An << defines whether an option matches an command line argument.= option reader> flag reader?argument reader@command readerE?A newtype over 'ReaderT String Except', used by option readers.HA single option of a parser.Jreader for this optionKproperties of this optionL.Specification for an individual parser option.N3whether this flag is shown is the brief descriptionOhelp text for this optionPmetavariable for this optionQ,what to show in the help text as the defaultR)Visibility of an option in the help text.S'does not appear in the help text at allT$only visible in the full descriptionU/visible both in the full and brief descriptionsY#Global preferences for a top-level 6.[#metavar suffix for multiple options\:automatically disambiguate abbreviations (default: False)]7always show help text on parse errors (default: False)^Cbacktrack to parent parser when a subcommand fails (default: True)_Nnumber of columns in the terminal, used to format the help page (default: 80)`"A full description for a runnable 6 for a program.b!the option parser for the programc8whether the help text should contain full documentationdbrief parser descriptione%header of the full parser descriptionf%footer of the full parser descriptiongexit code for a parser failurehIallow regular options and flags to occur after arguments (default: True)oReturn the value being read.p&Abort option reader by exiting with a i.q5Abort option reader by exiting with an error message.z !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{i !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{iijklmn`abcdefghYZ[\]^_HIJKVWX<=>?@LMNOPQRSTUEFGopqABCD6789:;345012v-./*+,&'()w%"#$ !rstuxzy{9 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{Safe;NJ|}~&ijklmn|}~&ijklmn~}|4|}~Safe0v0vSafeINStyle for rendering an option.,Create a parser composed of a single option.Apply a 6 to a command line, and return a result and leftover arguments. This function returns an error if any parsing error occurs, or if any options are missing and don't have a default value.The default value of a 6T. This function returns an error if any of the options don't have a default value.`Map a polymorphic function over all the options of a parser, and collect the results in a list.Like ., but collect the results in a tree structure.)Generate description for a single option.# 6YZ[\]^_`abcdefgh 6`abcdefghYZ[\]^_ SafeAn option modifier.ZOption modifiers are values that represent a modification of the properties of an option.The type parameter a) is the return type of the option, while f. is a record containing its properties (e.g.  for regular options,  for flags, etc...).*An option modifier consists of 3 elements:A field modifier, of the form  f a -> f a\. These are essentially (compositions of) setters for some of the properties supported by f.5An optional default value and function to display it.!A property modifier, of the form OptProperties -> OptPropertiesX. This is just like the field modifier, but for properties applicable to any option.Modifiers are instances of , and can be composed as such.zYou rarely need to deal with modifiers directly, as most of the times it is sufficient to pass them to builders (such as  strOption or flag) to create options (see ).Base default properties.#Hide this option from the help text.!!Safe+ Modifier for `.H reader based on the   type class.String H reader.Null H, reader. All arguments will fail validation.#Specify a short name for an option."Specify a long name for an option.&Specify a default value for an option.Noteb: Because this modifier means the parser will never fail, do not use it with combinators such as some or manyb, as these combinators continue until a failure occurs. Careless use will thus result in a hang.;Specify a function to show the default value for an option.1Show the default value for this option using its   instance.$Specify the help text for an option.)Specify the help text for an option as a  value.Convert a function in the   monad to a reader.ISpecify the error to display when no argument is provided to this option.(Specify a metavariable for the argument.Metavariables have no effect on the actual parser, and only serve to specify the symbolic name for an argument to be displayed in the help text.,Hide this option from the brief description.$Add a command to a subparser option.)Add a list of possible completion values.5Add a bash completion action. Common actions include file and  directory. See  xhttp://www.gnu.org/software/bash/manual/html_node/Programmable-Completion-Builtins.html#Programmable-Completion-Builtins for a complete list.Add a completer to an argument.A completer is a function String -> IO String which, given a partial argument, returns all possible completions for that argument."Builder for a command parser. The 6 modifier can be used to specify individual commands.Builder for an argument parser.Builder for a  argument.Builder for a flag parser.tA flag that switches from a "default value" to an "active value" when encountered. For a simple boolean value, use  instead.2Builder for a flag parser without a default value.Same as _, but with no default value. In particular, this flag will never parse successfully by itself.IIt still makes sense to use it as part of a composite parser. For example &length <$> many (flag' () (short 't'))Iis a parser that counts the number of "-t" arguments on the command line.Builder for a boolean flag. switch = flag False TrueAn option that always fails.When this option is encountered, the option parser immediately aborts with the given parse error. If you simply want to output a message, use  instead.3An option that always fails and displays a message.Builder for an option taking a  argument.Same as .-Builder for an option using the given reader.8Show a full description in the help text of this parser.>Only show a brief description in the help text of this parser.!Specify a header for this parser.&Specify a header for this parser as a  value.!Specify a footer for this parser.&Specify a footer for this parser as a  value.$Specify a short program description.)Specify a short program description as a  value.-Specify an exit code if a parse error occurs.2Disable parsing of regular options after arguments Create a ` given a 6 and a modifier.Trivial option modifier.Default preferences.8   default value active valueoption modifier active valueoption modifierCEijklmnpqCijklmnpqE4   Safe Safe#Generate descriptions for commands.(Generate a brief help text for a parser.'Generate a full help text for a parser. %Generate the help text for a program. Generate option summary.                 Safe !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     SafeIN  ,A hidden "helper" option which always fails.WBuilder for a command parser with a "helper" option attached. Used in the same way as 4, but includes a "--help|-h" inside the subcommand.Run a program description.TParse command line arguments. Display help text and exit if any parse error occurs.2Run a program description with custom preferences.Handle &.!Extract the actual result from a & value.This function returns Y in case of errors. Possible error messages or completion actions are simply discarded.XIf you want to display error messages and invoke completion actions appropriately, use  instead.'Run a program description in pure code.This function behaves like ~, but can be called from pure code. Note that, in case of errors, no message is displayed, and this function simply returns .1If you need to keep track of error messages, use  instead.?Run a program description with custom preferences in pure code.See  for details.?The most general way to run a program description in pure code. Generate a * from a i in a given .KThis function can be used, for example, to show the help text for a parser: LhandleParseResult . Failure $ parserFailure pprefs pinfo ShowHelpText mempty  "Global preferences for this parser!Description of the program to runProgram arguments&'()*+,-./YZ[\]^_w  *+,w&'()YZ[\]^_-./  Safe !"#$%&'()*+,-./0&'()*+,-./06EYZ[\]^_`abcdefghijklmnpqvw  Safe1The type of arrows associated to the applicative 6 functor.For any  functor f, A f is the 1 instance associated to f.The 4 constructor can be used to convert a value of type  f (a -> b) into an arrow.Convert a value of type f a into an arrow taking () as argument.Applied to a value of type 6f, it turns it into an arrow that can be used inside an arrow command, or passed to arrow combinators..Convert an arrow back to an applicative value.5This function can be used to return a result of type 6 from an arrow command.23&456789:;<=>?@A1BCDEFGHIJKLMNOPQR23S !"#$%&''()*+,-./01223456789:;<==>??@AABCCDEFGHIJKKLMNOOPQRRSTTUVWWXYZ[\]^_`abccdefghiijklmnopqrstuvwxyz{|}~                                             !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                    !"#$%Q&'( ) *'+','-'.'/'0'1'2'3'4'5'6'7'8'9':':';'<'|'='>'?'@'A'B'C'C'DEFEGHoptpa_IRzvgA8DI9gBDOXQ6QObL3Options.Applicative.BuilderOptions.Applicative.Help.PrettyOptions.Applicative.Help.ChunkOptions.Applicative.Help.TypesOptions.Applicative.TypesOptions.Applicative.Internal%Options.Applicative.Builder.CompleterOptions.Applicative.Common$Options.Applicative.Builder.Internal"Options.Applicative.BashCompletionOptions.Applicative.Help.CoreOptions.Applicative.ExtraOptions.Applicative.ArrowsOptions.ApplicativeBuilderText.PrettyPrint.ANSI.LeijenDocOptions.Applicative.Helpbase Data.Monoid<>GHC.Basemappend.$.ChunkunChunk mappendWithchunked listToChunk extractChunk<<+>><> vcatChunks vsepChunksisEmpty stringChunk paragraphtabulate ParserHelp helpError helpHeader helpUsagehelpBody helpFooter renderHelpOptTreeLeafMultNodeAltNode OptHelpInfo hinfoMulti hinfoDefault ArgPolicySkipOpts AllowOptsArgs ParserResultSuccessFailureCompletionInvoked ParserFailure execFailureCompletionResultexecCompletion Completer runCompleterParserM runParserMParserNilPOptPMultPAltPBindP OptReader FlagReader ArgReader CmdReaderCReader crCompletercrReaderReadMunReadMOptionoptMainoptProps OptPropertiespropVisibilitypropHelp propMetaVarpropShowDefault OptVisibilityInternalHiddenVisibleOptNameOptShortOptLong ParserPrefsprefMultiSuffixprefDisambiguateprefShowHelpOnError prefBacktrack prefColumns ParserInfo infoParser infoFullDesc infoProgDesc infoHeader infoFooterinfoFailureCodeinfoIntersperse ParseErrorErrorMsgInfoMsg ShowHelpText UnknownError MissingError readerAsk readerAbort readerErrorfromMoneMmanyMsomeM mkCompleter overFailure optVisibilityoptHelp optMetaVaroptShowDefaultNondetTListT Completion ComplErrorComplParseError ComplExit SomeParserContextPMonadP enterContext exitContextgetPrefs missingArgPtryPerrorPexitP contextNames hoistMaybe hoistEitherrunPunconsrunReadM withReadM runCompletion takeListTrunListTcutdisamblistIOCompleter listCompleter bashCompleter OptDescStyledescSep descHidden descSurround showOption optionNamesliftOpt runParser runParserInforunParserFully evalParser mapParser treeMapParseroptDescMod DefaultProp HasMetavarHasValue HasCompleter modCompleterHasNamenameArgumentFields argCompleter CommandFields cmdCommands FlagFields flagNames flagActive OptionFieldsoptNames optCompleter optNoArgError optionModfieldMod baseProps mkCommandmkParsermkOptionmkPropsinternalPrefsModInfoModautostrdisabledshortlongvalueshowDefaultWith showDefaulthelphelpDoc eitherReader noArgErrormetavarhiddencommand completeWithaction completer subparserargument strArgumentflagflag'switch abortOption infoOption strOption nullOptionoptionfullDesc briefDescheader headerDocfooter footerDocprogDesc progDescDoc failureCode noIntersperseinfo multiSuffix disambiguateshowHelpOnError noBacktrackcolumnsprefsidm defaultPrefsbashCompletionParsercmdDesc fold_tree errorHelp headerHelp usageHelpbodyHelp footerHelp parserHelp parserUsagehelper hsubparser execParsercustomExecParserhandleParseResultgetParseResultexecParserMaybecustomExecParserMaybeexecParserPure parserFailure renderFailureParserAAunAasArunAansiw_KPlSW7tbqXS51Lj59n3FC4hPutDocputDoc displayIOdisplayS renderCompact renderSmart renderPrettyplain deunderline underlinedeboldbold ondullwhiteonwhite ondullcyanoncyan ondullmagenta onmagenta ondullblueonblue ondullyellowonyellow ondullgreenongreen ondullredonred ondullblackonblack dullwhitewhitedullcyancyan dullmagentamagentadullblueblue dullyellowyellow dullgreengreendullredred dullblackblackflatAltgroupnestingcolumnnesthardline linebreaklinetextcharemptyalignhangindentwidthfill fillBreakrationaldoublefloatintegerintboolstringequals backslashdotspacecommacolonsemidquotesquoterbracketlbracketrbracelbraceranglelanglerparenlparenenclosebracketsanglesparensbracesdquotessquotes softbreaksoftline<$$><+>vcathcatfillCatcatvsephsepfillSepsep punctuate encloseSep semiBracestupledlist prettyListprettyPrettySSGRSLineSTextSCharSEmptySFail SimpleDocliftA2String tabulate' $fMonoidChunk$fMonadPlusChunk $fMonadChunk$fAlternativeChunk$fApplicativeChunk$fFunctorChunkhelpText$fMonoidParserHelp$fShowParserHelp$fMonadParserResult$fApplicativeParserResult$fFunctorParserResult$fFunctorParserFailure$fShowParserFailure$fShowCompletionResult$fMonoidCompleter$fAlternativeParser$fApplicativeParserM$fFunctorParserM$fMonadParserM$fApplicativeParser$fFunctorParser$fFunctorOptReader$fFunctorCReader$fMonadPlusReadM $fMonadReadM$fAlternativeReadM$fApplicativeReadM$fFunctorReadM$fFunctorOption $fShowOption$fFunctorParserInfo$fMonoidParseError runNondetTTStepTNilTCons stepListT ComplResult ComplParser ComplOption bimapTStep hoistList$fMonadTransNondetT$fAlternativeNondetT$fMonadPlusNondetT$fMonadNondetT$fApplicativeNondetT$fFunctorNondetT$fMonadPlusListT$fMonadTransListT$fAlternativeListT $fMonadListT$fApplicativeListT$fFunctorListT$fMonadPCompletion$fMonadPlusCompletion$fMonadCompletion$fAlternativeCompletion$fApplicativeCompletion$fFunctorCompletion$fMonadComplResult$fApplicativeComplResult$fFunctorComplResult $fMonadPP $fMonadPlusP$fMonadP$fAlternativeP$fApplicativeP $fFunctorPtryIOOptWord MatchResultNoMatchMatchisOptionPrefix argMatches optMatchesisArg parseWord searchParser searchOpt searchArg stepParser parseError getPolicysimplify missingStyle maybeToEither$fMonoidMatchResultMonoidhasMetavarDummy hasValueDummy $fMonoidMod$fMonoidDefaultProp$fHasMetavarCommandFields$fHasMetavarArgumentFields$fHasMetavarOptionFields$fHasValueArgumentFields$fHasValueOptionFields$fHasCompleterArgumentFields$fHasCompleterOptionFields$fHasNameFlagFields$fHasNameOptionFieldsGHC.ReadReadGHC.ShowShow Data.EitherEither applyPrefsMod applyInfoMod$fMonoidPrefsMod$fMonoidInfoModbashCompletionQuerybashCompletionScriptNothing<*>pure ApplicativeControl.ApplicativeoptionalgetConstConst unwrapMonad WrapMonad WrappedMonad unwrapArrow WrapArrow WrappedArrow getZipListZipList Data.Functor<$>liftA3liftA<**><$<**>manysome<|> Alternative Control.ArrowArrow$fArrowA $fCategory*Aarrfirstapp|||loopleftApp^<<<<^>>^^>>returnA&&&***second runKleisliKleisli zeroArrow ArrowZero ArrowPlus+++rightleft ArrowChoice ArrowApply ArrowMonad ArrowLoopControl.Category>>><<<