h$-[,G7      !"#$%&'()*+,-./0123456None+6HCLThe Request data type represents a value requested interactively. The request may have failed or been no response, in which case the request fails. Otherwise, the request holds the response given. HCL7Runs a request, throws away the result, and returns an IO type (rather than a Request). Useful when a request should just be run and we don't care about the result. Generally used at the top level to evaluate a request in main. HCL(Extracts the value from a given request.HCL being thrown by the original request is considered a failire.&HCLGive a function from a -> b, an initial value, and a  for a , builds a  for b. When ( a)+ fails, then the function returns whatever ( b) has been built. 'HCLGiven a request, builds a list of response. When the user enters Nothing, the list building ends (HCLPrints a message and makes a request. If the message ends in a space, it is assumed that the user should enter values on the same line. Otherwise, a new line is printed and the reqeust is evaulated. )HCLDisplays a message prompt and a default choice in a common way. If the user doesn't provide a choice or enters bad data, the default value provided is returned. Otherwise, the value entered is returned. *HCLDeprecated name for ). +HCL:Prints a message, displays defaults (if any), and turns a Request String into a  Request Bool. If a default value is provided, it will be returned if the user enters nothing or an invalid response. ,HCLShow for requests. -HCLCreates a request which will return a random value or Nothing. The request returns the same value every time it is evaluated. .HCL,Allow the Request type to use IO operations./HCL behaviour as a  MonadPlus allows for successive fallback requests to be used on failure. 0HCLBecause we have defined  as  MonadPlus, we must also define it as  Alternative. 1HCLRequest behavior as a  MonadFail, covers failure - when a request results in Nothing, 2HCL behavior as a Monad all bind operations fail afterwards. Thus, when one request fails, all subsequent requests automatically fail. 3HCLBecause we have defined  as Monad, we must also define it as  Applicative. 4HCLBecause we have defined  as  Applicative, we must also define it as Functor. 5HCLShow for random requests. 6HCLEverytime the request returned is evaluated, it returns a random Just v or Nothing value. "HCLRequest to run.HCL No meaningful value is returned.HCLThe request to evaluate.HCLResult of the request.HCL!The value to turn into a Request.HCLThe value as a Request.HCLIO action to performHCL&Result of the IO action, as a Request.HCLthe value to liftHCLthe resulting  HCL+A request that returns a string (generally ), which will then be parsed.HCLThe value parsed. HCLLeft boolean value.HCLRight boolean value.HCL Result value.HCLLeft boolean value.HCLRight boolean value.HCL Result value.HCLRequest to evaluate.HCL Result value.HCLThe test to applyHCL$Request to evaluate if test is true.HCL%Request to evaluate if test if false.HCLResult.HCLValue to make into a request.HCLResult.HCLFunction to lift.HCLArgument to function.HCLResult.HCLFunction to lift.HCLFirst argument to function.HCLSecond argument to function.HCLResult.HCLDefault value (if any).HCL%Request which gets a string (usually ).HCLResult.HCLRequest to evaluate.HCLResult.HCLRequest to evaluate.HCLDefault value.HCLFunction to map b to Request a.HCLResult.HCL the conditionHCL the requestHCLCondition to test.HCL,Request value to evaluate according to test.HCLResult.HCLRequest to evaluate.HCLDefault value.HCLResult.HCLRequest to ask forever.HCLResult.HCL7List of choices and labels which will be selected from.HCL/Request which gets the selection from the user.HCLResult of selection.HCL#List of request choices and labels.HCLResult.HCLthe label for the selectionHCLthe  to run when selectedHCLthe menu being builtHCLthe resulting menuHCLThe menu to return to.HCL.The label of the submenu (in the current menu)HCLThe submenu itselfHCL;The existing menu into which this submenu will be inserted.HCL!The menu item built and returned. HCLthe label, e.g.: "quit"HCLthe menu being builtHCLthe resulting menu"HCLWhen evaluated, determines if the failure is allowed to proceed or not.HCL+The request to run and to watch for failureHCL+Result of the request (if it did not fail).#HCL3Iterative function which transforms a to Request a.HCLInitial value used.HCLResult of evaulation.$HCLFirst request to evaluate.HCL7Continuation request which is evaluated if first fails.HCLResult.%HCLRequest to evaluate.HCLResult.&HCLAccumulating function.HCLInitial value.HCLRequest to evaluate.HCLResult.'HCLRequest to evaluate.HCLResult.(HCLMessage to display. HCLRequest which gathers inputHCLResult.)HCL+Message to display. Follows conventions of (.HCLRequest to evaluate.HCL#Default value to use if necessary. HCLResult.+HCL+Message to display. Follows conventions of (.HCLDefault value, if any.HCL.Request which gets a string (usually reqResp).HCLResult.,  !"#$%&'()*+, #$"%&'! (*)+7      !"#$%&'()*+,-./012345678HCL-1.8-FNGJfj78JxDGkZJfx8QCZOSystem.Console.HCLRequestexecReq runRequestmakeReqreqIO reqLiftMaybereqResp reqIntegerreqIntreqReadreqChar reqPasswordandReqorReqnotReqreqIfreqConstreqLiftreqLift2reqAgreereqFailrequiredreqMaybereqWhilereqUntil reqDefault reqForever reqChoicesreqMenu reqMenuItem reqSubMenu reqMenuExit reqMenuEnd reqConfirm reqIteratereqContreqWhichreqFoldlreqListpromptprompt1promptWithDefault promptAgree $fShowRequest$fArbitraryRequest$fMonadIORequest$fMonadPlusRequest$fAlternativeRequest$fMonadFailRequest$fMonadRequest$fApplicativeRequest$fFunctorRequest$fShowRandomRequest$fArbitraryRandomRequest