extracted AbstractAnalyzer