brainstorming about how to parse the lexer