pub fn reduce_all_cpu_serial<TI, TS, TO, D, I, F, FSum, FOut>( a: &[TI], la: &Layout<D>, init: I, f: F, f_sum: FSum, f_out: FOut, ) -> Result<TO, Error>where TI: Clone, TS: Clone, D: DimAPI, I: Fn() -> TS, F: Fn(TS, TI) -> TS, FSum: Fn(TS, TS) -> TS, FOut: Fn(TS) -> TO,