because the nature of what's being counted matters. I could write this ```rust struct VelocitySensor { ... } ``` impl Clock for VelocitySonsor { .... } impl for VelocitySensor { ... } impl VelocitySensor where A: PosCounter, B: Clock { ... } ```