﻿// ***************************************************************************
// *
// * Copyright (C) 2005 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File: ../../../cldr/common/main/fo.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: ./xml/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.26"}
    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",
                    }
                }
            }
        }
    }
}
