Lexer and LR(0) Parser