﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/eu.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/eu.xml
 */
eu{
    AuxExemplarCharacters{
        "[á à ă â å ä ã ā æ ç é è ĕ ê ë ē í ì ĭ î ï ī ñ ó ò ŏ ô ö ø ō œ ú ù ŭ û ü ū ÿ"
        "]"
    }
    Ellipsis{
        final{"{0}…"}
        initial{"…{0}"}
        medial{"{0}…{1}"}
        word-final{"{0}…"}
        word-initial{"…{0}"}
        word-medial{"{0}…{1}"}
    }
    ExemplarCharacters{"[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]"}
    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]"}
    LocaleScript{
        "Latn",
    }
    MoreInformation{"?"}
    NumberElements{
        latn{
            miscPatterns{
                atLeast{"{0}+"}
                range{"{0}–{1}"}
            }
            patterns{
                accountingFormat{"#,##0.00 ¤;(#,##0.00 ¤)"}
                currencyFormat{"#,##0.00 ¤"}
                decimalFormat{"#,##0.###"}
                percentFormat{"% #,##0"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        one{"0000"}
                        other{"0000"}
                    }
                    10000{
                        one{"00000"}
                        other{"00000"}
                    }
                    100000{
                        one{"000000"}
                        other{"000000"}
                    }
                    1000000{
                        one{"0 milioi"}
                        other{"0 milioi"}
                    }
                    10000000{
                        one{"00 milioi"}
                        other{"00 milioi"}
                    }
                    100000000{
                        one{"000 milioi"}
                        other{"000 milioi"}
                    }
                    1000000000{
                        one{"0000 milioi"}
                        other{"0000 milioi"}
                    }
                    10000000000{
                        one{"00000 milioi"}
                        other{"00000 milioi"}
                    }
                    100000000000{
                        one{"000000 milioi"}
                        other{"000000 milioi"}
                    }
                    1000000000000{
                        one{"0 bilioi"}
                        other{"0 bilioi"}
                    }
                    10000000000000{
                        one{"00 bilioi"}
                        other{"00 bilioi"}
                    }
                    100000000000000{
                        one{"000 bilioi"}
                        other{"000 bilioi"}
                    }
                }
            }
            patternsShort{
                decimalFormat{
                    1000{
                        one{"0000"}
                        other{"0000"}
                    }
                    10000{
                        one{"00000"}
                        other{"00000"}
                    }
                    100000{
                        one{"000000"}
                        other{"000000"}
                    }
                    1000000{
                        one{"0 M"}
                        other{"0 M"}
                    }
                    10000000{
                        one{"00 M"}
                        other{"00 M"}
                    }
                    100000000{
                        one{"000 M"}
                        other{"000 M"}
                    }
                    1000000000{
                        one{"0000 M"}
                        other{"0000 M"}
                    }
                    10000000000{
                        one{"00000 M"}
                        other{"00000 M"}
                    }
                    100000000000{
                        one{"000000 M"}
                        other{"000000 M"}
                    }
                    1000000000000{
                        one{"0 B"}
                        other{"0 B"}
                    }
                    10000000000000{
                        one{"00 B"}
                        other{"00 B"}
                    }
                    100000000000000{
                        one{"000 B"}
                        other{"000 B"}
                    }
                }
            }
            symbols{
                decimal{","}
                exponential{"E"}
                group{"."}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
            }
        }
    }
    Version{"2.0.92.87"}
    calendar{
        buddhist{
            eras{
                abbreviated{
                    "BG",
                }
            }
        }
        generic{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "G. 'aroko' y. 'urteko' MMMM d, EEEE",
                "G. 'aroko' y. 'urteko' MMMM d",
                "G. 'aroko' y('e')'ko' MMM d",
                "GGGGG y-MM-dd",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"d, EEEE"}
                Gy{"G. 'aroko' y. 'urtea'"}
                GyMMM{"G. 'aroko' y('e')'ko' MMMM"}
                GyMMMEd{"G. 'aroko' y('e')'ko' MMMM d, EEEE"}
                GyMMMd{"G. 'aroko' y('e')'ko' MMMM d"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"MM/dd, EEEE"}
                MMM{"LLL"}
                MMMEd{"MMM d, EEEE"}
                MMMd{"MMM d"}
                Md{"MM/dd"}
                d{"d"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"y"}
                yM{"y/MM"}
                yMEd{"y/MM/dd, EEEE"}
                yMMM{"y('e')'ko' MMMM"}
                yMMMEd{"y('e')'ko' MMMM d, EEEE"}
                yMMMd{"y('e')'ko' MMMM d"}
                yMd{"y/MM/dd"}
                yQQQ{"y QQQ"}
                yQQQQ{"y('e')'ko' QQQQ"}
                yyyy{"G y"}
                yyyyM{"G y/MM"}
                yyyyMEd{"G y/MM/dd, EEEE"}
                yyyyMMM{"G y('e')'ko' MMMM"}
                yyyyMMMEd{"G y('e')'ko' MMMM d, EEEE"}
                yyyyMMMd{"G y('e')'ko' MMMM d"}
                yyyyMd{"G y/MM/dd"}
                yyyyQQQ{"G y QQQ"}
                yyyyQQQQ{"G y('e')'ko' QQQQ"}
            }
            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{"MM–MM"}
                }
                MEd{
                    M{"MM/dd, EEEE – MM/dd, EEEE"}
                    d{"MM/dd, EEEE – MM/dd, EEEE"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"MMMM d, EEEE – MMMM d, EEEE"}
                    d{"MMMM d, EEEE – MMMM d, EEEE"}
                }
                MMMd{
                    M{"MMMM d – MMMM d"}
                    d{"MMMM d–d"}
                }
                Md{
                    M{"MM/dd – MM/dd"}
                    d{"MM/dd – MM/dd"}
                }
                d{
                    d{"dd–dd"}
                }
                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{"G y–y"}
                }
                yM{
                    M{"G y/MM – y/MM"}
                    y{"G y/MM – y/MM"}
                }
                yMEd{
                    M{"G y/MM/dd, EEEE – y/MM/dd, EEEE"}
                    d{"G y/MM/dd, EEEE – y/MM/dd, EEEE"}
                    y{"G y/MM/dd, EEEE – y/MM/dd, EEEE"}
                }
                yMMM{
                    M{"G y('e')'ko' MMMM–MMMM"}
                    y{"G y('e')'ko' MMMM – y('e')'ko' MMMM"}
                }
                yMMMEd{
                    M{"G y('e')'ko' MMMM dd, EEEE – MMMM dd, EEEE"}
                    d{"G y('e')'ko' MMMM dd, EEEE – MMMM dd, EEEE"}
                    y{"G y('e')'ko' MMMM dd, EEEE – MMMM dd, EEEE"}
                }
                yMMMM{
                    M{"G y('e')'ko' MMMM – MMMM"}
                    y{"G y('e')'ko' MMMM – y('e')'ko' MMMM"}
                }
                yMMMd{
                    M{"G y('e')'ko' MMMM dd – MMMM dd"}
                    d{"G y('e')'ko' MMMM dd–dd"}
                    y{"G y('e')'ko' MMMM dd – y('e')'ko' MMMM dd"}
                }
                yMd{
                    M{"G y/MM/dd – y/MM/dd"}
                    d{"G y/MM/dd – y/MM/dd"}
                    y{"G y/MM/dd – y/MM/dd"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "AM",
                "PM",
            }
            AmPmMarkersNarrow{
                "a",
                "p",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "y('e')'ko' MMMM d, EEEE",
                "y('e')'ko' MMMM d",
                "y MMM d",
                "y-MM-dd",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            appendItems{
                Timezone{"{0} ({1})"}
            }
            availableFormats{
                EHm{"E HH:mm"}
                EHms{"E HH:mm:ss"}
                Ed{"d, E"}
                Ehm{"E h:mm a"}
                Ehms{"E h:mm:ss a"}
                Gy{"G y"}
                GyMMM{"G y. 'urteko' MMM"}
                GyMMMEd{"G y. 'urteko' MMM d, E"}
                GyMMMd{"G y. 'urteko' MMM d"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"M/d, E"}
                MMM{"LLL"}
                MMMEd{"MMM d, E"}
                MMMd{"MMM d"}
                Md{"M/d"}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"y"}
                yM{"y/M"}
                yMEd{"y/M/d, E"}
                yMMM{"y('e')'ko' MMM"}
                yMMMEd{"y('e')'ko' MMM d, E"}
                yMMMd{"y('e')'ko' MMM d"}
                yMd{"y/M/d"}
                yQQQ{"y('e')'ko' QQQ"}
                yQQQQ{"y('e')'ko' QQQQ"}
            }
            dayNames{
                format{
                    abbreviated{
                        "ig.",
                        "al.",
                        "ar.",
                        "az.",
                        "og.",
                        "or.",
                        "lr.",
                    }
                    narrow{
                        "I",
                        "A",
                        "A",
                        "A",
                        "O",
                        "O",
                        "L",
                    }
                    short{
                        "ig.",
                        "al.",
                        "ar.",
                        "az.",
                        "og.",
                        "or.",
                        "lr.",
                    }
                    wide{
                        "igandea",
                        "astelehena",
                        "asteartea",
                        "asteazkena",
                        "osteguna",
                        "ostirala",
                        "larunbata",
                    }
                }
                stand-alone{
                    abbreviated{
                        "ig.",
                        "al.",
                        "ar.",
                        "az.",
                        "og.",
                        "or.",
                        "lr.",
                    }
                    narrow{
                        "I",
                        "A",
                        "A",
                        "A",
                        "O",
                        "O",
                        "L",
                    }
                    short{
                        "ig.",
                        "al.",
                        "ar.",
                        "az.",
                        "og.",
                        "or.",
                        "lr.",
                    }
                    wide{
                        "igandea",
                        "astelehena",
                        "asteartea",
                        "asteazkena",
                        "osteguna",
                        "ostirala",
                        "larunbata",
                    }
                }
            }
            eras{
                abbreviated{
                    "K.a.",
                    "K.o.",
                }
            }
            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{"M/d, E – M/d, E"}
                    d{"M/d, E – M/d, E"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"MMM d, E – MMM d, E"}
                    d{"MMM d, E – MMM d, E"}
                }
                MMMd{
                    M{"MMM d – MMM d"}
                    d{"MMM d–d"}
                }
                Md{
                    M{"M/d – M/d"}
                    d{"M/d – M/d"}
                }
                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{"y/M – y/M"}
                    y{"y/M – y/M"}
                }
                yMEd{
                    M{"y/M/d, E – y/M/d, E"}
                    d{"y/M/d, E – y/M/d, E"}
                    y{"y/M/d, E – y/M/d, E"}
                }
                yMMM{
                    M{"y('e')'ko' MMM–MMM"}
                    y{"y('e')'ko' MMM – y('e')'ko' MMM"}
                }
                yMMMEd{
                    M{"y('e')'ko' MMM d, E – MMM d, E"}
                    d{"y('e')'ko' MMM d, E – y('e')'ko' MMM d, E"}
                    y{"y('e')'ko' MMM d, E – y('e')'ko' MMM d, E"}
                }
                yMMMM{
                    M{"y('e')'ko' MMMM–MMMM"}
                    y{"y('e')'ko' MMMM – y('e')'ko' MMMM"}
                }
                yMMMd{
                    M{"y('e')'ko' MMM d – MMM d"}
                    d{"y('e')'ko' MMM d–d"}
                    y{"y('e')'ko' MMM d – y('e')'ko' MMM d"}
                }
                yMd{
                    M{"y/M/d – y/M/d"}
                    d{"y/M/d – y/M/d"}
                    y{"y/M/d – y/M/d"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "urt.",
                        "ots.",
                        "mar.",
                        "api.",
                        "mai.",
                        "eka.",
                        "uzt.",
                        "abu.",
                        "ira.",
                        "urr.",
                        "aza.",
                        "abe.",
                    }
                    narrow{
                        "U",
                        "O",
                        "M",
                        "A",
                        "M",
                        "E",
                        "U",
                        "A",
                        "I",
                        "U",
                        "A",
                        "A",
                    }
                    wide{
                        "urtarrilak",
                        "otsailak",
                        "martxoak",
                        "apirilak",
                        "maiatzak",
                        "ekainak",
                        "uztailak",
                        "abuztuak",
                        "irailak",
                        "urriak",
                        "azaroak",
                        "abenduak",
                    }
                }
                stand-alone{
                    abbreviated{
                        "urt.",
                        "ots.",
                        "mar.",
                        "api.",
                        "mai.",
                        "eka.",
                        "uzt.",
                        "abu.",
                        "ira.",
                        "urr.",
                        "aza.",
                        "abe.",
                    }
                    narrow{
                        "U",
                        "O",
                        "M",
                        "A",
                        "M",
                        "E",
                        "U",
                        "A",
                        "I",
                        "U",
                        "A",
                        "A",
                    }
                    wide{
                        "urtarrila",
                        "otsaila",
                        "martxoa",
                        "apirila",
                        "maiatza",
                        "ekaina",
                        "uztaila",
                        "abuztua",
                        "iraila",
                        "urria",
                        "azaroa",
                        "abendua",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "1Hh",
                        "2Hh",
                        "3Hh",
                        "4Hh",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1. hiruhilekoa",
                        "2. hiruhilekoa",
                        "3. hiruhilekoa",
                        "4. hiruhilekoa",
                    }
                }
                stand-alone{
                    abbreviated{
                        "1Hh",
                        "2Hh",
                        "3Hh",
                        "4Hh",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1. hiruhilekoa",
                        "2. hiruhilekoa",
                        "3. hiruhilekoa",
                        "4. hiruhilekoa",
                    }
                }
            }
        }
        roc{
            eras{
                abbreviated{
                    "R.O.C. aurretik",
                    "R.O.C.",
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"”"}
        alternateQuotationStart{"“"}
        quotationEnd{"»"}
        quotationStart{"«"}
    }
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    fields{
        day{
            dn{"Eguna"}
            relative{
                "-1"{"atzo"}
                "-2"{"herenegun"}
                "0"{"gaur"}
                "1"{"bihar"}
                "2"{"etzi"}
            }
            relativeTime{
                future{
                    one{"{0} egun barru"}
                    other{"{0} egun barru"}
                }
                past{
                    one{"Duela {0} egun"}
                    other{"Duela {0} egun"}
                }
            }
        }
        dayperiod{
            dn{"AM//PM"}
        }
        era{
            dn{"Aroa"}
        }
        fri{
            relative{
                "-1"{"aurreko ostirala"}
                "0"{"ostiral hau"}
                "1"{"hurrengo ostirala"}
            }
        }
        hour{
            dn{"Ordua"}
            relativeTime{
                future{
                    one{"{0} ordu barru"}
                    other{"{0} ordu barru"}
                }
                past{
                    one{"Duela {0} ordu"}
                    other{"Duela {0} ordu"}
                }
            }
        }
        minute{
            dn{"Minutua"}
            relativeTime{
                future{
                    one{"{0} minutu barru"}
                    other{"{0} minutu barru"}
                }
                past{
                    one{"Duela {0} minutu"}
                    other{"Duela {0} minutu"}
                }
            }
        }
        mon{
            relative{
                "-1"{"aurreko astelehena"}
                "0"{"astelehen hau"}
                "1"{"hurrengo astelehena"}
            }
        }
        month{
            dn{"Hilabetea"}
            relative{
                "-1"{"aurreko hilabetea"}
                "0"{"hilabete hau"}
                "1"{"hurrengo hilabetea"}
            }
            relativeTime{
                future{
                    one{"{0} hilabete barru"}
                    other{"{0} hilabete barru"}
                }
                past{
                    one{"Duela {0} hilabete"}
                    other{"Duela {0} hilabete"}
                }
            }
        }
        sat{
            relative{
                "-1"{"aurreko larunbata"}
                "0"{"larunbat hau"}
                "1"{"hurrengo larunbata"}
            }
        }
        second{
            dn{"Segundoa"}
            relative{
                "0"{"orain"}
            }
            relativeTime{
                future{
                    one{"{0} segundo barru"}
                    other{"{0} segundo barru"}
                }
                past{
                    one{"Duela {0} segundo"}
                    other{"Duela {0} segundo"}
                }
            }
        }
        sun{
            relative{
                "-1"{"aurreko igandea"}
                "0"{"igande hau"}
                "1"{"hurrengo igandea"}
            }
        }
        thu{
            relative{
                "-1"{"aurreko osteguna"}
                "0"{"ostegun hau"}
                "1"{"hurrengo osteguna"}
            }
        }
        tue{
            relative{
                "-1"{"aurreko asteartea"}
                "0"{"astearte hau"}
                "1"{"hurrengo asteartea"}
            }
        }
        wed{
            relative{
                "-1"{"aurreko asteazkena"}
                "0"{"asteazken hau"}
                "1"{"hurrengo asteazkena"}
            }
        }
        week{
            dn{"Astea"}
            relative{
                "-1"{"aurreko astea"}
                "0"{"aste hau"}
                "1"{"hurrengo astea"}
            }
            relativeTime{
                future{
                    one{"{0} aste barru"}
                    other{"{0} aste barru"}
                }
                past{
                    one{"Duela {0} aste"}
                    other{"Duela {0} aste"}
                }
            }
        }
        weekday{
            dn{"Asteguna"}
        }
        year{
            dn{"Urtea"}
            relative{
                "-1"{"aurreko urtea"}
                "0"{"aurten"}
                "1"{"hurrengo urtea"}
            }
            relativeTime{
                future{
                    one{"{0} urte barru"}
                    other{"{0} urte barru"}
                }
                past{
                    one{"Duela {0} urte"}
                    other{"Duela {0} urte"}
                }
            }
        }
        zone{
            dn{"Ordu-zona"}
        }
    }
    listPattern{
        standard{
            2{"{0} eta {1}"}
            end{"{0} eta {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit{
            2{"{0} eta {1}"}
            end{"{0} eta {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit-short{
            2{"{0} eta {1}"}
            end{"{0} eta {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"Erresuma Batuko sistema"}
        US{"AEBetako sistema"}
        metric{"Sistema metrikoa"}
    }
    transformNames{
        BGN{"BGN bihurketa"}
        Numeric{"Zenbakizko bihurketa"}
        Tone{"Tonu-bihurketa"}
        UNGEGN{"UNGEGN bihurketa"}
        x-Accents{"Azentu-bihurketa"}
        x-Fullwidth{"Zabalera osoko karaktere-bihurketa"}
        x-Halfwidth{"Zabalera erdiko karaktere-bihurketa"}
        x-Jamo{"Jamo-bihurketa"}
        x-Pinyin{"Pinyina"}
        x-Publishing{"Argitalpen-bihurketa"}
    }
    units{
        acceleration{
            g-force{
                one{"{0} grabitate-indar"}
                other{"{0} grabitate-indar"}
            }
        }
        angle{
            arc-minute{
                one{"{0} minutu"}
                other{"{0} minutu"}
            }
            arc-second{
                one{"{0} segundo"}
                other{"{0} segundo"}
            }
            degree{
                one{"{0} gradu"}
                other{"{0} gradu"}
            }
        }
        area{
            acre{
                one{"{0} akre"}
                other{"{0} akre"}
            }
            hectare{
                one{"{0} hektarea"}
                other{"{0} hektarea"}
            }
            square-foot{
                one{"{0} oin karratu"}
                other{"{0} oin karratu"}
            }
            square-kilometer{
                one{"{0} kilometro karratu"}
                other{"{0} kilometro karratu"}
            }
            square-meter{
                one{"{0} metro karratu"}
                other{"{0} metro karratu"}
            }
            square-mile{
                one{"{0} milia karratu"}
                other{"{0} milia karratu"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                one{"{0} egun"}
                other{"{0} egun"}
            }
            hour{
                one{"{0} ordu"}
                other{"{0} ordu"}
            }
            millisecond{
                one{"{0} milisegundo"}
                other{"{0} milisegundo"}
            }
            minute{
                one{"{0} minutu"}
                other{"{0} minutu"}
            }
            month{
                one{"{0} hilabete"}
                other{"{0} hilabete"}
            }
            second{
                one{"{0} segundo"}
                other{"{0} segundo"}
            }
            week{
                one{"{0} aste"}
                other{"{0} aste"}
            }
            year{
                one{"{0} urte"}
                other{"{0} urte"}
            }
        }
        length{
            centimeter{
                one{"{0} zentimetro"}
                other{"{0} zentimetro"}
            }
            foot{
                one{"{0} oin"}
                other{"{0} oin"}
            }
            inch{
                one{"{0} hazbete"}
                other{"{0} hazbete"}
            }
            kilometer{
                one{"{0} kilometro"}
                other{"{0} kilometro"}
            }
            light-year{
                one{"{0} argi-urte"}
                other{"{0} argi-urte"}
            }
            meter{
                one{"{0} metro"}
                other{"{0} metro"}
            }
            mile{
                one{"{0} milia"}
                other{"{0} milia"}
            }
            millimeter{
                one{"{0} milimetro"}
                other{"{0} milimetro"}
            }
            picometer{
                one{"{0} pikometro"}
                other{"{0} pikometro"}
            }
            yard{
                one{"{0} yarda"}
                other{"{0} yarda"}
            }
        }
        mass{
            gram{
                one{"{0} gramo"}
                other{"{0} gramo"}
            }
            kilogram{
                one{"{0} kilogramo"}
                other{"{0} kilogramo"}
            }
            ounce{
                one{"{0} ontza"}
                other{"{0} ontza"}
            }
            pound{
                one{"{0} libra"}
                other{"{0} libra"}
            }
        }
        power{
            horsepower{
                one{"{0} zaldi-potentzia"}
                other{"{0} zaldi-potentzia"}
            }
            kilowatt{
                one{"{0} kilowatt"}
                other{"{0} kilowatt"}
            }
            watt{
                one{"{0} watt"}
                other{"{0} watt"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hektopascal"}
                other{"{0} hektopascal"}
            }
            inch-hg{
                one{"{0} merkurio-hazbete"}
                other{"{0} merkurio-hazbete"}
            }
            millibar{
                one{"{0} milibar"}
                other{"{0} milibar"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} kilometro orduko"}
                other{"{0} kilometro orduko"}
            }
            meter-per-second{
                one{"{0} metro segundoko"}
                other{"{0} metro segundoko"}
            }
            mile-per-hour{
                one{"{0} milia orduko"}
                other{"{0} milia orduko"}
            }
        }
        temperature{
            celsius{
                one{"{0}Celcius gradu"}
                other{"{0}Celcius gradu"}
            }
            fahrenheit{
                one{"{0}Fahrenheit gradu"}
                other{"{0}Fahrenheit gradu"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} kilometro kubiko"}
                other{"{0} kilometro kubiko"}
            }
            cubic-mile{
                one{"{0} milia kubiko"}
                other{"{0} milia kubiko"}
            }
            liter{
                one{"{0} litro"}
                other{"{0} litro"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0} G"}
                other{"{0} G"}
            }
        }
        angle{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0} ac"}
                other{"{0} ac"}
            }
            hectare{
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-foot{
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-kilometer{
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                one{"{0} egun"}
                other{"{0} egun"}
            }
            hour{
                one{"{0} h"}
                other{"{0} h"}
            }
            millisecond{
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                one{"{0} min"}
                other{"{0} min"}
            }
            month{
                one{"{0} hil."}
                other{"{0} hil."}
            }
            second{
                one{"{0} s"}
                other{"{0} s"}
            }
            week{
                one{"{0} aste"}
                other{"{0} aste"}
            }
            year{
                one{"{0} urte"}
                other{"{0} urte"}
            }
        }
        length{
            centimeter{
                one{"{0} cm"}
                other{"{0} cm"}
            }
            foot{
                one{"{0} ft"}
                other{"{0} ft"}
            }
            inch{
                one{"{0} in"}
                other{"{0} in"}
            }
            kilometer{
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} ly"}
                other{"{0} ly"}
            }
            meter{
                one{"{0} m"}
                other{"{0} m"}
            }
            mile{
                one{"{0} mi"}
                other{"{0} mi"}
            }
            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} oz"}
                other{"{0} oz"}
            }
            pound{
                one{"{0} lb"}
                other{"{0} lb"}
            }
        }
        power{
            horsepower{
                one{"{0} hp"}
                other{"{0} hp"}
            }
            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} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                one{"{0} mb"}
                other{"{0} mb"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
            meter-per-second{
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                one{"{0} mph"}
                other{"{0} mph"}
            }
        }
        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{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0} ac"}
                other{"{0} ac"}
            }
            hectare{
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-foot{
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-kilometer{
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                one{"{0} egun"}
                other{"{0} egun"}
            }
            hour{
                one{"{0} h"}
                other{"{0} h"}
            }
            millisecond{
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                one{"{0} min"}
                other{"{0} min"}
            }
            month{
                one{"{0} hilabete"}
                other{"{0} hilabete"}
            }
            second{
                one{"{0} s"}
                other{"{0} s"}
            }
            week{
                one{"{0} aste"}
                other{"{0} aste"}
            }
            year{
                one{"{0} urte"}
                other{"{0} urte"}
            }
        }
        length{
            centimeter{
                one{"{0} cm"}
                other{"{0} cm"}
            }
            foot{
                one{"{0} ft"}
                other{"{0} ft"}
            }
            inch{
                one{"{0} in"}
                other{"{0} in"}
            }
            kilometer{
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} ly"}
                other{"{0} ly"}
            }
            meter{
                one{"{0} m"}
                other{"{0} m"}
            }
            mile{
                one{"{0} mi"}
                other{"{0} mi"}
            }
            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} oz"}
                other{"{0} oz"}
            }
            pound{
                one{"{0} lb"}
                other{"{0} lb"}
            }
        }
        power{
            horsepower{
                one{"{0} hp"}
                other{"{0} hp"}
            }
            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} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                one{"{0} mb"}
                other{"{0} mb"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
            meter-per-second{
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                one{"{0} mph"}
                other{"{0} mph"}
            }
        }
        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} mi³"}
                other{"{0} mi³"}
            }
            liter{
                one{"{0} l"}
                other{"{0} l"}
            }
        }
    }
}
