fn keep_greatest<T: PartialOrd, E>( accumulator: Option<Result<T, E>>, item: Result<T, E>, ) -> Option<Result<T, E>>