t      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{| } ~   None35C  Resource URI.<Newtype wrapper of Network.URI.URI to avoid orphan instance.@Freesound API monad for communication with the Freesound server.Reader monad environment.7API key required for each call to the Freesound server.#Construct an API key from a String.,Perform an API action and return the result."Cover up for Freesound sloppiness.'Download the data referred to by a URI.(Append a query string to a resource URI.Create a query item for the API key. apiKeyQuery :: Freesound HTTP.Query apiKeyQuery = do k <- Freesound $ R.asks apiKey return $ [("api_key", Just k)]+Download the resource referred to by a URI."The base URI of the Freesound API. 6Construct an API uri from path components and a query.   NoneN        None- CoordinateThe sound s unique identifier.0The URI for this sound on the Freesound website. The name user gave to the sound.,An array of tags the user gave to the sound.+The description the user gave to the sound.PLatitude and longitude of the geotag (only for sounds that have been geotagged).(The date of when the sound was uploaded.6The license under which the sound is available to you.(The type of sound (wav, aif, mp3, etc.).The number of channels.The size of the file in bytes.The bit rate of the sound.The bit depth of the sound.%The duration of the sound in seconds. The samplerate of the sound.!*The username of the uploader of the sound."LIf the sound is part of a pack, this URI points to that pack s API resource.#*The URI for retrieving the original sound.$"The URI for bookmarking the sound.%*Dictionary containing the URIs for mp3 and ogg versions of the sound. The dictionary includes the fields preview-hq-mp3 and preview-lq-mp3 (for ~128kbps quality and ~64kbps quality mp3 respectively), and preview-hq-ogg and preview-lq-ogg (for ~192kbps quality and ~80kbps quality ogg respectively).& Dictionary including the URIs for spectrogram and waveform visualizations of the sound. The dinctionary includes the fields waveform_l and waveform_m (for large and medium waveform images respectively), and spectral_l and spectral_m (for large and medium spectrogram images respectively).'-The number of times the sound was downloaded.( The average rating of the sound.)(The number of times the sound was rated.*The URI for rating the sound.+9The URI of a paginated list of the comments of the sound.,The number of comments.-The URI to comment the sound..jURI pointing to the similarity resource (to get a list of similar sounds). , analysis :: Maybe/;URI pointing to the complete analysis results of the sound.0YThe URI for retrieving a JSON file with analysis information for each frame of the sound.:A visualization of the sounds waveform, png file (medium).9A visualization of the sounds waveform, png file (large).EA visualization of the sounds spectrum over time, jpeg file (medium).DA visualization of the sounds spectrum over time, jpeg file (large).JThe URI for retrieving a high quality (~128kbps) mp3 preview of the sound.HThe URI for retrieving a low quality (~64kbps) mp3 preview of the sound.JThe URI for retrieving a high quality (~192kbps) ogg preview of the sound.@The URI for retrieving a low quality (~80kbps) ogg of the sound.2The sound s unique identifier.3 The name user gave to the sound.4,An array of tags the user gave to the sound.5*The username of the uploader of the sound.66The license under which the sound is available to you.X !"#$%&'()*+,-./0123456789:;<=L !"#$%&'()*+,-./0123456789:;<=  !"#$%&'()*+,-./0123456789:;<=None >?@ABCDE>?@ABCDE BCDCD>?@A?@AE>?@ABCDE NoneNoneFNumerical constraint.FGHIJFGHIJFGHJI FGHIJNone -Newtype wrapper for avoiding orphan instance.LSound id on Freesound.XDuration of sound in seconds.Y'WARNING is not to be trusted right now.Z'WARNING is not to be trusted right now.\File size in bytes.];Number of channels in sound, mostly 1 or 2, sometimes more.^32-byte md5 hash of file._'All zero right now (not imported data).`Average rating, from 0 to 5.aNumber of ratings.cNumber of comments.AK     LMNOPQRSTUVWXYZ[\]^_`abcKLMNOPQRSTUVWXYZ[\]^_`abcKLMNOPQRSTUVWXYZ[\]^_`abc$K     LMNOPQRSTUVWXYZ[\]^_`abcNone defgdefgdefgdefgNonehijklmnopqrstuv !1FGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvpqrstmnoluvhijk hijklmnopqrstuv !NonezCSearch for sounds in a certain coordinate region. geotagged :: ...+Content based search. contentSearch :: ...wxyz{0 !"#$%&'()*+,-./0123456789:;<=wxyz{L=789:;<123456 !"#$%&'()*+,-./0w !"#$%&'()*+,-./0xyz{wxyz{None }5A JSON object with the user s username, url, and ref."The URI for this resource.#6The URL for this pack s page on the Freesound website.$,The API URI for the pack s sound collection.%The pack s name.&#The date when the pack was created.',The number of times the pack was downloaded.The URI for this resource.6The URL for this pack s page on the Freesound website.,The API URI for the pack s sound collection.The pack s name.#The date when the pack was created.,The number of times the pack was downloaded.|()}~*"#$%&'+,-./|()}~*"#$%&'|()}~*"#$%&'+,-./None0Summary.-The API URI for this user s sound collection.,The API URI for this user s pack collection.&The user s first name, possibly empty.%The user s last name, possibly empty.IA small text the user wrote about himself. FIXME: homePage :: Maybe Data$The user s homepage, possibly empty.%The user s signature, possibly empty.#The date the user joined Freesound.User of the Freesound database.1The user s username.2The URI for this resource.37The profile page for the user on the Freesound website.User of the Freesound database.The user s username.The URI for this resource.7The profile page for the user on the Freesound website.4051236789:4051236 4051236789: None |}~~|}} None&Get detailed information about a user.%Get information about a user by name.0Retrieve a list of a user's bookmark categories.QRetrieve a user's sounds. This is broken: the response doesn't contain the User.Retrieve a user's sounds.Retrieve a user's packs.NoneH FGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvxyz{xyz{ ;           !" # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L MNO%PQRCSTUVWXYBE(Z&[F\]2^*/.-0,+_789=;`abcddefghijklmnopqrstuv$E#wx%PC(7$Pyz{|}~#Cx%  S S          # $          M NQ   Y`$#$#frees_0YUxj1QMtzxFEkbahoXUCLSound.FreesoundSound.Freesound.ListSound.Freesound.SoundSound.Freesound.Bookmark Sound.Freesound.Search.NumericalSound.Freesound.Search.FilterSound.Freesound.Search.QuerySound.Freesound.SearchSound.Freesound.PackSound.Freesound.UserSound.Freesound.APISound.Freesound.Sound.Type!Sound.Freesound.Bookmark.InternalSound.Freesound.Pack.TypeSound.Freesound.User.TypeResourceURI FreesoundAPIKeyapiKeyFromString runFreesoundgetURI appendQuery getResource resourceURIElemelemsFieldNameListelemsnumElemspreviousnext getPreviousgetNextSummaryDetailurl descriptiongeotagcreated sound_licensefileTypechannelsfilesizebitratebitdepthduration sampleratesound_usernamepackdownloadbookmarkpreviewsimages numDownloads avgRating numRatingsratecomments numCommentscomment similarSounds analysisStatsanalysisFramesSoundidnametagsusernamelicenseFileTypeWAVAIFFOGGMP3FLACSoundIdCategorycategorysoundsBookmarksound getSounds Numericalequalsbetween greaterThanlessThanFiltersoriginalFilenametagisRemix wasRemixed isGeotaggedmd5Queryincludeexclude& PaginationpageresultsPerPageSorting SortDirection Ascending Descending SortMethodDurationCreated DownloadsRatingunsortedsortedBySoundssearchsearch_ getSimilar getSimilar_Packrefpacks firstNamelastNameabouthomePage signature dateJoinedbookmarkCategoriesUserPacks getSounds_getUser getUserByNamegetBookmarkCategoriesgetPacksEnv parseURI'baseURIapiKeysession $fFromJSONURI$fFromJSONListGeoTagsound_id sound_name sound_tags waveform_m waveform_l spectral_m spectral_lpreview_hq_mp3preview_lq_mp3preview_hq_oggpreview_lq_ogglatitude longitude summary_id summary_name summary_tagssummary_usernamesummary_licenseImagesPreviewsLicense AttributionAttributionNoncommercialCreativeCommons0soundIdToInteger$fFromJSONGeoTag $fElemSummary$fSoundSummary$fFromJSONSummary $fSoundDetail$fFromJSONDetail$fFromJSONImages$fFromJSONPreviews$fFromJSONLicense$fFromJSONFileType$fQueryValueLikeFileType$fFromJSONSoundId$fFromJSONCategory$fFromJSONBookmark Categories numCategories categories$fFromJSONCategoriesNumericalQueryValuetoNumericalQueryValueEqualsBetween GreaterThanLessThanwrapwildcard$fQueryValueLikeNumerical$fNumericalQueryValueUTCTime$fNumericalQueryValueSoundId$fNumericalQueryValueInteger$fNumericalQueryValueDoubleF_BoolFilterF_id F_username F_createdF_original_filename F_descriptionF_tag F_license F_is_remix F_was_remixedF_packF_is_geotaggedF_type F_duration F_bitdepth F_bitrate F_samplerate F_filesize F_channelsF_md5F_num_downloads F_avg_rating F_num_ratings F_comment F_commentsmkF fromFilter$fQueryValueLikeFilters$fDefaultFilters$fMonoidFilters$fQueryValueLikeFilter$fQueryValueLikeF_Bool$fQueryValueLikeLicenseTermIncludeExcludeappend$fQueryValueLikeQueryUnsortedSortedBy$fQueryLikePagination$fDefaultPagination$fQueryValueLikeSorting$fDefaultSortingpack_refpack_url pack_sounds pack_name pack_createdpack_num_downloadssummary $fPackDetail $fPackSummary user_nameuser_refuser_url textToMaybe $fUserDetail $fUserSummary