vec3
pub fn smul_mut<'out, T>(out: &'out mut [T; 3], s: &T) -> &'out mut [T; 3] where T: MulAssign<&'a T>,