// ***************************************************************************
// *
// *   Copyright (C) 1997-2002, International Business Machines
// *   Corporation and others.  All Rights Reserved.
// *
// ***************************************************************************

sh {
    Version { "1.2" }
    CollationElements { 
        Version { "2.0" }
        Sequence {
            "& C < \u010D <<< \u010C < \u0107 <<< \u0106"
            "&\u0110 < d\u017E <<< D\u017E <<< D\u017D"
            "& L < lj, Lj <<< LJ"
            "& N < nj, Nj <<< NJ "
            "& S < \u0161 <<< \u0160"
            "& Z < \u017E <<< \u017D"
            }
    }
    Countries { 
        AF { "Avganistan" }
        AL { "Albanija" }
        DZ { "Al\u017Eir" }
        AD { "Andora" }
        //AO { "Angola" }
        //AR { "Argentina" }
        AM { "Armenija" }
        //AW { "Aruba" }
        AU { "Australija" }
        AT { "Austrija" }
        AZ { "Azerbejd\u017Ean" }
        BS { "Bahami" }
        BH { "Bahrein" }
        BD { "Banglade\u0161" }
        //BB { "Barbados" }
        BY { "Belorusija" }
        BE { "Belgija" }
        BZ { "Belise" }
        //BJ { "Benin" }
        //BM { "Bermuda" }
        BT { "Butan" }
        BO { "Bolivija" }
        BA { "Bosna i Hercegovina" }
        BW { "Bocvana" }
        //BR { "Brazil" }
        BN { "Brunej" }
        BG { "Bugarska" }
        //BF { "Burkina Faso" }
        //BI { "Burundi" }
        KH { "Kambod\u017Ea" }
        CM { "Kamerun" }
        CA { "Kanada" }
        CF { "Centralno Afri\u010Dka Republika" }
        TD { "\u010Cad" }
        CL { "\u010Cile" }
        CN { "Kina" }
        CO { "Kolumbija" }
        CG { "Kongo" }
        CR { "Kostarika" }
        CI { "Obala Slonova\u010De" }
        HR { "Hrvatska" }
        CU { "Kuba" }
        CY { "Kipar" }
        CZ { "\u010Ce\u0161ka" }
        DK { "Danska" }
        DJ { "D\u017Eibuti" }
        DM { "Dominika" }
        DO { "Dominikanska Republika" }
        EC { "Ekvador" }
        EG { "Egipat" }
        SV { "Salvador" }
        GQ { "Ekvatorijalna Gvineja" }
        ER { "Eritreja" }
        EE { "Estonija" }
        ET { "Etiopija" }
        FJ { "Fid\u017Ei" }
        FI { "Finska" }
        FR { "Francuska" }
        GF { "Francuska Gvajana" }
        PF { "Francuska Polinezija" }
        TF { "Francuske Ju\u017Ene Teritorije" }
        //GA { "Gabon" }
        GM { "Gambija" }
        GE { "Gruzija" }
        DE { "Nema\u010Dka" }
        GH { "Gana" }
        GR { "Gr\u010Dka" }
        GP { "Gvadelupe" }
        GT { "Gvatemala" }
        GN { "Gvineja" }
        GW { "Gvineja-Bisao" }
        GY { "Gvajana" }
        //HT { "Haiti" }
        //HN { "Honduras" }
        //HK { "Hong Kong S.A.R., China" }
        HU { "Ma\u0111arska" }
        IS { "Island" }
        IN { "Indija" }
        ID { "Indonezija" }
        //IR { "Iran" }
        IQ { "Irak" }
        IE { "Irska" }
        IL { "Izrael" }
        IT { "Italija" }
        JM { "Jamajka" }
        //JP { "Japan" }
        //JO { "Jordan" }
        KZ { "Kazahstan" }
        KE { "Kenija" }
        KP { "Severna Koreja" }
        KR { "Ju\u017Ena Koreja" }
        KW { "Kuvajt" }
        KG { "Kirgistan" }
        //LA { "Laos" }
        LV { "Letonija" }
        LB { "Liban" }
        LS { "Lesoto" }
        LR { "Liberija" }
        LY { "Libija" }
        LI { "Lihen\u0161tajn" }
        LT { "Litvanija" }
        LU { "Luksemburg" }
        MK { "Makedonija" }
        MG { "Madagaskar" }
        MY { "Malezija" }
        //ML { "Mali" }
        //MT { "Malta" }
        MQ { "Martinik" }
        MR { "Mauritanija" }
        MU { "Mauricius" }
        MX { "Meksiko" }
        FM { "Mikronezija" }
        MD { "Moldavija" }
        MC { "Monako" }
        MN { "Mongolija" }
        MA { "Maroko" }
        MZ { "Mozambik" }
        MM { "Mijnamar" }
        NA { "Namibija" }
        //NP { "Nepal" }
        NL { "Holandija" }
        AN { "Holandski Antili" }
        NC { "Nova Kaledonija" }
        NZ { "Novi Zeland" }
        NI { "Nikaragva" }
        //NE { "Niger" }
        NG { "Nigerija" }
        NO { "Norve\u0161ka" }
        //OM { "Oman" }
        //PK { "Pakistan" }
        //PA { "Panama" }
        PG { "Papua Nova Gvineja" }
        PY { "Paragvaj" }
        //PE { "Peru" }
        PH { "Filipini" }
        PL { "Poljska" }
        //PT { "Portugal" }
        PR { "Porto Riko" }
        QA { "Katar" }
        RO { "Rumunija" }
        RU { "Rusija" }
        RW { "Ruanda" }
        SA { "Saudijska Arabija" }
        //SN { "Senegal" }
        SP { "Srbija" }
        SC { "Sej\u0161eli" }
        SL { "Sijera Leone" }
        SG { "Singapur" }
        SK { "Slova\u010Dka" }
        SI { "Slovenija" }
        SO { "Somalija" }
        ZA { "Ju\u017Ena Afrika" }
        ES { "\u0160panija" }
        LK { "\u0160rilanka" }
        //SD { "Sudan" }
        SR { "Surinam" }
        SZ { "Svazilend" }
        SE { "\u0160vedska" }
        CH { "\u0160vajcarska" }
        SY { "Sirija" }
        TW { "Tajvan" }
        TJ { "Tad\u017Eikistan" }
        TZ { "Tanzanija" }
        TH { "Tajland" }
        //TG { "Togo" }
        TT { "Trinidad i Tobago" }
        TN { "Tunis" }
        TR { "Turska" }
        //TM { "Turkmenistan" }
        //UG { "Uganda" }
        UA { "Ukrajina" }
        AE { "Ujedinjeni Arapski Emirati" }
        GB { "Velika Britanija" }
        US { "Sjedinjene Ameri\u010Dke Dr\u017Eave" }
        UY { "Urugvaj" }
        //UZ { "Uzbekistan" }
        VA { "Vatikan" }
        VE { "Venecuela" }
        VN { "Vijetnam" }
        VG { "Britanska Devi\u010Danska Ostrva" }
        VI { "S.A.D. Devi\u010Danska Ostrva" }
        EH { "Zapadna Sahara" }
        YE { "Jemen" }
        YU { "Jugoslavija" }
        ZR { "Zair" }
        ZM { "Zambija" }
        ZW { "Zimbabve" }
    }
    DateTimePatterns { 
        "HH.mm.ss z",
        "HH.mm.ss z",
        "HH.mm.ss",
        "HH.mm",
        "EEEE, dd. MMMM yyyy.",
        "EEEE, d.MM.yyyy.",
        "dd.MM.yyyy.",
        "d.M.yy.",
        "{1} {0}",
    }
    DayAbbreviations { 
        "ned",
        "pon",
        "uto",
        "sre",
        "\u010Det",
        "pet",
        "sub",
    }
    DayNames { 
        "nedelja",
        "ponedeljak",
        "utorak",
        "sreda",
        "\u010Detvrtak",
        "petak",
        "subota",
    }
    Eras { 
        "p. n. e.",
        "n. e.",
    }
    Languages { 
        af { "Afrikanerski" }
        sq { "Albanski" }
        ar { "Arapski" }
        hy { "Armenski" }
        eu { "Baskijski" }
        br { "Bretonski" }
        bg { "Bugarski" }
        my { "Burmanski" }
        be { "Beloruski" }
        km { "Kambod\u017Eanski" }
        ca { "Katalonski" }
        zh { "Kineski" }
        co { "Korzikanski" }
        hr { "Hrvatski" }
        cs { "\u010Ce\u0161ki" }
        da { "Danski" }
        nl { "Holandski" }
        en { "Engleski" }
        //eo { "Esperanto" }
        et { "Estonski" }
        fi { "Finski" }
        fr { "Francuski" }
        ka { "Gruzijski" }
        de { "Nema\u010Dki" }
        el { "Gr\u010Dki" }
        he { "Hebrejski" }
        hu { "Ma\u0111arski" }
        is { "Islandski" }
        id { "Indonezijski" }
        //in { "Indonezijski" }  // Use "id" instead
        ga { "Irski" }
        it { "Italijanski" }
        ja { "Japanski" }
        ky { "Kirgiski" }
        ko { "Korejski" }
        ku { "Kurdski" }
        la { "Latinski" }
        lv { "Letonski" }
        lt { "Litvanski" }
        mk { "Makedonski" }
        mo { "Moldavski" }
        mn { "Mongolski" }
        no { "Norve\u0161ki" }
        fa { "Persijski" }
        pl { "Poljski" }
        pt { "Portugalski" }
        rm { "Reto-Romanski" }
        ro { "Rumunski" }
        ru { "Ruski" }
        //sa { "Sanskrit" }
        sr { "Srpski" }
        sh { "Srpsko-Hrvatski" }
        sk { "Slova\u010Dki" }
        sl { "Slovena\u010Dki" }
        es { "\u0160panski" }
        sw { "Svahili" }
        sv { "\u0160vedski" }
        tr { "Turski" }
        uk { "Ukrajnski" }
        vi { "Vijetnamski" }
        //ji { "Jidi\u0161" }  // Use "yi" instead
        yi { "Jidi\u0161" }
    }
    LocaleID:int { 0x081a }
//    LocaleString { "sh" }
    MonthAbbreviations { 
        "jan",
        "feb",
        "mar",
        "apr",
        "maj",
        "jun",
        "jul",
        "avg",
        "sep",
        "okt",
        "nov",
        "dec",
    }
    MonthNames { 
        "januar",
        "februar",
        "mart",
        "april",
        "maj",
        "juni",
        "juli",
        "avgust",
        "septembar",
        "oktobar",
        "novembar",
        "decembar",
    }
    NumberElements { 
        ",",
        ".",
        ";",
        "%",
        "0",
        "#",
        "-",
        "E",
        "\u2030",
        "\u221E",
        "\uFFFD",
    }
//    ShortLanguage { "srp" }
    localPatternChars { "GanjkHmsSEDFwWxhKzAe" }
    zoneStrings { 
        {
            "Europe/Belgrade",
            "Centralno Evropsko Vreme",
            "CET",
            "Centralno Evropsko Letnje Vreme",
            "CET",
        }
    }
//    LocaleScript{ 
//                "Latn",  // ISO 15924 Name 
//    }
    ExemplarCharacters { "[a-p r-v z \u0111 \u0107 \u010d \u017e \u0161 {lj} {nj} {d\u017e}]" }
}
