Jump to content

Module:Country alias

Frae Wikipedia, the free beuk o knawledge
-- This module returns the country name or the flag name for a country,
-- based on the three-letter IOC/CGA/FINA alias.

--[[
The following country code is defined twice in names:
  ANG (workaround: added ANG_CGF)

The following names occur twice due to CGF/IOC/FINA differences
    Anguilla                         AIA, ANG_CGF
    Antigua and Barbuda              ANT, ATG
    Curaçao                          CUR, CUW
    Faroe Islands                    FAR, FRO
    French Polynesia                 PYF, TAH
    Iran                             IRI, IRN
    Ireland                          IRE, IRL - IRE is *only* for CGF apps
    Lebanon                          LBN, LIB
    Nicaragua                        NCA, NIC
    Refugee Olympic Team             ROA, ROT
    Romania                          ROM, ROU
    Saint Helena                     SHE, SHN
    Saint Vincent and the Grenadines SVG, VIN
    Sarawak                          SAR, SWK
    Singapore                        SGP, SIN
    South Africa                     RSA, SAF
    Tonga                            TGA, TON
    Trinidad and Tobago              TRI, TTO
    Turks and Caicos Islands         TCI, TKS
]]

local countries = {
	EXA = {                             -- example for testing
		name = "Example Kintra",
		{1951, "Flag1951.svg"},         -- year <= 1951
		{1995, "Flag1995.svg"},         -- 1951 < year <= 1995
		"Flag of test.svg",             -- otherwise
		["Paralympics"] = "Paralympics.svg",
		["Simmer Olympics"] = {
			[1948] = "SO1948.svg",
			[1952] = "SO1952.svg",
			[1980] = "SO1980.svg",
		},
		["Winter Olympics"] = {
			[1956] = "WO1956.svg",
			[1964] = "WO1964.svg",
		},
	},
	ADN = {
		name = "Aden",
		"Flag of the Colony of Aden.svg",
	},
	AFG = {
		name = "Afghanistan",
		{1973, "Flag of Afghanistan (1931–1973).svg"},
		{1978, "Flag of Afghanistan (1974–1978).svg"},
		{1987, "Flag of Afghanistan (1980-1987).svg"},
		{1992, "Flag of Afghanistan (1987–1992).svg"},
		{1996, "Flag of Afghanistan (1992-1996; 2001).svg"},
		{2003, "Flag of Afghanistan (2002-2004).svg"},
		"Flag of Afghanistan.svg",
	},
	AHO = {
		name = "Netherlands Antilles",
		{1982, "Flag of the Netherlands Antilles (1959-1986).svg"},
		{2010, "Flag of the Netherlands Antilles (1986-2010).svg"},
		"Flag of the Netherlands.svg",
		["Pan American Games"] = {
			[2011] = "Flag of PASO.svg",
		},
	},
	AIA = {
		name = "Anguilla",
		"Flag of Anguilla.svg",
	},
	ALB = {
		name = "Albanie",
		{1992, "Flag of Albania (1946-1992).svg"},
		"Flag of Albania.svg",
	},
	ALG = {
		name = "Algerie",
		"Flag of Algeria.svg",
	},
	AND = {
		name = "Andorrae",
		"Flag of Andorra.svg",
		["Simmer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	ANG = {
		name = "Angola",
		"Flag of Angola.svg",
	},
	ANG_CGF = {
		name = "Anguilla",
		"Flag of Anguilla.svg",
	},
	ANT = {
		name = "Antigua and Barbuda",
		{1966, "Missing Blue Ensign.svg"},
		"Flag of Antigua and Barbuda.svg",
	},
	ANZ = {
		name = "Australasie",
		"Flag of Australasian team for Olympic games.svg",
	},
	AOI = {
		name = "Independent Olympic Athletes",
		"Olympic flag.svg",
	},
	ARG = {
		name = "Argentinae",
		"Flag of Argentina.svg",
	},
	ARM = {
		name = "Armenie",
		"Flag of Armenia.svg",
	},
	ARU = {
		name = "Aruba",
		"Flag of Aruba.svg",
	},
	ASA = {
		name = "American Samoa",
		"Flag of American Samoa.svg",
	},
	ATG = {
		name = "Antigua and Barbuda",
		{1966, "Missing Blue Ensign.svg"},
		"Flag of Antigua and Barbuda.svg",
	},
	AUS = {
		name = "Australie",
		{1900, "Flag of the United Kingdom.svg"},
		{1909, "Flag of Australia 1903-1909.svg"},
		"Flag of Australia.svg",
		["Simmer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	AUT = {
		name = "Austrick",
		{1912, "Flag of the Habsburg Monarchy.svg"},
		"Flag of Austria.svg",
	},
	AZE = {
		name = "Azerbaijan",
		"Flag of Azerbaijan.svg",
	},
	BAH = {
		name = "Bahamas",
		{1923, "Flag of the Bahamas (1904-1923).svg"},
		{1953, "Flag of the Bahamas (1923-1953).svg"},
		{1964, "Flag of the Bahamas (1953-1964).svg"},
		{1972, "Bahamas Blue Ensign 1964.PNG"},
		"Flag of the Bahamas.svg",
	},
	BAN = {
		name = "Bangladesh",
		"Flag of Bangladesh.svg",
	},
	BAR = {
		name = "Barbados",
		{1966, "Flag of Barbados (1870–1966).png"},
		"Flag of Barbados.svg",
	},
	BDI = {
		name = "Burundi",
		"Flag of Burundi.svg",
	},
	BEL = {
		name = "Belgium",
		"Flag of Belgium (civil).svg",
		["Simmer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	BEN = {
		name = "Benin",
		{1990, "Flag of Benin (1975-1990).svg"},
		"Flag of Benin.svg",
	},
	BER = {
		name = "Bermuda",
		{1999, "Flag of Bermuda 1910-1999.svg"},
		"Flag of Bermuda.svg",
	},
	BGU = {
		name = "Breetish Guiana",
		{1906, "Flag of British Guiana (1875-1906).png"},
		{1919, "Flag of British Guiana (1906-1919).png"},
		{1955, "Flag of British Guiana (1919-1955).png"},
		"Flag of British Guiana (1955-1966).svg",
	},
	BHU = {
		name = "Bhutan",
		"Flag of Bhutan.svg",
	},
	BIH = {
		name = "Bosnie an Herzegovina",
		{1998, "Flag of Bosnia and Herzegovina (1992-1998).svg"},
		"Flag of Bosnia and Herzegovina.svg",
	},
	BIR = {
		name = "Burma",
		{1973, "Flag of Burma (1948-1974).svg"},
		{2010, "Flag of Myanmar (1974-2010).svg"},
		"Flag of Myanmar.svg",
	},
	BIZ = {
		name = "Belize",
		{1981, "Flag of British Honduras (1919-1981).svg"},
		"Flag of Belize.svg",
	},
	BLR = {
		name = "Belaroushie",
		{2012, "Flag of Belarus (1995-2012).svg"},
		"Flag of Belarus.svg",
	},
	BNB = {
		name = "Breetish North Borneo",
		"Flag of North Borneo 1948-1963.png",
	},
	BOH = {
		name = "Bohemie",
		"Flag of Bohemia.svg",
		["Simmer Olympics"] = {
			[1912] = "Bohemian Olympic Flag (1912).png",
		},
	},
	BOL = {
		name = "Bolivie",
		"Flag of Bolivia.svg",
	},
	BOT = {
		name = "Botswana",
		"Flag of Botswana.svg",
	},
	BRA = {
		name = "Brazil",
		{1960, "Flag of Brazil (1889-1960).svg"},
		{1968, "Flag of Brazil (1960-1968).svg"},
		{1992, "Flag of Brazil (1968-1992).svg"},
		"Flag of Brazil.svg",
	},
	BRN = {
		name = "Bahrain",
		{2001, "Flag of Bahrain (1972-2002).svg"},
		"Flag of Bahrain.svg",
	},
	BRU = {
		name = "Brunei",
		"Flag of Brunei.svg",
	},
	BUL = {
		name = "Bulgarie",
		{1948, "Flag of Bulgaria (1946-1948).svg"},
		{1967, "Flag of Bulgaria (1948-1967).svg"},
		{1971, "Flag of Bulgaria (1967-1971).svg"},
		{1990, "Flag of Bulgaria (1971-1990).svg"},
		"Flag of Bulgaria.svg",
	},
	BUR = {
		name = "Burkina Faso",
		"Flag of Burkina Faso.svg",
	},
	BWI = {
		name = "Breetish Wast Indies",
		"Flag of the West Indies Federation.svg",
	},
	CAF = {
		name = "Central African Republic",
		"Flag of the Central African Republic.svg",
	},
	CAM = {
		name = "Cambodie",
		{1970, "Flag of Cambodia.svg"},
		{1975, "Flag of the Khmer Republic.svg"},
		{1989, "Flag of the People's Republic of Kampuchea.svg"},
		{1991, "Flag of the State of Cambodia.svg"},
		{1993, "Flag of Cambodia under UNTAC.svg"},
		"Flag of Cambodia.svg",
	},
	CAN = {
		name = "Canadae",
		{1921, "Canadian Red Ensign 1868-1921.svg"},
		{1957, "Canadian Red Ensign 1921-1957.svg"},
		{1965, "Canadian Red Ensign (1957-1965).svg"},
		"Flag of Canada.svg",
		["Simmer Olympics"] = {
			[1936] = "Canadian Red Ensign 1921-1957 (with disc).svg",
		},
	},
	CAY = {
		name = "Cayman Islands",
		{1999, "Flag of the Cayman Islands (pre-1999).svg"},
		"Flag of the Cayman Islands.svg",
	},
	CEY = {
		name = "Ceylon",
		{1948, "British Ceylon flag.png"},
		{1951, "Flag of Ceylon (1948-1951).svg"},
		{1971, "Flag of Ceylon (1951-1972).svg"},
		"Flag of Sri Lanka.svg",
	},
	CGO = {
		name = "Congo",
		{1988, "Flag of the People's Republic of Congo.svg"},
		"Flag of the Republic of the Congo.svg",
	},
	CHA = {
		name = "Chad",
		"Flag of Chad.svg",
	},
	CHI = {
		name = "Chile",
		"Flag of Chile.svg",
	},
	CHN = {
		name = "Cheenae",
		"Flag of the People's Republic of China.svg",
	},
	CIV = {
		name = "Côte d'Ivoire",
		"Flag of Côte d'Ivoire.svg",
	},
	CMR = {
		name = "Cameroon",
		{1975, "Flag of Cameroon (1961-1975).svg"},
		"Flag of Cameroon.svg",
	},
	COD = {
		name = "DR Congo",
		{1971, "Flag of Congo-Kinshasa (1966-1971).svg"},
		{1996, "Flag of Zaire.svg"},
		{2003, "Flag of the Democratic Republic of the Congo (1997-2003).svg"},
		{2006, "Flag of the Democratic Republic of the Congo (2003-2006).svg"},
		"Flag of the Democratic Republic of the Congo.svg",
	},
	COK = {
		name = "Cook Islands",
		{1979, "Flag of the Cook Islands (1973-1979).svg"},
		"Flag of the Cook Islands.svg",
	},
	COL = {
		name = "Colombie",
		"Flag of Colombia.svg",
	},
	COM = {
		name = "Comoros",
		{1996, "Flag of the Comoros (1992-1996).svg"},
		{2001, "Flag of the Comoros (1996-2001).svg"},
		"Flag of the Comoros.svg",
	},
	COR = {
		name = "Korea",
		"Unification flag of Korea.svg",
		["Winter Olympics"] = {
			[2018] = "Unification flag of Korea (pre 2006).svg",
		},
	},
	CPV = {
		name = "Cape Verde",
		"Flag of Cape Verde.svg",
	},
	CRC = {
		name = "Costa Rica",
		"Flag of Costa Rica.svg",
	},
	CRO = {
		name = "Croatie",
		"Flag of Croatia.svg",
	},
	CUB = {
		name = "Cuba",
		"Flag of Cuba.svg",
	},
	CUR = {
		name = "Curaçao",
		"Flag of Curaçao.svg",
	},
	CUW = {
		name = "Curaçao",
		"Flag of Curaçao.svg",
	},
	CYP = {
		name = "Cyprus",
		{2006, "Flag of Cyprus (1960-2006).svg"},
		"Flag of Cyprus.svg",
	},
	CZE = {
		name = "Czech Republic",
		"Flag of the Czech Republic.svg",
	},
	DAH = {
		name = "Dahomey",
		"Flag of Benin.svg",
	},
	DEN = {
		name = "Denmark",
		"Flag of Denmark.svg",
		["Simmer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	DJI = {
		name = "Djibouti",
		"Flag of Djibouti.svg",
	},
	DMA = {
		name = "Dominica",
		{1965, "Flag of Dominica, 1955-1965.png"},
		{1978, "Flag of Dominica, 1965-1978.png"},
		{1981, "Flag of Dominica (1978-1981).svg"},
		{1988, "Flag of Dominica (1981-1988).svg"},
		{1990, "Flag of Dominica (1988-1990).svg"},
		"Flag of Dominica.svg",
	},
	DOM = {
		name = "Dominican Republic",
		"Flag of the Dominican Republic.svg",
	},
	ECU = {
		name = "Ecuador",
		"Flag of Ecuador.svg",
	},
	EGY = {
		name = "Egyp",
		{1914, "Flag of Egypt (1844-1867).svg"},
		{1922, "Flag of Egypt (1882-1922).svg"},
		{1952, "Flag of Egypt (1922–1958).svg"},
		{1958, "Flag of Egypt (1952-1958).svg"},
		{1971, "Flag of the United Arab Republic.svg"},
		{1984, "Flag of Egypt (1972-1984).svg"},
		"Flag of Egypt.svg",
	},
	ENG = {
		name = "Ingland",
		"Flag of England.svg",
	},
	ERI = {
		name = "Eritrea",
		"Flag of Eritrea.svg",
	},
	ESA = {
		name = "El Salvador",
		"Flag of El Salvador.svg",
	},
	ESP = {
		name = "Spain",
		{1931, "Flag of Spain (1785-1873 and 1875-1931).svg"},
		{1939, "Flag of Spain (1931 - 1939).svg"},
		{1977, "Flag of Spain (1945 - 1977).svg"},
		{1981, "Flag of Spain (1977 - 1981).svg"},
		"Flag of Spain.svg",
		["Simmer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	EST = {
		name = "Estonie",
		"Flag of Estonia.svg",
	},
	ETH = {
		name = "Ethiopie",
		{1974, "Flag of Ethiopia (1897-1936; 1941-1974).svg"},
		{1975, "Flag of Ethiopia (1974-1975).svg"},
		{1987, "Flag of Ethiopia (1975–1987).svg"},
		{1991, "Flag of Ethiopia (1987–1991).svg"},
		{1996, "Flag of Ethiopia (1991-1996).svg"},
		"Flag of Ethiopia.svg",
	},
	EUA = {
		name = "United Team of Germany",
		{1959, "Flag of Germany.svg"},
		"Flag of the German Olympic Team (1960-1968).svg",
	},
	EUN = {
		name = "Unified Team",
		"Olympic flag.svg",
		["Winter Paralympics"] = "Paralympics logo 1988-94.svg",
		["Paralympics"] = "Paralympics logo 1988-94.svg",
		["Simmer Paralympics"] = "Paralympics logo 1988-94.svg",
	},
	FAI = {
		name = "Falkland Islands",
		{1999, "Flag of the Falkland Islands (1948-1999).svg"},
		"Flag of the Falkland Islands.svg",
	},
	FAR = {
		name = "Faroe Islands",
		"Flag of the Faroe Islands.svg",
	},
	FIJ = {
		name = "Fiji",
		{1970, "Flag of Fiji 1924-1970.svg"},
		"Flag of Fiji.svg",
	},
	FIN = {
		name = "Finland",
		{1912, "Flag of Russia.svg"},
		"Flag of Finland.svg",
	},
	FINA = {
		name = "FINA Independent Athletes",
		"Fédération International de Natation Amateur flag.gif"
	},
	FRA = {
		name = "Fraunce",
		"Flag of France.svg",
		["Simmer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	FRG = {
		name = "Wast Germany",
		{1959, "Flag of Germany.svg"},
		{1968, "Flag of the German Olympic Team (1960-1968).svg"},
		"Flag of Germany.svg",
	},
	FRN = {
		name = "Rhodesie an Nyasaland",
		"Flag of the Federation of Rhodesia and Nyasaland.svg",
	},
	FRO = {
		name = "Faroe Islands",
		"Flag of the Faroe Islands.svg",
	},
	FSA = {
		name = "Federation o Sooth Arabie",
		"Flag of the Federation of South Arabia.svg",
	},
	FSM = {
		name = "Micronesie",
		"Flag of the Federated States of Micronesia.svg",
	},
	GAB = {
		name = "Gabon",
		"Flag of Gabon.svg",
	},
	GAM = {
		name = "The Gambie",
		"Flag of The Gambia.svg",
	},
	GBR = {
		name = "Great Breetain",
		"Flag of the United Kingdom.svg",
		["Simmer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	GBS = {
		name = "Guinea-Bissau",
		"Flag of Guinea-Bissau.svg",
	},
	GCO = {
		name = "Gowd Coast",
		"Flag of the Gold Coast.svg",
	},
	GDR = {
		name = "East Germany",
		{1959, "Flag of East Germany.svg"},
		{1968, "Flag of the German Olympic Team (1960-1968).svg"},
		"Flag of East Germany.svg",
	},
	GEO = {
		name = "Georgie",
		{2003, "Flag of Georgia (1990-2004).svg"},
		"Flag of Georgia.svg",
	},
	GEQ = {
		name = "Equatorial Guinea",
		"Flag of Equatorial Guinea.svg",
	},
	GER = {
		name = "Germany",
		{1912, "Flag of the German Empire.svg"},
		{1932, "Flag of Germany (3-2 aspect ratio).svg"},
		{1945, "Flag of the German Reich (1935–1945).svg"},
		"Flag of Germany.svg",
	},
	GHA = {
		name = "Ghana",
		{1960, "Flag of the Gold Coast.svg"},
		{1962, "Flag of the Union of African States (1961-1962).svg"},
		{1966, "Flag of Ghana (1964-1966).svg"},
		"Flag of Ghana.svg",
	},
	GIB = {
		name = "Gibraltar",
		{1981, "Government Ensign of Gibraltar 1939-1999.svg"},
		"Flag of Gibraltar.svg",
	},
	GRE = {
		name = "Greece",
		{1969, "Flag of Greece (1828-1978).svg"},
		{1975, "Flag of Greece (1970-1975).svg"},
		{1978, "Flag of Greece (1828-1978).svg"},
		"Flag of Greece.svg",
	},
	GRN = {
		name = "Grenada",
		{1974, "Flag of Grenada 1967.svg"},
		"Flag of Grenada.svg",
	},
	GUA = {
		name = "Guatemala",
		"Flag of Guatemala.svg",
	},
	GUE = {
		name = "Guernsey",
		{1985, "Flag of Guernsey (1936).svg"},
		"Flag of Guernsey.svg",
	},
	GUI = {
		name = "Guinea",
		"Flag of Guinea.svg",
	},
	GUM = {
		name = "Guam",
		"Flag of Guam.svg",
	},
	GUY = {
		name = "Guyana",
		{1906, "Flag of British Guiana (1875-1906).png"},
		{1919, "Flag of British Guiana (1906-1919).png"},
		{1955, "Flag of British Guiana (1919-1955).png"},
		{1966, "Flag of British Guiana (1955-1966).svg"},
		"Flag of Guyana.svg",
	},
	HAI = {
		name = "Haiti",
		{1963, "Flag of Haiti.svg"},
		{1986, "Flag of Haiti (1964-1986).svg"},
		"Flag of Haiti.svg",
	},
	HBR = {
		name = "Breetish Honduras",
		"Flag of British Honduras.svg",
	},
	HKG = {
		name = "Hong Kong",
		{1955, "Flag of Hong Kong (1910-1955).png"},
		{1959, "Flag of Hong Kong (1955-1959).png"},
		{1997, "Flag of Hong Kong (1959-1997).svg"},
		"Flag of Hong Kong.svg",
	},
	HON = {
		name = "Honduras",
		"Flag of Honduras.svg",
	},
	HUN = {
		name = "Hungary",
		{1918, "Flag of Hungary (1867-1918).svg"},
		{1946, "Flag of Hungary (1915-1918, 1919-1946; 3-2 aspect ratio).svg"},
		{1949, "Flag of Hungary (1946-1949, 1956-1957).svg"},
		{1955, "Flag of Hungary (1949-1956).svg"},
		{1957, "Flag of Hungary (1946-1949, 1956-1957).svg"},
		"Flag of Hungary.svg",
	},
	IFS = {
		name = "Erse Free State",
		"Flag of Ireland.svg",
	},
	INA = {
		name = "Indonesie",
		"Flag of Indonesia.svg",
	},
	IND = {
		name = "Indie",
		{1946, "British Raj Red Ensign.svg"},
		{2012, "Flag of India.svg"},
		{2013, "Olympic flag.svg"},
		"Flag of India.svg",
	},
	IOA = {
		name = "Independent Olympic Athletes",
		"Olympic flag.svg",
	},
	IOC = {
		name = "Athletes frae Kuwait",
		"Olympic flag.svg",
	},
	IOM = {
		name = "Isle o Man",
		"Flag of the Isle of Man.svg",
	},
	IOP = {
		name = "Independent Olympic Pairteecipants",
		"Olympic flag.svg",
	},
	['IOP, IOA, OAR'] = {
		name = "Independent Olympians",
		"Olympic flag.svg",
	},
	IPA = {
		name = "Individual Paralympic Athletes",
		"Paralympic flag.svg",
	},
	IPP = {
		name = "Independent Paralympic Pairteecipants",
		"Paralympics logo 1988-94.svg",
	},
	IRE = {
		name = "Ireland",
		"Green harp flag of Ireland.svg",
	},
	IRI = {
		name = "Iran",
		{1932, "Early 20th Century Qajar Flag.svg"},
		{1964, "State Flag of Iran (1933-1964).svg"},
		{1980, "State Flag of Iran (1964-1980).svg"},
		"Flag of Iran.svg",
	},
	IRL = {
		name = "Ireland",
		"Flag of Ireland.svg",
		["Simmer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	IRN = {
		name = "Iran",
		{1932, "Early 20th Century Qajar Flag.svg"},
		{1964, "State Flag of Iran (1933-1964).svg"},
		{1980, "State Flag of Iran (1964-1980).svg"},
		"Flag of Iran.svg",
	},
	IRQ = {
		name = "Iraq",
		{1959, "Flag of Iraq (1921–1959).svg"},
		{1963, "Flag of Iraq (1959-1963).svg"},
		{1991, "Flag of Iraq (1963-1991); Flag of Syria (1963-1972).svg"},
		{2004, "Flag of Iraq (1991-2004).svg"},
		{2008, "Flag of Iraq (2004-2008).svg"},
		"Flag of Iraq.svg",
	},
	ISL = {
		name = "Iceland",
		{1915, "Flag of Denmark.svg"},
		{1944, "Light Blue Flag of Iceland.svg"},
		"Flag of Iceland.svg",
	},
	ISR = {
		name = "Israel",
		"Flag of Israel.svg",
	},
	ISV = {
		name = "Virgin Islands",
		"Flag of the United States Virgin Islands.svg",
	},
	ITA = {
		name = "Italy",
		{1946, "Flag of Italy (1861-1946).svg"},
		{2002, "Flag of Italy.svg"},
		{2006, "Flag of Italy (2003-2006).svg"},
		"Flag of Italy.svg",
		["Simmer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	IVB = {
		name = "Breetish Virgin Islands",
		"Flag of the British Virgin Islands.svg",
	},
	JAM = {
		name = "Jamaica",
		{1957, "Flag of Jamaica (1906-1957).svg"},
		{1962, "Flag of Jamaica (1957-1962).svg"},
		"Flag of Jamaica.svg",
	},
	JER = {
		name = "Jersey",
		{1980, "Flag of Jersey (pre 1981).svg"},
		"Flag of Jersey.svg",
	},
	JOR = {
		name = "Jordan",
		"Flag of Jordan.svg",
	},
	JPN = {
		name = "Japan",
		{1999, "Flag of Japan (1870-1999).svg"},
		"Flag of Japan.svg",
	},
	KAZ = {
		name = "Kazakhstan",
		"Flag of Kazakhstan.svg",
	},
	KEN = {
		name = "Kenyae",
		{1963, "Flag of British East Africa.svg"},
		"Flag of Kenya.svg",
	},
	KGZ = {
		name = "Kyrgyzstan",
		"Flag of Kyrgyzstan.svg",
	},
	KHM = {
		name = "Khmer Republic",
		"Flag of the Khmer Republic.svg",
	},
	KIR = {
		name = "Kiribati",
		"Flag of Kiribati.svg",
	},
	KOR = {
		name = "Sooth Korea",
		{1947, "Flag of South Korea (1945-1948).svg"},
		{1949, "Flag of South Korea (1948-1949).svg"},
		{1997, "Flag of South Korea (1984-1997).svg"},
		"Flag of South Korea.svg",
	},
	KOS = {
		name = "Kosovo",
		"Flag of Kosovo.svg",
	},
	KSA = {
		name = "Saudi Arabie",
		{1973, "Flag of Saudi Arabia (1938-1973).svg"},
		"Flag of Saudi Arabia.svg",
	},
	KUW = {
		name = "Kuwait",
		"Flag of Kuwait.svg",
	},
	LAO = {
		name = "Laos",
		{1975, "Flag of Laos (1952-1975).svg"},
		"Flag of Laos.svg",
	},
	LAT = {
		name = "Latvie",
		"Flag of Latvia.svg",
	},
	LBA = {
		name = "Libie",
		{1968, "Flag of Libya (1951).svg"},
		{1972, "Flag of Libya (1969–1972).svg"},
		{1977, "Flag of Libya (1972–1977).svg"},
		{2011, "Flag of Libya (1977-2011).svg"},
		"Flag of Libya.svg",
	},
	LBN = {
		name = "Lebanon",
		"Flag of Lebanon.svg",
	},
	LBR = {
		name = "Liberie",
		"Flag of Liberia.svg",
	},
	LCA = {
		name = "Saunt Lucia",
		{1967, "Flag of Saint Lucia (1939-1967).svg"},
		{1979, "Flag of Saint Lucia (1967-1979).svg"},
		{2002, "Flag of Saint Lucia (1979-2002).svg"},
		"Flag of Saint Lucia.svg",
	},
	LES = {
		name = "Lesotho",
		{1987, "Flag of Lesotho (1966).svg"},
		{2006, "Flag of Lesotho (1987-2006).svg"},
		"Flag of Lesotho.svg",
	},
	LIB = {
		name = "Lebanon",
		"Flag of Lebanon.svg",
	},
	LIE = {
		name = "Liechtenstein",
		{1921, "Flag of Liechtenstein (1852-1921).svg"},
		{1937, "Flag of Liechtenstein (1921-1937).svg"},
		"Flag of Liechtenstein.svg",
	},
	LTU = {
		name = "Lithuanie",
		{1940, "Flag of Lithuania (1918-1940).svg"},
		{2004, "Flag of Lithuania (1988-2004).svg"},
		"Flag of Lithuania.svg",
	},
	LUX = {
		name = "Luxembourg",
		"Flag of Luxembourg.svg",
		["Simmer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	MAC = {
		name = "Macau",
		{1999, "Bandeira do Leal Senado.svg"},
		"Flag of Macau.svg",
	},
	MAD = {
		name = "Madagascar",
		"Flag of Madagascar.svg",
	},
	MAL = {
		name = "Malaya",
		"Flag of Malaya.svg",
	},
	MAR = {
		name = "Morocco",
		"Flag of Morocco.svg",
	},
	MAS = {
		name = "Malaysie",
		{1963, "Flag of Malaya.svg"},
		"Flag of Malaysia.svg",
	},
	MAW = {
		name = "Malawi",
		{2009, "Flag of Malawi.svg"},
		{2012, "Flag of Malawi (2010-2012).svg"},
		"Flag of Malawi.svg",
	},
	MDA = {
		name = "Moldova",
		"Flag of Moldova.svg",
	},
	MDV = {
		name = "Maldives",
		"Flag of Maldives.svg",
	},
	MEX = {
		name = "Mexico",
		{1916, "Flag of Mexico (1893-1916).svg"},
		{1934, "Flag of the United Mexican States (1916-1934).svg"},
		{1968, "Flag of Mexico (1934-1968).svg"},
		"Flag of Mexico.svg",
	},
	MGL = {
		name = "Mongolie",
		{1992, "Flag of the People's Republic of Mongolia (1940-1992).svg"},
		"Flag of Mongolia.svg",
	},
	MHL = {
		name = "Marshall Islands",
		"Flag of the Marshall Islands.svg",
	},
	MIX = {
		name = "Mixed-NOCs",
		"Olympic flag.svg",
	},
	MKD = {
		name = "Macedon",
		"Flag of Macedonia.svg",
	},
	MLI = {
		name = "Mali",
		"Flag of Mali.svg",
	},
	MLT = {
		name = "Maltae",
		{1943, "Flag of Malta (1923-1943).svg"},
		{1964, "Flag of Malta (1943-1964).svg"},
		"Flag of Malta.svg",
	},
	MNE = {
		name = "Montenegro",
		"Flag of Montenegro.svg",
	},
	MNT = {
		name = "Montserrat",
		"Flag of Montserrat.svg",
	},
	MON = {
		name = "Monaco",
		"Flag of Monaco.svg",
	},
	MOZ = {
		name = "Mozambique",
		{1983, "Flag of Mozambique (1975-1983).svg"},
		"Flag of Mozambique.svg",
	},
	MRI = {
		name = "Mauritius",
		{1923, "Flag of Mauritius 1906.svg"},
		{1968, "Flag of Mauritius 1923.svg"},
		"Flag of Mauritius.svg",
	},
	MTN = {
		name = "Mauritanie",
		"Flag of Mauritania.svg",
	},
	MYA = {
		name = "Myanmar",
		{1973, "Flag of Burma (1948-1974).svg"},
		{2010, "Flag of Myanmar (1974-2010).svg"},
		"Flag of Myanmar.svg",
	},
	NAM = {
		name = "Namibie",
		"Flag of Namibia.svg",
	},
	NBO = {
		name = "North Borneo",
		"Flag of North Borneo 1948-1963.png",
	},
	NCA = {
		name = "Nicaragua",
		"Flag of Nicaragua.svg",
	},
	NCL = {
		name = "New Caledon",
		"Flag of New Caledonia.svg",
	},
	NED = {
		name = "Netherlands",
		"Flag of the Netherlands.svg",
		["Simmer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	NEP = {
		name = "Nepal",
		"Flag of Nepal.svg",
	},
	NEW = {
		name = "Newfoundland",
		"Newfoundland Red Ensign.png",
	},
	NFI = {
		name = "Norfolk Island",
		"Flag of Norfolk Island.svg",
	},
	NGR = {
		name = "Nigerie",
		{1960, "Flag of British Colonial Nigeria.svg"},
		"Flag of Nigeria.svg",
	},
	NIC = {
		name = "Nicaragua",
		"Flag of Nicaragua.svg",
	},
	NIG = {
		name = "Niger",
		"Flag of Niger.svg",
	},
	NIR = {
		name = "Northern Ireland",
		"Ulster banner.svg",
	},
	NIU = {
		name = "Niue",
		"Flag of Niue.svg",
	},
	NMI = {
		name = "Northren Mariana Islands",
		"Flag of the Northern Mariana Islands.svg",
	},
	NOR = {
		name = "Norawa",
		"Flag of Norway.svg",
	},
	NRH = {
		name = "Northren Rhodesie",
		"Flag of Northern Rhodesia (1939-1953).svg",
	},
	NRU = {
		name = "Nauru",
		"Flag of Nauru.svg",
	},
	NZL = {
		name = "New Zealand",
		"Flag of New Zealand.svg",
		["Simmer Olympics"] = {
			[1980] = "Flag of New Zealand Olympic Committee (1979-1994).svg",
		},
	},
	OAR = {
		name = "Olympic Athletes frae Roushie",
		"Olympic flag.svg",
	},
	OMA = {
		name = "Oman",
		{1995, "Flag of Oman (1970-1995).svg"},
		"Flag of Oman.svg",
	},
	PAK = {
		name = "Pakistan",
		"Flag of Pakistan.svg",
	},
	PAN = {
		name = "Panama",
		"Flag of Panama.svg",
	},
	PAR = {
		name = "Paraguay",
		{1954, "Flag of Paraguay (1842-1954).svg"},
		{1988, "Flag of Paraguay (1954-1988).svg"},
		{1990, "Flag of Paraguay (1988-1990).svg"},
		{2013, "Flag of Paraguay (1990-2013).svg"},
		"Flag of Paraguay.svg",
	},
	PER = {
		name = "Peru",
		{1950, "Flag of Peru (1825-1950).svg"},
		"Flag of Peru.svg",
	},
	PHI = {
		name = "Philippines",
		{1936, "Flag of the Philippines (1919-1936).svg"},
		{1984, "Flag of the Philippines (navy blue).svg"},
		{1986, "Flag_of_the_Philippines_(light_blue).svg"},
		{1997, "Flag of the Philippines (navy blue).svg"},
		"Flag of the Philippines.svg",
		["Asian Games"] = {
			[1986] = "Flag of the Philippines (navy blue).svg",
		},
	},
	PLE = {
		name = "Palestine",
		"Flag of Palestine.svg",
	},
	PLW = {
		name = "Palau",
		"Flag of Palau.svg",
	},
	PNG = {
		name = "Papua New Guinea",
		{1965, "Flag of the Territory of New Guinea.svg"},
		{1970, "Flag of Papua New Guinea 1965.svg"},
		"Flag of Papua New Guinea.svg",
	},
	POL = {
		name = "Poland",
		{1928, "Flag of Poland (1919-1928).svg"},
		{1980, "Flag of Poland (1928-1980).svg"},
		"Flag of Poland.svg",
	},
	POR = {
		name = "Portugal",
		"Flag of Portugal.svg",
		["Simmer Olympics"] = {
			[1980] = "Flag of Portugal-1980-Olympics.svg",
		},
	},
	PRK = {
		name = "North Korea",
		"Flag of North Korea.svg",
	},
	PUR = {
		name = "Puerto Rico",
		{1951, "Puerto Rico Azul Celeste.png"},
		{1995, "Flag of Puerto Rico (1952-1995).svg"},
		"Flag of Puerto Rico.svg",
		["Simmer Olympics"] = {
			[1948] = "Puerto rico national sport flag.svg",
			[1952] = "Puerto rico national sport flag.svg",
			[1980] = "Olympic flag.svg",
		},
	},
	PYF = {
		name = "French Polynesie",
		"Flag of French Polynesia.svg",
	},
	QAT = {
		name = "Qatar",
		"Flag of Qatar.svg",
	},
	RHO = {
		name = "Rhodesie",
		{1953, "Flag of Southern Rhodesia.svg"},
		{1963, "Flag of the Federation of Rhodesia and Nyasaland.svg"},
		{1968, "Flag of Rhodesia (1964).svg"},
		"Flag of Rhodesia.svg",
	},
	ROA = {
		name = "Refugee Olympic Team",
		"Olympic flag.svg",
	},
	ROC = {
		name = "Republic of China",
		{1928, "Flag of the Republic of China (1912-1928).svg"},
		"Flag of the Republic of China.svg",
	},
	ROM = {
		name = "Romanie",
		{1948, "Flag of Romania.svg"},
		{1952, "Flag of Romania (1948-1952).svg"},
		{1965, "Flag of Romania (1952-1965).svg"},
		{1989, "Flag of Romania (1965-1989).svg"},
		"Flag of Romania.svg",
	},
	ROT = {
		name = "Refugee Olympic Team",
		"Olympic flag.svg",
	},
	ROU = {
		name = "Romanie",
		{1948, "Flag of Romania.svg"},
		{1952, "Flag of Romania (1948-1952).svg"},
		{1965, "Flag of Romania (1952-1965).svg"},
		{1989, "Flag of Romania (1965-1989).svg"},
		"Flag of Romania.svg",
	},
	RSA = {
		name = "Sooth Africae",
		{1912, "Flag of the United Kingdom.svg"},
		{1928, "Red Ensign of South Africa (1912-1928).svg"},
		{1994, "Flag of South Africa (1928-1994).svg"},
		"Flag of South Africa.svg",
		["Winter Olympics"] = {
			[1994] = "South African Olympic Flag 1994.gif",
		},
		["Simmer Olympics"] = {
			[1992] = "South African Olympic Flag.svg",
		},
	},
	RU1 = {
		name = "Roushie Empire",
		"Flag of Russia.svg",
	},
	RUS = {
		name = "Roushie",
		"Flag of Russia.svg",
	},
	RWA = {
		name = "Rwanda",
		{1961, "Flag of Rwanda (1959-1961).svg"},
		{2001, "Flag of Rwanda (1962-2001).svg"},
		"Flag of Rwanda.svg",
	},
	SAA = {
		name = "Saar",
		"Flag of Saar (1947–1956).svg",
	},
	SAF = {
		name = "Sooth Africae",
		{1912, "Flag of the United Kingdom.svg"},
		{1928, "Red Ensign of South Africa (1912-1928).svg"},
		{1994, "Flag of South Africa (1928-1994).svg"},
		"Flag of South Africa.svg",
		["Winter Olympics"] = {
			[1994] = "South African Olympic Flag 1994.gif",
		},
		["Simmer Olympics"] = {
			[1992] = "South African Olympic Flag.svg",
		},
	},
	SAM = {
		name = "Samoa",
		"Flag of Samoa.svg",
	},
	SAR = {
		name = "Sarawak",
		"Flag of the Crown Colony of Sarawak (1946).svg",
	},
	SCG = {
		name = "Serbie an Montenegro",
		"Flag of Serbia and Montenegro.svg",
	},
	SCN = {
		name = "Saint Christopher-Nevis-Anguilla",
		"Flag of Saint Christopher-Nevis-Anguilla.svg",
	},
	SCO = {
		name = "Scotland",
		"Flag of Scotland.svg",
	},
	SEN = {
		name = "Senegal",
		"Flag of Senegal.svg",
	},
	SEY = {
		name = "Seychelles",
		{1996, "Flag of the Seychelles (1977-1996).svg"},
		"Flag of Seychelles.svg",
	},
	SGP = {
		name = "Singapore",
		{1959, "Flag of Singapore (1946-1959).svg"},
		"Flag of Singapore.svg",
	},
	SHE = {
		name = "Saunt Helena",
		{1984, "Flag of Saint Helena (1874-1984).svg"},
		"Flag of Saint Helena.svg",
	},
	SHN = {
		name = "Saunt Helena",
		{1984, "Flag of Saint Helena (1874-1984).svg"},
		"Flag of Saint Helena.svg",
	},
	SIN = {
		name = "Singapore",
		{1959, "Flag of Singapore (1946-1959).svg"},
		"Flag of Singapore.svg",
	},
	SKN = {
		name = "Saunt Kitts an Nevis",
		{1983, "Flag of Saint Christopher-Nevis-Anguilla.svg"},
		"Flag of Saint Kitts and Nevis.svg",
	},
	SLE = {
		name = "Sierra Leone",
		{1961, "Flag of Sierra Leone 1916-1961.gif"},
		"Flag of Sierra Leone.svg",
	},
	SLO = {
		name = "Slovenie",
		"Flag of Slovenia.svg",
	},
	SMR = {
		name = "San Marino",
		{2010, "Flag of San Marino (before 2011).svg"},
		"Flag of San Marino.svg",
		["Simmer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	SOL = {
		name = "Solomon Islands",
		"Flag of the Solomon Islands.svg",
	},
	SOM = {
		name = "Somalie",
		"Flag of Somalia.svg",
	},
	SRB = {
		name = "Serbie",
		{1918, "State Flag of Serbia (1882-1918).svg"},
		{1944, "Flag of Serbia, 1941-1944.svg"},
		{1992, "Flag of SR Serbia.svg"},
		{2004, "Flag of Serbia (1992-2004).svg"},
		{2010, "Flag of Serbia (2004-2010).svg"},
		"Flag of Serbia.svg",
	},
	SRH = {
		name = "Soothren Rhodesie",
		"Flag of Southern Rhodesia.svg",
	},
	SRI = {
		name = "Sri Lanka",
		{1948, "British Ceylon flag.svg"},
		{1951, "Flag of Ceylon (1948-1951).svg"},
		{1971, "Flag of Ceylon (1951-1972).svg"},
		"Flag of Sri Lanka.svg",
	},
	SSD = {
		name = "Sooth Sudan",
		"Flag of South Sudan.svg",
	},
	STP = {
		name = "São Tomé an Príncipe",
		"Flag of Sao Tome and Principe.svg",
	},
	SUD = {
		name = "Sudan",
		{1970, "Flag of Sudan (1956-1970).svg"},
		"Flag of Sudan.svg",
	},
	SUI = {
		name = "Swisserland",
		"Flag of Switzerland.svg",
		["Simmer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	SUR = {
		name = "Suriname",
		{1975, "Flag of Dutch Guyana.svg"},
		"Flag of Suriname.svg",
	},
	SVG = {
		name = "Saunt Vincent an the Grenadines",
		{1979, "Flag of Saint Vincent and the Grenadines (1907-1979).svg"},
		{1984, "Flag of Saint Vincent and the Grenadines (1979-1985).svg"},
		{1985, "Flag of Saint Vincent and the Grenadines (1985).svg"},
		"Flag of Saint Vincent and the Grenadines.svg",
	},
	SVK = {
		name = "Slovakie",
		"Flag of Slovakia.svg",
	},
	SWE = {
		name = "Swaden",
		{1905, "Swedish civil ensign (1844–1905).svg"},
		"Flag of Sweden.svg",
	},
	SWK = {
		name = "Sarawak",
		"Flag of the Crown Colony of Sarawak (1946).svg",
	},
	SWZ = {
		name = "Swaziland",
		"Flag of Swaziland.svg",
	},
	SYR = {
		name = "Sirie",
		{1958, "Flag of Syria (1932-1958; 1961-1963).svg"},
		{1961, "Flag of the United Arab Republic.svg"},
		{1963, "Flag of Syria (1932-1958; 1961-1963).svg"},
		{1972, "Flag of Iraq (1963-1991); Flag of Syria (1963-1972).svg"},
		{1980, "Flag of Syria (1972-1980).svg"},
		"Flag of Syria.svg",
	},
	TAG = {
		name = "Tanganyika",
		"Flag of Tanganyika.svg",
	},
	TAH = {
		name = "French Polynesie",
		"Flag of French Polynesia.svg",
	},
	TAN = {
		name = "Tanzanie",
		{1964, "Flag of Tanganyika.svg"},
		"Flag of Tanzania.svg",
	},
	TCH = {
		name = "Czechoslovakie",
		"Flag of Czechoslovakia.svg",
	},
	TCI = {
		name = "Turks an Caicos Islands",
		"Flag of the Turks and Caicos Islands.svg",
	},
	TGA = {
		name = "Tonga",
		"Flag of Tonga.svg",
	},
	THA = {
		name = "Thailand",
		"Flag of Thailand.svg",
	},
	TJK = {
		name = "Tajikistan",
		"Flag of Tajikistan.svg",
	},
	TKL = {
		name = "Tokelau",
		"Flag of Tokelau.svg",
	},
	TKM = {
		name = "Turkmenistan",
		{1973, "Flag of Turkmen SSR (1956).svg"},
		{1991, "Flag of the Turkmen SSR.svg"},
		{1997, "Flag of Turkmenistan (1992-1997).svg"},
		{2001, "Flag of Turkmenistan (1997-2001).svg"},
		"Flag of Turkmenistan.svg",
	},
	TKS = {
		name = "Turks an Caicos Islands",
		"Flag of the Turks and Caicos Islands.svg",
	},
	TLS = {
		name = "Timor-Leste",
		"Flag of East Timor.svg",
	},
	TOG = {
		name = "Togo",
		"Flag of Togo.svg",
	},
	TON = {
		name = "Tonga",
		"Flag of Tonga.svg",
	},
	TPE = {
		name = "Cheenese Taipei",
		{1979, "Flag of the Republic of China.svg"},
		"Flag of Chinese Taipei for Olympic games.svg",
		["Olympics"] = "Flag of Chinese Taipei for Olympic games.svg",
		["Simmer Olympics"] = "Flag of Chinese Taipei for Olympic games.svg",
		["Winter Olympics"] = "Flag of Chinese Taipei for Olympic games.svg",
		["Asie Para Gemmes"] = "Chinese Taipei Paralympic Flag.svg",
		["Simmer Paralympics"] = "Chinese Taipei Paralympic Flag.svg",
		["Universiade"] = "Flag of Chinese Taipei for Universiade.svg",
		["Simmer Universiade"] = "Flag of Chinese Taipei for Universiade.svg",
		["Winter Universiade"] = "Flag of Chinese Taipei for Universiade.svg",
	},
	TRI = {
		name = "Trinidad an Tobago",
		{1958, "Trinidad colonial 1889-1958.gif"},
		"Flag of Trinidad and Tobago.svg",
	},
	TTO = {
		name = "Trinidad an Tobago",
		{1958, "Trinidad colonial 1889-1958.gif"},
		"Flag of Trinidad and Tobago.svg",
	},
	TUN = {
		name = "Tunisie",
		{1999, "Pre-1999 Flag of Tunisia.svg"},
		"Flag of Tunisia.svg",
	},
	TUR = {
		name = "Turkey",
		{1936, "Flag of the Ottoman Empire.svg"},
		"Flag of Turkey.svg",
	},
	TUV = {
		name = "Tuvalu",
		"Flag of Tuvalu.svg",
	},
	UAE = {
		name = "United Arab Emirates",
		"Flag of the United Arab Emirates.svg",
	},
	UAR = {
		name = "United Arab Republic",
		"Flag of the United Arab Republic.svg",
	},
	UGA = {
		name = "Uganda",
		{1962, "Flag of the Uganda Protectorate.svg"},
		"Flag of Uganda.svg",
	},
	UKR = {
		name = "Ukraine",
		"Flag of Ukraine.svg",
	},
	URS = {
		name = "Soviet Union",
		{1955, "Flag of the Soviet Union (1923-1955).svg"},
		{1980, "Flag of the Soviet Union (1955-1980).svg"},
		"Flag of the Soviet Union.svg",
	},
	URU = {
		name = "Uruguay",
		"Flag of Uruguay.svg",
	},
	USA = {
		name = "United States",
		{1896, "US flag 44 stars.svg"},
		{1908, "US flag 45 stars.svg"},
		{1912, "US flag 46 stars.svg"},
		{1959, "US flag 48 stars.svg"},
		{1960, "US flag 49 stars.svg"},
		"Flag of the United States.svg",
	},
	UZB = {
		name = "Uzbekistan",
		"Flag of Uzbekistan.svg",
	},
	VAN = {
		name = "Vanuatu",
		"Flag of Vanuatu.svg",
	},
	VEN = {
		name = "Venezuela",
		{1930, "Flag of Venezuela (1905-1930).svg"},
		{1954, "Flag of Venezuela (1930-1954).svg"},
		{2006, "Flag of Venezuela (1954-2006).png"},
		"Flag of Venezuela.svg",
	},
	VIE = {
		name = "Vietnam",
		{1975, "Flag of South Vietnam.svg"},
		"Flag of Vietnam.svg",
	},
	VIN = {
		name = "Saint Vincent and the Grenadines",
		{1979, "Flag of Saint Vincent and the Grenadines (1907-1979).svg"},
		{1984, "Flag of Saint Vincent and the Grenadines (1979-1985).svg"},
		{1985, "Flag of Saint Vincent and the Grenadines (1985).svg"},
		"Flag of Saint Vincent and the Grenadines.svg",
	},
	VNM = {
		name = "South Vietnam",
		{1975, "Flag of South Vietnam.svg"},
		"Flag of Vietnam.svg",
	},
	VOL = {
		name = "Upper Volta",
		"Flag of Upper Volta.svg",
	},
	WAL = {
		name = "Wales",
		{1952, "Flag of England.svg"},
		{1959, "Flag of Wales (1953-1959).svg"},
		"Flag of Wales 2.svg",
	},
	WLF = {
		name = "Wallis and Futuna",
		"Flag of Wallis and Futuna.svg",
	},
	WSM = {
		name = "Western Samoa",
		"Flag of Samoa.svg",
	},
	YAR = {
		name = "North Yemen",
		"Flag of North Yemen.svg",
	},
	YEM = {
		name = "Yemen",
		"Flag of Yemen.svg",
	},
	YMD = {
		name = "South Yemen",
		"Flag of South Yemen.svg",
	},
	YUG = {
		name = "Yugoslavie",
		{1941, "Flag of the Kingdom of Yugoslavia.svg"},
		{1946, "Flag of the Democratic Federal Yugoslavia.svg"},
		"Flag of SFR Yugoslavia.svg",
	},
	ZAI = {
		name = "Zaire",
		"Flag of Zaire.svg",
	},
	ZAM = {
		name = "Zambie",
		{1953, "Flag of Northern Rhodesia (1939-1953).svg"},
		{1963, "Flag of the Federation of Rhodesia and Nyasaland.svg"},
		{1996, "Flag of Zambia (1964-1996).svg"},
		"Flag of Zambia.svg",
	},
	ZIM = {
		name = "Zimbabwe",
		{1953, "Flag of Southern Rhodesia.svg"},
		{1963, "Flag of the Federation of Rhodesia and Nyasaland.svg"},
		{1968, "Flag of Rhodesia (1964).svg"},
		{1978, "Flag of Rhodesia.svg"},
		{1979, "Flag of Zimbabwe Rhodesia.svg"},
		"Flag of Zimbabwe.svg",
	},
	ZZX = {
		name = "Mixed team",
		"Olympic flag.svg",
	},
}

local function strip_to_nil(text)
	-- If text is a string, return its trimmed content, or nil if empty.
	-- Otherwise return text (which may, for example, be nil).
	if type(text) == 'string' then
		text = text:match('(%S.-)%s*$')
	end
	return text
end

local function yes(parameter)
	-- Return true if parameter should be interpreted as "yes".
	return ({ y = true, yes = true, on = true })[parameter]
end

local function getFlag(args, country)
	-- Return name of flag selected from country data (nil if none defined).
	local year = tonumber(args.year)
	local games = strip_to_nil(args.games)
	if games then
		local gdata = country[games]
		if gdata then
			if type(gdata) == 'string' then
				return gdata
			end
			if gdata[year] then
				return gdata[year]
			end
		end
	end
	for _, item in ipairs(country) do
		if type(item) == 'string' then
			return item
		end
		if year and year <= item[1] then
			return item[2]
		end
	end
end

local function main(frame)
	local args = frame.args
	local alias = args.alias
	local country = countries[alias]
	local function quit(message)
		if args.error then
			return args.error
		end
		error(message)
	end
	if not country then
		return quit('Invalid country alias: ' .. tostring(alias))
	end
	if yes(args.flag) then
		return getFlag(args, country) or quit('No flag defined for ' .. alias)
	else
		return country.name or quit('No name defined for ' .. alias)
	end
end

return { main = main }