We cannot parse with the real parsers directly because they are greedy, but we need full backtracking here.

Proposal: After we parse with the `.*` parsers, we could sanity check the result by parsing whatever the  `.*` matched with the real parsers.