protected override ImmutableSortedDictionary <TKey, TValue> SetValues(ImmutableSortedDictionary <TKey, TValue> values, ref ArraySegment <KeyValuePair <TKey, TValue> > newValues, ISerializationContext context)
 {
     if (newValues.Count == 1)
     {
         var pair = newValues.Singleton();
         return(values.SetItem(pair.Key, pair.Value));
     }
     return(values.SetItems(newValues));
 }