+ # J      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHI provisionaldiatchki@galois.com =An abstraction of a map mapping form fields to their values. J*The names of the fields that were posted. Do we have the given field? "Lookup a field value as a string. *Lookup a field value and try to parse it.  The fields as pairs of strings. $Try to parse the body of a request. K provisionaldiatchki@galois.com !"#$%&4A type used by the server to report various events.  Useful for debugging. '()*+,L-;A logger that uses the standard output and standard error.  Text is UTF8 encoded. .(A logger that does not report anything. /<A logger that uses the given handles for output and errors. M012 !"#$%&'()*+,-./012&'()*+,-./ !%$#"012  !%$#""#$%&'()*+,'()*+,-./012 provisionaldiatcki@galois.comNOPQRNOPQRNOPQR provisionaldiatchki@galois.com3/A list of status code. This not yet complete. 456789:;<=6Make a simple response with the given staus and body. & Intended to be used for (bad) erros.  Adds a close header. >6Make a simple response with the given staus and body.  No headers or body. ?%A brief description of what happend. @3456789:;<=>?@3<;:987654=>?@3 <;:987654456789:;<=>?@ provisionaldiatchki@galois.com A&Handlers invoked to process requests. @ The type parameter is for the type of the payload in the body. K It is a variation on string of some sort (e.g., String, ByteString, etc.) BServer configuration. CDServer reports what's going on here. EHost name to bind to. FPort to listen on. G#Some default options for a server:  no logging output, listen on "localhost:8000". SHGStart a server with the default configureation, and the given handler. , Requests are handled in separete threads. I9Start a server with the given configuration and handler. , Requests are handled in separete threads. Tu UVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~3456789:;<=>?@ABCDEFGHIHIABCDEFG   ABCDEFCDEFGHI      !"##$%&'()*++,-./0123456789:;<=>?@ABCDEFFGHIJKLMNOPQRSTUVWXYXZX[X\X]X^X_X`XaXbXcXdXeXfXfXgXhXiXjXkXlXmXnXoXpXqXrXsXtXuXvXwXxXyXzX{X|X}X~XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX http-server-1Network.HTTP.ServerNetwork.HTTP.Server.HtmlFormNetwork.HTTP.Server.LoggerNetwork.HTTP.Server.ResponseNetwork.HTTP.Server.Utils HTTP-4000.0.9Network.HTTP.BaseHEADPUTGETPOSTDELETEOPTIONSTRACECONNECTCustom RequestMethodrqBody rqHeadersrqMethodrqURIRequestrspBody rspHeaders rspReasonrspCodeResponse FormFields fieldNameshasField lookupString lookupReadtoList fromRequestLogItem item_type item_dataLogTypeInfoDebugWarningErrorLoggerlogInfologDebuglogError logWarninggetLog stdLogger quietLogger utf8Logger showLogItem readLogItem filterLog StatusCodeNotImplementedInternalServerErrorConflictFoundNotFound Forbidden BadRequestSeeOtherOK err_responserespondreasonstatusCodeTripletHandlerConfigsrvLogsrvHostsrvPort defaultConfigserver serverWithFF mime_requestnotSavedlogUTF8byteword ppHostAddressppHostAddress6 ppSockAddr server_initauthorityToAuthNetwork.HTTP.Headers parseHeaders parseHeader lookupHeader findHeaderretrieveHeaders insertHeaders replaceHeaderinsertHeaderIfMissing insertHeader headerMapmkHeaderhdrValuehdrNameHeaderHdrCacheControl HdrConnectionHdrDate HdrPragmaHdrTransferEncoding HdrUpgradeHdrVia HdrAcceptHdrAcceptCharsetHdrAcceptEncodingHdrAcceptLanguageHdrAuthorization HdrCookie HdrExpectHdrFromHdrHostHdrIfModifiedSince HdrIfMatchHdrIfNoneMatch HdrIfRangeHdrIfUnmodifiedSinceHdrMaxForwardsHdrProxyAuthorizationHdrRange HdrReferer HdrUserAgentHdrAge HdrLocationHdrProxyAuthenticate HdrPublic HdrRetryAfter HdrServer HdrSetCookieHdrTE HdrTrailerHdrVary HdrWarningHdrWWWAuthenticateHdrAllowHdrContentBaseHdrContentEncodingHdrContentLanguageHdrContentLengthHdrContentLocation HdrContentMD5HdrContentRangeHdrContentTypeHdrETag HdrExpiresHdrLastModifiedHdrContentTransferEncoding HdrCustom HeaderName setHeaders getHeaders HasHeaders HeaderSetter