merge from lexer