/*
 * 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 "mt" locale.
 */
public class LocalizedNamesImpl_mt extends LocalizedNamesImpl {

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

  @Override
  protected void loadNameMapJava() {
    super.loadNameMapJava();
    namesMap.put("001", "Dinja");
    namesMap.put("002", "Affrika");
    namesMap.put("003", "Amerika ta’ Fuq");
    namesMap.put("005", "Amerika t’Isfel");
    namesMap.put("009", "Oċejanja");
    namesMap.put("011", "Affrika tal-Punent");
    namesMap.put("013", "Amerika Ċentrali");
    namesMap.put("014", "Affrika tal-Lvant");
    namesMap.put("015", "Affrika ta’ Fuq");
    namesMap.put("017", "Affrika Nofsani");
    namesMap.put("018", "Affrika t’Isfel");
    namesMap.put("019", "Amerika");
    namesMap.put("021", "Amerika Nòrdiku");
    namesMap.put("029", "Karibew");
    namesMap.put("030", "Asja tal-Lvant");
    namesMap.put("034", "Asja t’Isfel Ċentrali");
    namesMap.put("035", "Asja tax-Xlokk");
    namesMap.put("039", "Ewropa t’Isfel");
    namesMap.put("053", "Awstralja u New Zealand");
    namesMap.put("054", "Melanesja");
    namesMap.put("057", "Reġjun ta’ Mikroneżja");
    namesMap.put("061", "Polinesja");
    namesMap.put("142", "Asja");
    namesMap.put("143", "Asja Ċentrali");
    namesMap.put("145", "Asja tal-Punent");
    namesMap.put("150", "Ewropa");
    namesMap.put("151", "Ewropa tal-Lvant");
    namesMap.put("154", "Ewropa ta’ Fuq");
    namesMap.put("155", "Ewropa tal-Punent");
    namesMap.put("419", "Amerika Latina");
    namesMap.put("AE", "l-Emirati Għarab Magħquda");
    namesMap.put("AF", "l-Afganistan");
    namesMap.put("AG", "Antigua u Barbuda");
    namesMap.put("AL", "l-Albanija");
    namesMap.put("AM", "l-Armenja");
    namesMap.put("AO", "l-Angola");
    namesMap.put("AQ", "l-Antartika");
    namesMap.put("AR", "l-Arġentina");
    namesMap.put("AS", "is-Samoa Amerikana");
    namesMap.put("AT", "l-Awstrija");
    namesMap.put("AU", "l-Awstralja");
    namesMap.put("AX", "il-Gżejjer Aland");
    namesMap.put("AZ", "l-Ażerbajġan");
    namesMap.put("BA", "il-Bożnija-Ħerzegovina");
    namesMap.put("BD", "il-Bangladesh");
    namesMap.put("BE", "il-Belġju");
    namesMap.put("BF", "il-Burkina Faso");
    namesMap.put("BG", "il-Bulgarija");
    namesMap.put("BH", "il-Bahrain");
    namesMap.put("BI", "il-Burundi");
    namesMap.put("BJ", "il-Benin");
    namesMap.put("BL", "Saint Barthélemy");
    namesMap.put("BN", "il-Brunei");
    namesMap.put("BO", "il-Bolivja");
    namesMap.put("BQ", "in-Netherlands tal-Karibew");
    namesMap.put("BR", "Il-Brażil");
    namesMap.put("BS", "il-Bahamas");
    namesMap.put("BT", "il-Bhutan");
    namesMap.put("BV", "Gżira Bouvet");
    namesMap.put("BW", "il-Botswana");
    namesMap.put("BY", "il-Belarussja");
    namesMap.put("BZ", "il-Belize");
    namesMap.put("CA", "il-Kanada");
    namesMap.put("CC", "Gżejjer Cocos (Keeling)");
    namesMap.put("CD", "ir-Repubblika Demokratika tal-Kongo");
    namesMap.put("CF", "ir-Repubblika Ċentru-Afrikana");
    namesMap.put("CG", "il-Kongo - Brazzaville");
    namesMap.put("CH", "l-Iżvizzera");
    namesMap.put("CI", "il-Kosta tal-Avorju");
    namesMap.put("CK", "Gżejjer Cook");
    namesMap.put("CL", "iċ-Ċili");
    namesMap.put("CM", "il-Kamerun");
    namesMap.put("CN", "iċ-Ċina");
    namesMap.put("CO", "il-Kolombja");
    namesMap.put("CP", "il-Gżira Clipperton");
    namesMap.put("CR", "il-Costa Rica");
    namesMap.put("CU", "Kuba");
    namesMap.put("CX", "il-Gżira Christmas");
    namesMap.put("CY", "Ċipru");
    namesMap.put("CZ", "ir-Repubblika Ċeka");
    namesMap.put("DE", "il-Ġermanja");
    namesMap.put("DJ", "il-Djibouti");
    namesMap.put("DK", "id-Danimarka");
    namesMap.put("DO", "ir-Repubblika Dominicana");
    namesMap.put("DZ", "l-Alġerija");
    namesMap.put("EA", "Ceuta u Melilla");
    namesMap.put("EC", "l-Ekwador");
    namesMap.put("EE", "l-Estonja");
    namesMap.put("EG", "l-Eġittu");
    namesMap.put("EH", "is-Saħara tal-Punent");
    namesMap.put("ER", "l-Eritrea");
    namesMap.put("ES", "Spanja");
    namesMap.put("ET", "l-Etjopja");
    namesMap.put("EU", "Unjoni Ewropea");
    namesMap.put("FI", "il-Finlandja");
    namesMap.put("FJ", "Fiġi");
    namesMap.put("FK", "il-Gżejjer Falkland");
    namesMap.put("FM", "Mikroneżja");
    namesMap.put("FO", "il-Gżejjer Faeroe");
    namesMap.put("FR", "Franza");
    namesMap.put("GA", "il-Gabon");
    namesMap.put("GB", "ir-Renju Unit");
    namesMap.put("GE", "il-Georgia");
    namesMap.put("GF", "il-Guyana Franċiża");
    namesMap.put("GH", "il-Ghana");
    namesMap.put("GI", "Ġibiltà");
    namesMap.put("GM", "il-Gambja");
    namesMap.put("GN", "il-Guinea");
    namesMap.put("GQ", "il-Guinea Ekwatorjali");
    namesMap.put("GR", "il-Greċja");
    namesMap.put("GS", "il-Georgia tan-Nofsinhar u l-Gżejjer Sandwich tan-Nofsinhar");
    namesMap.put("GT", "il-Gwatemala");
    namesMap.put("GW", "il-Guinea-Bissau");
    namesMap.put("GY", "il-Guyana");
    namesMap.put("HK", "ir-Reġjun Amministrattiv Speċjali ta’ Hong Kong tar-Repubblika tal-Poplu taċ-Ċina");
    namesMap.put("HM", "il-Gżejjer Heard u l-Gżejjer McDonald");
    namesMap.put("HN", "il-Honduras");
    namesMap.put("HR", "il-Kroazja");
    namesMap.put("HT", "il-Haiti");
    namesMap.put("HU", "l-Ungerija");
    namesMap.put("IC", "il-Gżejjer Canary");
    namesMap.put("ID", "l-Indoneżja");
    namesMap.put("IE", "l-Irlanda");
    namesMap.put("IL", "Iżrael");
    namesMap.put("IN", "l-Indja");
    namesMap.put("IO", "Territorju Brittaniku tal-Oċean Indjan");
    namesMap.put("IQ", "l-Iraq");
    namesMap.put("IR", "l-Iran");
    namesMap.put("IS", "l-iżlanda");
    namesMap.put("IT", "l-Italja");
    namesMap.put("JM", "il-Ġamajka");
    namesMap.put("JO", "il-Ġordan");
    namesMap.put("JP", "il-Ġappun");
    namesMap.put("KE", "il-Kenja");
    namesMap.put("KG", "il-Kirgiżistan");
    namesMap.put("KH", "il-Kambodja");
    namesMap.put("KN", "Saint Kitts u Nevis");
    namesMap.put("KP", "il-Korea ta’ Fuq");
    namesMap.put("KR", "il-Korea t’Isfel");
    namesMap.put("KW", "il-Kuwajt");
    namesMap.put("KY", "il-Gżejjer Cayman");
    namesMap.put("KZ", "il-Każakistan");
    namesMap.put("LA", "il-Laos");
    namesMap.put("LB", "il-Libanu");
    namesMap.put("LC", "Saint Lucia");
    namesMap.put("LI", "il-Liechtenstein");
    namesMap.put("LK", "is-Sri Lanka");
    namesMap.put("LR", "il-Liberja");
    namesMap.put("LS", "il-Lesoto");
    namesMap.put("LT", "il-Litwanja");
    namesMap.put("LU", "il-Lussemburgu");
    namesMap.put("LV", "il-Latvja");
    namesMap.put("LY", "il-Libja");
    namesMap.put("MA", "il-Marokk");
    namesMap.put("MD", "il-Moldova");
    namesMap.put("ME", "il-Montenegro");
    namesMap.put("MF", "Saint Martin");
    namesMap.put("MH", "Gżejjer Marshall");
    namesMap.put("MK", "l-Eks-Repubblika Jugoslava tal-Maċedonia");
    namesMap.put("ML", "il-Mali");
    namesMap.put("MM", "il-Myanmar/Burma");
    namesMap.put("MN", "il-Mongolja");
    namesMap.put("MO", "ir-Reġjun Amministrattiv Speċjali tal-Macao tar-Repubblika tal-Poplu taċ-Ċina");
    namesMap.put("MP", "Ġżejjer Mariana tat-Tramuntana");
    namesMap.put("MR", "il-Mauritania");
    namesMap.put("MV", "il-Maldivi");
    namesMap.put("MW", "il-Malawi");
    namesMap.put("MX", "il-Messiku");
    namesMap.put("MY", "il-Malasja");
    namesMap.put("MZ", "il-Mozambique");
    namesMap.put("NA", "in-Namibja");
    namesMap.put("NE", "in-Niġer");
    namesMap.put("NF", "Gżira Norfolk");
    namesMap.put("NG", "in-Niġerja");
    namesMap.put("NI", "in-Nikaragwa");
    namesMap.put("NL", "in-Netherlands");
    namesMap.put("NO", "in-Norveġja");
    namesMap.put("NP", "in-Nepal");
    namesMap.put("OM", "l-Oman");
    namesMap.put("PA", "il-Panama");
    namesMap.put("PE", "il-Perù");
    namesMap.put("PF", "Polineżja Franċiża");
    namesMap.put("PH", "il-Filippini");
    namesMap.put("PK", "il-Pakistan");
    namesMap.put("PL", "il-Polonja");
    namesMap.put("PM", "Saint Pierre u Miquelon");
    namesMap.put("PN", "Gżejjer Pitcairn");
    namesMap.put("PS", "it-Territorji Palestinjani");
    namesMap.put("PT", "il-Portugall");
    namesMap.put("PY", "il-Paragwaj");
    namesMap.put("QA", "il-Qatar");
    namesMap.put("RO", "ir-Rumanija");
    namesMap.put("RS", "is-Serbja");
    namesMap.put("RU", "ir-Russja");
    namesMap.put("RW", "ir-Rwanda");
    namesMap.put("SA", "l-Arabia Sawdija");
    namesMap.put("SB", "il-Gżejjer Solomon");
    namesMap.put("SC", "is-Seychelles");
    namesMap.put("SD", "is-Sudan");
    namesMap.put("SE", "l-Iżvezja");
    namesMap.put("SH", "Saint Helena");
    namesMap.put("SI", "is-Slovenja");
    namesMap.put("SJ", "Svalbard u Jan Mayen");
    namesMap.put("SK", "is-Slovakkja");
    namesMap.put("SN", "is-Senegal");
    namesMap.put("SO", "is-Somalja");
    namesMap.put("SR", "is-Suriname");
    namesMap.put("SS", "is-Sudan t’Isfel");
    namesMap.put("ST", "São Tomé u Príncipe");
    namesMap.put("SY", "is-Sirja");
    namesMap.put("SZ", "is-Swaziland");
    namesMap.put("TC", "il-Gżejjer Turks u Caicos");
    namesMap.put("TD", "iċ-Chad");
    namesMap.put("TF", "It-Territorji Franċiżi tan-Nofsinhar");
    namesMap.put("TG", "it-Togo");
    namesMap.put("TH", "it-Tajlandja");
    namesMap.put("TJ", "it-Taġikistan");
    namesMap.put("TK", "it-Tokelau");
    namesMap.put("TL", "Timor Leste");
    namesMap.put("TM", "it-Turkmenistan");
    namesMap.put("TN", "it-Tuneżija");
    namesMap.put("TR", "it-Turkija");
    namesMap.put("TT", "Trinidad u Tobago");
    namesMap.put("TW", "it-Tajwan");
    namesMap.put("TZ", "it-Tanzanija");
    namesMap.put("UA", "l-Ukrajna");
    namesMap.put("UG", "l-Uganda");
    namesMap.put("UM", "Il-Gżejjer Minuri Mbiegħda tal-Istati Uniti");
    namesMap.put("US", "l-Istati Uniti");
    namesMap.put("UY", "l-Urugwaj");
    namesMap.put("UZ", "l-Użbekistan");
    namesMap.put("VA", "l-Istat tal-Belt tal-Vatikan");
    namesMap.put("VC", "Saint Vincent u l-Grenadini");
    namesMap.put("VE", "il-Venezwela");
    namesMap.put("VG", "il-Gżejjer Verġni Brittaniċi");
    namesMap.put("VI", "il-Gżejjer Verġni tal-Istati Uniti");
    namesMap.put("VN", "il-Vjetnam");
    namesMap.put("WF", "Wallis u Futuna");
    namesMap.put("XK", "il-Kosovo");
    namesMap.put("YE", "il-Jemen");
    namesMap.put("ZA", "l-Afrika t’Isfel");
    namesMap.put("ZM", "iż-Żambja");
    namesMap.put("ZW", "iż-Żimbabwe");
    namesMap.put("ZZ", "Reġjun Mhux Magħruf");
  }

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

