6 template<typename ITER>
7 void shiftback(ITER element, ITER end) {
8 //typename ITER::value_type backup(move(*element)); // hold the element
9 typename std::remove_reference<decltype(*element)>::type backup(move(*element)); // hold the element
11 for (; element != end; p = element++)