úÎ g!_ço      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFG H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n  Portability :'Trevor Elliott <trevor@geekgateway.com>opop Portability :'Trevor Elliott <trevor@geekgateway.com> 7Check to see if an XRDS service description is usable. qBGenerate a tag name predicate, that ignores prefix and namespace. r6Filter the attributes of an element by some predicate s Read, maybe tGet the text of an element )Generate a predicate over Service Types.    Portability : 'Trevor Elliott <trevor@geekgateway.com> Errors A valid OpenID identifier. An OpenID provider. !A way to resolve an HTTP request 6A realm of uris for a provider to inform a user about A return to path 2Parameter lists for communication with the server  An association with a provider. ,Session types for association establishment "Supported association types %Parse a provider &Show a provider 'Modify the URI in a provider   !"#$%&'"$#! %&'  !  !"$##$%&' Stability : ( Read, maybe. )"Break up a string by a predicate. *KSpit a list into a pair, removing the element that caused the predicate to  succeed. +4Build an Integer out of a big-endian list of bytes. ,0Turn an Integer into a big-endian list of bytes -KPad out a list of bytes to represent a positive, big-endian list of bytes. .The OpenID-2.0 namespace. /1Default modulus for Diffie-Hellman key exchange. 0"Read inside of an Exception monad 15Lookup parameters inside an exception handling monad 2 Read a field 3DMake an HTTP request, and run a function with a successful response ()*+,-./0123 ()*+,-/.0123 ()*+,-./0123Portability : 'Trevor Elliott <trevor@geekgateway.com>4*Normalize an identifier, discarding XRIs. 5ENormalize the user supplied identifier, using a supplied function to  normalize an XRI. 454545 Portability :'Trevor Elliott <trevor@geekgateway.com> 6Perform an http request. K If the Bool parameter is set to True, redirects from the server will be  followed. uFollow a redirect v:Get the port and hostname associated with an http request 90Turn a response body into a list of parameters. :+Format OpenID parameters as a query string ;.Format OpenID parameters as a direct response <%Escape for the query string of a URI =Add Parameters to a URI >,Parse OpenID parameters out of a url string 6789:;<=> 6789:;<=> 6789:;<=> Portability :'Trevor Elliott <trevor@geekgateway.com>?<Attempt to resolve an OpenID endpoint, and user identifier. wJAttempt a YADIS based discovery, given a valid identifier. The result is ? an OpenID endpoint, and the actual identifier for the user. xEParse out an OpenID endpoint, and actual identifier from a YADIS xml  document. yKAttempt to discover an OpenID endpoint, from an HTML document. The result H will be an endpoint on success, and the actual identifier of the user. zCParse out an OpenID endpoint and an actual identifier from an HTML  document. {/Filter out link tags from a list of html tags. |*Split a string into strings of html tags. }Split out values from a key=value like string, in a way that # is suitable for use with unfoldr. ??? Portability :'Trevor Elliott <trevor@geekgateway.com>@,Manage pairs of Providers and Associations. AFind an association. BDAdd a new association, and set its expiration to be relative to the now  parameter passed in. CDExpire associations in the manager that are older than the supplied now  parameter. D/Export all associations, and their expirations @ABCD@ABCD@ABCDABCD Portability :'Trevor Elliott <trevor@geekgateway.com>E/A simple association manager based on Data.Map FAn empty association map. EFEFEF  Stability :G Sha1 hashing HSha256 hashing ~5General purpose digest function wrapper for OpenSSL. GHGHGH /Figure out how many bytes are used by a BIGNUM IJKLMNOPQRSTUVWXYNOPQRSIMLKJTUVXWYIMLKJJKLMNOPQRSOPQRSTUVWXY GHCStability : unstable['formatOutput n mbLT str' formats str, splitting it  into lines of length n+. The optional value lets you control what E line terminator sequence to use; the default is CRLF (as per MIME.) Z[\]^_`\Z][_^`Z[\]^_` Stability : aAssociation monad bAssociation environment €?Check to see if an AssocType and SessionType pairing is valid. KGenerate parameters for Diffie-Hellman key exchange, based on the provided  SessionType. ‚ Turn DHParams into a list of key/"value pairs that can be sent to a  Provider. ƒ+Give the hash algorithm for a session type „HGet the mac key from a set of Diffie-Hellman parameters, and the public  key of the server. fAssociate with a provider. N By default, this tries to use DH-SHA256 and HMAC-SHA256, and falls back to B whatever the server recommends, if the Bool parameter is True. gFAssociate with a provider, attempting to use the provided association L methods. The Bool specifies whether or not recovery should be attempted  upon a failed request. h/Running a computation in the association monad …7Use the underlying monad to retrieve the current time. †<Generate Diffie-Hellman parameters in the underlying monad. iA pure@ version of association. It will run in whatever base monad is 4 provided, layering exception handling over that. ‡/Attempt to recover from an association failure ˆ-Handle the response to an associate request. @ABCDEFabcdefghi fgahbcdei abcdecdefghi  Portability :'Trevor Elliott <trevor@geekgateway.com>‰Get the mac hash type Š)Parse a provider within the Result monad ‹/Get the signed fields from a set of parameters mGenerate an authentication URL n'Verify a signature on a set of params. ŒVerify an assertion directly Verify with an association jklmnjlkmnjlkklmn Portability :'Trevor Elliott <trevor@geekgateway.com>H  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFabcdefghijklmnŽ !"#$%%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQR S T U V W X Y Z Z [ \ ] ^ _ ` a b c d e f g h i j k l m m n o p q r s t u v w xyz{|4}~€‚ƒ„…† ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ “ ” • –—openid-0.1.3.0 Text.XRDSNetwork.OpenID.TypesNetwork.OpenID.UtilsNetwork.OpenID.NormalizationNetwork.OpenID.HTTPNetwork.OpenID.Discovery"Network.OpenID.Association.ManagerNetwork.OpenID.Association.MapData.Digest.OpenSSL.SHACodec.Encryption.DHCodec.Binary.Base64Network.OpenID.AssociationNetwork.OpenID.AuthenticationNetwork.OpenID.SSLNetwork.OpenIDService serviceTypesserviceMediaTypes serviceURIsserviceLocalIDsservicePriority serviceExtraXRDXRDSisUsablehasType parseXRDSError Identifier getIdentifierProvider providerURIResolverRealmReturnToParams AssociationassocExpiresIn assocHandle assocMacKey assocType SessionTypeDhSha256DhSha1 NoEncryption AssocType HmacSha256HmacSha1 parseProvider showProvidermodifyProvider readMaybebreakssplitrollunrollbtwocopenidNSdefaultModulusreadM lookupParam readParam withResponsenormalizeIdentifiernormalizeIdentifier' makeRequest getRequest postRequestparseDirectResponse formatParamsformatDirectParams escapeParam addParams parseParamsdiscoverAssociationManagerfindAssociationaddAssociationexpireexportAssociationsAssociationMapemptyAssociationMapsha1sha256 DHParamErrorNotSuitableGeneratorUnableToCheckGenerator PNotSafePrime PNotPrimeDHParams dhPrivateKey dhPublicKey dhGenerator dhModulusModulus Generator newDHParams generateKey checkDHParams computeKeyencodeRawString formatOutput encodeRaw encodeRawPrimdecodeToStringdecode decodePrimAssocAssocEnv currentTime createParams associate associate'runAssoc associate_ CheckIdModeSetup ImmediateauthenticationURIverifyAuthentication SSLHandle sslConnecttag findAttr'getTexthandleRedirect getAuthority discoverYADIS parseYADIS discoverHTML parseHTMLlinkTagshtmlTags splitAttrhashWithnumBytes validPairingnewSessionTypeParamsdhPairshash decodeMacKeygetTime newParamsrecoverAssociationhandleAssociationmacHashparseProvider'getSignedFields verifyDirectverifyWithAssociation