Implementation
List<Country> countries = [
Country(
name: "Afghanistan",
countryCode: "AF",
phoneCode: "+93",
),
Country(
name: "Aland Islands",
countryCode: "AX",
phoneCode: "+358",
),
Country(
name: "Albania",
countryCode: "AL",
phoneCode: "+355",
),
Country(
name: "Algeria",
countryCode: "DZ",
phoneCode: "+213",
),
Country(
name: "American Samoa",
countryCode: "AS",
phoneCode: "+1684",
),
Country(
name: "Andorra",
countryCode: "AD",
phoneCode: "+376",
),
Country(
name: "Angola",
countryCode: "AO",
phoneCode: "+244",
),
Country(
name: "Anguilla",
countryCode: "AI",
phoneCode: "+1264",
),
Country(
name: "Antarctica",
countryCode: "AQ",
phoneCode: "+672",
),
Country(
name: "Antigua and Barbuda",
countryCode: "AG",
phoneCode: "+1268",
),
Country(
name: "Argentina",
countryCode: "AR",
phoneCode: "+54",
),
Country(
name: "Armenia",
countryCode: "AM",
phoneCode: "+374",
),
Country(
name: "Aruba",
countryCode: "AW",
phoneCode: "+297",
),
Country(
name: "Australia",
countryCode: "AU",
phoneCode: "+61",
),
Country(
name: "Austria",
countryCode: "AT",
phoneCode: "+43",
),
Country(
name: "Azerbaijan",
countryCode: "AZ",
phoneCode: "+994",
),
Country(
name: "Bahamas",
countryCode: "BS",
phoneCode: "+1242",
),
Country(
name: "Bahrain",
countryCode: "BH",
phoneCode: "+973",
),
Country(
name: "Bangladesh",
countryCode: "BD",
phoneCode: "+880",
),
Country(
name: "Barbados",
countryCode: "BB",
phoneCode: "+1246",
),
Country(
name: "Belarus",
countryCode: "BY",
phoneCode: "+375",
),
Country(
name: "Belgium",
countryCode: "BE",
phoneCode: "+32",
),
Country(
name: "Belize",
countryCode: "BZ",
phoneCode: "+501",
),
Country(
name: "Benin",
countryCode: "BJ",
phoneCode: "+229",
),
Country(
name: "Bermuda",
countryCode: "BM",
phoneCode: "+1441",
),
Country(
name: "Bhutan",
countryCode: "BT",
phoneCode: "+975",
),
Country(
name: "Bolivia",
countryCode: "BO",
phoneCode: "+591",
),
Country(
name: "Bosnia and Herzegovina",
countryCode: "BA",
phoneCode: "+387",
),
Country(
name: "Botswana",
countryCode: "BW",
phoneCode: "+267",
),
Country(
name: "Bouvet Island",
countryCode: "BV",
phoneCode: "+47",
),
Country(
name: "Brazil",
countryCode: "BR",
phoneCode: "+55",
),
Country(
name: "British Indian Ocean Territory",
countryCode: "IO",
phoneCode: "+246",
),
Country(
name: "Brunei",
countryCode: "BN",
phoneCode: "+673",
),
Country(
name: "Bulgaria",
countryCode: "BG",
phoneCode: "+359",
),
Country(
name: "Burkina Faso",
countryCode: "BF",
phoneCode: "+226",
),
Country(
name: "Burundi",
countryCode: "BI",
phoneCode: "+257",
),
Country(
name: "Cambodia",
countryCode: "KH",
phoneCode: "+855",
),
Country(
name: "Cameroon",
countryCode: "CM",
phoneCode: "+237",
),
Country(
name: "Canada",
countryCode: "CA",
phoneCode: "+1",
),
Country(
name: "Cape Verde",
countryCode: "CV",
phoneCode: "+238",
),
Country(
name: "Cayman Islands",
countryCode: "KY",
phoneCode: "+1345",
),
Country(
name: "Central African Republic",
countryCode: "CF",
phoneCode: "+236",
),
Country(
name: "Chad",
countryCode: "TD",
phoneCode: "+235",
),
Country(
name: "Chile",
countryCode: "CL",
phoneCode: "+56",
),
Country(
name: "China",
countryCode: "CN",
phoneCode: "+86",
),
Country(
name: "Christmas Island",
countryCode: "CX",
phoneCode: "+61",
),
Country(
name: "Cocos Islands",
countryCode: "CC",
phoneCode: "+61",
),
Country(
name: "Colombia",
countryCode: "CO",
phoneCode: "+57",
),
Country(
name: "Comoros",
countryCode: "KM",
phoneCode: "+269",
),
Country(
name: "Republic of the Congo",
countryCode: "CG",
phoneCode: "+242",
),
Country(
name: "Democratic Republic of the Congo",
countryCode: "CD",
phoneCode: "+243",
),
Country(
name: "Cook Islands",
countryCode: "CK",
phoneCode: "+682",
),
Country(
name: "Costa Rica",
countryCode: "CR",
phoneCode: "+506",
),
Country(
name: "Ivory Coast",
countryCode: "CI",
phoneCode: "+225",
),
Country(
name: "Croatia",
countryCode: "HR",
phoneCode: "+385",
),
Country(
name: "Cuba",
countryCode: "CU",
phoneCode: "+53",
),
Country(
name: "Cyprus",
countryCode: "CY",
phoneCode: "+357",
),
Country(
name: "Czech Republic",
countryCode: "CZ",
phoneCode: "+420",
),
Country(
name: "Denmark",
countryCode: "DK",
phoneCode: "+45",
),
Country(
name: "Djibouti",
countryCode: "DJ",
phoneCode: "+253",
),
Country(
name: "Dominica",
countryCode: "DM",
phoneCode: "+1767",
),
Country(
name: "Dominican Republic",
countryCode: "DO",
phoneCode: "+1",
),
Country(
name: "Ecuador",
countryCode: "EC",
phoneCode: "+593",
),
Country(
name: "Egypt",
countryCode: "EG",
phoneCode: "+20",
),
Country(
name: "El Salvador",
countryCode: "SV",
phoneCode: "+503",
),
Country(
name: "Equatorial Guinea",
countryCode: "GQ",
phoneCode: "+240",
),
Country(
name: "Eritrea",
countryCode: "ER",
phoneCode: "+291",
),
Country(
name: "Estonia",
countryCode: "EE",
phoneCode: "+372",
),
Country(
name: "Ethiopia",
countryCode: "ET",
phoneCode: "+251",
),
Country(
name: "Falkland Islands",
countryCode: "FK",
phoneCode: "+500",
),
Country(
name: "Faroe Islands",
countryCode: "FO",
phoneCode: "+298",
),
Country(
name: "Fiji",
countryCode: "FJ",
phoneCode: "+679",
),
Country(
name: "Finland",
countryCode: "FI",
phoneCode: "+358",
),
Country(
name: "France",
countryCode: "FR",
phoneCode: "+33",
),
Country(
name: "French Guiana",
countryCode: "GF",
phoneCode: "+594",
),
Country(
name: "French Polynesia",
countryCode: "PF",
phoneCode: "+689",
),
Country(
name: "French Southern Territories",
countryCode: "TF",
phoneCode: "+262",
),
Country(
name: "Gabon",
countryCode: "GA",
phoneCode: "+241",
),
Country(
name: "Gambia",
countryCode: "GM",
phoneCode: "+220",
),
Country(
name: "Georgia",
countryCode: "GE",
phoneCode: "+995",
),
Country(
name: "Germany",
countryCode: "DE",
phoneCode: "+49",
),
Country(
name: "Ghana",
countryCode: "GH",
phoneCode: "+233",
),
Country(
name: "Gibraltar",
countryCode: "GI",
phoneCode: "+350",
),
Country(
name: "Greece",
countryCode: "GR",
phoneCode: "+30",
),
Country(
name: "Greenland",
countryCode: "GL",
phoneCode: "+299",
),
Country(
name: "Grenada",
countryCode: "GD",
phoneCode: "+1473",
),
Country(
name: "Guadeloupe",
countryCode: "GP",
phoneCode: "+590",
),
Country(
name: "Guam",
countryCode: "GU",
phoneCode: "+1671",
),
Country(
name: "Guatemala",
countryCode: "GT",
phoneCode: "+502",
),
Country(
name: "Guernsey",
countryCode: "GG",
phoneCode: "+44",
),
Country(
name: "Guinea",
countryCode: "GN",
phoneCode: "+224",
),
Country(
name: "Guinea-Bissau",
countryCode: "GW",
phoneCode: "+245",
),
Country(
name: "Guyana",
countryCode: "GY",
phoneCode: "+592",
),
Country(
name: "Haiti",
countryCode: "HT",
phoneCode: "+509",
),
Country(
name: "Heard Island and McDonald Islands",
countryCode: "HM",
phoneCode: "+0",
),
Country(
name: "Vatican",
countryCode: "VA",
phoneCode: "+379",
),
Country(
name: "Honduras",
countryCode: "HN",
phoneCode: "+504",
),
Country(
name: "Hong Kong",
countryCode: "HK",
phoneCode: "+852",
),
Country(
name: "Hungary",
countryCode: "HU",
phoneCode: "+36",
),
Country(
name: "Iceland",
countryCode: "IS",
phoneCode: "+354",
),
Country(
name: "India",
countryCode: "IN",
phoneCode: "+91",
),
Country(
name: "Indonesia",
countryCode: "ID",
phoneCode: "+62",
),
Country(
name: "Iran",
countryCode: "IR",
phoneCode: "+98",
),
Country(
name: "Iraq",
countryCode: "IQ",
phoneCode: "+964",
),
Country(
name: "Ireland",
countryCode: "IE",
phoneCode: "+353",
),
Country(
name: "Isle of Man",
countryCode: "IM",
phoneCode: "+44",
),
Country(
name: "Israel",
countryCode: "IL",
phoneCode: "+972",
),
Country(
name: "Italy",
countryCode: "IT",
phoneCode: "+39",
),
Country(
name: "Jamaica",
countryCode: "JM",
phoneCode: "+1876",
),
Country(
name: "Japan",
countryCode: "JP",
phoneCode: "+81",
),
Country(
name: "Jersey",
countryCode: "JE",
phoneCode: "+44",
),
Country(
name: "Jordan",
countryCode: "JO",
phoneCode: "+962",
),
Country(
name: "Kazakhstan",
countryCode: "KZ",
phoneCode: "+7",
),
Country(
name: "Kenya",
countryCode: "KE",
phoneCode: "+254",
),
Country(
name: "Kiribati",
countryCode: "KI",
phoneCode: "+686",
),
Country(
name: "North Korea",
countryCode: "KP",
phoneCode: "+850",
),
Country(
name: "South Korea",
countryCode: "KR",
phoneCode: "+82",
),
Country(
name: "Kosovo",
countryCode: "XK",
phoneCode: "+383",
),
Country(
name: "Kuwait",
countryCode: "KW",
phoneCode: "+965",
),
Country(
name: "Kyrgyzstan",
countryCode: "KG",
phoneCode: "+996",
),
Country(
name: "Laos",
countryCode: "LA",
phoneCode: "+856",
),
Country(
name: "Latvia",
countryCode: "LV",
phoneCode: "+371",
),
Country(
name: "Lebanon",
countryCode: "LB",
phoneCode: "+961",
),
Country(
name: "Lesotho",
countryCode: "LS",
phoneCode: "+266",
),
Country(
name: "Liberia",
countryCode: "LR",
phoneCode: "+231",
),
Country(
name: "Libya",
countryCode: "LY",
phoneCode: "+218",
),
Country(
name: "Liechtenstein",
countryCode: "LI",
phoneCode: "+423",
),
Country(
name: "Lithuania",
countryCode: "LT",
phoneCode: "+370",
),
Country(
name: "Luxembourg",
countryCode: "LU",
phoneCode: "+352",
),
Country(
name: "Macao",
countryCode: "MO",
phoneCode: "+853",
),
Country(
name: "Macedonia",
countryCode: "MK",
phoneCode: "+389",
),
Country(
name: "Madagascar",
countryCode: "MG",
phoneCode: "+261",
),
Country(
name: "Malawi",
countryCode: "MW",
phoneCode: "+265",
),
Country(
name: "Malaysia",
countryCode: "MY",
phoneCode: "+60",
),
Country(
name: "Maldives",
countryCode: "MV",
phoneCode: "+960",
),
Country(
name: "Mali",
countryCode: "ML",
phoneCode: "+223",
),
Country(
name: "Malta",
countryCode: "MT",
phoneCode: "+356",
),
Country(
name: "Marshall Islands",
countryCode: "MH",
phoneCode: "+692",
),
Country(
name: "Martinique",
countryCode: "MQ",
phoneCode: "+596",
),
Country(
name: "Mauritania",
countryCode: "MR",
phoneCode: "+222",
),
Country(
name: "Mauritius",
countryCode: "MU",
phoneCode: "+230",
),
Country(
name: "Mayotte",
countryCode: "YT",
phoneCode: "+262",
),
Country(
name: "Mexico",
countryCode: "MX",
phoneCode: "+52",
),
Country(
name: "Micronesia",
countryCode: "FM",
phoneCode: "+691",
),
Country(
name: "Moldova",
countryCode: "MD",
phoneCode: "+373",
),
Country(
name: "Monaco",
countryCode: "MC",
phoneCode: "+377",
),
Country(
name: "Mongolia",
countryCode: "MN",
phoneCode: "+976",
),
Country(
name: "Montenegro",
countryCode: "ME",
phoneCode: "+382",
),
Country(
name: "Montserrat",
countryCode: "MS",
phoneCode: "+1664",
),
Country(
name: "Morocco",
countryCode: "MA",
phoneCode: "+212",
),
Country(
name: "Mozambique",
countryCode: "MZ",
phoneCode: "+258",
),
Country(
name: "Myanmar",
countryCode: "MM",
phoneCode: "+95",
),
Country(
name: "Namibia",
countryCode: "NA",
phoneCode: "+264",
),
Country(
name: "Nauru",
countryCode: "NR",
phoneCode: "+674",
),
Country(
name: "Nepal",
countryCode: "NP",
phoneCode: "+977",
),
Country(
name: "Netherlands",
countryCode: "NL",
phoneCode: "+31",
),
Country(
name: "null",
countryCode: "AN",
phoneCode: "+599",
),
Country(
name: "New Caledonia",
countryCode: "NC",
phoneCode: "+687",
),
Country(
name: "New Zealand",
countryCode: "NZ",
phoneCode: "+64",
),
Country(
name: "Nicaragua",
countryCode: "NI",
phoneCode: "+505",
),
Country(
name: "Niger",
countryCode: "NE",
phoneCode: "+227",
),
Country(
name: "Nigeria",
countryCode: "NG",
phoneCode: "+234",
),
Country(
name: "Niue",
countryCode: "NU",
phoneCode: "+683",
),
Country(
name: "Norfolk Island",
countryCode: "NF",
phoneCode: "+672",
),
Country(
name: "Northern Mariana Islands",
countryCode: "MP",
phoneCode: "+1670",
),
Country(
name: "Norway",
countryCode: "NO",
phoneCode: "+47",
),
Country(
name: "Oman",
countryCode: "OM",
phoneCode: "+968",
),
Country(
name: "Pakistan",
countryCode: "PK",
phoneCode: "+92",
),
Country(
name: "Palau",
countryCode: "PW",
phoneCode: "+680",
),
Country(
name: "Palestinian Territory",
countryCode: "PS",
phoneCode: "+970",
),
Country(
name: "Panama",
countryCode: "PA",
phoneCode: "+507",
),
Country(
name: "Papua New Guinea",
countryCode: "PG",
phoneCode: "+675",
),
Country(
name: "Paraguay",
countryCode: "PY",
phoneCode: "+595",
),
Country(
name: "Peru",
countryCode: "PE",
phoneCode: "+51",
),
Country(
name: "Philippines",
countryCode: "PH",
phoneCode: "+63",
),
Country(
name: "Pitcairn",
countryCode: "PN",
phoneCode: "+64",
),
Country(
name: "Poland",
countryCode: "PL",
phoneCode: "+48",
),
Country(
name: "Portugal",
countryCode: "PT",
phoneCode: "+351",
),
Country(
name: "Puerto Rico",
countryCode: "PR",
phoneCode: "+1939",
),
Country(
name: "Puerto Rico",
countryCode: "PR",
phoneCode: "+1787",
),
Country(
name: "Qatar",
countryCode: "QA",
phoneCode: "+974",
),
Country(
name: "Romania",
countryCode: "RO",
phoneCode: "+40",
),
Country(
name: "Russia",
countryCode: "RU",
phoneCode: "+7",
),
Country(
name: "Rwanda",
countryCode: "RW",
phoneCode: "+250",
),
Country(
name: "Reunion",
countryCode: "RE",
phoneCode: "+262",
),
Country(
name: "Saint Barthelemy",
countryCode: "BL",
phoneCode: "+590",
),
Country(
name: "Saint Helena",
countryCode: "SH",
phoneCode: "+290",
),
Country(
name: "Saint Kitts and Nevis",
countryCode: "KN",
phoneCode: "+1869",
),
Country(
name: "Saint Lucia",
countryCode: "LC",
phoneCode: "+1758",
),
Country(
name: "Saint Martin",
countryCode: "MF",
phoneCode: "+590",
),
Country(
name: "Saint Pierre and Miquelon",
countryCode: "PM",
phoneCode: "+508",
),
Country(
name: "Saint Vincent and the Grenadines",
countryCode: "VC",
phoneCode: "+1784",
),
Country(
name: "Samoa",
countryCode: "WS",
phoneCode: "+685",
),
Country(
name: "San Marino",
countryCode: "SM",
phoneCode: "+378",
),
Country(
name: "Sao Tome and Principe",
countryCode: "ST",
phoneCode: "+239",
),
Country(
name: "Saudi Arabia",
countryCode: "SA",
phoneCode: "+966",
),
Country(
name: "Senegal",
countryCode: "SN",
phoneCode: "+221",
),
Country(
name: "Serbia",
countryCode: "RS",
phoneCode: "+381",
),
Country(
name: "Seychelles",
countryCode: "SC",
phoneCode: "+248",
),
Country(
name: "Sierra Leone",
countryCode: "SL",
phoneCode: "+232",
),
Country(
name: "Singapore",
countryCode: "SG",
phoneCode: "+65",
),
Country(
name: "Slovakia",
countryCode: "SK",
phoneCode: "+421",
),
Country(
name: "Slovenia",
countryCode: "SI",
phoneCode: "+386",
),
Country(
name: "Solomon Islands",
countryCode: "SB",
phoneCode: "+677",
),
Country(
name: "Somalia",
countryCode: "SO",
phoneCode: "+252",
),
Country(
name: "South Africa",
countryCode: "ZA",
phoneCode: "+27",
),
Country(
name: "South Sudan",
countryCode: "SS",
phoneCode: "+211",
),
Country(
name: "South Georgia and the South Sandwich Islands",
countryCode: "GS",
phoneCode: "+500",
),
Country(
name: "Spain",
countryCode: "ES",
phoneCode: "+34",
),
Country(
name: "Sri Lanka",
countryCode: "LK",
phoneCode: "+94",
),
Country(
name: "Sudan",
countryCode: "SD",
phoneCode: "+249",
),
Country(
name: "Suriname",
countryCode: "SR",
phoneCode: "+597",
),
Country(
name: "Svalbard and Jan Mayen",
countryCode: "SJ",
phoneCode: "+47",
),
Country(
name: "Swaziland",
countryCode: "SZ",
phoneCode: "+268",
),
Country(
name: "Sweden",
countryCode: "SE",
phoneCode: "+46",
),
Country(
name: "Switzerland",
countryCode: "CH",
phoneCode: "+41",
),
Country(
name: "Syria",
countryCode: "SY",
phoneCode: "+963",
),
Country(
name: "Taiwan",
countryCode: "TW",
phoneCode: "+886",
),
Country(
name: "Tajikistan",
countryCode: "TJ",
phoneCode: "+992",
),
Country(
name: "Tanzania",
countryCode: "TZ",
phoneCode: "+255",
),
Country(
name: "Thailand",
countryCode: "TH",
phoneCode: "+66",
),
Country(
name: "East Timor",
countryCode: "TL",
phoneCode: "+670",
),
Country(
name: "Togo",
countryCode: "TG",
phoneCode: "+228",
),
Country(
name: "Tokelau",
countryCode: "TK",
phoneCode: "+690",
),
Country(
name: "Tonga",
countryCode: "TO",
phoneCode: "+676",
),
Country(
name: "Trinidad and Tobago",
countryCode: "TT",
phoneCode: "+1868",
),
Country(
name: "Tunisia",
countryCode: "TN",
phoneCode: "+216",
),
Country(
name: "Turkey",
countryCode: "TR",
phoneCode: "+90",
),
Country(
name: "Turkmenistan",
countryCode: "TM",
phoneCode: "+993",
),
Country(
name: "Turks and Caicos Islands",
countryCode: "TC",
phoneCode: "+1649",
),
Country(
name: "Tuvalu",
countryCode: "TV",
phoneCode: "+688",
),
Country(
name: "Uganda",
countryCode: "UG",
phoneCode: "+256",
),
Country(
name: "Ukraine",
countryCode: "UA",
phoneCode: "+380",
),
Country(
name: "United Arab Emirates",
countryCode: "AE",
phoneCode: "+971",
),
Country(
name: "United Kingdom",
countryCode: "GB",
phoneCode: "+44",
),
Country(
name: "United States",
countryCode: "US",
phoneCode: "+1",
),
Country(
name: "Uruguay",
countryCode: "UY",
phoneCode: "+598",
),
Country(
name: "Uzbekistan",
countryCode: "UZ",
phoneCode: "+998",
),
Country(
name: "Vanuatu",
countryCode: "VU",
phoneCode: "+678",
),
Country(
name: "Venezuela",
countryCode: "VE",
phoneCode: "+58",
),
Country(
name: "Vietnam",
countryCode: "VN",
phoneCode: "+84",
),
Country(
name: "British Virgin Islands",
countryCode: "VG",
phoneCode: "+1284",
),
Country(
name: "U.S. Virgin Islands",
countryCode: "VI",
phoneCode: "+1340",
),
Country(
name: "Wallis and Futuna",
countryCode: "WF",
phoneCode: "+681",
),
Country(
name: "Yemen",
countryCode: "YE",
phoneCode: "+967",
),
Country(
name: "Zambia",
countryCode: "ZM",
phoneCode: "+260",
),
Country(
name: "Zimbabwe",
countryCode: "ZW",
phoneCode: "+263",
),
];