anchor.diff:    }
   }
   
  -IconButton pauseButton() => IconButton(
  +IconButton pauseButton(Color color) => IconButton(
         icon: Icon(Icons.pause),
  +      onPressed: AudioService.pause,
         iconSize: 24.0,
  -      onPressed: AudioService.pause,
  +      color: color,
       );
   
  -IconButton playButton() => IconButton(
  +IconButton playButton(Color color) => IconButton(
         icon: Icon(Icons.play_arrow),
  +      onPressed: AudioService.play,
         iconSize: 24.0,
  -      onPressed: AudioService.play,
  +      color: color,
       );
   
  -IconButton nextButton() => IconButton(
  +IconButton nextButton(Color color) => IconButton(
         icon: Icon(Icons.skip_next),
  +      onPressed: AudioService.skipToNext,
         iconSize: 24.0,
  -      onPressed: AudioService.skipToNext,
  +      color: color,
       );
  -
  -class CurrentSongState {
  -  final Song song;
  -  final Duration position;
  -
  -  CurrentSongState(this.song, this.position);
  -}
  
positive.code:                           mainAxisAlignment: MainAxisAlignment.center,
                            children: [
                              Text(
                                state.song.title,
                                style: Theme.of(context).textTheme.subtitle2,
                                overflow: TextOverflow.ellipsis,
                                maxLines: 1,
                              ),
                              Text(
                                state.song.artist,
                                style: Theme.of(context).textTheme.caption,
                                overflow: TextOverflow.ellipsis,
                                maxLines: 1,
                              ),
  
negative.code:     );
    }
  
    @override
    Widget build(BuildContext context) {
      return StreamBuilder<MediaItem>(
          stream: AudioService.currentMediaItemStream,
          builder: (context, snapshot) {
            if (!snapshot.hasData) {
              return Container(); // TODO animate the whole thing out when no data
            }
            final theme = Theme.of(context);
            final backgroundColor = theme.colorScheme.surface;
            final foregroundColor = theme.colorScheme.onSurface;
            final song = snapshot.data.toSong();
            return SizedBox(
                height: 64,
                child: Material(
                  elevation: 8,
                  child: Container(
                    color: backgroundColor,
                    child: Row(
                      children: [
                        Padding(
                          padding: const EdgeInsets.fromLTRB(16, 8, 16, 8),
                          child: ListThumbnail(song.artwork),
                        ),
                        Expanded(
                          child: Column(
  