pub trait SelectionIndicatorController: Copy {
type State: Default + Copy;
// Required methods
fn update_target(&self, state: &mut Self::State, y: i32);
fn jump_to_target(&self, state: &mut Self::State);
fn offset(&self, state: &Self::State) -> i32;
fn update(&self, state: &mut Self::State);
}