pub fn reorder_vec<T, F>(list: &mut Vec<T>, test: F, shift: i32) -> Option<()>where
    F: Fn(&T) -> bool,
    T: Clone,