lexer complete