// Legacy algorithm: template<class ForwardIterator> size_t count(ForwardIterator first, ForwardIterator last); template<forward_range R> void my_algo(R&& r) { auto&& common = common_view{r}; auto cnt = count(common.begin(), common.end()); // ... }