rework setIntersection