pub fn compare_fn_nan_max<T>(a: &T, b: &T) -> Orderingwhere T: PartialOrd + IsFloat,
NaN will be larger than every valid value