h*u>      !"#$%&'()*+,-./0123456 7 8 9 : ; < = 1.2.0  Safe-Inferred""#%&'/01369<b>?@ABCDE Safe-Inferred!"#%&'/01369< webgear-server'An arrow implementing a WebGear server.A good first approximation is to consider ServerHandler to be equivalent to the function arrow a -> m b where m is a monad. It also supports routing and possibly failing the computation when the route does not match.webgear-serverRun a ServerHandler to produce a result or a route mismatch error.webgear-server,Convert a ServerHandler to a WAI applicationwebgear-server Transform a ' running in one monad to another monad.This is useful in cases where the server is running in a custom monad but you would like to convert it to a WAI application using .)Example usage with a ReaderT monad stack:  . (transform f server) where server ::  (ReaderT r IO) (F `G` '[]) H server = .... f :: ReaderT r IO a -> IO a f action = runReaderT action r webgear-serverThe handler to runwebgear-serverPath used for routingwebgear-serverInput value to the arrowwebgear-serverThe result of the arrow Safe-Inferred!"#%&'/01369< 9webgear-serverInstances of this class serializes a value to a response body as specified by a MIME type.webgear-server9Render a value in the format specified by the media type.Returns the response body and the media type to be used in the "Content-Type" header. This could be a variant of the original media type with additional parameters.webgear-serverInstances of this class are used to parse the body of a request as specified by a MIME type.webgear-serverParse a request body. Return a I/ value with error messages in case of failure.webgear-server)A backend that stores all files in memorywebgear-server0A backend that stores files in a temp directory. Safe-Inferred""#%&'/01369<  Safe-Inferred""#%&'/01369<  Safe-Inferred""#%&'/01369< M Safe-Inferred!"#%&'/01369<  Safe-Inferred!"#%&'/01369<  Safe-Inferred!"#%&'/01369< R  Safe-Inferred!"#%&'/01369<  Safe-Inferred!"#%&'/01369<  Safe-Inferred!"#%&'/01369< W Safe-Inferred!"#%&'/01369<  Safe-Inferred!"#%&'/01369< JKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnoopqrstuHvwxFyz{|}~G !"#$%&'()*+,-./0123456789:;<=>?@ABCDE F G H I J K L M N O P Q R S T UVWXYZ[\]^_`_`abc\de\df\dg\dh\di\dj\dj\dkXlXmXnXopqrst\du\dv\dw\dw\dx\dy\dz\d{\d|\d}\d~\d\d\d\d\dXXZ[ZZVWV__ZZZZXXXXXXXXXX______aaXaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaa\a_aaaaaaaaaaaaaaaaaaaaaaaaa\aaaaaaaa\d\d\d\d\d\daabaaaaaaaabaaaaaaaaaVVVaaaaaaaaaaaaaaVVVVVV_VVXXXX__+webgear-server-1.2.0-KkWEBL6w7UxIQJFBpRHrB5WebGear.Server.HandlerWebGear.Server.MIMETypesWebGear.Server.Trait.Auth.BasicWebGear.Server.Trait.Auth.JWTWebGear.Server.Trait.BodyWebGear.Server.Trait.CookieWebGear.Server.Trait.HeaderWebGear.Server.Trait.MethodWebGear.Server.Trait.PathWebGear.Server.Trait.QueryParamWebGear.Server.Trait.Statuswebgear-serverPaths_webgear_serverWebGear.Server.TraitsWebGear.Server)webgear-core-1.2.0-HZqima91g7JI7Sqaj73yznWebGear.Core.Handler RoutePath ServerHandlerunServerHandlerrunServerHandler toApplication transform$fHandlerServerHandlerm&$fArrowErrorRouteMismatchServerHandler$fCategoryTYPEServerHandler$fArrowServerHandler$fArrowZeroServerHandler$fArrowPlusServerHandler$fArrowChoiceServerHandler BodyRender bodyRender BodyUnrender bodyUnrenderinMemoryBackendtempFileBackend$fBodyUnrendermPlainTexta$$fBodyUnrendermOctetStreamByteString%$fBodyUnrendermOctetStreamByteString0%$fBodyUnrendermFormDataFormDataResult$fBodyUnrendermJSONa$fBodyUnrendermHTMLByteString$fBodyUnrendermHTMLByteString0$fBodyUnrendermFormURLEncodeda$fBodyRendermPlainTexta"$fBodyRendermOctetStreamByteString#$fBodyRendermOctetStreamByteString0$fBodyRendermJSONa$fBodyRendermHTMLByteString$fBodyRendermHTMLByteString0$fBodyRendermFormURLEncodeda#$fGetServerHandlerBasicAuth'Request$$fGetServerHandlerBasicAuth'Request0!$fGetServerHandlerJWTAuth'Request"$fGetServerHandlerJWTAuth'Request0,$fSetServerHandlerUnknownContentBodyResponse$fSetServerHandlerBodyResponse$fGetServerHandlerBodyRequest#$fSetServerHandlerSetCookieResponse$$fSetServerHandlerSetCookieResponse0$fGetServerHandlerCookieRequest $fGetServerHandlerCookieRequest0($fSetServerHandlerResponseHeaderResponse)$fSetServerHandlerResponseHeaderResponse0&$fGetServerHandlerRequestHeaderRequest'$fGetServerHandlerRequestHeaderRequest0'$fGetServerHandlerRequestHeaderRequest1'$fGetServerHandlerRequestHeaderRequest2$fGetServerHandlerMethodRequest $fGetServerHandlerPathEndRequest $fGetServerHandlerPathVarRequest$fGetServerHandlerPathRequest#$fGetServerHandlerQueryParamRequest$$fGetServerHandlerQueryParamRequest0$$fGetServerHandlerQueryParamRequest1$$fGetServerHandlerQueryParamRequest2 $fSetServerHandlerStatusResponseversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDirgetDataFileName getSysconfDirWebGear.Core.RequestRequestWebGear.Core.TraitWithWebGear.Core.ResponseResponsebase Data.EitherLeftWebGear.Core.Trait.PathPath text-2.0.2Data.Text.InternalText Control.Arrow ArrowChoicerightleft|||+++Kleisli runKleisliSetsetTraitGetgetTraitHandlerarrM consumeRoutesetDescription setSummary ArrowLooploop ArrowMonad ArrowApplyapp ArrowPlus<+> ArrowZero zeroArrowArrowarrfirst***second&&&Trait AttributeWebGear.Core.Trait.Cookie SetCookieWebGear.Core.Trait.MethodMethodWebGear.Core.Trait.StatusStatus ResponseRaw ResponseCont toWaiRequestWebGear.Core.Trait.BodyBodyPathVar MiddlewareWebGear.Core.MIMETypesJSON JSONMedia PlainText OctetStreamFormDataResultformDataParams formDataFilesFormData parseOptionsbackendOptionsHTMLFormURLEncodedMIMETypemimeTypeWebGear.Core.Modifiers ParseStyleStrictLenient ExistenceRequiredOptional ResponseBodyResponseBodyFileResponseBodyBuilderResponseBodyStream HaveTraits MissingTraitHasTraitfrom unwitnessSetsGets Prerequisite TraitAbsenceAbsence RouteMismatchSummary getSummary DescriptiongetDescriptionRequestHandlerWebGear.Core.Trait.HeaderOptionalResponseHeaderRequiredResponseHeaderResponseHeaderOptionalRequestHeaderRequiredRequestHeader RequestHeaderHeaderParseErrorHeaderNotFoundCookieCookieParseErrorCookieNotFoundMethodMismatchexpectedMethod actualMethodPathEnd PathVarErrorPathVarNotFoundPathVarParseErrorWebGear.Core.Trait.QueryParamParamParseError ParamNotFoundOptionalQueryParamRequiredQueryParam QueryParamUnknownContentBodyWebGear.Core.Trait.Auth.Common AuthToken authScheme authTokenRealmAuthorizationHeaderWebGear.Core.Trait.Auth.JWT JWTAuthErrorJWTAuthHeaderMissingJWTAuthSchemeMismatchJWTAuthTokenBadFormatJWTAuthAttributeErrorJWTAuthJWTAuth'#$sel:jwtValidationSettings:JWTAuth'$sel:jwkSet:JWTAuth'$sel:toJWTAttribute:JWTAuth'WebGear.Core.Trait.Auth.BasicBasicAuthErrorBasicAuthHeaderMissingBasicAuthSchemeMismatchBasicAuthCredsBadFormatBasicAuthAttributeError Credentials$$sel:credentialsPassword:Credentials$$sel:credentialsUsername:CredentialsPasswordUsername BasicAuth BasicAuth' $sel:toBasicAttribute:BasicAuth'WebGear.Core.Traits StdHandlercookiepath Data.Textfoldrmappickheadtailinitstails intersperse transposetakedropsplitAt takeWhile dropWhilespanbreakfilter partitiongroup isPrefixOf findIndexzipzipWithwordsunwordslinesunlinesindextoUpperemptynullData.Text.Show singletonfoldr'foldlfoldl'toLowerControl.Category>>>countmatchlengthgroupByunfoldrunpackCString#concatunconslastinitfoldl1foldl1'scanlscanl1foldr1scanrscanr1maximumminimum replicatereverseanyallelem concatMapisAsciitoTitle<<<find dropWhileEnd stripPrefix isSuffixOf isInfixOf intercalate mapAccumL mapAccumRreturnA^>>>>^<<^^<<leftAppconsappendcopysnocunsnocsplitOnreplace stripSuffixcentermethodheaderpackunpacktakeEnd takeWhileEnddropEndsplitunfoldrN compareLengthstripchunksOf continue100switchingProtocols101ok200 created201 accepted202nonAuthoritative203 noContent204resetContent205partialContent206multipleChoices300movedPermanently301found302 seeOther303notModified304temporaryRedirect307permanentRedirect308 badRequest400unauthorized401paymentRequired402 forbidden403 notFound404methodNotAllowed405notAcceptable406proxyAuthenticationRequired407requestTimeout408 conflict409gone410lengthRequired411preconditionFailed412requestEntityTooLarge413requestURITooLong414unsupportedMediaType415requestedRangeNotSatisfiable416expectationFailed417 imATeapot418unprocessableEntity422preconditionRequired428tooManyRequests429requestHeaderFieldsTooLarge431internalServerError500notImplemented501 badGateway502serviceUnavailable503gatewayTimeout504httpVersionNotSupported505 networkAuthenticationRequired511 requestMethodrequestHeadersgetRequestBodyChunk toCaseFoldunpackCStringAscii# justifyLeft justifyRight measureOff dropAround stripStartstripEndspanMspanEndMbreakOn breakOnEnd breakOnAllcommonPrefixes httpVersionisSecure remoteHostpathInfo queryString requestBodyrequestBodyLength basicAuth basicAuth' setHeaderroute requestHeadergetRequestBodywzerowminusprobeplant routeMismatch unwitnessA>-><-<WebGear.Core.Handler.Static serveStaticoptionalHeader lenientHeaderoptionalLenientHeadersetOptionalHeader acceptMatchoptionalCookie setCookiesetOptionalCookiepathVarpathEnd queryParamoptionalQueryParamlenientQueryParamoptionalLenientQueryParam mkResponsesetBodysetBodyWithoutContentTyperespondArespondUnauthorizedjwtAuthoptionalJWTAuthjwtAuth'optionalJWTAuth'optionalBasicAuthoptionalBasicAuth'