﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/fi.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/fi.xml
 */
fi{
    Countries{
        001{"maailma"}
        002{"Afrikka"}
        003{"Pohjois-Amerikka"}
        005{"Etelä-Amerikka"}
        009{"Oseania"}
        011{"Länsi-Afrikka"}
        013{"Väli-Amerikka"}
        014{"Itä-Afrikka"}
        015{"Pohjois-Afrikka"}
        017{"Keski-Afrikka"}
        018{"eteläinen Afrikka"}
        019{"Amerikka"}
        021{"pohjoinen Amerikka"}
        029{"Karibia"}
        030{"Itä-Aasia"}
        034{"Etelä-Aasia"}
        035{"Kaakkois-Aasia"}
        039{"Etelä-Eurooppa"}
        053{"Australaasia"}
        054{"Melanesia"}
        057{"Mikronesia"}
        061{"Polynesia"}
        142{"Aasia"}
        143{"Keski-Aasia"}
        145{"Länsi-Aasia"}
        150{"Eurooppa"}
        151{"Itä-Eurooppa"}
        154{"Pohjois-Eurooppa"}
        155{"Länsi-Eurooppa"}
        419{"Latinalainen Amerikka"}
        AC{"Ascension-saari"}
        AD{"Andorra"}
        AE{"Arabiemiirikunnat"}
        AF{"Afganistan"}
        AG{"Antigua ja Barbuda"}
        AI{"Anguilla"}
        AL{"Albania"}
        AM{"Armenia"}
        AN{"Alankomaiden Antillit"}
        AO{"Angola"}
        AQ{"Antarktis"}
        AR{"Argentiina"}
        AS{"Amerikan Samoa"}
        AT{"Itävalta"}
        AU{"Australia"}
        AW{"Aruba"}
        AX{"Ahvenanmaa"}
        AZ{"Azerbaidžan"}
        BA{"Bosnia ja Hertsegovina"}
        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"}
        BO{"Bolivia"}
        BQ{"Karibian Alankomaat"}
        BR{"Brasilia"}
        BS{"Bahama"}
        BT{"Bhutan"}
        BV{"Bouvet’nsaari"}
        BW{"Botswana"}
        BY{"Valko-Venäjä"}
        BZ{"Belize"}
        CA{"Kanada"}
        CC{"Kookossaaret [Keelingsaaret]"}
        CD{"Kongon demokraattinen tasavalta"}
        CF{"Keski-Afrikan tasavalta"}
        CG{"Kongon tasavalta"}
        CH{"Sveitsi"}
        CI{"Norsunluurannikko"}
        CK{"Cookinsaaret"}
        CL{"Chile"}
        CM{"Kamerun"}
        CN{"Kiina"}
        CO{"Kolumbia"}
        CP{"Clippertoninsaari"}
        CR{"Costa Rica"}
        CU{"Kuuba"}
        CV{"Kap Verde"}
        CW{"Curaçao"}
        CX{"Joulusaari"}
        CY{"Kypros"}
        CZ{"Tšekki"}
        DE{"Saksa"}
        DG{"Diego Garcia"}
        DJ{"Djibouti"}
        DK{"Tanska"}
        DM{"Dominica"}
        DO{"Dominikaaninen tasavalta"}
        DZ{"Algeria"}
        EA{"Ceuta ja Melilla"}
        EC{"Ecuador"}
        EE{"Viro"}
        EG{"Egypti"}
        EH{"Länsi-Sahara"}
        ER{"Eritrea"}
        ES{"Espanja"}
        ET{"Etiopia"}
        EU{"Euroopan unioni"}
        FI{"Suomi"}
        FJ{"Fidži"}
        FK{"Falklandinsaaret"}
        FM{"Mikronesian liittovaltio"}
        FO{"Färsaaret"}
        FR{"Ranska"}
        GA{"Gabon"}
        GB{"Britannia"}
        GD{"Grenada"}
        GE{"Georgia"}
        GF{"Ranskan Guayana"}
        GG{"Guernsey"}
        GH{"Ghana"}
        GI{"Gibraltar"}
        GL{"Grönlanti"}
        GM{"Gambia"}
        GN{"Guinea"}
        GP{"Guadeloupe"}
        GQ{"Päiväntasaajan Guinea"}
        GR{"Kreikka"}
        GS{"Etelä-Georgia ja Eteläiset Sandwichsaaret"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinea-Bissau"}
        GY{"Guyana"}
        HK{"Hongkong"}
        HM{"Heard- ja McDonaldinsaaret"}
        HN{"Honduras"}
        HR{"Kroatia"}
        HT{"Haiti"}
        HU{"Unkari"}
        IC{"Kanariansaaret"}
        ID{"Indonesia"}
        IE{"Irlanti"}
        IL{"Israel"}
        IM{"Mansaari"}
        IN{"Intia"}
        IO{"Brittiläinen Intian valtameren alue"}
        IQ{"Irak"}
        IR{"Iran"}
        IS{"Islanti"}
        IT{"Italia"}
        JE{"Jersey"}
        JM{"Jamaika"}
        JO{"Jordania"}
        JP{"Japani"}
        KE{"Kenia"}
        KG{"Kirgisia"}
        KH{"Kambodža"}
        KI{"Kiribati"}
        KM{"Komorit"}
        KN{"Saint Kitts ja Nevis"}
        KP{"Pohjois-Korea"}
        KR{"Etelä-Korea"}
        KW{"Kuwait"}
        KY{"Caymansaaret"}
        KZ{"Kazakstan"}
        LA{"Laos"}
        LB{"Libanon"}
        LC{"Saint Lucia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lesotho"}
        LT{"Liettua"}
        LU{"Luxemburg"}
        LV{"Latvia"}
        LY{"Libya"}
        MA{"Marokko"}
        MC{"Monaco"}
        MD{"Moldova"}
        ME{"Montenegro"}
        MF{"Saint-Martin"}
        MG{"Madagaskar"}
        MH{"Marshallinsaaret"}
        MK{"Makedonia"}
        ML{"Mali"}
        MM{"Myanmar [Burma]"}
        MN{"Mongolia"}
        MO{"Macao"}
        MP{"Pohjois-Mariaanit"}
        MQ{"Martinique"}
        MR{"Mauritania"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauritius"}
        MV{"Malediivit"}
        MW{"Malawi"}
        MX{"Meksiko"}
        MY{"Malesia"}
        MZ{"Mosambik"}
        NA{"Namibia"}
        NC{"Uusi-Kaledonia"}
        NE{"Niger"}
        NF{"Norfolkinsaari"}
        NG{"Nigeria"}
        NI{"Nicaragua"}
        NL{"Alankomaat"}
        NO{"Norja"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Uusi-Seelanti"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Ranskan Polynesia"}
        PG{"Papua-Uusi-Guinea"}
        PH{"Filippiinit"}
        PK{"Pakistan"}
        PL{"Puola"}
        PM{"Saint-Pierre ja Miquelon"}
        PN{"Pitcairn"}
        PR{"Puerto Rico"}
        PS{"Palestiina"}
        PT{"Portugali"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Qatar"}
        QO{"ulkomeri"}
        RE{"Réunion"}
        RO{"Romania"}
        RS{"Serbia"}
        RU{"Venäjä"}
        RW{"Ruanda"}
        SA{"Saudi-Arabia"}
        SB{"Salomonsaaret"}
        SC{"Seychellit"}
        SD{"Sudan"}
        SE{"Ruotsi"}
        SG{"Singapore"}
        SH{"Saint Helena"}
        SI{"Slovenia"}
        SJ{"Huippuvuoret ja Jan Mayen"}
        SK{"Slovakia"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalia"}
        SR{"Surinam"}
        SS{"Etelä-Sudan"}
        ST{"São Tomé ja Príncipe"}
        SV{"El Salvador"}
        SX{"Sint Maarten"}
        SY{"Syyria"}
        SZ{"Swazimaa"}
        TA{"Tristan da Cunha"}
        TC{"Turks- ja Caicossaaret"}
        TD{"Tšad"}
        TF{"Ranskan ulkopuoliset eteläiset alueet"}
        TG{"Togo"}
        TH{"Thaimaa"}
        TJ{"Tadžikistan"}
        TK{"Tokelau"}
        TL{"Itä-Timor"}
        TM{"Turkmenistan"}
        TN{"Tunisia"}
        TO{"Tonga"}
        TR{"Turkki"}
        TT{"Trinidad ja Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwan"}
        TZ{"Tansania"}
        UA{"Ukraina"}
        UG{"Uganda"}
        UM{"Yhdysvaltain pienet erillissaaret"}
        US{"Yhdysvallat"}
        UY{"Uruguay"}
        UZ{"Uzbekistan"}
        VA{"Vatikaani"}
        VC{"Saint Vincent ja Grenadiinit"}
        VE{"Venezuela"}
        VG{"Brittiläiset Neitsytsaaret"}
        VI{"Yhdysvaltain Neitsytsaaret"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis ja Futuna"}
        WS{"Samoa"}
        XK{"Kosovo"}
        YE{"Jemen"}
        YT{"Mayotte"}
        ZA{"Etelä-Afrikka"}
        ZM{"Sambia"}
        ZW{"Zimbabwe"}
        ZZ{"tuntematon alue"}
    }
    Version{"2.0.82.57"}
}
