maybe<typename Container::value_type> maximum_by_maybe(Compare comp, const Container& xs) { if (is_empty(xs)) return {}; else return maximum_by(comp, xs); }
typename Container::value_type maximum(const Container& xs) { return maximum_by(is_less<typename Container::value_type>, xs); }