);         }          /// <summary>         /// Replaces the specified item.         /// </summary>         /// <typeparam name="T"></typeparam>         /// <param name="source">The source.</param>         /// <param name="original">The original.</param>         /// <param name="replacewith">The replacewith.</param>         /// <exception cref="System.ArgumentNullException">source         /// or         /// items</exception>         public static void Replace<T>(this IList<T> source, [NotNull] T original, [NotNull] T replacewith)         {             if (source == null)             {                 throw new ArgumentNullException(nameof(source));             }              if (original == null)             {                 throw new ArgumentNullException(nameof(original));             }              if (replacewith == null)             {                 throw new ArgumentNullException(nameof(replacewith));             }              var index = source.IndexOf(original);             if (index