Grammar is not Hash
Only merge non-equal rules
Fix loop over missing_parts