anchor.diff:                                                    {tracks3, Tracks3},
                                                     {listid, ListId},
                                                     {playlist_name,
  -                                                   Playlist#playlist.name}
  +                                                   Playlist#playlist.name},
  +                                                  {is_public_playlist,
  +                                                   IsPublicPlaylist}
                                                    ]),
                       Binary;
                   _IsRaw ->
  -                    {"list", ListId} = lists:keyfind("list", 1, Parameters),
  -                    Playlist = playlist_get(ListId),
                       Playlist1 = [maybe_to_str(Track#track.url)
                                    || Track <- Playlist#playlist.tracks],
                       list_to_binary(
  
positive.code:     end.
  
  handle_playlist(_Data, Parameters, Headers, InstanceName) ->
      case is_logged_in(Headers, InstanceName) of
          false ->
              render_not_logged_in();
          _Username ->
              case lists:keyfind("raw", 1, Parameters) of
                  false ->
                      {"list", ListId} = lists:keyfind("list", 1, Parameters),
                      Playlist = playlist_get(ListId),
                      Tracks   = Playlist#playlist.tracks,
                      Tracks2  =
                          lists:zip(Playlist#playlist.tracks,
  
negative.code:             mnesia:read(user, Username)
          end,
      mnesia:transaction(F).
  
  get_public_playlist(Playlist) ->
      F = fun() ->
              mnesia:read(public_playlist, Playlist)
          end,
      case mnesia:transaction(F) of
          {atomic, []}   -> false;
          {atomic, [_UserInfo]} -> true
      end.
  
  put_obj(Obj) ->
      Fun = fun() ->
  