/*
 * 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:
//  cldrVersion=21.0
//  number=$Revision: 6546 $
//  type=root
//  date=$Date: 2012-02-07 13:32:35 -0500 (Tue, 07 Feb 2012) $


/**
 * Localized names for the "shi" locale.
 */
public class LocalizedNamesImpl_shi extends LocalizedNamesImpl {

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

  @Override
  protected void loadNameMapJava() {
    super.loadNameMapJava();
    namesMap.put("AD", "andura");
    namesMap.put("AE", "limarat");
    namesMap.put("AF", "afɣanistan");
    namesMap.put("AG", "antiga d brbuda");
    namesMap.put("AI", "angila");
    namesMap.put("AL", "albanya");
    namesMap.put("AM", "arminya");
    namesMap.put("AN", "antiy n hulanda");
    namesMap.put("AO", "angula");
    namesMap.put("AR", "arjantin");
    namesMap.put("AS", "samwa tamirikanit");
    namesMap.put("AT", "nnmsa");
    namesMap.put("AU", "ustralya");
    namesMap.put("AW", "aruba");
    namesMap.put("AZ", "adrabijan");
    namesMap.put("BA", "busna d hirsik");
    namesMap.put("BB", "barbad");
    namesMap.put("BD", "bangladic");
    namesMap.put("BE", "bljika");
    namesMap.put("BF", "burkina fasu");
    namesMap.put("BG", "blɣara");
    namesMap.put("BH", "bḥrayn");
    namesMap.put("BI", "burundi");
    namesMap.put("BJ", "binin");
    namesMap.put("BM", "brmuda");
    namesMap.put("BN", "bruni");
    namesMap.put("BO", "bulibya");
    namesMap.put("BR", "brazil");
    namesMap.put("BS", "bahamas");
    namesMap.put("BT", "bhutan");
    namesMap.put("BW", "butswana");
    namesMap.put("BY", "bilarusya");
    namesMap.put("BZ", "biliz");
    namesMap.put("CA", "kanada");
    namesMap.put("CD", "tagdudant tadimukratit n Kongo");
    namesMap.put("CF", "tagdudant tanammast n ifriqya");
    namesMap.put("CG", "kungu");
    namesMap.put("CH", "swisra");
    namesMap.put("CI", "kut difwar");
    namesMap.put("CK", "tigzirin n kuk");
    namesMap.put("CL", "ccili");
    namesMap.put("CM", "kamirun");
    namesMap.put("CN", "ccinwa");
    namesMap.put("CO", "culumbya");
    namesMap.put("CR", "kusta rika");
    namesMap.put("CS", "sirbya d muntinigru");
    namesMap.put("CU", "kuba");
    namesMap.put("CV", "tigzirin n kabbirdi");
    namesMap.put("CY", "qubrus");
    namesMap.put("CZ", "tagdudant tatcikit");
    namesMap.put("DE", "almanya");
    namesMap.put("DJ", "djibuti");
    namesMap.put("DK", "danmark");
    namesMap.put("DM", "duminik");
    namesMap.put("DO", "tagdudant taduminikt");
    namesMap.put("DZ", "dzayr");
    namesMap.put("EC", "ikwadur");
    namesMap.put("EE", "istunya");
    namesMap.put("EG", "miṣṛ");
    namesMap.put("ER", "iritirya");
    namesMap.put("ES", "sbanya");
    namesMap.put("ET", "ityubya");
    namesMap.put("FI", "fillanda");
    namesMap.put("FJ", "fidji");
    namesMap.put("FK", "tigzirin n malawi");
    namesMap.put("FM", "mikrunizya");
    namesMap.put("FR", "fransa");
    namesMap.put("GA", "gabun");
    namesMap.put("GB", "tagldit imunn");
    namesMap.put("GD", "ɣrnaṭa");
    namesMap.put("GE", "jurjya");
    namesMap.put("GF", "gwiyan tafransist");
    namesMap.put("GH", "ɣana");
    namesMap.put("GI", "adrar n ṭaṛiq");
    namesMap.put("GL", "griland");
    namesMap.put("GM", "gambya");
    namesMap.put("GN", "ɣinya");
    namesMap.put("GP", "gwadalub");
    namesMap.put("GQ", "ɣinya n ikwadur");
    namesMap.put("GR", "lyunan");
    namesMap.put("GT", "gwatimala");
    namesMap.put("GU", "gwam");
    namesMap.put("GW", "ɣinya bisaw");
    namesMap.put("GY", "gwiyana");
    namesMap.put("HN", "hunduras");
    namesMap.put("HR", "krwatya");
    namesMap.put("HT", "hayti");
    namesMap.put("HU", "hnɣarya");
    namesMap.put("ID", "andunisya");
    namesMap.put("IE", "irlanda");
    namesMap.put("IL", "israyil");
    namesMap.put("IN", "lhind");
    namesMap.put("IO", "tamnaḍt tanglizit n ugaru ahindi");
    namesMap.put("IQ", "lɛiraq");
    namesMap.put("IR", "iran");
    namesMap.put("IS", "island");
    namesMap.put("IT", "iṭalya");
    namesMap.put("JM", "jamayka");
    namesMap.put("JO", "lurdun");
    namesMap.put("JP", "lyaban");
    namesMap.put("KE", "kinya");
    namesMap.put("KG", "kirɣizistan");
    namesMap.put("KH", "kambudya");
    namesMap.put("KI", "kiribati");
    namesMap.put("KM", "cumur");
    namesMap.put("KN", "sankris d nifis");
    namesMap.put("KP", "kurya n iẓẓlmḍ");
    namesMap.put("KR", "kurya n iffus");
    namesMap.put("KW", "lkwit");
    namesMap.put("KY", "tigzirin n kayman");
    namesMap.put("KZ", "kazaxstan");
    namesMap.put("LA", "laws");
    namesMap.put("LB", "lubnan");
    namesMap.put("LC", "santlusi");
    namesMap.put("LI", "likinctayn");
    namesMap.put("LK", "srilanka");
    namesMap.put("LR", "libirya");
    namesMap.put("LS", "liṣuṭu");
    namesMap.put("LT", "litwanya");
    namesMap.put("LU", "luksanburg");
    namesMap.put("LV", "latfya");
    namesMap.put("LY", "libya");
    namesMap.put("MA", "lmɣrib");
    namesMap.put("MC", "munaku");
    namesMap.put("MD", "muldufya");
    namesMap.put("MG", "madaɣacqar");
    namesMap.put("MH", "tigzirin n marcal");
    namesMap.put("MK", "masidunya");
    namesMap.put("ML", "mali");
    namesMap.put("MM", "myanmar");
    namesMap.put("MN", "mnɣulya");
    namesMap.put("MP", "tigzirin n maryan n iẓẓlmḍ");
    namesMap.put("MQ", "martinik");
    namesMap.put("MR", "muṛiṭanya");
    namesMap.put("MS", "munsirat");
    namesMap.put("MT", "malṭa");
    namesMap.put("MU", "muris");
    namesMap.put("MV", "maldif");
    namesMap.put("MW", "malawi");
    namesMap.put("MX", "miksik");
    namesMap.put("MY", "malizya");
    namesMap.put("MZ", "muznbiq");
    namesMap.put("NA", "namibya");
    namesMap.put("NC", "kalidunya tamaynut");
    namesMap.put("NE", "nnijir");
    namesMap.put("NF", "tigzirin n nurfulk");
    namesMap.put("NG", "nijirya");
    namesMap.put("NI", "nikaragwa");
    namesMap.put("NL", "hulanda");
    namesMap.put("NO", "nnrwij");
    namesMap.put("NP", "nibal");
    namesMap.put("NR", "nawru");
    namesMap.put("NU", "niwi");
    namesMap.put("NZ", "nyuzilanda");
    namesMap.put("OM", "ɛuman");
    namesMap.put("PA", "banama");
    namesMap.put("PE", "biru");
    namesMap.put("PF", "bulinizya tafransist");
    namesMap.put("PG", "babwa ɣinya tamaynut");
    namesMap.put("PH", "filibbin");
    namesMap.put("PK", "bakistan");
    namesMap.put("PL", "bulunya");
    namesMap.put("PM", "sanbyir d miklun");
    namesMap.put("PN", "bitkayrn");
    namesMap.put("PR", "burtu riku");
    namesMap.put("PS", "agmmaḍ n tagut d ɣzza");
    namesMap.put("PT", "bṛṭqiz");
    namesMap.put("PW", "balaw");
    namesMap.put("PY", "baragway");
    namesMap.put("QA", "qatar");
    namesMap.put("RE", "riyunyun");
    namesMap.put("RO", "rumanya");
    namesMap.put("RU", "rusya");
    namesMap.put("RW", "rwanda");
    namesMap.put("SA", "ssaɛudiya");
    namesMap.put("SB", "tigzirin n saluman");
    namesMap.put("SC", "ssicil");
    namesMap.put("SD", "ssudan");
    namesMap.put("SE", "sswid");
    namesMap.put("SG", "snɣafura");
    namesMap.put("SH", "santilin");
    namesMap.put("SI", "slufinya");
    namesMap.put("SK", "slufakya");
    namesMap.put("SL", "ssiralyun");
    namesMap.put("SM", "sanmarinu");
    namesMap.put("SN", "ssinigal");
    namesMap.put("SO", "ṣṣumal");
    namesMap.put("SR", "surinam");
    namesMap.put("ST", "sawṭumi d bransib");
    namesMap.put("SV", "salfadur");
    namesMap.put("SY", "surya");
    namesMap.put("SZ", "swazilanda");
    namesMap.put("TC", "tigzirin n turkya d kayk");
    namesMap.put("TD", "tcad");
    namesMap.put("TG", "ṭugu");
    namesMap.put("TH", "ṭayland");
    namesMap.put("TJ", "tadjakistan");
    namesMap.put("TK", "ṭuklaw");
    namesMap.put("TL", "timur n lqblt");
    namesMap.put("TM", "turkmanstan");
    namesMap.put("TN", "tuns");
    namesMap.put("TO", "ṭunga");
    namesMap.put("TR", "turkya");
    namesMap.put("TT", "trinidad d ṭubagu");
    namesMap.put("TV", "tufalu");
    namesMap.put("TW", "ṭaywan");
    namesMap.put("TZ", "ṭanẓanya");
    namesMap.put("UA", "ukranya");
    namesMap.put("UG", "uɣanda");
    namesMap.put("US", "iwunak munnin n mirikan");
    namesMap.put("UY", "urugway");
    namesMap.put("UZ", "uzbakistan");
    namesMap.put("VA", "awank n fatikan");
    namesMap.put("VC", "sanfansan d grinadin");
    namesMap.put("VE", "finzwila");
    namesMap.put("VG", "tigzirin timgad n nngliz");
    namesMap.put("VI", "tigzirin timgad n iwunak munnin");
    namesMap.put("VN", "fitnam");
    namesMap.put("VU", "fanwaṭu");
    namesMap.put("WF", "walis d futuna");
    namesMap.put("WS", "samwa");
    namesMap.put("YE", "yaman");
    namesMap.put("YT", "mayuṭ");
    namesMap.put("ZA", "afriqya n iffus");
    namesMap.put("ZM", "zambya");
    namesMap.put("ZW", "zimbabwi");
  }

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

