Updated Lexer class