Suppose I have three users and I want to group them by their country. I would do this:

```
var users = new[]
{
    new User { Name = "Phil", Country = "UK" },
    new User { Name = "John", Country = "UK" },
    new User { Name = "Mike", Country = "USA" }
};

List<IGrouping<string, User>> groupedUsers
    = users.GroupBy(user => user.Country).ToList();

```

Now suppose my program gets three more users later on, so I group them too:

```
var moreUsers = new[]
{
    new User { Name = "Phoebe", Country = "AUS" },
    new User { Name = "Joan", Country = "UK" },
    new User { Name = "Mindy", Country = "USA" }
};

List<IGrouping<string, User>> moreGroupedUsers
    = moreUsers.GroupBy(user => user.Country).ToList();

```

I now have two seperate groupings, `groupedUsers` and `moreGroupedUsers`. How can I merge them into one whilst keeping the grouping valid?