for (int i = fNews.size() - 1; i >= 0; --i) {
INews existingNews = fNews.get(i);
int existingNewsIndex = findNews(newsListCopy, existingNews);
if (existingNewsIndex > -1) {
mergeResult.addAll(existingNews.merge(newsListCopy.get(existingNewsIndex)));
newsListCopy.remove(existingNewsIndex);
} else if ((newsToCleanUp != null) && (existingNews.getState() == INews.State.DELETED)) {
newsToCleanUp = ArrayUtils.ensureCapacity(newsToCleanUp, newsToCleanUpSize + 1);
newsToCleanUp[newsToCleanUpSize++] = i;
}