﻿// ***************************************************************************
// *
// * Copyright (C) 2009 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/nn.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/nn.xml
 */
nn{
    Countries{
        001{"verda"}
        002{"Afrika"}
        003{"Nord-Amerika"}
        005{"Sør-Amerika"}
        009{"Oseania"}
        011{"Vest-Afrika"}
        013{"Sentral-Amerika"}
        014{"Aust-Afrika"}
        015{"Nord-Afrika"}
        017{"Sentral-Afrika"}
        018{"Sørlege Afrika"}
        019{"Amerika"}
        021{"nordlege Amerika"}
        029{"Karibia"}
        030{"Aust-Asia"}
        034{"Sør-Asia"}
        035{"Søraust-Asia"}
        039{"Sør-Europa"}
        053{"Australia og New Zealand"}
        054{"Melanesia"}
        057{"Mikronesia"}
        061{"Polynesia"}
        062{"Sørlege Sentral-Asia"}
        142{"Asia"}
        143{"Sentral-Asia"}
        145{"Vest-Asia"}
        150{"Europa"}
        151{"Aust-Europa"}
        154{"Nord-Europa"}
        155{"Vest-Europa"}
        172{"Samveldet av uavhengige statar"}
        419{"Latin-Amerika og Karibia"}
        830{"Kanaløyane"}
        AD{"Andorra"}
        AE{"Dei sameinte arabiske emirata"}
        AF{"Afghanistan"}
        AG{"Antigua og Barbuda"}
        AI{"Anguilla"}
        AL{"Albania"}
        AM{"Armenia"}
        AN{"Dei nederlandske Antillane"}
        AO{"Angola"}
        AQ{"Antarktis"}
        AR{"Argentina"}
        AS{"Amerikansk Samoa"}
        AT{"Austerrike"}
        AU{"Australia"}
        AW{"Aruba"}
        AX{"Åland"}
        AZ{"Aserbajdsjan"}
        BA{"Bosnia og Hercegovina"}
        BB{"Barbados"}
        BD{"Bangladesh"}
        BE{"Belgia"}
        BF{"Burkina Faso"}
        BG{"Bulgaria"}
        BH{"Bahrain"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"Saint Barthélemy"}
        BM{"Bermuda"}
        BN{"Brunei Darussalam"}
        BO{"Bolivia"}
        BR{"Brasil"}
        BS{"Bahamas"}
        BT{"Bhutan"}
        BV{"Bouvetøya"}
        BW{"Botswana"}
        BY{"Kviterussland"}
        BZ{"Belize"}
        CA{"Canada"}
        CC{"Kokosøyane"}
        CD{"Kongo-Kinshasa"}
        CF{"Den sentralafrikanske republikken"}
        CG{"Kongo-Brazzaville"}
        CH{"Sveits"}
        CI{"Elfenbeinskysten"}
        CK{"Cookøyane"}
        CL{"Chile"}
        CM{"Kamerun"}
        CN{"Kina"}
        CO{"Colombia"}
        CR{"Costa Rica"}
        CS{"Serbia og Montenegro"}
        CU{"Cuba"}
        CV{"Kapp Verde"}
        CX{"Christmasøya"}
        CY{"Kypros"}
        CZ{"Tsjekkia"}
        DE{"Tyskland"}
        DJ{"Djibouti"}
        DK{"Danmark"}
        DM{"Dominica"}
        DO{"Den dominikanske republikken"}
        DZ{"Algerie"}
        EC{"Ecuador"}
        EE{"Estland"}
        EG{"Egypt"}
        EH{"Vest-Sahara"}
        ER{"Eritrea"}
        ES{"Spania"}
        ET{"Etiopia"}
        FI{"Finland"}
        FJ{"Fiji"}
        FK{"Falklandsøyane"}
        FM{"Mikronesiaføderasjonen"}
        FO{"Færøyane"}
        FR{"Frankrike"}
        GA{"Gabon"}
        GB{"Storbritannia"}
        GD{"Grenada"}
        GE{"Georgia"}
        GF{"Fransk Guyana"}
        GG{"Guernsey"}
        GH{"Ghana"}
        GI{"Gibraltar"}
        GL{"Grønland"}
        GM{"Gambia"}
        GN{"Guinea"}
        GP{"Guadeloupe"}
        GQ{"Ekvatorial-Guinea"}
        GR{"Hellas"}
        GS{"Sør-Georgia og Sør-Sandwich-øyane"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinea-Bissau"}
        GY{"Guyana"}
        HK{"Hong Kong S.A.R. (Kina)"}
        HM{"Heard- og McDonaldsøyane"}
        HN{"Honduras"}
        HR{"Kroatia"}
        HT{"Haiti"}
        HU{"Ungarn"}
        ID{"Indonesia"}
        IE{"Irland"}
        IL{"Israel"}
        IM{"Man"}
        IN{"India"}
        IO{"Britiske område i Det indiske hav"}
        IQ{"Irak"}
        IR{"Iran"}
        IS{"Island"}
        IT{"Italia"}
        JE{"Jersey"}
        JM{"Jamaica"}
        JO{"Jordan"}
        JP{"Japan"}
        KE{"Kenya"}
        KG{"Kirgisistan"}
        KH{"Kambodsja"}
        KI{"Kiribati"}
        KM{"Komorene"}
        KN{"St. Christopher og Nevis"}
        KP{"Nord-Korea"}
        KR{"Sør-Korea"}
        KW{"Kuwait"}
        KY{"Caymanøyane"}
        KZ{"Kasakhstan"}
        LA{"Laos"}
        LB{"Libanon"}
        LC{"St. Lucia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lesotho"}
        LT{"Litauen"}
        LU{"Luxembourg"}
        LV{"Latvia"}
        LY{"Libya"}
        MA{"Marokko"}
        MC{"Monaco"}
        MD{"Moldova"}
        ME{"Montenegro"}
        MF{"Saint Martin"}
        MG{"Madagaskar"}
        MH{"Marshalløyane"}
        MK{"Makedonia"}
        ML{"Mali"}
        MM{"Myanmar"}
        MN{"Mongolia"}
        MO{"Macao S.A.R. (Kina)"}
        MP{"Nord-Marianane"}
        MQ{"Martinique"}
        MR{"Mauritania"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauritius"}
        MV{"Maldivane"}
        MW{"Malawi"}
        MX{"Mexico"}
        MY{"Malaysia"}
        MZ{"Mosambik"}
        NA{"Namibia"}
        NC{"Ny-Caledonia"}
        NE{"Niger"}
        NF{"Norfolkøyane"}
        NG{"Nigeria"}
        NI{"Nicaragua"}
        NL{"Nederland"}
        NO{"Noreg"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"New Zealand"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Fransk Polynesia"}
        PG{"Papua Ny-Guinea"}
        PH{"Filippinane"}
        PK{"Pakistan"}
        PL{"Polen"}
        PM{"St. Pierre og Miquelon"}
        PN{"Pitcairn"}
        PR{"Puerto Rico"}
        PS{"Palestinsk territorium"}
        PT{"Portugal"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Qatar"}
        QO{"Ytre Oseania"}
        QU{"Den europeiske unionen"}
        RE{"Réunion"}
        RO{"Romania"}
        RS{"Serbia"}
        RU{"Russland"}
        RW{"Rwanda"}
        SA{"Saudi Arabia"}
        SB{"Salomonøyane"}
        SC{"Seychellane"}
        SD{"Sudan"}
        SE{"Sverige"}
        SG{"Singapore"}
        SH{"Saint Helena"}
        SI{"Slovenia"}
        SJ{"Svalbard og Jan Mayen"}
        SK{"Slovakia"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalia"}
        SR{"Surinam"}
        ST{"São Tomé og Príncipe"}
        SV{"El Salvador"}
        SY{"Syria"}
        SZ{"Swaziland"}
        TC{"Turks- og Caicosøyane"}
        TD{"Tchad"}
        TF{"Franske sørområde"}
        TG{"Togo"}
        TH{"Thailand"}
        TJ{"Tadsjikistan"}
        TK{"Tokelau"}
        TL{"Aust-Timor"}
        TM{"Turkmenistan"}
        TN{"Tunisia"}
        TO{"Tonga"}
        TR{"Tyrkia"}
        TT{"Trinidad og Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwan"}
        TZ{"Tanzania"}
        UA{"Ukraina"}
        UG{"Uganda"}
        UM{"USAs ytre småøyar"}
        US{"USA"}
        UY{"Uruguay"}
        UZ{"Usbekistan"}
        VA{"Vatikanstaten"}
        VC{"St. Vincent og Grenadinane"}
        VE{"Venezuela"}
        VG{"Jomfruøyane (britisk)"}
        VI{"Jomfruøyane (USA)"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis og Futuna"}
        WS{"Samoa"}
        YE{"Yemen"}
        YT{"Mayotte"}
        ZA{"Sør-Afrika"}
        ZM{"Zambia"}
        ZW{"Zimbabwe"}
        ZZ{"(ukjent eller ugyldig område)"}
    }
    Version{"2.0.42.82"}
}
