public List <Location> Intersects(Wire other) => _locations.Intersect(other._locations).ToList();
public int GetMinimalStepsToIntersect(Wire other) { var intersections = Intersects(other); return(intersections.Min(i => GetStepsToPoint(i) + other.GetStepsToPoint(i))); }