Sentiment Analyzer: Extracting Sentiments about a Given Topic using Natural Language Processing Techniques