/*
 * Copyright 2012 Google Inc.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License. You may obtain a copy of
 * the License at
 * 
 * http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations under
 * the License.
 */
package com.google.gwt.i18n.client.impl.cldr;

import com.google.gwt.core.client.JavaScriptObject;

// DO NOT EDIT - GENERATED FROM CLDR DATA

/**
 * Localized names for the "ln" locale.
 */
public class LocalizedNamesImpl_ln extends LocalizedNamesImpl {

  @Override
  public String[] loadSortedRegionCodes() {
    return new String[] {
        "AF",
        "ZA",
        "SA",
        "DE",
        "AL",
        "DZ",
        "US",
        "AM",
        "AD",
        "AI",
        "AO",
        "GB",
        "AQ",
        "AG",
        "AR",
        "AW",
        "HT",
        "AZ",
        "BS",
        "BH",
        "BB",
        "BE",
        "BZ",
        "BD",
        "BJ",
        "BM",
        "BG",
        "MM",
        "FO",
        "IC",
        "CV",
        "KY",
        "CK",
        "FK",
        "MP",
        "MH",
        "TC",
        "VI",
        "VG",
        "CC",
        "UM",
        "SB",
        "AX",
        "BO",
        "BA",
        "BW",
        "BQ",
        "BR",
        "BN",
        "BF",
        "BI",
        "BT",
        "BY",
        "CW",
        "DK",
        "DG",
        "DM",
        "DJ",
        "EC",
        "ER",
        "BV",
        "CP",
        "NF",
        "IM",
        "CX",
        "AC",
        "ES",
        "EE",
        "ET",
        "EZ",
        "EG",
        "FR",
        "FJ",
        "FI",
        "PH",
        "GA",
        "GM",
        "GH",
        "GR",
        "GD",
        "GN",
        "GW",
        "GQ",
        "GY",
        "GF",
        "GL",
        "GG",
        "GP",
        "GU",
        "GT",
        "HK",
        "UA",
        "HM",
        "GS",
        "ID",
        "IN",
        "IR",
        "IQ",
        "IE",
        "UY",
        "IS",
        "IL",
        "IT",
        "JE",
        "NC",
        "KH",
        "CM",
        "CA",
        "QA",
        "KZ",
        "KE",
        "CU",
        "KG",
        "KI",
        "CO",
        "KM",
        "CG",
        "KP",
        "KR",
        "CR",
        "CI",
        "KW",
        "HR",
        "LA",
        "RE",
        "LS",
        "LV",
        "LB",
        "LR",
        "LY",
        "LU",
        "EU",
        "LI",
        "LT",
        "AE",
        "IO",
        "MG",
        "MV",
        "MO",
        "MW",
        "MY",
        "ML",
        "MT",
        "MA",
        "MQ",
        "MK",
        "YT",
        "MX",
        "FM",
        "MD",
        "MC",
        "MN",
        "ME",
        "MU",
        "MR",
        "MZ",
        "MS",
        "NA",
        "NR",
        "NP",
        "NI",
        "NG",
        "NE",
        "NO",
        "NU",
        "NL",
        "OM",
        "HN",
        "HU",
        "AU",
        "AT",
        "PK",
        "PY",
        "PW",
        "PS",
        "PA",
        "PG",
        "PE",
        "PN",
        "PF",
        "PL",
        "PT",
        "PR",
        "QO",
        "CF",
        "DO",
        "CD",
        "RU",
        "RO",
        "RW",
        "EH",
        "WS",
        "AS",
        "BL",
        "SH",
        "KN",
        "LC",
        "SM",
        "MF",
        "PM",
        "VC",
        "ST",
        "SV",
        "SN",
        "RS",
        "CZ",
        "SL",
        "CL",
        "SK",
        "SI",
        "SG",
        "CN",
        "CY",
        "SY",
        "LK",
        "SO",
        "SD",
        "SS",
        "SR",
        "SJ",
        "SZ",
        "SE",
        "CH",
        "SX",
        "SC",
        "TA",
        "TH",
        "TW",
        "TZ",
        "TJ",
        "TF",
        "TM",
        "TR",
        "TL",
        "TT",
        "TN",
        "TG",
        "TK",
        "TO",
        "TD",
        "TV",
        "UG",
        "UN",
        "UZ",
        "VU",
        "VA",
        "VE",
        "VN",
        "WF",
        "XA",
        "XB",
        "XK",
        "YE",
        "JM",
        "ZM",
        "JP",
        "NZ",
        "EA",
        "GI",
        "ZW",
        "GE",
        "JO",
    };
  }

