language changes: .with_ref() is deprecated, PartialOrd now has .partial_cmp().