MC       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~None%&+,2DIOQRT[Only promoted version used.The HTTP content type and body.Only needed to implement v}. Most users do not need this. If you need to create a route hierarchy to provide breadcrumbs, then you will need this. lIncludes the path and the request body (and the querystring params after they get added to this library).Only includes the path. Once querystring params get added to this library, this data type should not have them. This type is only used internally and should not be exported. A route with all types hidden: the captures, the request body, and the response body. This is needed so that users can enumerate over all the routes.xA closed, total type family provided as a convenience to end users. Other function is this library take advantage of g to allow end users use normal function application. Without this, users would need to write out Record and M% values by hand, which is tedious.N:kind! Arguments '[Int,Bool] '[Flag,Optional Double,List Int] 'Bodyless DoubleLArguments '[Int,Bool] '[Flag,Optional Double,List Int] 'Bodyless Double :: *8= Int -> Bool -> Bool -> Maybe Double -> [Int] -> Doublen Generate a Url for use in hyperlinks.oOnly useful for library authorst'Only useful to implement packages like 'trasa-server'u\Build a router from all the possible routes, and methods to turn routes into needed metadatav7Parses the path, the querystring, and the request body.Parses only the path.x?Used my users to define a function called prepare, see tutorialy!Uncurry the arguments type family{Conceal the response type.Discards the static parts~"Pretty prints a router, using indentation to show nesting of routes under a common prefix. This also shows the request methods that each route accepts. If there are any trivially overlapped routes, the appends are asterisk to the method name for which the routes are overlapped.VThis monoid instance is provided so that we can conveniently use foldMap elsewhere. We do not provide a Monoid instance for Router like we do for IxedRouter. End users only have one way to create a router, and if they combine a Router with itself using mappend, it would result in Router in which all routes were overlapped.  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn(How to encode the path pieces of a route-How to encode the query parameters of a routeThe route to encodeo(How to encode the path pieces of a route-How to encode the query parameters of a route)How to encode the request body of a route,How to decode the response body from a routeThe route to be payload encodedp)method, url, content, accepts -> responseqrstRouterMethodAccept headersEverything after the authorityContent type and request body Encoded responseuGet the method from a route$How to decode path pieces of a routevRouterRequest MethodEverything after the authorityRequest content type and bodyMethod Path Pieceswx#Extract the path codec from a route.Extract the query parameter codec from a route+Extract the request body codec from a routeThe route to prepareyz{|}~ Indentation  !"#$%&'()*+,-./0125346789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~PQRFGHIJKLMNO2345./01*+,-6789:?@AB;<=>CDE#$%& !"'()  jlkmxtvnopuy\]^[V_`awbcdefgWXUSTzYZhis{qr~|}m     !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~[7f7None         !""#$%&'()*+,-./0012344567789::;<=>?@@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ trasa-0.1-BlsZQedVGUODxoIzOWUMRc Trasa.CoreTrasa.Tutorial"vinyl-0.5.3-FMqnten0NCwHH6psUfplX5Data.Vinyl.Core:&RNilRecRouterContent contentType contentData ConcealedPrepared Constructed Arguments ParamBaseTrasaErrtrasaErrStatus trasaErrBodyPayload payloadUrlpayloadContentpayloadAcceptsUrlurlPathurlQueryStringCaptureDecodingappCaptureDecodingCaptureEncodingappCaptureEncoding CaptureCodeccaptureCodecEncodecaptureCodecDecode QueryString unQueryString Parameter ParameterFlagParameterOptional ParameterListQuery QueryFlag QueryOptional QueryListParamFlagOptionalList BodyCodecbodyCodecNamesbodyCodecEncodebodyCodecDecode BodyEncodingbodyEncodingNamesbodyEncodingFunction BodyDecodingbodyDecodingNamesbodyDecodingFunctionManygetManyPathPathNilPathConsCapture PathConsMatch ResponseBodygetResponseBody RequestBodyRequestBodyPresentRequestBodyAbsent BodiednessBodyBodylessmapRequestBodymapResponseBodymapPath appendPathonemapManybodyCodecToBodyEncodingbodyCodecToBodyDecoding./matchcaptureendbodybodylessrespflagoptionallistqend.&mapQuerycaptureCodecToCaptureEncodingcaptureCodecToCaptureDecoding encodeQuery encodeUrl decodeQuery decodeUrllinkWith payloadWith requestWithencodeRequestBodydecodeResponseBodystatus dispatchWith routerWith parseWithdemoteParameter prepareWithhandlermapConstructedconcealshowReadBodyCodecshowReadCaptureCodec prettyRouter$fMonoidIxedRouter$fExceptionTrasaErr$fShowTrasaErr $fShowUrl$fMonoidQueryParam$fSemigroupQueryParam$fApplicativeMany $fFunctorMany$fEqQueryParam$fEqQueryString$fEqUrl $fEqTrasaErr $fOrdTrasaErr $fShowContent $fEqContent $fOrdContentNatPathed parsePathWithixedPathToIxedRecHideIxLenPath LenPathNilLenPathCapture LenPathMatchIxedPath IxedPathNilIxedPathCapture IxedPathMatchVecVecNilVecConsIxedRec IxedRecNil IxedRecCons IxedResponder IxedRouterSZ QueryParamQueryParamFlagQueryParamSingleQueryParamList encodePiecesparseQueryWithdecodeCaptureVectorprepareExplicithushnotemapFindmapFindEsnocVecpathToIxedPathixedPathToLenPathsnocLenPathMatchsnocLenPathCapturereverseLenPathMatchsingletonIxedRoutersingletonIxedRouterHelpersingletonIxedRouterGounionIxedRouterunionMaybeWithprettyIxedRoutershowRespondersList