pub fn make_bounded_covariance<T>(
lower: (T, T),
upper: (T, T),
length: usize,
ddof: usize
) -> Fallible<Transformation<SizedDomain<VectorDomain<IntervalDomain<(T, T)>>>, AllDomain<T>, SymmetricDistance, AbsoluteDistance<T>>> where
T: ExactIntCast<usize> + DistanceConstant<IntDistance> + Zero + One + Sub<Output = T> + Div<Output = T> + Add<Output = T> + Sum<T> + CheckedMul + CheckNull,
for<'a> T: Div<&'a T, Output = T> + Add<&'a T, Output = T>,
for<'a> &'a T: Sub<Output = T>,
IntDistance: InfCast<T>,