public UndoBlockCollection Clone() { var tc = new UndoBlockCollection(); tc.AddRange(this); tc.Capacity = m_array.Length; tc.m_version = m_version; return tc; }