"k S      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQR$(c) Joachim Fasting 2012MIT&Joachim Fasting <joachifm@fastmail.fm>unstable unportable Safe-Inferred+*Represents various MPD errors (aka. ACKs).An unknown ACK (aka. bug)File already exists (ACK 56);An operation requiring playback got interrupted (ACK 55)Update already running (ACK 54) Playlist loading failed (ACK 53)A system error (ACK 52)!Playlist at maximum size (ACK 51) #File or directory not found ACK 50) Unknown command (ACK 5) Authentication required (ACK 4) !Invalid password supplied (ACK 3) Invalid argument passed (ACK 2)MThe MPDError type is used to signal errors, both from the MPD and otherwise.)ACK type and a message from the serverUsed for misc. errorsaMPD returned an unexpected response. This is a bug, either in the library or in MPD itself.'An error occurred while talking to MPD.MPD not responding STU  STU0(c) Ben Sinclair 2005-2009, Joachim Fasting 2010MIT (see LICENSE)&Joachim Fasting <joachifm@fastmail.fm>alpha Safe-Inferred3VA typeclass to allow for multiple implementations of a connection to an MPD server.1Open (or re-open) a connection to the MPD server.Close the connection.4Send a string to the server and return its response.BProduce a password to send to the server should it ask for one.)Alters password to be sent to the server.Get MPD protocol version0(c) Ben Sinclair 2005-2009, Joachim Fasting 2010MIT (see LICENSE)&Joachim Fasting <joachifm@fastmail.fm>alphaNoneV-Like Prelude.read, but works with ByteString.VWXYZ[\]^_`abcd VWXYZ\]^_`abcVWXYZ[\]^_`abcd&(c) Joachim Fasting, Simon Hengel 2012MIT&Joachim Fasting <joachifm@fastmail.fm>alpha unportableNone24BeA uniform interface for argument preparation The basic idea is that one should be able to magically prepare an argument for use with an MPD command, without necessarily knowing/caring how it needs to be represented internally.fArguments for getResponse are accumulated as strings in values of this type after being converted from whatever type (an instance of MPDArg) they were to begin with.g)Groups together arguments to getResponse.hZConverts a command name and a string of arguments into the string to hand to getResponse.ijekflghmnopqrstuviekflghijekflghmnopqrstuvgh0(c) Ben Sinclair 2005-2009, Joachim Fasting 2010MIT (see LICENSE)&Joachim Fasting <joachifm@fastmail.fm>alphaNone24BFContainer for MPD status.A percentage (0-100).w/ indicates that the output lacks mixer support."MA value that is incremented by the server every time the playlist changes.#,The number of items in the current playlist.$(Current song's position in the playlist.%Current song's playlist ID.&%Next song's position in the playlist.'Next song's playlist ID.(1Time elapsed/total time of playing song (if any).);Bitrate (in kilobytes per second) of playing song (if any).*Crossfade time.+MixRamp threshold in dB,MixRamp extra delay in seconds-HSamplerate/bits/channels for the chosen output device (see mpd.conf)..,Job ID of currently running update (if any)./AIf True, MPD will play only one song and stop after finishing it.09If True, a song will be removed after it has been played.1Last error message (if any).2"Container for database statistics.4Number of artists.5Number of albums.6Number of songs.7Daemon uptime in seconds.8Total playing time.94Total play time of all the songs in the database.:"Last database update in UNIX time.=%The position of a song in a playlist.>Represents a single song item.ADMap of available tags (multiple occurrences of one tag type allowed)BLast modification dateCLength of the song in secondsDId in playlistEPosition in playlistFRepresents an output device.HOutput's ID numberI9Output's name as defined in the MPD configuration fileKResult of the lsInfo operationLPlaylistMSongN DirectoryO!Represents the result of running count.Q"Number of songs matching the queryR!Total play time of matching songsTPer album modeUPer track modeVDisable replay gainW&Represents the various MPD subsystems.XMessage on subscribed channelY SubscriptionZSticker database[Playback options\ Audio outputs]The volume mixer^ The player_The current playlist`Stored playlistsaDatabase updatesbThe song databasec)Represents the different playback states.i Object types.kA metadata value.ltAvailable metadata types/scope modifiers, used for searching the database for entries with certain metadata values.]Used for commands which require a path within the database. If empty, the root path is used.YUsed for commands which require a playlist name. If empty, the current playlist is used.1A type class for values that can be converted to xs.Convert given value to x.Convert given value to y.'Convert given value to a UTF-8 encoded z.Get list of specific tag typeAdd metadata tag value. !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk{lmnopqrstuvwxyz{|}~|}~t !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk{lmnopqrstuvwxyz{|}~|, !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKNMLOPQRSVUTW ba`_^]\[ZYXcfedghijk{l~}|{zyxwvutsrqponm|}~(c) Joachim Fasting 2012MIT&Joachim Fasting <joachifm@fastmail.fm>unstable unportableNone&An interface for creating MPD queries.KFor example, to match any song where the value of artist is "Foo", we use: Artist =? "Foo"We can also compose queries, thus narrowing the search. For example, to match any song where the value of artist is "Foo" and the value of album is "Bar", we use: "Artist =? "Foo" <&> Album =? "Bar"!An empty query. Matches anything.Create a query.Combine queries. 0(c) Ben Sinclair 2005-2009, Joachim Fasting 2010MIT (see LICENSE)&Joachim Fasting <joachifm@fastmail.fm>alphaNone3 Builds a O instance from an assoc. list.Builds a list of F instances from an assoc. list Builds a 2 instance from an assoc. list. Builds a > instance from an assoc. list.A helper that runs a parser on a string and, depending on the outcome, either returns the result of some command applied to the result, or a default value. Used when building structures.A helper for running a parser returning Maybe on a pair of strings. Returns Just if both strings where parsed successfully, Nothing otherwise.None0(c) Ben Sinclair 2005-2009, Joachim Fasting 2010MIT (see LICENSE)&Joachim Fasting <joachifm@fastmail.fm>alphaNone3BMA response is either an  or some result.Inner state for MPDeThe main implementation of an MPD client. It actually connects to a server and interacts with it.0To use the error throwing/catching capabilities: 3import Control.Monad.Error (throwError, catchError)'To run IO actions within the MPD monad: #import Control.Monad.Trans (liftIO)4The most configurable API for running an MPD action.*Re-connect and retry for these Exceptions.MPredicate to identify ResourceVanished exceptions. Note: these are GHC only!;Kill the server. Obviously, the connection is then invalid.7Send a command to the MPD server and return the result." " (c) Simon Hengel 2012MITjoachifm@fastmail.fmstable unportableNone-EuA compound command, comprising a parser for the responses and a combined request of an arbitrary number of commands.KA line-oriented parser that returns a value along with any remaining input.Convert a regular parser.+Return everything until the next "list_OK".)For commands returning an empty response.Fail with unexpected response. Execute a .  (c) Joachim Fasting 2012MITjoachifm@fastmail.fmstable unportableNone&Clear current error message in status.1Song metadata for currently playing song, if any.^Wait until there is noteworthy change in one or more of MPD's subsystems. When active, only  commands are allowed. Cancel an  request.Get database statistics.%Get the current status of the player.(c) Joachim Fasting 2012MITjoachifm@fastmail.fmstable unportableNone Toggle consume mode.Set crossfading between songs.Toggle random mode.Toggle repeat mode.Set volume in percent.Toggle single mode.Set replay gain mode.2Get replay gain status: option name and its value.fSet MixRamp overlap threshold. 0dB is the normalized maximum value; use negative values to adjust it.sSongs must have MixRamp tags set by an external tool for this to work; crossfading is used if no tags are present.;Additional time subtracted from the overlap calculated by . NaN9 disables MixRamp overlapping and reverts to crossfading. (c) Joachim Fasting 2012MITjoachifm@fastmail.fmstable unportableNonePlay next song in the playlist. Toggle pause.3Begin playback (optionally at a specific position).(Begin playback at the specified song id.Play previous song./Seek to time in the song at the given position.+Seek to time in the song with the given id.Stop playback.(c) Joachim Fasting 2012MITjoachifm@fastmail.fmstable unportableNone:Add a song (or a whole directory) to the current playlist./Add a song (non-recursively) and return its id.Clear the current playlist.+Delete song at the given playlist position.*Delete a range of songs from the playlist.Delete song by id.'Move song from one position to another.Move a range of songs.[Move song id to position. If the position is negative, it is relative to the current song.4Find songs in current playlist with strict matching.uGet song metadata for all items in the current playlist. Optionally restrict listing the song at the given position.Like / but can restrict listing to a range of songs.lGet song metadata for all items in the current playlist. Optionally restrict selection to a single song id.BSearch case-insensitively for partial matches in current playlist.`Get song metadata for items that have changed in the playlist since the given playlist version.cGet positions and ids of songs that have changed in the playlist since the given playlist version.GShuffle the current playlist. Optionally restrict to a range of songs.Swap songs by position.Swap songs by id.(c) Joachim Fasting 2012MITjoachifm@fastmail.fmstable unportableNone  List song items in the playlist..List song items in the playlist with metadata.Get a list of stored playlists.%Load playlist into the current queue.*Add a database path to the named playlist.Clear the playlist.8Delete the item at the given position from the playlist.2Move a song to a new position within the playlist.Rename the playlist.Remove the playlist.)Save current queue to the named playlist. (c) Joachim Fasting 2012MITjoachifm@fastmail.fmstable unportableNone LGet a count of songs and their total playtime that exactly match the query.&Find songs matching the query exactly.Like . but adds the results to the current playlist.%Lists all tags of the specified type.ONote that the optional artist value is only ever used if the metadata type is F, and is then taken to mean that the albums by that artist be listed.2List all songs and directories in a database path.Same as  but also returns metadata.*List the contents of a database directory.Like  but with inexact matching.Like . but adds the results to the current playlist.Since MPD 0.17.Like ( but adds results to the named playlist.Since MPD 0.17.SUpdate the music database. If no path is supplied, the entire database is updated.Like " but also rescan unmodified files. (c) Joachim Fasting 2012MITjoachifm@fastmail.fmstable unportableNone,Read sticker value for the object specified.VAdd sticker value to the object. Will overwrite existing stickers with the same name.|Delete a sticker value from the object. If no sticker name is given, all sticker values attached to the object are deleted.List stickers for the object.aSearch the sticker database for stickers with the specified name, below the specified directory. (c) Joachim Fasting 2012MITjoachifm@fastmail.fmstable unportableNone9Authenticate session. The password is sent in plain text. Ping daemon. (c) Joachim Fasting 2012MITjoachifm@fastmail.fmstable unportableNoneTurn off output.Turn on output.3Get information about all available output devices. (c) Joachim Fasting 2012MITjoachifm@fastmail.fmstable unportableNone!Get a list of available commands.[Get a list of unavailable commands (i.e., commands that require an authenticated session).&Get a list of available song metadata.%Get a list of available URL handlers.WGet a list of available decoder plugins, with their supported suffixes and MIME types.1Get configuration values of interest to a client.[Note: only permitted for clients connected via a unix domain socket (aka "local clients").NoneV(c) Joachim Fasting 2013MITjoachifm@fastmail.fmstable unportableNone0(c) Ben Sinclair 2005-2009, Joachim Fasting 2012MIT (see LICENSE)joachifm@fastmail.fmstable unportableNone*Clear the current error message in status.Get the currently playing song.LWait until there is a noteworthy change in one or more of MPD's susbystems.The first argument is a list of subsystems that should be considered. An empty list specifies that all subsystems should be considered.>A list of subsystems that have noteworthy changes is returned.7Note that running this command will block until either  returns or is cancelled by .Cancel .Get server statistics.Get the server's status.0(c) Ben Sinclair 2005-2009, Joachim Fasting 2012MIT (see LICENSE)joachifm@fastmail.fmstable unportableNoneSet consume modeSet crossfading between songs.Set random playing.Set repeating.Set the volume (0-100 percent).Set single modeSet the replay gain mode.Get the replay gain options.0(c) Ben Sinclair 2005-2009, Joachim Fasting 2012MIT (see LICENSE)joachifm@fastmail.fmstable unportableNonePlay the next song.Pause playing.Begin/continue playing.Play a file with given id.Play the previous song.Seek to some point in a song.)Seek to some point in a song (id version)  Stop playing.   0(c) Ben Sinclair 2005-2009, Joachim Fasting 2012MIT (see LICENSE)joachifm@fastmail.fmstable unportableNone3 Like  , but returns a playlist id. :Add a song (or a whole directory) to the current playlist. Clear the current playlist. (Remove a song from the current playlist.(Remove a song from the current playlist.8Move a song to a given position in the current playlist.Move a song from (songid) to (playlist index) in the playlist. If to is negative, it is relative to the current song in the playlist (if there is one).Retrieve file paths and positions of songs in the current playlist. Note that this command is only included for completeness sake; it's deprecated and likely to disappear at any time, please use  instead.>Search for songs in the current playlist with strict matching.4Retrieve metadata for songs in the current playlist.Like & but can restrict to a range of songs.YDisplays a list of songs in the playlist. If id is specified, only its info is returned.RSearch case-insensitively with partial matches for songs in the current playlist.[Retrieve a list of changed songs currently in the playlist since a given playlist version.Like $ but only returns positions and ids.Shuffle the playlist. Swap the positions of two songs.,Swap the positions of two songs (Id version)    Optional range (start, end)        0(c) Ben Sinclair 2005-2009, Joachim Fasting 2012MIT (see LICENSE)joachifm@fastmail.fmstable unportableNone -Retrieve a list of files in a given playlist.0Retrieve metadata for files in a given playlist.$Retreive a list of stored playlists.Load an existing playlist. Add a song (or a whole directory) to a stored playlist. Will create a new playlist if the one specified does not already exist.!PClear a playlist. If the specified playlist does not exist, it will be created."Remove a song from a playlist.#:Move a song to a given position in the playlist specified.$Rename an existing playlist.%Delete existing playlist.&Save the current playlist.  !"#$Original playlistNew playlist name%&  !"#$%&  !"#$%&0(c) Ben Sinclair 2005-2009, Joachim Fasting 2012MIT (see LICENSE)joachifm@fastmail.fmstable unportableNone '-Count the number of entries matching a query.(9Search the database for entries exactly matching a query.)4Adds songs matching a query to the current playlist.*$List all tags of the specified type.+FList the songs (without metadata) in a database directory recursively., Recursive -.-:Non-recursively list the contents of a database directory..4Search the database using case insensitive matching./Update the server's database.pIf no path is given, the whole library will be scanned. Unreadable or non-existent paths are silently ignored.The update job id is returned.0Like /# but also rescans unmodified files. '()*Metadata to list+,-./0 '()*+,-./0 '()*+,-./00(c) Ben Sinclair 2005-2009, Joachim Fasting 2012MIT (see LICENSE)joachifm@fastmail.fmstable unportableNone1/Reads a sticker value for the specified object.2-Adds a sticker value to the specified object.31Delete a sticker value from the specified object.4,Lists the stickers for the specified object.5^Searches the sticker database for stickers with the specified name, below the specified path.1 Object URI Sticker name2 Object URI Sticker name Sticker value3 Object URI Sticker name4 Object URISticker name/sticker value5Path Sticker nameURI/sticker value1234512345 0(c) Ben Sinclair 2005-2009, Joachim Fasting 2012MIT (see LICENSE)joachifm@fastmail.fmstable unportableNone6QSend password to server to authenticate session. Password is sent as plain text.7*Check that the server is still responding.676767!0(c) Ben Sinclair 2005-2009, Joachim Fasting 2012MIT (see LICENSE)joachifm@fastmail.fmstable unportableNone8Turn off an output device.9Turn on an output device.:,Retrieve information for all output devices.89:89:89:"0(c) Ben Sinclair 2005-2009, Joachim Fasting 2012MIT (see LICENSE)joachifm@fastmail.fmstable unportableNone;&Retrieve a list of available commands.<ERetrieve a list of unavailable (due to access restrictions) commands.=+Retrieve a list of available song metadata.>)Retrieve a list of supported urlhandlers.?IRetreive a list of decoder plugins with associated suffix and mime types.@'Retrieve configuration keys and values.;<=>?@;<=>?@;<=>?@#(c) Joachim Fasting 2013MIT (see LICENSE)joachifm@fastmail.fmstable unportableNoneABCDEABCDEABCDE$(c) Joachim Fasting 2012MITjoachifm@fastmail.fmstable unportableNone !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDE(c) Joachim Fasting 2012MIT&Joachim Fasting <joachifm@fastmail.fm>unstable unportableNone FThis is exactly the same as /.G%Toggles play/pause. Plays if stopped.HRAdd a list of songs/folders to a playlist. Should be more efficient than running   many times.I Recursive  . For directories, it will use the given position for the first file in the directory and use the successor for the remaining files. It returns a list of playlist ids for the songs added.JLike  ' but returns a list of the files added.KLike  ' but returns a list of the files added.L!List the artists in the database.MEList the albums in the database, optionally matching a given artist.N*List the songs in an album of some artist.O.Retrieve the current playlist. Equivalent to playlistinfo Nothing.PIncrease or decrease volume by a given percent, e.g. 'volume 10' will increase the volume by 10 percent, while 'volume (-10)' will decrease it by the same amount. FGHIJKLMNOP FGHIJKLMNOP FGHIJKLMNOP FGHIJKLMNOP&(c) Joachim Fasting, Simon Hengel 2012MIT&Joachim Fasting <joachifm@fastmail.fm>unstable unportableNoneQA wrapper for  that uses localhost:6600 as the default host:port, or whatever is found in the environment variables MPD_HOST and MPD_PORT. If MPD_HOST is of the form "password@host" the password will be supplied as well. Examples: KwithMPD $ play Nothing withMPD $ add_ "tool" >> play Nothing >> currentSongRSame as QD, but takes optional arguments that override MPD_HOST and MPD_PORT.5This is e.g. useful for clients that optionally take --port and --host. as command line arguments, and fall back to Q.'s defaults if those arguments are not given.QRoptional override for MPD_HOSToptional override for MPD_PORT  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEQR QRl~}|{zyxwvutsrqponmkijhgcfedWba`_^]\[ZYXSVUTOPQRKNMLFGHIJ>?@ABCDE=;<23456789: !"#$%&'()*+,-./01      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEQR%&'()*+,-./0123456789:;<=>?@ABCCDEFGHIJKLMNOPQRSTUVWXXYZ[\]^_``abbcdefghiijklmnopqqrstuvwxyz{|}~                !!!"""""" # # ### !"#$%&'()*+,-./01234526789:;<=>?@AB@CDEFGHIJKLMNOPQRSTUVWXYZ[\]^__`abcdefghijklmnopnqrstuvwxyz{|}~}#libmpd-0.9.0.2 Network.MPDNetwork.MPD.CoreNetwork.MPD.ApplicativeNetwork.MPD.Applicative.Status'Network.MPD.Applicative.PlaybackOptions'Network.MPD.Applicative.PlaybackControl'Network.MPD.Applicative.CurrentPlaylist'Network.MPD.Applicative.StoredPlaylists Network.MPD.Applicative.Database Network.MPD.Applicative.Stickers"Network.MPD.Applicative.ConnectionNetwork.MPD.Applicative.Output"Network.MPD.Applicative.Reflection&Network.MPD.Applicative.ClientToClientNetwork.MPD.Commands.ExtensionsNetwork.MPD.Core.ErrorNetwork.MPD.Core.ClassNetwork.MPD.UtilNetwork.MPD.Commands.ArgNetwork.MPD.Commands.TypesNetwork.MPD.Commands.QueryNetwork.MPD.Commands.ParseNetwork.MPD.Applicative.Util Network.MPD.Applicative.InternalNetwork.MPD.Commands.Status$Network.MPD.Commands.PlaybackOptions$Network.MPD.Commands.PlaybackControl$Network.MPD.Commands.CurrentPlaylist$Network.MPD.Commands.StoredPlaylistsNetwork.MPD.Commands.DatabaseNetwork.MPD.Commands.StickersNetwork.MPD.Commands.ConnectionNetwork.MPD.Commands.OutputNetwork.MPD.Commands.Reflection#Network.MPD.Commands.ClientToClientNetwork.MPD.Commandsdata-default-class-0.0.1Data.Default.ClassdefACKType UnknownACK FileExists NotPlayingBusy PlaylistLoadSystem PlaylistMax FileNotFoundUnknownCommandAuthInvalidPasswordInvalidArgumentMPDErrorACKCustom UnexpectedConnectionErrorNoMPDMonadMPDopenclosesend getPassword setPassword getVersionPasswordStatusstStatestVolumestRepeatstRandomstPlaylistVersionstPlaylistLength stSongPosstSongID stNextSongPos stNextSongIDstTime stBitrate stXFadeWidth stMixRampdBstMixRampDelaystAudio stUpdatingDbstSingle stConsumestErrorStats stsArtists stsAlbumsstsSongs stsUptime stsPlaytime stsDbPlaytime stsDbUpdateIdPositionSong sgFilePathsgTagssgLastModifiedsgLengthsgIdsgIndexDevice dOutputID dOutputNamedOutputEnabledLsResult LsPlaylistLsSong LsDirectoryCountcSongs cPlaytimeReplayGainMode AlbumMode TrackModeOff SubsystemMessageS SubscriptionSStickerSOptionsSOutputSMixerSPlayerS PlaylistSStoredPlaylistSUpdateS DatabaseSStatePausedStoppedPlayingDecibelsSeconds ObjectTypeSongObjValueMetadataMUSICBRAINZ_RELEASETRACKIDMUSICBRAINZ_TRACKIDMUSICBRAINZ_ALBUMARTISTIDMUSICBRAINZ_ALBUMIDMUSICBRAINZ_ARTISTIDDiscComment PerformerComposerDateGenreNameTrackTitleAlbumArtistSort AlbumArtistAlbum ArtistSortArtistPath PlaylistNameToStringtoStringtoTexttoUtf8sgGetTagsgAddTagQueryanything=?<&>ResponseMPDPortHost withMPDExkill getResponseCommand runCommand clearError currentSongidlenoidlestatsstatusconsume crossfaderandomrepeat setVolumesinglereplayGainModereplayGainStatus mixrampDb mixrampDelaynextpauseplayplayIdpreviousseekseekIdstopaddaddIdcleardelete deleteRangedeleteIdmove moveRangemoveId playlistFind playlistInfoplaylistInfoRange playlistIdplaylistSearch plChangesplChangesPosIdshuffleswapswapId listPlaylistlistPlaylistInfo listPlaylistsload playlistAdd playlistClearplaylistDelete playlistMoverenamermsavecountfindfindAddlistlistAlllsInfo' listAllInfolsInfosearch searchAdd searchAddPlupdaterescanupdate_ stickerGet stickerSet stickerDelete stickerList stickerFindpasswordping disableOutput enableOutputoutputscommands notCommandstagTypes urlHandlersdecodersconfig MessageText ChannelName subscribe unsubscribechannels readMessages sendMessageplaylistupdateIdtoggleaddMany addIdManyaddListplaylistAddList listArtists listAlbums listAlbum getPlaylistvolumewithMPDwithMPD_$fErrorMPDError$fShowMPDError$fExceptionMPDErrorread breakChar parseDate parseIso8601 formatIso8601 iso8601FormatparseNum parseFracshowBool parseBool parseTripletoAssoc toAssocList splitGroups parseMaybeMPDArgArgs<++><@>prep addSlashes$fMPDArgDouble $fMPDArgBool$fMPDArgInteger $fMPDArgInt $fMPDArg(,) $fMPDArgMaybe$fMPDArgByteString $fMPDArg[] $fMPDArgArgsbase Data.MaybeNothingGHC.BaseString text-1.2.0.4Data.Text.InternalTextbytestring-0.10.4.0Data.ByteString.Internal ByteString defaultCount defaultDevice defaultSong defaultStats defaultStatus$fDefaultStatus$fDefaultStats $fMPDArgId$fDefaultDevice$fDefaultCount$fMPDArgReplayGainMode$fMPDArgSubsystem$fMPDArgObjectType$fIsStringValue$fToStringValue$fMPDArgMetadata$fIsStringPath$fToStringPath$fIsStringPlaylistName$fToStringPlaylistNameMatch $fMPDArgQuery $fMonoidQuery $fShowMatch parseCount parseOutputs parseStats parseSongparsepairparseMaybeSong takeEntries takeSongs takeValues decodePairMPDState isRetryableisResourceVanishedstHandle stPassword stVersionrunMPDmpdOpenmpdClosempdSend parseResponseparseAcksplitAck $fMonadMPDMPD$fApplicativeMPDParser liftParser emptyResponse unexpected commandParsercommandRequest runParser$fApplicativeCommand$fApplicativeParser $fMonadParsertakeSubsystems playlist'getConnectionSettings getEnvDefault maybeRead