Index: src/Common/utility.h
===================================================================
--- src/Common/utility.h	(revision 940bba39c1771f035b99e2eb760a39c88b07ff44)
+++ src/Common/utility.h	(revision 3c13c03a94ca1d4baa7d03b64383f9d28bb7901f)
@@ -158,4 +158,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 ) {
@@ -168,4 +169,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 );
 }
 
