Index: src/Common/utility.h
===================================================================
--- src/Common/utility.h	(revision fb114fa1d887767d09a2bcdf85b3046939ea4791)
+++ src/Common/utility.h	(revision 848ce7101657d18db026ce010e05ae0026f97f55)
@@ -148,4 +148,5 @@
 }
 
+// replace element of list with all elements of another list
 template< typename T >
 void replace( std::list< T > &org, typename std::list< T >::iterator pos, std::list< T > &with ) {
@@ -158,4 +159,11 @@
 
 	return;
+}
+
+// replace range of a list with a single element
+template< typename T >
+void replace( std::list< T > &org, typename std::list< T >::iterator begin, typename std::list< T >::iterator end, const T & with ) {
+	org.insert( begin, with );
+	org.erase( begin, end );
 }
 