  private native JavaScriptObject loadMyNameMap() /*-{
    return {
        "001": "Dinja",
        "002": "Affrika",
        "003": "Amerika ta’ Fuq",
        "005": "Amerika t’Isfel",
        "009": "Oċejanja",
        "011": "Affrika tal-Punent",
        "013": "Amerika Ċentrali",
        "014": "Affrika tal-Lvant",
        "015": "Affrika ta’ Fuq",
        "017": "Affrika Nofsani",
        "018": "Affrika t’Isfel",
        "019": "Amerika",
        "021": "Amerika Nòrdiku",
        "029": "Karibew",
        "030": "Asja tal-Lvant",
        "034": "Asja t’Isfel Ċentrali",
        "035": "Asja tax-Xlokk",
        "039": "Ewropa t’Isfel",
        "053": "Awstralja u New Zealand",
        "054": "Melanesja",
        "057": "Reġjun ta’ Mikroneżja",
        "061": "Polinesja",
        "142": "Asja",
        "143": "Asja Ċentrali",
        "145": "Asja tal-Punent",
        "150": "Ewropa",
        "151": "Ewropa tal-Lvant",
        "154": "Ewropa ta’ Fuq",
        "155": "Ewropa tal-Punent",
        "419": "Amerika Latina",
        "AE": "l-Emirati Għarab Magħquda",
        "AF": "l-Afganistan",
        "AG": "Antigua u Barbuda",
        "AL": "l-Albanija",
        "AM": "l-Armenja",
        "AO": "l-Angola",
        "AQ": "l-Antartika",
        "AR": "l-Arġentina",
        "AS": "is-Samoa Amerikana",
        "AT": "l-Awstrija",
        "AU": "l-Awstralja",
        "AX": "il-Gżejjer Aland",
        "AZ": "l-Ażerbajġan",
        "BA": "il-Bożnija-Ħerzegovina",
        "BD": "il-Bangladesh",
        "BE": "il-Belġju",
        "BF": "il-Burkina Faso",
        "BG": "il-Bulgarija",
        "BH": "il-Bahrain",
        "BI": "il-Burundi",
        "BJ": "il-Benin",
        "BL": "Saint Barthélemy",
        "BN": "il-Brunei",
        "BO": "il-Bolivja",
        "BQ": "in-Netherlands tal-Karibew",
        "BR": "Il-Brażil",
        "BS": "il-Bahamas",
        "BT": "il-Bhutan",
        "BV": "Gżira Bouvet",
        "BW": "il-Botswana",
        "BY": "il-Belarussja",
        "BZ": "il-Belize",
        "CA": "il-Kanada",
        "CC": "Gżejjer Cocos (Keeling)",
        "CD": "ir-Repubblika Demokratika tal-Kongo",
        "CF": "ir-Repubblika Ċentru-Afrikana",
        "CG": "il-Kongo - Brazzaville",
        "CH": "l-Iżvizzera",
        "CI": "il-Kosta tal-Avorju",
        "CK": "Gżejjer Cook",
        "CL": "iċ-Ċili",
        "CM": "il-Kamerun",
        "CN": "iċ-Ċina",
        "CO": "il-Kolombja",
        "CP": "il-Gżira Clipperton",
        "CR": "il-Costa Rica",
        "CU": "Kuba",
        "CX": "il-Gżira Christmas",
        "CY": "Ċipru",
        "CZ": "ir-Repubblika Ċeka",
        "DE": "il-Ġermanja",
        "DJ": "il-Djibouti",
        "DK": "id-Danimarka",
        "DO": "ir-Repubblika Dominicana",
        "DZ": "l-Alġerija",
        "EA": "Ceuta u Melilla",
        "EC": "l-Ekwador",
        "EE": "l-Estonja",
        "EG": "l-Eġittu",
        "EH": "is-Saħara tal-Punent",
        "ER": "l-Eritrea",
        "ES": "Spanja",
        "ET": "l-Etjopja",
        "EU": "Unjoni Ewropea",
        "FI": "il-Finlandja",
        "FJ": "Fiġi",
        "FK": "il-Gżejjer Falkland",
        "FM": "Mikroneżja",
        "FO": "il-Gżejjer Faeroe",
        "FR": "Franza",
        "GA": "il-Gabon",
        "GB": "ir-Renju Unit",
        "GE": "il-Georgia",
        "GF": "il-Guyana Franċiża",
        "GH": "il-Ghana",
        "GI": "Ġibiltà",
        "GM": "il-Gambja",
        "GN": "il-Guinea",
        "GQ": "il-Guinea Ekwatorjali",
        "GR": "il-Greċja",
        "GS": "il-Georgia tan-Nofsinhar u l-Gżejjer Sandwich tan-Nofsinhar",
        "GT": "il-Gwatemala",
        "GW": "il-Guinea-Bissau",
        "GY": "il-Guyana",
        "HK": "ir-Reġjun Amministrattiv Speċjali ta’ Hong Kong tar-Repubblika tal-Poplu taċ-Ċina",
        "HM": "il-Gżejjer Heard u l-Gżejjer McDonald",
        "HN": "il-Honduras",
        "HR": "il-Kroazja",
        "HT": "il-Haiti",
        "HU": "l-Ungerija",
        "IC": "il-Gżejjer Canary",
        "ID": "l-Indoneżja",
        "IE": "l-Irlanda",
        "IL": "Iżrael",
        "IN": "l-Indja",
        "IO": "Territorju Brittaniku tal-Oċean Indjan",
        "IQ": "l-Iraq",
        "IR": "l-Iran",
        "IS": "l-iżlanda",
        "IT": "l-Italja",
        "JM": "il-Ġamajka",
        "JO": "il-Ġordan",
        "JP": "il-Ġappun",
        "KE": "il-Kenja",
        "KG": "il-Kirgiżistan",
        "KH": "il-Kambodja",
        "KN": "Saint Kitts u Nevis",
        "KP": "il-Korea ta’ Fuq",
        "KR": "il-Korea t’Isfel",
        "KW": "il-Kuwajt",
        "KY": "il-Gżejjer Cayman",
        "KZ": "il-Każakistan",
        "LA": "il-Laos",
        "LB": "il-Libanu",
        "LC": "Saint Lucia",
        "LI": "il-Liechtenstein",
        "LK": "is-Sri Lanka",
        "LR": "il-Liberja",
        "LS": "il-Lesoto",
        "LT": "il-Litwanja",
        "LU": "il-Lussemburgu",
        "LV": "il-Latvja",
        "LY": "il-Libja",
        "MA": "il-Marokk",
        "MD": "il-Moldova",
        "ME": "il-Montenegro",
        "MF": "Saint Martin",
        "MH": "Gżejjer Marshall",
        "MK": "l-Eks-Repubblika Jugoslava tal-Maċedonia",
        "ML": "il-Mali",
        "MM": "il-Myanmar/Burma",
        "MN": "il-Mongolja",
        "MO": "ir-Reġjun Amministrattiv Speċjali tal-Macao tar-Repubblika tal-Poplu taċ-Ċina",
        "MP": "Ġżejjer Mariana tat-Tramuntana",
        "MR": "il-Mauritania",
        "MV": "il-Maldivi",
        "MW": "il-Malawi",
        "MX": "il-Messiku",
        "MY": "il-Malasja",
        "MZ": "il-Mozambique",
        "NA": "in-Namibja",
        "NE": "in-Niġer",
        "NF": "Gżira Norfolk",
        "NG": "in-Niġerja",
        "NI": "in-Nikaragwa",
        "NL": "in-Netherlands",
        "NO": "in-Norveġja",
        "NP": "in-Nepal",
        "OM": "l-Oman",
        "PA": "il-Panama",
        "PE": "il-Perù",
        "PF": "Polineżja Franċiża",
        "PH": "il-Filippini",
        "PK": "il-Pakistan",
        "PL": "il-Polonja",
        "PM": "Saint Pierre u Miquelon",
        "PN": "Gżejjer Pitcairn",
        "PS": "it-Territorji Palestinjani",
        "PT": "il-Portugall",
        "PY": "il-Paragwaj",
        "QA": "il-Qatar",
        "RO": "ir-Rumanija",
        "RS": "is-Serbja",
        "RU": "ir-Russja",
        "RW": "ir-Rwanda",
        "SA": "l-Arabia Sawdija",
        "SB": "il-Gżejjer Solomon",
        "SC": "is-Seychelles",
        "SD": "is-Sudan",
        "SE": "l-Iżvezja",
        "SH": "Saint Helena",
        "SI": "is-Slovenja",
        "SJ": "Svalbard u Jan Mayen",
        "SK": "is-Slovakkja",
        "SN": "is-Senegal",
        "SO": "is-Somalja",
        "SR": "is-Suriname",
        "SS": "is-Sudan t’Isfel",
        "ST": "São Tomé u Príncipe",
        "SY": "is-Sirja",
        "SZ": "is-Swaziland",
        "TC": "il-Gżejjer Turks u Caicos",
        "TD": "iċ-Chad",
        "TF": "It-Territorji Franċiżi tan-Nofsinhar",
        "TG": "it-Togo",
        "TH": "it-Tajlandja",
        "TJ": "it-Taġikistan",
        "TK": "it-Tokelau",
        "TL": "Timor Leste",
        "TM": "it-Turkmenistan",
        "TN": "it-Tuneżija",
        "TR": "it-Turkija",
        "TT": "Trinidad u Tobago",
        "TW": "it-Tajwan",
        "TZ": "it-Tanzanija",
        "UA": "l-Ukrajna",
        "UG": "l-Uganda",
        "UM": "Il-Gżejjer Minuri Mbiegħda tal-Istati Uniti",
        "US": "l-Istati Uniti",
        "UY": "l-Urugwaj",
        "UZ": "l-Użbekistan",
        "VA": "l-Istat tal-Belt tal-Vatikan",
        "VC": "Saint Vincent u l-Grenadini",
        "VE": "il-Venezwela",
        "VG": "il-Gżejjer Verġni Brittaniċi",
        "VI": "il-Gżejjer Verġni tal-Istati Uniti",
        "VN": "il-Vjetnam",
        "WF": "Wallis u Futuna",
        "XK": "il-Kosovo",
        "YE": "il-Jemen",
        "ZA": "l-Afrika t’Isfel",
        "ZM": "iż-Żambja",
        "ZW": "iż-Żimbabwe",
        "ZZ": "Reġjun Mhux Magħruf"
    };
  }-*/;
}
