anchor.diff:  %%% Internal functions
   %%--------------------------------------------------------------------
   
  -%% ------------------------------------------------------------
  -%% XXX: Current line of review
  -%% ------------------------------------------------------------
   start_new_incoming_peer(IP, Port, S) ->
       case ?MAX_PEER_PROCESSES - S#state.num_peers of
  -	0 ->
  +	N when N =< 0 ->
   	    {reply, already_enough_connections, S};
   	N when is_integer(N), N > 0 ->
   	    {ok, Pid} = etorrent_t_peer_pool_sup:add_peer(
  
positive.code: 
  sort_fastest_downloaders(Peers) ->
      lists:sort(
        fun ({_, DL1, _}, {_, DL2, _}) -> DL1 > DL2 end,
        Peers).
  
  sort_fastest_uploaders(Peers) ->
      lists:sort(
        fun ({_, _, UL1}, {_, _, UL2}) -> UL1 > UL2 end,
        Peers).
  
  find_fastest(N, Interested, F) ->
      List = F(Interested),
      SplitPoint = lists:min([length(List), N]),
      {Downloaders, Rest} = lists:split(SplitPoint, List),
      {Downloaders, Rest}.
  
  find_fastest_peers(N, Interested, S) when S#state.mode == leeching ->
      find_fastest(N, Interested, fun sort_fastest_downloaders/1);
  find_fastest_peers(N, Interested, S) when S#state.mode == seeding ->
      find_fastest(N, Interested, fun sort_fastest_uploaders/1).
  
  unchoke_peers(Peers) ->
      lists:foreach(fun(P) ->
  
negative.code: 		  end, Peers),
      ok.
  
  choke_peers(Peers) ->
      lists:foreach(fun(P) ->
  			  etorrent_t_peer_recv:choke(P#peer.pid)
  		  end, Peers),
      ok.
  
  start_new_peers(IPList, State) ->
      %% Update the PeerList with the new incoming peers
  