Added Semantic Analyzer