pub fn mul_outer<T, const N: usize, Rhs, const M: usize>( array: &[T; N], rhs: &[Rhs; M] ) -> [[<T as Mul<Rhs>>::Output; M]; N]where T: Mul<Rhs> + Copy, Rhs: Copy,