min_by, max_by, minmax, minmax_by; move_next_or_throw for enumerators