Tighten up the idempotent rule