protected override bool IntersectWith(ref LocalState self, ref LocalState other) { if (!other.Reachable) { return(false); } if (!self.Reachable) { self = other.Clone(); return(true); } return(self.IntersectWith(other)); }