fcn transpose(M){ if(M.len()==1) M[0].pump(List,List.create); // 1 row --> n columns else M[0].zip(M.xplode(1)); }