I am not close to being an expert on parsers, but seeing these large blocks in parser rules always upset me. I see that it is not something this PR adds, but I wonder what does it take to make these productions just one liners as elsewhere in the parser.