part of the lexer