!N      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~       NoneWQhledgerThese are all the main hledger manuals, in man, txt, and info formats. Only files under the current package directory can be embedded, so most of these are symlinked here from the other package directories. PQRSTUVWXY PQRTSUVXYWNone^hledgerGiven a program name, return a precise platform-specific executable name suitable for naming downloadable binaries. Can raise an error if the version and patch level was not defined correctly at build time.Z[\]^Z[\]^None 2>HVWXl$_hledger"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.hhledgerdebug level, set by  --debug[=N] . See also  !.jhledger"the --width value provided, if anykhledgerestimated 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)lhledgerrA command's documentation. Used both as part of CLI help, and as part of the hledger manual. See parseCommandDoc.mhledger0Common help flags: --help, --debug, --version...nhledger/A hidden flag, just for the hledger executable.ohledger<Common input-related flags: --file, --rules-file, --alias...phledger3Common report-related flags: --period, --cost, etc.qhledger>Common output-related flags: --output-file, --output-format...xhledgerAn 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.yhledgerA cmdargs mode suitable for a hledger built-in command with the given names (primary name + optional aliases). The usage message shows [QUERY] as argument.zhledgermA 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 wordsISecond line to a line containing just _FLAGS_, or the end: the short helpEAny 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, hledger-web or hledger-api manual.~hledger1Add command aliases to the command's help string.hledgerBConvert possibly encoded option values to regular unicode strings.hledgerGDefault width for hledger console output, when not otherwise specified.hledger}Replace 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.hledgerLDo final validation of processed opts, raising an error if there is trouble.hledgerjA 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.iTips: Empty lines in the pre/postamble are removed by cmdargs; add a space character to preserve them.hledger&Get 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.hledger^Get the expanded, absolute output file path from options, or the default (-, 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).hledger\Get 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.hledgercParse the format option if provided, possibly returning an error, otherwise get the default value.hledgerQDefault line format for balance report: "%20(total) %2(depth_spacer)%-(account)"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.hledgerIGet 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.4_`bjacdefghiklmnopqrstuvwxyz{|}~4mnopqrsuvwxyz{t|~_`bjacdefghikl}NoneXhledgerParse 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.hledgerRApply some transformations to the journal if specified by options. These include:)adding forecast transactions (--forecast),converting amounts to market value (--value) pivoting account names (--pivot)anonymising (--anonymise).hledgerBApply the pivot transformation on a journal, if option is present.hledgerIApply the anonymisation transformation on a journal, if option is presenthledger3Apply the anonymisation transformation on a journalhledgernIf -V/--value was requested, convert all journal amounts to their market value as of the report end date. Cf  +http://hledger.org/manual.html#market-value Since 2017/4 we do this early, before commands run, which affects all commands and seems to have the same effect as doing it last on the reported values.hledgerGenerate periodic transactions from all periodic transaction rules in the journal. These transactions are added to the in-memory Journal (but not the on-disk file).They start on or after the day following the latest normal transaction in the journal, or today if there are none. They end on or before the specified report end date, or 180 days from today if unspecified.hledgeroWrite some output to stdout or to a file selected by --output-file. If the file exists it will be overwritten.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.hledgerqRe-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.hledgerKHas the journal's main data file changed since the journal was last read ?hledgerfHas the specified file (presumably one of journal's data files) changed since journal was last read ?hledgerzGet the last modified time of the specified file, or if it does not exist or there is some other error, the current time.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.hledgerqBack up this file with a (incrementing) numbered suffix, then overwrite it with this new text, or give an error.hledgerJBack 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.RegexNoneNonehledger)Print various statistics for the journal.NoneJ( Nonehledger"Print a (posting) register report.hledgerCRender a register report as plain text suitable for console output.hledgerHRender 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 Kdate 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. NonehledgeroReturn 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. None< NoneWThledgernList or display one of the hledger manuals in various formats. You can select a docs viewer with one of the `--info`, `--man`,  `--pager`, `--cat` flags. Otherwise it will use the first available of: info, man, $PAGER, less, stdout (and always stdout if output is non-interactive).  Nonehledger&Command line options for this command.hledgerThe files command.None<NoneגNoneNone X-hledger&Command line options for this command.hledger-The balance command, prints a balance report.hledgerFind the best commodity to convert to when asked to show the market value of this commodity on the given date. That is, the one in which it has most recently been market-priced, ie the commodity mentioned in the most recent applicable historical price directive before this date. defaultValuationCommodity :: Journal -> Day -> CommoditySymbol -> Maybe CommoditySymbol defaultValuationCommodity j d c = mpamount  $ commodityValue j d c-Render a single-column balance report as CSV.hledger4Render a single-column balance report as plain text.hledgerARender 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.hledger`Render a balance report item using the given StringFormat, generating one or more lines of text.hledger<Render one StringFormat component for a balance report item.hledgerRender one StringFormat component for a balance report item. This variant is for use with OneLine string formats; it squashes any multi-line rendered values onto one line, comma-and-space separated, while still complying with the width spec.hledgerRender a multi-column balance report as CSV. The CSV will always include the initial headings row, and will include the final totals row unless --no-total is set.hledger-Render a multi-column balance report as HTML.hledgerRender the HTML table rows for a MultiBalanceReport. Returns the heading row, 0 or more body rows, and the totals row if enabled.hledger>Render 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.hledgerORender a multi-column balance report as plain text suitable for console output.hledgerBuild a $ from a multi-column balance report.hledgerSGiven a table representing a multi-column balance report (for example, made using 6), render it in a format suitable for console output. None"#hledgerA compound balance report has:an overall title%the period (date span) of each columnone or more named, normal-positive multi balance reports, with columns corresponding to the above, and a flag indicating whether they increased or decreased the overall totalsKa list of overall totals for each column, and their grand total and averageaIt is used in compound balance report commands like balancesheet, cashflow and incomestatement.hledger>Description of one subreport within a compound balance report.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 detailshledgerhthe "balance" type (change, cumulative, historical) this report shows (overrides command line flags)hledgerWGenerate a cmdargs option-parsing mode from a compound balance command specification.hledgerJGenerate a runnable command from a compound balance command specification.hledgerjRun one subreport for a compound balance command in multi-column mode. This returns a MultiBalanceReport. hledgerKRender a compound balance report as plain text suitable for console output.!hledgerEAdd the second table below the first, discarding its column headings."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.None None"#!None"#!sNone"#!None "#2>UVWXF$hledger'State used while entering transactions.%hledgercommand line options&hledger7command line arguments remaining to be used as defaults'hledger today's date(hledger%the default date for next transaction)hledgerthe journal we are adding to*hledgerthe most similar historical txn+hledger*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.,hledger9Loop 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.hledgerCAppend 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..hledgerCReplace a string's 0 or more terminating newlines with exactly one./hledger8Convert a string of journal data into a register report.hledgerFind the most similar and recent transactions matching the given transaction description and report query. Transactions are listed with their "relevancy" score, most relevant first.0hledgerReturn a similarity measure, from 0 to 1, for two transaction descriptions. This is like compareStrings, but first strips out any numbers, to improve accuracy eg when there are bank transaction ids from imported data.1hledgerReturn a similarity measure, from 0 to 1, for two strings. This was based on Simon White's string similarity algorithm (http:/www.catalysoft.com0articles/StrikeAMatch.html), later found to be  Dhttps://en.wikipedia.org/wiki/S%C3%B8rensen%E2%80%93Dice_coefficient,< modified to handle short strings better. Todo: check out  6http://nlp.fi.muni.cz/raslan/2008/raslan08.pdf#page=14 .NoneKhledger.Print journal transactions in standard format.2hledgerGenerate one CSV record per posting, duplicating the common transaction fields. The txnidx field (transaction index) allows postings to be grouped back into transactions.3hledger`Print the transaction most closely and recently matching a description (and the query, if any).None %456_O>4hledgerBuild a 5h from any query arguments and --add-posting flags provided on the command line, or throw a parse error.6hledger.Render list of changed lines as a unified diffNoneONoneONoneQ^hledger<Print a bar chart of number of postings per report interval.NoneX`S4hledger&Command line options for this command.hledgerThe accounts command.NonekhledgerThe cmdargs subcommand mode (for command-line parsing) and IO action (for doing the command's work) for each builtin command. Command actions take parsed CLI options and a (lazy) finalised journal.7hledger}The commands list, showing command names, standard aliases, and short descriptions. This is modified at runtime, as follows::PROGVERSION is replaced with the program name and version.Lines beginning with a space represent builtin commands, with format: COMMAND (ALIASES) DESCRIPTION These should be kept synced with builtinCommands above, and their docs (Commands/*.md).Lines beginning with + represent known addon commands. These lines will be suppressed if hledger-CMD is not found in $PATH at runtime.OTHER is replaced with additional command lines (without descriptions) for any unknown addon commands found in $PATH at runtime.*TODO: generate more of this automatically.hledger*All names and aliases of builtin commands.hledgerLLook up a builtin command's mode and action by exact command name or alias. 8hledgergExtract the command names from commandsList: the first word of lines beginning with a space or + sign.hledgerPrint the commands list, modifying the template above based on the currently available addons. Missing addons will be removed, and extra addons will be added under Misc.hledger_The test command. Unlike most hledger commands, this one does not read the user's journal. A 9_ argument remains in the type signature, but it should not be used (and would raise an error).DNonem!:;<=>?@ABCDEFGHIJKLMNOPQRS  !"#$%&',+*)(876543210/.-=<;:9>EDCBA@?JIHGFLKMNOTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~5      !"9#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopPQRSTUVWXYZ[\]^_`bjacdefghiklmnopqrstuvwxyz{|}~Q  !"#$%&',+*)(876543210/.-=<;:9>EDCBA@?JIHGFLKMNONonehledgerSThe overall cmdargs mode describing hledger's command-line options and subcommands.hledger Let's go!hledgerjParse 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 helpinputvreport flags along with their values, space-separated or not - not confuse things further or cause misleading errors.            "Safe)qrstuvwxy#$%#$&#$'#$(#$)#$*#$+#$,#-.#-/#-0#-1#-2#-3#-4#56#57#58#59#5:#;<#=>#=?#=@#=A#=B#=C#=D#=E#=F#=G#=H#=I#=J#=K#=L#=M#=N#=O#=P#=Q#=R#=S#=T#=T#=U#=V#=W#=X#=Y#=Z#=[#=\#=]#=^#=_#=_#=`#=a#=b#=c#=d#=e#=f#=g#=h#=i#=j#=k#=k#=l#=m#=n#=o#=o#=p#=q#rs#rt#uvwxyz{|}~       !"#$%&'()*+,-./012345678 9:;<=>?@ABCDEFGHIJKLMNOPQRSTUV9WXYZ[\]^_Z[`abcdefdegdehdeidejdekdeldemdendeodepdeqabrabsabtabuabvabwabxabyabzab{ab|ab}a~ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ Z Z Z Z ZZZZZZZZZZZZZZZZZZZZZ Z!Z"Z#Z$Z%Z&Z'(Z')Z'*Z'+Z,-Z,.Z,/Z,0Z,1Z23Z24Z25Z26Z27Z28Z29Z2:Z2;Z2<Z2=Z2>Z2?Z2@Z2AZBCZBDZBEZBFZBGZBHZBIZBJZBKZBLZBMZBNZBOZBPZBQZBRZBSZBTZBUZBVZBWZBXZBYZBZZB[ZB\ZB]ZB^ZB_ZB`ZBaZBbZBbZBcZBdZBeZBfZBgZBhZBiZBjZBkZBlZBmZBnZBoZBpZBqZBrZBsZBtZBuZBvZBwZBxZByZBzZB{ZB|ZB}Z~Z~Z~Z~Z~Z~Z~Z~ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ Z Z Z Z ZZZZZZZZZZZZZZZZZZZ Z!Z"#Z"$Z"%Z"&Z"'Z"(Z")Z"*Z"+Z",Z"-Z".Z"/Z"0Z"1Z"2Z"3Z"4Z"5Z"6Z"7Z"8Z"9Z:;Z:<Z:=Z:>Z:?Z:@Z:AZ:BZ:CZ:DZ:EZ:FZ:GZ:HZ:IZ:JZ:KZ:LZ:MZ:NZ:OZ:PZ:QZ:RZ:SZ:TZ:UZ:VZ:WZ:XZ:YZ:ZZ:[Z:\Z:]Z:^Z:_Z:`Z:aZbcZbdZbeZbfZbgZbhZbiZbjZbkZblZbmZbnZboZbpZbqZbrZbsZbtZbuZbvZbwZbxZbyZbzZb{Zb|Zb}Zb~ZbZbZbZbZbZbZbZbZbZbZbZbZbZbZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ Z Z Z  Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z  Z !Z "Z #Z $Z %Z &Z 'Z (Z )Z *Z +Z ,Z -Z .Z /Z 0Z 1Z 2Z 3Z 4Z 5Z 6Z 7Z 8Z 9Z :Z ;Z <Z =Z >Z?@Z?AZ?BZ?CZ?DZ?EZ?FZ?GZ?HZ?IZ?JZ?KZ?LZ?MZ?NZOPZOQZORZOSZOTZOUZOVZOWZOXZOYZOZZO[ZO\ZO]ZO^ZO_ZO`ZOaZbcZbdZbeZbfZbgZbhZbiZbjZbkZblZbmZbnZboZbpZbqZbrZbsZbtZbuZbvZbwZbxZbyZbzZb{Zb|Zb}Zb!Zb~ZbZbZbZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[ Z[ Z[ Z[ Z[ Z[ Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[ Z[!Z["Z[#Z[$Z[Z[%Z[&Z['Z[(Z[)Z[*Z[*Z[+Z[,Z[-Z[.Z[.Z[/Z[0Z[1Z[2Z[3Z[4Z[5Z[6Z[7Z[8Z[9Z[:Z[:Z[;Z[<Z[<Z[=Z[>Z[?Z[@Z[AZ[BZ[CZ[DZ[EZ[FZ[GZ[\Z[HZ[IZ[JZ[KZ[KZ[LZ[MZ[NZ[OZ[PZ[QZ[RZ[SZ[TZ[UZ[VZ[WZ[XZ[YZ[ZZ[[Z[[Z[\Z[]Z[^Z[_Z[`Z[aZ[aZ[bZ[cZ[dZ[`Z[eZ[fZ[gZ[hZ[iZ[jZ[kZ[lZ[mZ[nZ[oZ[pZ[qZ[rZ[sZ[tZ[uZ[vZ[wZ[xZ[xZ[yZ[zZ[{Z[|Z[|Z[}Z[~Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[Z[ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ""""""""#hledger-1.13-9z979iUhgmWEmpN1E8RCq4 Hledger.CliHledger.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.PricesHledger.Cli.Commands.HelpHledger.Cli.Commands.FilesHledger.Cli.Commands.CloseHledger.Cli.Commands.CheckdupesHledger.Cli.Commands.CheckdatesHledger.Cli.Commands.Balance"Hledger.Cli.CompoundBalanceCommand$Hledger.Cli.Commands.IncomestatementHledger.Cli.Commands.Cashflow'Hledger.Cli.Commands.Balancesheetequity!Hledger.Cli.Commands.BalancesheetHledger.Cli.Commands.AddHledger.Cli.Commands.PrintHledger.Cli.Commands.Rewrite Hledger.Cli.Commands.PrintuniqueHledger.Cli.Commands.ImportHledger.Cli.Commands.ActivityHledger.Cli.Commands.AccountsHledger.Cli.CommandsHledger.Cli.Main Hledger.Utils debugLevel Paths_hledger%cmdargs-0.10.20-2I5EC3CdzQ7qCXt6V31JgSystem.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 expandArgsAtTopicdocFiles docTopics lookupDocTxtlookupDocNroff lookupDocInfoprintHelpForTopicrunPagerForTopicrunManForTopicrunInfoForTopicprognameversionprognameandversionprognameanddetailedversionbinaryfilenameCliOptsrawopts_command_file_ inputopts_ reportopts_ output_file_output_format_debug_no_new_accounts_width_available_width_ CommandDoc helpflagsdetailedversionflag inputflags reportflags outputflagsoutputFormatFlagoutputFileFlagargsFlaggeneralflagsgroup1generalflagsgroup2generalflagsgroup3defModedefCommandModeaddonCommandModehledgerCommandMode showModeUsage topicForMode withAliases defcliopts decodeRawOpts defaultWidthreplaceNumericFlagsrawOptsToCliOpts checkCliOptsgetHledgerCliOptsjournalFilePathFromOptsoutputFileFromOptsdefaultOutputFormat outputFormatsoutputFormatFromOptsrulesFilePathFromOpts widthFromOptsregisterWidthsFromOptslineFormatFromOptsdefaultBalanceLineFormat hledgerAddonslikelyExecutablesInPathhledgerExecutablesInPath$fDefaultCliOpts $fShowCliOpts $fDataCliOpts withJournalDojournalTransform pivotByOptsanonymiseByOptsjournalApplyValuejournalAddForecast writeOutput journalReloadjournalReloadIfChangedjournalFileIsNewerjournalSpecifiedFileIsNewerfileModificationTime openBrowserOnwriteFileWithBackupIfChangedwriteFileWithBackupreadFileStrictlytagsmodetags statsmodestatsroimoderoi $fShowOneSpan registermoderegisterpostingsReportAsTextpostingsReportItemAsTexttests_Registerregistermatchmode registermatch pricesmodepriceshelpmodehelp' filesmodefiles closemodeclosecheckdupesmode checkdupescheckdatesmode checkdates balancemodebalancebalanceReportAsTextbalanceReportItemAsTextmultiBalanceReportAsCsvmultiBalanceReportAsHtmlmultiBalanceReportHtmlRowsmultiBalanceReportAsTextbalanceReportAsTablebalanceReportTableAsText tests_BalanceCBCSubreportSpeccbcsubreporttitlecbcsubreportquerycbcsubreportnormalsigncbcsubreportincreasestotalCompoundBalanceCommandSpeccbcdoccbctitle cbcqueriescbctypecompoundBalanceCommandModecompoundBalanceCommandincomestatementmodeincomestatement cashflowmodecashflowbalancesheetequitymodebalancesheetequitybalancesheetmode balancesheetaddmodeaddjournalAddTransactionappendToJournalFileOrStdouttransactionsSimilarTo&$fExceptionRestartTransactionException$fShowEntryState!$fShowRestartTransactionException printmodeprint'originalTransaction rewritemoderewrite$fShowDiffLine$fFunctorDiffLine$fFoldableDiffLine$fTraversableDiffLineprintuniquemode printunique importmode importcmd activitymodebarcharactivity showHistogram printDayWithcountBar accountsmodeaccountsbuiltinCommandsbuiltinCommandNames findCommandprintCommandsListtestcmdtests_Commands tests_Climainmodemain argsToCliOptsmoveFlagsAfterCommandisMovableNoArgFlagisMovableReqArgFlagisMovableReqArgFlagAndValueisValue flagstomovenoargflagstomovereqargflagstomoveparseCommandDocfilePathExtension anonymise backUpFile backupNumbercompareStringsbalanceReportAsCsvrenderBalanceReportItemrenderComponentrenderComponent1multiBalanceReportHtmlHeadRowmultiBalanceReportHtmlBodyRowmultiBalanceReportHtmlFootRow&tabular-0.2.2.7-FYVnBEx3xwsDpJzPJOu9nb Text.TabularTableCompoundBalanceReportcompoundBalanceSubreportcompoundBalanceReportAsText concatTablescompoundBalanceReportAsCsvcompoundBalanceReportAsHtml EntryStateesOptsesArgsesToday esDefDate esJournalesSimilarTransaction esPostingsgetAndAddTransactions completerensureOneNewlineTerminatedregisterFromStringcompareDescriptionstransactionToCSV printMatchtransactionModifierFromOpts'hledger-lib-1.13-4fppexmZlZAIZtXLQMy7mYHledger.Data.TypesTransactionModifier renderPatch commandsListcommandsFromCommandsListJournalbase Debug.Tracetrace(ansi-terminal-0.9-6m3n9YbVHNU1A3sQB6p3tzSystem.Console.ANSI.TypesColorBlackRedGreenYellowBlueMagentaCyanWhiteColorIntensityDullVivid traceMarkerIO traceMarker traceEventIO traceEvent traceStack traceShowMtraceM traceShowId traceShowtraceId putTraceMsgtraceIOGHC.Stack.Types HasCallStack%easytest-0.2.1-Ben08LRB6oz5HP76kG753vEasyTest.Porcelainfork'forkskipoknote'rerunrun rerunOnlyrunOnlyusingexpectEqexpectLeftNoShow expectLeftexpectRightNoShow expectRight expectJustexpectioEasyTest.GeneratorsmapsOfmapOfpairlistsOflistOfpickword8'word'double'int'worddoubleintword8boolrandom'randomEasyTest.InternalnotescopecrashTestHledger tests_HledgerHledger.Reports tests_ReportsHledger.Reports.BudgetReporttests_BudgetReportmaybeAccountNameDropbudgetReportAsTablebudgetReportAsTextbudgetReportSpancombineBudgetAndActual budgetRollUp budgetJournalsortBudgetReport budgetReport BudgetGoal BudgetTotal BudgetAverage BudgetCell BudgetReportBudgetReportRow#Hledger.Reports.MultiBalanceReportstests_MultiBalanceReports tableAsText#balanceReportFromMultiBalanceReportmultiBalanceReportSpan mbrNegatembrNormaliseSignmultiBalanceReportMultiBalanceReportMultiBalanceReportRowHledger.Reports.BalanceReporttests_BalanceReportsortAccountItemsLike balanceReportflatShowsExclusiveBalance BalanceReportBalanceReportItem Hledger.Read tests_Read readJournalreadJournalFilereadJournalFiles readJournal'ensureJournalFileExistsrequireJournalFileExistssplitReaderPrefixdefaultJournalPathdefaultJournalPrefixedFilePathHledger.Read.JournalReaderpostingpHledger.Read.Common tests_Commonbracketeddatetagsppostingcommentptransactioncommentpfollowingcommentpemptyorcommentlinepmultilinecommentp rawnumberp fromRawNumbernumberpfixedlotpricepbalanceassertionp priceamountpcommoditysymbolp mamountp'amountp'amountpspaceandamountormissingp singlespacepsinglespacedtextsatisfyingpsinglespacedtextp accountnamepmodifiedaccountnamepsecondarydatep datetimepdatep descriptionpcodepstatuspjournalAddFileclearAccountAliasesgetAccountAliasesaddAccountAliasgetParentAccountpopParentAccountpushParentAccountaddDeclaredAccountTypegetAmountStylegetDefaultAmountStylegetDefaultCommodityAndStylesetDefaultCommodityAndStylegetYearsetYearparseAndFinaliseJournal'parseAndFinaliseJournaljournalSourcePosgenericSourcePosrejprunErroringJournalParserrjprunJournalParserrtp runTextParserrawOptsToInputOpts definputoptsReaderrFormat rExtensionsrParser rExperimental InputOptsmformat_ mrules_file_ separator_aliases_anon_ignore_assertions_new_ new_save_pivot_auto_Hledger.Reports.EntriesReporttests_EntriesReport entriesReport EntriesReportEntriesReportItemHledger.Reports.PostingsReporttests_PostingsReportmkpostingsReportItempostingsReportPostingsReportPostingsReportItem#Hledger.Reports.TransactionsReportstests_TransactionsReportstransactionsReportByCommoditytransactionRegisterDateaccountTransactionsReportjournalTransactionsReporttriCommodityBalancetriCommodityAmount triBalance triAmounttriDatetriOrigTransactionTransactionsReportTransactionsReportItemAccountTransactionsReportAccountTransactionsReportItemHledger.Reports.ReportOptionstests_ReportOptionsspecifiedEndDatespecifiedStartDatespecifiedStartEndDates reportEndDatereportStartDate reportSpanqueryOptsFromOptsqueryFromOptsOnly queryFromOptsjournalSelectingAmountFromOptsflat_tree_whichDateFromOpts postingDateFntransactionDateFnreportOptsToggleStatussimplifyStatusesintervalFromRawOptscheckReportOptsrawOptsToReportOpts defreportopts FormatStr BalanceType PeriodChangeCumulativeChangeHistoricalBalanceAccountListMode ALDefaultALTreeALFlat ReportOptsperiod_ interval_ statuses_cost_depth_display_date2_empty_ no_elide_real_format_query_average_related_ balancetype_accountlistmode_drop_ row_total_ no_total_value_pretty_tables_ sort_amount_invert_normalbalance_color_ forecast_ transpose_Hledger.Reports.ReportTypes PercentageChangeBalanceTotalAveragePeriodicReportPeriodicReportRow Hledger.Data tests_DataHledger.Data.Ledger tests_LedgerledgerCommoditiesledgerDateSpanledgerPostingsledgerAccountsMatchingledgerLeafAccountsledgerTopAccountsledgerRootAccount ledgerAccountledgerAccountNamesledgerFromJournal nullledgerHledger.Data.Journal tests_Journal samplejournal matchpats journalPivotjournalDateSpantraverseJournalAmountsoverJournalAmountsjournalAmountsjournalConvertAmountsToCostcanonicalStyleFromcommodityStylesFromAmountsjournalCommodityStylesjournalApplyCommodityStylesjournalBalanceTransactionsjournalCheckBalanceAssertionsjournalModifyTransactionsjournalUntieTransactionsjournalNumberAndTieTransactionsjournalSetLastReadTimejournalReversefilterTransactionPostingsfilterPostingAmountfilterTransactionAmountsfilterJournalAmountsfilterJournalPostingsfilterJournalTransactionsjournalCashAccountQuery journalProfitAndLossAccountQueryjournalBalanceSheetAccountQueryjournalExpenseAccountQueryjournalRevenueAccountQueryjournalEquityAccountQueryjournalLiabilityAccountQueryjournalAssetAccountQueryjournalAccountNames$journalAccountNamesDeclaredOrImplied!journalAccountNamesDeclaredOrUsedjournalAccountNamesDeclaredjournalAccountNamesImpliedjournalAccountNamesUsedjournalPostingsjournalDescriptionsjournalPrevTransactionjournalNextTransactionjournalTransactionAtaddMarketPriceaddPeriodicTransactionaddTransactionModifieraddTransactionjournalFilePathsjournalFilePath nulljournalHledger.Data.MarketPriceshowMarketPrice Hledger.Data.PeriodicTransaction!checkPeriodicTransactionStartDaterunPeriodicTransactionHledger.Data.AccountshowAccountDebugshowAccountsBoringFlag showAccounts printAccounts lookupAccountaccountDeclarationOrderAndNamesortAccountTreeByDeclarationsortAccountNamesByDeclarationaccountSetDeclarationInfosortAccountTreeByAmountfilterAccountsflattenAccounts pruneAccountsclipAccountsAndAggregate clipAccounts sumAccounts anyAccounts mapAccountsaccountsLevelsparentAccountstieAccountParents accountTreeaccountsFromPostingsnullacctHledger.Data.Timeclocktests_TimeclocktimeclockEntriesToTransactions Hledger.Data.TransactionModifiermodifyTransactions Hledger.Query tests_QuerymatchesMarketPricematchesTransactionmatchesPosting matchesAmountmatchesCommoditymatchesMixedAmountmatchesAccountinAccountQuery inAccount queryDepthqueryDateSpan' queryDateSpan queryEndDatequeryStartDatequeryIsStartDateOnly queryIsEmpty queryIsStatus queryIsReal queryIsSym queryIsAmt queryIsAcctqueryIsDateOrDate2 queryIsDate2 queryIsDate queryIsDepth queryIsNull filterQuery simplifyQuerywords'' parseQueryQueryAnyRealEmptyAndNotTagNoneOrCodeDescAcctDateDate2StatusQAmtSymDepthQueryOptQueryOptInAcctOnlyQueryOptInAcctHledger.Data.Transactiontests_Transaction txnUntieKnot txnTieKnottransactionDate2balanceTransactionUpdatebalanceTransactionisTransactionBalancedtransactionPostingBalancestransactionsPostingsbalancedVirtualPostingsvirtualPostingsassignmentPostings realPostingshasRealPostingsshowAccountNameshowPostingLines%showTransactionUnelidedOneLineAmountsshowTransactionUnelidedshowTransactionnulltransactionshowGenericSourcePossourceFirstLinesourceFilePathHledger.Data.Posting tests_PostingaccountNameApplyAliasesMemoaccountNameApplyAliasesconcatAccountNamesjoinAccountNamesaccountNameWithPostingTypeaccountNameWithoutPostingTypeaccountNamePostingTypepostingsDateSpan'postingsDateSpanisEmptyPostingisPostingInDateSpan'isPostingInDateSpanrelatedPostingstransactionAllTagspostingAllTagspayeeAndNoteFromDescriptiontransactionNotetransactionPayee postingStatus postingDate2 postingDate removePrices sumPostingsaccountNamesFromPostings isAssignment hasAmountisBalancedVirtual isVirtualisReal showComment showPostingoriginalPosting assertion nullassertion nullsourcepospostposting nullpostingHledger.Data.Datesnulldate emptydatespan nulldatespan mkdatespan periodexprpfailIfInvalidDayfailIfInvalidMonthfailIfInvalidYear isDateSepChar datesepchar datesepchars smartdate parsedate parsedateMprevday fixSmartDatefixSmartDateStrEither'fixSmartDateStrEitherfixSmartDateStr maybePeriodparsePeriodExpr'parsePeriodExpr spanUnion spansUnionspanDefaultsFromspanIntervalIntersect spanIntersectspansIntersectperiodContainsDatespanContainsDate daysInSpan splitSpan spansSpanspanEnd spanStartelapsedSecondsgetCurrentYeargetCurrentMonth getCurrentDayshowDateSpanMonthAbbrev showDateSpanshowDateHledger.Data.StringFormattests_StringFormatdefaultStringFormatStyleparseStringFormat StringFormatOneLine TopAligned BottomAlignedStringFormatComponent FormatLiteral FormatFieldReportItemField AccountFieldDefaultDateFieldDescriptionField TotalFieldDepthSpacerFieldFieldNoHledger.Data.AccountNametests_AccountNameaccountRegexToAccountNameaccountNameToAccountOnlyRegexaccountNameToAccountRegex escapeNameclipOrEllipsifyAccountNameclipAccountNameelideAccountNameaccountNameTreeFromsubAccountNamesFromisSubAccountNameOfisAccountNamePrefixOfparentAccountNamesparentAccountNametopAccountNamesexpandAccountNameexpandAccountNamesaccountNameDropunbudgetedAccountNameaccountNameLevelaccountSummarisedNameaccountLeafNameaccountNameFromComponentsaccountNameComponentsacctsep acctsepcharHledger.Data.Amount tests_Amount mixedAmountTotalPriceToUnitPricemixedAmountValuecanonicaliseMixedAmount#cshowMixedAmountOneLineWithoutPrice"showMixedAmountOneLineWithoutPricecshowMixedAmountWithoutPriceshowMixedAmountWithoutPriceshowMixedAmountDebugshowMixedAmountWithPrecisionsetMixedAmountPrecision ltraceamountshowMixedAmountOneLine showMixedAmountWithZeroCommodityshowMixedAmountstyleMixedAmountisReallyZeroMixedAmountCostisReallyZeroMixedAmountisZeroMixedAmountisNegativeMixedAmountaverageMixedAmountsmultiplyMixedAmountAndPricedivideMixedAmountAndPricemultiplyMixedAmountdivideMixedAmountcostOfMixedAmountfilterMixedAmountByCommodityfilterMixedAmountamounts*normaliseMixedAmountSquashPricesForDisplaynormaliseMixedAmountmixedmissingmixedamt nullmixedamt amountValuecanonicaliseAmountmaxprecisionwithpoint maxprecisionshowAmountWithZeroCommodity cshowAmount showAmount styleAmountwithDecimalPointsetAmountDecimalPointwithInternalPrecisionsetAmountInternalPrecisionshowAmountWithoutPriceshowAmountDebugsetMinimalPrecisionsetFullPrecision withPrecisionsetAmountPrecisionisReallyZeroAmount isZeroAmountisNegativeAmountmultiplyAmountAndPricedivideAmountAndPricemultiplyAmount divideAmountamountTotalPriceToUnitPrice costOfAmountamountWithCommodity@@atgbpeurusdhrsnum missingamtnullamtamount amountstyleHledger.Data.CommodityconversionRatecommcommoditysymbols commodityquoteCommoditySymbolIfNeededisNonsimpleCommodityCharnonsimplecommoditycharsHledger.Data.RawOptionsintopt maybeintoptlistofstringopt maybecharopt stringoptmaybestringoptboolopt inRawOpts setbooloptsetoptRawOpts tests_UtilshereFileRelativeembedFileRelativemapM' sequence' minimumStrict maximumStrict sumStrictmaximum'readHandlePortablyreadFileOrStdinPortablyreadFilePortably firstJustexpandHomePath expandPathapplyNisRightisLeftgetCurrentZonedTimegetCurrentLocalTimesplitAtElementsixth6fifth6fourth6third6second6first6fifth5fourth5third5second5first5fourth4third4second4first4third3second3first3Hledger.Utils.Text tests_Text textWidth textTakeWidthtextPadRightWidetextPadLeftWidefitTexttextConcatTopPadded textUnbracket stripquotesescapeDoubleQuotes quoteIfSpacedtextElideRight textrstrip textlstrip textstripHledger.Utils.TestexpectParseStateOnexpectParseEqOnEexpectParseEqOnexpectParseEqE expectParseEqexpectParseErrorEexpectParseError expectParseE expectParseis expectEqPP runEasytests_teststests_itit_testtestHledger.Utils.Debugdbgparse traceParseplogAtplogdbg9IOdbg8IOdbg7IOdbg6IOdbg5IOdbg4IOdbg3IOdbg2IOdbg1IOdbg0IO ptraceAtIOdbg9dbg8dbg7dbg6dbg5dbg4dbg3dbg2dbg1dbgExitdbg0ptraceAt traceWithptracepshowpprintHledger.Utils.String charWidth stripAnsistrWidth takeWidth padRightWide padLeftWidefitStringMulti fitStringfitto cliptopleftpadrightpadleft padbottompadtopvConcatRightAlignedvConcatLeftAligned concatOneLineconcatBottomPaddedconcatTopPadded unbracketunwords'words' escapeQuotessingleQuoteIfNeeded quoteIfNeeded underline formatString elideRight elideLeft stripbracketschomprstriplstripstrip uppercase lowercaseHledger.Utils.Parseeolof restoflinespacenonewlineisNonNewlineSpacenonspaceshowDateParseError parseerror fromparseparseWithState'parseWithStateparsewithString parsewith surroundedBy choiceInStatechoice'SimpleStringParserSimpleTextParser TextParser JournalParserErroringJournalParserText.Megaparsec.Custom CustomErrHledger.Data.PeriodstartOfFirstWeekInMonthfirstMonthOfQuarterquarterContainingMonthyearMonthContainingWeekStarting mondayBefore periodShrink periodGrow periodMoveToperiodPreviousIn periodNextInperiodPrevious periodNext periodEnd periodStartshowPeriodMonthAbbrev showPeriodisStandardPeriodisLastDayOfMonthsimplifyPerioddateSpanAsPeriodperiodAsDateSpannullaccountdeclarationinfonullperiodictransactionnulltransactionmodifier SmartDate WhichDate PrimaryDate SecondaryDateDateSpanYearMonthQuarterYearWeek MonthWeekYearDayMonthDayWeekDayPeriod DayPeriod WeekPeriod MonthPeriod QuarterPeriod YearPeriod PeriodBetween PeriodFromPeriodTo PeriodAllInterval NoIntervalDaysWeeksMonthsQuartersYears DayOfMonthWeekdayOfMonth DayOfWeek DayOfYear AccountName AccountTypeAsset LiabilityEquityRevenueExpense AccountAlias BasicAlias RegexAliasSideRLQuantityPriceNoPrice UnitPrice TotalPrice AmountStyleascommoditysideascommodityspaced asprecisionasdecimalpoint asdigitgroupsDigitGroupStyle DigitGroupsCommoditySymbol CommoditycsymbolcformatAmount acommodity aquantity aismultiplierastyleaprice MixedAmountMixed PostingTypeRegularPostingVirtualPostingBalancedVirtualPostingTagNameTagValueDateTagStatusUnmarkedPendingClearedBalanceAssertionbaamountbaexact bapositionPostingpdatepdate2pstatuspaccountpamountpcommentptypeptagspbalanceassertion ptransactionporiginGenericSourcePosJournalSourcePos Transactiontindextprecedingcomment tsourcepostdatetdate2tstatustcode tdescriptiontcommentttags tpostings tmquerytxttmpostingrules TMPostingRulePeriodicTransaction ptperiodexpr ptintervalptspanptstatusptcode ptdescription ptcommentpttags ptpostings TimeclockCode SetBalanceSetRequiredHoursInOutFinalOutTimeclockEntry tlsourcepostlcode tldatetime tlaccount tldescription MarketPricempdate mpcommoditympamountjparsedefaultyearjparsedefaultcommodityjparseparentaccounts jparsealiasesjparsetimeclockentriesjincludefilestackjdeclaredaccountsjdeclaredaccounttypes jcommoditiesjinferredcommodities jmarketprices jtxnmodifiers jperiodictxnsjtxnsjfinalcommentlinesjfiles jlastreadtime ParsedJournal StorageFormatAccountDeclarationInfo adicommentaditagsadideclarationorderAccountanameadeclarationinfoasubsaparentaboring anumpostings aebalance aibalance NormalSignNormallyPositiveNormallyNegativeLedgerljournal laccountsHledger.Utils.Tree treeFromPaths treeFromPath mergeTrees emptyTree showforestshowtreetreeany treefiltertreemap treeprunesubtreeinforest subtreeatleavesbranchessubsrootFastTreeTHledger.Utils.RegexregexReplaceCIMemoregexReplaceMemoregexReplaceCI regexReplaceregexReplaceByCIregexReplaceByregexMatchesCI regexMatchesRegexp ReplacementHledger.Utils.UTF8IOCompat usageError userError'error'toSystemStringfromSystemString SystemStringHledger.Utils.ColorbgColorcolor getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName