/*
 * 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 "vai_Latn" locale.
 */
public class LocalizedNamesImpl_vai_Latn extends LocalizedNamesImpl_vai {

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

  @Override
  protected void loadNameMapJava() {
    super.loadNameMapJava();
    namesMap.put("AD", "Aŋdóra");
    namesMap.put("AE", "Yunaitɛ Arabhi Ɛmire");
    namesMap.put("AF", "Afigándesitaŋ");
    namesMap.put("AG", "Aŋtígwa Ɓahabhuda");
    namesMap.put("AI", "Aŋgíla");
    namesMap.put("AL", "Abhaniya");
    namesMap.put("AM", "Améniya");
    namesMap.put("AO", "Aŋgóla");
    namesMap.put("AR", "Ajɛŋtína");
    namesMap.put("AS", "Poo Sambowa");
    namesMap.put("AT", "Ɔ́situwa");
    namesMap.put("AU", "Ɔsituwéeliya");
    namesMap.put("AW", "Arubha");
    namesMap.put("AZ", "Azabhaijaŋ");
    namesMap.put("BA", "Bhɔsiniya");
    namesMap.put("BB", "Bhabhedo");
    namesMap.put("BD", "Bhangiladɛ̀shi");
    namesMap.put("BE", "Bhɛgiyɔŋ");
    namesMap.put("BF", "Bhokina Fáso");
    namesMap.put("BG", "Bhɔgeriya");
    namesMap.put("BH", "Bharɛŋ");
    namesMap.put("BI", "Bhurundi");
    namesMap.put("BJ", "Bhɛni");
    namesMap.put("BM", "Bhɛmuda");
    namesMap.put("BN", "Bhurunɛĩ");
    namesMap.put("BO", "Bholiviya");
    namesMap.put("BR", "Bhurazeli");
    namesMap.put("BS", "Bahámasi");
    namesMap.put("BT", "Bhutaŋ");
    namesMap.put("BW", "Bhosuwana");
    namesMap.put("BY", "Bhɛlarusi");
    namesMap.put("BZ", "Bheliz");
    namesMap.put("CA", "Kánáda");
    namesMap.put("CD", "Avorekoo");
    namesMap.put("CF", "Áfíríka Lumaã Tɛ Boloe");
    namesMap.put("CG", "Kóngo");
    namesMap.put("CH", "Suweza Lumaã");
    namesMap.put("CI", "Kódivówa");
    namesMap.put("CK", "Kóki Tiŋŋɛ");
    namesMap.put("CL", "Chéli");
    namesMap.put("CM", "Kameruŋ");
    namesMap.put("CN", "Cháína");
    namesMap.put("CO", "Kɔlɔmbiya");
    namesMap.put("CR", "Kósíta Ríko");
    namesMap.put("CU", "Kiyubha");
    namesMap.put("CV", "Kepi Vɛdi Tiŋŋɛ");
    namesMap.put("CY", "Saɛpurɔ");
    namesMap.put("CZ", "Chɛki Boloe");
    namesMap.put("DE", "Jamáĩ");
    namesMap.put("DJ", "Jibhuti");
    namesMap.put("DK", "Danimaha");
    namesMap.put("DM", "Domíiníka");
    namesMap.put("DO", "Domíiníka Ɓoloe");
    namesMap.put("DZ", "Agiriya");
    namesMap.put("EC", "Ɛ́kúwédɔ");
    namesMap.put("EE", "Ɛsitóninya");
    namesMap.put("EG", "Míséla");
    namesMap.put("ER", "Ɛritera");
    namesMap.put("ES", "Panyɛĩ");
    namesMap.put("ET", "Ítiyópiya");
    namesMap.put("FI", "Fiŋlɛŋ");
    namesMap.put("FJ", "Fíji");
    namesMap.put("FK", "Fáháki Luma Tiŋŋɛ");
    namesMap.put("FM", "Mikonisiya");
    namesMap.put("FR", "Fɛŋsi");
    namesMap.put("GA", "Gabhɔŋ");
    namesMap.put("GB", "Yunaitɛ Kíŋdɔŋ");
    namesMap.put("GD", "Gurinéda");
    namesMap.put("GE", "Jɔɔjiya");
    namesMap.put("GF", "Fɛŋsi Giwana");
    namesMap.put("GH", "Gana");
    namesMap.put("GI", "Jibhurata");
    namesMap.put("GL", "Jamba Kuwa Lumaã");
    namesMap.put("GM", "Gambiya");
    namesMap.put("GN", "Gini");
    namesMap.put("GP", "Guwadelupe");
    namesMap.put("GQ", "Dúúnyá Tɛ Giini");
    namesMap.put("GR", "Hɛlɛŋ");
    namesMap.put("GT", "Guwatɛmala");
    namesMap.put("GU", "Guwami");
    namesMap.put("GW", "Gini Bhisawo");
    namesMap.put("GY", "Guyana");
    namesMap.put("HN", "Hɔndura");
    namesMap.put("HR", "Koresiya");
    namesMap.put("HT", "Háiti");
    namesMap.put("HU", "Hɔ́ngare");
    namesMap.put("ID", "Índonisiya");
    namesMap.put("IE", "Áre Lumaã");
    namesMap.put("IL", "Bhanísiláila");
    namesMap.put("IN", "Índiya");
    namesMap.put("IO", "Jengéesi Gbawoe Índiya Kɔiyɛ Lɔ");
    namesMap.put("IQ", "Iraki");
    namesMap.put("IR", "Iraŋ");
    namesMap.put("IS", "Áisi Lumaã");
    namesMap.put("IT", "Ítali");
    namesMap.put("JM", "Jamaika");
    namesMap.put("JO", "Jɔɔdaŋ");
    namesMap.put("JP", "Japaŋ");
    namesMap.put("KE", "Kénya");
    namesMap.put("KG", "Kigisitaŋ");
    namesMap.put("KH", "Kaŋbhodiya");
    namesMap.put("KI", "Kiribhati");
    namesMap.put("KM", "Komorosi");
    namesMap.put("KN", "Siŋ Kisi ɓɛ́ Nevisi");
    namesMap.put("KP", "Koriya Kɔi Kaŋndɔ");
    namesMap.put("KR", "Koriya Kɔi Leŋŋɛ Lɔ");
    namesMap.put("KW", "Kuweti");
    namesMap.put("KY", "Keemaŋ Tiŋŋɛ");
    namesMap.put("KZ", "Kazasitaŋ");
    namesMap.put("LA", "Lawosi");
    namesMap.put("LB", "Lebhanɔ");
    namesMap.put("LC", "Siŋ Lusiya");
    namesMap.put("LK", "Suri Laŋka");
    namesMap.put("LR", "Laibhiya");
    namesMap.put("LS", "Lisóto");
    namesMap.put("LT", "Lituweninya");
    namesMap.put("LU", "Lusimbɔ");
    namesMap.put("LV", "Lativiya");
    namesMap.put("LY", "Lebhiya");
    namesMap.put("MA", "Mɔroko");
    namesMap.put("MC", "Mɔnako");
    namesMap.put("MD", "Mɔlidova");
    namesMap.put("MG", "Madagasita");
    namesMap.put("MH", "Masha Tiŋŋɛ");
    namesMap.put("MK", "Masedoninya");
    namesMap.put("ML", "Mali");
    namesMap.put("MM", "Miyamaha");
    namesMap.put("MN", "Mɔngoliya");
    namesMap.put("MP", "Kɔi Kaŋndɔ Mariyana Tiŋŋɛ");
    namesMap.put("MQ", "Matiniki");
    namesMap.put("MR", "Mɔretaninya");
    namesMap.put("MS", "Mɔserati");
    namesMap.put("MT", "Malita");
    namesMap.put("MU", "Mɔreshɔ");
    namesMap.put("MV", "Malidavi");
    namesMap.put("MW", "Malawi");
    namesMap.put("MX", "Mɛsíko");
    namesMap.put("MY", "Malesiya");
    namesMap.put("MZ", "Mozambiki");
    namesMap.put("NA", "Namibiya");
    namesMap.put("NC", "Kalidoninya Námaá");
    namesMap.put("NE", "Naĩja");
    namesMap.put("NF", "Nɔfɔ Tiŋŋɛ");
    namesMap.put("NG", "Naĩjiriya");
    namesMap.put("NI", "Nikaraguwa");
    namesMap.put("NL", "Nidɔlɛŋ");
    namesMap.put("NO", "Nɔɔwe");
    namesMap.put("NP", "Nepa");
    namesMap.put("NR", "Noru");
    namesMap.put("NU", "Niwe");
    namesMap.put("NZ", "Zilɛŋ Námaá");
    namesMap.put("OM", "Omaŋ");
    namesMap.put("PA", "Panama");
    namesMap.put("PE", "Pɛru");
    namesMap.put("PF", "Fɛŋsi Polinísiya");
    namesMap.put("PG", "Papuwa Gini Námaá");
    namesMap.put("PH", "Félepiŋ");
    namesMap.put("PK", "Pakisitaŋ");
    namesMap.put("PL", "Pólɛŋ");
    namesMap.put("PM", "Siŋ Piiyɛ ɓɛ́ Mikelɔŋ");
    namesMap.put("PN", "Pitikɛŋ");
    namesMap.put("PR", "Piyuto Riko");
    namesMap.put("PS", "Palesitininya Tele Jii Kɔiyɛ lá hĩ Gaza");
    namesMap.put("PT", "Potokíi");
    namesMap.put("PW", "Palo");
    namesMap.put("PY", "Paragɔe");
    namesMap.put("QA", "Kataha");
    namesMap.put("RE", "Renyɔɔ̃");
    namesMap.put("RO", "Romininya");
    namesMap.put("RU", "Rɔshiya");
    namesMap.put("RW", "Rawunda");
    namesMap.put("SA", "Lahabu");
    namesMap.put("SB", "Sulaimaãna Tiŋŋɛ");
    namesMap.put("SC", "Seshɛɛ");
    namesMap.put("SD", "Sudɛŋ");
    namesMap.put("SE", "Suwidɛŋ");
    namesMap.put("SG", "Síingapoo");
    namesMap.put("SH", "Siŋ Hɛlina");
    namesMap.put("SI", "Suloveninya");
    namesMap.put("SK", "Sulovakiya");
    namesMap.put("SL", "Gbeya Bahawɔ");
    namesMap.put("SM", "Saŋ Marindo");
    namesMap.put("SN", "Sinigaha");
    namesMap.put("SO", "Somaliya");
    namesMap.put("SR", "Surinambe");
    namesMap.put("ST", "Sawo Tombe ɓɛ a Gbawoe");
    namesMap.put("SV", "Ɛlɛ Sávádɔ");
    namesMap.put("SY", "Síyaŋ");
    namesMap.put("SZ", "Suwazi Lumaã");
    namesMap.put("TC", "Tukisi ɓɛ̀ Kaikóosi Tiŋŋɛ");
    namesMap.put("TD", "Chádi");
    namesMap.put("TG", "Togo");
    namesMap.put("TH", "Tai Lumaã");
    namesMap.put("TJ", "Tajikisitaŋ");
    namesMap.put("TK", "Tokelo");
    namesMap.put("TL", "Tele Ɓɔ́ Timɔɔ̃");
    namesMap.put("TM", "Tukimɛnisitaŋ");
    namesMap.put("TN", "Tunisiya");
    namesMap.put("TO", "Tɔnga");
    namesMap.put("TR", "Tɔ́ɔ́ki");
    namesMap.put("TT", "Turindeda ɓɛ́ Tobhego");
    namesMap.put("TV", "Tuválu");
    namesMap.put("TW", "Taiwaŋ");
    namesMap.put("TZ", "Taŋzaninya");
    namesMap.put("UA", "Yukuréŋ");
    namesMap.put("UG", "Yuganda");
    namesMap.put("US", "Poo");
    namesMap.put("UY", "Yuwegɔwe");
    namesMap.put("UZ", "Yubhɛkisitaŋ");
    namesMap.put("VA", "Vatikaŋ Ɓoloe");
    namesMap.put("VC", "Siŋ Viŋsi");
    namesMap.put("VE", "Vɛnɛzuwela");
    namesMap.put("VG", "Jengéesi Bhɛɛ Lɔ Musu Tiŋŋɛ");
    namesMap.put("VI", "Poo Bhɛɛ lɔ Musu Tiŋŋɛ");
    namesMap.put("VN", "Viyanami");
    namesMap.put("VU", "Vanuwátu");
    namesMap.put("WF", "Walísi");
    namesMap.put("WS", "Samowa");
    namesMap.put("YE", "Yemɛni");
    namesMap.put("YT", "Mavote");
    namesMap.put("ZA", "Afirika Kɔi Leŋŋɛ Lɔ");
    namesMap.put("ZM", "Zambiya");
    namesMap.put("ZW", "Zimbabhuwe");
  }

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

  private native JavaScriptObject loadMyNameMap() /*-{
    return {
        "AD": "Aŋdóra",
        "AE": "Yunaitɛ Arabhi Ɛmire",
        "AF": "Afigándesitaŋ",
        "AG": "Aŋtígwa Ɓahabhuda",
        "AI": "Aŋgíla",
        "AL": "Abhaniya",
        "AM": "Améniya",
        "AO": "Aŋgóla",
        "AR": "Ajɛŋtína",
        "AS": "Poo Sambowa",
        "AT": "Ɔ́situwa",
        "AU": "Ɔsituwéeliya",
        "AW": "Arubha",
        "AZ": "Azabhaijaŋ",
        "BA": "Bhɔsiniya",
        "BB": "Bhabhedo",
        "BD": "Bhangiladɛ̀shi",
        "BE": "Bhɛgiyɔŋ",
        "BF": "Bhokina Fáso",
        "BG": "Bhɔgeriya",
        "BH": "Bharɛŋ",
        "BI": "Bhurundi",
        "BJ": "Bhɛni",
        "BM": "Bhɛmuda",
        "BN": "Bhurunɛĩ",
        "BO": "Bholiviya",
        "BR": "Bhurazeli",
        "BS": "Bahámasi",
        "BT": "Bhutaŋ",
        "BW": "Bhosuwana",
        "BY": "Bhɛlarusi",
        "BZ": "Bheliz",
        "CA": "Kánáda",
        "CD": "Avorekoo",
        "CF": "Áfíríka Lumaã Tɛ Boloe",
        "CG": "Kóngo",
        "CH": "Suweza Lumaã",
        "CI": "Kódivówa",
        "CK": "Kóki Tiŋŋɛ",
        "CL": "Chéli",
        "CM": "Kameruŋ",
        "CN": "Cháína",
        "CO": "Kɔlɔmbiya",
        "CR": "Kósíta Ríko",
        "CU": "Kiyubha",
        "CV": "Kepi Vɛdi Tiŋŋɛ",
        "CY": "Saɛpurɔ",
        "CZ": "Chɛki Boloe",
        "DE": "Jamáĩ",
        "DJ": "Jibhuti",
        "DK": "Danimaha",
        "DM": "Domíiníka",
        "DO": "Domíiníka Ɓoloe",
        "DZ": "Agiriya",
        "EC": "Ɛ́kúwédɔ",
        "EE": "Ɛsitóninya",
        "EG": "Míséla",
        "ER": "Ɛritera",
        "ES": "Panyɛĩ",
        "ET": "Ítiyópiya",
        "FI": "Fiŋlɛŋ",
        "FJ": "Fíji",
        "FK": "Fáháki Luma Tiŋŋɛ",
        "FM": "Mikonisiya",
        "FR": "Fɛŋsi",
        "GA": "Gabhɔŋ",
        "GB": "Yunaitɛ Kíŋdɔŋ",
        "GD": "Gurinéda",
        "GE": "Jɔɔjiya",
        "GF": "Fɛŋsi Giwana",
        "GH": "Gana",
        "GI": "Jibhurata",
        "GL": "Jamba Kuwa Lumaã",
        "GM": "Gambiya",
        "GN": "Gini",
        "GP": "Guwadelupe",
        "GQ": "Dúúnyá Tɛ Giini",
        "GR": "Hɛlɛŋ",
        "GT": "Guwatɛmala",
        "GU": "Guwami",
        "GW": "Gini Bhisawo",
        "GY": "Guyana",
        "HN": "Hɔndura",
        "HR": "Koresiya",
        "HT": "Háiti",
        "HU": "Hɔ́ngare",
        "ID": "Índonisiya",
        "IE": "Áre Lumaã",
        "IL": "Bhanísiláila",
        "IN": "Índiya",
        "IO": "Jengéesi Gbawoe Índiya Kɔiyɛ Lɔ",
        "IQ": "Iraki",
        "IR": "Iraŋ",
        "IS": "Áisi Lumaã",
        "IT": "Ítali",
        "JM": "Jamaika",
        "JO": "Jɔɔdaŋ",
        "JP": "Japaŋ",
        "KE": "Kénya",
        "KG": "Kigisitaŋ",
        "KH": "Kaŋbhodiya",
        "KI": "Kiribhati",
        "KM": "Komorosi",
        "KN": "Siŋ Kisi ɓɛ́ Nevisi",
        "KP": "Koriya Kɔi Kaŋndɔ",
        "KR": "Koriya Kɔi Leŋŋɛ Lɔ",
        "KW": "Kuweti",
        "KY": "Keemaŋ Tiŋŋɛ",
        "KZ": "Kazasitaŋ",
        "LA": "Lawosi",
        "LB": "Lebhanɔ",
        "LC": "Siŋ Lusiya",
        "LK": "Suri Laŋka",
        "LR": "Laibhiya",
        "LS": "Lisóto",
        "LT": "Lituweninya",
        "LU": "Lusimbɔ",
        "LV": "Lativiya",
        "LY": "Lebhiya",
        "MA": "Mɔroko",
        "MC": "Mɔnako",
        "MD": "Mɔlidova",
        "MG": "Madagasita",
        "MH": "Masha Tiŋŋɛ",
        "MK": "Masedoninya",
        "ML": "Mali",
        "MM": "Miyamaha",
        "MN": "Mɔngoliya",
        "MP": "Kɔi Kaŋndɔ Mariyana Tiŋŋɛ",
        "MQ": "Matiniki",
        "MR": "Mɔretaninya",
        "MS": "Mɔserati",
        "MT": "Malita",
        "MU": "Mɔreshɔ",
        "MV": "Malidavi",
        "MW": "Malawi",
        "MX": "Mɛsíko",
        "MY": "Malesiya",
        "MZ": "Mozambiki",
        "NA": "Namibiya",
        "NC": "Kalidoninya Námaá",
        "NE": "Naĩja",
        "NF": "Nɔfɔ Tiŋŋɛ",
        "NG": "Naĩjiriya",
        "NI": "Nikaraguwa",
        "NL": "Nidɔlɛŋ",
        "NO": "Nɔɔwe",
        "NP": "Nepa",
        "NR": "Noru",
        "NU": "Niwe",
        "NZ": "Zilɛŋ Námaá",
        "OM": "Omaŋ",
        "PA": "Panama",
        "PE": "Pɛru",
        "PF": "Fɛŋsi Polinísiya",
        "PG": "Papuwa Gini Námaá",
        "PH": "Félepiŋ",
        "PK": "Pakisitaŋ",
        "PL": "Pólɛŋ",
        "PM": "Siŋ Piiyɛ ɓɛ́ Mikelɔŋ",
        "PN": "Pitikɛŋ",
        "PR": "Piyuto Riko",
        "PS": "Palesitininya Tele Jii Kɔiyɛ lá hĩ Gaza",
        "PT": "Potokíi",
        "PW": "Palo",
        "PY": "Paragɔe",
        "QA": "Kataha",
        "RE": "Renyɔɔ̃",
        "RO": "Romininya",
        "RU": "Rɔshiya",
        "RW": "Rawunda",
        "SA": "Lahabu",
        "SB": "Sulaimaãna Tiŋŋɛ",
        "SC": "Seshɛɛ",
        "SD": "Sudɛŋ",
        "SE": "Suwidɛŋ",
        "SG": "Síingapoo",
        "SH": "Siŋ Hɛlina",
        "SI": "Suloveninya",
        "SK": "Sulovakiya",
        "SL": "Gbeya Bahawɔ",
        "SM": "Saŋ Marindo",
        "SN": "Sinigaha",
        "SO": "Somaliya",
        "SR": "Surinambe",
        "ST": "Sawo Tombe ɓɛ a Gbawoe",
        "SV": "Ɛlɛ Sávádɔ",
        "SY": "Síyaŋ",
        "SZ": "Suwazi Lumaã",
        "TC": "Tukisi ɓɛ̀ Kaikóosi Tiŋŋɛ",
        "TD": "Chádi",
        "TG": "Togo",
        "TH": "Tai Lumaã",
        "TJ": "Tajikisitaŋ",
        "TK": "Tokelo",
        "TL": "Tele Ɓɔ́ Timɔɔ̃",
        "TM": "Tukimɛnisitaŋ",
        "TN": "Tunisiya",
        "TO": "Tɔnga",
        "TR": "Tɔ́ɔ́ki",
        "TT": "Turindeda ɓɛ́ Tobhego",
        "TV": "Tuválu",
        "TW": "Taiwaŋ",
        "TZ": "Taŋzaninya",
        "UA": "Yukuréŋ",
        "UG": "Yuganda",
        "US": "Poo",
        "UY": "Yuwegɔwe",
        "UZ": "Yubhɛkisitaŋ",
        "VA": "Vatikaŋ Ɓoloe",
        "VC": "Siŋ Viŋsi",
        "VE": "Vɛnɛzuwela",
        "VG": "Jengéesi Bhɛɛ Lɔ Musu Tiŋŋɛ",
        "VI": "Poo Bhɛɛ lɔ Musu Tiŋŋɛ",
        "VN": "Viyanami",
        "VU": "Vanuwátu",
        "WF": "Walísi",
        "WS": "Samowa",
        "YE": "Yemɛni",
        "YT": "Mavote",
        "ZA": "Afirika Kɔi Leŋŋɛ Lɔ",
        "ZM": "Zambiya",
        "ZW": "Zimbabhuwe"
    };
  }-*/;
}
