more on the lexer