Modul:Country alias

Revisi sejak 18 Agustus 2017 16.20 oleh Enperfectify World (bicara | kontrib) (.)
(beda) ← Revisi sebelumnya | Revisi terkini (beda) | Revisi selanjutnya → (beda)

-- 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 used for multiple countries:
  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
    Hong Kong						 HKG, HKG_CGF (latter added to keep colonial flag)
    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 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",
		},
	},
	ADN = {
		name = "Aden",
		"Flag of the Colony of Aden.svg",
	},
	AFG = {
		name = "Afganistan",
		{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 = "Antillen Belanda",
		{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 = "Albania",
		{1992, "Flag of Albania (1946-1992).svg"},
		"Flag of Albania.svg",
	},
	ALG = {
		name = "Aljazair",
		"Flag of Algeria.svg",
	},
	ANA = {
		name = "Authorised Neutral Athletes",
		"ANA flag (2017).svg",
	},
	AND = {
		name = "Andora",
		"Flag of Andorra.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	ANG = {
		name = "Angola",
		"Flag of Angola.svg",
	},
	ANG_CGF = {
		name = "Anguilla",
		"Flag of Anguilla.svg",
	},
	ANT = {
		name = "Antigua dan Barbuda",
		{1966, "Missing Blue Ensign.svg"},
		"Flag of Antigua and Barbuda.svg",
	},
	ANZ = {
		name = "Australasia",
		"Flag of Australasian team for Olympic games.svg",
	},
	AOI = {
		name = "Independent Olympic Athletes",
		"Olympic flag.svg",
	},
	ARG = {
		name = "Argentina",
		"Flag of Argentina.svg",
	},
	ARM = {
		name = "Armenia",
		"Flag of Armenia.svg",
	},
	ART = {
		name = "Athlete Refugee Team",
		"IAAF flag (2017).svg",
	},
	ARU = {
		name = "Aruba",
		"Flag of Aruba.svg",
	},
	ASA = {
		name = "Samoa Amerika",
		"Flag of American Samoa.svg",
	},
	ATG = {
		name = "Antigua dan Barbuda",
		{1966, "Missing Blue Ensign.svg"},
		"Flag of Antigua and Barbuda.svg",
	},
	AUS = {
		name = "Australia",
		{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 = "Austria",
		{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 = "Belgia",
		"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 = "Guyana Britania",
		{1906, "Flag of British Guiana (1875–1906).svg"},
		{1919, "Flag of British Guiana (1906-1919).svg"},
		{1955, "Flag of British Guiana (1919-1955).svg"},
		"Flag of British Guiana (1955–1966).svg",
	},
	BHU = {
		name = "Bhutan",
		"Flag of Bhutan.svg",
	},
	BIH = {
		name = "Bosnia dan 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 = "Belarus",
		{2012, "Flag of Belarus (1995-2012).svg"},
		"Flag of Belarus.svg",
	},
	BNB = {
		name = "Borneo Utara Britania",
		"Flag of North Borneo (1948-1963).svg",
	},
	BOH = {
		name = "Bohemia",
		"Flag of Bohemia.svg",
		["Summer Olympics"] = {
			[1912] = "Bohemian Olympic Flag (1912).png",
		},
	},
	BOL = {
		name = "Bolivia",
		"Flag of Bolivia.svg",
	},
	BOT = {
		name = "Botswana",
		"Flag of Botswana.svg",
	},
	BRA = {
		name = "Brasil",
		{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 = "Bulgaria",
		{1946, "Flag of Bulgaria.svg"},
		{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 = "Hindia Barat Britania",
		"Flag of the West Indies Federation.svg",
	},
	CAF = {
		name = "Republik Afrika Tengah",
		"Flag of the Central African Republic.svg",
	},
	CAM = {
		name = "Kamboja",
		{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 = "Kepulauan Cayman",
		{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 = "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 = "Tiongkok",
		"Flag of the People's Republic of China.svg",
	},
	CIV = {
		name = "Pantai Gading",
		"Flag of Côte d'Ivoire.svg",
	},
	CMR = {
		name = "Kamerun",
		{1975, "Flag of Cameroon (1961-1975).svg"},
		"Flag of Cameroon.svg",
	},
	COD = {
		name = "RD Kongo",
		{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 = "Kepulauan Cook",
		{1979, "Flag of the Cook Islands (1973-1979).svg"},
		"Flag of the Cook Islands.svg",
	},
	COL = {
		name = "Kolombia",
		"Flag of Colombia.svg",
	},
	COM = {
		name = "Komoro",
		{1996, "Flag of the Comoros (1992-1996).svg"},
		{2001, "Flag of the Comoros (1996-2001).svg"},
		"Flag of the Comoros.svg",
	},
	CPV = {
		name = "Tanjung Verde",
		"Flag of Cape Verde.svg",
	},
	CRC = {
		name = "Kosta Rika",
		"Flag of Costa Rica.svg",
	},
	CRO = {
		name = "Kroasia",
		"Flag of Croatia.svg",
	},
	CUB = {
		name = "Kuba",
		"Flag of Cuba.svg",
	},
	CUR = {
		name = "Curaçao",
		"Flag of Curaçao.svg",
	},
	CUW = {
		name = "Curaçao",
		"Flag of Curaçao.svg",
	},
	CYP = {
		name = "Siprus",
		{2006, "Flag of Cyprus (1960-2006).svg"},
		"Flag of Cyprus.svg",
	},
	CZE = {
		name = "Republik Ceko",
		"Flag of the Czech Republic.svg",
	},
	DAH = {
		name = "Dahomey",
		"Flag of Benin.svg",
	},
	DEN = {
		name = "Denmark",
		"Flag of Denmark.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	DJI = {
		name = "Djibouti",
		"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 = "Republik Dominika",
		"Flag of the Dominican Republic.svg",
	},
	ECU = {
		name = "Ekuador",
		"Flag of Ecuador.svg",
	},
	EGY = {
		name = "Mesir",
		{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 = "Inggris",
		"Flag of England.svg",
	},
	ERI = {
		name = "Eritrea",
		"Flag of Eritrea.svg",
	},
	ESA = {
		name = "El Salvador",
		"Flag of El Salvador.svg",
	},
	ESP = {
		name = "Spanyol",
		{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 = "Estonia",
		"Flag of Estonia.svg",
	},
	ETH = {
		name = "Etiopia",
		{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 = "Tim Jerman Bersatu",
		{1959, "Flag of Germany.svg"},
		"Flag of the German Olympic Team (1960-1968).svg",
	},
	EUN = {
		name = "Tim Bersatu",
		"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 = "Kepulauan Falkland",
		{1999, "Flag of the Falkland Islands (1948-1999).svg"},
		"Flag of the Falkland Islands.svg",
	},
	FAR = {
		name = "Kepulauan Faroe",
		"Flag of the Faroe Islands.svg",
	},
	FIJ = {
		name = "Fiji",
		{1970, "Flag of Fiji 1924-1970.svg"},
		"Flag of Fiji.svg",
	},
	FIN = {
		name = "Finlandia",
		{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 = "Perancis",
		"Flag of France.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	FRG = {
		name = "Jerman Barat",
		{1959, "Flag of Germany.svg"},
		{1968, "Flag of the German Olympic Team (1960-1968).svg"},
		"Flag of Germany.svg",
	},
	FRN = {
		name = "Rhodesia dan Nyasaland",
		"Flag of the Federation of Rhodesia and Nyasaland.svg",
	},
	FRO = {
		name = "Kepulauan Faroe",
		"Flag of the Faroe Islands.svg",
	},
	FSA = {
		name = "Federasi Arab Saudi",
		"Flag of the Federation of South Arabia.svg",
	},
	FSM = {
		name = "Federasi Mikronesia",
		"Flag of the Federated States of Micronesia.svg",
	},
	GAB = {
		name = "Gabon",
		"Flag of Gabon.svg",
	},
	GAM = {
		name = "Gambia",
		"Flag of The Gambia.svg",
	},
	GBR = {
		name = "Britania Raya",
		"Flag of the United Kingdom.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	GBS = {
		name = "Guinea-Bissau",
		"Flag of Guinea-Bissau.svg",
	},
	GCO = {
		name = "Gold Coast",
		"Flag of the Gold Coast.svg",
	},
	GDR = {
		name = "Jerman Timur",
		{1959, "Flag of East Germany.svg"},
		{1968, "Flag of the German Olympic Team (1960-1968).svg"},
		"Flag of East Germany.svg",
	},
	GEO = {
		name = "Georgia",
		{2003, "Flag of Georgia (1990-2004).svg"},
		"Flag of Georgia.svg",
	},
	GEQ = {
		name = "Guinea Khatulistiwa",
		"Flag of Equatorial Guinea.svg",
	},
	GER = {
		name = "Jerman",
		{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 = "Yunani",
		{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).svg"},
		{1919, "Flag of British Guiana (1906-1919).svg"},
		{1955, "Flag of British Guiana (1919-1955).svg"},
		{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 = "Honduras Britania",
		"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",
	},
	HKG_CGF = {
		name = "Hong Kong",
		{1955, "Flag of Hong Kong (1910-1955).png"},
		{1959, "Flag of Hong Kong (1955-1959).png"},
		"Flag of Hong Kong (1959-1997).svg"
	},
	HON = {
		name = "Honduras",
		"Flag of Honduras.svg",
	},
	HUN = {
		name = "Hongaria",
		{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 = "Negara Bebas Irlandia",
		"Flag of Ireland.svg",
	},
	INA = {
		name = "Indonesia",
		"Flag of Indonesia.svg",
	},
	IND = {
		name = "India",
		{1946, "British Raj Red Ensign.svg"},
		{2012, "Flag of India.svg"},
		"Flag of India.svg",
	},
	IOA = {
		name = "Independent Olympic Athletes",
		"Olympic flag.svg",
	},
	IOC = {
		name = "Atlet dari Kuwait",
		"Olympic flag.svg",
	},
	IOM = {
		name = "Pulau Man",
		"Flag of the Isle of Man.svg",
	},
	IOP = {
		name = "Independent Olympic Participants",
		"Olympic flag.svg",
	},
	['IOP, IOA'] = {
		name = "Independent Olympians",
		"Olympic flag.svg",
	},
	IPA = {
		name = "Individual Paralympic Athletes",
		"Paralympic flag.svg",
	},
	IPP = {
		name = "Independent Paralympic Participants",
		"Paralympics logo 1988-94.svg",
	},
	IRE = {
		name = "Irlandia",
		"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",
		["Summer Olympics"] = {
			[1964] = "State Flag of Iran (1964-1980).svg",
		},
	},
	IRL = {
		name = "Irlandia",
		"Flag of Ireland.svg",
		["Summer 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",
		["Summer Olympics"] = {
			[1964] = "State Flag of Iran (1964-1980).svg",
		},
	},
	IRQ = {
		name = "Irak",
		{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"},
		{2003, "Flag of Iraq (1991-2004).svg"},
		{2007, "Flag of Iraq (2004-2008).svg"},
		"Flag of Iraq.svg",
	},
	ISL = {
		name = "Islandia",
		{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 = "Kepulauan Virgin",
		"Flag of the United States Virgin Islands.svg",
	},
	ITA = {
		name = "Italia",
		{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 = "Kepulauan Virgin Britania",
		"Flag of the British Virgin Islands.svg",
	},
	JAM = {
		name = "Jamaika",
		{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 = "Yordania",
		"Flag of Jordan.svg",
	},
	JPN = {
		name = "Jepang",
		{1999, "Flag of Japan (1870-1999).svg"},
		"Flag of Japan.svg",
	},
	KAZ = {
		name = "Kazakstan",
		"Flag of Kazakhstan.svg",
	},
	KEN = {
		name = "Kenya",
		{1963, "Flag of British East Africa.svg"},
		"Flag of Kenya.svg",
	},
	KGZ = {
		name = "Kirgizstan",
		"Flag of Kyrgyzstan.svg",
	},
	KHM = {
		name = "Republik Khmer",
		"Flag of the Khmer Republic.svg",
	},
	KIR = {
		name = "Kiribati",
		"Flag of Kiribati.svg",
	},
	KOR = {
		name = "Korea Selatan",
		{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 = "Arab Saudi",
		{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 = "Latvia",
		"Flag of Latvia.svg",
	},
	LBA = {
		name = "Libya",
		{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 = "Liberia",
		"Flag of Liberia.svg",
	},
	LCA = {
		name = "Saint 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 = "Lituania",
		{1940, "Flag of Lithuania (1918-1940).svg"},
		{2004, "Flag of Lithuania (1988-2004).svg"},
		"Flag of Lithuania.svg",
	},
	LUX = {
		name = "Luksemburg",
		"Flag of Luxembourg.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	MAC = {
		name = "Makau",
		{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 = "Maroko",
		"Flag of Morocco.svg",
	},
	MAS = {
		name = "Malaysia",
		{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",
		["Summer Olympics"] = {
			[2012] = "Flag of Malawi.svg",
		},
	},
	MDA = {
		name = "Moldova",
		"Flag of Moldova.svg",
	},
	MDV = {
		name = "Maladewa",
		"Flag of Maldives.svg",
	},
	MEX = {
		name = "Meksiko",
		{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 = "Mongolia",
		{1991, "Flag of the People's Republic of Mongolia (1940-1992).svg"},
		"Flag of Mongolia.svg",
		["Winter Olympics"] = {
			[1992] = "Flag of the People's Republic of Mongolia (1940-1992).svg",
		},
	},
	MHL = {
		name = "Kepulauan Marshall",
		"Flag of the Marshall Islands.svg",
	},
	MIX = {
		name = "Mixed-NOCs",
		"Olympic flag.svg",
	},
	MKD = {
		name = "Makedonia",
		"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 = "Mauritius",
		{1923, "Flag of Mauritius 1906.svg"},
		{1968, "Flag of Mauritius 1923.svg"},
		"Flag of Mauritius.svg",
	},
	MTN = {
		name = "Mauritania",
		{2016, "Flag of Mauritania (1959–2017).svg"},
		"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 = "Namibia",
		"Flag of Namibia.svg",
	},
	NBO = {
		name = "Borneo Utara",
		"Flag of North Borneo (1948-1963).svg",
	},
	NCA = {
		name = "Nikaragua",
		"Flag of Nicaragua.svg",
	},
	NCL = {
		name = "Kaledonia Baru",
		"Flag of New Caledonia.svg",
	},
	NED = {
		name = "Belanda",
		"Flag of the Netherlands.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	NEP = {
		name = "Nepal",
		"Flag of Nepal.svg",
	},
	NEW = {
		name = "Newfoundland",
		"Newfoundland Red Ensign.png",
	},
	NFI = {
		name = "Pulau Norfolk",
		"Flag of Norfolk Island.svg",
	},
	NGR = {
		name = "Nigeria",
		{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 = "Irlandia Utara",
		"Ulster banner.svg",
	},
	NIU = {
		name = "Niue",
		"Flag of Niue.svg",
	},
	NMI = {
		name = "Kepulauan Mariana Utara",
		"Flag of the Northern Mariana Islands.svg",
	},
	NOR = {
		name = "Norwegia",
		"Flag of Norway.svg",
	},
	NRH = {
		name = "Rhodesia Utara",
		"Flag of Northern Rhodesia (1939-1953).svg",
	},
	NRU = {
		name = "Nauru",
		"Flag of Nauru.svg",
	},
	NZL = {
		name = "Selandia Baru",
		"Flag of New Zealand.svg",
		["Summer Olympics"] = {
			[1980] = "Flag of New Zealand Olympic Committee (1979-1994).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 = "Filipina",
		{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 = "Palestina",
		"Flag of Palestine.svg",
	},
	PLW = {
		name = "Palau",
		"Flag of Palau.svg",
	},
	PNG = {
		name = "Papua Nugini",
		{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 = "Polandia",
		{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",
		["Summer Olympics"] = {
			[1980] = "Flag of Portugal-1980-Olympics.svg",
		},
	},
	PRK = {
		name = "Korea Utara",
		"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 = "Polinesia Perancis",
		"Flag of French Polynesia.svg",
	},
	QAT = {
		name = "Qatar",
		"Flag of Qatar.svg",
	},
	RHO = {
		name = "Rhodesia",
		{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 = "Republik Tiongkok",
		{1928, "Flag of the Republic of China (1912-1928).svg"},
		"Flag of the Republic of China.svg",
	},
	ROM = {
		name = "Rumania",
		{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 = "Rumania",
		{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 = "Afrika Selatan",
		{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 = "Kekaisaran Rusia",
		"Flag of Russia.svg",
	},
	RUS = {
		name = "Rusia",
		"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 = "Afrika Selatan",
		{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 = "Sarawak",
		"Flag of the Crown Colony of Sarawak (1946).svg",
	},
	SCG = {
		name = "Serbia dan Montenegro",
		"Flag of Serbia and Montenegro.svg",
	},
	SCN = {
		name = "Saint Christopher-Nevis-Anguilla",
		"Flag of Saint Christopher-Nevis-Anguilla.svg",
	},
	SCO = {
		name = "Skotlandia",
		"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 = "Singapura",
		{1959, "Flag of Singapore (1946-1959).svg"},
		"Flag of Singapore.svg",
	},
	SHE = {
		name = "Saint Helena",
		{1984, "Flag of Saint Helena (1874-1984).svg"},
		"Flag of Saint Helena.svg",
	},
	SHN = {
		name = "Saint Helena",
		{1984, "Flag of Saint Helena (1874-1984).svg"},
		"Flag of Saint Helena.svg",
	},
	SIN = {
		name = "Singapura",
		{1959, "Flag of Singapore (1946-1959).svg"},
		"Flag of Singapore.svg",
	},
	SKN = {
		name = "Saint Kitts dan 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 = "Slovenia",
		"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 = "Kepulauan Solomon",
		"Flag of the Solomon Islands.svg",
	},
	SOM = {
		name = "Somalia",
		"Flag of Somalia.svg",
	},
	SRB = {
		name = "Serbia",
		{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 = "Rhodesia Selatan",
		"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 = "Sudan Selatan",
		"Flag of South Sudan.svg",
	},
	STP = {
		name = "São Tomé dan 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 = "Swiss",
		"Flag of Switzerland.svg",
		["Summer Olympics"] = {
			[1980] = "Olympic flag.svg",
		},
	},
	SUR = {
		name = "Suriname",
		{1975, "Flag of Dutch Guyana.svg"},
		"Flag of Suriname.svg",
	},
	SVG = {
		name = "Saint Vincent dan 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 = "Slowakia",
		"Flag of Slovakia.svg",
	},
	SWE = {
		name = "Swedia",
		{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 = "Suriah",
		{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 = "Polinesia Perancis",
		"Flag of French Polynesia.svg",
	},
	TAN = {
		name = "Tanzania",
		{1964, "Flag of Tanganyika.svg"},
		"Flag of Tanzania.svg",
	},
	TCH = {
		name = "Cekoslowakia",
		"Flag of Czechoslovakia.svg",
	},
	TCI = {
		name = "Kepulauan Turks dan Caicos",
		"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 = "Kepulauan Turks dan Caicos",
		"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 = "Tionghoa 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",
		["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 dan Tobago",
		{1958, "Trinidad colonial 1889-1958.gif"},
		"Flag of Trinidad and Tobago.svg",
	},
	TTO = {
		name = "Trinidad dan Tobago",
		{1958, "Trinidad colonial 1889-1958.gif"},
		"Flag of Trinidad and Tobago.svg",
	},
	TUN = {
		name = "Tunisia",
		{1999, "Pre-1999 Flag of Tunisia.svg"},
		"Flag of Tunisia.svg",
	},
	TUR = {
		name = "Turki",
		{1936, "Flag of the Ottoman Empire.svg"},
		"Flag of Turkey.svg",
	},
	TUV = {
		name = "Tuvalu",
		"Flag of Tuvalu.svg",
	},
	UAE = {
		name = "Uni Emirat Arab",
		"Flag of the United Arab Emirates.svg",
	},
	UAR = {
		name = "Republik Arab Bersatu",
		"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 = "Uni Soviet",
		{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 = "Amerika Serikat",
		{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 dan 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 = "Vietnam Selatan",
		{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 Wales 2.svg"},
		{1959, "Flag of Wales (1953-1959).svg"},
		"Flag of Wales 2.svg",
	},
	WLF = {
		name = "Wallis dan Futuna",
		"Flag of Wallis and Futuna.svg",
	},
	WSM = {
		name = "Samoa Barat",
		"Flag of Samoa.svg",
	},
	YAR = {
		name = "Yaman Utara",
		"Flag of North Yemen.svg",
	},
	YEM = {
		name = "Yaman",
		"Flag of Yemen.svg",
	},
	YMD = {
		name = "Yaman Selatan",
		"Flag of South Yemen.svg",
	},
	YUG = {
		name = "Yugoslavia",
		{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 = "Zambia",
		{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 = "Tim campuran",
		"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 }