Module:Country alias

Vikipediya, ochiq ensiklopediya

This module implements {{country alias}}. Check there for usage documentation.

Usage[tahrir]

This module is used by {{country alias}} to return either the country name or the country's flag, based on a combination of the three-letter country code (required), the year (optional), and the competition being played (optional).

{{#invoke:Country alias|main|alias=|flag=|games=|year=}}



-- This module returns the country name or the flag name for a country,
-- based on the three-letter IOC/CGA/FINA alias.

--[[ TODO: Check/fix following issues.
The following country codes are defined but have no flag:
  FINA - I have added this flag (9 Dec), but it migʻt get deleted

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

The following names occur twice (is that ok?): Yes, because CGF/IOC/FINA differ
    Angilla                         AIA, ANG_CGF
    Antigua va Barbuda				 ANT, ATG
    Kyurasao                          CUR, CUW
    Farer orollari                    FAR, FRO
    Fransuz Polineziyasi                 PYF, TAH
    Eron                             IRI, IRN
    Irlandiya                          IRE, IRL
    Livan                          LBN, LIB
    Nikaragua                        NCA, NIC
    Birlashgan Olimpiya jamoasi             ROA, ROT
    Ruminiya                          ROM, ROU
    Muqaddas Yelena                     SHE, SHN
    Sent Vinsent va Grenadinlar SVG, VIN
    Saravak                          SAR, SWK
    Singapur                        SGP, SIN
    Janubiy Afrika Respublikasi                    RSA, SAF
    Tonga                            TGA, TON
    Trinidad va Tobago              TRI, TTO
    Terks va Kaykos orollari         TCI, TKS

Remove EXA and EXX examples when finished testing.
]]

local countries = {
	EXA = {                             -- example for testing
		name = "Example Country",
		{1951, "Flag1951.svg"},         -- year <= 1951
		{1995, "Flag1995.svg"},         -- 1951 < year <= 1995
		"Flag of test.svg",             -- otherwise
		["Paralympics"] = "Paralympics.svg",
		["Summer Olympics"] = {
			[1948] = "SO1948.svg",
			[1952] = "SO1952.svg",
			[1980] = "SO1980.svg",
		},
		["Winter Olympics"] = {
			[1956] = "WO1956.svg",
			[1964] = "WO1964.svg",
		},
	},
	EXX = {                             -- example with bad definition for testing
		{1951, "Exx1951.svg"},
	},
	ADN = {
		name = "Aden",
		"Flag of the Colony of Aden.svg",
	},
	AFG = {
		name = "Afgʻoniston",
		{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"},
		{2004, "Flag of Afghanistan (2002-2004).svg"},
		"Flag of Afghanistan.svg",
	},
	AHO = {
		name = "Niderlandlar Antillari",
		{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 = "Angilla",
		"Flag of Anguilla.svg",
	},
	ALB = {
		name = "Albaniya",
		{1992, "Flag of Albania (1946-1992).svg"},
		"Flag of Albania.svg",
	},
	ALG = {
		name = "Algeria",
		"Flag of Algeria.svg",
	},
	AND = {
		name = "Andorra",
		"Flag of Andorra.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	ANG = {
		name = "Angola",
		"Flag of Angola.svg",
	},
	ANG_CGF = {
		name = "Angilla",
		"Flag of Anguilla.svg",
	},
	ANT = {
		name = "Antigua va Barbuda",
		{1966, "Missing Blue Ensign.svg"},
		"Flag of Antigua and Barbuda.svg",
	},
	ANZ = {
		name = "Avstralosiyo",
		"Flag of Australasian team for Olympic games.svg",
	},
	AOI = {
		name = "Mustaqil Olimiya qatnashchilari",
		"Olympic flag.svg",
	},
	ARG = {
		name = "Argentina",
		"Flag of Argentina.svg",
	},
	ARM = {
		name = "Armaniston",
		"Flag of Armenia.svg",
	},
	ARU = {
		name = "Aruba",
		"Flag of Aruba.svg",
	},
	ASA = {
		name = "Amerika Samoasi",
		"Flag of American Samoa.svg",
	},
	ATG = {
		name = "Antigua va Barbuda",
		{1966, "Missing Blue Ensign.svg"},
		"Flag of Antigua and Barbuda.svg",
	},
	AUS = {
		name = "Avstraliya",
		{1900, "Flag of the United Kingdom.svg"},
		{1909, "Flag of Australia 1903-1909.svg"},
		"Flag of Australia.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	AUT = {
		name = "Avstriya",
		{1912, "Flag of the Habsburg Monarchy.svg"},
		"Flag of Austria.svg",
	},
	AZE = {
		name = "Ozarbayjon",
		"Flag of Azerbaijan.svg",
	},
	BAH = {
		name = "Bagama orollari",
		{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 = "Belgiya",
		"Flag of Belgium (civil).svg",
		["Summer 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 = "Britaniya Gvianasi",
		{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 = "Butan",
		"Flag of Bhutan.svg",
	},
	BIH = {
		name = "Bosniya va Gersegovina",
		{1998, "Flag of Bosnia and Herzegovina (1992-1998).svg"},
		"Flag of Bosnia and Herzegovina.svg",
	},
	BIR = {
		name = "Birma",
		"Flag of Burma (1948-1974).svg"
	},
	BIZ = {
		name = "Beliz",
		{1981, "Flag of British Honduras (1919-1981).svg"},
		"Flag of Belize.svg",
	},
	BLR = {
		name = "Belarus",
		{2012, "Flag of Belarus (1995-2012).svg"},
		"Flag of Belarus.svg",
	},
	BNB = {
		name = "Britaniya Shimoliy Borneosi",
		"Flag of North Borneo 1948-1963.png",
	},
	BOH = {
		name = "Bogemiya",
		"Flag of Bohemia.svg",
		["Summer Olympics"] = {
			[1912] = "Bohemian Olympic Flag (1912).png",
		},
	},
	BOL = {
		name = "Boliviya",
		"Flag of Bolivia.svg",
	},
	BOT = {
		name = "Botsvana",
		"Flag of Botswana.svg",
	},
	BRA = {
		name = "Braziliya",
		{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 = "Bahrayn",
		{2002, "Flag of Bahrain (1972-2002).svg"},
		"Flag of Bahrain.svg",
	},
	BRU = {
		name = "Bruney",
		"Flag of Brunei.svg",
	},
	BUL = {
		name = "Bolgariya",
		{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 = "Britaniya Hindistoni",
		"Flag of the West Indies Federation.svg",
	},
	CAF = {
		name = "Markaziy Afrika Respublikasi",
		"Flag of the Central African Republic.svg",
	},
	CAM = {
		name = "Kambodja",
		{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 = "Kanada",
		{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",
		["Summer Olympics"] = {
			[1936] = "Canadian Red Ensign 1921-1957 (with disc).svg",
		},
	},
	CAY = {
		name = "Kayman orollari",
		{1999, "Flag of the Cayman Islands (pre-1999).svg"},
		"Flag of the Cayman Islands.svg",
	},
	CEY = {
		name = "Seylon",
		{1948, "British Ceylon flag.png"},
		{1951, "Flag of Ceylon (1948-1951).svg"},
		{1972, "Flag of Ceylon (1951-1972).svg"},
		"Flag of Sri Lanka.svg",
	},
	CGO = {
		name = "Kongo",
		{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 = "Chili",
		"Flag of Chile.svg",
	},
	CHN = {
		name = "Xitoy",
		"Flag of the People's Republic of China.svg",
	},
	CIV = {
		name = "Kot-d’Iviuar",
		"Flag of Côte d'Ivoire.svg",
	},
	CMR = {
		name = "Kamerun",
		{1975, "Flag of Cameroon (1961-1975).svg"},
		"Flag of Cameroon.svg",
	},
	COD = {
		name = "Kongo DR",
		{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 = "Kuk orollari",
		{1979, "Flag of the Cook Islands (1973-1979).svg"},
		"Flag of the Cook Islands.svg",
	},
	COL = {
		name = "Kolumbiya",
		"Flag of Colombia.svg",
	},
	COM = {
		name = "Komor orollari",
		{1996, "Flag of the Comoros (1992-1996).svg"},
		{2001, "Flag of the Comoros (1996-2001).svg"},
		"Flag of the Comoros.svg",
	},
	CPV = {
		name = "Kabo Verde",
		"Flag of Cape Verde.svg",
	},
	CRC = {
		name = "Kosta Rika",
		"Flag of Costa Rica.svg",
	},
	CRO = {
		name = "Xorvatiya",
		"Flag of Croatia.svg",
	},
	CUB = {
		name = "Kuba",
		"Flag of Cuba.svg",
	},
	CUR = {
		name = "Kyurasao",
		"Flag of Curaçao.svg",
	},
	CUW = {
		name = "Kyurasao",
		"Flag of Curaçao.svg",
	},
	CYP = {
		name = "Kipr",
		{2006, "Flag of Cyprus (1960-2006).svg"},
		"Flag of Cyprus.svg",
	},
	CZE = {
		name = "Chexiya",
		"Flag of the Czech Republic.svg",
	},
	DAH = {
		name = "Daxomey",
		"Flag of Benin.svg",
	},
	DEN = {
		name = "Daniya",
		"Flag of Denmark.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	DJI = {
		name = "Jibuti",
		"Flag of Djibouti.svg",
	},
	DMA = {
		name = "Dominika",
		{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 = "Dominikan Respublikasi",
		"Flag of the Dominican Republic.svg",
	},
	ECU = {
		name = "Ekvador",
		"Flag of Ecuador.svg",
	},
	EGY = {
		name = "Misr",
		{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 = "Angliya",
		"Flag of England.svg",
	},
	ERI = {
		name = "Eritreya",
		"Flag of Eritrea.svg",
	},
	ESA = {
		name = "El Salvador",
		"Flag of El Salvador.svg",
	},
	ESP = {
		name = "Ispaniya",
		{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",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	EST = {
		name = "Estoniya",
		"Flag of Estonia.svg",
	},
	ETH = {
		name = "Efiopiya",
		{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 = "Olmoniya birlashgan jamoasi",
		{1959, "Flag of Germany.svg"},
		"Flag of the German Olympic Team (1960-1968).svg",
	},
	EUN = {
		name = "Ittifoq jamoasi",
		"Olympic flag.svg",
		["Winter Paralympics"] = "Paralympics logo 1988-94.svg",
		["Paralympics"] = "Paralympics logo 1988-94.svg",
		["Summer Paralympics"] = "Paralympics logo 1988-94.svg",
	},
	FAI = {
		name = "Folkland Islands",
		{1999, "Flag of the Falkland Islands (1948-1999).svg"},
		"Flag of the Falkland Islands.svg",
	},
	FAR = {
		name = "Farer orollari",
		"Flag of the Faroe Islands.svg",
	},
	FIJ = {
		name = "Fiji",
		{1970, "Flag of Fiji 1924-1970.svg"},
		"Flag of Fiji.svg",
	},
	FIN = {
		name = "Finlyandiya",
		{1912, "Flag of Russia.svg"},
		"Flag of Finland.svg",
	},
	FINA = {
		name = "FINA mustaqil qatnashchilari",
		"Fédération International de Natation Amateur flag.gif"
	},
	FRA = {
		name = "Fransiya",
		"Flag of France.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	FRG = {
		name = "Gʻarbiy Germaniya",
		{1959, "Flag of Germany.svg"},
		{1968, "Flag of the German Olympic Team (1960-1968).svg"},
		"Flag of Germany.svg",
	},
	FRN = {
		name = "Rodeziya va Nyasalend",
		"Flag of the Federation of Rhodesia and Nyasaland.svg",
	},
	FRO = {
		name = "Farer orollari",
		"Flag of the Faroe Islands.svg",
	},
	FSA = {
		name = "Janubiy Arabiston Federatsiyasi",
		"Flag of the Federation of South Arabia.svg",
	},
	FSM = {
		name = "Mikroneziya",
		"Flag of the Federated States of Micronesia.svg",
	},
	GAB = {
		name = "Gabon",
		"Flag of Gabon.svg",
	},
	GAM = {
		name = "Gambiya",
		"Flag of The Gambia.svg",
	},
	GBR = {
		name = "Buyuk Britaniya",
		"Flag of the United Kingdom.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	GBS = {
		name = "Gvineya-Bissau",
		"Flag of Guinea-Bissau.svg",
	},
	GCO = {
		name = "Gold Coast",
		"Flag of the Gold Coast.svg",
	},
	GDR = {
		name = "Sharqiy Germaniya",
		{1959, "Flag of East Germany.svg"},
		{1968, "Flag of the German Olympic Team (1960-1968).svg"},
		"Flag of East Germany.svg",
	},
	GEO = {
		name = "Gurjiston",
		{2004, "Flag of Georgia (1990-2004).svg"},
		"Flag of Georgia.svg",
	},
	GEQ = {
		name = "Ekvatorial Gvineya",
		"Flag of Equatorial Guinea.svg",
	},
	GER = {
		name = "Germaniya",
		{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 = "Gana",
		{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 = "Gretsiya",
		{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 = "Gvatemala",
		"Flag of Guatemala.svg",
	},
	GUE = {
		name = "Gernsi",
		{1985, "Flag of Guernsey (1936).svg"},
		"Flag of Guernsey.svg",
	},
	GUI = {
		name = "Gvineya",
		"Flag of Guinea.svg",
	},
	GUM = {
		name = "Guam",
		"Flag of Guam.svg",
	},
	GUY = {
		name = "Gayana",
		{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 = "Gaiti",
		{1963, "Flag of Haiti.svg"},
		{1986, "Flag of Haiti (1964-1986).svg"},
		"Flag of Haiti.svg",
	},
	HBR = {
		name = "Britaniya Gondurasi",
		"Flag of British Honduras.svg",
	},
	HKG = {
		name = "Gonkong",
		{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 = "Gonduras",
		"Flag of Honduras.svg",
	},
	HUN = {
		name = "Mojariston",
		{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 = "Irlandiya erkin davlati",
		"Flag of Ireland.svg",
	},
	INA = {
		name = "Indoneziya",
		"Flag of Indonesia.svg",
	},
	IND = {
		name = "Hindiston",
		{1946, "British Raj Red Ensign.svg"},
		{2012, "Flag of India.svg"},
		{2013, "Olympic flag.svg"},
		"Flag of India.svg",
	},
	IOA = {
		name = "Mustaqil Olimpiada qatnashchilari",
		"Olympic flag.svg",
	},
	IOC = {
		name = "Quvayt Olimpiadachilari",
		"Olympic flag.svg",
	},
	IOM = {
		name = "Man oroli",
		"Flag of the Isle of Man.svg",
	},
	IOP = {
		name = "Mustaqil Olimpiada qatnashchilari",
		"Olympic flag.svg",
	},
	['IOP, IOA'] = {
		name = "Mustaqil Olimpiadachilar",
		"Olympic flag.svg",
	},
	IPA = {
		name = "Individual Paralimpiyachilar",
		"Paralympic flag.svg",
	},
	IPP = {
		name = "Mustaqil Paralimpiyachilar",
		"Paralympics logo 1988-94.svg",
	},
	IRE = {
		name = "Irlandiya",
		"Flag of Leinster.svg",
	},
	IRI = {
		name = "Eron",
		{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 = "Irlandiya",
		"Flag of Ireland.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	IRN = {
		name = "Eron",
		{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 = "Iroq",
		{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 = "Islandiya",
		{1915, "Flag of Denmark.svg"},
		{1944, "Ligʻt Blue Flag of Iceland.svg"},
		"Flag of Iceland.svg",
	},
	ISR = {
		name = "Isroil",
		"Flag of Israel.svg",
	},
	ISV = {
		name = "Virgin orollari",
		"Flag of the United States Virgin Islands.svg",
	},
	ITA = {
		name = "Italiya",
		{1946, "Flag of Italy (1861-1946).svg"},
		{2002, "Flag of Italy.svg"},
		{2006, "Flag of Italy (2003-2006).svg"},
		"Flag of Italy.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	IVB = {
		name = "Britaniya Virgin orollari",
		"Flag of the British Virgin Islands.svg",
	},
	JAM = {
		name = "Yamayka",
		{1957, "Flag of Jamaica (1906-1957).svg"},
		{1962, "Flag of Jamaica (1957-1962).svg"},
		"Flag of Jamaica.svg",
	},
	JER = {
		name = "Jersi",
		{1980, "Flag of Jersey (pre 1981).svg"},
		"Flag of Jersey.svg",
	},
	JOR = {
		name = "Iordaniya",
		"Flag of Jordan.svg",
	},
	JPN = {
		name = "Yaponiya",
		{1999, "Flag of Japan (1870-1999).svg"},
		"Flag of Japan.svg",
	},
	KAZ = {
		name = "Qozogʻiston",
		"Flag of Kazakhstan.svg",
	},
	KEN = {
		name = "Keniya",
		{1963, "Flag of British East Africa.svg"},
		"Flag of Kenya.svg",
	},
	KGZ = {
		name = "Qirgʻiziston",
		"Flag of Kyrgyzstan.svg",
	},
	KHM = {
		name = "Kxmer Respublikasi",
		"Flag of the Khmer Republic.svg",
	},
	KIR = {
		name = "Kiribati",
		"Flag of Kiribati.svg",
	},
	KOR = {
		name = "Koreya Respublikasi",
		{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 = "Saudiya Arabistoni",
		{1973, "Flag of Saudi Arabia (1938-1973).svg"},
		"Flag of Saudi Arabia.svg",
	},
	KUW = {
		name = "Quvayt",
		"Flag of Kuwait.svg",
	},
	LAO = {
		name = "Laos",
		{1975, "Flag of Laos (1952-1975).svg"},
		"Flag of Laos.svg",
	},
	LAT = {
		name = "Latviya",
		"Flag of Latvia.svg",
	},
	LBA = {
		name = "Liviya",
		{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 = "Livan",
		"Flag of Lebanon.svg",
	},
	LBR = {
		name = "Liberiya",
		"Flag of Liberia.svg",
	},
	LCA = {
		name = "Sent-Lusiya",
		{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 = "Lesoto",
		{1987, "Flag of Lesotho (1966).svg"},
		{2006, "Flag of Lesotho (1987-2006).svg"},
		"Flag of Lesotho.svg",
	},
	LIB = {
		name = "Livan",
		"Flag of Lebanon.svg",
	},
	LIE = {
		name = "Lixtenshteyn",
		{1921, "Flag of Liechtenstein (1852-1921).svg"},
		{1937, "Flag of Liechtenstein (1921-1937).svg"},
		"Flag of Liechtenstein.svg",
	},
	LTU = {
		name = "Litva",
		{1940, "Flag of Lithuania (1918-1940).svg"},
		{2004, "Flag of Lithuania (1988-2004).svg"},
		"Flag of Lithuania.svg",
	},
	LUX = {
		name = "Lyuksemburg",
		"Flag of Luxembourg.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	MAC = {
		name = "Makao",
		{1999, "Bandeira do Leal Senado.svg"},
		"Flag of Macau.svg",
	},
	MAD = {
		name = "Madagaskar",
		"Flag of Madagascar.svg",
	},
	MAL = {
		name = "Malaya",
		"Flag of Malaya.svg",
	},
	MAR = {
		name = "Marokash",
		"Flag of Morocco.svg",
	},
	MAS = {
		name = "Malayziya",
		{1963, "Flag of Malaya.svg"},
		"Flag of Malaysia.svg",
	},
	MAW = {
		name = "Malavi",
		{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 = "Maldivlar",
		"Flag of Maldives.svg",
	},
	MEX = {
		name = "Meksika",
		{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 = "Moʻgʻuliston",
		{1992, "Flag of the People's Republic of Mongolia (1940-1992).svg"},
		"Flag of Mongolia.svg",
	},
	MHL = {
		name = "Marshall orollari",
		"Flag of the Marshall Islands.svg",
	},
	MIX = {
		name = "Milliy Olimpiya qoʻmitalari",
		"Olympic flag.svg",
	},
	MKD = {
		name = "Makedoniya",
		"Flag of Macedonia.svg",
	},
	MLI = {
		name = "Mali",
		"Flag of Mali.svg",
	},
	MLT = {
		name = "Malta",
		{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 = "Monako",
		"Flag of Monaco.svg",
	},
	MOZ = {
		name = "Mozambik",
		{1983, "Flag of Mozambique (1975-1983).svg"},
		"Flag of Mozambique.svg",
	},
	MRI = {
		name = "Mavrikiy",
		{1923, "Flag of Mauritius 1906.svg"},
		{1968, "Flag of Mauritius 1923.svg"},
		"Flag of Mauritius.svg",
	},
	MTN = {
		name = "Mavritaniya",
		"Flag of Mauritania.svg",
	},
	MYA = {
		name = "Myanma",
		{1974, "Flag of Burma (1948-1974).svg"},
		{2010, "Flag of Myanmar (1974-2010).svg"},
		"Flag of Myanmar.svg",
	},
	NAM = {
		name = "Namibiya",
		"Flag of Namibia.svg",
	},
	NBO = {
		name = "Shimoliy Borneo",
		"Flag of North Borneo 1948-1963.png",
	},
	NCA = {
		name = "Nikaragua",
		"Flag of Nicaragua.svg",
	},
	NCL = {
		name = "Yangi Kaledoniya",
		"Flag of New Caledonia.svg",
	},
	NED = {
		name = "Niderlandlar",
		"Flag of the Netherlands.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	NEP = {
		name = "Nepal",
		"Flag of Nepal.svg",
	},
	NEW = {
		name = "Nyufaundlend",
		"Newfoundland Red Ensign.png",
	},
	NFI = {
		name = "Norfolk orollari",
		"Flag of Norfolk Island.svg",
	},
	NGR = {
		name = "Nigeriya",
		{1960, "Flag of British Colonial Nigeria.svg"},
		"Flag of Nigeria.svg",
	},
	NIC = {
		name = "Nikaragua",
		"Flag of Nicaragua.svg",
	},
	NIG = {
		name = "Niger",
		"Flag of Niger.svg",
	},
	NIR = {
		name = "Shimoliy Irlandiya",
		"Ulster banner.svg",
	},
	NIU = {
		name = "Niue",
		"Flag of Niue.svg",
	},
	NMI = {
		name = "Shimoliy Mariana orollari",
		"Flag of the Northern Mariana Islands.svg",
	},
	NOR = {
		name = "Norvegiya",
		"Flag of Norway.svg",
	},
	NRH = {
		name = "Shimoliy Rodeziya",
		"Flag of Northern Rhodesia (1939-1953).svg",
	},
	NRU = {
		name = "Nauru",
		"Flag of Nauru.svg",
	},
	NZL = {
		name = "Yangi Zelandiya",
		"Flag of New Zealand.svg",
		["Summer Olympics"] = {
			[1980] = "Flag of New Zealand Olympic Committee (1979-1994).svg",
		},
	},
	OMA = {
		name = "Ummon",
		{1995, "Flag of Oman (1970-1995).svg"},
		"Flag of Oman.svg",
	},
	PAK = {
		name = "Pokiston",
		"Flag of Pakistan.svg",
	},
	PAN = {
		name = "Panama",
		"Flag of Panama.svg",
	},
	PAR = {
		name = "Paragvay",
		{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 = "Filippin",
		{1936, "Flag of the Philippines (1919-1936).svg"},
		{1985, "Flag of the Philippines (navy blue).svg"},
		{1986, "Flag_of_the_Philippines_(ligʻt_blue).svg"},
		{1998, "Flag of the Philippines (navy blue).svg"},
		"Flag of the Philippines.svg",
	},
	PLE = {
		name = "Falastin",
		"Flag of Palestine.svg",
	},
	PLW = {
		name = "Palau",
		"Flag of Palau.svg",
	},
	PNG = {
		name = "Papua Yangi Gvineya",
		{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 = "Polsha",
		{1928, "Flag of Poland (1919-1928).svg"},
		{1980, "Flag of Poland (1928-1980).svg"},
		"Flag of Poland.svg",
	},
	POR = {
		name = "Portugaliya",
		"Flag of Portugal.svg",
		["Summer Olympics"] = {
			[1980] = "Flag of Portugal-1980-Olympics.svg",
		},
	},
	PRK = {
		name = "Koreya Xalq Demokratik Respublikasi",
		"Flag of North Korea.svg",
	},
	PUR = {
		name = "Puerto Riko",
		{1951, "Puerto Rico Azul Celeste.png"},
		{1995, "Flag of Puerto Rico (1952-1995).svg"},
		"Flag of Puerto Rico.svg",
		["Summer Olympics"] = {
			[1948] = "Puerto rico national sport flag.svg",
			[1952] = "Puerto rico national sport flag.svg",
			[1980] = "Olympic flag.svg",
		},
	},
	PYF = {
		name = "Fransuz Polineziyasi",
		"Flag of French Polynesia.svg",
	},
	QAT = {
		name = "Qatar",
		"Flag of Qatar.svg",
	},
	RHO = {
		name = "Rodeziya",
		{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 = "Qochoqlar Olimpiya jamoasi",
		"Olympic flag.svg",
	},
	ROC = {
		name = "Xitoy Respublikasi",
		{1928, "Flag of the Republic of China (1912-1928).svg"},
		"Flag of the Republic of China.svg",
	},
	ROM = {
		name = "Ruminiya",
		{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 = "Qochoqlar Olimpiya jamoasi",
		"Olympic flag.svg",
	},
	ROU = {
		name = "Ruminiya",
		{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 = "Janubiy Afrika Respublikasi",
		{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",
		},
		["Summer Olympics"] = {
			[1992] = "South African Olympic Flag.svg",
		},
	},
	RU1 = {
		name = "Rossiya Imperiyasi",
		"Flag of Russia.svg",
	},
	RUS = {
		name = "Rossiya",
		"Flag of Russia.svg",
	},
	RWA = {
		name = "Ruanda",
		{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 = "Janubiy Afrika Respublikasi",
		{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",
		},
		["Summer Olympics"] = {
			[1992] = "South African Olympic Flag.svg",
		},
	},
	SAM = {
		name = "Samoa",
		"Flag of Samoa.svg",
	},
	SAR = {
		name = "Saravak",
		"Flag of the Crown Colony of Sarawak (1946).svg",
	},
	SCG = {
		name = "Serbiya va Montenegro",
		"Flag of Serbia and Montenegro.svg",
	},
	SCN = {
		name = "Sent Kristofer-Nevis-Angilla",
		"Flag of Saint Christopher-Nevis-Anguilla.svg",
	},
	SCO = {
		name = "Shotlandiya",
		"Flag of Scotland.svg",
	},
	SEN = {
		name = "Senegal",
		"Flag of Senegal.svg",
	},
	SEY = {
		name = "Seyshell orollari",
		{1996, "Flag of the Seychelles (1977-1996).svg"},
		"Flag of Seychelles.svg",
	},
	SGP = {
		name = "Singapur",
		{1959, "Flag of Singapore (1946-1959).svg"},
		"Flag of Singapore.svg",
	},
	SHE = {
		name = "Muqaddas Yelena",
		{1984, "Flag of Saint Helena (1874-1984).svg"},
		"Flag of Saint Helena.svg",
	},
	SHN = {
		name = "Muqaddas Yelena",
		{1984, "Flag of Saint Helena (1874-1984).svg"},
		"Flag of Saint Helena.svg",
	},
	SIN = {
		name = "Singapur",
		{1959, "Flag of Singapore (1946-1959).svg"},
		"Flag of Singapore.svg",
	},
	SKN = {
		name = "Sent Kitts va Nevis",
		{1983, "Flag of Saint Christopher-Nevis-Anguilla.svg"},
		"Flag of Saint Kitts and Nevis.svg",
	},
	SLE = {
		name = "Syerra-Leone",
		{1961, "Flag of Sierra Leone 1916-1961.gif"},
		"Flag of Sierra Leone.svg",
	},
	SLO = {
		name = "Sloveniya",
		"Flag of Slovenia.svg",
	},
	SMR = {
		name = "San Marino",
		{2010, "Flag of San Marino (before 2011).svg"},
		"Flag of San Marino.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	SOL = {
		name = "Solomon orollari",
		"Flag of the Solomon Islands.svg",
	},
	SOM = {
		name = "Somali",
		"Flag of Somalia.svg",
	},
	SRB = {
		name = "Serbiya",
		{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 = "Janubiy Rodeziya",
		"Flag of Southern Rhodesia.svg",
	},
	SRI = {
		name = "Shri Lanka",
		{1948, "British Ceylon flag.svg"},
		{1951, "Flag of Ceylon (1948-1951).svg"},
		{1972, "Flag of Ceylon (1951-1972).svg"},
		"Flag of Sri Lanka.svg",
	},
	SSD = {
		name = "Janubiy Sudan",
		"Flag of South Sudan.svg",
	},
	STP = {
		name = "San Tome va Prinsipi",
		"Flag of Sao Tome and Principe.svg",
	},
	SUD = {
		name = "Sudan",
		{1970, "Flag of Sudan (1956-1970).svg"},
		"Flag of Sudan.svg",
	},
	SUI = {
		name = "Shveytsariya",
		"Flag of Switzerland.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	SUR = {
		name = "Surinam",
		{1975, "Flag of Dutch Guyana.svg"},
		"Flag of Suriname.svg",
	},
	SVG = {
		name = "Sent Vinsent va Grenadinlar",
		{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 = "Slovakiya",
		"Flag of Slovakia.svg",
	},
	SWE = {
		name = "Shvetsiya",
		{1905, "Swedish civil ensign (1844–1905).svg"},
		"Flag of Sweden.svg",
	},
	SWK = {
		name = "Saravak",
		"Flag of the Crown Colony of Sarawak (1946).svg",
	},
	SWZ = {
		name = "Svazilend",
		"Flag of Swaziland.svg",
	},
	SYR = {
		name = "Suriya",
		{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 = "Tanganika",
		"Flag of Tanganyika.svg",
	},
	TAH = {
		name = "Fransuz Polineziyasi",
		"Flag of French Polynesia.svg",
	},
	TAN = {
		name = "Tanzaniya",
		{1964, "Flag of Tanganyika.svg"},
		"Flag of Tanzania.svg",
	},
	TCH = {
		name = "Chexoslovakiya",
		"Flag of Czechoslovakia.svg",
	},
	TCI = {
		name = "Tyurks va Kaykos orollari",
		"Flag of the Turks and Caicos Islands.svg",
	},
	TGA = {
		name = "Tonga",
		"Flag of Tonga.svg",
	},
	THA = {
		name = "Tailand",
		"Flag of Thailand.svg",
	},
	TJK = {
		name = "Tojikiston",
		"Flag of Tajikistan.svg",
	},
	TKL = {
		name = "Tokelau",
		"Flag of Tokelau.svg",
	},
	TKM = {
		name = "Turkmaniston",
		{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 = "Tyurks va Kaykos orollari",
		"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 = "Xitoy Taypeyi",
		{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",
		["Summer Olympics"] = "Flag of Chinese Taipei for Olympic games.svg",
		["Winter Olympics"] = "Flag of Chinese Taipei for Olympic games.svg",
		["Asian Para Games"] = "Chinese Taipei Paralympic Flag.svg",
		["Summer Paralympics"] = "Chinese Taipei Paralympic Flag.svg",
		["Universiade"] = "Flag of Chinese Taipei for Universiade.svg",
		["Summer Universiade"] = "Flag of Chinese Taipei for Universiade.svg",
		["Winter Universiade"] = "Flag of Chinese Taipei for Universiade.svg",
	},
	TRI = {
		name = "Trinidad va Tobago",
		{1958, "Trinidad colonial 1889-1958.gif"},
		"Flag of Trinidad and Tobago.svg",
	},
	TTO = {
		name = "Trinidad va Tobago",
		{1958, "Trinidad colonial 1889-1958.gif"},
		"Flag of Trinidad and Tobago.svg",
	},
	TUN = {
		name = "Tunis",
		{1999, "Pre-1999 Flag of Tunisia.svg"},
		"Flag of Tunisia.svg",
	},
	TUR = {
		name = "Turkiya",
		{1936, "Flag of the Ottoman Empire.svg"},
		"Flag of Turkey.svg",
	},
	TUV = {
		name = "Tuvalu",
		"Flag of Tuvalu.svg",
	},
	UAE = {
		name = "Birlashgan Arab Amirliklari",
		"Flag of the United Arab Emirates.svg",
	},
	UAR = {
		name = "Birlashgan Arab Respublikasi",
		"Flag of the United Arab Republic.svg",
	},
	UGA = {
		name = "Uganda",
		{1962, "Flag of the Uganda Protectorate.svg"},
		"Flag of Uganda.svg",
	},
	UKR = {
		name = "Ukraina",
		"Flag of Ukraine.svg",
	},
	URS = {
		name = "Sovet Ittifoqi",
		{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 = "Urugvay",
		"Flag of Uruguay.svg",
	},
	USA = {
		name = "Amerika Qoʻshma Shtatlari",
		{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 = "Oʻzbekiston",
		"Flag of Uzbekistan.svg",
	},
	VAN = {
		name = "Vanuatu",
		"Flag of Vanuatu.svg",
	},
	VEN = {
		name = "Venesuela",
		{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 = "Vyetnam",
		{1975, "Flag of South Vietnam.svg"},
		"Flag of Vietnam.svg",
	},
	VIN = {
		name = "Sent Vinsent va Grenadinlar",
		{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 = "Janubiy Vyetnam",
		{1975, "Flag of South Vietnam.svg"},
		"Flag of Vietnam.svg",
	},
	VOL = {
		name = "Yuqori Volta",
		"Flag of Upper Volta.svg",
	},
	WAL = {
		name = "Uels",
		{1952, "Flag of England.svg"},
		{1959, "Flag of Wales (1953-1959).svg"},
		"Flag of Wales 2.svg",
	},
	WLF = {
		name = "Uollis va Futuna",
		"Flag of Wallis and Futuna.svg",
	},
	WSM = {
		name = "Gʻarbiy Samoa",
		"Flag of Samoa.svg",
	},
	YAR = {
		name = "Shimoliy Yaman",
		"Flag of North Yemen.svg",
	},
	YEM = {
		name = "Yaman",
		"Flag of Yemen.svg",
	},
	YMD = {
		name = "Janubiy Yaman",
		"Flag of South Yemen.svg",
	},
	YUG = {
		name = "Yugoslaviya",
		{1941, "Flag of the Kingdom of Yugoslavia.svg"},
		{1946, "Flag of the Democratic Federal Yugoslavia.svg"},
		"Flag of SFR Yugoslavia.svg",
	},
	ZAI = {
		name = "Zair",
		"Flag of Zaire.svg",
	},
	ZAM = {
		name = "Zambiya",
		{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 = "Zimbabve",
		{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 = "Aralash jamoa",
		"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]
	if not country then
		error('Invalid country alias: ' .. tostring(alias))
	end
	if yes(args.flag) then
		return getFlag(args, country) or error('No flag defined for ' .. alias)
	else
		return country.name or error('No name defined for ' .. alias)
	end
end

return { main = main }