protected ISet<HashedValue> FromArray(IHasValue[] values) { if (values == null) return null; var hashedValues = values.Select(value => { return new HashedValue(value.Value); }); var set = new SortedSet<HashedValue>((ICollection<HashedValue>)hashedValues.ToList()); return set; }