  @Override
  protected void loadNameMapJava() {
    super.loadNameMapJava();
    namesMap.put("001", "Mabelé");
    namesMap.put("002", "Afríka");
    namesMap.put("003", "Ameríka ya Nola");
    namesMap.put("005", "Ameríka ya Sidi");
    namesMap.put("011", "Afríka ya Wɛ́sita");
    namesMap.put("013", "Ameríka ya káti");
    namesMap.put("014", "Afríka ya Ɛ́sita");
    namesMap.put("015", "Afríka ya Nola");
    namesMap.put("017", "Afríka ya Katikáti");
    namesMap.put("018", "Afríka ya Sidi");
    namesMap.put("019", "Ameríka");
    namesMap.put("030", "Azía ya Ɛ́sita");
    namesMap.put("034", "Azía ya Sidi");
    namesMap.put("035", "Azía ya Sidi-Ɛ́sita");
    namesMap.put("039", "Erópa ya Sidi");
    namesMap.put("142", "Azía");
    namesMap.put("143", "Azía ya Katikáti");
    namesMap.put("145", "Azía ya Wɛ́sita");
    namesMap.put("150", "Erópa");
    namesMap.put("151", "Erópa ya Ɛ́sita");
    namesMap.put("154", "Erópa ya Nola");
    namesMap.put("155", "Erópa ya Wɛ́sita");
    namesMap.put("419", "Ameríka Latína");
    namesMap.put("AC", "Esanga ya Mbuta o Likoló");
    namesMap.put("AD", "Andorɛ");
    namesMap.put("AE", "Lɛmila alabo");
    namesMap.put("AF", "Afiganisitá");
    namesMap.put("AG", "Antiga mpé Barbuda");
    namesMap.put("AI", "Angiyɛ");
    namesMap.put("AL", "Alibani");
    namesMap.put("AM", "Amɛni");
    namesMap.put("AO", "Angóla");
    namesMap.put("AQ", "Antarctique");
    namesMap.put("AR", "Arizantinɛ");
    namesMap.put("AS", "Samoa ya Ameriki");
    namesMap.put("AT", "Otilisi");
    namesMap.put("AU", "Ositáli");
    namesMap.put("AX", "Bisanga Ɛland");
    namesMap.put("AZ", "Azɛlɛbaizá");
    namesMap.put("BA", "Bosini mpé Hezegovine");
    namesMap.put("BB", "Barɛbadɛ");
    namesMap.put("BD", "Bengalidɛsi");
    namesMap.put("BE", "Beleziki");
    namesMap.put("BF", "Bukina Faso");
    namesMap.put("BG", "Biligari");
    namesMap.put("BH", "Bahrɛnɛ");
    namesMap.put("BJ", "Benɛ");
    namesMap.put("BL", "Sántu Barthélemy");
    namesMap.put("BN", "Brineyi");
    namesMap.put("BO", "Bolivi");
    namesMap.put("BR", "Brezílɛ");
    namesMap.put("BS", "Bahamasɛ");
    namesMap.put("BT", "Butáni");
    namesMap.put("BV", "Esanga Buvé");
    namesMap.put("BY", "Byelorisi");
    namesMap.put("BZ", "Belizɛ");
    namesMap.put("CA", "Kanada");
    namesMap.put("CC", "Bisanga Kokos");
    namesMap.put("CD", "Republíki ya Kongó Demokratíki");
    namesMap.put("CF", "Repibiki ya Afríka ya Káti");
    namesMap.put("CG", "Kongo");
    namesMap.put("CH", "Swisɛ");
    namesMap.put("CI", "Kotídivualɛ");
    namesMap.put("CK", "Bisanga bya Kookɛ");
    namesMap.put("CL", "Síli");
    namesMap.put("CM", "Kamɛrune");
    namesMap.put("CN", "Sinɛ");
    namesMap.put("CO", "Kolombi");
    namesMap.put("CP", "Esanga Clipperton");
    namesMap.put("CR", "Kositarika");
    namesMap.put("CU", "Kiba");
    namesMap.put("CV", "Bisanga bya Kapevɛrɛ");
    namesMap.put("CX", "Esanga ya Mbótama");
    namesMap.put("CY", "Sípɛlɛ");
    namesMap.put("CZ", "Shekia");
    namesMap.put("DE", "Alemani");
    namesMap.put("DJ", "Dzibuti");
    namesMap.put("DK", "Danɛmarike");
    namesMap.put("DM", "Domínike");
    namesMap.put("DO", "Repibiki ya Domínikɛ");
    namesMap.put("DZ", "Alizɛri");
    namesMap.put("EA", "Zewta mpé Melílla");
    namesMap.put("EC", "Ekwatɛ́lɛ");
    namesMap.put("EE", "Esitoni");
    namesMap.put("EG", "Ezípite");
    namesMap.put("EH", "Sahara ya Limbɛ");
    namesMap.put("ER", "Elitelɛ");
    namesMap.put("ES", "Esipanye");
    namesMap.put("ET", "Etsíopi");
    namesMap.put("EU", "Lisangá ya Erópa");
    namesMap.put("FI", "Filandɛ");
    namesMap.put("FJ", "Fidzi");
    namesMap.put("FK", "Bisanga bya Maluni");
    namesMap.put("FM", "Mikronezi");
    namesMap.put("FO", "Bisanga bya Faloé");
    namesMap.put("FR", "Falánsɛ");
    namesMap.put("GA", "Gabɔ");
    namesMap.put("GB", "Angɛlɛtɛ́lɛ");
    namesMap.put("GD", "Gelenadɛ");
    namesMap.put("GE", "Zorzi");
    namesMap.put("GF", "Giyanɛ ya Falánsɛ");
    namesMap.put("GG", "Guernesey");
    namesMap.put("GH", "Gana");
    namesMap.put("GI", "Zibatalɛ");
    namesMap.put("GL", "Gowelande");
    namesMap.put("GM", "Gambi");
    namesMap.put("GN", "Ginɛ");
    namesMap.put("GP", "Gwadɛlupɛ");
    namesMap.put("GQ", "Ginɛ́kwatɛ́lɛ");
    namesMap.put("GR", "Geleki");
    namesMap.put("GS", "Îles de Géorgie du Sud et Sandwich du Sud");
    namesMap.put("GT", "Gwatémala");
    namesMap.put("GU", "Gwamɛ");
    namesMap.put("GW", "Ginɛbisau");
    namesMap.put("GY", "Giyane");
    namesMap.put("HK", "Hong Kong (Shina)");
    namesMap.put("HM", "Ile Heard et Iles McDonald");
    namesMap.put("HN", "Ondurasɛ");
    namesMap.put("HR", "Krowasi");
    namesMap.put("HT", "Ayiti");
    namesMap.put("HU", "Ongili");
    namesMap.put("IC", "Bisanga bya Kanári");
    namesMap.put("ID", "Indonezi");
    namesMap.put("IE", "Irelandɛ");
    namesMap.put("IL", "Isirayelɛ");
    namesMap.put("IM", "Esanga ya Man");
    namesMap.put("IN", "Índɛ");
    namesMap.put("IO", "Mabelé ya Angɛlɛtɛ́lɛ na mbú ya Indiya");
    namesMap.put("IQ", "Iraki");
    namesMap.put("IR", "Irâ");
    namesMap.put("IS", "Isilandɛ");
    namesMap.put("IT", "Itali");
    namesMap.put("JE", "Jelezy");
    namesMap.put("JM", "Zamaiki");
    namesMap.put("JO", "Zɔdani");
    namesMap.put("JP", "Zapɔ");
    namesMap.put("KG", "Kigizisitá");
    namesMap.put("KH", "Kambodza");
    namesMap.put("KM", "Komorɛ");
    namesMap.put("KN", "Sántu krístofe mpé Nevɛ̀s");
    namesMap.put("KP", "Korɛ ya nɔ́rdi");
    namesMap.put("KR", "Korɛ ya súdi");
    namesMap.put("KW", "Koweti");
    namesMap.put("KY", "Bisanga bya Kayíma");
    namesMap.put("KZ", "Kazakisitá");
    namesMap.put("LA", "Lawosi");
    namesMap.put("LB", "Libá");
    namesMap.put("LC", "Sántu lisi");
    namesMap.put("LI", "Lishɛteni");
    namesMap.put("LK", "Sirilanka");
    namesMap.put("LR", "Libériya");
    namesMap.put("LS", "Lesoto");
    namesMap.put("LT", "Litwani");
    namesMap.put("LU", "Likisambulu");
    namesMap.put("LV", "Letoni");
    namesMap.put("LY", "Libí");
    namesMap.put("MA", "Marokɛ");
    namesMap.put("MC", "Monako");
    namesMap.put("MD", "Molidavi");
    namesMap.put("ME", "Monténégro");
    namesMap.put("MF", "Sántu Martin");
    namesMap.put("MG", "Madagasikari");
    namesMap.put("MH", "Bisanga bya Marishalɛ");
    namesMap.put("MK", "Masedwanɛ");
    namesMap.put("ML", "Malí");
    namesMap.put("MM", "Birmanie");
    namesMap.put("MN", "Mongolí");
    namesMap.put("MO", "Makau (Shina)");
    namesMap.put("MP", "Bisanga bya Marianɛ ya nɔ́rdi");
    namesMap.put("MQ", "Martiniki");
    namesMap.put("MR", "Moritani");
    namesMap.put("MS", "Mɔsera");
    namesMap.put("MT", "Malitɛ");
    namesMap.put("MU", "Morisɛ");
    namesMap.put("MV", "Madívɛ");
    namesMap.put("MX", "Meksike");
    namesMap.put("MY", "Malezi");
    namesMap.put("MZ", "Mozambíki");
    namesMap.put("NA", "Namibi");
    namesMap.put("NC", "Kaledoni ya sika");
    namesMap.put("NE", "Nizɛrɛ");
    namesMap.put("NF", "Esanga Norfokɛ");
    namesMap.put("NG", "Nizerya");
    namesMap.put("NI", "Nikaragwa");
    namesMap.put("NL", "Olandɛ");
    namesMap.put("NO", "Norivezɛ");
    namesMap.put("NP", "Nepálɛ");
    namesMap.put("NU", "Nyué");
    namesMap.put("NZ", "Zelandɛ ya sika");
    namesMap.put("OM", "Ománɛ");
    namesMap.put("PE", "Péru");
    namesMap.put("PF", "Polinezi ya Falánsɛ");
    namesMap.put("PG", "Papwazi Ginɛ ya sika");
    namesMap.put("PH", "Filipinɛ");
    namesMap.put("PK", "Pakisitá");
    namesMap.put("PL", "Poloni");
    namesMap.put("PM", "Sántu pététo mpé Mikelɔ");
    namesMap.put("PN", "Pikairni");
    namesMap.put("PR", "Pɔtoriko");
    namesMap.put("PS", "Palɛsine");
    namesMap.put("PT", "Putúlugɛsi");
    namesMap.put("PY", "Palagwei");
    namesMap.put("QA", "Katari");
    namesMap.put("RE", "Lenyo");
    namesMap.put("RO", "Romani");
    namesMap.put("RS", "Serbie");
    namesMap.put("RU", "Risí");
    namesMap.put("SA", "Alabi Sawuditɛ");
    namesMap.put("SB", "Bisanga Solomɔ");
    namesMap.put("SC", "Sɛshɛlɛ");
    namesMap.put("SD", "Sudá");
    namesMap.put("SE", "Swédɛ");
    namesMap.put("SG", "Singapurɛ");
    namesMap.put("SH", "Sántu eleni");
    namesMap.put("SI", "Siloveni");
    namesMap.put("SJ", "Svalbard mpé Jan Mayen");
    namesMap.put("SK", "Silovaki");
    namesMap.put("SL", "Siera Leonɛ");
    namesMap.put("SM", "Sántu Marinɛ");
    namesMap.put("SN", "Senegalɛ");
    namesMap.put("SO", "Somali");
    namesMap.put("SR", "Surinamɛ");
    namesMap.put("SS", "Sudani ya Sidi");
    namesMap.put("ST", "Sao Tomé mpé Presipɛ");
    namesMap.put("SV", "Savadɔrɛ");
    namesMap.put("SY", "Sirí");
    namesMap.put("SZ", "Swazilandi");
    namesMap.put("TC", "Bisanga bya Turki mpé Kaiko");
    namesMap.put("TD", "Tsádi");
    namesMap.put("TF", "Terres australes et antarctiques françaises");
    namesMap.put("TH", "Tailandɛ");
    namesMap.put("TJ", "Tazikisitá");
    namesMap.put("TL", "Timorɛ ya Moniɛlɛ");
    namesMap.put("TM", "Tikɛménisitá");
    namesMap.put("TN", "Tinizi");
    namesMap.put("TR", "Tiliki");
    namesMap.put("TT", "Tinidadɛ mpé Tobago");
    namesMap.put("TW", "Taiwanin");
    namesMap.put("TZ", "Tanzani");
    namesMap.put("UA", "Ikrɛni");
    namesMap.put("UM", "Bisanga Mokɛ́na Mosíká bya Lisangá lya Ameríka");
    namesMap.put("US", "Ameriki");
    namesMap.put("UY", "Irigwei");
    namesMap.put("UZ", "Uzibɛkisitá");
    namesMap.put("VA", "Vatiká");
    namesMap.put("VC", "Sántu vesá mpé Gelenadinɛ");
    namesMap.put("VE", "Venézuela");
    namesMap.put("VG", "Bisanga bya Vierzi ya Angɛlɛtɛ́lɛ");
    namesMap.put("VI", "Bisanga bya Vierzi ya Ameriki");
    namesMap.put("VN", "Viyetinamɛ");
    namesMap.put("WF", "Walisɛ mpé Futuna");
    namesMap.put("YE", "Yemɛnɛ");
    namesMap.put("YT", "Mayotɛ");
    namesMap.put("ZA", "Afríka ya Súdi");
    namesMap.put("ZM", "Zambi");
  }

