From d56cfe25ec5adfbcbf7777afcc24a334a60215e1 Mon Sep 17 00:00:00 2001 From: IDAM Date: Thu, 18 Dec 2025 16:28:51 +0100 Subject: [PATCH] GuineaBissau, Guyana, Haiti, HeardIsland, Honduras, HongKong --- .../Countries/GuineaBissauTest.cs | 51 ++++++++++++++++ .../Countries/GuyanaTest.cs | 51 ++++++++++++++++ .../Countries/HaitiTest.cs | 51 ++++++++++++++++ .../HeardIslandAndMcDonaldIslandsTest.cs | 39 ++++++++++++ .../Countries/HondurasTest.cs | 59 +++++++++++++++++++ .../Countries/HongKongTest.cs | 39 ++++++++++++ src/World.Net/Countries/GuineaBissau.cs | 45 ++++++++++++++ src/World.Net/Countries/Guyana.cs | 46 +++++++++++++++ src/World.Net/Countries/Haiti.cs | 47 +++++++++++++++ .../HeardIslandAndMcDonaldIslands.cs | 34 +++++++++++ src/World.Net/Countries/Honduras.cs | 55 +++++++++++++++++ src/World.Net/Countries/HongKong.cs | 34 +++++++++++ src/World.Net/Helpers/CountryInitializer.cs | 6 ++ 13 files changed, 557 insertions(+) create mode 100644 src/World.Net.UnitTests/Countries/GuineaBissauTest.cs create mode 100644 src/World.Net.UnitTests/Countries/GuyanaTest.cs create mode 100644 src/World.Net.UnitTests/Countries/HaitiTest.cs create mode 100644 src/World.Net.UnitTests/Countries/HeardIslandAndMcDonaldIslandsTest.cs create mode 100644 src/World.Net.UnitTests/Countries/HondurasTest.cs create mode 100644 src/World.Net.UnitTests/Countries/HongKongTest.cs create mode 100644 src/World.Net/Countries/GuineaBissau.cs create mode 100644 src/World.Net/Countries/Guyana.cs create mode 100644 src/World.Net/Countries/Haiti.cs create mode 100644 src/World.Net/Countries/HeardIslandAndMcDonaldIslands.cs create mode 100644 src/World.Net/Countries/Honduras.cs create mode 100644 src/World.Net/Countries/HongKong.cs diff --git a/src/World.Net.UnitTests/Countries/GuineaBissauTest.cs b/src/World.Net.UnitTests/Countries/GuineaBissauTest.cs new file mode 100644 index 0000000..25d6097 --- /dev/null +++ b/src/World.Net.UnitTests/Countries/GuineaBissauTest.cs @@ -0,0 +1,51 @@ +namespace World.Net.UnitTests.Countries; + +public sealed class GuineaBissauTest : AssertCountryTestBase +{ + private const string GUINEABISSAU_COUNTRY_NAME = "Guinea-Bissau"; + private const string GUINEABISSAU_NATIVE_NAME = "Guiné-Bissau"; + private const string GUINEABISSAU_CAPITAL = "Bissau"; + private const string GUINEABISSAU_OFFICIAL_NAME = "Republic of Guinea-Bissau"; + private const string GUINEABISSAU_ISO2_CODE = "GW"; + private const string GUINEABISSAU_ISO3_CODE = "GNB"; + private const int GUINEABISSAU_NUMERIC_CODE = 624; + private readonly string[] GUINEABISSAU_CALLING_CODE = ["+245"]; + private const CountryIdentifier EXPECTEDID = CountryIdentifier.GuineaBissau; + + private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES = + [ + new("Bafatá", "GW-BFA", "Region"), + new("Biombo", "GW-BIB", "Region"), + new("Bissau", "GW-BS", "Region"), + new("Bolama", "GW-BM", "Region"), + new("Cacheu", "GW-CA", "Region"), + new("Gabu", "GW-GA", "Region"), + new("Oio", "GW-OI", "Region"), + new("Quinara", "GW-QU", "Region"), + new("Tombali", "GW-TO", "Region") + ]; + + [Fact] + public void GetCountry_ReturnsCorrectInformation_ForGuineaBissau() + { + // Arrange + // Act + var country = CountryProvider.GetCountry(EXPECTEDID); + + // Assert + AssertCorrectInformation( + country, + EXPECTEDID, + GUINEABISSAU_COUNTRY_NAME, + GUINEABISSAU_OFFICIAL_NAME, + GUINEABISSAU_NATIVE_NAME, + GUINEABISSAU_CAPITAL, + GUINEABISSAU_NUMERIC_CODE, + GUINEABISSAU_ISO2_CODE, + GUINEABISSAU_ISO3_CODE, + GUINEABISSAU_CALLING_CODE, + EXPECTED_STATES + ); + } +} + diff --git a/src/World.Net.UnitTests/Countries/GuyanaTest.cs b/src/World.Net.UnitTests/Countries/GuyanaTest.cs new file mode 100644 index 0000000..2d6b7b0 --- /dev/null +++ b/src/World.Net.UnitTests/Countries/GuyanaTest.cs @@ -0,0 +1,51 @@ +namespace World.Net.UnitTests.Countries; + +public sealed class GuyanaTest : AssertCountryTestBase +{ + private const string GUYANA_COUNTRY_NAME = "Guyana"; + private const string GUYANA_NATIVE_NAME = "Guyana"; + private const string GUYANA_CAPITAL = "Georgetown"; + private const string GUYANA_OFFICIAL_NAME = "Co-operative Republic of Guyana"; + private const string GUYANA_ISO2_CODE = "GY"; + private const string GUYANA_ISO3_CODE = "GUY"; + private const int GUYANA_NUMERIC_CODE = 328; + private readonly string[] GUYANA_CALLING_CODE = ["+592"]; + private const CountryIdentifier EXPECTEDID = CountryIdentifier.Guyana; + + private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES = + [ + new("Barima-Waini", "GY-BA", "Region"), + new("Pomeroon-Supenaam", "GY-PT", "Region"), + new("Essequibo Islands-West Demerara", "GY-ES", "Region"), + new("Demerara-Mahaica", "GY-DE", "Region"), + new("Mahaica-Berbice", "GY-MA", "Region"), + new("East Berbice-Corentyne", "GY-EB", "Region"), + new("Cuyuni-Mazaruni", "GY-CU", "Region"), + new("Potaro-Siparuni", "GY-PT", "Region"), + new("Upper Takutu-Upper Essequibo", "GY-UT", "Region"), + new("Upper Demerara-Berbice", "GY-UD", "Region") + ]; + + [Fact] + public void GetCountry_ReturnsCorrectInformation_ForGuyana() + { + // Arrange + // Act + var country = CountryProvider.GetCountry(EXPECTEDID); + + // Assert + AssertCorrectInformation( + country, + EXPECTEDID, + GUYANA_COUNTRY_NAME, + GUYANA_OFFICIAL_NAME, + GUYANA_NATIVE_NAME, + GUYANA_CAPITAL, + GUYANA_NUMERIC_CODE, + GUYANA_ISO2_CODE, + GUYANA_ISO3_CODE, + GUYANA_CALLING_CODE, + EXPECTED_STATES + ); + } +} diff --git a/src/World.Net.UnitTests/Countries/HaitiTest.cs b/src/World.Net.UnitTests/Countries/HaitiTest.cs new file mode 100644 index 0000000..dbcc08f --- /dev/null +++ b/src/World.Net.UnitTests/Countries/HaitiTest.cs @@ -0,0 +1,51 @@ +namespace World.Net.UnitTests.Countries; + +public sealed class HaitiTest : AssertCountryTestBase +{ + private const string HAITI_COUNTRY_NAME = "Haiti"; + private const string HAITI_NATIVE_NAME = "Haïti"; + private const string HAITI_CAPITAL = "Port-au-Prince"; + private const string HAITI_OFFICIAL_NAME = "Republic of Haiti"; + private const string HAITI_ISO2_CODE = "HT"; + private const string HAITI_ISO3_CODE = "HTI"; + private const int HAITI_NUMERIC_CODE = 332; + private readonly string[] HAITI_CALLING_CODE = ["+509"]; + private const CountryIdentifier EXPECTEDID = CountryIdentifier.Haiti; + + private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES = + [ + new("Artibonite", "HT-AR", "Department"), + new("Centre", "HT-CE", "Department"), + new("Grand'Anse", "HT-GA", "Department"), + new("Nippes", "HT-NI", "Department"), + new("Nord", "HT-NO", "Department"), + new("Nord-Est", "HT-NE", "Department"), + new("Nord-Ouest", "HT-NW", "Department"), + new("Ouest", "HT-OU", "Department"), + new("Sud", "HT-SD", "Department"), + new("Sud-Est", "HT-SE", "Department") + ]; + + [Fact] + public void GetCountry_ReturnsCorrectInformation_ForHaiti() + { + // Arrange + // Act + var country = CountryProvider.GetCountry(EXPECTEDID); + + // Assert + AssertCorrectInformation( + country, + EXPECTEDID, + HAITI_COUNTRY_NAME, + HAITI_OFFICIAL_NAME, + HAITI_NATIVE_NAME, + HAITI_CAPITAL, + HAITI_NUMERIC_CODE, + HAITI_ISO2_CODE, + HAITI_ISO3_CODE, + HAITI_CALLING_CODE, + EXPECTED_STATES + ); + } +} diff --git a/src/World.Net.UnitTests/Countries/HeardIslandAndMcDonaldIslandsTest.cs b/src/World.Net.UnitTests/Countries/HeardIslandAndMcDonaldIslandsTest.cs new file mode 100644 index 0000000..b49f81a --- /dev/null +++ b/src/World.Net.UnitTests/Countries/HeardIslandAndMcDonaldIslandsTest.cs @@ -0,0 +1,39 @@ +namespace World.Net.UnitTests.Countries; + +public sealed class HeardIslandAndMcDonaldIslandsTest : AssertCountryTestBase +{ + private const string COUNTRY_NAME = "Heard Island and McDonald Islands"; + private const string NATIVE_NAME = "Heard Island and McDonald Islands"; + private const string CAPITAL = "Atlas Cove"; + private const string OFFICIAL_NAME = "Heard Island and McDonald Islands"; + private const string ISO2_CODE = "HM"; + private const string ISO3_CODE = "HMD"; + private const int NUMERIC_CODE = 334; + private readonly string[] CALLING_CODE = []; // No calling code + private const CountryIdentifier EXPECTEDID = CountryIdentifier.HeardIslandAndMcDonaldIslands; + + private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES = []; + + [Fact] + public void GetCountry_ReturnsCorrectInformation_ForHeardIslandAndMcDonaldIslands() + { + // Arrange + // Act + var country = CountryProvider.GetCountry(EXPECTEDID); + + // Assert + AssertCorrectInformation( + country, + EXPECTEDID, + COUNTRY_NAME, + OFFICIAL_NAME, + NATIVE_NAME, + CAPITAL, + NUMERIC_CODE, + ISO2_CODE, + ISO3_CODE, + CALLING_CODE, + EXPECTED_STATES + ); + } +} diff --git a/src/World.Net.UnitTests/Countries/HondurasTest.cs b/src/World.Net.UnitTests/Countries/HondurasTest.cs new file mode 100644 index 0000000..4d3a42d --- /dev/null +++ b/src/World.Net.UnitTests/Countries/HondurasTest.cs @@ -0,0 +1,59 @@ +namespace World.Net.UnitTests.Countries; + +public sealed class HondurasTest : AssertCountryTestBase +{ + private const string HONDURAS_COUNTRY_NAME = "Honduras"; + private const string HONDURAS_NATIVE_NAME = "Honduras"; + private const string HONDURAS_CAPITAL = "Tegucigalpa"; + private const string HONDURAS_OFFICIAL_NAME = "Republic of Honduras"; + private const string HONDURAS_ISO2_CODE = "HN"; + private const string HONDURAS_ISO3_CODE = "HND"; + private const int HONDURAS_NUMERIC_CODE = 340; + private readonly string[] HONDURAS_CALLING_CODE = ["+504"]; + private const CountryIdentifier EXPECTEDID = CountryIdentifier.Honduras; + + private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES = + [ + new("Atlántida", "HN-AT", "Department"), + new("Choluteca", "HN-CH", "Department"), + new("Colón", "HN-CL", "Department"), + new("Comayagua", "HN-CM", "Department"), + new("Copán", "HN-CP", "Department"), + new("Cortés", "HN-CR", "Department"), + new("El Paraíso", "HN-EP", "Department"), + new("Francisco Morazán", "HN-FM", "Department"), + new("Gracias a Dios", "HN-GD", "Department"), + new("Intibucá", "HN-IN", "Department"), + new("Islas de la Bahía", "HN-IB", "Department"), + new("La Paz", "HN-LP", "Department"), + new("Lempira", "HN-LE", "Department"), + new("Ocotepeque", "HN-OC", "Department"), + new("Olancho", "HN-OL", "Department"), + new("Santa Bárbara", "HN-SB", "Department"), + new("Valle", "HN-VA", "Department"), + new("Yoro", "HN-YO", "Department") + ]; + + [Fact] + public void GetCountry_ReturnsCorrectInformation_ForHonduras() + { + // Arrange + // Act + var country = CountryProvider.GetCountry(EXPECTEDID); + + // Assert + AssertCorrectInformation( + country, + EXPECTEDID, + HONDURAS_COUNTRY_NAME, + HONDURAS_OFFICIAL_NAME, + HONDURAS_NATIVE_NAME, + HONDURAS_CAPITAL, + HONDURAS_NUMERIC_CODE, + HONDURAS_ISO2_CODE, + HONDURAS_ISO3_CODE, + HONDURAS_CALLING_CODE, + EXPECTED_STATES + ); + } +} diff --git a/src/World.Net.UnitTests/Countries/HongKongTest.cs b/src/World.Net.UnitTests/Countries/HongKongTest.cs new file mode 100644 index 0000000..cea1641 --- /dev/null +++ b/src/World.Net.UnitTests/Countries/HongKongTest.cs @@ -0,0 +1,39 @@ +namespace World.Net.UnitTests.Countries; + +public sealed class HongKongTest : AssertCountryTestBase +{ + private const string COUNTRY_NAME = "Hong Kong"; + private const string NATIVE_NAME = "香港"; + private const string CAPITAL = "Hong Kong"; + private const string OFFICIAL_NAME = "Hong Kong Special Administrative Region of China"; + private const string ISO2_CODE = "HK"; + private const string ISO3_CODE = "HKG"; + private const int NUMERIC_CODE = 344; + private readonly string[] CALLING_CODE = ["+852"]; + private const CountryIdentifier EXPECTEDID = CountryIdentifier.HongKongSAR; + + private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES = []; + + [Fact] + public void GetCountry_ReturnsCorrectInformation_ForHongKong() + { + // Arrange + // Act + var country = CountryProvider.GetCountry(EXPECTEDID); + + // Assert + AssertCorrectInformation( + country, + EXPECTEDID, + COUNTRY_NAME, + OFFICIAL_NAME, + NATIVE_NAME, + CAPITAL, + NUMERIC_CODE, + ISO2_CODE, + ISO3_CODE, + CALLING_CODE, + EXPECTED_STATES + ); + } +} diff --git a/src/World.Net/Countries/GuineaBissau.cs b/src/World.Net/Countries/GuineaBissau.cs new file mode 100644 index 0000000..f7d45db --- /dev/null +++ b/src/World.Net/Countries/GuineaBissau.cs @@ -0,0 +1,45 @@ +namespace World.Net.Countries; + +internal sealed class GuineaBissau : ICountry +{ + // + public CountryIdentifier Id => CountryIdentifier.GuineaBissau; + + // + public string Name { get; } = "Guinea-Bissau"; + + // + public string OfficialName { get; } = "Republic of Guinea-Bissau"; + + // + public string NativeName => "Guiné-Bissau"; + + // + public string Capital { get; } = "Bissau"; + + // + public int NumericCode { get; } = 624; + + // + public string ISO2Code { get; } = "GW"; + + // + public string ISO3Code { get; } = "GNB"; + + // + public string[] CallingCode { get; } = ["+245"]; + + // + public IEnumerable States => + [ + new("Bafatá", "GW-BFA", "Region"), + new("Biombo", "GW-BIB", "Region"), + new("Bissau", "GW-BS", "Region"), // autonomous sector + new("Bolama", "GW-BM", "Region"), + new("Cacheu", "GW-CA", "Region"), + new("Gabu", "GW-GA", "Region"), + new("Oio", "GW-OI", "Region"), + new("Quinara", "GW-QU", "Region"), + new("Tombali", "GW-TO", "Region") + ]; +} diff --git a/src/World.Net/Countries/Guyana.cs b/src/World.Net/Countries/Guyana.cs new file mode 100644 index 0000000..874df30 --- /dev/null +++ b/src/World.Net/Countries/Guyana.cs @@ -0,0 +1,46 @@ +namespace World.Net.Countries; + +internal sealed class Guyana : ICountry +{ + // + public CountryIdentifier Id => CountryIdentifier.Guyana; + + // + public string Name { get; } = "Guyana"; + + // + public string OfficialName { get; } = "Co-operative Republic of Guyana"; + + // + public string NativeName => "Guyana"; + + // + public string Capital { get; } = "Georgetown"; + + // + public int NumericCode { get; } = 328; + + // + public string ISO2Code { get; } = "GY"; + + // + public string ISO3Code { get; } = "GUY"; + + // + public string[] CallingCode { get; } = ["+592"]; + + // + public IEnumerable States => + [ + new("Barima-Waini", "GY-BA", "Region"), + new("Pomeroon-Supenaam", "GY-PT", "Region"), + new("Essequibo Islands-West Demerara", "GY-ES", "Region"), + new("Demerara-Mahaica", "GY-DE", "Region"), + new("Mahaica-Berbice", "GY-MA", "Region"), + new("East Berbice-Corentyne", "GY-EB", "Region"), + new("Cuyuni-Mazaruni", "GY-CU", "Region"), + new("Potaro-Siparuni", "GY-PT", "Region"), + new("Upper Takutu-Upper Essequibo", "GY-UT", "Region"), + new("Upper Demerara-Berbice", "GY-UD", "Region") + ]; +} diff --git a/src/World.Net/Countries/Haiti.cs b/src/World.Net/Countries/Haiti.cs new file mode 100644 index 0000000..2db88aa --- /dev/null +++ b/src/World.Net/Countries/Haiti.cs @@ -0,0 +1,47 @@ +namespace World.Net.Countries; + +internal sealed class Haiti : ICountry +{ + // + public CountryIdentifier Id => CountryIdentifier.Haiti; + + // + public string Name { get; } = "Haiti"; + + // + public string OfficialName { get; } = "Republic of Haiti"; + + // + public string NativeName => "Haïti"; + + // + public string Capital { get; } = "Port-au-Prince"; + + // + public int NumericCode { get; } = 332; + + // + public string ISO2Code { get; } = "HT"; + + // + public string ISO3Code { get; } = "HTI"; + + // + public string[] CallingCode { get; } = ["+509"]; + + // + public IEnumerable States => + [ + new("Artibonite", "HT-AR", "Department"), + new("Centre", "HT-CE", "Department"), + new("Grand'Anse", "HT-GA", "Department"), + new("Nippes", "HT-NI", "Department"), + new("Nord", "HT-NO", "Department"), + new("Nord-Est", "HT-NE", "Department"), + new("Nord-Ouest", "HT-NW", "Department"), + new("Ouest", "HT-OU", "Department"), + new("Sud", "HT-SD", "Department"), + new("Sud-Est", "HT-SE", "Department") + ]; +} + diff --git a/src/World.Net/Countries/HeardIslandAndMcDonaldIslands.cs b/src/World.Net/Countries/HeardIslandAndMcDonaldIslands.cs new file mode 100644 index 0000000..abdce8a --- /dev/null +++ b/src/World.Net/Countries/HeardIslandAndMcDonaldIslands.cs @@ -0,0 +1,34 @@ +namespace World.Net.Countries; + +internal sealed class HeardIslandAndMcDonaldIslands : ICountry +{ + // + public CountryIdentifier Id => CountryIdentifier.HeardIslandAndMcDonaldIslands; + + // + public string Name { get; } = "Heard Island and McDonald Islands"; + + // + public string OfficialName { get; } = "Heard Island and McDonald Islands"; + + // + public string NativeName => "Heard Island and McDonald Islands"; + + // + public string Capital { get; } = "Atlas Cove"; + + // + public int NumericCode { get; } = 334; + + // + public string ISO2Code { get; } = "HM"; + + // + public string ISO3Code { get; } = "HMD"; + + // + public string[] CallingCode { get; } = []; // No population, no calling code + + // + public IEnumerable States => []; +} diff --git a/src/World.Net/Countries/Honduras.cs b/src/World.Net/Countries/Honduras.cs new file mode 100644 index 0000000..2fea9fd --- /dev/null +++ b/src/World.Net/Countries/Honduras.cs @@ -0,0 +1,55 @@ +namespace World.Net.Countries; + +internal sealed class Honduras : ICountry +{ + // + public CountryIdentifier Id => CountryIdentifier.Honduras; + + // + public string Name { get; } = "Honduras"; + + // + public string OfficialName { get; } = "Republic of Honduras"; + + // + public string NativeName => "Honduras"; + + // + public string Capital { get; } = "Tegucigalpa"; + + // + public int NumericCode { get; } = 340; + + // + public string ISO2Code { get; } = "HN"; + + // + public string ISO3Code { get; } = "HND"; + + // + public string[] CallingCode { get; } = ["+504"]; + + // + public IEnumerable States => + [ + new("Atlántida", "HN-AT", "Department"), + new("Choluteca", "HN-CH", "Department"), + new("Colón", "HN-CL", "Department"), + new("Comayagua", "HN-CM", "Department"), + new("Copán", "HN-CP", "Department"), + new("Cortés", "HN-CR", "Department"), + new("El Paraíso", "HN-EP", "Department"), + new("Francisco Morazán", "HN-FM", "Department"), + new("Gracias a Dios", "HN-GD", "Department"), + new("Intibucá", "HN-IN", "Department"), + new("Islas de la Bahía", "HN-IB", "Department"), + new("La Paz", "HN-LP", "Department"), + new("Lempira", "HN-LE", "Department"), + new("Ocotepeque", "HN-OC", "Department"), + new("Olancho", "HN-OL", "Department"), + new("Santa Bárbara", "HN-SB", "Department"), + new("Valle", "HN-VA", "Department"), + new("Yoro", "HN-YO", "Department") + ]; +} + diff --git a/src/World.Net/Countries/HongKong.cs b/src/World.Net/Countries/HongKong.cs new file mode 100644 index 0000000..d1dab0a --- /dev/null +++ b/src/World.Net/Countries/HongKong.cs @@ -0,0 +1,34 @@ +namespace World.Net.Countries; + +internal sealed class HongKong : ICountry +{ + // + public CountryIdentifier Id => CountryIdentifier.HongKongSAR; + + // + public string Name { get; } = "Hong Kong"; + + // + public string OfficialName { get; } = "Hong Kong Special Administrative Region of China"; + + // + public string NativeName => "香港"; + + // + public string Capital { get; } = "Hong Kong"; + + // + public int NumericCode { get; } = 344; + + // + public string ISO2Code { get; } = "HK"; + + // + public string ISO3Code { get; } = "HKG"; + + // + public string[] CallingCode { get; } = ["+852"]; + + // + public IEnumerable States => []; // No subdivisions +} diff --git a/src/World.Net/Helpers/CountryInitializer.cs b/src/World.Net/Helpers/CountryInitializer.cs index 178fefe..10f312d 100644 --- a/src/World.Net/Helpers/CountryInitializer.cs +++ b/src/World.Net/Helpers/CountryInitializer.cs @@ -97,6 +97,12 @@ public static Dictionary Initialize() { CountryIdentifier.Guatemala, new Guatemala() }, { CountryIdentifier.GuernseyAndAlderney, new Guernsey() }, { CountryIdentifier.Guinea, new Guinea() }, + { CountryIdentifier.GuineaBissau, new GuineaBissau() }, + { CountryIdentifier.Guyana, new Guyana() }, + { CountryIdentifier.Haiti, new Haiti() }, + { CountryIdentifier.HeardIslandAndMcDonaldIslands, new HeardIslandAndMcDonaldIslands() }, + { CountryIdentifier.Honduras, new Honduras() }, + { CountryIdentifier.HongKongSAR, new HongKong() }, { CountryIdentifier.Iraq, new Iraq() }, { CountryIdentifier.Ireland, new Ireland() }, { CountryIdentifier.Israel, new Israel() },