factored out social media