$ ;      !"#$%&'()*+,-./0123456789:None!"+03MTUW    None!"+03MTUW  !"#$%j;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !"#$% ! "#$%  !"#$%None!"+03MTUW & [a-z][a-z0-9]*' [a-z_][a-z0-9_]*( keyword w parses the string wB which must not be followed by any alpha numeric character, i.e.  keyword "as" parses "as" but not "ass".+mParses a negative or a positive number (indicated by an unary minus operator, does not accept an unary plus).,"Parses a positive integral number.-IParses a negative integral number (indicated by an unary minus operator)..Parses a decimal number Parses a positive decimal number Parses a negative decimal number/7Parses end of line, which maybe ('\n' or '\r' or "rn").4Returns the newline character, '\r' in case of "rn". &'()*+,-./ ;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./ / +,-.&'()* &'()*+,-./None!"+03MTUW01#update function for current contextpredicate to filter filescurrent context23012301230123None!"+03MTUW 456789456789456789 456789None!"+03MTUW:LInfix to postfix notation (an implementation of the Shunting-Yard-Algorithm):Determine operatorIs left precedence?Precedence of given operator!The input stream (infix notation)$The output stream (postfix notation):::      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFEGEHEIEJEKELEMENEOEPEQERESETEUEVEWEXEYEZE[\]\^\_\`\a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z\{\|\}\~\\\\\\\\\\\\\\\\\\\\\\\\hydrogen-util-0.8Hydrogen.Util.Parsec.CharHydrogen.Util.ParsecHydrogen.Util.ReadHydrogen.Util.FilesHydrogen.Util.CliArgs Hydrogen.Util parsec-3.1.7Text.Parsec.CharstringsatisfyanyCharcharhexDigitdigitletteralphaNumloweruppertabspacespacesnoneOfoneOfText.Parsec.Error ParseErrortryReadtryReads firstJustignoreUnderscorestryReadDecimaltryReadRational tryReadHex tryReadUUIDtryReadVersiontryReadDateTime tryReadDate tryReadTime tryReadBoolTokensParser SomethingBadmkErrorrunTokenParser sourceToken manyBetween>+><+<namename_keywordkeyword_between'numberpositiveNumbernegativeNumberdecimalnewlinefindFilesRecursivelyfindFilesRecursivelyWithContextescapeunescapeOptionswitchoptarg~:getOptsgetOpts'syaText.Parsec.CombinatormanyTill notFollowedByeofanyTokenchainr1chainl1chainlchainrcountendByendBy1sepEndBy sepEndBy1sepBy1sepBymany1 skipMany1betweenoptional optionMaybeoptionchoiceText.Parsec.Prim updateStatesetState modifyStateputStategetStateupdateParserStatesetParserStategetParserStatesetInput setPositiongetInput getPosition parseTestparse runParser runParserTrunPrunPT manyAccumskipManymany tokenPrimEx tokenPrimtoken lookAheadtrytokenslabelslabel<|> parserPlus parserZero parserFailmergeErrorReply parserBind parserReturn parsecMapmkPT runParsecT unexpectedsysUnExpectError unknownErrorParsecTParsecConsumedEmptyOkErrorReply stateUserstatePos stateInputStateunconsStreamText.Parsec.Pos updatePosCharupdatePosStringsetSourceColumn setSourceLine setSourceNameincSourceColumn incSourceLine sourceColumn sourceLine sourceName initialPosnewPos SourceNameLineColumn SourcePospositiveDecimalnegativeDecimalOptShort OptSwitchOptArgisArgshortslong