﻿// ***************************************************************************
// *
// * Copyright (C) 2004 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File: ../../../locale/common/main\fo.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: ../../../locale/icu/main\fo.xml
 */
fo{
    Countries{
        AE{"Sameindu Emirríkini"}
        AF{"Afganistan"}
        AG{"Antigua og Barbuda"}
        AQ{"Antarktis"}
        AT{"Eysturríki"}
        AU{"Avstralia"}
        AZ{"Aserbajdsjan"}
        BA{"Bosnia-Hersegovina"}
        BD{"Bangladesj"}
        BE{"Belgia"}
        BR{"Brasilia"}
        BT{"Butan"}
        BW{"Botsvana"}
        BY{"Hvítarussland"}
        BZ{"Belis"}
        CA{"Kanada"}
        CF{"Miðafrikalýðveldið"}
        CG{"Kongo"}
        CH{"Sveis"}
        CI{"Fílabeinsstrondin"}
        CL{"Kili"}
        CM{"Kamerun"}
        CN{"Kina"}
        CO{"Kolombia"}
        CR{"Kosta Rika"}
        CU{"Kuba"}
        CV{"Grønhøvdaoyggjarnar"}
        CY{"Kýpros"}
        CZ{"Kekkia"}
        DE{"Týskland"}
        DK{"Danmørk"}
        DM{"Dominika"}
        DO{"Domingo lýðveldið"}
        EC{"Ekvador"}
        EE{"Estland"}
        EG{"Egyptaland"}
        ES{"Spania"}
        ET{"Etiopia"}
        FI{"Finnland"}
        FM{"Mikronesia"}
        FO{"Føroyar"}
        FR{"Frakland"}
        GQ{"Ekvator Guinea"}
        GR{"Grikkaland"}
        GW{"Guinea Bissau"}
        GY{"Gujana"}
        HR{"Kroatia"}
        HU{"Ungarn"}
        IE{"Írland"}
        IL{"Ísrael"}
        IQ{"Irak"}
        IS{"Ísland"}
        IT{"Italia"}
        JM{"Jameika"}
        KE{"Kenja"}
        KG{"Kirgisia"}
        KH{"Kambodja"}
        KM{"Komorooyggjarnar"}
        KN{"Saint Kitts og Nevis"}
        KP{"Norður-Korea"}
        KR{"Suður-Korea"}
        KW{"Kuvait"}
        KZ{"Kasakstan"}
        LB{"Libanon"}
        LC{"Saint Lusia"}
        LI{"Liktenstein"}
        LS{"Lesoto"}
        LT{"Litava"}
        LU{"Luksemborg"}
        LV{"Lettland"}
        MA{"Marokko"}
        MC{"Monako"}
        MG{"Madagaskar"}
        MH{"Marshalloyggjarnar"}
        MK{"Makedónia"}
        MR{"Móritania"}
        MU{"Móritius"}
        MV{"Maldivuoyggjarnar"}
        MW{"Malavi"}
        MX{"Meksiko"}
        MY{"Maleisia"}
        MZ{"Mosambik"}
        NI{"Nikaragua"}
        NL{"Niðurlond"}
        NO{"Noreg"}
        NZ{"Ný Sæland"}
        PE{"Perú"}
        PG{"Papua Nýguinea"}
        PH{"Filipsoyggjar"}
        PL{"Pólland"}
        PY{"Paraguei"}
        QA{"Katar"}
        RO{"Rumenia"}
        RU{"Russland"}
        RW{"Ruanda"}
        SA{"Saudi-Arábia"}
        SB{"Sálomonoyggjarnar"}
        SC{"Seyskelloyggjarnar"}
        SE{"Svøríki"}
        SG{"Singapor"}
        SR{"Surinam"}
        ST{"Sao Tome og Prinsipi"}
        SZ{"Svasiland"}
        TD{"Kjad"}
        TJ{"Tadsjikistan"}
        TN{"Tunesia"}
        TR{"Turkaland"}
        TT{"Trinidad og Tobago"}
        TW{"Teivan"}
        TZ{"Tansania"}
        UA{"Ukreina"}
        US{"Sambandsríki Amerika"}
        UY{"Uruguei"}
        UZ{"Usbekistan"}
        VA{"Vatikan"}
        VC{"Saint Vinsent og Grenadinoyggjar"}
        VE{"Venesuela"}
        WS{"Sámoa"}
        YE{"Jemen"}
        ZA{"Suðurafrika"}
        ZM{"Sambia"}
        ZW{"Simbabvi"}
    }
    Currencies{
        DKK{
            "kr",
            "DKK",
        }
    }
    ExemplarCharacters{"[a-záæíðóøúý]"}
    Languages{
        fo{"føroyskt"}
    }
    LocaleScript{
        "Latn",
    }
    NumberElements{
        ",",
        ".",
        ";",
        "%",
        "0",
        "#",
        "-",
        "E",
        "‰",
        "∞",
        "�",
        "+",
    }
    Version{"1.2"}
    calendar{
        gregorian{
            DateTimePatterns{
                "HH:mm:ss z",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE dd MMMM yyyy",
                "d. MMM yyyy",
                "dd-MM-yyyy",
                "dd-MM-yy",
                "{1} {0}",
            }
            dayNames{
                format{
                    abbreviated{
                        "sun",
                        "mán",
                        "týs",
                        "mik",
                        "hós",
                        "frí",
                        "ley",
                    }
                    wide{
                        "sunnudagur",
                        "mánadagur",
                        "týsdagur",
                        "mikudagur",
                        "hósdagur",
                        "fríggjadagur",
                        "leygardagur",
                    }
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "jan",
                        "feb",
                        "mar",
                        "apr",
                        "mai",
                        "jun",
                        "jul",
                        "aug",
                        "sep",
                        "okt",
                        "nov",
                        "des",
                    }
                    wide{
                        "januar",
                        "februar",
                        "mars",
                        "apríl",
                        "mai",
                        "juni",
                        "juli",
                        "august",
                        "september",
                        "oktober",
                        "november",
                        "desember",
                    }
                }
            }
        }
    }
}
