fn cubic_bezier(p0: f64, p1: f64, p2: f64, p3: f64, x: f64) -> f64