anchor.diff:      random:seed(now()),
       ok = etorrent_table:new_peer(TrackerUrl, IP, Port, Id, self(), leeching),
       ok = etorrent_choker:monitor(self()),
  +    true = etorrent_chunk_mgr:register_peer(Id),
       {value, NumPieces} = etorrent_torrent:num_pieces(Id),
       gproc:add_local_name({peer, Socket, control}),
       {ok, #state{
  
positive.code:             State#state{remote_choked=true};
          false ->
              State#state{remote_choked=true, remote_request_set=gb_trees:empty()}
      end;
  handle_message(unchoke, S) ->
      ok = etorrent_peer_states:set_unchoke(S#state.torrent_id, self()),
      try_to_queue_up_pieces(S#state{remote_choked = false});
  
negative.code: %% @end
  -spec queue_items(pid(), list(), gb_tree()) -> gb_tree().
  queue_items(SendPid, Chunks, Requestset) ->
      lists:foldl(fun({_, _, _}=Chunk, Acc) ->
          etorrent_peer_send:local_request(SendPid, Chunk),
          gb_trees:enter(Chunk, 'ops', Acc)
      end, Requestset, Chunks).
  