  private native JavaScriptObject loadMyNameMap() /*-{
    return {
        "AD": "andura",
        "AE": "limarat",
        "AF": "afɣanistan",
        "AG": "antiga d brbuda",
        "AI": "angila",
        "AL": "albanya",
        "AM": "arminya",
        "AN": "antiy n hulanda",
        "AO": "angula",
        "AR": "arjantin",
        "AS": "samwa tamirikanit",
        "AT": "nnmsa",
        "AU": "ustralya",
        "AW": "aruba",
        "AZ": "adrabijan",
        "BA": "busna d hirsik",
        "BB": "barbad",
        "BD": "bangladic",
        "BE": "bljika",
        "BF": "burkina fasu",
        "BG": "blɣara",
        "BH": "bḥrayn",
        "BI": "burundi",
        "BJ": "binin",
        "BM": "brmuda",
        "BN": "bruni",
        "BO": "bulibya",
        "BR": "brazil",
        "BS": "bahamas",
        "BT": "bhutan",
        "BW": "butswana",
        "BY": "bilarusya",
        "BZ": "biliz",
        "CA": "kanada",
        "CD": "tagdudant tadimukratit n Kongo",
        "CF": "tagdudant tanammast n ifriqya",
        "CG": "kungu",
        "CH": "swisra",
        "CI": "kut difwar",
        "CK": "tigzirin n kuk",
        "CL": "ccili",
        "CM": "kamirun",
        "CN": "ccinwa",
        "CO": "culumbya",
        "CR": "kusta rika",
        "CS": "sirbya d muntinigru",
        "CU": "kuba",
        "CV": "tigzirin n kabbirdi",
        "CY": "qubrus",
        "CZ": "tagdudant tatcikit",
        "DE": "almanya",
        "DJ": "djibuti",
        "DK": "danmark",
        "DM": "duminik",
        "DO": "tagdudant taduminikt",
        "DZ": "dzayr",
        "EC": "ikwadur",
        "EE": "istunya",
        "EG": "miṣṛ",
        "ER": "iritirya",
        "ES": "sbanya",
        "ET": "ityubya",
        "FI": "fillanda",
        "FJ": "fidji",
        "FK": "tigzirin n malawi",
        "FM": "mikrunizya",
        "FR": "fransa",
        "GA": "gabun",
        "GB": "tagldit imunn",
        "GD": "ɣrnaṭa",
        "GE": "jurjya",
        "GF": "gwiyan tafransist",
        "GH": "ɣana",
        "GI": "adrar n ṭaṛiq",
        "GL": "griland",
        "GM": "gambya",
        "GN": "ɣinya",
        "GP": "gwadalub",
        "GQ": "ɣinya n ikwadur",
        "GR": "lyunan",
        "GT": "gwatimala",
        "GU": "gwam",
        "GW": "ɣinya bisaw",
        "GY": "gwiyana",
        "HN": "hunduras",
        "HR": "krwatya",
        "HT": "hayti",
        "HU": "hnɣarya",
        "ID": "andunisya",
        "IE": "irlanda",
        "IL": "israyil",
        "IN": "lhind",
        "IO": "tamnaḍt tanglizit n ugaru ahindi",
        "IQ": "lɛiraq",
        "IR": "iran",
        "IS": "island",
        "IT": "iṭalya",
        "JM": "jamayka",
        "JO": "lurdun",
        "JP": "lyaban",
        "KE": "kinya",
        "KG": "kirɣizistan",
        "KH": "kambudya",
        "KI": "kiribati",
        "KM": "cumur",
        "KN": "sankris d nifis",
        "KP": "kurya n iẓẓlmḍ",
        "KR": "kurya n iffus",
        "KW": "lkwit",
        "KY": "tigzirin n kayman",
        "KZ": "kazaxstan",
        "LA": "laws",
        "LB": "lubnan",
        "LC": "santlusi",
        "LI": "likinctayn",
        "LK": "srilanka",
        "LR": "libirya",
        "LS": "liṣuṭu",
        "LT": "litwanya",
        "LU": "luksanburg",
        "LV": "latfya",
        "LY": "libya",
        "MA": "lmɣrib",
        "MC": "munaku",
        "MD": "muldufya",
        "MG": "madaɣacqar",
        "MH": "tigzirin n marcal",
        "MK": "masidunya",
        "ML": "mali",
        "MM": "myanmar",
        "MN": "mnɣulya",
        "MP": "tigzirin n maryan n iẓẓlmḍ",
        "MQ": "martinik",
        "MR": "muṛiṭanya",
        "MS": "munsirat",
        "MT": "malṭa",
        "MU": "muris",
        "MV": "maldif",
        "MW": "malawi",
        "MX": "miksik",
        "MY": "malizya",
        "MZ": "muznbiq",
        "NA": "namibya",
        "NC": "kalidunya tamaynut",
        "NE": "nnijir",
        "NF": "tigzirin n nurfulk",
        "NG": "nijirya",
        "NI": "nikaragwa",
        "NL": "hulanda",
        "NO": "nnrwij",
        "NP": "nibal",
        "NR": "nawru",
        "NU": "niwi",
        "NZ": "nyuzilanda",
        "OM": "ɛuman",
        "PA": "banama",
        "PE": "biru",
        "PF": "bulinizya tafransist",
        "PG": "babwa ɣinya tamaynut",
        "PH": "filibbin",
        "PK": "bakistan",
        "PL": "bulunya",
        "PM": "sanbyir d miklun",
        "PN": "bitkayrn",
        "PR": "burtu riku",
        "PS": "agmmaḍ n tagut d ɣzza",
        "PT": "bṛṭqiz",
        "PW": "balaw",
        "PY": "baragway",
        "QA": "qatar",
        "RE": "riyunyun",
        "RO": "rumanya",
        "RU": "rusya",
        "RW": "rwanda",
        "SA": "ssaɛudiya",
        "SB": "tigzirin n saluman",
        "SC": "ssicil",
        "SD": "ssudan",
        "SE": "sswid",
        "SG": "snɣafura",
        "SH": "santilin",
        "SI": "slufinya",
        "SK": "slufakya",
        "SL": "ssiralyun",
        "SM": "sanmarinu",
        "SN": "ssinigal",
        "SO": "ṣṣumal",
        "SR": "surinam",
        "ST": "sawṭumi d bransib",
        "SV": "salfadur",
        "SY": "surya",
        "SZ": "swazilanda",
        "TC": "tigzirin n turkya d kayk",
        "TD": "tcad",
        "TG": "ṭugu",
        "TH": "ṭayland",
        "TJ": "tadjakistan",
        "TK": "ṭuklaw",
        "TL": "timur n lqblt",
        "TM": "turkmanstan",
        "TN": "tuns",
        "TO": "ṭunga",
        "TR": "turkya",
        "TT": "trinidad d ṭubagu",
        "TV": "tufalu",
        "TW": "ṭaywan",
        "TZ": "ṭanẓanya",
        "UA": "ukranya",
        "UG": "uɣanda",
        "US": "iwunak munnin n mirikan",
        "UY": "urugway",
        "UZ": "uzbakistan",
        "VA": "awank n fatikan",
        "VC": "sanfansan d grinadin",
        "VE": "finzwila",
        "VG": "tigzirin timgad n nngliz",
        "VI": "tigzirin timgad n iwunak munnin",
        "VN": "fitnam",
        "VU": "fanwaṭu",
        "WF": "walis d futuna",
        "WS": "samwa",
        "YE": "yaman",
        "YT": "mayuṭ",
        "ZA": "afriqya n iffus",
        "ZM": "zambya",
        "ZW": "zimbabwi"
    };
  }-*/;
}
