correct top-level grammar def