pub fn segments_intersect( a1x: i64, a1y: i64, a2x: i64, a2y: i64, b1x: i64, b1y: i64, b2x: i64, b2y: i64, ) -> bool