Index: src/Common/utility.h
===================================================================
--- src/Common/utility.h	(revision fb114fa1d887767d09a2bcdf85b3046939ea4791)
+++ src/Common/utility.h	(revision bf32bb8a6509388bf221983b0b4c4c8620ff76b9)
@@ -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 );
 }
 
