package body ISO.Countries is -- *** Begin Methods/Member Functions *** function Name (This : Country) return String is begin case This.Key is when C_AF => return "Afghanistan"; when C_AL => return "Albania"; when C_DZ => return "Algeria"; when C_AS => return "American Samoa"; when C_AD => return "Andorra"; when C_AO => return "Angola"; when C_AI => return "Anguilla"; when C_AQ => return "Antarctica"; when C_AG => return "Antigua and Barbuda"; when C_AR => return "Argentina"; when C_AM => return "Armenia"; when C_AW => return "Aruba"; when C_AU => return "Australia"; when C_AT => return "Austria"; when C_AZ => return "Azerbaijan"; when C_BS => return "Bahamas (the)"; when C_BH => return "Bahrain"; when C_BD => return "Bangladesh"; when C_BB => return "Barbados"; when C_BY => return "Belarus"; when C_BE => return "Belgium"; when C_BZ => return "Belize"; when C_BJ => return "Benin"; when C_BM => return "Bermuda"; when C_BT => return "Bhutan"; when C_BO => return "Bolivia (Plurinational State of)"; when C_BQ => return "Bonaire, Sint Eustatius and Saba"; when C_BA => return "Bosnia and Herzegovina"; when C_BW => return "Botswana"; when C_BV => return "Bouvet Island"; when C_BR => return "Brazil"; when C_IO => return "British Indian Ocean Territory (the)"; when C_BN => return "Brunei Darussalam"; when C_BG => return "Bulgaria"; when C_BF => return "Burkina Faso"; when C_BI => return "Burundi"; when C_CV => return "Cabo Verde"; when C_KH => return "Cambodia"; when C_CM => return "Cameroon"; when C_CA => return "Canada"; when C_KY => return "Cayman Islands (the)"; when C_CF => return "Central African Republic (the)"; when C_TD => return "Chad"; when C_CL => return "Chile"; when C_CN => return "China"; when C_CX => return "Christmas Island"; when C_CC => return "Cocos (Keeling) Islands (the)"; when C_CO => return "Colombia"; when C_KM => return "Comoros (the)"; when C_CD => return "Congo (the Democratic Republic of the)"; when C_CG => return "Congo (the)"; when C_CK => return "Cook Islands (the)"; when C_CR => return "Costa Rica"; when C_HR => return "Croatia"; when C_CU => return "Cuba"; when C_CW => return "Curaçao"; when C_CY => return "Cyprus"; when C_CZ => return "Czechia"; when C_CI => return "Côte d'Ivoire"; when C_DK => return "Denmark"; when C_DJ => return "Djibouti"; when C_DM => return "Dominica"; when C_DO => return "Dominican Republic (the)"; when C_EC => return "Ecuador"; when C_EG => return "Egypt"; when C_SV => return "El Salvador"; when C_GQ => return "Equatorial Guinea"; when C_ER => return "Eritrea"; when C_EE => return "Estonia"; when C_SZ => return "Eswatini"; when C_ET => return "Ethiopia"; when C_FK => return "Falkland Islands (the) [Malvinas]"; when C_FO => return "Faroe Islands (the)"; when C_FJ => return "Fiji"; when C_FI => return "Finland"; when C_FR => return "France"; when C_GF => return "French Guiana"; when C_PF => return "French Polynesia"; when C_TF => return "French Southern Territories (the)"; when C_GA => return "Gabon"; when C_GM => return "Gambia (the)"; when C_GE => return "Georgia"; when C_DE => return "Germany"; when C_GH => return "Ghana"; when C_GI => return "Gibraltar"; when C_GR => return "Greece"; when C_GL => return "Greenland"; when C_GD => return "Grenada"; when C_GP => return "Guadeloupe"; when C_GU => return "Guam"; when C_GT => return "Guatemala"; when C_GG => return "Guernsey"; when C_GN => return "Guinea"; when C_GW => return "Guinea-Bissau"; when C_GY => return "Guyana"; when C_HT => return "Haiti"; when C_HM => return "Heard Island and McDonald Islands"; when C_VA => return "Holy See (the)"; when C_HN => return "Honduras"; when C_HK => return "Hong Kong"; when C_HU => return "Hungary"; when C_IS => return "Iceland"; when C_IN => return "India"; when C_ID => return "Indonesia"; when C_IR => return "Iran (Islamic Republic of)"; when C_IQ => return "Iraq"; when C_IE => return "Ireland"; when C_IM => return "Isle of Man"; when C_IL => return "Israel"; when C_IT => return "Italy"; when C_JM => return "Jamaica"; when C_JP => return "Japan"; when C_JE => return "Jersey"; when C_JO => return "Jordan"; when C_KZ => return "Kazakhstan"; when C_KE => return "Kenya"; when C_KI => return "Kiribati"; when C_KP => return "Korea (the Democratic People's Republic of)"; when C_KR => return "Korea (the Republic of)"; when C_KW => return "Kuwait"; when C_KG => return "Kyrgyzstan"; when C_LA => return "Lao People's Democratic Republic (the)"; when C_LV => return "Latvia"; when C_LB => return "Lebanon"; when C_LS => return "Lesotho"; when C_LR => return "Liberia"; when C_LY => return "Libya"; when C_LI => return "Liechtenstein"; when C_LT => return "Lithuania"; when C_LU => return "Luxembourg"; when C_MO => return "Macao"; when C_MG => return "Madagascar"; when C_MW => return "Malawi"; when C_MY => return "Malaysia"; when C_MV => return "Maldives"; when C_ML => return "Mali"; when C_MT => return "Malta"; when C_MH => return "Marshall Islands (the)"; when C_MQ => return "Martinique"; when C_MR => return "Mauritania"; when C_MU => return "Mauritius"; when C_YT => return "Mayotte"; when C_MX => return "Mexico"; when C_FM => return "Micronesia (Federated States of)"; when C_MD => return "Moldova (the Republic of)"; when C_MC => return "Monaco"; when C_MN => return "Mongolia"; when C_ME => return "Montenegro"; when C_MS => return "Montserrat"; when C_MA => return "Morocco"; when C_MZ => return "Mozambique"; when C_MM => return "Myanmar"; when C_NA => return "Namibia"; when C_NR => return "Nauru"; when C_NP => return "Nepal"; when C_NL => return "Netherlands (Kingdom of the)"; when C_NC => return "New Caledonia"; when C_NZ => return "New Zealand"; when C_NI => return "Nicaragua"; when C_NE => return "Niger (the)"; when C_NG => return "Nigeria"; when C_NU => return "Niue"; when C_NF => return "Norfolk Island"; when C_MK => return "North Macedonia"; when C_MP => return "Northern Mariana Islands (the)"; when C_NO => return "Norway"; when C_OM => return "Oman"; when C_PK => return "Pakistan"; when C_PW => return "Palau"; when C_PS => return "Palestine, State of"; when C_PA => return "Panama"; when C_PG => return "Papua New Guinea"; when C_PY => return "Paraguay"; when C_PE => return "Peru"; when C_PH => return "Philippines (the)"; when C_PN => return "Pitcairn"; when C_PL => return "Poland"; when C_PT => return "Portugal"; when C_PR => return "Puerto Rico"; when C_QA => return "Qatar"; when C_RO => return "Romania"; when C_RU => return "Russian Federation (the)"; when C_RW => return "Rwanda"; when C_RE => return "Réunion"; when C_BL => return "Saint Barthélemy"; when C_SH => return "Saint Helena, Ascension and Tristan da Cunha"; when C_KN => return "Saint Kitts and Nevis"; when C_LC => return "Saint Lucia"; when C_MF => return "Saint Martin (French part)"; when C_PM => return "Saint Pierre and Miquelon"; when C_VC => return "Saint Vincent and the Grenadines"; when C_WS => return "Samoa"; when C_SM => return "San Marino"; when C_ST => return "Sao Tome and Principe"; when C_SA => return "Saudi Arabia"; when C_SN => return "Senegal"; when C_RS => return "Serbia"; when C_SC => return "Seychelles"; when C_SL => return "Sierra Leone"; when C_SG => return "Singapore"; when C_SX => return "Sint Maarten (Dutch part)"; when C_SK => return "Slovakia"; when C_SI => return "Slovenia"; when C_SB => return "Solomon Islands"; when C_SO => return "Somalia"; when C_ZA => return "South Africa"; when C_GS => return "South Georgia and the South Sandwich Islands"; when C_SS => return "South Sudan"; when C_ES => return "Spain"; when C_LK => return "Sri Lanka"; when C_SD => return "Sudan (the)"; when C_SR => return "Suriname"; when C_SJ => return "Svalbard and Jan Mayen"; when C_SE => return "Sweden"; when C_CH => return "Switzerland"; when C_SY => return "Syrian Arab Republic (the)"; when C_TW => return "Taiwan (Province of China)"; when C_TJ => return "Tajikistan"; when C_TZ => return "Tanzania, the United Republic of"; when C_TH => return "Thailand"; when C_TL => return "Timor-Leste"; when C_TG => return "Togo"; when C_TK => return "Tokelau"; when C_TO => return "Tonga"; when C_TT => return "Trinidad and Tobago"; when C_TN => return "Tunisia"; when C_TM => return "Turkmenistan"; when C_TC => return "Turks and Caicos Islands (the)"; when C_TV => return "Tuvalu"; when C_TR => return "Türkiye"; when C_UG => return "Uganda"; when C_UA => return "Ukraine"; when C_AE => return "United Arab Emirates (the)"; when C_GB => return "United Kingdom of Great Britain and Northern Ireland (the)"; when C_UM => return "United States Minor Outlying Islands (the)"; when C_US => return "United States of America (the)"; when C_UY => return "Uruguay"; when C_UZ => return "Uzbekistan"; when C_VU => return "Vanuatu"; when C_VE => return "Venezuela (Bolivarian Republic of)"; when C_VN => return "Viet Nam"; when C_VG => return "Virgin Islands (British)"; when C_VI => return "Virgin Islands (U.S.)"; when C_WF => return "Wallis and Futuna"; when C_EH => return "Western Sahara*"; when C_YE => return "Yemen"; when C_ZM => return "Zambia"; when C_ZW => return "Zimbabwe"; when C_AX => return "Åland Islands"; when C_ZZ => return "Undefined"; end case; end Name; function Alpha2 (This : Country) return Alpha2_Code is begin case This.Key is when C_AF => return "AF"; when C_AL => return "AL"; when C_DZ => return "DZ"; when C_AS => return "AS"; when C_AD => return "AD"; when C_AO => return "AO"; when C_AI => return "AI"; when C_AQ => return "AQ"; when C_AG => return "AG"; when C_AR => return "AR"; when C_AM => return "AM"; when C_AW => return "AW"; when C_AU => return "AU"; when C_AT => return "AT"; when C_AZ => return "AZ"; when C_BS => return "BS"; when C_BH => return "BH"; when C_BD => return "BD"; when C_BB => return "BB"; when C_BY => return "BY"; when C_BE => return "BE"; when C_BZ => return "BZ"; when C_BJ => return "BJ"; when C_BM => return "BM"; when C_BT => return "BT"; when C_BO => return "BO"; when C_BQ => return "BQ"; when C_BA => return "BA"; when C_BW => return "BW"; when C_BV => return "BV"; when C_BR => return "BR"; when C_IO => return "IO"; when C_BN => return "BN"; when C_BG => return "BG"; when C_BF => return "BF"; when C_BI => return "BI"; when C_CV => return "CV"; when C_KH => return "KH"; when C_CM => return "CM"; when C_CA => return "CA"; when C_KY => return "KY"; when C_CF => return "CF"; when C_TD => return "TD"; when C_CL => return "CL"; when C_CN => return "CN"; when C_CX => return "CX"; when C_CC => return "CC"; when C_CO => return "CO"; when C_KM => return "KM"; when C_CD => return "CD"; when C_CG => return "CG"; when C_CK => return "CK"; when C_CR => return "CR"; when C_HR => return "HR"; when C_CU => return "CU"; when C_CW => return "CW"; when C_CY => return "CY"; when C_CZ => return "CZ"; when C_CI => return "CI"; when C_DK => return "DK"; when C_DJ => return "DJ"; when C_DM => return "DM"; when C_DO => return "DO"; when C_EC => return "EC"; when C_EG => return "EG"; when C_SV => return "SV"; when C_GQ => return "GQ"; when C_ER => return "ER"; when C_EE => return "EE"; when C_SZ => return "SZ"; when C_ET => return "ET"; when C_FK => return "FK"; when C_FO => return "FO"; when C_FJ => return "FJ"; when C_FI => return "FI"; when C_FR => return "FR"; when C_GF => return "GF"; when C_PF => return "PF"; when C_TF => return "TF"; when C_GA => return "GA"; when C_GM => return "GM"; when C_GE => return "GE"; when C_DE => return "DE"; when C_GH => return "GH"; when C_GI => return "GI"; when C_GR => return "GR"; when C_GL => return "GL"; when C_GD => return "GD"; when C_GP => return "GP"; when C_GU => return "GU"; when C_GT => return "GT"; when C_GG => return "GG"; when C_GN => return "GN"; when C_GW => return "GW"; when C_GY => return "GY"; when C_HT => return "HT"; when C_HM => return "HM"; when C_VA => return "VA"; when C_HN => return "HN"; when C_HK => return "HK"; when C_HU => return "HU"; when C_IS => return "IS"; when C_IN => return "IN"; when C_ID => return "ID"; when C_IR => return "IR"; when C_IQ => return "IQ"; when C_IE => return "IE"; when C_IM => return "IM"; when C_IL => return "IL"; when C_IT => return "IT"; when C_JM => return "JM"; when C_JP => return "JP"; when C_JE => return "JE"; when C_JO => return "JO"; when C_KZ => return "KZ"; when C_KE => return "KE"; when C_KI => return "KI"; when C_KP => return "KP"; when C_KR => return "KR"; when C_KW => return "KW"; when C_KG => return "KG"; when C_LA => return "LA"; when C_LV => return "LV"; when C_LB => return "LB"; when C_LS => return "LS"; when C_LR => return "LR"; when C_LY => return "LY"; when C_LI => return "LI"; when C_LT => return "LT"; when C_LU => return "LU"; when C_MO => return "MO"; when C_MG => return "MG"; when C_MW => return "MW"; when C_MY => return "MY"; when C_MV => return "MV"; when C_ML => return "ML"; when C_MT => return "MT"; when C_MH => return "MH"; when C_MQ => return "MQ"; when C_MR => return "MR"; when C_MU => return "MU"; when C_YT => return "YT"; when C_MX => return "MX"; when C_FM => return "FM"; when C_MD => return "MD"; when C_MC => return "MC"; when C_MN => return "MN"; when C_ME => return "ME"; when C_MS => return "MS"; when C_MA => return "MA"; when C_MZ => return "MZ"; when C_MM => return "MM"; when C_NA => return "NA"; when C_NR => return "NR"; when C_NP => return "NP"; when C_NL => return "NL"; when C_NC => return "NC"; when C_NZ => return "NZ"; when C_NI => return "NI"; when C_NE => return "NE"; when C_NG => return "NG"; when C_NU => return "NU"; when C_NF => return "NF"; when C_MK => return "MK"; when C_MP => return "MP"; when C_NO => return "NO"; when C_OM => return "OM"; when C_PK => return "PK"; when C_PW => return "PW"; when C_PS => return "PS"; when C_PA => return "PA"; when C_PG => return "PG"; when C_PY => return "PY"; when C_PE => return "PE"; when C_PH => return "PH"; when C_PN => return "PN"; when C_PL => return "PL"; when C_PT => return "PT"; when C_PR => return "PR"; when C_QA => return "QA"; when C_RO => return "RO"; when C_RU => return "RU"; when C_RW => return "RW"; when C_RE => return "RE"; when C_BL => return "BL"; when C_SH => return "SH"; when C_KN => return "KN"; when C_LC => return "LC"; when C_MF => return "MF"; when C_PM => return "PM"; when C_VC => return "VC"; when C_WS => return "WS"; when C_SM => return "SM"; when C_ST => return "ST"; when C_SA => return "SA"; when C_SN => return "SN"; when C_RS => return "RS"; when C_SC => return "SC"; when C_SL => return "SL"; when C_SG => return "SG"; when C_SX => return "SX"; when C_SK => return "SK"; when C_SI => return "SI"; when C_SB => return "SB"; when C_SO => return "SO"; when C_ZA => return "ZA"; when C_GS => return "GS"; when C_SS => return "SS"; when C_ES => return "ES"; when C_LK => return "LK"; when C_SD => return "SD"; when C_SR => return "SR"; when C_SJ => return "SJ"; when C_SE => return "SE"; when C_CH => return "CH"; when C_SY => return "SY"; when C_TW => return "TW"; when C_TJ => return "TJ"; when C_TZ => return "TZ"; when C_TH => return "TH"; when C_TL => return "TL"; when C_TG => return "TG"; when C_TK => return "TK"; when C_TO => return "TO"; when C_TT => return "TT"; when C_TN => return "TN"; when C_TM => return "TM"; when C_TC => return "TC"; when C_TV => return "TV"; when C_TR => return "TR"; when C_UG => return "UG"; when C_UA => return "UA"; when C_AE => return "AE"; when C_GB => return "GB"; when C_UM => return "UM"; when C_US => return "US"; when C_UY => return "UY"; when C_UZ => return "UZ"; when C_VU => return "VU"; when C_VE => return "VE"; when C_VN => return "VN"; when C_VG => return "VG"; when C_VI => return "VI"; when C_WF => return "WF"; when C_EH => return "EH"; when C_YE => return "YE"; when C_ZM => return "ZM"; when C_ZW => return "ZW"; when C_AX => return "AX"; when C_ZZ => return "ZZ"; end case; end Alpha2; function Alpha3 (This : Country) return Alpha3_Code is begin case This.Key is when C_AF => return "AFG"; when C_AL => return "ALB"; when C_DZ => return "DZA"; when C_AS => return "ASM"; when C_AD => return "AND"; when C_AO => return "AGO"; when C_AI => return "AIA"; when C_AQ => return "ATA"; when C_AG => return "ATG"; when C_AR => return "ARG"; when C_AM => return "ARM"; when C_AW => return "ABW"; when C_AU => return "AUS"; when C_AT => return "AUT"; when C_AZ => return "AZE"; when C_BS => return "BHS"; when C_BH => return "BHR"; when C_BD => return "BGD"; when C_BB => return "BRB"; when C_BY => return "BLR"; when C_BE => return "BEL"; when C_BZ => return "BLZ"; when C_BJ => return "BEN"; when C_BM => return "BMU"; when C_BT => return "BTN"; when C_BO => return "BOL"; when C_BQ => return "BES"; when C_BA => return "BIH"; when C_BW => return "BWA"; when C_BV => return "BVT"; when C_BR => return "BRA"; when C_IO => return "IOT"; when C_BN => return "BRN"; when C_BG => return "BGR"; when C_BF => return "BFA"; when C_BI => return "BDI"; when C_CV => return "CPV"; when C_KH => return "KHM"; when C_CM => return "CMR"; when C_CA => return "CAN"; when C_KY => return "CYM"; when C_CF => return "CAF"; when C_TD => return "TCD"; when C_CL => return "CHL"; when C_CN => return "CHN"; when C_CX => return "CXR"; when C_CC => return "CCK"; when C_CO => return "COL"; when C_KM => return "COM"; when C_CD => return "COD"; when C_CG => return "COG"; when C_CK => return "COK"; when C_CR => return "CRI"; when C_HR => return "HRV"; when C_CU => return "CUB"; when C_CW => return "CUW"; when C_CY => return "CYP"; when C_CZ => return "CZE"; when C_CI => return "CIV"; when C_DK => return "DNK"; when C_DJ => return "DJI"; when C_DM => return "DMA"; when C_DO => return "DOM"; when C_EC => return "ECU"; when C_EG => return "EGY"; when C_SV => return "SLV"; when C_GQ => return "GNQ"; when C_ER => return "ERI"; when C_EE => return "EST"; when C_SZ => return "SWZ"; when C_ET => return "ETH"; when C_FK => return "FLK"; when C_FO => return "FRO"; when C_FJ => return "FJI"; when C_FI => return "FIN"; when C_FR => return "FRA"; when C_GF => return "GUF"; when C_PF => return "PYF"; when C_TF => return "ATF"; when C_GA => return "GAB"; when C_GM => return "GMB"; when C_GE => return "GEO"; when C_DE => return "DEU"; when C_GH => return "GHA"; when C_GI => return "GIB"; when C_GR => return "GRC"; when C_GL => return "GRL"; when C_GD => return "GRD"; when C_GP => return "GLP"; when C_GU => return "GUM"; when C_GT => return "GTM"; when C_GG => return "GGY"; when C_GN => return "GIN"; when C_GW => return "GNB"; when C_GY => return "GUY"; when C_HT => return "HTI"; when C_HM => return "HMD"; when C_VA => return "VAT"; when C_HN => return "HND"; when C_HK => return "HKG"; when C_HU => return "HUN"; when C_IS => return "ISL"; when C_IN => return "IND"; when C_ID => return "IDN"; when C_IR => return "IRN"; when C_IQ => return "IRQ"; when C_IE => return "IRL"; when C_IM => return "IMN"; when C_IL => return "ISR"; when C_IT => return "ITA"; when C_JM => return "JAM"; when C_JP => return "JPN"; when C_JE => return "JEY"; when C_JO => return "JOR"; when C_KZ => return "KAZ"; when C_KE => return "KEN"; when C_KI => return "KIR"; when C_KP => return "PRK"; when C_KR => return "KOR"; when C_KW => return "KWT"; when C_KG => return "KGZ"; when C_LA => return "LAO"; when C_LV => return "LVA"; when C_LB => return "LBN"; when C_LS => return "LSO"; when C_LR => return "LBR"; when C_LY => return "LBY"; when C_LI => return "LIE"; when C_LT => return "LTU"; when C_LU => return "LUX"; when C_MO => return "MAC"; when C_MG => return "MDG"; when C_MW => return "MWI"; when C_MY => return "MYS"; when C_MV => return "MDV"; when C_ML => return "MLI"; when C_MT => return "MLT"; when C_MH => return "MHL"; when C_MQ => return "MTQ"; when C_MR => return "MRT"; when C_MU => return "MUS"; when C_YT => return "MYT"; when C_MX => return "MEX"; when C_FM => return "FSM"; when C_MD => return "MDA"; when C_MC => return "MCO"; when C_MN => return "MNG"; when C_ME => return "MNE"; when C_MS => return "MSR"; when C_MA => return "MAR"; when C_MZ => return "MOZ"; when C_MM => return "MMR"; when C_NA => return "NAM"; when C_NR => return "NRU"; when C_NP => return "NPL"; when C_NL => return "NLD"; when C_NC => return "NCL"; when C_NZ => return "NZL"; when C_NI => return "NIC"; when C_NE => return "NER"; when C_NG => return "NGA"; when C_NU => return "NIU"; when C_NF => return "NFK"; when C_MK => return "MKD"; when C_MP => return "MNP"; when C_NO => return "NOR"; when C_OM => return "OMN"; when C_PK => return "PAK"; when C_PW => return "PLW"; when C_PS => return "PSE"; when C_PA => return "PAN"; when C_PG => return "PNG"; when C_PY => return "PRY"; when C_PE => return "PER"; when C_PH => return "PHL"; when C_PN => return "PCN"; when C_PL => return "POL"; when C_PT => return "PRT"; when C_PR => return "PRI"; when C_QA => return "QAT"; when C_RO => return "ROU"; when C_RU => return "RUS"; when C_RW => return "RWA"; when C_RE => return "REU"; when C_BL => return "BLM"; when C_SH => return "SHN"; when C_KN => return "KNA"; when C_LC => return "LCA"; when C_MF => return "MAF"; when C_PM => return "SPM"; when C_VC => return "VCT"; when C_WS => return "WSM"; when C_SM => return "SMR"; when C_ST => return "STP"; when C_SA => return "SAU"; when C_SN => return "SEN"; when C_RS => return "SRB"; when C_SC => return "SYC"; when C_SL => return "SLE"; when C_SG => return "SGP"; when C_SX => return "SXM"; when C_SK => return "SVK"; when C_SI => return "SVN"; when C_SB => return "SLB"; when C_SO => return "SOM"; when C_ZA => return "ZAF"; when C_GS => return "SGS"; when C_SS => return "SSD"; when C_ES => return "ESP"; when C_LK => return "LKA"; when C_SD => return "SDN"; when C_SR => return "SUR"; when C_SJ => return "SJM"; when C_SE => return "SWE"; when C_CH => return "CHE"; when C_SY => return "SYR"; when C_TW => return "TWN"; when C_TJ => return "TJK"; when C_TZ => return "TZA"; when C_TH => return "THA"; when C_TL => return "TLS"; when C_TG => return "TGO"; when C_TK => return "TKL"; when C_TO => return "TON"; when C_TT => return "TTO"; when C_TN => return "TUN"; when C_TM => return "TKM"; when C_TC => return "TCA"; when C_TV => return "TUV"; when C_TR => return "TUR"; when C_UG => return "UGA"; when C_UA => return "UKR"; when C_AE => return "ARE"; when C_GB => return "GBR"; when C_UM => return "UMI"; when C_US => return "USA"; when C_UY => return "URY"; when C_UZ => return "UZB"; when C_VU => return "VUT"; when C_VE => return "VEN"; when C_VN => return "VNM"; when C_VG => return "VGB"; when C_VI => return "VIR"; when C_WF => return "WLF"; when C_EH => return "ESH"; when C_YE => return "YEM"; when C_ZM => return "ZMB"; when C_ZW => return "ZWE"; when C_AX => return "ALA"; when C_ZZ => return "ZZZ"; end case; end Alpha3; function Numeric (This : Country) return Numeric_Code is begin case This.Key is when C_AF => return 004; when C_AL => return 008; when C_DZ => return 012; when C_AS => return 016; when C_AD => return 020; when C_AO => return 024; when C_AI => return 660; when C_AQ => return 010; when C_AG => return 028; when C_AR => return 032; when C_AM => return 051; when C_AW => return 533; when C_AU => return 036; when C_AT => return 040; when C_AZ => return 031; when C_BS => return 044; when C_BH => return 048; when C_BD => return 050; when C_BB => return 052; when C_BY => return 112; when C_BE => return 056; when C_BZ => return 084; when C_BJ => return 204; when C_BM => return 060; when C_BT => return 064; when C_BO => return 068; when C_BQ => return 535; when C_BA => return 070; when C_BW => return 072; when C_BV => return 074; when C_BR => return 076; when C_IO => return 086; when C_BN => return 096; when C_BG => return 100; when C_BF => return 854; when C_BI => return 108; when C_CV => return 132; when C_KH => return 116; when C_CM => return 120; when C_CA => return 124; when C_KY => return 136; when C_CF => return 140; when C_TD => return 148; when C_CL => return 152; when C_CN => return 156; when C_CX => return 162; when C_CC => return 166; when C_CO => return 170; when C_KM => return 174; when C_CD => return 180; when C_CG => return 178; when C_CK => return 184; when C_CR => return 188; when C_HR => return 191; when C_CU => return 192; when C_CW => return 531; when C_CY => return 196; when C_CZ => return 203; when C_CI => return 384; when C_DK => return 208; when C_DJ => return 262; when C_DM => return 212; when C_DO => return 214; when C_EC => return 218; when C_EG => return 818; when C_SV => return 222; when C_GQ => return 226; when C_ER => return 232; when C_EE => return 233; when C_SZ => return 748; when C_ET => return 231; when C_FK => return 238; when C_FO => return 234; when C_FJ => return 242; when C_FI => return 246; when C_FR => return 250; when C_GF => return 254; when C_PF => return 258; when C_TF => return 260; when C_GA => return 266; when C_GM => return 270; when C_GE => return 268; when C_DE => return 276; when C_GH => return 288; when C_GI => return 292; when C_GR => return 300; when C_GL => return 304; when C_GD => return 308; when C_GP => return 312; when C_GU => return 316; when C_GT => return 320; when C_GG => return 831; when C_GN => return 324; when C_GW => return 624; when C_GY => return 328; when C_HT => return 332; when C_HM => return 334; when C_VA => return 336; when C_HN => return 340; when C_HK => return 344; when C_HU => return 348; when C_IS => return 352; when C_IN => return 356; when C_ID => return 360; when C_IR => return 364; when C_IQ => return 368; when C_IE => return 372; when C_IM => return 833; when C_IL => return 376; when C_IT => return 380; when C_JM => return 388; when C_JP => return 392; when C_JE => return 832; when C_JO => return 400; when C_KZ => return 398; when C_KE => return 404; when C_KI => return 296; when C_KP => return 408; when C_KR => return 410; when C_KW => return 414; when C_KG => return 417; when C_LA => return 418; when C_LV => return 428; when C_LB => return 422; when C_LS => return 426; when C_LR => return 430; when C_LY => return 434; when C_LI => return 438; when C_LT => return 440; when C_LU => return 442; when C_MO => return 446; when C_MG => return 450; when C_MW => return 454; when C_MY => return 458; when C_MV => return 462; when C_ML => return 466; when C_MT => return 470; when C_MH => return 584; when C_MQ => return 474; when C_MR => return 478; when C_MU => return 480; when C_YT => return 175; when C_MX => return 484; when C_FM => return 583; when C_MD => return 498; when C_MC => return 492; when C_MN => return 496; when C_ME => return 499; when C_MS => return 500; when C_MA => return 504; when C_MZ => return 508; when C_MM => return 104; when C_NA => return 516; when C_NR => return 520; when C_NP => return 524; when C_NL => return 528; when C_NC => return 540; when C_NZ => return 554; when C_NI => return 558; when C_NE => return 562; when C_NG => return 566; when C_NU => return 570; when C_NF => return 574; when C_MK => return 807; when C_MP => return 580; when C_NO => return 578; when C_OM => return 512; when C_PK => return 586; when C_PW => return 585; when C_PS => return 275; when C_PA => return 591; when C_PG => return 598; when C_PY => return 600; when C_PE => return 604; when C_PH => return 608; when C_PN => return 612; when C_PL => return 616; when C_PT => return 620; when C_PR => return 630; when C_QA => return 634; when C_RO => return 642; when C_RU => return 643; when C_RW => return 646; when C_RE => return 638; when C_BL => return 652; when C_SH => return 654; when C_KN => return 659; when C_LC => return 662; when C_MF => return 663; when C_PM => return 666; when C_VC => return 670; when C_WS => return 882; when C_SM => return 674; when C_ST => return 678; when C_SA => return 682; when C_SN => return 686; when C_RS => return 688; when C_SC => return 690; when C_SL => return 694; when C_SG => return 702; when C_SX => return 534; when C_SK => return 703; when C_SI => return 705; when C_SB => return 090; when C_SO => return 706; when C_ZA => return 710; when C_GS => return 239; when C_SS => return 728; when C_ES => return 724; when C_LK => return 144; when C_SD => return 729; when C_SR => return 740; when C_SJ => return 744; when C_SE => return 752; when C_CH => return 756; when C_SY => return 760; when C_TW => return 158; when C_TJ => return 762; when C_TZ => return 834; when C_TH => return 764; when C_TL => return 626; when C_TG => return 768; when C_TK => return 772; when C_TO => return 776; when C_TT => return 780; when C_TN => return 788; when C_TM => return 795; when C_TC => return 796; when C_TV => return 798; when C_TR => return 792; when C_UG => return 800; when C_UA => return 804; when C_AE => return 784; when C_GB => return 826; when C_UM => return 581; when C_US => return 840; when C_UY => return 858; when C_UZ => return 860; when C_VU => return 548; when C_VE => return 862; when C_VN => return 704; when C_VG => return 092; when C_VI => return 850; when C_WF => return 876; when C_EH => return 732; when C_YE => return 887; when C_ZM => return 894; when C_ZW => return 716; when C_AX => return 248; when C_ZZ => return 0; end case; end Numeric; function Country_Code (This : Country) return Ada.Locales.Country_Code is begin return Ada.Locales.Country_Code (Alpha2 (This)); end Country_Code; -- *** End Methods/Member Functions *** -- *** Creation Functions *** function From_Alpha2 (Code : Alpha2_Code) return Country is Result : constant Country := (Key => Country_Key'Value ("C_" & Code)); begin return Result; end From_Alpha2; function From_Alpha3 (Code : Alpha3_Code) return Country is begin return Result : Country do Result.Key := Alpha3_To_Key (Code); end return; end From_Alpha3; function From_Numeric (Number : Numeric_Code) return Country is begin return Result : Country do Result.Key := Numeric_To_Key (Number); end return; end From_Numeric; function From_Numeric (Number : String) return Country is Real_Number : constant Numeric_Code := Numeric_Code'Value (Number); begin return Result : Country do Result.Key := Numeric_To_Key (Real_Number); end return; end From_Numeric; function From_Country_Code (Code : Ada.Locales.Country_Code) return Country is begin return From_Alpha2 (Alpha2_Code (Code)); end From_Country_Code; function Init_Countries return All_Countries is begin return Result : All_Countries do for X in Country_Key'Range loop Result (X) := (Key => X); end loop; end return; end Init_Countries; -- *** End Creation Functions *** -- *** Begin Lookup table functions *** -- Lookup table to convert numeric to country key. function Numeric_To_Key (Numeric : Numeric_Code) return Country_Key is begin case Numeric is when 004 => return C_AF; when 008 => return C_AL; when 012 => return C_DZ; when 016 => return C_AS; when 020 => return C_AD; when 024 => return C_AO; when 660 => return C_AI; when 010 => return C_AQ; when 028 => return C_AG; when 032 => return C_AR; when 051 => return C_AM; when 533 => return C_AW; when 036 => return C_AU; when 040 => return C_AT; when 031 => return C_AZ; when 044 => return C_BS; when 048 => return C_BH; when 050 => return C_BD; when 052 => return C_BB; when 112 => return C_BY; when 056 => return C_BE; when 084 => return C_BZ; when 204 => return C_BJ; when 060 => return C_BM; when 064 => return C_BT; when 068 => return C_BO; when 535 => return C_BQ; when 070 => return C_BA; when 072 => return C_BW; when 074 => return C_BV; when 076 => return C_BR; when 086 => return C_IO; when 096 => return C_BN; when 100 => return C_BG; when 854 => return C_BF; when 108 => return C_BI; when 132 => return C_CV; when 116 => return C_KH; when 120 => return C_CM; when 124 => return C_CA; when 136 => return C_KY; when 140 => return C_CF; when 148 => return C_TD; when 152 => return C_CL; when 156 => return C_CN; when 162 => return C_CX; when 166 => return C_CC; when 170 => return C_CO; when 174 => return C_KM; when 180 => return C_CD; when 178 => return C_CG; when 184 => return C_CK; when 188 => return C_CR; when 191 => return C_HR; when 192 => return C_CU; when 531 => return C_CW; when 196 => return C_CY; when 203 => return C_CZ; when 384 => return C_CI; when 208 => return C_DK; when 262 => return C_DJ; when 212 => return C_DM; when 214 => return C_DO; when 218 => return C_EC; when 818 => return C_EG; when 222 => return C_SV; when 226 => return C_GQ; when 232 => return C_ER; when 233 => return C_EE; when 748 => return C_SZ; when 231 => return C_ET; when 238 => return C_FK; when 234 => return C_FO; when 242 => return C_FJ; when 246 => return C_FI; when 250 => return C_FR; when 254 => return C_GF; when 258 => return C_PF; when 260 => return C_TF; when 266 => return C_GA; when 270 => return C_GM; when 268 => return C_GE; when 276 => return C_DE; when 288 => return C_GH; when 292 => return C_GI; when 300 => return C_GR; when 304 => return C_GL; when 308 => return C_GD; when 312 => return C_GP; when 316 => return C_GU; when 320 => return C_GT; when 831 => return C_GG; when 324 => return C_GN; when 624 => return C_GW; when 328 => return C_GY; when 332 => return C_HT; when 334 => return C_HM; when 336 => return C_VA; when 340 => return C_HN; when 344 => return C_HK; when 348 => return C_HU; when 352 => return C_IS; when 356 => return C_IN; when 360 => return C_ID; when 364 => return C_IR; when 368 => return C_IQ; when 372 => return C_IE; when 833 => return C_IM; when 376 => return C_IL; when 380 => return C_IT; when 388 => return C_JM; when 392 => return C_JP; when 832 => return C_JE; when 400 => return C_JO; when 398 => return C_KZ; when 404 => return C_KE; when 296 => return C_KI; when 408 => return C_KP; when 410 => return C_KR; when 414 => return C_KW; when 417 => return C_KG; when 418 => return C_LA; when 428 => return C_LV; when 422 => return C_LB; when 426 => return C_LS; when 430 => return C_LR; when 434 => return C_LY; when 438 => return C_LI; when 440 => return C_LT; when 442 => return C_LU; when 446 => return C_MO; when 450 => return C_MG; when 454 => return C_MW; when 458 => return C_MY; when 462 => return C_MV; when 466 => return C_ML; when 470 => return C_MT; when 584 => return C_MH; when 474 => return C_MQ; when 478 => return C_MR; when 480 => return C_MU; when 175 => return C_YT; when 484 => return C_MX; when 583 => return C_FM; when 498 => return C_MD; when 492 => return C_MC; when 496 => return C_MN; when 499 => return C_ME; when 500 => return C_MS; when 504 => return C_MA; when 508 => return C_MZ; when 104 => return C_MM; when 516 => return C_NA; when 520 => return C_NR; when 524 => return C_NP; when 528 => return C_NL; when 540 => return C_NC; when 554 => return C_NZ; when 558 => return C_NI; when 562 => return C_NE; when 566 => return C_NG; when 570 => return C_NU; when 574 => return C_NF; when 807 => return C_MK; when 580 => return C_MP; when 578 => return C_NO; when 512 => return C_OM; when 586 => return C_PK; when 585 => return C_PW; when 275 => return C_PS; when 591 => return C_PA; when 598 => return C_PG; when 600 => return C_PY; when 604 => return C_PE; when 608 => return C_PH; when 612 => return C_PN; when 616 => return C_PL; when 620 => return C_PT; when 630 => return C_PR; when 634 => return C_QA; when 642 => return C_RO; when 643 => return C_RU; when 646 => return C_RW; when 638 => return C_RE; when 652 => return C_BL; when 654 => return C_SH; when 659 => return C_KN; when 662 => return C_LC; when 663 => return C_MF; when 666 => return C_PM; when 670 => return C_VC; when 882 => return C_WS; when 674 => return C_SM; when 678 => return C_ST; when 682 => return C_SA; when 686 => return C_SN; when 688 => return C_RS; when 690 => return C_SC; when 694 => return C_SL; when 702 => return C_SG; when 534 => return C_SX; when 703 => return C_SK; when 705 => return C_SI; when 090 => return C_SB; when 706 => return C_SO; when 710 => return C_ZA; when 239 => return C_GS; when 728 => return C_SS; when 724 => return C_ES; when 144 => return C_LK; when 729 => return C_SD; when 740 => return C_SR; when 744 => return C_SJ; when 752 => return C_SE; when 756 => return C_CH; when 760 => return C_SY; when 158 => return C_TW; when 762 => return C_TJ; when 834 => return C_TZ; when 764 => return C_TH; when 626 => return C_TL; when 768 => return C_TG; when 772 => return C_TK; when 776 => return C_TO; when 780 => return C_TT; when 788 => return C_TN; when 795 => return C_TM; when 796 => return C_TC; when 798 => return C_TV; when 792 => return C_TR; when 800 => return C_UG; when 804 => return C_UA; when 784 => return C_AE; when 826 => return C_GB; when 581 => return C_UM; when 840 => return C_US; when 858 => return C_UY; when 860 => return C_UZ; when 548 => return C_VU; when 862 => return C_VE; when 704 => return C_VN; when 092 => return C_VG; when 850 => return C_VI; when 876 => return C_WF; when 732 => return C_EH; when 887 => return C_YE; when 894 => return C_ZM; when 716 => return C_ZW; when 248 => return C_AX; when 0 => return C_ZZ; when others => return C_ZZ; end case; end Numeric_To_Key; -- Lookup table to convert alpha_3 string to country key. function Alpha3_To_Key (Alpha_3 : Alpha3_Code) return Country_Key is -- Match the alpha 3 with a lookup table similar to Country_Key type Alpha3_Key is (C_AFG, C_ALB, C_DZA, C_ASM, C_AND, C_AGO, C_AIA, C_ATA, C_ATG, C_ARG, C_ARM, C_ABW, C_AUS, C_AUT, C_AZE, C_BHS, C_BHR, C_BGD, C_BRB, C_BLR, C_BEL, C_BLZ, C_BEN, C_BMU, C_BTN, C_BOL, C_BES, C_BIH, C_BWA, C_BVT, C_BRA, C_IOT, C_BRN, C_BGR, C_BFA, C_BDI, C_CPV, C_KHM, C_CMR, C_CAN, C_CYM, C_CAF, C_TCD, C_CHL, C_CHN, C_CXR, C_CCK, C_COL, C_COM, C_COD, C_COG, C_COK, C_CRI, C_HRV, C_CUB, C_CUW, C_CYP, C_CZE, C_CIV, C_DNK, C_DJI, C_DMA, C_DOM, C_ECU, C_EGY, C_SLV, C_GNQ, C_ERI, C_EST, C_SWZ, C_ETH, C_FLK, C_FRO, C_FJI, C_FIN, C_FRA, C_GUF, C_PYF, C_ATF, C_GAB, C_GMB, C_GEO, C_DEU, C_GHA, C_GIB, C_GRC, C_GRL, C_GRD, C_GLP, C_GUM, C_GTM, C_GGY, C_GIN, C_GNB, C_GUY, C_HTI, C_HMD, C_VAT, C_HND, C_HKG, C_HUN, C_ISL, C_IND, C_IDN, C_IRN, C_IRQ, C_IRL, C_IMN, C_ISR, C_ITA, C_JAM, C_JPN, C_JEY, C_JOR, C_KAZ, C_KEN, C_KIR, C_PRK, C_KOR, C_KWT, C_KGZ, C_LAO, C_LVA, C_LBN, C_LSO, C_LBR, C_LBY, C_LIE, C_LTU, C_LUX, C_MAC, C_MDG, C_MWI, C_MYS, C_MDV, C_MLI, C_MLT, C_MHL, C_MTQ, C_MRT, C_MUS, C_MYT, C_MEX, C_FSM, C_MDA, C_MCO, C_MNG, C_MNE, C_MSR, C_MAR, C_MOZ, C_MMR, C_NAM, C_NRU, C_NPL, C_NLD, C_NCL, C_NZL, C_NIC, C_NER, C_NGA, C_NIU, C_NFK, C_MKD, C_MNP, C_NOR, C_OMN, C_PAK, C_PLW, C_PSE, C_PAN, C_PNG, C_PRY, C_PER, C_PHL, C_PCN, C_POL, C_PRT, C_PRI, C_QAT, C_ROU, C_RUS, C_RWA, C_REU, C_BLM, C_SHN, C_KNA, C_LCA, C_MAF, C_SPM, C_VCT, C_WSM, C_SMR, C_STP, C_SAU, C_SEN, C_SRB, C_SYC, C_SLE, C_SGP, C_SXM, C_SVK, C_SVN, C_SLB, C_SOM, C_ZAF, C_SGS, C_SSD, C_ESP, C_LKA, C_SDN, C_SUR, C_SJM, C_SWE, C_CHE, C_SYR, C_TWN, C_TJK, C_TZA, C_THA, C_TLS, C_TGO, C_TKL, C_TON, C_TTO, C_TUN, C_TKM, C_TCA, C_TUV, C_TUR, C_UGA, C_UKR, C_ARE, C_GBR, C_UMI, C_USA, C_URY, C_UZB, C_VUT, C_VEN, C_VNM, C_VGB, C_VIR, C_WLF, C_ESH, C_YEM, C_ZMB, C_ZWE, C_ALA, C_ZZZ); Key : constant Alpha3_Key := Alpha3_Key'Value ("C_" & Alpha_3); begin case Key is when C_AFG => return C_AF; when C_ALB => return C_AL; when C_DZA => return C_DZ; when C_ASM => return C_AS; when C_AND => return C_AD; when C_AGO => return C_AO; when C_AIA => return C_AI; when C_ATA => return C_AQ; when C_ATG => return C_AG; when C_ARG => return C_AR; when C_ARM => return C_AM; when C_ABW => return C_AW; when C_AUS => return C_AU; when C_AUT => return C_AT; when C_AZE => return C_AZ; when C_BHS => return C_BS; when C_BHR => return C_BH; when C_BGD => return C_BD; when C_BRB => return C_BB; when C_BLR => return C_BY; when C_BEL => return C_BE; when C_BLZ => return C_BZ; when C_BEN => return C_BJ; when C_BMU => return C_BM; when C_BTN => return C_BT; when C_BOL => return C_BO; when C_BES => return C_BQ; when C_BIH => return C_BA; when C_BWA => return C_BW; when C_BVT => return C_BV; when C_BRA => return C_BR; when C_IOT => return C_IO; when C_BRN => return C_BN; when C_BGR => return C_BG; when C_BFA => return C_BF; when C_BDI => return C_BI; when C_CPV => return C_CV; when C_KHM => return C_KH; when C_CMR => return C_CM; when C_CAN => return C_CA; when C_CYM => return C_KY; when C_CAF => return C_CF; when C_TCD => return C_TD; when C_CHL => return C_CL; when C_CHN => return C_CN; when C_CXR => return C_CX; when C_CCK => return C_CC; when C_COL => return C_CO; when C_COM => return C_KM; when C_COD => return C_CD; when C_COG => return C_CG; when C_COK => return C_CK; when C_CRI => return C_CR; when C_HRV => return C_HR; when C_CUB => return C_CU; when C_CUW => return C_CW; when C_CYP => return C_CY; when C_CZE => return C_CZ; when C_CIV => return C_CI; when C_DNK => return C_DK; when C_DJI => return C_DJ; when C_DMA => return C_DM; when C_DOM => return C_DO; when C_ECU => return C_EC; when C_EGY => return C_EG; when C_SLV => return C_SV; when C_GNQ => return C_GQ; when C_ERI => return C_ER; when C_EST => return C_EE; when C_SWZ => return C_SZ; when C_ETH => return C_ET; when C_FLK => return C_FK; when C_FRO => return C_FO; when C_FJI => return C_FJ; when C_FIN => return C_FI; when C_FRA => return C_FR; when C_GUF => return C_GF; when C_PYF => return C_PF; when C_ATF => return C_TF; when C_GAB => return C_GA; when C_GMB => return C_GM; when C_GEO => return C_GE; when C_DEU => return C_DE; when C_GHA => return C_GH; when C_GIB => return C_GI; when C_GRC => return C_GR; when C_GRL => return C_GL; when C_GRD => return C_GD; when C_GLP => return C_GP; when C_GUM => return C_GU; when C_GTM => return C_GT; when C_GGY => return C_GG; when C_GIN => return C_GN; when C_GNB => return C_GW; when C_GUY => return C_GY; when C_HTI => return C_HT; when C_HMD => return C_HM; when C_VAT => return C_VA; when C_HND => return C_HN; when C_HKG => return C_HK; when C_HUN => return C_HU; when C_ISL => return C_IS; when C_IND => return C_IN; when C_IDN => return C_ID; when C_IRN => return C_IR; when C_IRQ => return C_IQ; when C_IRL => return C_IE; when C_IMN => return C_IM; when C_ISR => return C_IL; when C_ITA => return C_IT; when C_JAM => return C_JM; when C_JPN => return C_JP; when C_JEY => return C_JE; when C_JOR => return C_JO; when C_KAZ => return C_KZ; when C_KEN => return C_KE; when C_KIR => return C_KI; when C_PRK => return C_KP; when C_KOR => return C_KR; when C_KWT => return C_KW; when C_KGZ => return C_KG; when C_LAO => return C_LA; when C_LVA => return C_LV; when C_LBN => return C_LB; when C_LSO => return C_LS; when C_LBR => return C_LR; when C_LBY => return C_LY; when C_LIE => return C_LI; when C_LTU => return C_LT; when C_LUX => return C_LU; when C_MAC => return C_MO; when C_MDG => return C_MG; when C_MWI => return C_MW; when C_MYS => return C_MY; when C_MDV => return C_MV; when C_MLI => return C_ML; when C_MLT => return C_MT; when C_MHL => return C_MH; when C_MTQ => return C_MQ; when C_MRT => return C_MR; when C_MUS => return C_MU; when C_MYT => return C_YT; when C_MEX => return C_MX; when C_FSM => return C_FM; when C_MDA => return C_MD; when C_MCO => return C_MC; when C_MNG => return C_MN; when C_MNE => return C_ME; when C_MSR => return C_MS; when C_MAR => return C_MA; when C_MOZ => return C_MZ; when C_MMR => return C_MM; when C_NAM => return C_NA; when C_NRU => return C_NR; when C_NPL => return C_NP; when C_NLD => return C_NL; when C_NCL => return C_NC; when C_NZL => return C_NZ; when C_NIC => return C_NI; when C_NER => return C_NE; when C_NGA => return C_NG; when C_NIU => return C_NU; when C_NFK => return C_NF; when C_MKD => return C_MK; when C_MNP => return C_MP; when C_NOR => return C_NO; when C_OMN => return C_OM; when C_PAK => return C_PK; when C_PLW => return C_PW; when C_PSE => return C_PS; when C_PAN => return C_PA; when C_PNG => return C_PG; when C_PRY => return C_PY; when C_PER => return C_PE; when C_PHL => return C_PH; when C_PCN => return C_PN; when C_POL => return C_PL; when C_PRT => return C_PT; when C_PRI => return C_PR; when C_QAT => return C_QA; when C_ROU => return C_RO; when C_RUS => return C_RU; when C_RWA => return C_RW; when C_REU => return C_RE; when C_BLM => return C_BL; when C_SHN => return C_SH; when C_KNA => return C_KN; when C_LCA => return C_LC; when C_MAF => return C_MF; when C_SPM => return C_PM; when C_VCT => return C_VC; when C_WSM => return C_WS; when C_SMR => return C_SM; when C_STP => return C_ST; when C_SAU => return C_SA; when C_SEN => return C_SN; when C_SRB => return C_RS; when C_SYC => return C_SC; when C_SLE => return C_SL; when C_SGP => return C_SG; when C_SXM => return C_SX; when C_SVK => return C_SK; when C_SVN => return C_SI; when C_SLB => return C_SB; when C_SOM => return C_SO; when C_ZAF => return C_ZA; when C_SGS => return C_GS; when C_SSD => return C_SS; when C_ESP => return C_ES; when C_LKA => return C_LK; when C_SDN => return C_SD; when C_SUR => return C_SR; when C_SJM => return C_SJ; when C_SWE => return C_SE; when C_CHE => return C_CH; when C_SYR => return C_SY; when C_TWN => return C_TW; when C_TJK => return C_TJ; when C_TZA => return C_TZ; when C_THA => return C_TH; when C_TLS => return C_TL; when C_TGO => return C_TG; when C_TKL => return C_TK; when C_TON => return C_TO; when C_TTO => return C_TT; when C_TUN => return C_TN; when C_TKM => return C_TM; when C_TCA => return C_TC; when C_TUV => return C_TV; when C_TUR => return C_TR; when C_UGA => return C_UG; when C_UKR => return C_UA; when C_ARE => return C_AE; when C_GBR => return C_GB; when C_UMI => return C_UM; when C_USA => return C_US; when C_URY => return C_UY; when C_UZB => return C_UZ; when C_VUT => return C_VU; when C_VEN => return C_VE; when C_VNM => return C_VN; when C_VGB => return C_VG; when C_VIR => return C_VI; when C_WLF => return C_WF; when C_ESH => return C_EH; when C_YEM => return C_YE; when C_ZMB => return C_ZM; when C_ZWE => return C_ZW; when C_ALA => return C_AX; when C_ZZZ => return C_ZZ; end case; end Alpha3_To_Key; -- *** End Lookup table functions *** end ISO.Countries;