public bool Equals(CategoryBrowse other)
 {
     return(Categories.ListsAreEqual(other.Categories) &&
            RelatedCategories.ListsAreEqual(other.RelatedCategories) &&
            LanguageCategories.ListsAreEqual(other.LanguageCategories) &&
            LetterBars.ListsAreEqual(other.LetterBars));
 }
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = (Categories != null ? Categories.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (RelatedCategories != null ? RelatedCategories.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (LanguageCategories != null ? LanguageCategories.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (LetterBars != null ? LetterBars.GetHashCode() : 0);
         return(hashCode);
     }
 }