﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/bs.xml
// *
// ***************************************************************************
bs{
    Countries{
        001{"Svijet"}
        002{"Afrika"}
        003{"Sjevernoamerički kontinent"}
        005{"Južna Amerika"}
        009{"Okeanija"}
        011{"Zapadna Afrika"}
        013{"Centralna Amerika"}
        014{"Istočna Afrika"}
        015{"Sjeverna Afrika"}
        017{"Centralna Afrika"}
        018{"Južna Afrika"}
        019{"Amerika"}
        021{"Sjeverna Amerika"}
        029{"Karibi"}
        030{"Istočna Azija"}
        034{"Južna Azija"}
        035{"Jugoistočna Azija"}
        039{"Južna Evropa"}
        053{"Australija i Novi Zeland"}
        054{"Melanezija"}
        057{"Mikronezijski Region"}
        061{"Polinezija"}
        142{"Azija"}
        143{"Centralna Azija"}
        145{"Zapadna Azija"}
        150{"Evropa"}
        151{"Istočna Evropa"}
        154{"Sjeverna Evropa"}
        155{"Zapadna Evropa"}
        419{"Latinska Amerika"}
        AC{"Ostrvo Asension"}
        AD{"Andora"}
        AE{"Ujedinjeni Arapski Emirati"}
        AF{"Afganistan"}
        AG{"Antigva i Barbuda"}
        AI{"Angvila"}
        AL{"Albanija"}
        AM{"Jermenija"}
        AN{"Holandski Antili"}
        AO{"Angola"}
        AQ{"Antarktika"}
        AR{"Argentina"}
        AS{"Američka Samoa"}
        AT{"Austrija"}
        AU{"Australija"}
        AW{"Aruba"}
        AX{"Alandska Ostrva"}
        AZ{"Azerbejdžan"}
        BA{"Bosna i Hercegovina"}
        BB{"Barbados"}
        BD{"Bangladeš"}
        BE{"Belgija"}
        BF{"Burkina Faso"}
        BG{"Bugarska"}
        BH{"Bahrein"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"Sv. Bartolomej"}
        BM{"Bermuda"}
        BN{"Brunej"}
        BO{"Bolivija"}
        BQ{"Karipska Holandija"}
        BR{"Brazil"}
        BS{"Bahami"}
        BT{"Butan"}
        BV{"Buve Ostrva"}
        BW{"Bocvana"}
        BY{"Bjelorusija"}
        BZ{"Belize"}
        CA{"Kanada"}
        CC{"Kokos (Keling) Ostrva"}
        CD{"Demokratska Republika Kongo"}
        CF{"Centralnoafrička Republika"}
        CG{"Kongo"}
        CH{"Švicarska"}
        CI{"Obala Slonovače"}
        CK{"Kukova Ostrva"}
        CL{"Čile"}
        CM{"Kamerun"}
        CN{"Kina"}
        CO{"Kolumbija"}
        CP{"Ostrvo Kliperton"}
        CR{"Kostarika"}
        CU{"Kuba"}
        CV{"Kape Verde"}
        CW{"Kurasao"}
        CX{"Božićna Ostrva"}
        CY{"Kipar"}
        CZ{"Češka"}
        DE{"Njemačka"}
        DG{"Dijego Garsija"}
        DJ{"Džibuti"}
        DK{"Danska"}
        DM{"Dominika"}
        DO{"Dominikanska Republika"}
        DZ{"Alžir"}
        EA{"Seuta i Melilja"}
        EC{"Ekvador"}
        EE{"Estonija"}
        EG{"Egipat"}
        EH{"Zapadna Sahara"}
        ER{"Eritreja"}
        ES{"Španija"}
        ET{"Etiopija"}
        EU{"Evropska Unija"}
        FI{"Finska"}
        FJ{"Fidži"}
        FK{"Folklandska Ostrva"}
        FM{"Mikronezija"}
        FO{"Farska Ostrva"}
        FR{"Francuska"}
        GA{"Gabon"}
        GB{"Velika Britanija"}
        GD{"Grenada"}
        GE{"Gruzija"}
        GF{"Francuska Gvajana"}
        GG{"Gernzi"}
        GH{"Gana"}
        GI{"Gibraltar"}
        GL{"Grenland"}
        GM{"Gambija"}
        GN{"Gvineja"}
        GP{"Gvadelupe"}
        GQ{"Ekvatorijalna Gvineja"}
        GR{"Grčka"}
        GS{"Južna Džordžija i Južna Sendvič Ostrva"}
        GT{"Gvatemala"}
        GU{"Guam"}
        GW{"Gvineja-Bisao"}
        GY{"Gvajana"}
        HK{"Hong Kong (S. A. R. Kina)"}
        HM{"Herd i Mekdonald Ostrva"}
        HN{"Honduras"}
        HR{"Hrvatska"}
        HT{"Haiti"}
        HU{"Mađarska"}
        IC{"Kanarska ostrva"}
        ID{"Indonezija"}
        IE{"Irska"}
        IL{"Izrael"}
        IM{"Ostrvo Man"}
        IN{"Indija"}
        IO{"Britanska Territorija u Indijskom Okeanu"}
        IQ{"Irak"}
        IR{"Iran"}
        IS{"Island"}
        IT{"Italija"}
        JE{"Džersi"}
        JM{"Jamajka"}
        JO{"Jordan"}
        JP{"Japan"}
        KE{"Kenija"}
        KG{"Kirgizstan"}
        KH{"Kambodža"}
        KI{"Kiribati"}
        KM{"Komorska Ostrva"}
        KN{"Sent Kits i Nevis"}
        KP{"Sjeverna Koreja"}
        KR{"Južna Koreja"}
        KW{"Kuvajt"}
        KY{"Kajmanska Ostrva"}
        KZ{"Kazahstan"}
        LA{"Laos"}
        LB{"Liban"}
        LC{"Sent Lucija"}
        LI{"Lihtenštajn"}
        LK{"Šri Lanka"}
        LR{"Liberija"}
        LS{"Lesoto"}
        LT{"Litvanija"}
        LU{"Luksemburg"}
        LV{"Letonija"}
        LY{"Libija"}
        MA{"Maroko"}
        MC{"Monako"}
        MD{"Moldavija"}
        ME{"Crna Gora"}
        MF{"Sv. Martin"}
        MG{"Madagaskar"}
        MH{"Maršalska Ostrva"}
        MK{"Makedonija"}
        ML{"Mali"}
        MM{"Mijanmar"}
        MN{"Mongolija"}
        MO{"Makao (S. A. R. Kina)"}
        MP{"Sjeverna Marijanska Ostrva"}
        MQ{"Martinik"}
        MR{"Mauritanija"}
        MS{"Monserat"}
        MT{"Malta"}
        MU{"Mauricius"}
        MV{"Maldivi"}
        MW{"Malavi"}
        MX{"Meksiko"}
        MY{"Malezija"}
        MZ{"Mozambik"}
        NA{"Namibija"}
        NC{"Nova Kaledonija"}
        NE{"Niger"}
        NF{"Norfolk Ostrvo"}
        NG{"Nigerija"}
        NI{"Nikaragva"}
        NL{"Holandija"}
        NO{"Norveška"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Novi Zeland"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Francuska Polinezija"}
        PG{"Papua Nova Gvineja"}
        PH{"Filipini"}
        PK{"Pakistan"}
        PL{"Poljska"}
        PM{"Sen Pjer i Mikelon"}
        PN{"Pitkern"}
        PR{"Porto Riko"}
        PS{"Palestinska Teritorija"}
        PT{"Portugal"}
        PW{"Palau"}
        PY{"Paragvaj"}
        QA{"Katar"}
        QO{"Ostala Okeanija"}
        RE{"Rejunion"}
        RO{"Rumunija"}
        RS{"Srbija"}
        RU{"Rusija"}
        RW{"Ruanda"}
        SA{"Saudijska Arabija"}
        SB{"Solomonska Ostrva"}
        SC{"Sejšeli"}
        SD{"Sudan"}
        SE{"Švedska"}
        SG{"Singapur"}
        SH{"Sveta Helena"}
        SI{"Slovenija"}
        SJ{"Svalbard i Janmajen Ostrva"}
        SK{"Slovačka"}
        SL{"Sijera Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalija"}
        SR{"Surinam"}
        SS{"Južni Sudan"}
        ST{"Sao Tome i Principe"}
        SV{"Salvador"}
        SX{"Sint Marten"}
        SY{"Sirija"}
        SZ{"Svazilend"}
        TA{"Tristan da Kunja"}
        TC{"Turks i Kajkos Ostrva"}
        TD{"Čad"}
        TF{"Francuske Južne Teritorije"}
        TG{"Togo"}
        TH{"Tajland"}
        TJ{"Tadžikistan"}
        TK{"Tokelau"}
        TL{"Timor Leste"}
        TM{"Turkmenistan"}
        TN{"Tunis"}
        TO{"Tonga"}
        TR{"Turska"}
        TT{"Trinidad i Tobago"}
        TV{"Tuvalu"}
        TW{"Tajvan"}
        TZ{"Tanzanija"}
        UA{"Ukrajina"}
        UG{"Uganda"}
        UM{"Manja Udaljena Ostrva SAD"}
        US{"Sjedinjene Američke Države"}
        UY{"Urugvaj"}
        UZ{"Uzbekistan"}
        VA{"Vatikan"}
        VC{"Sent Vinsent i Grenadini"}
        VE{"Venecuela"}
        VG{"Britanska Djevičanska Ostrva"}
        VI{"Djevičanska Ostrva SAD"}
        VN{"Vijetnam"}
        VU{"Vanuatu"}
        WF{"Valis i Futuna Ostrva"}
        WS{"Samoa"}
        XK{"Kosovo"}
        YE{"Jemen"}
        YT{"Majote"}
        ZA{"Južnoafrička Republika"}
        ZM{"Zambija"}
        ZW{"Zimbabve"}
        ZZ{"Nepoznata ili nevažeća oblast"}
    }
    Countries%short{
        GB{"UK"}
        HK{"Hong Kong"}
        MO{"Makao"}
        PS{"Palestina"}
        US{"SAD"}
    }
    Countries%variant{
        CD{"Kongo (DRC)"}
        CG{"Republika Kongo"}
        CI{"Bjelokosna Obala"}
        FK{"Folklandska ostrva (Malvinska ostrva)"}
        MK{"Makedonija (BJR)"}
        TL{"Istočni Timor"}
    }
    Version{"2.1.15.60"}
}
