﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/is.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/is.xml
 */
is{
    AuxExemplarCharacters{"[c q w x z]"}
    Ellipsis{
        final{"{0}…"}
        initial{"…{0}"}
        medial{"{0}…{1}"}
        word-final{"{0} …"}
        word-initial{"… {0}"}
        word-medial{"{0} … {1}"}
    }
    ExemplarCharacters{"[a á b d ð e é f g h i í j k l m n o ó p r s t u ú v y ý þ æ ö]"}
    ExemplarCharactersIndex{"[A Á B C D Ð E É F G H I Í J K L M N O Ó P Q R S T U Ú V W X Y Ý Z Þ Æ Ö]"}
    ExemplarCharactersPunctuation{
        "[\\- ‐ – — , ; \\: ! ? . … ' ‘ ‚ \u0022 “ „ ( ) \\[ \\] § @ * / \\& # † ‡ ′ "
        "″]"
    }
    LocaleScript{
        "Latn",
    }
    MoreInformation{"?"}
    NumberElements{
        latn{
            miscPatterns{
                atLeast{"{0}+"}
                range{"{0}–{1}"}
            }
            patterns{
                accountingFormat{"#,##0.00 ¤"}
                currencyFormat{"#,##0.00 ¤"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0%"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        one{"0 þúsund"}
                        other{"0 þúsund"}
                    }
                    10000{
                        one{"00 þúsund"}
                        other{"00 þúsund"}
                    }
                    100000{
                        one{"000 þúsund"}
                        other{"000 þúsund"}
                    }
                    1000000{
                        one{"0 milljón"}
                        other{"0 milljónir"}
                    }
                    10000000{
                        one{"00 milljónir"}
                        other{"00 milljónir"}
                    }
                    100000000{
                        one{"000 milljón"}
                        other{"000 milljónir"}
                    }
                    1000000000{
                        one{"0 milljarður"}
                        other{"0 milljarðar"}
                    }
                    10000000000{
                        one{"00 milljarðar"}
                        other{"00 milljarðar"}
                    }
                    100000000000{
                        one{"000 milljarðar"}
                        other{"000 milljarðar"}
                    }
                    1000000000000{
                        one{"0 billjón"}
                        other{"0 billjónir"}
                    }
                    10000000000000{
                        one{"00 billjónir"}
                        other{"00 billjónir"}
                    }
                    100000000000000{
                        one{"000 billjónir"}
                        other{"000 billjónir"}
                    }
                }
            }
            patternsShort{
                decimalFormat{
                    1000{
                        one{"0 þ'.'"}
                        other{"0 þ'.'"}
                    }
                    10000{
                        one{"00 þ'.'"}
                        other{"00 þ'.'"}
                    }
                    100000{
                        one{"000 þ'.'"}
                        other{"000 þ'.'"}
                    }
                    1000000{
                        one{"0 m'.'"}
                        other{"0 m'.'"}
                    }
                    10000000{
                        one{"00 m'.'"}
                        other{"00 m'.'"}
                    }
                    100000000{
                        one{"000 m'.'"}
                        other{"000 m'.'"}
                    }
                    1000000000{
                        one{"0 ma'.'"}
                        other{"0 ma'.'"}
                    }
                    10000000000{
                        one{"00 ma'.'"}
                        other{"00 ma'.'"}
                    }
                    100000000000{
                        one{"000 ma'.'"}
                        other{"000 ma'.'"}
                    }
                    1000000000000{
                        one{"0 bn"}
                        other{"0 bn"}
                    }
                    10000000000000{
                        one{"00 bn"}
                        other{"00 bn"}
                    }
                    100000000000000{
                        one{"000 bn"}
                        other{"000 bn"}
                    }
                }
            }
            symbols{
                decimal{","}
                exponential{"E"}
                group{"."}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
            }
        }
    }
    Version{"2.0.98.52"}
    calendar{
        generic{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, d. MMMM y G",
                "d. MMMM y G",
                "d.M.y G",
                "d.M.y GGGGG",
                "{1}, {0}",
                "{1} 'kl.' {0}",
                "{1} 'kl.' {0}",
                "{1}, {0}",
                "{1}, {0}",
            }
            availableFormats{
                Ed{"E d."}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, d. MMM y G"}
                GyMMMd{"d. MMM y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d.M."}
                MMM{"LLL"}
                MMMEd{"E, d. MMM"}
                MMMMEd{"E, d. MMMM"}
                MMMMd{"d. MMMM"}
                MMMd{"d. MMM"}
                Md{"d.M."}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"y G"}
                yyyy{"y G"}
                yyyyM{"M.y G"}
                yyyyMEd{"E, d.M.y G"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E, d. MMM y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"d. MMM y G"}
                yyyyMd{"d.M.y G"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"QQQQ y G"}
            }
            intervalFormats{
                H{
                    H{"HH–HH"}
                }
                Hm{
                    H{"HH:mm–HH:mm"}
                    m{"HH:mm–HH:mm"}
                }
                Hmv{
                    H{"HH:mm–HH:mm v"}
                    m{"HH:mm–HH:mm v"}
                }
                Hv{
                    H{"HH–HH v"}
                }
                M{
                    M{"M.–M."}
                }
                MEd{
                    M{"E, d.M. – E, d.M."}
                    d{"E, d. – E, d.M."}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, d. MMM – E, d. MMM"}
                    d{"E, d. – E, d. MMM"}
                }
                MMMM{
                    M{"MMMM–MMMM"}
                }
                MMMd{
                    M{"d. MMM – d. MMM"}
                    d{"d.–d. MMM"}
                }
                Md{
                    M{"d.M.–d.M."}
                    d{"d.–d.M."}
                }
                d{
                    d{"d.–d."}
                }
                fallback{"{0} – {1}"}
                h{
                    a{"h a – h a"}
                    h{"h–h a"}
                }
                hm{
                    a{"h:mm a – h:mm a"}
                    h{"h:mm–h:mm a"}
                    m{"h:mm–h:mm a"}
                }
                hmv{
                    a{"h:mm a – h:mm a v"}
                    h{"h:mm–h:mm a v"}
                    m{"h:mm–h:mm a v"}
                }
                hv{
                    a{"h a – h a v"}
                    h{"h–h a v"}
                }
                y{
                    y{"y–y G"}
                }
                yM{
                    M{"M.–M.y G"}
                    y{"M.y–M.y G"}
                }
                yMEd{
                    M{"E, d.M. – E, d.M.y G"}
                    d{"E, d. – E, d.M.y G"}
                    y{"E, d.M.y – E, d.M.y G"}
                }
                yMMM{
                    M{"MMM–MMM y G"}
                    y{"MMM y – MMM y G"}
                }
                yMMMEd{
                    M{"E, d. MMM – E, d. MMM y G"}
                    d{"E, d. – E, d. MMM y G"}
                    y{"E, d. MMM y – E, d. MMM y G"}
                }
                yMMMM{
                    M{"MMMM–MMMM y G"}
                    y{"MMMM y – MMMM y G"}
                }
                yMMMd{
                    M{"d. MMM – d. MMM y G"}
                    d{"d.–d. MMM y G"}
                    y{"d. MMM y – d. MMM y G"}
                }
                yMd{
                    M{"d.M.–d.M.y G"}
                    d{"d.–d.M.y G"}
                    y{"d.M.y–d.M.y G"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "f.h.",
                "e.h.",
            }
            AmPmMarkersNarrow{
                "f.h.",
                "e.h.",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, d. MMMM y",
                "d. MMMM y",
                "d. MMM y",
                "d.M.y",
                "{1}, {0}",
                "{1} 'kl.' {0}",
                "{1} 'kl.' {0}",
                "{1}, {0}",
                "{1}, {0}",
            }
            appendItems{
                Timezone{"{0} {1}"}
            }
            availableFormats{
                EHm{"E, HH:mm"}
                EHms{"E, HH:mm:ss"}
                Ed{"E d."}
                Ehm{"E, h:mm a"}
                Ehms{"E, h:mm:ss a"}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, d. MMM y G"}
                GyMMMd{"d. MMM y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d.M."}
                MMM{"LLL"}
                MMMEd{"E, d. MMM"}
                MMMMEd{"E, d. MMMM"}
                MMMMd{"d. MMMM"}
                MMMd{"d. MMM"}
                Md{"d.M."}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"y"}
                yM{"M. y"}
                yMEd{"E, d.M.y"}
                yMMM{"MMM y"}
                yMMMEd{"E, d. MMM y"}
                yMMMM{"MMMM y"}
                yMMMd{"d. MMM y"}
                yMd{"d.M.y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "sun.",
                        "mán.",
                        "þri.",
                        "mið.",
                        "fim.",
                        "fös.",
                        "lau.",
                    }
                    narrow{
                        "S",
                        "M",
                        "Þ",
                        "M",
                        "F",
                        "F",
                        "L",
                    }
                    short{
                        "su.",
                        "má.",
                        "þr.",
                        "mi.",
                        "fi.",
                        "fö.",
                        "la.",
                    }
                    wide{
                        "sunnudagur",
                        "mánudagur",
                        "þriðjudagur",
                        "miðvikudagur",
                        "fimmtudagur",
                        "föstudagur",
                        "laugardagur",
                    }
                }
                stand-alone{
                    abbreviated{
                        "sun.",
                        "mán.",
                        "þri.",
                        "mið.",
                        "fim.",
                        "fös.",
                        "lau.",
                    }
                    narrow{
                        "S",
                        "M",
                        "Þ",
                        "M",
                        "F",
                        "F",
                        "L",
                    }
                    short{
                        "su.",
                        "má.",
                        "þr.",
                        "mi.",
                        "fi.",
                        "fö.",
                        "la.",
                    }
                    wide{
                        "sunnudagur",
                        "mánudagur",
                        "þriðjudagur",
                        "miðvikudagur",
                        "fimmtudagur",
                        "föstudagur",
                        "laugardagur",
                    }
                }
            }
            eras{
                abbreviated{
                    "f.Kr.",
                    "e.Kr.",
                }
                narrow{
                    "f.k.",
                    "e.k.",
                }
            }
            intervalFormats{
                H{
                    H{"HH–HH"}
                }
                Hm{
                    H{"HH:mm–HH:mm"}
                    m{"HH:mm–HH:mm"}
                }
                Hmv{
                    H{"HH:mm–HH:mm v"}
                    m{"HH:mm–HH:mm v"}
                }
                Hv{
                    H{"HH–HH v"}
                }
                M{
                    M{"M.–M."}
                }
                MEd{
                    M{"E, d.M. – E, d.M."}
                    d{"E, d.M. – E, d.M."}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, d. MMM – E, d. MMM"}
                    d{"E, d. – E, d. MMM"}
                }
                MMMM{
                    M{"LLLL–LLLL"}
                }
                MMMd{
                    M{"d. MMM – d. MMM"}
                    d{"d.–d. MMM"}
                }
                Md{
                    M{"d.M.–d.M."}
                    d{"d.M.–d.M."}
                }
                d{
                    d{"d.–d."}
                }
                fallback{"{0} – {1}"}
                h{
                    a{"h a – h a"}
                    h{"h–h a"}
                }
                hm{
                    a{"h:mm a – h:mm a"}
                    h{"h:mm–h:mm a"}
                    m{"h:mm–h:mm a"}
                }
                hmv{
                    a{"h:mm a – h:mm a v"}
                    h{"h:mm–h:mm a v"}
                    m{"h:mm–h:mm a v"}
                }
                hv{
                    a{"h a – h a v"}
                    h{"h–h a v"}
                }
                y{
                    y{"y–y"}
                }
                yM{
                    M{"M.y – M.y"}
                    y{"M.y – M.y"}
                }
                yMEd{
                    M{"E, d.M.y – E, d.M.y"}
                    d{"E, d.M.y – E, d.M.y"}
                    y{"E, d.M.y – E, d.M.y"}
                }
                yMMM{
                    M{"MMM–MMM y"}
                    y{"MMM y – MMM y"}
                }
                yMMMEd{
                    M{"E, d. MMM – E, d. MMM y"}
                    d{"E, d. – E, d. MMM y"}
                    y{"E, d. MMM y – E, d. MMM y"}
                }
                yMMMM{
                    M{"MMMM–MMMM y"}
                    y{"MMMM y – MMMM y"}
                }
                yMMMd{
                    M{"d. MMM – d. MMM y"}
                    d{"d.–d. MMM y"}
                    y{"d. MMM y – d. MMM y"}
                }
                yMd{
                    M{"d.M.y – d.M.y"}
                    d{"d.M.y – d.M.y"}
                    y{"d.M.y – d.M.y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "jan.",
                        "feb.",
                        "mar.",
                        "apr.",
                        "maí",
                        "jún.",
                        "júl.",
                        "ágú.",
                        "sep.",
                        "okt.",
                        "nóv.",
                        "des.",
                    }
                    narrow{
                        "J",
                        "F",
                        "M",
                        "A",
                        "M",
                        "J",
                        "J",
                        "Á",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                    wide{
                        "janúar",
                        "febrúar",
                        "mars",
                        "apríl",
                        "maí",
                        "júní",
                        "júlí",
                        "ágúst",
                        "september",
                        "október",
                        "nóvember",
                        "desember",
                    }
                }
                stand-alone{
                    abbreviated{
                        "jan.",
                        "feb.",
                        "mar.",
                        "apr.",
                        "maí",
                        "jún.",
                        "júl.",
                        "ágú.",
                        "sep.",
                        "okt.",
                        "nóv.",
                        "des.",
                    }
                    narrow{
                        "J",
                        "F",
                        "M",
                        "A",
                        "M",
                        "J",
                        "J",
                        "Á",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                    wide{
                        "janúar",
                        "febrúar",
                        "mars",
                        "apríl",
                        "maí",
                        "júní",
                        "júlí",
                        "ágúst",
                        "september",
                        "október",
                        "nóvember",
                        "desember",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "F1",
                        "F2",
                        "F3",
                        "F4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1. fjórðungur",
                        "2. fjórðungur",
                        "3. fjórðungur",
                        "4. fjórðungur",
                    }
                }
                stand-alone{
                    abbreviated{
                        "F1",
                        "F2",
                        "F3",
                        "F4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1. fjórðungur",
                        "2. fjórðungur",
                        "3. fjórðungur",
                        "4. fjórðungur",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"‘"}
        alternateQuotationStart{"‚"}
        quotationEnd{"“"}
        quotationStart{"„"}
    }
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    fields{
        day{
            dn{"dagur"}
            relative{
                "-1"{"í gær"}
                "-2"{"í fyrradag"}
                "0"{"í dag"}
                "1"{"á morgun"}
                "2"{"eftir tvo daga"}
            }
            relativeTime{
                future{
                    one{"eftir {0} dag"}
                    other{"eftir {0} daga"}
                }
                past{
                    one{"fyrir {0} degi"}
                    other{"fyrir {0} dögum"}
                }
            }
        }
        dayperiod{
            dn{"f.h./e.h."}
        }
        era{
            dn{"tímabil"}
        }
        fri{
            relative{
                "-1"{"föstudagur í síðustu viku"}
                "0"{"föstudagur í þessari viku"}
                "1"{"föstudagur í næstu viku"}
            }
        }
        hour{
            dn{"klukkustund"}
            relativeTime{
                future{
                    one{"eftir {0} klukkustund"}
                    other{"eftir {0} klukkustundir"}
                }
                past{
                    one{"fyrir {0} klukkustund"}
                    other{"fyrir {0} klukkustundum"}
                }
            }
        }
        minute{
            dn{"mínúta"}
            relativeTime{
                future{
                    one{"eftir {0} mínútu"}
                    other{"eftir {0} mínútur"}
                }
                past{
                    one{"fyrir {0} mínútu"}
                    other{"fyrir {0} mínútum"}
                }
            }
        }
        mon{
            relative{
                "-1"{"mánudagur í síðustu viku"}
                "0"{"mánudagur í þessari viku"}
                "1"{"mánudagur í næstu viku"}
            }
        }
        month{
            dn{"mánuður"}
            relative{
                "-1"{"í síðasta mánuði"}
                "0"{"í þessum mánuði"}
                "1"{"í næsta mánuði"}
            }
            relativeTime{
                future{
                    one{"eftir {0} mánuð"}
                    other{"eftir {0} mánuði"}
                }
                past{
                    one{"fyrir {0} mánuði"}
                    other{"fyrir {0} mánuðum"}
                }
            }
        }
        sat{
            relative{
                "-1"{"laugardagur í síðustu viku"}
                "0"{"laugardagur í þessari viku"}
                "1"{"laugardagur í næstu viku"}
            }
        }
        second{
            dn{"sekúnda"}
            relative{
                "0"{"núna"}
            }
            relativeTime{
                future{
                    one{"eftir {0} sekúndu"}
                    other{"eftir {0} sekúndur"}
                }
                past{
                    one{"fyrir {0} sekúndu"}
                    other{"fyrir {0} sekúndum"}
                }
            }
        }
        sun{
            relative{
                "-1"{"sunnudagur í síðustu viku"}
                "0"{"sunnudagur í þessari viku"}
                "1"{"sunnudagur í næstu viku"}
            }
        }
        thu{
            relative{
                "-1"{"fimmtudagur í síðustu viku"}
                "0"{"fimmtudagur í þessari viku"}
                "1"{"fimmtudagur í næstu viku"}
            }
        }
        tue{
            relative{
                "-1"{"þriðjudagur í síðustu viku"}
                "0"{"þriðjudagur í þessari viku"}
                "1"{"þriðjudagur í næstu viku"}
            }
        }
        wed{
            relative{
                "-1"{"miðvikudagur í síðustu viku"}
                "0"{"miðvikudagur í þessari viku"}
                "1"{"miðvikudagur í næstu viku"}
            }
        }
        week{
            dn{"vika"}
            relative{
                "-1"{"í síðustu viku"}
                "0"{"í þessari viku"}
                "1"{"í næstu viku"}
            }
            relativeTime{
                future{
                    one{"eftir {0} viku"}
                    other{"eftir {0} vikur"}
                }
                past{
                    one{"fyrir {0} viku"}
                    other{"fyrir {0} vikum"}
                }
            }
        }
        weekday{
            dn{"vikudagur"}
        }
        year{
            dn{"ár"}
            relative{
                "-1"{"á síðasta ári"}
                "0"{"á þessu ári"}
                "1"{"á næsta ári"}
            }
            relativeTime{
                future{
                    one{"eftir {0} ár"}
                    other{"eftir {0} ár"}
                }
                past{
                    one{"fyrir {0} ári"}
                    other{"fyrir {0} árum"}
                }
            }
        }
        zone{
            dn{"tímabelti"}
        }
    }
    listPattern{
        standard{
            2{"{0} og {1}"}
            end{"{0} og {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit{
            2{"{0} og {1}"}
            end{"{0} og {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit-narrow{
            2{"{0} og {1}"}
            end{"{0} og {1}"}
            middle{"{0} {1}"}
            start{"{0} {1}"}
        }
        unit-short{
            2{"{0} og {1}"}
            end{"{0} og {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"breskt"}
        US{"bandarískt"}
        metric{"metrakerfi"}
    }
    transformNames{
        BGN{"BGN"}
        Numeric{"Tölulegur"}
        Tone{"Tónn"}
        UNGEGN{"UNGEGN"}
        x-Accents{"Áherslur"}
        x-Fullwidth{"Full breidd"}
        x-Halfwidth{"Hálf breidd"}
        x-Jamo{"Jamo"}
        x-Pinyin{"Pinyin"}
        x-Publishing{"Birting"}
    }
    units{
        acceleration{
            g-force{
                one{"{0} G"}
                other{"{0} G"}
            }
        }
        angle{
            degree{
                one{"{0} gráða"}
                other{"{0} gráður"}
            }
        }
        area{
            acre{
                one{"{0} ekra"}
                other{"{0} ekrur"}
            }
            hectare{
                one{"{0} hektari"}
                other{"{0} hektarar"}
            }
            square-foot{
                one{"{0} ferfet"}
                other{"{0} ferfet"}
            }
            square-kilometer{
                one{"{0} ferkílómetri"}
                other{"{0} ferkílómetrar"}
            }
            square-meter{
                one{"{0} fermetri"}
                other{"{0} fermetrar"}
            }
            square-mile{
                one{"{0} fermíla"}
                other{"{0} fermílur"}
            }
        }
        compound{
            per{"{0} á {1}"}
        }
        duration{
            day{
                one{"{0} dagur"}
                other{"{0} dagar"}
            }
            hour{
                one{"{0} klukkustund"}
                other{"{0} klukkustundir"}
            }
            millisecond{
                one{"{0} millisekúnda"}
                other{"{0} millisekúndur"}
            }
            minute{
                one{"{0} mínúta"}
                other{"{0} mínútur"}
            }
            month{
                one{"{0} mánuður"}
                other{"{0} mánuðir"}
            }
            second{
                one{"{0} sekúnda"}
                other{"{0} sekúndur"}
            }
            week{
                one{"{0} vika"}
                other{"{0} vikur"}
            }
            year{
                one{"{0} ár"}
                other{"{0} ár"}
            }
        }
        length{
            centimeter{
                one{"{0} sentimetri"}
                other{"{0} sentimetrar"}
            }
            foot{
                one{"{0} fet"}
                other{"{0} fet"}
            }
            inch{
                one{"{0} tomma"}
                other{"{0} tommu"}
            }
            kilometer{
                one{"{0} kílómetri"}
                other{"{0} kílómetrar"}
            }
            light-year{
                one{"{0} ljósár"}
                other{"{0} ljósár"}
            }
            meter{
                one{"{0} metri"}
                other{"{0} metrar"}
            }
            mile{
                one{"{0} míla"}
                other{"{0} mílur"}
            }
            millimeter{
                one{"{0} millimetri"}
                other{"{0} millimetrar"}
            }
            picometer{
                one{"{0} píkómetri"}
                other{"{0} píkómetrar"}
            }
            yard{
                one{"{0} yard"}
                other{"{0} yardar"}
            }
        }
        mass{
            gram{
                one{"{0} gramm"}
                other{"{0} grömm"}
            }
            kilogram{
                one{"{0} kílógramm"}
                other{"{0} kílógrömm"}
            }
            ounce{
                one{"{0} únsa"}
                other{"{0} únsur"}
            }
            pound{
                one{"{0} pund"}
                other{"{0} pund"}
            }
        }
        power{
            horsepower{
                one{"{0} hestafl"}
                other{"{0} hestöfl"}
            }
            kilowatt{
                one{"{0} kílóvatt"}
                other{"{0} kílóvött"}
            }
            watt{
                one{"{0} vatt"}
                other{"{0} vött"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hektópaskal"}
                other{"{0} hektópasköl"}
            }
            inch-hg{
                one{"{0} tomma af kvikasilfri"}
                other{"{0} tommur af kvikvasilfri"}
            }
            millibar{
                one{"{0} millibar"}
                other{"{0} millibör"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} kílómetri á klukkustund"}
                other{"{0} kílómetrar á klukkustund"}
            }
            meter-per-second{
                one{"{0} metri á sekúndu"}
                other{"{0} metrar á sekúndu"}
            }
            mile-per-hour{
                one{"{0} míla á klukkustund"}
                other{"{0} mílur á klukkustund"}
            }
        }
        temperature{
            celsius{
                one{"{0} gráða á Celsíus"}
                other{"{0} gráður á Celsíus"}
            }
            fahrenheit{
                one{"{0} gráða á Fahrenheit"}
                other{"{0} gráður á Fahrenheit"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} rúmkílómetri"}
                other{"{0} rúmkílómetrar"}
            }
            cubic-mile{
                one{"{0} rúmmíla"}
                other{"{0} rúmmílur"}
            }
            liter{
                one{"{0} lítri"}
                other{"{0} lítrar"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0}G"}
                other{"{0}G"}
            }
        }
        angle{
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0} ek."}
                other{"{0} ek."}
            }
            hectare{
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-foot{
                one{"{0} ferfet"}
                other{"{0} ferfet"}
            }
            square-kilometer{
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                one{"{0}mí²"}
                other{"{0}mí²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                one{"{0} d."}
                other{"{0} d."}
            }
            hour{
                one{"{0} klst."}
                other{"{0} klst."}
            }
            millisecond{
                one{"{0}ms"}
                other{"{0}ms"}
            }
            minute{
                one{"{0} mín."}
                other{"{0} mín."}
            }
            month{
                one{"{0} mán."}
                other{"{0} mán."}
            }
            second{
                one{"{0} sek."}
                other{"{0} sek."}
            }
            week{
                one{"{0} v."}
                other{"{0} v."}
            }
            year{
                one{"{0}á"}
                other{"{0}á"}
            }
        }
        length{
            centimeter{
                one{"{0} cm"}
                other{"{0} cm"}
            }
            foot{
                one{"{0} fet"}
                other{"{0} fet"}
            }
            inch{
                one{"{0}″"}
                other{"{0}″"}
            }
            kilometer{
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} lj."}
                other{"{0} lj."}
            }
            meter{
                one{"{0} m"}
                other{"{0} m"}
            }
            mile{
                one{"{0} mí"}
                other{"{0} mí"}
            }
            millimeter{
                one{"{0} mm"}
                other{"{0} mm"}
            }
            picometer{
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        mass{
            gram{
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                one{"{0} kg"}
                other{"{0} kg"}
            }
            ounce{
                one{"{0} únsa"}
                other{"{0} únsur"}
            }
            pound{
                one{"{0} p."}
                other{"{0} p."}
            }
        }
        power{
            horsepower{
                one{"{0} ek"}
                other{"{0} ek"}
            }
            kilowatt{
                one{"{0} kW"}
                other{"{0} kW"}
            }
            watt{
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                one{"{0}\u0022 Hg"}
                other{"{0}\u0022 Hg"}
            }
            millibar{
                one{"{0} mbar"}
                other{"{0} mbör"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} km/klst."}
                other{"{0} km/klst."}
            }
            meter-per-second{
                one{"{0} m/sek."}
                other{"{0} m/sek."}
            }
            mile-per-hour{
                one{"{0} míla/klst."}
                other{"{0} míl./klst."}
            }
        }
        temperature{
            celsius{
                one{"{0}°"}
                other{"{0}°"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-mile{
                one{"{0}mi³"}
                other{"{0}mi³"}
            }
            liter{
                one{"{0} l"}
                other{"{0} l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                one{"{0} G"}
                other{"{0} G"}
            }
        }
        angle{
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0} ek."}
                other{"{0} ek."}
            }
            hectare{
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-foot{
                one{"{0} ferfet"}
                other{"{0} ferfet"}
            }
            square-kilometer{
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                one{"{0} fermíla"}
                other{"{0} fermílur"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                one{"{0} dagur"}
                other{"{0} dagar"}
            }
            hour{
                one{"{0} klst."}
                other{"{0} klst."}
            }
            millisecond{
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                one{"{0} mín."}
                other{"{0} mín."}
            }
            month{
                one{"{0} mán."}
                other{"{0} mán."}
            }
            second{
                one{"{0} sek."}
                other{"{0} sek."}
            }
            week{
                one{"{0} vika"}
                other{"{0} vikur"}
            }
            year{
                one{"{0} ár"}
                other{"{0} ár"}
            }
        }
        length{
            centimeter{
                one{"{0} cm"}
                other{"{0} cm"}
            }
            foot{
                one{"{0} fet"}
                other{"{0} fet"}
            }
            inch{
                one{"{0} t."}
                other{"{0} t."}
            }
            kilometer{
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} ljósár"}
                other{"{0} ljósár"}
            }
            meter{
                one{"{0} m"}
                other{"{0} m"}
            }
            mile{
                one{"{0} mí"}
                other{"{0} mí"}
            }
            millimeter{
                one{"{0} mm"}
                other{"{0} mm"}
            }
            picometer{
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                one{"{0} y."}
                other{"{0} y."}
            }
        }
        mass{
            gram{
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                one{"{0} kg"}
                other{"{0} kg"}
            }
            ounce{
                one{"{0} únsa"}
                other{"{0} únsur"}
            }
            pound{
                one{"{0} p."}
                other{"{0} p."}
            }
        }
        power{
            horsepower{
                one{"{0} hestafl"}
                other{"{0} hestöfl"}
            }
            kilowatt{
                one{"{0} kW"}
                other{"{0} kW"}
            }
            watt{
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                one{"{0} tomma Hg"}
                other{"{0} tommur Hg"}
            }
            millibar{
                one{"{0} mbar"}
                other{"{0} mbör"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} km/klst."}
                other{"{0} km/klst."}
            }
            meter-per-second{
                one{"{0} m/sek."}
                other{"{0} m/sek."}
            }
            mile-per-hour{
                one{"{0} míla/klst."}
                other{"{0} mílur/klst."}
            }
        }
        temperature{
            celsius{
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-mile{
                one{"{0} rúmmíla"}
                other{"{0} rúmmílur"}
            }
            liter{
                one{"{0} l"}
                other{"{0} l"}
            }
        }
    }
}
