2. Semantic Analysis