úÎV)QAZ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKL M N O P Q R S T U V W X Y Safe35Safe35³Main type for routes in the API. Used to represent the URL minus the actual endpoint URL as well as the query string and the HTTP method used to communicate with the server.  Alias to (Text, Maybe Text)? used to store each query that gets tacked onto the request. Alias for Text% to store the URL fragments for each Route."Convenience function for building URLParam&s. Right-hand argument must have a ToQueryƒ instance so it can be converted to the appropriate representation in a query string. Query values do not need to be escaped."api_type" =. ("json" :: Text)("api_type", Just "json")%Converts a Route to a URL. Drops any Nothingh values from the query, separates the fragments with "/" and tacks them onto the end of the base URL.  base URL for the Route$ (you can usually get this from the Builder)the Route to processthe finalized URL as a TextZ[      Z[None35Error type for the API, where a“ is the type that should be returned when something goes wrong on the other end - i.e. any error that isn't directly related to this library.dA type that represents any error that happens on the API end. Define your own custom type with a FromJSON8 instance if you want to handle them, or you can use ()( if you just want to ignore them all.:Something went wrong when we tried to do a HTTP operation.AYou're trying to create an invalid URL somewhere - check your Builder's base URL and your Routes.FFailed when parsing the response, and it wasn't an error on their end.2Empty error to serve as a zero element for Monoid.\]\]None35 !"#$%&'()*+,  ,+*)('&%$# "! !"#$%&'()*+,None35-‚Builder type for the API. Keeps track of the API's name and base URL, and how to modify Routes and Requests before they're run.3qMakes a basic builder, i.e. one that simply has a name and base URL and doesn't fiddle with Routes / Requests.-./0123namebase url a simple Builder^-./0123-./0123-./0123^None3545678454587645678None359:;9:;9:;9:;None35<Main API transformer type. s is the API's internal state, e( is the API's custom error type, and a! is the result when the API runs.=Main API type. s is the API's internal state, e( is the API's custom error type, and a/ is the result when the API runs. Based on the APIT transformer.>!Lifts an action that works on an API to an action that works on an API—. This function is provided solely for future-proofing in the case that more transformers need to be stacked on top - it's implemented simply as id for the moment.? Lifts an action that works on a Manager to one that works on an API.@#Lifts an action that operates on a Builder to one that works on an API+. Useful mainly for gaining access to a Builder from inside an API.ALifts an action on an API's state type s to one that works on the API5. Good for messing with the state from inside the API.BRuns an API< by executing its transformer stack and dumping it all into IO!. Only returns the actual result.CRuns an API< by executing its transformer stack and dumping it all into IO?. Returns the actual result as well as the final states of the Builder and custom state s.DRuns a Route7. Infers the type to convert to from the JSON with the a in API$, and infers the error type from e.ERuns a RouteR, but only returns the response and does nothing towards decoding the response.GTry to construct a Request from a Route (with the help of the Builder ). Returns Nothing= if the URL is invalid or there is another error with the Route.H Modify the name of the BuilderS from inside an API. Using this is probably not the best idea, it's nice if the Builder's name is stable at least.I Modify the baseURL of the Builder\ from inside an API. Can be useful for changing the API's endpoints for certain requests.J Modify every RouteO before it runs. Useful for adding extra params to every query, for example.K Modify every RequestW before the API fetches it. Useful for adding headers to every request, for example.<=>?@ABinitial Builder for the APIinitial state s for the API the actual API to run4IO action that returns either an error or the resultCinitial Builder for the API*manager for working with conduit functionsinitial state s for the API the actual API to runQIO action that returns either an error or the result, as well as the final statesDE_FGHIJK<=>?@ABCDEFGHIJK=<BCDFEG>?@AHIJK<=>?@ABCDE_FGHIJK None354  -./012345<=>?@ABCDEFGHIJK None35LMNOPQRSTUVWXY LMNOPQRSTUVNOPQRSLMYXWTUVLMNOPQRSTUVWXY`     !"#$%&'()*+,-./01234556789:;<=>?@@ABCDEFGHIJKLMNOPQ R R S S T U V W X Y Z [ \ ]^_`abcdapibu_9OtXTP33M855onGzZDHI6TNetwork.API.Builder.QueryNetwork.API.Builder.RoutesNetwork.API.Builder.ErrorNetwork.API.Builder.ReceiveNetwork.API.Builder.BuilderNetwork.API.Builder.Send"Network.API.Builder.Send.MultipartNetwork.API.Builder.API*Network.API.Builder.Examples.StackOverflowNetwork.API.BuilderToQuerytoQuery $fToQuery[]$fToQueryMaybe $fToQueryText $fToQueryInt $fToQueryBool$fToQueryIntegerRoute urlPieces urlParams httpMethodURLParamURLPiece=.routeURLAPIError HTTPErrorInvalidURLError ParseError EmptyError JSONResponse unwrapJSONErrorReceivable receiveError Receivablereceive useFromJSONuseErrorFromJSON eitherDecode$fReceivableJSONResponse$fFromJSONJSONResponse$fErrorReceivableValue$fErrorReceivable()$fErrorReceivableByteString$fReceivable(,,,,)$fReceivable(,,,)$fReceivable(,,)$fReceivable(,)$fReceivableValue$fReceivableResponse$fReceivableByteStringBuilder_name_baseURL_customizeRoute_customizeRequest basicBuilderSendablesend$fSendableByteString$fSendableValue $fSendable() Multipart sendMultipartAPITAPI liftEither liftManager liftBuilder liftStateexecAPIrunAPIrunRoute routeResponse sendRoute routeRequestnamebaseURLcustomizeRoutecustomizeRequest QuestionsQuestiontitle isAnsweredscoretags stackOverflow answersRoute getAnswers$fReceivableQuestions$fFromJSONQuestions$fFromJSONQuestion pathParamsSep buildParams$fMonoidAPIError $fEqAPIError $fShowBuildereitherOr