﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html
// Generated using tools/cldr/cldr-to-icu/build-icu-data.xml
hsb{
    Countries{
        001{"swět"}
        002{"Afrika"}
        003{"Sewjerna Amerika"}
        005{"Južna Amerika"}
        009{"Oceaniska"}
        011{"zapadna Afrika"}
        013{"Srjedźna Amerika"}
        014{"wuchodna Afrika"}
        015{"sewjerna Afrika"}
        017{"srjedźna Afrika"}
        018{"južna Afrika"}
        019{"Amerika"}
        021{"sewjerny ameriski kontinent"}
        029{"Karibika"}
        030{"wuchodna Azija"}
        034{"južna Azija"}
        035{"juhowuchodna Azija"}
        039{"južna Europa"}
        053{"Awstralazija"}
        054{"Melaneziska"}
        057{"Mikroneziska (kupowy region)"}
        061{"Polyneziska"}
        142{"Azija"}
        143{"centralna Azija"}
        145{"zapadna Azija"}
        150{"Europa"}
        151{"wuchodna Europa"}
        154{"sewjerna Europa"}
        155{"zapadna Europa"}
        419{"Łaćonska Amerika"}
        AC{"Ascension"}
        AD{"Andorra"}
        AE{"Zjednoćene arabske emiraty"}
        AF{"Afghanistan"}
        AG{"Antigua a Barbuda"}
        AI{"Anguilla"}
        AL{"Albanska"}
        AM{"Armenska"}
        AO{"Angola"}
        AQ{"Antarktika"}
        AR{"Argentinska"}
        AS{"Ameriska Samoa"}
        AT{"Awstriska"}
        AU{"Awstralska"}
        AW{"Aruba"}
        AX{"Åland"}
        AZ{"Azerbajdźan"}
        BA{"Bosniska a Hercegowina"}
        BB{"Barbados"}
        BD{"Bangladeš"}
        BE{"Belgiska"}
        BF{"Burkina Faso"}
        BG{"Bołharska"}
        BH{"Bahrain"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"St. Barthélemy"}
        BM{"Bermudy"}
        BN{"Brunei"}
        BO{"Boliwiska"}
        BQ{"Karibiska Nižozemska"}
        BR{"Brazilska"}
        BS{"Bahamy"}
        BT{"Bhutan"}
        BV{"Bouvetowa kupa"}
        BW{"Botswana"}
        BY{"Běłoruska"}
        BZ{"Belize"}
        CA{"Kanada"}
        CC{"Kokosowe kupy"}
        CD{"Kongo-Kinshasa"}
        CF{"Centralnoafriska republika"}
        CG{"Kongo-Brazzaville"}
        CH{"Šwicarska"}
        CI{"Côte d’Ivoire"}
        CK{"Cookowe kupy"}
        CL{"Chilska"}
        CM{"Kamerun"}
        CN{"China"}
        CO{"Kolumbiska"}
        CP{"Clippertonowa kupa"}
        CR{"Kosta Rika"}
        CU{"Kuba"}
        CV{"Kap Verde"}
        CW{"Curaçao"}
        CX{"Hodowna kupa"}
        CY{"Cypern"}
        CZ{"Čěska republika"}
        DE{"Němska"}
        DG{"Diego Garcia"}
        DJ{"Dźibuti"}
        DK{"Danska"}
        DM{"Dominika"}
        DO{"Dominikanska republika"}
        DZ{"Algeriska"}
        EA{"Ceuta a Melilla"}
        EC{"Ekwador"}
        EE{"Estiska"}
        EG{"Egyptowska"}
        EH{"Zapadna Sahara"}
        ER{"Eritreja"}
        ES{"Španiska"}
        ET{"Etiopiska"}
        EU{"Europska unija"}
        FI{"Finska"}
        FJ{"Fidźi"}
        FK{"Falklandske kupy (Malwiny)"}
        FM{"Mikroneziska"}
        FO{"Färöske kupy"}
        FR{"Francoska"}
        GA{"Gabun"}
        GB{"Zjednoćene kralestwo"}
        GD{"Grenada"}
        GE{"Georgiska"}
        GF{"Francoska Guyana"}
        GG{"Guernsey"}
        GH{"Ghana"}
        GI{"Gibraltar"}
        GL{"Grönlandska"}
        GM{"Gambija"}
        GN{"Gineja"}
        GP{"Guadeloupe"}
        GQ{"Ekwatorialna Gineja"}
        GR{"Grjekska"}
        GS{"Južna Georgiska a Južne Sandwichowe kupy"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Gineja-Bissau"}
        GY{"Guyana"}
        HK{"Hongkong"}
        HM{"Heardowa kupa a McDonaldowe kupy"}
        HN{"Honduras"}
        HR{"Chorwatska"}
        HT{"Haiti"}
        HU{"Madźarska"}
        IC{"Kanariske kupy"}
        ID{"Indoneska"}
        IE{"Irska"}
        IL{"Israel"}
        IM{"Man"}
        IN{"Indiska"}
        IO{"Britiski teritorij w Indiskim oceanje"}
        IQ{"Irak"}
        IR{"Iran"}
        IS{"Islandska"}
        IT{"Italska"}
        JE{"Jersey"}
        JM{"Jamaika"}
        JO{"Jordaniska"}
        JP{"Japanska"}
        KE{"Kenija"}
        KG{"Kirgizistan"}
        KH{"Kambodźa"}
        KI{"Kiribati"}
        KM{"Komory"}
        KN{"St. Kitts a Nevis"}
        KP{"Sewjerna Koreja"}
        KR{"Južna Koreja"}
        KW{"Kuwait"}
        KY{"Kajmanske kupy"}
        KZ{"Kazachstan"}
        LA{"Laos"}
        LB{"Libanon"}
        LC{"St. Lucia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberija"}
        LS{"Lesotho"}
        LT{"Litawska"}
        LU{"Luxemburgska"}
        LV{"Letiska"}
        LY{"Libyska"}
        MA{"Marokko"}
        MC{"Monaco"}
        MD{"Moldawska"}
        ME{"Montenegro"}
        MF{"St. Martin"}
        MG{"Madagaskar"}
        MH{"Marshallowe kupy"}
        ML{"Mali"}
        MM{"Myanmar"}
        MN{"Mongolska"}
        MO{"Macao"}
        MP{"Sewjerne Mariany"}
        MQ{"Martinique"}
        MR{"Mawretanska"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauritius"}
        MV{"Malediwy"}
        MW{"Malawi"}
        MX{"Mexiko"}
        MY{"Malajzija"}
        MZ{"Mosambik"}
        NA{"Namibija"}
        NC{"Nowa Kaledoniska"}
        NE{"Niger"}
        NF{"Norfolkowa kupa"}
        NG{"Nigerija"}
        NI{"Nikaragua"}
        NL{"Nižozemska"}
        NO{"Norwegska"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Nowoseelandska"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Francoska Polyneziska"}
        PG{"Papuwa-Nowa Gineja"}
        PH{"Filipiny"}
        PK{"Pakistan"}
        PL{"Pólska"}
        PM{"St. Pierre a Miquelon"}
        PN{"Pitcairnowe kupy"}
        PR{"Puerto Rico"}
        PS{"Palestina"}
        PT{"Portugalska"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Katar"}
        QO{"Wonkowna Oceaniska"}
        RE{"Réunion"}
        RO{"Rumunska"}
        RS{"Serbiska"}
        RU{"Ruska"}
        RW{"Ruanda"}
        SA{"Sawdi-Arabska"}
        SB{"Salomony"}
        SC{"Seychelle"}
        SD{"Sudan"}
        SE{"Šwedska"}
        SG{"Singapur"}
        SH{"St. Helena"}
        SI{"Słowjenska"}
        SJ{"Svalbard a Jan Mayen"}
        SK{"Słowakska"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalija"}
        SR{"Surinam"}
        SS{"Južny Sudan"}
        ST{"São Tomé a Príncipe"}
        SV{"El Salvador"}
        SX{"Sint Maarten"}
        SY{"Syriska"}
        SZ{"Swaziska"}
        TA{"Tristan da Cunha"}
        TC{"kupy Turks a Caicos"}
        TD{"Čad"}
        TF{"Francoski južny a antarktiski teritorij"}
        TG{"Togo"}
        TH{"Thailandska"}
        TJ{"Tadźikistan"}
        TK{"Tokelau"}
        TL{"Timor-Leste"}
        TM{"Turkmeniska"}
        TN{"Tuneziska"}
        TO{"Tonga"}
        TR{"Turkowska"}
        TT{"Trinidad a Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwan"}
        TZ{"Tansanija"}
        UA{"Ukraina"}
        UG{"Uganda"}
        UM{"Ameriska Oceaniska"}
        UN{"Zjednoćene narody"}
        US{"Zjednoćene staty Ameriki"}
        UY{"Uruguay"}
        UZ{"Uzbekistan"}
        VA{"Vatikanske město"}
        VC{"St. Vincent a Grenadiny"}
        VE{"Venezuela"}
        VG{"Britiske knježniske kupy"}
        VI{"Ameriske knježniske kupy"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis a Futuna"}
        WS{"Samoa"}
        XK{"Kosowo"}
        YE{"Jemen"}
        YT{"Mayotte"}
        ZA{"Južna Afrika (Republika)"}
        ZM{"Sambija"}
        ZW{"Simbabwe"}
        ZZ{"njeznaty region"}
    }
    Countries%short{
        GB{"UK"}
        US{"USA"}
    }
    Countries%variant{
        CD{"Kongo (Demokratiska republika)"}
        CG{"Kongo (Republika)"}
        CI{"Słonowinowy pobrjóh"}
        TL{"Wuchodny Timor"}
    }
}
