Working Lexer non-Optimized