partial lexer