anchor.diff:  	lists:merge(lists:sort(VirtualNodes), HashRing).
   	
   nearest_server(Code, #membership{hash_ring=Ring, member_table=Table}) ->
  -	case nearest_server(Code, Ring) of
  -		first -> lists:head()
  -	end
  -	ServerCode = nearest_server(Code, Ring),
  -	dict:fetch(ServerCode, Table).
  +	ServerCode = case nearest_server(Code, Ring) of
  +		first -> nearest_server(0, Ring);
  +		FoundCode -> FoundCode
  +	end,
  +	dict:fetch(ServerCode, Table);
   	
   nearest_server(Code, [ServerKey|Tail]) ->
   	case Code < ServerKey of
  
positive.code: -record(membership, {hash_ring, member_table}).
  
  %testing
  -compile(export_all).
  
  
  %%====================================================================
  
negative.code: 		false -> nearest_server(Code, Tail)
  	end;
  
  nearest_server(_Code, []) -> first.