extend lexer