optimize out some stuff when intersection is empty