GvAb      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`a Safe-InferredFormat b values for the Drive APIWThe docs claim it must be RFC 3339 formatted, but in practice the fractional seconds, %Q2, (which the RFC states is optional) are required.None+FA transformer stack for providing the access token and rescuing errors All other errors #Failure to parse a response as JSON !Exceptions raised by http-conduit Downloads use sinks for space efficiency and so that callers can implement things like throttling or progress output themselves. If you just want to download to a file, use the re-exported Run an Api( computation with the given Access tokenLike runApi$ but discards the result and raises ApiErrors as exceptions Abort an Api# computation with the given message'Make an authorized GET request for JSONFMake an authorized GET request, sending the response to the given sink(Make an authorized POST request for JSON'Make an authorized PUT request for JSONRMake an authorized request for JSON, first modifying it via the passed functionqMake an authorized request, first modifying it via the passed function, and returning the raw response content.Create an authorized request for the given URLKModify the Request's status check to not treat the given status as an error,Decode a JSON body, capturing failure as an   OAuth2 access tokencdef     cdefNone3 An existing file""Metadata about Files on your Drive/Get a File data by FileId"root"3 can be used to get information on the Drive itself%If the API returns 404, this returns Nothing0 Create a File from FileData1 Update a File2 Delete a File3 Download a FileReturns Nothing if the file is not downloadable8$What to name this file if downloadedCurrently just the  fileTitle9 Check if a File( is a folder by inspecting its mime-type: Check if a File has content stored in drive% !"#$%&'()*+,-./0123456789:gh;ijklm !"#$%&'()*+,-./0123456789:; !."#$%&'()*+-,4567/01239:8; !" #$%&'()*+,-./0123456789:gh;ijklmNone<2Type class for values which can be used in queries>Queriable fieldsM%Perform a search as specified by the QueryN2List all not-trashed files within the given folderO8The content of a string or boolean is equal to the otherP<The content of a string or boolean is not equal to the otherQA date is earlier than anotherR*A date is earlier than or equal to anotherSA date is later than anotherT(A date is later than or equal to anotherU+An element is contained within a collection Used for Parents, Owners, Writers, and Readers.>Note the reversed arguments such that infix usage makes sense.V9A collection contains an element matching the parameters. Used for  Properties.W1The content of one string is present in the other Used for Title, FullText, and MimeType.X$Return files that match both clausesY$Return files that match both clausesZ%Return files that match either clause[%Return files that match either clause\Negates a search clause*no<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\pqrstuv!<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\!MNL>KJIHGFEDCBA@?<=OPQRSTXZUVWY[\no<=> KJIHGFEDCBA@?LMNOPQRSTUVWXYZ[\pqrstuvXYZ[None]Uploads use sources for space efficiency and so that callers can implement things like throttling or progress output themselves. Since uploads are resumable, each invocation will give your  UploadSourceg the bytes completed so far, so you may create an appropriately offset source (i.e. into a file).^Simple  UploadSource for uploading from a file ]^_`wxyz{|}]^_`]^_` ]^_`wxyz{|}Nonea0OAuth2 scopes to use for access to the Drive APIaa  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`aaa~   !"#$%&'()*++,-../0123456789:;<=>?@ABCDEFGHIJKLMNOPQRS7TUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyzz{|s}~sgoogle-drive-0.4.1Network.Google.ApiNetwork.Google.Drive.DateTimeNetwork.Google.Drive.FileNetwork.Google.Drive.SearchNetwork.Google.Drive.UploadNetwork.Google.Driveconduit-extra-1.1.9.1Data.Conduit.BinarysinkFiletransformers-0.4.3.0Control.Monad.IO.ClassliftIO mtl-2.2.1Control.Monad.Error.Class catchError throwErrorformatDateTimeParamsPathURLApiApiError GenericError InvalidJSON HttpError DownloadSinkrunApirunApi_ throwApiErrorgetJSON getSourcepostJSONputJSON requestJSON requestLbs authorize addHeader setMethodsetBody setBodySource allowStatus decodeBodyFilefileIdfileDataFileData fileTitle fileModified fileParents fileTrashedfileSizefileDownloadUrl fileMimeTypefileExportLinksMimeType FileTitleFileIdgetFile createFile updateFile deleteFile downloadFilenewFile newFolder setParent setMimeType localPathisFolderisDownloadablefolderMimeType QueryValue escapeValueField Properties SharedWithMeReadersWritersOwnersParentsStarredTrashedLastViewedByMeDate ModifiedDateFullTextTitleQuery listFileslistVisibleContents?=?!=?<?<=?>?>=qInqHas qContains?&&qAnd?||qOrqNot UploadSourceuploadSourceFilecreateFileWithContentupdateFileWithContent driveScopes time-1.5.0.1Data.Time.Clock.UTCUTCTime parseUrl' withManager'$fExceptionApiError$fShowApiErrorbaseUrlfileUrl$fFromJSONFile$fToJSONFileData$fFromJSONFileData $fShowFile$fEqFileItemsqOp escapeField$fFromJSONItems$fQueryValueUTCTime$fQueryValueBool$fQueryValueText uploadContentwithSessionUrlgetUploadedBytes resumeUploadretryWithBackoff status308