very naive attempt on making lexer faster