public void innerAdd(JTweet tw) {
// do not add protected tweets and add them only once
if (!tw.isProtected()) {
JTweet existingTweet = tweets.put(tw.getId(), tw);
if (existingTweet != null) {
existingTweet.updateFrom(tw);
tweets.put(existingTweet.getId(), existingTweet);
}
} else
protectedTweets.add(tw);
}