ú·d}Šl      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ ` a b c d e f g h i j k None lClass for Google API request. Perform a request. Google API project ID, see  $https://code.google.com/apis/console. OAuth 2.0 access token. %Convert a string to an access token.  Construct a Google API request. 0Construct a project-related Google API request. -Prepare a string for inclusion in a request. Prepare a name/key for a header. mPrepare a value for a header. Append headers to a request. Append a body to a request. Append a query to a request. l The request. ;The action returning the result of performing the request. The conduit HTTP manager.  The request. ;The action returning the result of performing the request.  The string. The OAuth 2.0 access token. The OAuth 2.0 access token. !The Google API name and version. The HTTP method. #The host and path for the request. The HTTP request. The project ID. The OAuth 2.0 access token. !The Google API name and version. The HTTP method. #The host and path for the request. The HTTP request.  The string. The prepared string. J TODO: In principle, we should UTF-8 encode the bytestrings packed below.  The name. The prepared name. J TODO: In principle, we should UTF-8 encode the bytestrings packed below. m The value. The prepared value. J TODO: In principle, we should UTF-8 encode the bytestrings packed below.  The (name/#key, value) pairs for the headers.  The request. )The request with the additional headers. The data for the body.  The request. $The request with the body appended. The query keys and values.  The request. %The request with the query appended. nopqrs     l m nopqrsNoneSMS authentication token. Google password. Google e-mail address. List the bookmarks, see  4http://www.mmartins.com/mmartins/googlebookmarksapi/. The Google e-mail address. The Google password. The SMS authentication token. 2The action returning the bookmarks in XML format. tuvtuvNoneBookshelf ID. wThe host for API access. xThe API version used here. List the bookshelves, see  Ihttps://developers.google.com/books/docs/v1/using#RetrievingMyBookshelves. yList the bookshelf IDs, see  Ihttps://developers.google.com/books/docs/v1/using#RetrievingMyBookshelves. List the books, see  Nhttps://developers.google.com/books/docs/v1/using#RetrievingMyBookshelfVolumes. zList the books in a shelf, see  Nhttps://developers.google.com/books/docs/v1/using#RetrievingMyBookshelfVolumes. {'Make an HTTP request for Google Books. wxThe OAuth 2.0 access token. $The action returning the bookshelves' metadata in JSON format. yThe OAuth 2.0 access token. ,The action returning list of bookshelf IDs. The OAuth 2.0 access token. The bookshelf IDs. The action returning the books' metadata in JSON format. zThe OAuth 2.0 access token. The bookshelf ID. The action returning the books' metadata in JSON format. {The OAuth 2.0 access token. The bookshelf ID.  The request. wxyz{NoneAn OAuth 2.0 scope. OAuth 2.0 tokens. The access token. The refresh token. 6The number of seconds until the access token expires. The token type. |An OAuth 2.0 code. The client ID. The client secret. *The OAuth 2.0 scopes for Google APIs, see  .https://developers.google.com/oauthplayground/. }3The redirect URI for an installed application, see  Rhttps://developers.google.com/accounts/docs/OAuth2InstalledApp#choosingredirecturi. !9Form a URL for authorizing an installed application, see  Lhttps://developers.google.com/accounts/docs/OAuth2InstalledApp#formingtheurl. "/Exchange an authorization code for tokens, see  Rhttps://developers.google.com/accounts/docs/OAuth2InstalledApp#handlingtheresponse. ~)Refresh OAuth 2.0 tokens from JSON data. #Refresh OAuth 2.0 tokens, see  Fhttps://developers.google.com/accounts/docs/OAuth2InstalledApp#refresh. %Peform OAuth 2.0 authentication, see  Rhttps://developers.google.com/accounts/docs/OAuth2InstalledApp#handlingtheresponse. $Validate OAuth 2.0 tokens, see  Ghttps://developers.google.com/accounts/docs/OAuth2Login#validatingtoken. %KProvide a hassle-free way to retrieve and refresh tokens from a users home , directory, OR ask the user for permission. =The first time it is called, this may open a web-browser, and/or request the user P enter data on the command line. Subsequently, invocations on the same machine ' should not communicate with the user. | ,List of names and the corresponding scopes. }!The OAuth 2.0 client. 'The OAuth 2.0 scopes to be authorized. The URL for authorization. "The OAuth 2.0 client. The authorization code. %The action for obtaining the tokens. ~The original tokens, if any. The JSON value. The refreshed tokens. # The client.  The tokens. "The action to refresh the tokens.  The client. The grant type. The ?The action returing the JSON response from making the request. $ The tokens. 6The number of seconds until the access token expires. %The client is the "key" for token lookup.  !"#$% !"#$% | }!"~#$%None &Picasa album ID. 'Picasa user ID. €The host for API access. The API version used here. (Default Picasa user ID )List the albums, see  Vhttps://developers.google.com/picasa-web/docs/2.0/developers_guide_protocol#ListAlbums. ‚/Extract the album IDs from the list of albums. *List the photos in albums, see  [https://developers.google.com/picasa-web/docs/2.0/developers_guide_protocol#ListAlbumPhotos. ƒ!List the photos in an album, see  [https://developers.google.com/picasa-web/docs/2.0/developers_guide_protocol#ListAlbumPhotos. „(Make an HTTP request for a Picasa feed. &'€()The OAuth 2.0 access token. The user ID for the photos. 8The action returning the albums metadata in XML format. ‚(The root element of the list of albums. The list of album IDs. *The OAuth 2.0 access token. The user ID for the photos. 4The album ID for the photos, or all photos if null. 7The action returning the photo metadata in XML format. ƒThe OAuth 2.0 access token. The user ID for the photos. The album ID for the photos. 1The action returning the contacts in XML format. „The OAuth 2.0 access token. The user ID for the photos. The album ID for the photos.  The request. &'()*'(&)* &'€()‚*ƒ„None +*Designed to mirror the types listed here:   Chttps://developers.google.com/fusiontables/docs/v1/reference/column 0 ID for a specific fusion table 6 An incomplete representation of  Khttps://developers.google.com/fusiontables/docs/v1/reference/table#resource …The host for API access. †The API version used here. ;DCreate an (exportable) table with a given name and list of columns. <%List all tables belonging to a user.  See  Ghttps://developers.google.com/fusiontables/docs/v1/reference/table/list. ‡;Construct a simple Haskell representation of the result of <. =*List the columns within a specific table.  See  Hhttps://developers.google.com/fusiontables/docs/v1/reference/column/list. ˆParse the output of =. >QInsert one or more rows into a table. Rows are represented as lists of strings. P The columns being written are passed in as a separate list. The length of all D rows must match eachother and must match the list of column names. ‰SImplement a larger quantity of rows, but with the caveat that the number and order M of columns must exactly match the schema of the fusion table on the server.  ‰H will perform a listing of the columns to verify this before uploading. +,-./0123456789:Š…†;<The OAuth 2.0 access token. ‡‹Œ=The OAuth 2.0 access token.  which table ˆ>Which columns to write. Rows ‰Which columns to write. Rows Ž+,-./0123456789:;<=>06789:12345+/.-,;<=>+/.-,0123456789:Š…†;<‡‹Œ=ˆ>‰ŽNone?1An MD5 checksum represented in base 64 encoding. @3An MD5 checksum represented as a character string. AMD5 checksum information. BCompute an MD5 checksum. C5Convert an MD5 digest into a base-64-encoded string. D"The MD5 info for an empty string. ?@AB The data.  The MD5 sum. CThe MD5 digest. &The MD5 checksum in base 64 encoding. D?@ABCDA@?BCD?@ABCDNone!E MIME type. FAccess control. MA key name for an object. NA bucket name. ‘The host name for API access. ’The API version used here. “Make a host name. ”URL-encode a path. OCList all of the buckets in a specified project. This performs the " GET Service" request, see  Ghttps://developers.google.com/storage/docs/reference-methods#getservice. PCList all of the buckets in a specified project. This performs the " GET Service" request, see  Ghttps://developers.google.com/storage/docs/reference-methods#getservice. •CList all of the buckets in a specified project. This performs the " GET Service" request, see  Ghttps://developers.google.com/storage/docs/reference-methods#getservice. Q<Creates a bucket in a specified project. This performs the " PUT Bucket" request, see  Fhttps://developers.google.com/storage/docs/reference-methods#putbucket. R<Creates a bucket in a specified project. This performs the " PUT Bucket" request, see  Fhttps://developers.google.com/storage/docs/reference-methods#putbucket. –<Creates a bucket in a specified project. This performs the " PUT Bucket" request, see  Fhttps://developers.google.com/storage/docs/reference-methods#putbucket. S;Lists the objects that are in a bucket. This performs the " GET Bucket" request, see  Fhttps://developers.google.com/storage/docs/reference-methods#getbucket. T;Lists the objects that are in a bucket. This performs the " GET Bucket" request, see  Fhttps://developers.google.com/storage/docs/reference-methods#getbucket. —;Lists the objects that are in a bucket. This performs the " GET Bucket" request, see  Fhttps://developers.google.com/storage/docs/reference-methods#getbucket. ˜;Lists the objects that are in a bucket. This performs the " GET Bucket" request, see  Fhttps://developers.google.com/storage/docs/reference-methods#getbucket. U,Deletes an empty bucket. This performs the " DELETE Bucket" request, see  Ihttps://developers.google.com/storage/docs/reference-methods#deletebucket. V,Deletes an empty bucket. This performs the " DELETE Bucket" request, see  Ihttps://developers.google.com/storage/docs/reference-methods#deletebucket. ™,Deletes an empty bucket. This performs the " DELETE Bucket" request, see  Ihttps://developers.google.com/storage/docs/reference-methods#deletebucket. W(Downloads an object. This performs the " GET Object" request, see  Fhttps://developers.google.com/storage/docs/reference-methods#getobject. X(Downloads an object. This performs the " GET Object" request, see  Fhttps://developers.google.com/storage/docs/reference-methods#getobject. š(Downloads an object. This performs the " GET Object" request, see  Fhttps://developers.google.com/storage/docs/reference-methods#getobject. Y&Uploads an object. This performs the " PUT Object" request, see  Fhttps://developers.google.com/storage/docs/reference-methods#putobject. Z&Uploads an object. This performs the " PUT Object" request, see  Fhttps://developers.google.com/storage/docs/reference-methods#putobject. ›&Uploads an object. This performs the " PUT Object" request, see  Fhttps://developers.google.com/storage/docs/reference-methods#putobject. [1Lists metadata for an object. This performs the " HEAD Object" request, see  Ghttps://developers.google.com/storage/docs/reference-methods#headobject. \1Lists metadata for an object. This performs the " HEAD Object" request, see  Ghttps://developers.google.com/storage/docs/reference-methods#headobject. œ1Lists metadata for an object. This performs the " HEAD Object" request, see  Ghttps://developers.google.com/storage/docs/reference-methods#headobject. ]&Deletes an object. This performs the " DELETE Object" request, see  Ihttps://developers.google.com/storage/docs/reference-methods#deleteobject. ^&Deletes an object. This performs the " DELETE Object" request, see  Ihttps://developers.google.com/storage/docs/reference-methods#deleteobject. &Deletes an object. This performs the " DELETE Object" request, see  Ihttps://developers.google.com/storage/docs/reference-methods#deleteobject. *EFGHIJKLMN‘’“ The bucket. The host for the bucket. ”The unencoded path. The URL-encoded path. ™ TODO: Review whether the sequence of UTF-8 encoding and URL encoding is correct. This works correctly with tests of exotic unicode sequences, however. OThe project ID. The OAuth 2.0 access token. @The action returning the XML with the metadata for the buckets. P!The conduit HTTP manager to use. The project ID. The OAuth 2.0 access token. @The action returning the XML with the metadata for the buckets. •)The function for performing the request. The project ID. The OAuth 2.0 access token. @The action returning the XML with the metadata for the buckets. QThe project ID.  The pre-defined access control.  The bucket. The OAuth 2.0 access token. =The action to put the object and return the response header. R!The conduit HTTP manager to use. The project ID.  The pre-defined access control.  The bucket. The OAuth 2.0 access token. =The action to put the object and return the response header. –)The function for performing the request. The project ID.  The pre-defined access control.  The bucket. The OAuth 2.0 access token. @The action to create the bucket and return the response header. SThe project ID.  The bucket. The OAuth 2.0 access token. @The action returning the XML with the metadata for the objects. T!The conduit HTTP manager to use. The project ID.  The bucket. The OAuth 2.0 access token. @The action returning the XML with the metadata for the objects. —)The function for performing the request. The project ID.  The bucket. The OAuth 2.0 access token. @The action returning the XML with the metadata for the objects. ˜)The function for performing the request. The key to start listing at. The project ID.  The bucket. The OAuth 2.0 access token. @The action returning the XML with the metadata for the objects. UThe project ID.  The bucket. The OAuth 2.0 access token. @The action to delete the bucket and return the response header. V!The conduit HTTP manager to use. The project ID.  The bucket. The OAuth 2.0 access token. @The action to delete the bucket and return the response header. ™)The function for performing the request. The project ID.  The bucket. The OAuth 2.0 access token. @The action to delete the bucket and return the response header. WThe project ID.  The bucket.  The object's key. The OAuth 2.0 access token. !The action returning the object. X!The conduit HTTP manager to use. The project ID.  The bucket.  The object's key. The OAuth 2.0 access token. !The action returning the object. š$The function performing the action. The project ID.  The bucket.  The object's key. The OAuth 2.0 access token. !The action returning the object. žY The project ID.  The pre-defined access control.  The bucket.  The object's key.  The object' s MIME type.  The object's data. The MD5 checksum. The OAuth 2.0 access token. =The action to put the object and return the response header. Z !The conduit HTTP manager to use. The project ID.  The pre-defined access control.  The bucket.  The object's key.  The object' s MIME type.  The object's data. The MD5 checksum. The OAuth 2.0 access token. =The action to put the object and return the response header. › )The function for performing the request. The project ID.  The pre-defined access control.  The bucket.  The object's key.  The object' s MIME type.  The object's data. The MD5 checksum. The OAuth 2.0 access token. =The action to put the object and return the response header. [The project ID.  The bucket.  The object's key. The OAuth 2.0 access token. The action returning the object' s metadata. \!The conduit HTTP manager to use. The project ID.  The bucket.  The object's key. The OAuth 2.0 access token. The action returning the object' s metadata. œ)The function for performing the request. The project ID.  The bucket.  The object's key. The OAuth 2.0 access token. The action returning the object' s metadata. ]The project ID.  The bucket.  The object's key. The OAuth 2.0 access token. @The action to delete the object and return the response header. ^!The conduit HTTP manager to use. The project ID.  The bucket.  The object's key. The OAuth 2.0 access token. @The action to delete the object and return the response header. )The function for performing the request. The project ID.  The bucket.  The object's key. The OAuth 2.0 access token. @The action to delete the object and return the response header. Ÿ EFGHIJKLMNOPQRSTUVWXYZ[\]^NMFLKJIHGEOPQRSTUVWXYZ[\]^$EFLKJIHGMN‘’“”OP•QR–ST—˜UV™WXšžYZ›[\œ]^Ÿ   Safe-Inferred_A recipient for encryption. `Decrypt text. aEncrypt text. bDecrypt binary data. cEncrypt binary data. ĄConsume the input stream. _`The encrypted text. The plain text. aThe recipients for encryption. The plain text. The encrypted text. bThe encrypted data. The plain data. cThe recipients for encryption. The plain data. The encrypted data. Ą The function to write the data.  The handle for the destination. The source data. \The action returning the thread ID of the process consuming the input and writing the data. _`abc_`bac_`abcĄ NoneĸThe host for API access. ŖThe API version used here. dList the contacts, see  Nhttps://developers.google.com/google-apps/contacts/v3/#retrieving_all_contacts. ¤+Make an HTTP request to list the contacts. eExtract the GnuPG/PGP text in the "Notes"m fields of a contact list. Extracts are re-encrypted if recipients for the re-encrypted list are specified. ĨExtract the GnuPG/PGP from a contact list. ĸŖdThe OAuth 2.0 access token. 1The action returning the contacts in XML format. ¤The OAuth 2.0 access token.  The request. e.The recipients to re-encrypt the extracts to. The contact list. IThe action return the decrypted and then possibly re-encrypted extracts. ĨThe contact list. +The contacts in (title, organization, GnuPG/PGP extract) format. dedeĸŖd¤eĨ Nonef%Downloads an object and decrypts it. g%Downloads an object and decrypts it. Ļ%Downloads an object and decrypts it. h!Encrypt an object and upload it. fThe project ID.  The bucket.  The object's key. The OAuth 2.0 access token. !The action returning the object. g!The conduit HTTP manager to use. The project ID.  The bucket.  The object's key. The OAuth 2.0 access token. !The action returning the object. Ļ Function for getting an object. The project ID.  The bucket.  The object's key. The OAuth 2.0 access token. !The action returning the object. h ;The recipients for GnuPG encryption of the uploaded files. The project ID.  The pre-defined access control.  The bucket.  The object's key.  The object' s MIME type.  The object's data. The MD5 checksum. The OAuth 2.0 access token. =The action to put the object and return the response header. i !The conduit HTTP manager to use. ;The recipients for GnuPG encryption of the uploaded files. The project ID.  The pre-defined access control.  The bucket.  The object's key.  The object' s MIME type.  The object's data. The MD5 checksum. The OAuth 2.0 access token. =The action to put the object and return the response header. §  Function for putting an object. ;The recipients for GnuPG encryption of the uploaded files. The project ID.  The pre-defined access control.  The bucket.  The object's key.  The object' s MIME type.  The object's data. The MD5 checksum. The OAuth 2.0 access token. =The action to put the object and return the response header. fghihifgfgĻhi§ None¨Object metadata. Š The object's key. Ē The object' s MD5 sum. Ģ The object's size, in bytes. Ŧ The object's modification time. ­5An expiration time and the tokens which expire then. ŽNA function for determining whether to exclude an object from synchronization. ¯1A function for deleting an object from a bucket. °0A function for putting an object into a bucket. ą!A function for listing a bucket. jDA regular expression used for excluding files from synchronization. kASynchronize a filesystem directory with a Google Storage bucket. ˛?Check whether a token has expired and refresh it if necessary. ŗOMake a function to exclude objects based on regular expressions for filenames. ´ASynchronize a filesystem directory with a Google Storage bucket. ĩmDelete the first occurrence of items in the second list from the first list, assuming both lists are sorted. ļPut a list of objects. ˇDelete a list of objects. ¸-Parse XML metadata into object descriptions. š+Gather file metadata from the file system. ē+Gather file metadata from the file system. ¨ģŠĒĢŦ­Ž The object' s metadata. 4Whether to exclude the object from synchronization. ¯ The object's key. The OAuth 2.0 access token. =The action to put the object and return the response header. ° The object's key.  The object' s MIME type.  The object's data. The MD5 checksum. The OAuth 2.0 access token. =The action to put the object and return the response header. ąThe OAuth 2.0 access token. @The action returning the XML with the metadata for the objects. jk The Google project ID.  The pre-defined access control. The bucket name. "The OAuth 2.0 client information. The OAuth 2.0 tokens. "The directory to be synchronized. ;The recipients for GnuPG encryption of the uploaded files. GThe regular expressions used for excluding files from synchronization. Whether to write a file ".md5sum"< of MD5 sums of synchronized files into the root directory. ZWhether to delete keys from the bucket that do not correspond to files on the filesystem. 'The IO action for the synchronization. ˛"The OAuth 2.0 client information. The token and its expiration. 3The action to update the token and its expiration. ŗThe regular expressions. $The function for excluding objects. ´ The bucket listing function. The object putting function. The object deletion function. "The OAuth 2.0 client information. The OAuth 2.0 tokens. "The directory to be synchronized. 3Whether to use ETags in comparing object metadata. 2The local file system objects to be synchronized. Whether to write a file ".md5sum"< of MD5 sums of synchronized files into the root directory. ZWhether to delete keys from the bucket that do not correspond to files on the filesystem. 'The IO action for the synchronization. ĩThe equality function. -The first list, which must have been sorted. .The second list, which must have been sorted. >The items in the first list not appearing in the second list. ļ"The OAuth 2.0 client information. The token and its expiration. "The directory to be synchronized. The object putting function. &Description of the objects to be put. 3The action to update the token and its expiration. ˇ"The OAuth 2.0 client information. The token and its expiration. The object deletion function. *Description of the objects to be deleted. 3The action to update the token and its expiration. ŧ¸The XML metadata. The object descriptions. šWhether to compute MD5 sums. "The directory to be synchronized. $Action returning file descriptions. ēWhether to compute MD5 sums. "The directory to be synchronized. 4The subdirectories still remaining to be described. $Action returning file descriptions. Ŋžjkjk¨ģŠĒĢŦ­Ž¯°ąjk˛ŗ´ĩļˇŧ¸šēŊžŋ   !"#$%%&'()**+,-./0123456789:;<=>>?@ABBCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghi j k l m n o p q r s t u vwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĸŖ¤Ĩϧ¨ŠĒĢ Ŧ ­ Ž ¯ ° ą ˛ ŗ ´ ĩ ļ ˇ ¸ š ē ģ ŧ Ŋ ž ŋ Ā Á Â Ã Ä Å ŗ Æ Į ČÉhanda-gdata-0.6.1 Crypto.MD5Network.GoogleNetwork.Google.BookmarksNetwork.Google.BooksNetwork.Google.OAuth2Network.Google.PicasaNetwork.Google.FusionTablesNetwork.Google.Storage Crypto.GnuPGNetwork.Google.Contacts Network.Google.Storage.EncryptedNetwork.Google.Storage.SyncpureMD5-2.1.2.1Data.Digest.Pure.MD5md5 MD5Digest doRequestdoManagedRequest ProjectId AccessToken toAccessToken makeRequestmakeProjectRequestmakeRequestValuemakeHeaderName appendHeaders appendBody appendQuerySmsTokenPasswordEMail listBookmarksShelfIdlistBookshelves listBooks OAuth2Scope OAuth2Tokens accessToken refreshToken expiresIn tokenType OAuth2ClientclientId clientSecret googleScopesformUrl exchangeCode refreshTokensvalidateTokensgetCachedTokensAlbumIdUserId defaultUser listAlbums listPhotosCellTypeDATETIMELOCATIONSTRINGNUMBERTableIdColumnMetadata col_columnIdcol_namecol_type TableMetadatatab_name tab_tableId tab_columns createTable listTables listColumns insertRows MD5Base64 MD5StringMD5Info md5Base64 md5ToBase64md5EmptyMIMEType StorageAclBucketOwnerFullControlBucketOwnerReadAuthenicatedReadPublicReadWrite PublicReadPrivateKeyName BucketName getServicegetServiceUsingManager putBucketputBucketUsingManager getBucketgetBucketUsingManager deleteBucketdeleteBucketUsingManager getObjectgetObjectUsingManager putObjectputObjectUsingManager headObjectheadObjectUsingManager deleteObjectdeleteObjectUsingManager Recipientdecryptencrypt decryptLbs encryptLbs listContactsextractGnuPGNotesgetEncryptedObjectgetEncryptedObjectUsingManagerputEncryptedObjectputEncryptedObjectUsingManagerRegexExclusionsync DoRequestmakeHeaderValue$fDoRequestJSValue$fDoRequestElement $fDoRequest() $fDoRequest[]$fDoRequest[]0$fDoRequestByteStringaccountsPostRequest listingUrl extractValue booksHostbooksApilistBookshelfIdslistShelfBooks booksRequest OAuth2Code redirectUri decodeTokensdoOAuth2 picasaHost picasaApiextractAlbumIdslistAlbumPhotospicasaFeedRequestfusiontableHostfusiontableApi parseTables parseColumnsbulkImportRowsFTString parseTable parseColumnsqlQuery filterRows$fOutColumnMetadata$fOutTableMetadata storageHost storageApimakeHostmakePathgetServiceImpl putBucketImpl getBucketImplgetBucketImpl'deleteBucketImpl getObjectImpl putObjectImplheadObjectImpldeleteObjectImpl postObject$fReadStorageAcl$fShowStorageAcl consumeInput contactsHost contactsApilistContactsRequestextractGnuPGNotes'getEncryptedObjectImplputEncryptedObjectImplObjectMetadatakeyeTagsize lastModified TokenClockExcluderDeleterPutterListercheckExpiration makeExcludersync'deleteFirstsBy' walkPutter walkDeleter parseMetadatawalkDirectorieswalkDirectories'handler$fEqObjectMetadata$fOrdObjectMetadata