C?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcd e f g h i j k l m n o p q r s t u v w x y z { | } ~  provisionalSigbjorn Finne <sof@forkIO.com>  provisionalSigbjorn Finne <sof@forkIO.com>Networking, at a higher-level.  portable  provisional  Sigbjorn Finne <sof@forkIO.com> ( clientConnection opts tries to open up a connection  as requested by the   opts. If successful, returns  a Handle and its underlying Socket. The latter is only meant  to be used when doing orderly & draining shutdowns. All I/O is  expected to happen over the Handle.          so-so  provisional  Sigbjorn Finne <sof@forkIO.com> !"#$%&'() !"#$%&'() !"#$%&'() !"#$%&'()sof@forkIO.com*+,-*+,-*+,-*+,-sof@forkIO.com./01isUTF8Encoded str9 tries to recognize input string as being in UTF-8 form.  Will soon migrate to  utf8-string. ./01/01../01so-so  provisional  Sigbjorn Finne <sof@forkIO.com> 23456789:;<=>?@ABCaddNameValue nm val req augments the request req with a binding  for (nm,val) . Neither nm nor val# are assumed encoded. It leaves it H until the serialization phase to fix on how to communicate the binding D for the POST request (i.e., via the query portion or in the request' s body.) DaddQueryNameValue nm val req performs same function as  addNameValue, S but adds the constraint that the binding must be transmitted as part of the query . portion of the URL it ends up going out via. EaddQueryNameValue nm val req performs same function as  addNameValue, M but adds the constraint that the binding must be transmitted as part of the B body of the POST request, forcing the payload to be of MIME type  application/x-www-form-urlencoded F addNameFile nm fb mbMimeType req augments the request req with a binding  of name nm to the local file fb,. It will be slurped in and included in the 0 POST request, as part of a multi-part payload. GHIJK23456789:;<=>?@ABCDEFGHIJK9:;<5876=>?@ABCDEF243GHIJK2433458766789:;<:;<=>?@ABCDEFGHIJK9Interacting with hubs implementing the PubSubHub protocol provisionalSigbjorn Finne <sof@forkIO.com>LLLLso-so provisionalSigbjorn Finne <sof@forkIO.com>MNOP Subscribe3 represents both subscribe and subscribe requests. QRSTUVWXYZMNOPQRSTUVWXYZXYZPQRSTUVWNOMMNOOPQRSTUVWQRSTUVWXYZYZso-so  provisional  Sigbjorn Finne <sof@forkIO.com> [\]^_`abc [\]^_`abc `ab[\]^_c [\]^\]^_`abc so-so provisionalSigbjorn Finne <sof@forkIO.com>defghijklmnopqrstuvwdefghijklmnopqrstuvwijklmnodefghpqrstuvwdefghefghijklmnojklmnopqrstuvw 9Interacting with hubs implementing the PubSubHub protocol provisionalSigbjorn Finne <sof@forkIO.com> xyz{|FHandle incoming POST notification of updated topic content. Checks to " see that the MIME type is indeed atom. Returns the feed along with 8 status code (and headers) to respond with. A result of Nothing should : be interpreted as an error and responded to accordingly. }~;In response to a (un)subscription POST request, a hub will * do a POSTback to verify the request. The QP argument D is the same as the one used to issue the original (un)subscription  request. trim str. removes leading and trailing whitespace from str.  trimL str+ removes leading whitespace (as defined by )  from str.  trimL str, removes trailing whitespace (as defined by )  from str. xyz{|}~xyz{}|~xyz{|}~   !"#$%&'()*+,-./0123456789:;<=>?@ABCDDEFGHIJKLMNOPQRSTUVWXYZZ[\]^_`aabccdefghij k k l m n o o p q r s t u v w x y z { | } ~   pubsub-0.10Web.Utils.FetchNetwork.ConnectionWeb.Utils.MIMEWeb.Codec.PercentWeb.Codec.URLEncoderWeb.Utils.Post Web.TypesWeb.PubSub.TypesWeb.Utils.HTTP Web.PubSubUtils.Data.StringUtils.Data.List HTTP-4000.0.9Network.HTTP.CookieCookieServer ServerOptions servInterfaceservPort servProtoservOpts ClientOptionshostportcliProtolocalEndcliOptsConnectionOptionsconnModeioModebufMode ConnectioncoHandlecoSocketcoServerdefaultConnectionOptions clientOptsclientConnection serverOpts newServeracceptConnection closeSessioncloseConnectionuploadFileType mixedType uploadFile showMIMEValueshowMIMEContentcrnlshowDisposition showDispType showDispParamgetEncodedStringgetDecodedStringgetEncodedChargetDecodedChar utf8Encode encodeString decodeString isUTF8Encoded PostParamPostFile PostNameValuePostKind PostFormData PostWWWForm PostQueryPostReqprNameprValsnewPostRequest testRequest toRequest toAmpString mustBeBody mustBeQuery addNameValueaddQueryNameValueaddBodyNameValue addNameFile isPostFile toMIMEValue fromPostParam toMIMEType getMIMEType URLString VerifyToken VerifyMode VerifySync SubscribesubMode subCallbacksubTopic subVerifysubVerifyToken subLeaseSecsHubLinklinkURLAuthUser authUserName authUserPass nullAuthUserreadContentsURLreadUserContentsURLpostContentsURLaddDefaultHeadersResponse respStatus respHeadersrespBodyRequest reqMethodreqURL reqHeadersreqVarsreqBody jsonRequest jsonResponse readRequest showRequest readResponse showResponsetoStatusString statusMap getHubLinkdiscover subscribe getContent notifyContent notifyPublish handleVerify capitalize unwordsWith matchPrefix transElem servSocket servOptions servSessionsresetSocketStatus closeServer getHostAddrgetHostByName_safetrimtrimLbase GHC.UnicodeisSpacetrimR