completed SetIntersection