anchor.diff:  	    State = #state{status = {caching, {Template, CacheRef}},
   			   is_paused = IsPaused})
     when ReceivedRef =:= CacheRef ->
  -	{obj,Keys} = urlcache:info_to_json(urlcache:get_info_from_local_name(LocalFileName)),
  -	Artist = binary_to_list(lastfm:get_field("artistName", Keys)),
  -	Title = binary_to_list(lastfm:get_field("trackName", Keys)),
  -	lastfm:scrobble(?LASTFM_USER, ?LASTFM_PASSWORD,[{artist,Artist},{track,Title}]),
  +	scrobble(urlcache:get_info_from_local_name(LocalFileName)),
       {noreply, act_on(reset_play_time(State#state{status = play(Template,
   							       LocalFileName,
   							       IsPaused)}))};
  
positive.code:     State1 = act_on(State),
      {reply, summarise_state(State1), State1}.
  
  
  cache(Url, IsPaused) ->
      Extension = filename:extension(Url),
  
negative.code:     urlcache:cache(Url, self(), CacheRef),
      receive
  	{urlcache, ok, CacheRef, LocalFileName} ->
  		scrobble(urlcache:get_info(Url)),
  	    play(Template, LocalFileName, IsPaused)
      after 100 ->
  	    {caching, {Template, CacheRef}}
  