/// <summary>
 /// Sets the destination keys.
 /// </summary>
 /// <typeparam name="TKey">The type of the key.</typeparam>
 /// <param name="comparerAgent">The comparer agent.</param>
 /// <param name="keys">The destination keys.</param>
 /// <returns>The comparer agent.</returns>
 public static IKeyComparerAgent <TKey> SetDestinationProvider <TKey>(this IKeyComparerAgent <TKey> comparerAgent, IEnumerable <TKey> keys)
 {
     comparerAgent.DestinationProvider = new ComparerProvider <TKey> {
         Items = keys
     };
     return(comparerAgent);
 }
 /// <summary>
 /// Sets the source provider.
 /// </summary>
 /// <typeparam name="TKey">The type of the key.</typeparam>
 /// <param name="comparerAgent">The comparer agent.</param>
 /// <param name="sourceProvider">The source provider of the comparer agent.</param>
 /// <returns>The comparer agent.</returns>
 public static IKeyComparerAgent <TKey> SetSourceProvider <TKey>(this IKeyComparerAgent <TKey> comparerAgent, IComparerProvider <TKey> sourceProvider)
 {
     comparerAgent.SourceProvider = sourceProvider;
     return(comparerAgent);
 }
 /// <summary>
 /// Sets the destination provider.
 /// </summary>
 /// <typeparam name="TKey">The type of the key.</typeparam>
 /// <param name="comparerAgent">The comparer agent.</param>
 /// <param name="destinationProvider">The destination provider of the comparer agent.</param>
 /// <returns>The comparer agent.</returns>
 public static IKeyComparerAgent <TKey> SetDestinationProvider <TKey>(this IKeyComparerAgent <TKey> comparerAgent, IComparerProvider <TKey> destinationProvider)
 {
     comparerAgent.DestinationProvider = destinationProvider;
     return(comparerAgent);
 }
 /// <summary>
 /// Sets the comparer agent of the sync agent.
 /// </summary>
 /// <typeparam name="TKey">The type of the key.</typeparam>
 /// <typeparam name="TItem">The type of the item.</typeparam>
 /// <param name="syncAgent">The sync agent.</param>
 /// <param name="comparerAgent">The comparer agent.</param>
 /// <returns></returns>
 public static IBatchSyncAgent <TKey, TItem> SetComparerAgent <TKey, TItem>(this IBatchSyncAgent <TKey, TItem> syncAgent, IKeyComparerAgent <TKey> comparerAgent)
 {
     syncAgent.ComparerAgent = comparerAgent;
     return(syncAgent);
 }