anchor.diff:  handle_cast({send_have_piece, PieceNumber}, S) ->
       etorrent_t_peer_send:send_have_piece(S#state.send_pid, PieceNumber),
       {noreply, S};
  +handle_cast({endgame_got_chunk, Index, Offset}, S) ->
  +    NS = handle_endgame_got_chunk(Index, Offset, S),
  +    {noreply, NS};
   handle_cast(_Msg, State) ->
       {noreply, State}.
   
  
positive.code: 
  
  %%--------------------------------------------------------------------
  %% Func: handle_got_chunk(Index, Offset, Data, Len, S) -> {ok, State}
  %% Description: We just got some chunk data. Store it in the mnesia DB
  %%   TODO: This is one of the functions which is a candidate for optimization!
  
negative.code: %%--------------------------------------------------------------------
  send_have_piece(Pid, PieceNumber) ->
      gen_server:cast(Pid, {send_have_piece, PieceNumber}).
  
  %%--------------------------------------------------------------------
  %% Function: endgame_got_chunk(Pid, Index, Offset) -> ok
  %% Description: We got the chunk {Index, Offset}, handle it.
  %%--------------------------------------------------------------------
  endgame_got_chunk(Pid, Index, Offset) ->
      gen_server:cast(Pid, {endgame_got_chunk, Index, Offset}).
  
  %%--------------------------------------------------------------------
  %% Function: complete_handshake(Pid, ReservedBytes, Socket, PeerId)
  