úÎL/Fì      None2579;HState monad providing context, i.e. function we've already called before.datatype for a token returning a random string$Pretoken, aka token as first read in dataype for a key aka token name0datatype for a double representing a probabilityFunction to transform a 8 into a `Tree String` so that it can be pretty-printed. tokToTree 1.0 tok@Compare inside the state monad using only the underlying objectsMake O a monoid so we can append them together nicely (since they do generate text). d(Value "Hello") <> (List [(0.5," you"), (0.5, " me")]) (List [(0.5,"Hello you"), (0.5, "Hello me")])  None2579; Draw as a syntax Tree"Get directory associated to a file1Function to apply a value on both arguments, e.g. between .$ (symbol "\'")0Normalize pre-tokens/corresponding probabilities-Helper function for creating a cdf from a pdfShow as a T.TextPretty-print a ParseErrorStrip a pre-token's nameRead a file in as a Text cAdd a PR for this? Could be useful in Megaparsec idk Allows us to use monoidal addition on parsers    None257Datatype for a semantic error!5Throw custom error given by string, within the parser"Throw  error within parser#+Throws argument for circular function calls$'Throws error for insufficient arguments%Constant to start s& Convert a Text to a ' for use with a pretty-printer(*big semantics checker that sequences stuff)'helper to filter out stuff that doesn't*fTake the head of the list, or throw the appropriate error given which functions we are trying to call.+:Access argument, or throw error if the list is too short. ,'checker to verify there is at most one  `:return` statement- Checks that we have at most one  `:return` template in the file.Derived via our show instance;/ display a ! nicely with coloration & whatnot!"#$%&()*+,-./!"#$%&()*+,-!"#$%&()*+,-./None257 Generate randomized text from a 05Helper function to compute the cdf when we have a pdf000None2571Get the :return value2(Convert the stuff after the number to a 36Build token in tree structure, without concatenating. 42Build the token without concatenating, yielding a $ suitable to be printed as a tree. 5+Given keys naming the tokens, and lists of  , build our 6PSort the keys that we have parsed so that dependencies are in the correct places7.Ordering on the keys to account for dependency812345678123456781234567None25791Parse a lexeme, aka deal with whitespace nicely. :*space consumer with awareness for comments;6parse a symbol, i.e. string plus surrouding whitespace<Parse a number/probability=Parse an integer>-Make sure definition blocks start un-indented?0Make contents of definition blocks are indented.@Parse between quotesAParse a keywordB Parse a varC Parse the C keyword.D Parse the D keyword.E Parse the  `:return` keyword.F&Parse a template name (what follows a  `:define` or G block)HParse template into a  of referents and stringsI*Parse a probability/corresponding templateJ Parse an DKParse a C blockL Parse the  `:return` blockMParse the program in terms of  and the s to link them. QParse text as a token + context (aka a reader monad with all the other functions)NParse text as token + contextO!Parse text as a list of functionsP@Parse text as a list of tokens, suitable for printing as a tree. Parse text as a token 'f <- readFile "template.mad" parseTok f| Parse text given a contextQ8Parse text as a token, suitable for printing as a tree..RParse inclustions9:;<=>?@ABCDEFHIJKLM NOP QR9:;<=>?@ABCDEFHIJKLM NOP QR9:;<=>?@ABCDEFHIJKLM NOP QRNone257 Parse a template file into the  data typeS'Generate text from file with inclusions :Generate randomized text from a file conatining a templateTRun in the appropriate folderUGet file as context BParse a template into a RandTok suitable to be displayed as a tree S TU  S TU  S TU None257 Vdatatype for the subcommandsWdatatype for the programX/Parser for command-line options for the programYParser for debug subcommandZParser for the run subcommand[Parser for the lint subcommandMain program action\Wraps parser with help parser]7given a parsed record perform the appropriate IO actionV^_`abcWdefXYZ[\]V^_`abcWdefXYZ[\] V^_`abccWdefXYZ[\]None257  g      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ab c d e f g h i j k l m n o p d q rs&madlang-2.1.0.3-9Zw4ipD0RtjIcgg52Kyg0F Text.MadlibsText.Madlibs.Internal.TypesText.Madlibs.Internal.UtilsText.Madlibs.Cata.SemErrText.Madlibs.Cata.RunText.Madlibs.Ana.ParseUtilsText.Madlibs.Ana.ParseText.Madlibs.Ana.ResolveText.Madlibs.Exec.MainContextRandTokListValue SemanticErrorOverloadedReturnsCircularFunctionCallsInsufficientArgsrun parseTokMparseTok parseFilerunFilemakeTree runMadlangPreTokKeyProb tokToTree $fEqStateT$fMonoidRandTokName displayTreegetDir.$ normalizecdfshow'parseErrorPretty'unTok readFile'$fMonoidParsecT customErroroverloadedReturnscircularFunctionCallsinsufficientArgs semErrStarttext',ansi-wl-pprint-0.6.7.3-EqhsHSbxOT2xFHZZJCFwfText.PrettyPrint.ANSI.LeijenDoccheckSemanticssumProbhead'access checkReturn singleReturn$fExceptionSemanticError$fShowSemanticErrormkCdf takeTemplate concatTokbuildTok buildTreebuildsortKeys orderKeysstriplexeme spaceConsumersymbolfloatinteger nonIndented indentGuardquotekeywordvardefineincludemainnamebaseGHC.BasereturnpreStrpair inclusions definitionfinalprogram parseTreeM parseTokF parseTreeF parseTreeparseInclusionsgetInclusionCtx runInFolderparseCtx SubcommandProgramordersdebugtemplintwrappertemplateDebugRunLintversionrepclInputssubinput