private void MergeInterests() { var allData = new List <Interests>(); var dataInProper = new List <Interests>(); for (int i = 0; i < databases.Length; i++) { var l = Interests.Read(this.databases[i]); if (i == 0) { dataInProper = l; } allData.AddRange(l); } var toWrite = this.SubtractHashSet(new HashSet <Interests>(allData), new HashSet <Interests>(dataInProper)); Interests.Insert(this.proper, toWrite); }