h&vR      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                  !!!!!!!!!""######$$%%%%%%&&&&&&&&&&&&' Safe-InferredaRhledgerConsistent converter to structure with sensitive data anonymizedShledger+Anonymize account name preserving hierarchyQRSQRS Safe-Inferred" ThledgerThe main hledger manuals as source for man, info and as plain text. Only files under the current package directory can be embedded, so some of these are symlinked from the other package directories.hledgerGet the manual as plain text for this tool, or a not found message.hledgerGet the manual as man source (nroff) for this tool, or a not found message.hledgerGet the manual as info source (texinfo) for this tool, or a not found message.YhledgerPrint plain text help for this tool. Takes an optional topic argument for convenience but it is currently ignored.ZhledgerDisplay plain text help for this tool, scrolled to the given topic if provided, using the given pager executable. Note when a topic is provided we ignore the provided pager and use the "less" executable in $PATH.[hledgerDisplay a man page for this tool, scrolled to the given topic if provided, using the "man" executable in $PATH. Note when a topic is provided we force man to use the "less" executable in $PATH, ignoring $MANPAGER and $PAGER.\hledgerDisplay an info manual for this topic, opened at the given topic if provided, using the "info" executable in $PATH.XYZ[\XY[\Z Safe-Inferred`hledgerThe "1.27" string defined with -D in this package's package.yaml/.cabal file (by Shake setversion), if any. Normally a dotted number string with 1-3 components.ahledger+The name of this package's main executable.bhledgerGiven possible git state info from the build directory (or an error message, which is ignored), the name of a program (executable) in the currently building package, and the package's version, make a complete version string. Here is the logic:3Program name, OS and architecture are always shown.$The package version is always shown.If there is git info at build time, the latest commit hash and commit date are shown.(TODO, requires adding --match support to githash: If there are tags matching THISPKG-[0-9]*, the latest one is used to calculate patch level (number of commits since tag), and if non-zero, it and the branch name are shown.)Some example outputs:A homebrew binary, not built in git repo: hledger-ui 1.24, mac-aarch64A CI release build, built in git repo at release tag: hledger-ui 1.24.1-g455b35293-20211210, mac-x86_64(TODO) A dev build, built in git repo: hledger-ui 1.24.1+1-g4abd8ef10-20211210 (1.24-branch), mac-x86_64This function requires git log to show the default (rfc2822-style) date format, so that must not be overridden by a log.date git config variable.]^_`ab_^]`ab Safe-Inferred "-"chledger"Command line options, used in the hledger package and above. This is the "opts" used throughout hledger CLI code. representing the options and arguments that were provided at startup on the command-line.lhledgerdebug level, set by  --debug[=N] . See also '(.nhledger"the --width value provided, if anyohledgerestimated usable screen width, based on 1. the COLUMNS env var, if set 2. the width reported by the terminal, if supported 3. the default (80)qhledgerA command's documentation. Used both as part of CLI help, and as part of the hledger manual. See parseCommandDoc.rhledger0Common help flags: --help, --debug, --version...shledger.A hidden flag just for the hledger executable.thledgerCommon output-related flags: --output-file, --output-format...~hledgerAn empty cmdargs mode to use as a template. Modes describe the top-level command, ie the program, or a subcommand, telling cmdargs how to parse a command line and how to generate the command's usage text.hledgerA cmdargs mode suitable for a hledger built-in command with the given names (primary name + optional aliases). The usage message shows [QUERY] as argument.hledgerA cmdargs mode representing the hledger add-on command with the given name, providing hledger's common input reporting,help flags. Just used when invoking addons.hledgerBuild a cmdarg mode for a hledger command, from a help template and flag/argument specifications. Reduces boilerplate a little, though the complicated cmdargs flag and argument specs are still required.hledger,Parse a command's documentation, as follows:First line: the command name then any aliases, as one or more space or comma-separated wordsSecond line to a line containing just _FLAGS, or the end: the short helpAny lines after _FLAGS: the long help (split into lines for cmdargs)The CLI help displays the short help, then the cmdargs-generated flags list, then the long help (which some day we might make optional again). The manual displays the short help followed by the long help, with no flags list.hledger6Get a mode's usage message as a nicely wrapped string.hledgerGet the most appropriate documentation topic for a mode. Currently, that is either the hledger, hledger-ui or hledger-web manual.hledger1Add command aliases to the command's help string.hledgerDefault width for hledger console output, when not otherwise specified.hledgerReplace any numeric flags (eg -2) with their long form (--depth 2), as I'm guessing cmdargs doesn't support this directly.hledgerParse raw option string values to the desired final data types. Any relative smart dates will be converted to fixed dates based on today's date. Parsing failures will raise an error. Also records the terminal width, if supported.hledgerA helper for addon commands: this parses options and arguments from the current command line using the given hledger-style cmdargs mode, and returns a CliOpts. Or, with --help or -h present, it prints long or short help, and exits the program. When --debug is present, also prints some debug output. Note this is not used by the main hledger executable.The help texts are generated from the mode. Long help includes the full usage description generated by cmdargs (including all supported options), framed by whatever pre- and postamble text the mode specifies. It's intended that this forms a complete help document or manual.Short help is a truncated version of the above: the preamble and the first part of the usage, up to the first line containing "flags:" (normally this marks the start of the common hledger flags); plus a mention of --help and the (presumed supported) common hledger options not displayed.Tips: Empty lines in the pre/postamble are removed by cmdargs; add a space character to preserve them.hledgerGet the (tilde-expanded, absolute) journal file path from 1. options, 2. an environment variable, or 3. the default. Actually, returns one or more file paths. There will be more than one if multiple -f options were provided. File paths can have a READER: prefix naming a reader/data format.hledgerGet the expanded, absolute output file path specified by an -o/--output-file options, or nothing, meaning stdout.hledgerGet the output format from the --output-format option, otherwise from a recognised file extension in the --output-file option, otherwise the default (txt).hledgerGet the last file extension, without the dot, from a file path. May return the null string.hledger>Get the (tilde-expanded) rules file path from options, if any.hledgerGet the width in characters to use for console output. This comes from the --width option, or the COLUMNS environment variable, or (on posix platforms) the current terminal width, or 80. Will raise a parse error for a malformed --width argument.hledgerGet the width in characters to use for the register command's console output, and also the description column width if specified (following the main width, comma-separated). The widths will be as follows:  no --width flag - overall width is the available width (COLUMNS, or posix terminal width, or 80); description width is unspecified (auto) --width W - overall width is W, description width is auto --width W,D - overall width is W, description width is D < Will raise a parse error for a malformed --width argument.hledgerGet the sorted unique canonical names of hledger addon commands found in the current user's PATH. These are used in command line parsing and to display the commands list.Canonical addon names are the filenames of hledger-* executables in PATH, without the "hledger-" prefix, and without the file extension except when it's needed for disambiguation (see below).When there are exactly two versions of an executable (same base name, different extensions) that look like a source and compiled pair (one has .exe, .com, or no extension), the source version will be excluded (even if it happens to be newer). When there are three or more versions (or two versions that don't look like a source/compiled pair), they are all included, with file extensions intact.hledgerGet all sorted unique filenames in the current user's PATH. We do not currently filter out non-file objects or files without execute permission.hledgerGet the sorted unique filenames of all hledger-* executables in the current user's PATH. These are files in any of the PATH directories, named hledger-*, with either no extension (and no periods in the name) or one of the addonExtensions. We do not currently filter out non-file objects or files without execute permission.cdfneghijklmopqrstuvwxyz{|}~rsvwtuxy{|}~zcdfneghijklmopq Safe-Inferred"%&;hledgerStandard error message for a bad output format specified with -O/-o.hledgerParse the user's specified journal file(s) as a Journal, maybe apply some transformations according to options, and run a hledger command with it. Or, throw an error.hledgerApply some extra post-parse transformations to the journal, if specified by options. These happen after journal validation, but before report calculation. They include:)adding forecast transactions (--forecast) pivoting account names (--pivot)anonymising (--anonymise).This will return an error message if the query in any auto posting rule fails to parse, or the generated transactions are not balanced.hledgerApply the pivot transformation on a journal, if option is present.hledgerApply the anonymisation transformation on a journal, if option is presenthledgerWrite some output to stdout or to a file selected by --output-file. If the file exists it will be overwritten.hledgerWrite some output to stdout or to a file selected by --output-file. If the file exists it will be overwritten. This function operates on Lazy Text values.hledgerRe-read the option-specified journal file(s), but only if any of them has changed since last read. (If the file is standard input, this will either do nothing or give an error, not tested yet). Returns a journal or error message, and a flag indicating whether it was re-read or not. Like withJournalDo and journalReload, reads the full journal, without filtering.hledgerRe-read the journal file(s) specified by options, applying any transformations specified by options. Or return an error string. Reads the full journal, without filtering.hledgerHas the specified file changed since the journal was last read ? Typically this is one of the journal's journalFilePaths. These are not always real files, so the file's existence is tested first; for non-files the answer is always no.hledger?Get the last modified time of the specified file, if it exists.hledger>Attempt to open a web browser on the given url, all platforms.hledgerBack up this file with a (incrementing) numbered suffix then overwrite it with this new text, or give an error, but only if the text is different from the current file contents, and return a flag indicating whether we did anything.The given text should have unix line endings (n); the existing file content will be normalised to unix line endings before comparing the two. If the file is overwritten, the new file will have the current system's native line endings (n on unix, rn on windows). This could be different from the file's previous line endings, if working with a DOS file on unix or vice-versa.hledgerBack up this file with a (incrementing) numbered suffix, then overwrite it with this new text, or give an error.hledgerBack up this file with a (incrementing) numbered suffix, or give an error.hledgerDoes the second file represent a backup of the first, and if so which version is it ? XXX nasty regex types intruding, add a simpler api to Hledger.Utils.Regexhledger Render a  or  as Text, determining the appropriate starting widths and increasing as necessary. Safe-Inferred"<8  Safe-Inferred"'<hledger)Print various statistics for the journal.  Safe-Inferred"%&<  Safe-Inferred"%&Ahledger"Print a (posting) register report.hledgerRender a register report as plain text suitable for console output.hledgerRender one register report line item as plain text. Layout is like so:   ----------------=width (specified, terminal width, or 80) -------------------- date (10) description account amount (12) balance (12) DDDDDDDDDD dddddddddddddddddddd aaaaaaaaaaaaaaaaaaa AAAAAAAAAAAA AAAAAAAAAAAA  If description's width is specified, account will use the remaining space. Otherwise, description and account divide up the space equally.0With a report interval, the layout is like so:   ----------------=width (specified, terminal width, or 80) -------------------- date (21) account amount (12) balance (12) DDDDDDDDDDDDDDDDDDDDD aaaaaaaaaaaaaaaaaaaaaaaaaaaaa AAAAAAAAAAAA AAAAAAAAAAAA date and description are shown for the first posting of a transaction only.Returns a string which can be multi-line, eg if the running balance has multiple commodities. Does not yet support formatting control like balance reports.Also returns the natural width (without padding) of the amount and balance fields.  Safe-Inferred"ChledgerReturn a similarity measure, from 0 to 1, for two strings. This is Simon White's letter pairs algorithm from  4http://www.catalysoft.com/articles/StrikeAMatch.html( with a modification for short strings.  Safe-Inferred"Dhledger.Print journal transactions in standard format.hledgerGenerate one CSV record per posting, duplicating the common transaction fields. The txnidx field (transaction index) allows postings to be grouped back into transactions.hledgerPrint the transaction most closely and recently matching a description (and the query, if any). Safe-Inferred"(89:EhledgerBuild a  from any query arguments and --add-posting flags provided on the command line, or throw a parse error.hledger.Render list of changed lines as a unified diff Safe-InferredE Safe-Inferred"Ghledger>Invert an amount's price for --invert-cost, somehow ? Unclear.hledgerGiven a map of standard amount display styles, apply the appropriate one, if any, to this price directive's amount. But keep the number of decimal places unchanged. Safe-Inferred"Ghledger&Command line options for this command.hledgerThe payees command. Safe-Inferred"H4hledger&Command line options for this command.hledgerThe notes command. Safe-InferredIyhledgerDisplay the hledger manual in various formats. You can select a docs viewer with one of the `--info`, `--man`, `--pager` flags. Otherwise it will use the first available of: info, man, $PAGER, less, stdout (and always stdout if output is non-interactive). Safe-InferredIhledger&Command line options for this command.hledgerThe files command. Safe-Inferred"Jhledger&Command line options for this command.hledgerThe diff command. Safe-Inferred"Khledger&Command line options for this command.hledgerThe descriptions command. Safe-Inferred"K~hledger&Command line options for this command. Safe-Inferred"'L hledger&Command line options for this command.hledgerThe codes command. Safe-Inferred"L< Safe-Inferred%&'PZhledgerA type of error check that we can perform on the data. Some of these imply other checks that are done first, eg currently Parseable and Balancedwithautoconversion are always done, and Assertions are always done unless -I is in effect.hledgerRegenerate this CliOpts' report specification, after updating its underlying report options with the given update function. This can raise an error if there is a problem eg due to missing or unparseable options data. See also updateReportSpecFromOpts.hledgerParse the name (or a name prefix) of an error check, or return the name unparsed. Check names are conventionally all lower case, but this parses case insensitively.hledgerParse a check argument: a string which is the lower-case name of an error check, or a prefix thereof, followed by zero or more space-separated arguments for that check.hledgerRun the named error check, possibly with some arguments, on this journal with these options. Safe-Inferred "%&'Vhledger&Command line options for this command.hledger-The balance command, prints a balance report.hledger-Render a single-column balance report as CSV.hledger4Render a single-column balance report as plain text.hledgerRender a single-column balance report as plain text in commodity-column modehledgerRender one balance report line item as plain text suitable for console output (or whatever string format is specified). Note, prices will not be rendered, and differently-priced quantities of the same commodity will appear merged. The output will be one or more lines depending on the format and number of commodities.hledgerRender a balance report item using the given StringFormat, generating one or more lines of text.hledgerRender one MultiBalanceReport heading row as a HTML table row.hledger;Render one MultiBalanceReport data row as a HTML table row.hledger=Render one MultiBalanceReport totals row as a HTML table row.hledgerRender a multi-column balance report as plain text suitable for console output.hledgerBuild a $ from a multi-column balance report.PP Safe-Inferred"%&^0 hledgerDescription of a compound balance report command, from which we generate the command's cmdargs mode and IO action. A compound balance report command shows one or more sections/subreports, each with its own title and subtotals row, in a certain order, plus a grand totals row if there's more than one section. Examples are the balancesheet, cashflow and incomestatement commands.Compound balance reports do sign normalisation: they show all account balances as normally positive, unlike the ordinary BalanceReport and most hledger commands which show income liabilityequity balances as normally negative. Each subreport specifies the normal sign of its amounts, and whether it should be added to or subtracted from the grand total.hledger'the command's name(s) and documentationhledgeroverall report titlehledgersubreport detailshledgerhow to accumulate balances (per-period, cumulative, historical) (overrides command line flags)hledgerGenerate a cmdargs option-parsing mode from a compound balance command specification.hledgerGenerate a runnable command from a compound balance command specification.hledgerSummarise one or more (inclusive) end dates, in a way that's visually different from showDateSpan, suggesting discrete end dates rather than a continuous span.hledgerRender a compound balance report as plain text suitable for console output.hledgerRender a compound balance report as CSV. Subreports' CSV is concatenated, with the headings rows replaced by a subreport title row, and an overall title row, one headings row, and an optional overall totals row is added.hledger)Render a compound balance report as HTML. Safe-Inferred"^z Safe-Inferred"%&^ Safe-Inferred"%&^ Safe-Inferred"%&_  Safe-Inferred"%&'b<hledger9Print an account register report for a specified account.hledgerRender a register report as plain text suitable for console output.hledgerRender one account register report line item as plain text. Layout is like so:   ----------------=width (specified, terminal width, or 80) -------------------- date (10) description other accounts change (12) balance (12) DDDDDDDDDD dddddddddddddddddddd aaaaaaaaaaaaaaaaaaa AAAAAAAAAAAA AAAAAAAAAAAA  If description's width is specified, account will use the remaining space. Otherwise, description and account divide up the space equally.Returns a string which can be multi-line, eg if the running balance has multiple commodities.! Safe-Inferred "%&iJhledger'State used while entering transactions.hledgercommand line optionshledger7command line arguments remaining to be used as defaultshledger today's datehledger%the default date for next transactionhledgerthe journal we are adding tohledgerthe most similar historical txnhledger*postings entered so far in the current txnhledgerRead multiple transactions from the console, prompting for each field, and append them to the journal file. If the journal came from stdin, this command has no effect.hledgerLoop reading transactions from the console, prompting, validating and appending each one to the journal file, until end of input or ctrl-c (then raise an EOF exception). If provided, command-line arguments are used as defaults; otherwise defaults come from the most similar recent transaction in the journal.hledgerGenerate a haskeline completion function from the given completions and default, that case insensitively completes with prefix matches, or infix matches above a minimum length, or completes the null string with the default.hledgerAppend this transaction to the journal's file and transaction list.hledgerAppend a string, typically one or more transactions, to a journal file, or if the file is "-", dump it to stdout. Tries to avoid excess whitespace.XXX This writes unix line endings (n), some at least, even if the file uses dos line endings (rn), which could leave mixed line endings in the file. See also writeFileWithBackupIfChanged.hledgerReplace a string's 0 or more terminating newlines with exactly one.hledger8Convert a string of journal data into a register report." Safe-Inferred"i# Safe-InferredihledgerE?@ABDCJFGIHLKMNOP   XYZ[\]^_`abcpomlkjihgendfqrstuvwxyz{|}~  !"#$%&',()+*8-./01234576=9:<;>E?@ABDCJFGIHLKMNO& Safe-InferredhledgerThe overall cmdargs mode describing hledger's command-line options and subcommands.hledger Let's go!hledgerParse hledger CLI options from these command line arguments and add-on command names, or raise any error.hledgerA hacky workaround for cmdargs not accepting flags before the subcommand name: try to detect and move such flags after the command. This allows the user to put them in either position. The order of options is not preserved, but this should be ok.Since we're not parsing flags as precisely as cmdargs here, this is imperfect. We make a decent effort to: - move all no-argument helpinput/report flags - move all required-argument helpinputreport flags along with their values, space-separated or not - not confuse things further or cause misleading errors.  ) Safe-Inferred=*+,*+-*+.*+/*+0*+1*+2*+3*45*46*47*48*49*4:*4;*<=*<>*<?*<@*<A*BC*DE*DF*DG*DH*DI*DJ*DK*DL*DM*DN*DO*DP*DQ*DR*DS*DT*DU*DV*DW*DX*DY*DZ*D[*D[*D\*D]*D^*D_*D`*Da*Db*Dc*Dd*De*Df*Df*Dg*Dh*Di*Dj*Dk*Dl*Dm*Dn*Do*Dp*Dq*Dr*Dr*Ds*Dt*Du*Dv*Dv*Dw*Dx*yz*y{*|}~                  !!!!!!!!!""######$$%%%%%%&&&&&&&&&&&&~~   ~  !!!!!!!!!!!!%%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~  ~  ~  ~  ~  ~  ~  ~  ~  ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~  ~ ~ ~ ~ ~ ~ ~ ~  ~ ~ ~ ~ ~ ~  ~  ~  ~  ~  ~  ~  ~  ~  ~  ~  ~  ~  ~  ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~  ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~' ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~  ~ ~  ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ (~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~  ~  ~  ~  ~  ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~))))))))#hledger-1.27-79UughZ1M8X71kAYo5grOU Hledger.CliHledger.Cli.Commands.BalanceHledger.Cli.AnonHledger.Cli.DocFilesHledger.Cli.VersionHledger.Cli.CliOptionsHledger.Cli.UtilsHledger.Cli.Commands.TagsHledger.Cli.Commands.StatsHledger.Cli.Commands.RoiHledger.Cli.Commands.Register"Hledger.Cli.Commands.RegistermatchHledger.Cli.Commands.PrintHledger.Cli.Commands.Rewrite Hledger.Cli.Commands.PrintuniqueHledger.Cli.Commands.PricesHledger.Cli.Commands.PayeesHledger.Cli.Commands.NotesHledger.Cli.Commands.HelpHledger.Cli.Commands.FilesHledger.Cli.Commands.Diff!Hledger.Cli.Commands.Descriptions Hledger.Cli.Commands.CommoditiesHledger.Cli.Commands.CodesHledger.Cli.Commands.CloseHledger.Cli.Commands.Check"Hledger.Cli.CompoundBalanceCommand$Hledger.Cli.Commands.IncomestatementHledger.Cli.Commands.Cashflow'Hledger.Cli.Commands.Balancesheetequity!Hledger.Cli.Commands.BalancesheetHledger.Cli.Commands.AregisterHledger.Cli.Commands.AddHledger.Cli.Commands.ImportHledger.Cli.Commands.ActivityHledger.Cli.Commands.AccountsHledger.Cli.CommandsHledger.Cli.Main Hledger.Utils debugLevel Paths_hledger%cmdargs-0.10.21-wy2yf6ZOYDBrWg0Ug41KuSystem.Console.CmdArgs.ExplicitflagsVerbosityflagNumericVersion flagVersionflagHelpFormatflagHelpSimpleprocessValueIO processValue processArgs$System.Console.CmdArgs.Explicit.HelphelpText HelpFormatZshHelpFormatBash HelpFormatAll HelpFormatOneHelpFormatDefault HelpFormat(System.Console.CmdArgs.Explicit.Completecomplete CompleteDir CompleteFile CompleteValueComplete'System.Console.CmdArgs.Explicit.Processprocess$System.Console.CmdArgs.Explicit.TypeflagBoolflagArgflagReqflagOptflagNonemodesmode modeEmpty remapUpdateremap2 checkMode fromFlagOpt modeFlags modeModestoGroup fromGroup parseBoolHelpFlagHelp groupNamed groupHidden groupUnnamedGroupmodeGroupFlagsmodeArgsmodeHelpSuffixmodeHelp modeExpandAt modeReform modeCheck modeValue modeNamesmodeGroupModesModeFlagNone FlagOptRareFlagOptFlagReqFlagInfoUpdateflagHelpflagType flagValueflagInfo flagNamesFlag argRequireargTypeargValueArgremapRemap)System.Console.CmdArgs.Explicit.SplitJoin splitArgsjoinArgs,System.Console.CmdArgs.Explicit.ExpandArgsAt expandArgsAt'hledger-lib-1.27-ABGa2NX0k2GItUGLwmW5sU"Hledger.Reports.MultiBalanceReportbalanceReportTableAsTextAnonanon anonAccount $fAnonText$fAnonTransaction $fAnonPosting $fAnonJournalTopicprintHelpForTopicrunPagerForTopicrunManForTopicrunInfoForTopic VersionStringPackageVersion ProgramNamepackageversionprognameversionStringWithCliOptsrawopts_command_file_ inputopts_ reportspec_ output_file_output_format_debug_no_new_accounts_width_available_width_progstarttime_ CommandDoc helpflagsdetailedversionflag inputflags reportflags flattreeflags hiddenflagsoutputFormatFlagoutputFileFlagargsFlaggeneralflagsgroup1generalflagsgroup2generalflagsgroup3defModedefCommandModeaddonCommandModehledgerCommandMode showModeUsage topicForMode withAliases defcliopts defaultWidthreplaceNumericFlagsrawOptsToCliOptsgetHledgerCliOpts'getHledgerCliOptsjournalFilePathFromOptsoutputFileFromOptsdefaultOutputFormat outputFormatsoutputFormatFromOptsrulesFilePathFromOpts widthFromOptsregisterWidthsFromOpts hledgerAddonslikelyExecutablesInPathhledgerExecutablesInPath$fDefaultCliOpts $fShowCliOpts HasCliOptscliOptsavailable_widthcommanddebug__file__ inputoptsno_new_accounts output_file output_format progstarttime rawopts__ reportspecwidth__$fHasReportOptsCliOpts$fHasReportOptsNoUpdateCliOpts$fHasBalancingOptsCliOpts$fHasReportSpecCliOpts$fHasInputOptsCliOpts$fHasCliOptsCliOptsunsupportedOutputFormatError withJournalDojournalTransform pivotByOptsanonymiseByOpts writeOutputwriteOutputLazyTextjournalReloadIfChanged journalReloadjournalFileIsNewer openBrowserOnwriteFileWithBackupIfChangedwriteFileWithBackupreadFileStrictlyjournalSimilarTransaction"postingsOrTransactionsReportAsTexttests_Cli_Utilstagsmodetags statsmodestatsroimoderoi $fShowOneSpan registermoderegisterpostingsReportAsTextpostingsReportItemAsTexttests_Registerregistermatchmode registermatch printmodeprint'originalTransaction rewritemoderewrite$fShowDiffLine$fFunctorDiffLine$fFoldableDiffLine$fTraversableDiffLineprintuniquemode printunique pricesmodeprices payeesmodepayees notesmodenoteshelpmodehelp' filesmodefilesdiffmodediff$fEqPostingWithPath$fShowPostingWithPathdescriptionsmode descriptionscommoditiesmode commodities codesmodecodes closemodeclose checkmodecheck $fReadCheck $fShowCheck $fEqCheck $fEnumCheck$fBoundedCheck balancemodebalancebalanceReportAsCsvbalanceReportAsTextbalanceReportItemAsTextmultiBalanceReportAsCsvmultiBalanceReportAsHtmlmultiBalanceReportHtmlRowsmultiBalanceReportHtmlFootRowmultiBalanceReportAsTextbalanceReportAsTablemultiBalanceRowAsCsvTextmultiBalanceRowAsTableText tests_BalanceCompoundBalanceCommandSpeccbcdoccbctitle cbcqueriescbcaccumcompoundBalanceCommandModecompoundBalanceCommandincomestatementmodeincomestatement cashflowmodecashflowbalancesheetequitymodebalancesheetequitybalancesheetmode balancesheet aregistermode aregistertests_AregisteraddmodeaddjournalAddTransactionappendToJournalFileOrStdout&$fExceptionRestartTransactionException$fShowPrevInput$fShowTxnParams!$fShowRestartTransactionException$fShowEntryState importmode importcmd activitymodebarcharactivity showHistogram printDayWithcountBar accountsmodeaccountsbuiltinCommandsbuiltinCommandNames findCommandprintCommandsListtestcmdtests_Hledger_Cliprognameandversion versionStringmainmodemain argsToCliOptsmoveFlagsAfterCommandisMovableNoArgFlagisMovableReqArgFlagisMovableArgFlagAndValueisValue flagstomovenoargflagstomovereqargflagstomoveoptargflagstomovetoolDocs toolDocTxt toolDocMan toolDocInfoparseCommandDocfilePathExtensionmaybeFileModificationTime backUpFile backupNumberHledger.Reports.PostingsReportPostingsReport)Hledger.Reports.AccountTransactionsReportAccountTransactionsReportcompareStringstransactionToCSV printMatchtransactionModifierFromOptsHledger.Data.TypesTransactionModifier renderPatch invertPrice"stylePriceDirectiveExceptPrecisionCheckcliOptsUpdateReportSpecWith parseCheckparseCheckArgumentrunCheckbalanceReportAsText'renderBalanceReportItemrenderComponentmultiBalanceReportHtmlHeadRowmultiBalanceReportHtmlBodyRow&tabular-0.2.2.8-J3KKeu2hpWEHJRfazs60S6 Text.TabularTable showEndDatescompoundBalanceReportAsTextcompoundBalanceReportAsCsvcompoundBalanceReportAsHtmlaccountTransactionsReportAsText#accountTransactionsReportItemAsText EntryStateesOptsesArgsesToday esDefDate esJournalesSimilarTransaction esPostingsgetAndAddTransactions completerensureOneNewlineTerminatedregisterFromString commandsListcommandsFromCommandsListJournalbase Debug.Tracetrace time-1.11.1.1Data.Time.Calendar.TypesYear traceStack traceShowM traceShowId traceShow traceMarkerIO traceMarkertraceMtraceIdtraceIO traceEventIO traceEvent putTraceMsg flushEventLogGHC.Stack.Types HasCallStack)breakpoint-0.1.0.0-5EsbitNzRbFEQ7eZqH88NQDebug.BreakpointshowLevplugin getSrcLoc breakpointIO breakpointM queryVarsIO queryVarsM queryVars breakpoint runPromptIO runPromptM runPromptprintAndWaitIO printAndWaitM printAndWait fromAscList captureVars$doclayout-0.4-C1ZGsnRBnCq5EjypiJR8QvText.DocLayout charWidth+tasty-hunit-0.10.0.3-E1rxZOS5ZnO8gOhFzX7qokTest.Tasty.HUnit.OrigAssertionPredicate Assertableassert HUnitFailureAssertionPredicableassertionPredicate assertFailure assertBool assertEqual@=?@?=@? assertStringTest.Tasty.HUnit.Steps testCaseStepsTest.Tasty.HUnittestCase testCaseInfo AssertionHledger tests_Hledger Hledger.Read tests_ReadensureJournalFileExistsrequireJournalFileExists orDieTryingreadJournalFiles'readJournalFile' readJournal'readJournalFilesreadJournalFile readJournaldefaultJournalPathdefaultJournalPrefixedFilePathHledger.Read.JournalReadertmpostingrulepsplitReaderPrefix findReaderrunJournalParserHledger.Read.Common tests_Common accountaliaspaliasesFromOptsbracketeddatetagsppostingcommentptransactioncommentpfollowingcommentpisSameLineCommentStartisLineCommentStartemptyorcommentlinepmultilinecommentp rawnumberp fromRawNumbernumberp lotpricepbalanceassertionp priceamountpcommoditysymbolp mamountp'amountp'amountpwithmultiplieramountpspaceandamountormissingp singlespacepsinglespacedtextsatisfying1psinglespacednoncommenttext1psinglespacedtext1pnoncommenttext1pnoncommenttextp accountnamepmodifiedaccountnamepsecondarydatep datetimepdatep descriptionpcodepstatuspjournalAddFileclearAccountAliasesgetAccountAliasesaddAccountAliasgetParentAccountpopParentAccountpushParentAccountaddDeclaredAccountTypeaddDeclaredAccountTagsgetAmountStylegetDefaultAmountStylegetDefaultCommodityAndStylesetDefaultCommodityAndStylegetYearsetYearjournalAddForecastjournalAddAutoPostingsjournalFinaliseinitialiseAndParseJournalparseAndFinaliseJournalrawOptsToInputOptsReaderrParserrReadFn rExtensionsrFormatHledger.Reports tests_Reportstests_AccountTransactionsReport$accountTransactionsReportByCommoditytransactionRegisterDateaccountTransactionsReportItemsaccountTransactionsReporttriCommodityBalancetriCommodityAmount triBalance triAmounttriDatetriOrigTransactionAccountTransactionsReportItemHledger.Reports.BalanceReporttests_BalanceReport balanceReportflatShowsExclusiveBalance BalanceReportBalanceReportItemHledger.Reports.BudgetReporttests_BudgetReportbudgetReportAsCsvbudgetReportAsTablebudgetReportAsTextcombineBudgetAndActual budgetReport BudgetGoal BudgetTotal BudgetAverage BudgetCellBudgetReportRow BudgetReportHledger.Reports.EntriesReporttests_EntriesReport entriesReport EntriesReportEntriesReportItemtests_MultiBalanceReport sortRowsLikesortRowsgenerateMultiBalanceReport getPostingsgetPostingsByColumnmakeReportQuerystartingPostingscompoundBalanceReportWithcompoundBalanceReportmultiBalanceReportWithmultiBalanceReportMultiBalanceReportMultiBalanceReportRowtests_PostingsReportmkpostingsReportItempostingsReportPostingsReportItemHledger.Reports.ReportTypesprrDepthprrDisplayName prrFullNametreeDisplayNameflatDisplayNameprMapMaybeName prMapNameperiodicReportSpanprrAdd PercentageChangeBalanceTotalAveragePeriodicReportprTotalsprRowsprDatesPeriodicReportRow prrAverageprrTotal prrAmountsprrNameCompoundPeriodicReport cbrTotals cbrSubreportscbrDatescbrTitleCBCSubreportSpeccbcsubreportincreasestotalcbcsubreporttransformcbcsubreportoptionscbcsubreportquerycbcsubreporttitle DisplayName displayDepth displayName displayFullHledger.Reports.ReportOptionsrawOptsToReportSpecupdateReportSpecWithupdateReportSpecreportOptsToSpec HasReportSpec rsReportOpts rsQueryOptsrsQuery reportSpecrsDay HasReportOpts querystringrealdate2depthstatuses reportOptsperiodHasReportOptsNoUpdate txn_dates transpose__statusesNoUpdate sort_amount show_costs row_totalrelated realNoUpdatequerystringNoUpdateperiodNoUpdatepercent normalbalanceno_totalno_elidelayoutinterval infer_pricesformatempty__drop__ depthNoUpdatedeclared date2NoUpdate conversionopcolor__ budgetpat balancecalc balanceaccumaverageaccountlistmodereportOptsNoUpdateinvertprettyvalue setEither overEitherreportPeriodNamereportPeriodOrJournalLastDayreportPeriodLastDayreportPeriodOrJournalStartreportPeriodStart reportEndDatereportStartDatereportSpanBothDates reportSpanqueryFromFlagsvaluationAfterSum-mixedAmountApplyValuationAfterSumFromOptsWith!journalApplyValuationFromOptsWithjournalApplyValuationFromOpts!journalValueAndFilterPostingsWithjournalValueAndFilterPostingsflat_tree_ whichDate postingDateFntransactionDateFnreportOptsToggleStatussimplifyStatusesintervalFromRawOptsbalanceAccumulationOverridesetDefaultConversionOp defreportspecrawOptsToReportOpts defreportoptsBalanceCalculationCalcGainCalcValueChange CalcChange CalcBudgetBalanceAccumulation Historical PerPeriod CumulativeAccountListModeALFlatALTreeLayout LayoutTidy LayoutBare LayoutWide LayoutTall ReportOptslayout_ transpose_color_normalbalance_invert_percent_ sort_amount_ show_costs_ no_total_ row_total_ declared_drop_accountlistmode_ budgetpat_ balanceaccum_ balancecalc_ txn_dates_related_average_ querystring_pretty_format_real_ no_elide_empty_date2_depth_ infer_prices_value_ conversionop_ statuses_ interval_period_ ReportSpec _rsQueryOpts_rsQuery_rsDay _rsReportOpts Hledger.Data tests_DataHledger.Data.Ledger tests_LedgerledgerCommoditiesledgerDateSpanledgerPostingsledgerLeafAccountsledgerTopAccountsledgerRootAccount ledgerAccountledgerAccountNamesledgerFromJournal nullledgerHledger.Data.AccountshowAccountsBoringFlag showAccounts printAccounts lookupAccountsortAccountNamesByDeclarationaccountSetDeclarationInfosortAccountTreeByAmountfilterAccountsflattenAccounts pruneAccountsclipAccountsAndAggregate clipAccounts sumAccounts anyAccounts mapAccountsaccountsLevelsparentAccounts accountTreeaccountsFromPostingsnullacctHledger.Read.InputOptions HasInputOpts reportspanpivotnew_savenew__ mrules_filemformatioDay infer_equity infer_costsforecast balancingoptsauto__anon__aliasesstrict inputOptsforecastPeriod definputopts InputOpts_ioDaystrict_balancingopts_ infer_costs_ infer_equity_auto_ reportspan_ forecast_pivot_ new_save_new_anon_aliases_ mrules_file_mformat_Hledger.Data.Balancingtests_BalancingHasBalancingOptsinfer_transaction_pricesignore_assertions balancingOptscommodity_stylesjournalBalanceTransactionsjournalCheckBalanceAssertionsbalanceTransactionHelperbalanceTransactionisTransactionBalanceddefbalancingopts BalancingOptscommodity_styles_infer_transaction_prices_ignore_assertions_Hledger.Data.JournalChecksjournalCheckRecentAssertionsjournalCheckPayeesjournalCheckCommoditiesjournalCheckAccounts*Hledger.Data.JournalChecks.UniqueleafnamesjournalCheckUniqueleafnamesHledger.Data.Journal tests_JournalsamplejournalMaybeExplicit samplejournaljournalApplyAliases journalPivotjournalLastDayjournalEndDatejournalStartDatejournalDateSpanBothDatesjournalDateSpanjournalAddPricesFromEquity journalAddInferredEquityPostings journalToCost(journalInferMarketPricesFromTransactionscanonicalStyleFromcommodityStylesFromAmountsjournalCommodityStylesjournalApplyCommodityStylesjournalModifyTransactionsjournalUntieTransactionsjournalNumberTransactionsjournalNumberAndTieTransactionsjournalSetLastReadTimejournalReversejournalMapPostingAmountsjournalMapPostingsjournalMapTransactions filterTransactionRelatedPostingsfilterTransactionPostingsExtrafilterTransactionPostingsfilterPostingAmountfilterTransactionAmountsfilterJournalAmountsfilterJournalRelatedPostingsfilterJournalPostingsfilterJournalTransactionsjournalPostingsAddAccountTagsjournalAccountTypesjournalAddAccountTypesjournalAccountTypejournalConversionAccountjournalTransactionsSimilarTojournalInheritedAccountTagsjournalAccountTagsjournalAccountNameTreejournalLeafAccountNamesjournalAccountNames$journalAccountNamesDeclaredOrImplied!journalAccountNamesDeclaredOrUsedjournalLeafAccountNamesDeclaredjournalAccountNamesDeclaredjournalAccountNamesImpliedjournalAccountNamesUsedjournalPayeesDeclaredOrUsedjournalPayeesUsedjournalPayeesDeclaredjournalDescriptionsjournalCommoditiesjournalCommoditiesDeclaredjournalPostingsjournalPrevTransactionjournalNextTransactionjournalTransactionAtaddPriceDirectiveaddPeriodicTransactionaddTransactionModifieraddTransactionjournalFilePathsjournalFilePath nulljournaldbgJournalAcctDeclOrder"journalRenumberAccountDeclarations journalConcat JournalParserErroringJournalParserHledger.Data.Json readJsonFile writeJsonFile toJsonText Hledger.Data.PeriodicTransaction!checkPeriodicTransactionStartDaterunPeriodicTransaction'Hledger.Data.JournalChecks.OrdereddatesjournalCheckOrdereddatesHledger.Data.Errors makeBalanceAssertionErrorExcerptmakePostingAccountErrorExcerpttransactionFindPostingIndexmakePostingErrorExcerptmakeTransactionErrorExcerptHledger.Data.Timeclocktests_TimeclocktimeclockEntriesToTransactions Hledger.Data.TransactionModifiermodifyTransactions Hledger.Query tests_QuerymatchesPriceDirective matchesTagsmatchesPayeeWIPmatchesDescriptionmatchesTransactionExtramatchesTransactionmatchesPostingExtramatchesPostingmatchesAccountExtramatchesAccountmatchesMixedAmount matchesAmountmatchesCommodityinAccountQuery inAccount queryDepthqueryDateSpan' queryDateSpan queryEndDatequeryStartDatequeryIsTransactionRelatedqueryIsStartDateOnly queryIsSym queryIsAmt queryIsReal queryIsDepth queryIsType queryIsAcct queryIsTag queryIsDesc queryIsCode queryIsStatusqueryIsDateOrDate2 queryIsDate2 queryIsDate queryIsNull matchesQueryfilterQueryOrNotQuery filterQuery simplifyQueryparseAccountTypeparseQueryTerm queryprefixeswords''parseQueryList parseQuerygeneratedTransactionTagnoteTagpayeeTagQuerySymAmtAcctDescStatusQDate2DateOrNoneDepthTagNotCodeAndRealTypeAnyOrdPlusAbsEqAbsGtEqAbsGtAbsLtEqAbsLtGtEqGtLtEqEqLtQueryOptQueryOptInAcctOnlyQueryOptInAcctHledger.Data.Transactiontests_TransactionannotateErrorWithTransactiontransactionFiletransactionMapPostingAmountstransactionMapPostingstransactionApplyAliasestransactionAddPricesFromEquity$transactionAddInferredEquityPostingstransactionToCosttransactionApplyValuationtransactionTransformPostings txnUntieKnot txnTieKnottransactionDateOrDate2transactionDate2transactionsPostingsbalancedVirtualPostingsvirtualPostingsassignmentPostings realPostingshasRealPostingsshowTransactionLineFirstPartshowTransactionOneLineAmountsshowTransactiontransactionNotetransactionPayee transactionnulltransactionHledger.Data.Posting tests_PostingcommentAddTagNextLine commentAddTag commentJoinpostingTransformAmountpostingPriceDirectivesFromCost postingAddInferredEquityPostings postingToCostpostingApplyValuationpostingAddTagspostingApplyCommodityStylespostingApplyAliasesisEmptyPostingisPostingInDateSpan'isPostingInDateSpanrelatedPostingstransactionAllTagspostingAllTags postingStatuspostingDateOrDate2 postingDate2 postingDatepostingStripPrices sumPostingsaccountNamesFromPostingshasBalanceAssignment hasAmountisBalancedVirtual isVirtualisRealrenderCommentLinesshowAccountNamepostingAsLinespostingsAsLinesshowPostingLines showPostingoriginalPostingshowBalanceAssertionbalassertTotIncbalassertParInc balassertTot balassert nullassertion nullsourceposvpost'post'vpostpostposting nullpostingHledger.Data.Valuationtests_ValuationmarketPriceReversemixedAmountGainAtDatemixedAmountApplyGainmixedAmountValueAtDatemixedAmountApplyValuationmixedAmountToCostamountPriceDirectiveFromCostpriceDirectiveToMarketPricejournalPriceOracle ConversionOpNoConversionOpToCost ValuationTypeAtDateAtNowAtThenAtEnd PriceOracleHledger.Data.Amount tests_AmountcanonicaliseMixedAmountmixedAmountStripPricesmixedAmountSetFullPrecisionmixedAmountSetPrecision ltraceamountshowMixedAmountLinesBshowMixedAmountBshowMixedAmountDebugshowMixedAmountElided"showMixedAmountOneLineWithoutPriceshowMixedAmountWithoutPrice showMixedAmountWithZeroCommodityshowMixedAmountOneLineshowMixedAmountmixedAmountUnstyledstyleMixedAmountmixedAmountCostmapMixedAmountfilterMixedAmountByCommodityfilterMixedAmountunifyMixedAmount maCommodities amountsRawamounts maIsNonZeromaIsZeromixedAmountIsZeromixedAmountLooksZeroisNegativeMixedAmountaverageMixedAmountsmultiplyMixedAmountdivideMixedAmountmaSummaMinusmaPlusmaNegate maAddAmounts maAddAmount mixedAmountmixedisMissingMixedAmountmissingmixedamt nullmixedamtcanonicaliseAmountshowAmountDebugshowAmountWithZeroCommodityshowAmountWithoutPrice cshowAmount showAmountB showAmountamountUnstyledstyleAmountExceptPrecision styleAmountshowAmountPriceamountStripPriceswithDecimalPointsetAmountDecimalPointwithInternalPrecisionsetAmountInternalPrecisionamountSetFullPrecisionamountSetPrecision withPrecision amountIsZeroamountLooksZeroisNegativeAmountmultiplyAmount divideAmount amountCostamountWithCommodity@@atpergbpeurusdhrsnum missingamtnullamt amountstyle csvDisplayoneLinenoPricenoColourquoteCommoditySymbolIfNeededisNonsimpleCommodityCharshowCommoditySymbolAmountDisplayOpts displayOrderdisplayMaxWidthdisplayMinWidthdisplayOneLine displayColourdisplayThousandsSepdisplayZeroCommodity displayPriceHledger.Data.StringFormattests_StringFormatdefaultStringFormatStyleparseStringFormatdefaultBalanceLineFormat StringFormat BottomAlignedOneLine TopAlignedStringFormatComponent FormatLiteral FormatFieldReportItemFieldFieldNoDepthSpacerField TotalFieldDescriptionField AccountFieldDefaultDateFieldHledger.Data.AccountNametests_AccountNameaccountNameToAccountOnlyRegexCIaccountNameToAccountOnlyRegexaccountNameToAccountRegexCIaccountNameToAccountRegex escapeNameclipOrEllipsifyAccountNameclipAccountNameelideAccountNameaccountNameTreeFromsubAccountNamesFromisSubAccountNameOfisAccountNamePrefixOfparentAccountNamesparentAccountNametopAccountNamesexpandAccountNameexpandAccountNamesaccountNameDropaccountNameApplyAliasesMemoaccountNameApplyAliasesconcatAccountNamesjoinAccountNamesaccountNameWithPostingTypeaccountNameWithoutPostingTypeaccountNamePostingTypeunbudgetedAccountNameaccountNameLevelaccountNameTypeaccountNameInferTypeexpenseAccountRegexrevenueAccountRegexconversionAccountRegexequityAccountRegexliabilityAccountRegexcashAccountRegexassetAccountRegexaccountSummarisedNameaccountLeafNameaccountNameFromComponentsaccountNameComponentsacctsep acctsepcharHledger.Data.Dates tests_Datesnulldate emptydatespan nulldatespan periodexprpyearp isDateSepChar datesepchar datesepchars smartdate parsedateMintervalStartBeforeprevday fixSmartDatefixSmartDateStrEither'fixSmartDateStrEitherfixSmartDateStrparsePeriodExpr'parsePeriodExprlatestSpanContainingdaysSpan spanUnion spansUnionspanDefaultsFrom spanIntersectspansIntersectgroupByDateSpanperiodContainsDatespanContainsDate daysInSpanspansFromBoundaries splitSpan spansSpan spanYears spanEndYear spanStartYearspanEnd spanStartelapsedSecondsgetCurrentYeargetCurrentMonth getCurrentDayshowDateSpanMonthAbbrev showDateSpanshowDateHledger.Data.RawOptions posintoptintoptmaybeposintopt maybeintoptlistofstringopt maybecharopt stringoptmaybestringopt collectopts choiceoptboolopt inRawOpts appendopts setbooloptsetopt overRawOptsRawOpts tests_UtilsmakeHledgerClassyLensesbgColorBcolorBbgColorcolorembedFileRelative usageErrorerror' numDigitsIntmapM' sequence' minimumStrict maximumStrict sumStrictmaximum'readHandlePortablyreadFileOrStdinPortablyreadFilePortablyexpandHomePath expandPathapplyNgetCurrentZonedTimegetCurrentLocalTime treeLeavessplitAtElementuncurry4curry4uncurry3curry3uncurry2curry2sixth6fifth6fourth6third6second6first6fifth5fourth5third5second5first5fourth4third4second4first4third3second3first3Hledger.Utils.Text tests_Text readDecimalunlinesB linesPrepend2 linesPrepend textTakeWidthfitTexttextConcatBottomPaddedtextConcatTopPadded textUnbracket stripquotesescapeDoubleQuotestextQuoteIfNeeded quoteIfSpaced formatText textChompwraptextElideRightText.WideStringwbUnpack wbFromTextwbToText WideBuilderwbWidth wbBuilderHledger.Utils.TestassertParseErrorEassertParseEqE assertParseEassertParseStateOnassertParseErrorassertParseEqOn assertParseEq assertParse assertRight assertLeftHledger.Utils.Debugdbgparse traceParsedlog9dlog8dlog7dlog6dlog5dlog4dlog3dlog2dlog1dlog0dlogAt dlogTraceAt dlogTracedbg9IOdbg8IOdbg7IOdbg6IOdbg5IOdbg4IOdbg3IOdbg2IOdbg1IOdbg0IO ptraceAtIOdbg9Withdbg8Withdbg7Withdbg6Withdbg5Withdbg4Withdbg3Withdbg2Withdbg1Withdbg0WithdbgExitdbg9dbg8dbg7dbg6dbg5dbg4dbg3dbg2dbg1dbg0 ptraceAtWithptraceAt traceAtWithtraceAtuseColorOnStderruseColorOnStdout traceWithptracepshow'pshowpprint'pprintHledger.Utils.String stripAnsistrWidth strWidthAnsi takeWidthunwords'words'quoteForCommandLinesingleQuoteIfNeeded quoteIfNeeded underline formatString elideRight elideLeft stripbrackets singlelinechomp1chomprstriplstripstrip uppercase lowercasetakeEndHledger.Utils.ParseeolofskipNonNewlineSpaces'skipNonNewlineSpaces1skipNonNewlineSpaces restoflinespacenonewlineisNonNewlineSpacenonspace isNewlineshowDateParseError parseerror fromparseparseWithState'parseWithStateparsewithStringrtp runTextParser parsewith surroundedBy choiceInStatechoice'sourcePosPairPrettySimpleStringParserSimpleTextParser TextParserText.Megaparsec.CustomHledgerParseErrorDataHledgerParseErrorsHledger.Data.PeriodstartOfFirstWeekInMonthfirstMonthOfQuarterquarterContainingMonthyearMonthContainingWeekStarting mondayBefore periodShrink periodGrow periodMoveToperiodPreviousIn periodNextInperiodPrevious periodNext periodEnd periodStartshowPeriodMonthAbbrev showPeriodperiodTextWidthisStandardPeriodisLastDayOfMonthsimplifyPerioddateSpanAsPeriodperiodAsDateSpannullaccountdeclarationinfonullpayeedeclarationinfonullperiodictransactionnulltransactionmodifier maCompare isDecimalMarkisAccountSubtypeOfMonthQuarterYearWeek MonthWeekYearDayMonthDayWeekDay SmartDate SmartRelative SmartMonthSmartFromReferenceSmartCompleteDateSmartAssumeStart SmartIntervalWeekDay WhichDate PrimaryDate SecondaryDateDateSpanPeriod PeriodAllPeriodTo PeriodFrom PeriodBetween YearPeriod QuarterPeriod MonthPeriod DayPeriod WeekPeriodInterval DayOfYear DaysOfWeekWeekdayOfMonth DayOfMonthYearsQuartersMonthsWeeks NoIntervalDaysPayee AccountName AccountType ConversionCashExpenseRevenueEquityAsset Liability AccountAlias BasicAlias RegexAliasSideRL DecimalMarkQuantity AmountPrice UnitPrice TotalPrice AmountStyle asdigitgroupsasdecimalpoint asprecisionascommodityspacedascommoditysideAmountPrecision PrecisionNaturalPrecisionDigitGroupStyle DigitGroupsCommoditySymbol CommoditycformatcsymbolAmountapriceastyle aquantity acommodity MixedAmountMixedAmountKeyUnitPriceMixedAmountKeyNoPriceMixedAmountKeyTotalPrice PostingTypeBalancedVirtualPostingRegularPostingVirtualPostingTagNameTagValueDateTagStatusClearedUnmarkedPendingBalanceAssertion baposition bainclusivebatotalbaamountPosting poriginal ptransactionpbalanceassertionptagsptypepcommentpamountpaccountpstatuspdate2pdate Transaction tpostingsttagstcomment tdescriptiontcodetstatustdate2tdate tsourcepostprecedingcommenttindextmpostingrules tmquerytxt TMPostingRuletmprIsMultiplier tmprPostingPeriodicTransaction ptpostingspttags ptcomment ptdescriptionptcodeptstatusptspan ptinterval ptperiodexpr TimeclockCodeFinalOutOutSetRequiredHoursIn SetBalanceTimeclockEntry tldescription tlaccount tldatetimetlcode tlsourceposPriceDirectivepdamount pdcommoditypddate MarketPricempratemptompfrommpdate jlastreadtimejfilesjfinalcommentlinesjtxns jperiodictxns jtxnmodifiersjinferredmarketpricesjpricedirectivesjinferredcommodities jcommoditiesjglobalcommoditystyles jaccounttypesjdeclaredaccounttypesjdeclaredaccounttagsjdeclaredaccountsjdeclaredpayeesjincludefilestackjparsetimeclockentries jparsealiasesjparseparentaccountsjparsedecimalmarkjparsedefaultcommodityjparsedefaultyear ParsedJournal StorageFormatPayeeDeclarationInfopditags pdicommentAccountDeclarationInfo adisourceposadideclarationorderaditags adicommentAccount aibalance aebalance anumpostingsaboringaparentasubsadeclarationinfoaname NormalSignNormallyPositiveNormallyNegativeLedger laccountsljournalHledger.Utils.RegexregexReplaceAllByregexReplaceUnmemo regexReplaceregexMatchText regexMatch toRegexCI'toRegex' toRegexCItoRegexRegexpreString Replacement RegexError$tasty-1.4.2.3-2sQ44G2dGhaDqWN1UgZNuaTest.Tasty.Options.CoreTimeout NoTimeout mkTimeoutTest.Tasty.CoreTestTreeDependencyType AllFinish AllSucceedTestName testGroupafter_after'Test.Tasty.Ingredients.IncludingOptionsincludingOptionsTest.Tasty.CmdLinedefaultMainWithIngredients Test.TastydefaultIngredients adjustOption localOption askOption withResourcetransformers-0.5.6.2Control.Monad.Trans.Except runExceptT'megaparsec-9.2.2-Bh5JbmGMk2pDR4NazpOEEQText.Megaparsec.Pos SourcePos sourceName sourceLine sourceColumnmkPosunPos initialPossourcePosPrettyversiongetDataFileName getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDir