if hook then set instead of diff