1pub trait Trajectory { 2 type Point; 3 type Time; 4 fn position(&self, t: Self::Time) -> Option<Self::Point>; 5 fn velocity(&self, t: Self::Time) -> Option<Self::Point>; 6 fn acceleration(&self, t: Self::Time) -> Option<Self::Point>; 7}