macro_rules! mapping {
($($alpha_2_code:ident $alpha_3_code:ident => $numeric_code:expr, $short_name_en:expr, $short_name_uppercase_en:expr, $full_name_en:expr, $short_name_zh:expr;)+) => {
#[derive(Debug, Clone, Copy)]
#[repr(u16)]
pub enum Iso3166 {
$(
$alpha_3_code = $numeric_code,
)+
}
impl Iso3166 {
pub const fn all() -> &'static [Self] {
&[
$(
Self::$alpha_3_code,
)+
]
}
pub fn from_alpha_2_code(code: &str) -> Option<Self> {
match code {
$(
_ if stringify!($alpha_2_code).eq_ignore_ascii_case(code) => Some(Self::$alpha_3_code),
)+
_ => None,
}
}
pub fn from_alpha_3_code(code: &str) -> Option<Self> {
match code {
$(
_ if stringify!($alpha_3_code).eq_ignore_ascii_case(code) => Some(Self::$alpha_3_code),
)+
_ => None,
}
}
#[inline]
pub const fn from_numeric_code(code: u16) -> Option<Self> {
match code {
$(
$numeric_code => Some(Self::$alpha_3_code),
)+
_ => None,
}
}
pub const fn alpha_2_code(self) -> &'static str {
use Iso3166::*;
match self {
$(
$alpha_3_code => stringify!($alpha_2_code),
)+
}
}
pub const fn alpha_3_code(self) -> &'static str {
use Iso3166::*;
match self {
$(
$alpha_3_code => stringify!($alpha_2_code),
)+
}
}
#[inline]
pub const fn numeric_code(self) -> u16 {
self as u16
}
#[cfg(feature = "feat-iso3166-short-name-en")]
pub const fn short_name_en(self) -> Option<&'static str> {
use Iso3166::*;
match self {
$(
$alpha_3_code => $short_name_en,
)+
}
}
#[cfg(feature = "feat-iso3166-short-name-uppercase-en")]
pub const fn short_name_uppercase_en(self) -> Option<&'static str> {
use Iso3166::*;
match self {
$(
$alpha_3_code => $short_name_uppercase_en,
)+
}
}
#[cfg(feature = "feat-iso3166-full-name-en")]
pub const fn full_name_en(self) -> Option<&'static str> {
use Iso3166::*;
match self {
$(
$alpha_3_code => $full_name_en,
)+
}
}
#[cfg(feature = "feat-iso3166-short-name-zh")]
pub const fn short_name_zh(self) -> Option<&'static str> {
use Iso3166::*;
match self {
$(
$alpha_3_code => $short_name_zh,
)+
}
}
}
}
}
mapping! {
AD AND => 20, Some("Andorra"), Some("ANDORRA"), Some("the Principality of Andorra"), Some("安道尔");
AE ARE => 784, Some("United Arab Emirates (the)"), Some("UNITED ARAB EMIRATES"), Some("the United Arab Emirates"), Some("阿联酋");
AF AFG => 4, Some("Afghanistan"), Some("AFGHANISTAN"), Some("the Islamic Republic of Afghanistan"), Some("阿富汗");
AG ATG => 28, Some("Antigua and Barbuda"), Some("ANTIGUA AND BARBUDA"), None, Some("安提瓜和巴布达");
AI AIA => 660, Some("Anguilla"), Some("ANGUILLA"), None, Some("安圭拉");
AL ALB => 8, Some("Albania"), Some("ALBANIA"), Some("the Republic of Albania"), Some("阿尔巴尼亚");
AM ARM => 51, Some("Armenia"), Some("ARMENIA"), Some("the Republic of Armenia"), Some("亚美尼亚");
AO AGO => 24, Some("Angola"), Some("ANGOLA"), Some("the Republic of Angola"), Some("安哥拉");
AQ ATA => 10, Some("Antarctica"), Some("ANTARCTICA"), None, Some("南极洲");
AR ARG => 32, Some("Argentina"), Some("ARGENTINA"), Some("the Argentine Republic"), Some("阿根廷");
AS ASM => 16, Some("American Samoa"), Some("AMERICAN SAMOA"), None, Some("美属萨摩亚");
AT AUT => 40, Some("Austria"), Some("AUSTRIA"), Some("the Republic of Austria"), Some("奥地利");
AU AUS => 36, Some("Australia"), Some("AUSTRALIA"), None, Some("澳大利亚");
AW ABW => 533, Some("Aruba"), Some("ARUBA"), None, Some("阿鲁巴");
AX ALA => 248, Some("Åland Islands"), Some("ÅLAND ISLANDS"), None, Some("奥兰群岛");
AZ AZE => 31, Some("Azerbaijan"), Some("AZERBAIJAN"), Some("the Republic of Azerbaijan"), Some("阿塞拜疆");
BA BIH => 70, Some("Bosnia and Herzegovina"), Some("BOSNIA AND HERZEGOVINA"), None, Some("波黑");
BB BRB => 52, Some("Barbados"), Some("BARBADOS"), None, Some("巴巴多斯");
BD BGD => 50, Some("Bangladesh"), Some("BANGLADESH"), Some("the People's Republic of Bangladesh"), Some("孟加拉国");
BE BEL => 56, Some("Belgium"), Some("BELGIUM"), Some("the Kingdom of Belgium"), Some("比利时");
BF BFA => 854, Some("Burkina Faso"), Some("BURKINA FASO"), None, Some("布基纳法索");
BG BGR => 100, Some("Bulgaria"), Some("BULGARIA"), Some("the Republic of Bulgaria"), Some("保加利亚");
BH BHR => 48, Some("Bahrain"), Some("BAHRAIN"), Some("the Kingdom of Bahrain"), Some("巴林");
BI BDI => 108, Some("Burundi"), Some("BURUNDI"), Some("the Republic of Burundi"), Some("布隆迪");
BJ BEN => 204, Some("Benin"), Some("BENIN"), Some("the Republic of Benin"), Some("贝宁");
BL BLM => 652, Some("Saint Barthélemy"), Some("SAINT BARTHÉLEMY"), None, None;
BM BMU => 60, Some("Bermuda"), Some("BERMUDA"), None, Some("百慕大");
BN BRN => 96, Some("Brunei Darussalam"), Some("BRUNEI DARUSSALAM"), None, Some("文莱");
BO BOL => 68, Some("Bolivia (Plurinational State of)"), Some("BOLIVIA (PLURINATIONAL STATE OF)"), Some("the Plurinational State of Bolivia"), Some("玻利维亚");
BQ BES => 535, Some("Bonaire, Sint Eustatius and Saba"), Some("BONAIRE, SINT EUSTATIUS AND SABA"), None, Some("(荷属加勒比地区)博内、圣俄斯塔休斯和萨巴");
BR BRA => 76, Some("Brazil"), Some("BRAZIL"), Some("the Federative Republic of Brazil"), Some("巴西");
BS BHS => 44, Some("Bahamas (the)"), Some("BAHAMAS"), Some("the Commonwealth of the Bahamas"), Some("巴哈马");
BT BTN => 64, Some("Bhutan"), Some("BHUTAN"), Some("the Kingdom of Bhutan"), Some("不丹");
BV BVT => 74, Some("Bouvet Island"), Some("BOUVET ISLAND"), None, Some("布维岛");
BW BWA => 72, Some("Botswana"), Some("BOTSWANA"), Some("the Republic of Botswana"), Some("博茨瓦纳");
BY BLR => 112, Some("Belarus"), Some("BELARUS"), Some("the Republic of Belarus"), Some("白俄罗斯");
BZ BLZ => 84, Some("Belize"), Some("BELIZE"), None, Some("伯利兹");
CA CAN => 124, Some("Canada"), Some("CANADA"), None, Some("加拿大");
CC CCK => 166, Some("Cocos (Keeling) Islands (the)"), Some("COCOS (KEELING) ISLANDS"), None, Some("科科斯(基林)群岛");
CD COD => 180, Some("Congo (the Democratic Republic of the)"), Some("CONGO, DEMOCRATIC REPUBLIC OF THE"), Some("the Democratic Republic of the Congo"), Some("刚果(金)");
CF CAF => 140, Some("Central African Republic (the)"), Some("CENTRAL AFRICAN REPUBLIC"), Some("the Central African Republic"), Some("中非");
CG COG => 178, Some("Congo (the)"), Some("CONGO"), Some("the Republic of the Congo"), Some("刚果(布)");
CH CHE => 756, Some("Switzerland"), Some("SWITZERLAND"), Some("the Swiss Confederation"), Some("瑞士");
CI CIV => 384, Some("Côte d'Ivoire"), Some("CÔTE D'IVOIRE"), Some("the Republic of Côte d'Ivoire"), Some("科特迪瓦");
CK COK => 184, Some("Cook Islands (the)"), Some("COOK ISLANDS"), None, Some("库克群岛");
CL CHL => 152, Some("Chile"), Some("CHILE"), Some("the Republic of Chile"), Some("智利");
CM CMR => 120, Some("Cameroon"), Some("CAMEROON"), Some("the Republic of Cameroon"), Some("喀麦隆");
CN CHN => 156, Some("China"), Some("CHINA"), Some("the People's Republic of China"), Some("中国");
CO COL => 170, Some("Colombia"), Some("COLOMBIA"), Some("the Republic of Colombia"), Some("哥伦比亚");
CR CRI => 188, Some("Costa Rica"), Some("COSTA RICA"), Some("the Republic of Costa Rica"), Some("哥斯达黎加");
CU CUB => 192, Some("Cuba"), Some("CUBA"), Some("the Republic of Cuba"), Some("古巴");
CV CPV => 132, Some("Cabo Verde"), Some("CABO VERDE"), Some("the Republic of Cabo Verde"), Some("佛得角");
CW CUW => 531, Some("Curaçao"), Some("CURAÇAO"), None, Some("(荷属加勒比地区)库拉索");
CX CXR => 162, Some("Christmas Island"), Some("CHRISTMAS ISLAND"), None, Some("圣诞岛");
CY CYP => 196, Some("Cyprus"), Some("CYPRUS"), Some("the Republic of Cyprus"), Some("塞浦路斯");
CZ CZE => 203, Some("Czechia"), Some("CZECHIA"), Some("the Czech Republic"), Some("捷克");
DE DEU => 276, Some("Germany"), Some("GERMANY"), Some("the Federal Republic of Germany"), Some("德国");
DJ DJI => 262, Some("Djibouti"), Some("DJIBOUTI"), Some("the Republic of Djibouti"), Some("吉布提");
DK DNK => 208, Some("Denmark"), Some("DENMARK"), Some("the Kingdom of Denmark"), Some("丹麦");
DM DMA => 212, Some("Dominica"), Some("DOMINICA"), Some("the Commonwealth of Dominica"), Some("多米尼克");
DO DOM => 214, Some("Dominican Republic (the)"), Some("DOMINICAN REPUBLIC"), Some("the Dominican Republic"), Some("多米尼加");
DZ DZA => 12, Some("Algeria"), Some("ALGERIA"), Some("the People's Democratic Republic of Algeria"), Some("阿尔及利亚");
EC ECU => 218, Some("Ecuador"), Some("ECUADOR"), Some("the Republic of Ecuador"), Some("厄瓜多尔");
EE EST => 233, Some("Estonia"), Some("ESTONIA"), Some("the Republic of Estonia"), Some("爱沙尼亚");
EG EGY => 818, Some("Egypt"), Some("EGYPT"), Some("the Arab Republic of Egypt"), Some("埃及");
EH ESH => 732, Some("Western Sahara*"), Some("WESTERN SAHARA *"), None, Some("西撒哈拉");
ER ERI => 232, Some("Eritrea"), Some("ERITREA"), Some("the State of Eritrea"), Some("厄立特里亚");
ES ESP => 724, Some("Spain"), Some("SPAIN"), Some("the Kingdom of Spain"), Some("西班牙");
ET ETH => 231, Some("Ethiopia"), Some("ETHIOPIA"), Some("the Federal Democratic Republic of Ethiopia"), Some("埃塞俄比亚");
FI FIN => 246, Some("Finland"), Some("FINLAND"), Some("the Republic of Finland"), Some("芬兰");
FJ FJI => 242, Some("Fiji"), Some("FIJI"), Some("the Republic of Fiji"), Some("斐济");
FK FLK => 238, Some("Falkland Islands (the) [Malvinas]"), Some("FALKLAND ISLANDS (MALVINAS)"), None, Some("福克兰群岛(马尔维纳斯)");
FM FSM => 583, Some("Micronesia (Federated States of)"), Some("MICRONESIA (FEDERATED STATES OF)"), Some("the Federated States of Micronesia"), Some("密克罗尼西亚联邦");
FO FRO => 234, Some("Faroe Islands (the)"), Some("FAROE ISLANDS"), None, Some("法罗群岛");
FR FRA => 250, Some("France"), Some("FRANCE"), Some("the French Republic"), Some("法国");
GA GAB => 266, Some("Gabon"), Some("GABON"), Some("the Gabonese Republic"), Some("加蓬");
GB GBR => 826, Some("United Kingdom of Great Britain and Northern Ireland (the)"), Some("UNITED KINGDOM OF GREAT BRITAIN AND NORTHERN IRELAND"), Some("the United Kingdom of Great Britain and Northern Ireland"), Some("英国");
GD GRD => 308, Some("Grenada"), Some("GRENADA"), None, Some("格林纳达");
GE GEO => 268, Some("Georgia"), Some("GEORGIA"), None, Some("格鲁吉亚");
GF GUF => 254, Some("French Guiana"), Some("FRENCH GUIANA"), None, Some("法属圭亚那");
GG GGY => 831, Some("Guernsey"), Some("GUERNSEY"), None, Some("格恩西岛");
GH GHA => 288, Some("Ghana"), Some("GHANA"), Some("the Republic of Ghana"), Some("加纳");
GI GIB => 292, Some("Gibraltar"), Some("GIBRALTAR"), None, Some("直布罗陀");
GL GRL => 304, Some("Greenland"), Some("GREENLAND"), None, Some("格陵兰");
GM GMB => 270, Some("Gambia (the)"), Some("GAMBIA"), Some("the Republic of the Gambia"), Some("冈比亚");
GN GIN => 324, Some("Guinea"), Some("GUINEA"), Some("the Republic of Guinea"), Some("几内亚");
GP GLP => 312, Some("Guadeloupe"), Some("GUADELOUPE"), None, Some("瓜德罗普");
GQ GNQ => 226, Some("Equatorial Guinea"), Some("EQUATORIAL GUINEA"), Some("the Republic of Equatorial Guinea"), Some("赤道几内亚");
GR GRC => 300, Some("Greece"), Some("GREECE"), Some("the Hellenic Republic"), Some("希腊");
GS SGS => 239, Some("South Georgia and the South Sandwich Islands"), Some("SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS"), None, Some("南乔治亚岛和南桑德韦奇岛");
GT GTM => 320, Some("Guatemala"), Some("GUATEMALA"), Some("the Republic of Guatemala"), Some("危地马拉");
GU GUM => 316, Some("Guam"), Some("GUAM"), None, Some("关岛");
GW GNB => 624, Some("Guinea-Bissau"), Some("GUINEA-BISSAU"), Some("the Republic of Guinea-Bissau"), Some("几内亚比绍");
GY GUY => 328, Some("Guyana"), Some("GUYANA"), Some("the Co-operative Republic of Guyana"), Some("圭亚那");
HK HKG => 344, Some("Hong Kong"), Some("HONG KONG"), Some("the Hong Kong Special Administrative Region of China"), Some("香港");
HM HMD => 334, Some("Heard Island and McDonald Islands"), Some("HEARD ISLAND AND MCDONALD ISLANDS"), None, Some("赫德岛和麦克唐纳岛");
HN HND => 340, Some("Honduras"), Some("HONDURAS"), Some("the Republic of Honduras"), Some("洪都拉斯");
HR HRV => 191, Some("Croatia"), Some("CROATIA"), Some("the Republic of Croatia"), Some("克罗地亚");
HT HTI => 332, Some("Haiti"), Some("HAITI"), Some("the Republic of Haiti"), Some("海地");
HU HUN => 348, Some("Hungary"), Some("HUNGARY"), None, Some("匈牙利");
ID IDN => 360, Some("Indonesia"), Some("INDONESIA"), Some("the Republic of Indonesia"), Some("印度尼西亚");
IE IRL => 372, Some("Ireland"), Some("IRELAND"), None, Some("爱尔兰");
IL ISR => 376, Some("Israel"), Some("ISRAEL"), Some("the State of Israel"), Some("以色列");
IM IMN => 833, Some("Isle of Man"), Some("ISLE OF MAN"), None, Some("英国属地曼岛");
IN IND => 356, Some("India"), Some("INDIA"), Some("the Republic of India"), Some("印度");
IO IOT => 86, Some("British Indian Ocean Territory (the)"), Some("BRITISH INDIAN OCEAN TERRITORY"), None, Some("英属印度洋领地");
IQ IRQ => 368, Some("Iraq"), Some("IRAQ"), Some("the Republic of Iraq"), Some("伊拉克");
IR IRN => 364, Some("Iran (Islamic Republic of)"), Some("IRAN (ISLAMIC REPUBLIC OF)"), Some("the Islamic Republic of Iran"), Some("伊朗");
IS ISL => 352, Some("Iceland"), Some("ICELAND"), None, Some("冰岛");
IT ITA => 380, Some("Italy"), Some("ITALY"), Some("the Republic of Italy"), Some("意大利");
JE JEY => 832, Some("Jersey"), Some("JERSEY"), None, Some("泽西岛");
JM JAM => 388, Some("Jamaica"), Some("JAMAICA"), None, Some("牙买加");
JO JOR => 400, Some("Jordan"), Some("JORDAN"), Some("the Hashemite Kingdom of Jordan"), Some("约旦");
JP JPN => 392, Some("Japan"), Some("JAPAN"), None, Some("日本");
KE KEN => 404, Some("Kenya"), Some("KENYA"), Some("the Republic of Kenya"), Some("肯尼亚");
KG KGZ => 417, Some("Kyrgyzstan"), Some("KYRGYZSTAN"), Some("the Kyrgyz Republic"), Some("吉尔吉斯斯坦");
KH KHM => 116, Some("Cambodia"), Some("CAMBODIA"), Some("the Kingdom of Cambodia"), Some("柬埔寨");
KI KIR => 296, Some("Kiribati"), Some("KIRIBATI"), Some("the Republic of Kiribati"), Some("基里巴斯");
KM COM => 174, Some("Comoros (the)"), Some("COMOROS"), Some("the Union of the Comoros"), Some("科摩罗");
KN KNA => 659, Some("Saint Kitts and Nevis"), Some("SAINT KITTS AND NEVIS"), None, Some("圣基茨和尼维斯");
KP PRK => 408, Some("Korea (the Democratic People's Republic of)"), Some("KOREA (DEMOCRATIC PEOPLE'S REPUBLIC OF)"), Some("the Democratic People's Republic of Korea"), Some("朝鲜");
KR KOR => 410, Some("Korea (the Republic of)"), Some("KOREA, REPUBLIC OF"), Some("the Republic of Korea"), Some("韩国");
KW KWT => 414, Some("Kuwait"), Some("KUWAIT"), Some("the State of Kuwait"), Some("科威特");
KY CYM => 136, Some("Cayman Islands (the)"), Some("CAYMAN ISLANDS"), None, Some("开曼群岛");
KZ KAZ => 398, Some("Kazakhstan"), Some("KAZAKHSTAN"), Some("the Republic of Kazakhstan"), Some("哈萨克斯坦");
LA LAO => 418, Some("Lao People's Democratic Republic (the)"), Some("LAO PEOPLE'S DEMOCRATIC REPUBLIC"), Some("the Lao People's Democratic Republic"), Some("老挝");
LB LBN => 422, Some("Lebanon"), Some("LEBANON"), Some("the Lebanese Republic"), Some("黎巴嫩");
LC LCA => 662, Some("Saint Lucia"), Some("SAINT LUCIA"), None, Some("圣卢西亚");
LI LIE => 438, Some("Liechtenstein"), Some("LIECHTENSTEIN"), Some("the Principality of Liechtenstein"), Some("列支敦士登");
LK LKA => 144, Some("Sri Lanka"), Some("SRI LANKA"), Some("the Democratic Socialist Republic of Sri Lanka"), Some("斯里兰卡");
LR LBR => 430, Some("Liberia"), Some("LIBERIA"), Some("the Republic of Liberia"), Some("利比里亚");
LS LSO => 426, Some("Lesotho"), Some("LESOTHO"), Some("the Kingdom of Lesotho"), Some("莱索托");
LT LTU => 440, Some("Lithuania"), Some("LITHUANIA"), Some("the Republic of Lithuania"), Some("立陶宛");
LU LUX => 442, Some("Luxembourg"), Some("LUXEMBOURG"), Some("the Grand Duchy of Luxembourg"), Some("卢森堡");
LV LVA => 428, Some("Latvia"), Some("LATVIA"), Some("the Republic of Latvia"), Some("拉脱维亚");
LY LBY => 434, Some("Libya"), Some("LIBYA"), Some("the State of Libya"), Some("利比亚");
MA MAR => 504, Some("Morocco"), Some("MOROCCO"), Some("the Kingdom of Morocco"), Some("摩洛哥");
MC MCO => 492, Some("Monaco"), Some("MONACO"), Some("the Principality of Monaco"), Some("摩纳哥");
MD MDA => 498, Some("Moldova (the Republic of)"), Some("MOLDOVA, REPUBLIC OF"), Some("the Republic of Moldova"), Some("摩尔多瓦");
ME MNE => 499, Some("Montenegro"), Some("MONTENEGRO"), None, Some("黑山");
MF MAF => 663, Some("Saint Martin (French part)"), Some("SAINT MARTIN (FRENCH PART)"), None, Some("法属圣马丁");
MG MDG => 450, Some("Madagascar"), Some("MADAGASCAR"), Some("the Republic of Madagascar"), Some("马达加斯加");
MH MHL => 584, Some("Marshall Islands (the)"), Some("MARSHALL ISLANDS"), Some("the Republic of the Marshall Islands"), Some("马绍尔群岛");
MK MKD => 807, Some("North Macedonia"), Some("NORTH MACEDONIA"), Some("the Republic of North Macedonia"), Some("前南马其顿");
ML MLI => 466, Some("Mali"), Some("MALI"), Some("the Republic of Mali"), Some("马里");
MM MMR => 104, Some("Myanmar"), Some("MYANMAR"), Some("the Republic of the Union of Myanmar"), Some("缅甸");
MN MNG => 496, Some("Mongolia"), Some("MONGOLIA"), None, Some("蒙古");
MO MAC => 446, Some("Macao"), Some("MACAO"), Some("Macao Special Administrative Region of China"), Some("澳门");
MP MNP => 580, Some("Northern Mariana Islands (the)"), Some("NORTHERN MARIANA ISLANDS"), Some("the Commonwealth of the Northern Mariana Islands"), Some("北马里亚纳");
MQ MTQ => 474, Some("Martinique"), Some("MARTINIQUE"), None, Some("马提尼克");
MR MRT => 478, Some("Mauritania"), Some("MAURITANIA"), Some("the Islamic Republic of Mauritania"), Some("毛利塔尼亚");
MS MSR => 500, Some("Montserrat"), Some("MONTSERRAT"), None, Some("蒙特塞拉特");
MT MLT => 470, Some("Malta"), Some("MALTA"), Some("the Republic of Malta"), Some("马耳他");
MU MUS => 480, Some("Mauritius"), Some("MAURITIUS"), Some("the Republic of Mauritius"), Some("毛里求斯");
MV MDV => 462, Some("Maldives"), Some("MALDIVES"), Some("the Republic of Maldives"), Some("马尔代夫");
MW MWI => 454, Some("Malawi"), Some("MALAWI"), Some("the Republic of Malawi"), Some("马拉维");
MX MEX => 484, Some("Mexico"), Some("MEXICO"), Some("the United Mexican States"), Some("墨西哥");
MY MYS => 458, Some("Malaysia"), Some("MALAYSIA"), None, Some("马来西亚");
MZ MOZ => 508, Some("Mozambique"), Some("MOZAMBIQUE"), Some("the Republic of Mozambique"), Some("莫桑比克");
NA NAM => 516, Some("Namibia"), Some("NAMIBIA"), Some("the Republic of Namibia"), Some("纳米比亚");
NC NCL => 540, Some("New Caledonia"), Some("NEW CALEDONIA"), None, Some("新喀里多尼亚");
NE NER => 562, Some("Niger (the)"), Some("NIGER"), Some("the Republic of the Niger"), Some("尼日尔");
NF NFK => 574, Some("Norfolk Island"), Some("NORFOLK ISLAND"), None, Some("诺福克岛");
NG NGA => 566, Some("Nigeria"), Some("NIGERIA"), Some("the Federal Republic of Nigeria"), Some("尼日利亚");
NI NIC => 558, Some("Nicaragua"), Some("NICARAGUA"), Some("the Republic of Nicaragua"), Some("尼加拉瓜");
NL NLD => 528, Some("Netherlands (the)"), Some("NETHERLANDS"), Some("the Kingdom of the Netherlands"), Some("荷兰");
NO NOR => 578, Some("Norway"), Some("NORWAY"), Some("the Kingdom of Norway"), Some("挪威");
NP NPL => 524, Some("Nepal"), Some("NEPAL"), None, Some("尼泊尔");
NR NRU => 520, Some("Nauru"), Some("NAURU"), Some("the Republic of Nauru"), Some("瑙鲁");
NU NIU => 570, Some("Niue"), Some("NIUE"), None, Some("纽埃");
NZ NZL => 554, Some("New Zealand"), Some("NEW ZEALAND"), None, Some("新西兰");
OM OMN => 512, Some("Oman"), Some("OMAN"), Some("the Sultanate of Oman"), Some("阿曼");
PA PAN => 591, Some("Panama"), Some("PANAMA"), Some("the Republic of Panama"), Some("巴拿马");
PE PER => 604, Some("Peru"), Some("PERU"), Some("the Republic of Peru"), Some("秘鲁");
PF PYF => 258, Some("French Polynesia"), Some("FRENCH POLYNESIA"), None, Some("法属波利尼西亚");
PG PNG => 598, Some("Papua New Guinea"), Some("PAPUA NEW GUINEA"), Some("the Independent State of Papua New Guinea"), Some("巴布亚新几内亚");
PH PHL => 608, Some("Philippines (the)"), Some("PHILIPPINES"), Some("the Republic of the Philippines"), Some("菲律宾");
PK PAK => 586, Some("Pakistan"), Some("PAKISTAN"), Some("the Islamic Republic of Pakistan"), Some("巴基斯坦");
PL POL => 616, Some("Poland"), Some("POLAND"), Some("the Republic of Poland"), Some("波兰");
PM SPM => 666, Some("Saint Pierre and Miquelon"), Some("SAINT PIERRE AND MIQUELON"), None, Some("圣皮埃尔和密克隆");
PN PCN => 612, Some("Pitcairn"), Some("PITCAIRN"), None, Some("皮特凯恩");
PR PRI => 630, Some("Puerto Rico"), Some("PUERTO RICO"), None, Some("波多黎各");
PS PSE => 275, Some("Palestine, State of"), Some("PALESTINE, STATE OF"), Some("the State of Palestine"), Some("巴勒斯坦");
PT PRT => 620, Some("Portugal"), Some("PORTUGAL"), Some("the Portuguese Republic"), Some("葡萄牙");
PW PLW => 585, Some("Palau"), Some("PALAU"), Some("the Republic of Palau"), Some("帕劳");
PY PRY => 600, Some("Paraguay"), Some("PARAGUAY"), Some("the Republic of Paraguay"), Some("巴拉圭");
QA QAT => 634, Some("Qatar"), Some("QATAR"), Some("the State of Qatar"), Some("卡塔尔");
RE REU => 638, Some("Réunion"), Some("RÉUNION"), None, Some("留尼汪");
RO ROU => 642, Some("Romania"), Some("ROMANIA"), None, Some("罗马尼亚");
RS SRB => 688, Some("Serbia"), Some("SERBIA"), Some("the Republic of Serbia"), Some("塞尔维亚");
RU RUS => 643, Some("Russian Federation (the)"), Some("RUSSIAN FEDERATION"), Some("the Russian Federation"), Some("俄罗斯联邦");
RW RWA => 646, Some("Rwanda"), Some("RWANDA"), Some("the Republic of Rwanda"), Some("卢旺达");
SA SAU => 682, Some("Saudi Arabia"), Some("SAUDI ARABIA"), Some("the Kingdom of Saudi Arabia"), Some("沙特阿拉伯");
SB SLB => 90, Some("Solomon Islands"), Some("SOLOMON ISLANDS"), None, Some("所罗门群岛");
SC SYC => 690, Some("Seychelles"), Some("SEYCHELLES"), Some("the Republic of Seychelles"), Some("塞舌尔");
SD SDN => 729, Some("Sudan (the)"), Some("SUDAN"), Some("the Republic of the Sudan"), Some("苏丹");
SE SWE => 752, Some("Sweden"), Some("SWEDEN"), Some("the Kingdom of Sweden"), Some("瑞典");
SG SGP => 702, Some("Singapore"), Some("SINGAPORE"), Some("the Republic of Singapore"), Some("新加坡");
SH SHN => 654, Some("Saint Helena, Ascension and Tristan da Cunha"), Some("SAINT HELENA, ASCENSION AND TRISTAN DA CUNHA"), None, Some("圣赫勒拿");
SI SVN => 705, Some("Slovenia"), Some("SLOVENIA"), Some("the Republic of Slovenia"), Some("斯洛文尼亚");
SJ SJM => 744, Some("Svalbard and Jan Mayen"), Some("SVALBARD AND JAN MAYEN"), None, Some("斯瓦尔巴岛和扬马延岛");
SK SVK => 703, Some("Slovakia"), Some("SLOVAKIA"), Some("the Slovak Republic"), Some("斯洛伐克");
SL SLE => 694, Some("Sierra Leone"), Some("SIERRA LEONE"), Some("the Republic of Sierra Leone"), Some("塞拉利昂");
SM SMR => 674, Some("San Marino"), Some("SAN MARINO"), Some("the Republic of San Marino"), Some("圣马力诺");
SN SEN => 686, Some("Senegal"), Some("SENEGAL"), Some("the Republic of Senegal"), Some("塞内加尔");
SO SOM => 706, Some("Somalia"), Some("SOMALIA"), Some("the Federal Republic of Somalia"), Some("索马里");
SR SUR => 740, Some("Suriname"), Some("SURINAME"), Some("the Republic of Suriname"), Some("苏里南");
SS SSD => 728, Some("South Sudan"), Some("SOUTH SUDAN"), Some("the Republic of South Sudan"), Some("南苏丹");
ST STP => 678, Some("Sao Tome and Principe"), Some("SAO TOME AND PRINCIPE"), Some("the Democratic Republic of Sao Tome and Principe"), Some("圣多美和普林西比");
SV SLV => 222, Some("El Salvador"), Some("EL SALVADOR"), Some("the Republic of El Salvador"), Some("萨尔瓦多");
SX SXM => 534, Some("Sint Maarten (Dutch part)"), Some("SINT MAARTEN (DUTCH PART)"), None, Some("荷属圣马丁(自治国)");
SY SYR => 760, Some("Syrian Arab Republic (the)"), Some("SYRIAN ARAB REPUBLIC"), Some("the Syrian Arab Republic"), Some("叙利亚");
SZ SWZ => 748, Some("Eswatini"), Some("ESWATINI"), Some("the Kingdom of Eswatini"), Some("斯威士兰");
TC TCA => 796, Some("Turks and Caicos Islands (the)"), Some("TURKS AND CAICOS ISLANDS"), None, Some("特克斯和凯科斯群岛");
TD TCD => 148, Some("Chad"), Some("CHAD"), Some("the Republic of Chad"), Some("乍得");
TF ATF => 260, Some("French Southern Territories (the)"), Some("FRENCH SOUTHERN TERRITORIES"), None, Some("法属南部领地");
TG TGO => 768, Some("Togo"), Some("TOGO"), Some("the Togolese Republic"), Some("多哥");
TH THA => 764, Some("Thailand"), Some("THAILAND"), Some("the Kingdom of Thailand"), Some("泰国");
TJ TJK => 762, Some("Tajikistan"), Some("TAJIKISTAN"), Some("the Republic of Tajikistan"), Some("塔吉克斯坦");
TK TKL => 772, Some("Tokelau"), Some("TOKELAU"), None, Some("托克劳");
TL TLS => 626, Some("Timor-Leste"), Some("TIMOR-LESTE"), Some("the Democratic Republic of Timor-Leste"), Some("东帝汶");
TM TKM => 795, Some("Turkmenistan"), Some("TURKMENISTAN"), None, Some("土库曼斯坦");
TN TUN => 788, Some("Tunisia"), Some("TUNISIA"), Some("the Republic of Tunisia"), Some("突尼斯");
TO TON => 776, Some("Tonga"), Some("TONGA"), Some("the Kingdom of Tonga"), Some("汤加");
TR TUR => 792, Some("Türkiye"), Some("TÜRKİYE"), Some("the Republic of Türkiye"), Some("土耳其");
TT TTO => 780, Some("Trinidad and Tobago"), Some("TRINIDAD AND TOBAGO"), Some("the Republic of Trinidad and Tobago"), Some("特立尼达和多巴哥");
TV TUV => 798, Some("Tuvalu"), Some("TUVALU"), None, Some("图瓦卢");
TW TWN => 158, Some("Taiwan (Province of China)"), Some("TAIWAN, PROVINCE OF CHINA"), None, Some("台湾");
TZ TZA => 834, Some("Tanzania, the United Republic of"), Some("TANZANIA, UNITED REPUBLIC OF"), Some("the United Republic of Tanzania"), Some("坦桑尼亚");
UA UKR => 804, Some("Ukraine"), Some("UKRAINE"), None, Some("乌克兰");
UG UGA => 800, Some("Uganda"), Some("UGANDA"), Some("the Republic of Uganda"), Some("乌干达");
UM UMI => 581, Some("United States Minor Outlying Islands (the)"), Some("UNITED STATES MINOR OUTLYING ISLANDS"), None, Some("美国本土外小岛屿");
US USA => 840, Some("United States of America (the)"), Some("UNITED STATES OF AMERICA"), Some("the United States of America"), Some("美国");
UY URY => 858, Some("Uruguay"), Some("URUGUAY"), Some("the Eastern Republic of Uruguay"), Some("乌拉圭");
UZ UZB => 860, Some("Uzbekistan"), Some("UZBEKISTAN"), Some("the Republic of Uzbekistan"), Some("乌兹别克斯坦");
VA VAT => 336, Some("Holy See (the)"), Some("HOLY SEE"), None, Some("梵蒂冈");
VC VCT => 670, Some("Saint Vincent and the Grenadines"), Some("SAINT VINCENT AND THE GRENADINES"), None, Some("圣文森特和格林纳丁斯");
VE VEN => 862, Some("Venezuela (Bolivarian Republic of)"), Some("VENEZUELA (BOLIVARIAN REPUBLIC OF)"), Some("the Bolivarian Republic of Venezuela"), Some("委内瑞拉");
VG VGB => 92, Some("Virgin Islands (British)"), Some("VIRGIN ISLANDS (BRITISH)"), Some("British Virgin Islands (the)"), Some("英属维尔京群岛");
VI VIR => 850, Some("Virgin Islands (U.S.)"), Some("VIRGIN ISLANDS (U.S.)"), Some("the Virgin Islands of the United States"), Some("美属维尔京群岛");
VN VNM => 704, Some("Viet Nam"), Some("VIET NAM"), Some("the Socialist Republic of Viet Nam"), Some("越南");
VU VUT => 548, Some("Vanuatu"), Some("VANUATU"), Some("the Republic of Vanuatu"), Some("瓦努阿图");
WF WLF => 876, Some("Wallis and Futuna"), Some("WALLIS AND FUTUNA"), Some("Wallis and Futuna Islands"), Some("瓦利斯和富图纳");
WS WSM => 882, Some("Samoa"), Some("SAMOA"), Some("the Independent State of Samoa"), Some("萨摩亚");
YE YEM => 887, Some("Yemen"), Some("YEMEN"), Some("the Republic of Yemen"), Some("也门");
YT MYT => 175, Some("Mayotte"), Some("MAYOTTE"), None, Some("马约特");
ZA ZAF => 710, Some("South Africa"), Some("SOUTH AFRICA"), Some("the Republic of South Africa"), Some("南非");
ZM ZMB => 894, Some("Zambia"), Some("ZAMBIA"), Some("the Republic of Zambia"), Some("赞比亚");
ZW ZWE => 716, Some("Zimbabwe"), Some("ZIMBABWE"), Some("the Republic of Zimbabwe"), Some("津巴布韦");
}