grammar groupruletest; a ::= b (c (d)) d b ::= "foo" c ::= "midfoo" d ::= "bar"