void increment(IteratorAdaptor& iter) { m_value = (*iter.base())(); }
typename IteratorAdaptor::reference dereference(const IteratorAdaptor& x) const { return *(x.base() + *order_it_); }