lexer changes(macro added)