public void RemoveRange(ImpObservableCollection <T> range)
 {
     foreach (T item in range)
     {
         Remove(item);
     }
 }
        public object Clone()
        {
            var clone = new ImpObservableCollection <T>();

            foreach (ICloneable obj in this)
            {
                clone.Add((T)obj.Clone());
            }

            return(clone);
        }