  @Override
  protected JavaScriptObject loadNameMapNative() {
    return overrideMap(super.loadNameMapNative(), loadMyNameMap());
  }

  private native JavaScriptObject loadMyNameMap() /*-{
    return {
        "001": "Mabelé",
        "002": "Afríka",
        "003": "Ameríka ya Nola",
        "005": "Ameríka ya Sidi",
        "011": "Afríka ya Wɛ́sita",
        "013": "Ameríka ya káti",
        "014": "Afríka ya Ɛ́sita",
        "015": "Afríka ya Nola",
        "017": "Afríka ya Katikáti",
        "018": "Afríka ya Sidi",
        "019": "Ameríka",
        "030": "Azía ya Ɛ́sita",
        "034": "Azía ya Sidi",
        "035": "Azía ya Sidi-Ɛ́sita",
        "039": "Erópa ya Sidi",
        "142": "Azía",
        "143": "Azía ya Katikáti",
        "145": "Azía ya Wɛ́sita",
        "150": "Erópa",
        "151": "Erópa ya Ɛ́sita",
        "154": "Erópa ya Nola",
        "155": "Erópa ya Wɛ́sita",
        "419": "Ameríka Latína",
        "AC": "Esanga ya Mbuta o Likoló",
        "AD": "Andorɛ",
        "AE": "Lɛmila alabo",
        "AF": "Afiganisitá",
        "AG": "Antiga mpé Barbuda",
        "AI": "Angiyɛ",
        "AL": "Alibani",
        "AM": "Amɛni",
        "AO": "Angóla",
        "AQ": "Antarctique",
        "AR": "Arizantinɛ",
        "AS": "Samoa ya Ameriki",
        "AT": "Otilisi",
        "AU": "Ositáli",
        "AX": "Bisanga Ɛland",
        "AZ": "Azɛlɛbaizá",
        "BA": "Bosini mpé Hezegovine",
        "BB": "Barɛbadɛ",
        "BD": "Bengalidɛsi",
        "BE": "Beleziki",
        "BF": "Bukina Faso",
        "BG": "Biligari",
        "BH": "Bahrɛnɛ",
        "BJ": "Benɛ",
        "BL": "Sántu Barthélemy",
        "BN": "Brineyi",
        "BO": "Bolivi",
        "BR": "Brezílɛ",
        "BS": "Bahamasɛ",
        "BT": "Butáni",
        "BV": "Esanga Buvé",
        "BY": "Byelorisi",
        "BZ": "Belizɛ",
        "CA": "Kanada",
        "CC": "Bisanga Kokos",
        "CD": "Republíki ya Kongó Demokratíki",
        "CF": "Repibiki ya Afríka ya Káti",
        "CG": "Kongo",
        "CH": "Swisɛ",
        "CI": "Kotídivualɛ",
        "CK": "Bisanga bya Kookɛ",
        "CL": "Síli",
        "CM": "Kamɛrune",
        "CN": "Sinɛ",
        "CO": "Kolombi",
        "CP": "Esanga Clipperton",
        "CR": "Kositarika",
        "CU": "Kiba",
        "CV": "Bisanga bya Kapevɛrɛ",
        "CX": "Esanga ya Mbótama",
        "CY": "Sípɛlɛ",
        "CZ": "Shekia",
        "DE": "Alemani",
        "DJ": "Dzibuti",
        "DK": "Danɛmarike",
        "DM": "Domínike",
        "DO": "Repibiki ya Domínikɛ",
        "DZ": "Alizɛri",
        "EA": "Zewta mpé Melílla",
        "EC": "Ekwatɛ́lɛ",
        "EE": "Esitoni",
        "EG": "Ezípite",
        "EH": "Sahara ya Limbɛ",
        "ER": "Elitelɛ",
        "ES": "Esipanye",
        "ET": "Etsíopi",
        "EU": "Lisangá ya Erópa",
        "FI": "Filandɛ",
        "FJ": "Fidzi",
        "FK": "Bisanga bya Maluni",
        "FM": "Mikronezi",
        "FO": "Bisanga bya Faloé",
        "FR": "Falánsɛ",
        "GA": "Gabɔ",
        "GB": "Angɛlɛtɛ́lɛ",
        "GD": "Gelenadɛ",
        "GE": "Zorzi",
        "GF": "Giyanɛ ya Falánsɛ",
        "GG": "Guernesey",
        "GH": "Gana",
        "GI": "Zibatalɛ",
        "GL": "Gowelande",
        "GM": "Gambi",
        "GN": "Ginɛ",
        "GP": "Gwadɛlupɛ",
        "GQ": "Ginɛ́kwatɛ́lɛ",
        "GR": "Geleki",
        "GS": "Îles de Géorgie du Sud et Sandwich du Sud",
        "GT": "Gwatémala",
        "GU": "Gwamɛ",
        "GW": "Ginɛbisau",
        "GY": "Giyane",
        "HK": "Hong Kong (Shina)",
        "HM": "Ile Heard et Iles McDonald",
        "HN": "Ondurasɛ",
        "HR": "Krowasi",
        "HT": "Ayiti",
        "HU": "Ongili",
        "IC": "Bisanga bya Kanári",
        "ID": "Indonezi",
        "IE": "Irelandɛ",
        "IL": "Isirayelɛ",
        "IM": "Esanga ya Man",
        "IN": "Índɛ",
        "IO": "Mabelé ya Angɛlɛtɛ́lɛ na mbú ya Indiya",
        "IQ": "Iraki",
        "IR": "Irâ",
        "IS": "Isilandɛ",
        "IT": "Itali",
        "JE": "Jelezy",
        "JM": "Zamaiki",
        "JO": "Zɔdani",
        "JP": "Zapɔ",
        "KG": "Kigizisitá",
        "KH": "Kambodza",
        "KM": "Komorɛ",
        "KN": "Sántu krístofe mpé Nevɛ̀s",
        "KP": "Korɛ ya nɔ́rdi",
        "KR": "Korɛ ya súdi",
        "KW": "Koweti",
        "KY": "Bisanga bya Kayíma",
        "KZ": "Kazakisitá",
        "LA": "Lawosi",
        "LB": "Libá",
        "LC": "Sántu lisi",
        "LI": "Lishɛteni",
        "LK": "Sirilanka",
        "LR": "Libériya",
        "LS": "Lesoto",
        "LT": "Litwani",
        "LU": "Likisambulu",
        "LV": "Letoni",
        "LY": "Libí",
        "MA": "Marokɛ",
        "MC": "Monako",
        "MD": "Molidavi",
        "ME": "Monténégro",
        "MF": "Sántu Martin",
        "MG": "Madagasikari",
        "MH": "Bisanga bya Marishalɛ",
        "MK": "Masedwanɛ",
        "ML": "Malí",
        "MM": "Birmanie",
        "MN": "Mongolí",
        "MO": "Makau (Shina)",
        "MP": "Bisanga bya Marianɛ ya nɔ́rdi",
        "MQ": "Martiniki",
        "MR": "Moritani",
        "MS": "Mɔsera",
        "MT": "Malitɛ",
        "MU": "Morisɛ",
        "MV": "Madívɛ",
        "MX": "Meksike",
        "MY": "Malezi",
        "MZ": "Mozambíki",
        "NA": "Namibi",
        "NC": "Kaledoni ya sika",
        "NE": "Nizɛrɛ",
        "NF": "Esanga Norfokɛ",
        "NG": "Nizerya",
        "NI": "Nikaragwa",
        "NL": "Olandɛ",
        "NO": "Norivezɛ",
        "NP": "Nepálɛ",
        "NU": "Nyué",
        "NZ": "Zelandɛ ya sika",
        "OM": "Ománɛ",
        "PE": "Péru",
        "PF": "Polinezi ya Falánsɛ",
        "PG": "Papwazi Ginɛ ya sika",
        "PH": "Filipinɛ",
        "PK": "Pakisitá",
        "PL": "Poloni",
        "PM": "Sántu pététo mpé Mikelɔ",
        "PN": "Pikairni",
        "PR": "Pɔtoriko",
        "PS": "Palɛsine",
        "PT": "Putúlugɛsi",
        "PY": "Palagwei",
        "QA": "Katari",
        "RE": "Lenyo",
        "RO": "Romani",
        "RS": "Serbie",
        "RU": "Risí",
        "SA": "Alabi Sawuditɛ",
        "SB": "Bisanga Solomɔ",
        "SC": "Sɛshɛlɛ",
        "SD": "Sudá",
        "SE": "Swédɛ",
        "SG": "Singapurɛ",
        "SH": "Sántu eleni",
        "SI": "Siloveni",
        "SJ": "Svalbard mpé Jan Mayen",
        "SK": "Silovaki",
        "SL": "Siera Leonɛ",
        "SM": "Sántu Marinɛ",
        "SN": "Senegalɛ",
        "SO": "Somali",
        "SR": "Surinamɛ",
        "SS": "Sudani ya Sidi",
        "ST": "Sao Tomé mpé Presipɛ",
        "SV": "Savadɔrɛ",
        "SY": "Sirí",
        "SZ": "Swazilandi",
        "TC": "Bisanga bya Turki mpé Kaiko",
        "TD": "Tsádi",
        "TF": "Terres australes et antarctiques françaises",
        "TH": "Tailandɛ",
        "TJ": "Tazikisitá",
        "TL": "Timorɛ ya Moniɛlɛ",
        "TM": "Tikɛménisitá",
        "TN": "Tinizi",
        "TR": "Tiliki",
        "TT": "Tinidadɛ mpé Tobago",
        "TW": "Taiwanin",
        "TZ": "Tanzani",
        "UA": "Ikrɛni",
        "UM": "Bisanga Mokɛ́na Mosíká bya Lisangá lya Ameríka",
        "US": "Ameriki",
        "UY": "Irigwei",
        "UZ": "Uzibɛkisitá",
        "VA": "Vatiká",
        "VC": "Sántu vesá mpé Gelenadinɛ",
        "VE": "Venézuela",
        "VG": "Bisanga bya Vierzi ya Angɛlɛtɛ́lɛ",
        "VI": "Bisanga bya Vierzi ya Ameriki",
        "VN": "Viyetinamɛ",
        "WF": "Walisɛ mpé Futuna",
        "YE": "Yemɛnɛ",
        "YT": "Mayotɛ",
        "ZA": "Afríka ya Súdi",
        "ZM": "Zambi"
    };
  }-*/;
}
