template<input_or_output_iterator I, sentinel_for<I> S> constexpr iter_difference_t<I> ranges::distance(I first, S last);
template<range R> constexpr range_difference_t<R> ranges::distance(R&& r);