segmentsCross new algo