r       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Safe Setting cookie expiration0a point in time in UTC until the cookie is valid3a period (in seconds) for which the cookie is valid+the cookie expires with the browser session9the cookie will have an expiration date in the far futureCookie settingscookie expiration setting, see a path for the cookiea domain for the cookie.  means no domain is set,whether the cookie should be set as HttpOnlyAwhether the cookie should be marked secure (sent over HTTPS only)Default cookie settings, equals CookieSettings { cs_EOL = CookieValidForSession , cs_HTTPOnly = False , cs_secure = False , cs_domain = Nothing , cs_path = Just "/" }None %$#"!&'( !"#$%&'( !"#$%None&')16;=>?FKQSTV@The @' allows safe use of http verbs via the A constructor and  , and custom verbs via the B constructor.AStandard HTTP Verbs from  BCustom HTTP Verbs using CMatch any HTTP verbf+,-:9876543210/.;<?>=@CBADEF+- ./0123456789:;<=>?@ABCDEFNone)QVO+G#Get the original Wai Request objectH Read a headerI+Read a header without converting it to textJLTries to dected the preferred format of the response using the Accept headerK)Returns the current request method, e.g. GETLGet the raw request bodyMParse the request body as jsonNFParse the request body as json and fails with 400 status code on errorOGet uploaded filesPGet all request GET paramsQGet all request POST paramsR#Get all request (POST + GET) paramsSPRead a request param. Spock looks POST variables first and then in GET variablesTLike S., but outputs an error when a param is missingUSet a response statusVSet a response header. If the response header is allowed to occur multiple times (as in RFC 2616), it will be appended. Otherwise the previous value is overwritten. See .HSet a response header that can occur multiple times. (eg: Cache-Control)WHSet a response header that can occur multiple times. (eg: Cache-Control)TINTERNAL: Unsafely set a header (no checking if the header can occur multiple times)TINTERNAL: Unsafely set a header (no checking if the header can occur multiple times)XAAbort the current action and jump the next one matching the routeYRedirect to a given urlZ%Respond to the request by running an . This is usefull in combination with wildcard routes. This can not be used in combination with other request consuming combinators like M, L, Q, ...[$Respond to the request by running a . This is usefull in combination with wildcard routes. This can not be used in combination with other request consuming combinators like M, L, Q, ...\If the Spock application is used as a middleware, you can use this to pass request handling to the underlying application. If Spock is not uses as a middleware, or there is no underlying application this will result in 404 error.]EModify the vault (useful for sharing data between middleware and app)^Query the vault_ Use a custom  generator as response body.`Send a  ByteString$ as response body. Provide your own  Content-Typea Send a lazy  ByteString$ as response body. Provide your own  Content-Typeb?Send text as a response body. Content-Type will be "text/plain"c>Send a text as response body. Content-Type will be "text/html"dSend a file as responsee>Send json as response. Content-Type will be "application/json"fUse a  to generate a response.gConvenience Basic authentification provide a title for the prompt and a function to validate user and password. Usage example: get ("auth" <//> var <//> var) $ \user pass -> let checker user' pass' = unless (user == user' && pass == pass') $ do setStatus status401 text "err" in requireBasicAuth "Foo" checker $ \() -> text "ok"h{"Lower level" basic authentification handeling. Does not set any headers that will promt browser users, only looks for an  AuthorizationU header in the request and breaks it into username and passwort component if presenti&Get the context of the current requestj$Run an Action in a different contextk2Set a cookie. The cookie value will be urlencoded.lDelete a cookiem>Read all cookies. The cookie value will already be urldecoded.ncRead a cookie. The cookie value will already be urldecoded. Note that it is more efficient to use m> if you need do access many cookies during a request handler.O !"#$%,-./0123456789:;<=>?GHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnNoneQVVlqMaximum request size in bytesr`Error handler. Given status is set in response by default, but you can always override it with Us-Function that should be called to log errors.tDefault Spock configuration. No restriction on maximum request size; error handler simply prints status message as plain text and all errors are logged to stderr.opsrqtopqrsNone &')-<QVW"P !"#$%+,-./0123456789:;<=>?GHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnP,+GHImnKJ !"#$%LMNO;<=>?RPQSTijUVYXkl`aW-./0123456789:bcdef_Z[\]^ghNone-YuyxwvuvwxyuvwxyNone &')-<KQV}|9Run a Spock application. Basically just a wrapper around .}Like |K, but does not display the banner "Spock is running on port XXX" on stdout.~WConvert a middleware to an application. All failing requests will result in a 404 pageACreate a raw spock application with custom underlying monad Use | to run the app or ~ to create a Wai.Application< The first argument is request size limit in bytes. Set to  to disable.Like c, but with additional configuration for request size and error handlers passed as first parameter.6Specify an action that will be run when the HTTP verb  and the given route match6Specify an action that will be run when the HTTP verb  and the given route match6Specify an action that will be run when the HTTP verb  'GET'/'POST' and the given route match6Specify an action that will be run when the HTTP verb  and the given route match6Specify an action that will be run when the HTTP verb  and the given route match6Specify an action that will be run when the HTTP verb  and the given route match6Specify an action that will be run when the HTTP verb  and the given route matchcSpecify an action that will be run before all subroutes. It can modify the requests current contextVSpecify an action that will be run when a standard HTTP verb and the given route match>Specify an action that will be run regardless of the HTTP verbTSpecify an action that will be run when a custom HTTP verb and the given route matchMSpecify an action that will be run when a HTTP verb and the given route matchSpecify an action that will be run when a standard HTTP verb matches but no defined route matches. The full path is passed as an argumentSpecify an action that will be run regardless of the HTTP verb and no defined route matches. The full path is passed as an argumentSpecify an action that will be run when a custom HTTP verb matches but no defined route matches. The full path is passed as an argumentSpecify an action that will be run when a HTTP verb matches but no defined route matches. The full path is passed as an argumentHook wai middleware into SpockCombine two path components#Render a route applying path pieces   !"#$%+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstz{|}~7|}~{z  opqrst@ABCDEFz           !""#$%&'()*+,-./0123456789:;<=>?@ABCDEFGGHIJKLMNOOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyyz{|}~7*Spock-core-0.13.0.0-HLqSHqwRtFy47IHokh2N7GWeb.Spock.CoreWeb.Spock.Internal.CookiesWeb.Spock.Internal.UtilWeb.Spock.ActionWeb.Spock.RoutingWeb.Spock.Internal.WireWeb.Spock.Internal.CoreActionWeb.Spock.Internal.Config(http-types-0.12.1-AM7Wl0YjkHeLVVW941glmiNetwork.HTTP.Types.MethodPATCHOPTIONSCONNECTTRACEDELETEPUTHEADPOSTGET StdMethod&reroute-0.5.0.0-IUcfINwKH5s9fJmqqmqgpVWeb.Routing.CombinatorswildcardrootstaticvarPathVar CookieEOLCookieValidUntilCookieValidForCookieValidForSessionCookieValidForeverCookieSettingscs_EOLcs_path cs_domain cs_HTTPOnly cs_securedefaultCookieSettings parseCookiesgenerateCookieHeaderString renderCookieClientPreferredFormatPrefJSONPrefXMLPrefHTMLPrefText PrefUnknown mimeMappingdetectPreferredFormat mapReqHeaders$fShowClientPreferredFormat$fEqClientPreferredFormat ActionCtxTActionT MultiHeaderMultiHeaderCacheControlMultiHeaderConnectionMultiHeaderContentEncodingMultiHeaderContentLanguageMultiHeaderPragmaMultiHeaderProxyAuthenticateMultiHeaderTrailerMultiHeaderTransferEncodingMultiHeaderUpgradeMultiHeaderViaMultiHeaderWarningMultiHeaderWWWAuthMultiHeaderSetCookie UploadedFileuf_nameuf_contentTypeuf_tempLocation SpockMethodMethodStandard MethodCustom MethodAny HttpMethod unHttpMethodrequestheader rawHeaderpreferredFormat reqMethodbodyjsonBody jsonBody'files paramsGet paramsPostparamsparamparam' setStatus setHeadersetRawMultiHeaderjumpNextredirect respondApprespondMiddlewaremiddlewarePass modifyVault queryVaultresponsebytes lazyBytestexthtmlfilejsonstreamrequireBasicAuthwithBasicAuthData getContext runInContext setCookie deleteCookiecookiescookie SpockConfigsc_maxRequestSizesc_errorHandler sc_logErrordefaultSpockConfigRouteM addMiddleware withPrehookwireAny wireRoute SpockCtxTSpockTrunSpockrunSpockNoBanner spockAsAppspockT spockConfigTgetpostgetpostheadputdeletepatchprehook hookRoute hookRouteAllhookRouteCustom hookRoute'hookAny hookAnyAll hookAnyCustomhookAny' middleware renderRoute$fRouteMSpockCtxT$fMonadTransSpockCtxT$fMonadSpockCtxT$fFunctorSpockCtxT$fApplicativeSpockCtxT$fMonadIOSpockCtxTbaseGHC.BaseNothing#text-1.2.2.2-EakMpasry3jA6OIwSZhq9MData.Text.InternalText SizeException SpockAllTSpockConfigInternal sci_logErrorsci_errorHandlersci_maxRequestSize runActionCtxTErrorTActionInteruptActionApplicationActionMiddlewareActionMiddlewarePass ActionDone ActionError ActionTryNextActionRedirect ResponseStaters_responseBody rs_statusrs_multiResponseHeadersrs_responseHeaders ResponseValResponseHandlerResponseValState ResponseBody RequestInfo ri_context ri_vaultIf ri_reqBody ri_getParams ri_request ri_method RequestBodyrb_files rb_postParamsrb_valueCacheVarcv_readcv_value cv_makeValcv_lockVaultIf vi_lookupKeyvi_modifyVault newCacheVarloadCacheVarOpt loadCacheVar multiHeaderCImultiHeaderMap runErrorTtoErrorTdefaultSpockConfigInternalrespStateToResponse errorResponse defResponsemiddlewareToAppmakeActionEnvironmentremoveUploadedFiles applyAction handleRequesthandleRequest'getErrorHandlerrequestSizeCheckbuildMiddlewarewithSpockMethodsetMultiHeadersetHeaderUnsafesetRawHeaderUnsafe"wai-3.2.1.2-7WuwvbD7OFPDYP4LErJMFQ Network.Wai Application MiddlewareNetwork.Wai.InternalResponse StreamingBody"warp-3.2.22-CwyQQ5lNdFkG1KoSEyX2XPNetwork.Wai.Handler.Warp.Runrun runSpockT LiftHooked unLiftHooked