pub fn transpose(g: &[Vec<usize>]) -> Vec<Vec<usize>>