__advance
inline void __advance(_InputIter& __i, _Distance __n, input_iterator_tag) {
inline void __advance(_BidirectionalIterator& __i, _Distance __n,
inline void __advance(_RandomAccessIterator& __i, _Distance __n,