def groups(self) -> typing.Generator['Group', None, None]:
for country in self.countries:
assert isinstance(country, Country)
for group in country.groups:
assert isinstance(group, Group)
yield group