fn backtrack<T>(a: &[T], b: &[T]) -> Vec<(usize, usize, usize, usize)> where
    T: PartialEq,