﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/en.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/en.xml
 */
en{
    AuxExemplarCharacters{
        "[á à ă â å ä ã ā æ ç é è ĕ ê ë ē í ì ĭ î ï ī ñ ó ò ŏ ô ö ø ō œ ú ù ŭ û ü ū ÿ"
        "]"
    }
    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]"}
    ExemplarCharactersPunctuation{
        "[\\- ‐ – — , ; \\: ! ? . … ' ‘ ’ \u0022 “ ” ( ) \\[ \\] § @ * / \\& # † ‡ ′ "
        "″]"
    }
    LocaleScript{
        "Latn",
    }
    NumberElements{
        latn{
            miscPatterns{
                atLeast{"{0}+"}
            }
            patterns{
                currencyFormat{"¤#,##0.00"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0%"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        one{"0 thousand"}
                        other{"0 thousand"}
                    }
                    10000{
                        one{"00 thousand"}
                        other{"00 thousand"}
                    }
                    100000{
                        one{"000 thousand"}
                        other{"000 thousand"}
                    }
                    1000000{
                        one{"0 million"}
                        other{"0 million"}
                    }
                    10000000{
                        one{"00 million"}
                        other{"00 million"}
                    }
                    100000000{
                        one{"000 million"}
                        other{"000 million"}
                    }
                    1000000000{
                        one{"0 billion"}
                        other{"0 billion"}
                    }
                    10000000000{
                        one{"00 billion"}
                        other{"00 billion"}
                    }
                    100000000000{
                        one{"000 billion"}
                        other{"000 billion"}
                    }
                    1000000000000{
                        one{"0 trillion"}
                        other{"0 trillion"}
                    }
                    10000000000000{
                        one{"00 trillion"}
                        other{"00 trillion"}
                    }
                    100000000000000{
                        one{"000 trillion"}
                        other{"000 trillion"}
                    }
                }
            }
            patternsShort{
                decimalFormat{
                    1000{
                        one{"0K"}
                        other{"0K"}
                    }
                    10000{
                        one{"00K"}
                        other{"00K"}
                    }
                    100000{
                        one{"000K"}
                        other{"000K"}
                    }
                    1000000{
                        one{"0M"}
                        other{"0M"}
                    }
                    10000000{
                        one{"00M"}
                        other{"00M"}
                    }
                    100000000{
                        one{"000M"}
                        other{"000M"}
                    }
                    1000000000{
                        one{"0B"}
                        other{"0B"}
                    }
                    10000000000{
                        one{"00B"}
                        other{"00B"}
                    }
                    100000000000{
                        one{"000B"}
                        other{"000B"}
                    }
                    1000000000000{
                        one{"0T"}
                        other{"0T"}
                    }
                    10000000000000{
                        one{"00T"}
                        other{"00T"}
                    }
                    100000000000000{
                        one{"000T"}
                        other{"000T"}
                    }
                }
            }
            symbols{
                decimal{"."}
                exponential{"E"}
                group{","}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
            }
        }
    }
    Version{"2.0.89.25"}
    calendar{
        buddhist{
            eras{
                abbreviated{
                    "BE",
                }
            }
        }
        chinese{
            DateTimePatterns{
                "h:mm:ss a zzzz",
                "h:mm:ss a z",
                "h:mm:ss a",
                "h:mm a",
                "EEEE, MMMM d, U",
                "MMMM d, U",
                "MMM d, U",
                "M/d/yy",
                "{1}, {0}",
                "{1} 'at' {0}",
                "{1} 'at' {0}",
                "{1}, {0}",
                "{1}, {0}",
            }
            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{"U"}
                GyMMM{"MMM U"}
                GyMMMEd{"E, MMM d, U"}
                GyMMMd{"MMM d, U"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, M/d"}
                MMM{"LLL"}
                MMMEd{"E, MMM d"}
                MMMd{"MMM d"}
                Md{"M/d"}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"U"}
                yMd{"M/d/y"}
                yyyy{"U"}
                yyyyM{"M/y"}
                yyyyMEd{"E, M/d/y"}
                yyyyMMM{"MMM U"}
                yyyyMMMEd{"E, MMM d, U"}
                yyyyMMMd{"MMM d, U"}
                yyyyMd{"M/d/y"}
                yyyyQQQ{"QQQ U"}
                yyyyQQQQ{"QQQQ U"}
            }
            cyclicNameSets{
                zodiacs{
                    format{
                        abbreviated{
                            "Rat",
                            "Ox",
                            "Tiger",
                            "Rabbit",
                            "Dragon",
                            "Snake",
                            "Horse",
                            "Goat",
                            "Monkey",
                            "Rooster",
                            "Dog",
                            "Pig",
                        }
                    }
                }
            }
            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, M/d – E, M/d"}
                    d{"E, M/d – E, M/d"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, MMM d – E, MMM d"}
                    d{"E, MMM d – E, MMM d"}
                }
                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{"U–U"}
                }
                yM{
                    M{"M/y – M/y"}
                    y{"M/y – M/y"}
                }
                yMEd{
                    M{"E, M/d/y – E, M/d/y"}
                    d{"E, M/d/y – E, M/d/y"}
                    y{"E, M/d/y – E, M/d/y"}
                }
                yMMM{
                    M{"MMM–MMM U"}
                    y{"MMM U – MMM U"}
                }
                yMMMEd{
                    M{"E, MMM d – E, MMM d, U"}
                    d{"E, MMM d – E, MMM d, U"}
                    y{"E, MMM d, U – E, MMM d, U"}
                }
                yMMMM{
                    M{"MMMM – MMMM U"}
                    y{"MMMM U – MMMM U"}
                }
                yMMMd{
                    M{"MMM d – MMM d, U"}
                    d{"MMM d–d, U"}
                    y{"MMM d, U – MMM d, U"}
                }
                yMd{
                    M{"M/d/y – M/d/y"}
                    d{"M/d/y – M/d/y"}
                    y{"M/d/y – M/d/y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Mo1",
                        "Mo2",
                        "Mo3",
                        "Mo4",
                        "Mo5",
                        "Mo6",
                        "Mo7",
                        "Mo8",
                        "Mo9",
                        "Mo10",
                        "Mo11",
                        "Mo12",
                    }
                    wide{
                        "Month1",
                        "Month2",
                        "Month3",
                        "Month4",
                        "Month5",
                        "Month6",
                        "Month7",
                        "Month8",
                        "Month9",
                        "Month10",
                        "Month11",
                        "Month12",
                    }
                }
            }
        }
        generic{
            DateTimePatterns{
                "h:mm:ss a zzzz",
                "h:mm:ss a z",
                "h:mm:ss a",
                "h:mm a",
                "EEEE, MMMM d, y G",
                "MMMM d, y G",
                "MMM d, y G",
                "M/d/y GGGGG",
                "{1}, {0}",
                "{1} 'at' {0}",
                "{1} 'at' {0}",
                "{1}, {0}",
                "{1}, {0}",
            }
            appendItems{
                Day{"{0} ({2}: {1})"}
                Day-Of-Week{"{0} {1}"}
                Era{"{0} {1}"}
                Hour{"{0} ({2}: {1})"}
                Minute{"{0} ({2}: {1})"}
                Month{"{0} ({2}: {1})"}
                Quarter{"{0} ({2}: {1})"}
                Second{"{0} ({2}: {1})"}
                Timezone{"{0} {1}"}
                Week{"{0} ({2}: {1})"}
                Year{"{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{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, MMM d, y G"}
                GyMMMd{"MMM d, y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, M/d"}
                MMM{"LLL"}
                MMMEd{"E, MMM d"}
                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 G"}
                yyyy{"y G"}
                yyyyM{"M/y GGGGG"}
                yyyyMEd{"E, M/d/y GGGGG"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E, MMM d, y G"}
                yyyyMMMd{"MMM d, y G"}
                yyyyMd{"M/d/y GGGGG"}
                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, M/d – E, M/d"}
                    d{"E, M/d – E, M/d"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, MMM d – E, MMM d"}
                    d{"E, MMM d – E, MMM d"}
                }
                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 G"}
                }
                yM{
                    M{"M/y – M/y GGGGG"}
                    y{"M/y – M/y GGGGG"}
                }
                yMEd{
                    M{"E, M/d/y – E, M/d/y GGGGG"}
                    d{"E, M/d/y – E, M/d/y GGGGG"}
                    y{"E, M/d/y – E, M/d/y GGGGG"}
                }
                yMMM{
                    M{"MMM–MMM y G"}
                    y{"MMM y – MMM y G"}
                }
                yMMMEd{
                    M{"E, MMM d – E, MMM d, y G"}
                    d{"E, MMM d – E, MMM d, y G"}
                    y{"E, MMM d, y – E, MMM d, y G"}
                }
                yMMMM{
                    M{"MMMM – MMMM y G"}
                    y{"MMMM y – MMMM y G"}
                }
                yMMMd{
                    M{"MMM d – MMM d, y G"}
                    d{"MMM d–d, y G"}
                    y{"MMM d, y – MMM d, y G"}
                }
                yMd{
                    M{"M/d/y – M/d/y GGGGG"}
                    d{"M/d/y – M/d/y GGGGG"}
                    y{"M/d/y – M/d/y GGGGG"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "AM",
                "PM",
            }
            DateTimePatterns{
                "h:mm:ss a zzzz",
                "h:mm:ss a z",
                "h:mm:ss a",
                "h:mm a",
                "EEEE, MMMM d, y",
                "MMMM d, y",
                "MMM d, y",
                "M/d/yy",
                "{1}, {0}",
                "{1} 'at' {0}",
                "{1} 'at' {0}",
                "{1}, {0}",
                "{1}, {0}",
            }
            appendItems{
                Day{"{0} ({2}: {1})"}
                Day-Of-Week{"{0} {1}"}
                Era{"{0} {1}"}
                Hour{"{0} ({2}: {1})"}
                Minute{"{0} ({2}: {1})"}
                Month{"{0} ({2}: {1})"}
                Quarter{"{0} ({2}: {1})"}
                Second{"{0} ({2}: {1})"}
                Timezone{"{0} {1}"}
                Week{"{0} ({2}: {1})"}
                Year{"{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{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, MMM d, y G"}
                GyMMMd{"MMM d, y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, M/d"}
                MMM{"LLL"}
                MMMEd{"E, MMM d"}
                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{"M/y"}
                yMEd{"E, M/d/y"}
                yMMM{"MMM y"}
                yMMMEd{"E, MMM d, y"}
                yMMMd{"MMM d, y"}
                yMd{"M/d/y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "Sun",
                        "Mon",
                        "Tue",
                        "Wed",
                        "Thu",
                        "Fri",
                        "Sat",
                    }
                    short{
                        "Su",
                        "Mo",
                        "Tu",
                        "We",
                        "Th",
                        "Fr",
                        "Sa",
                    }
                    wide{
                        "Sunday",
                        "Monday",
                        "Tuesday",
                        "Wednesday",
                        "Thursday",
                        "Friday",
                        "Saturday",
                    }
                }
                stand-alone{
                    narrow{
                        "S",
                        "M",
                        "T",
                        "W",
                        "T",
                        "F",
                        "S",
                    }
                }
            }
            eras{
                abbreviated{
                    "BC",
                    "AD",
                }
                narrow{
                    "B",
                    "A",
                }
                wide{
                    "Before Christ",
                    "Anno Domini",
                }
            }
            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, M/d – E, M/d"}
                    d{"E, M/d – E, M/d"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, MMM d – E, MMM d"}
                    d{"E, MMM d – E, MMM d"}
                }
                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{"M/y – M/y"}
                    y{"M/y – M/y"}
                }
                yMEd{
                    M{"E, M/d/y – E, M/d/y"}
                    d{"E, M/d/y – E, M/d/y"}
                    y{"E, M/d/y – E, M/d/y"}
                }
                yMMM{
                    M{"MMM–MMM y"}
                    y{"MMM y – MMM y"}
                }
                yMMMEd{
                    M{"E, MMM d – E, MMM d, y"}
                    d{"E, MMM d – E, MMM d, y"}
                    y{"E, MMM d, y – E, MMM d, y"}
                }
                yMMMM{
                    M{"MMMM – MMMM y"}
                    y{"MMMM y – MMMM y"}
                }
                yMMMd{
                    M{"MMM d – MMM d, y"}
                    d{"MMM d–d, y"}
                    y{"MMM d, y – MMM d, y"}
                }
                yMd{
                    M{"M/d/y – M/d/y"}
                    d{"M/d/y – M/d/y"}
                    y{"M/d/y – M/d/y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Jan",
                        "Feb",
                        "Mar",
                        "Apr",
                        "May",
                        "Jun",
                        "Jul",
                        "Aug",
                        "Sep",
                        "Oct",
                        "Nov",
                        "Dec",
                    }
                    wide{
                        "January",
                        "February",
                        "March",
                        "April",
                        "May",
                        "June",
                        "July",
                        "August",
                        "September",
                        "October",
                        "November",
                        "December",
                    }
                }
                stand-alone{
                    narrow{
                        "J",
                        "F",
                        "M",
                        "A",
                        "M",
                        "J",
                        "J",
                        "A",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "Q1",
                        "Q2",
                        "Q3",
                        "Q4",
                    }
                    wide{
                        "1st quarter",
                        "2nd quarter",
                        "3rd quarter",
                        "4th quarter",
                    }
                }
                stand-alone{
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                }
            }
        }
        hebrew{
            eras{
                abbreviated{
                    "AM",
                }
            }
        }
        islamic{
            eras{
                abbreviated{
                    "AH",
                }
            }
        }
        japanese{
            DateTimePatterns{
                "h:mm:ss a zzzz",
                "h:mm:ss a z",
                "h:mm:ss a",
                "h:mm a",
                "EEEE, MMMM d, y G",
                "MMMM d, y G",
                "MMM d, y G",
                "M/d/y GGGGG",
                "{1}, {0}",
                "{1} 'at' {0}",
                "{1} 'at' {0}",
                "{1}, {0}",
                "{1}, {0}",
            }
        }
        roc{
            eras{
                abbreviated{
                    "Before R.O.C.",
                    "Minguo",
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"’"}
        alternateQuotationStart{"‘"}
        quotationEnd{"”"}
        quotationStart{"“"}
    }
    fields{
        day{
            dn{"Day"}
            relative{
                "-1"{"yesterday"}
                "0"{"today"}
                "1"{"tomorrow"}
            }
        }
        dayperiod{
            dn{"AM/PM"}
        }
        era{
            dn{"Era"}
        }
        fri{
            relative{
                "-1"{"last Friday"}
                "0"{"this Friday"}
                "1"{"next Friday"}
            }
        }
        hour{
            dn{"Hour"}
        }
        minute{
            dn{"Minute"}
        }
        mon{
            relative{
                "-1"{"last Monday"}
                "0"{"this Monday"}
                "1"{"next Monday"}
            }
        }
        month{
            dn{"Month"}
            relative{
                "-1"{"last month"}
                "0"{"this month"}
                "1"{"next month"}
            }
        }
        sat{
            relative{
                "-1"{"last Saturday"}
                "0"{"this Saturday"}
                "1"{"next Saturday"}
            }
        }
        second{
            dn{"Second"}
        }
        sun{
            relative{
                "-1"{"last Sunday"}
                "0"{"this Sunday"}
                "1"{"next Sunday"}
            }
        }
        thu{
            relative{
                "-1"{"last Thursday"}
                "0"{"this Thursday"}
                "1"{"next Thursday"}
            }
        }
        tue{
            relative{
                "-1"{"last Tuesday"}
                "0"{"this Tuesday"}
                "1"{"next Tuesday"}
            }
        }
        wed{
            relative{
                "-1"{"last Wednesday"}
                "0"{"this Wednesday"}
                "1"{"next Wednesday"}
            }
        }
        week{
            dn{"Week"}
            relative{
                "-1"{"last week"}
                "0"{"this week"}
                "1"{"next week"}
            }
        }
        weekday{
            dn{"Day of the Week"}
        }
        year{
            dn{"Year"}
            relative{
                "-1"{"last year"}
                "0"{"this year"}
                "1"{"next year"}
            }
        }
        zone{
            dn{"Time Zone"}
        }
    }
    listPattern{
        duration{
            2{"{0}, {1}"}
            end{"{0}, {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        duration-narrow{
            2{"{0} {1}"}
            end{"{0} {1}"}
            middle{"{0} {1}"}
            start{"{0} {1}"}
        }
        duration-short{
            2{"{0}, {1}"}
            end{"{0}, {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        standard{
            2{"{0} and {1}"}
            end{"{0}, and {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"UK"}
        US{"US"}
        metric{"Metric"}
    }
    units{
        acceleration{
            g-force{
                one{"{0} g-force"}
                other{"{0} g-force"}
            }
        }
        angle{
            degree{
                one{"{0} degree"}
                other{"{0} degrees"}
            }
            minute{
                one{"{0} minute"}
                other{"{0} minutes"}
            }
            second{
                one{"{0} second"}
                other{"{0} seconds"}
            }
        }
        area{
            acre{
                one{"{0} acre"}
                other{"{0} acres"}
            }
            hectare{
                one{"{0} hectare"}
                other{"{0} hectares"}
            }
            square-foot{
                one{"{0} square foot"}
                other{"{0} square feet"}
            }
            square-kilometer{
                one{"{0} square kilometer"}
                other{"{0} square kilometers"}
            }
            square-meter{
                one{"{0} square meter"}
                other{"{0} square meters"}
            }
            square-mile{
                one{"{0} square mile"}
                other{"{0} square miles"}
            }
        }
        duration{
            day{
                one{"{0} day"}
                other{"{0} days"}
            }
            day-future{
                one{"In {0} day"}
                other{"In {0} days"}
            }
            day-past{
                one{"{0} day ago"}
                other{"{0} days ago"}
            }
            hour{
                one{"{0} hour"}
                other{"{0} hours"}
            }
            hour-future{
                one{"In {0} hour"}
                other{"In {0} hours"}
            }
            hour-past{
                one{"{0} hour ago"}
                other{"{0} hours ago"}
            }
            millisecond{
                one{"{0} millisecond"}
                other{"{0} milliseconds"}
            }
            minute{
                one{"{0} minute"}
                other{"{0} minutes"}
            }
            minute-future{
                one{"In {0} minute"}
                other{"In {0} minutes"}
            }
            minute-past{
                one{"{0} minute ago"}
                other{"{0} minutes ago"}
            }
            month{
                one{"{0} month"}
                other{"{0} months"}
            }
            month-future{
                one{"In {0} month"}
                other{"In {0} months"}
            }
            month-past{
                one{"{0} month ago"}
                other{"{0} months ago"}
            }
            second{
                one{"{0} second"}
                other{"{0} seconds"}
            }
            second-future{
                one{"In {0} second"}
                other{"In {0} seconds"}
            }
            second-past{
                one{"{0} second ago"}
                other{"{0} seconds ago"}
            }
            week{
                one{"{0} week"}
                other{"{0} weeks"}
            }
            week-future{
                one{"In {0} week"}
                other{"In {0} weeks"}
            }
            week-past{
                one{"{0} week ago"}
                other{"{0} weeks ago"}
            }
            year{
                one{"{0} year"}
                other{"{0} years"}
            }
            year-future{
                one{"In {0} year"}
                other{"In {0} years"}
            }
            year-past{
                one{"{0} year ago"}
                other{"{0} years ago"}
            }
        }
        length{
            centimeter{
                one{"{0} centimeter"}
                other{"{0} centimeters"}
            }
            foot{
                one{"{0} foot"}
                other{"{0} feet"}
            }
            inch{
                one{"{0} inch"}
                other{"{0} inches"}
            }
            kilometer{
                one{"{0} kilometer"}
                other{"{0} kilometers"}
            }
            light-year{
                one{"{0} light year"}
                other{"{0} light years"}
            }
            meter{
                one{"{0} meter"}
                other{"{0} meters"}
            }
            mile{
                one{"{0} mile"}
                other{"{0} miles"}
            }
            millimeter{
                one{"{0} millimeter"}
                other{"{0} millimeters"}
            }
            picometer{
                one{"{0} picometer"}
                other{"{0} picometers"}
            }
            yard{
                one{"{0} yard"}
                other{"{0} yards"}
            }
        }
        mass{
            gram{
                one{"{0} gram"}
                other{"{0} grams"}
            }
            kilogram{
                one{"{0} kilogram"}
                other{"{0} kilograms"}
            }
            ounce{
                one{"{0} ounce"}
                other{"{0} ounces"}
            }
            pound{
                one{"{0} pound"}
                other{"{0} pounds"}
            }
        }
        power{
            horsepower{
                one{"{0} horsepower"}
                other{"{0} horsepower"}
            }
            kilowatt{
                one{"{0} kilowatt"}
                other{"{0} kilowatts"}
            }
            watt{
                one{"{0} watt"}
                other{"{0} watts"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hectopascal"}
                other{"{0} hectopascals"}
            }
            inch-hg{
                one{"{0} inch of mercury"}
                other{"{0} inches of mercury"}
            }
            millibar{
                one{"{0} millibar"}
                other{"{0} millibars"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} kilometer per hour"}
                other{"{0} kilometers per hour"}
            }
            meter-per-second{
                one{"{0} meter per second"}
                other{"{0} meters per second"}
            }
            mile-per-hour{
                one{"{0} mile per hour"}
                other{"{0} miles per hour"}
            }
        }
        temperature{
            celsius{
                one{"{0} degree Celsius"}
                other{"{0} degrees Celsius"}
            }
            fahrenheit{
                one{"{0} degree Fahrenheit"}
                other{"{0} degrees Fahrenheit"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} cubic kilometer"}
                other{"{0} cubic kilometers"}
            }
            cubic-mile{
                one{"{0} cubic mile"}
                other{"{0} cubic miles"}
            }
            liter{
                one{"{0} liter"}
                other{"{0} liters"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                one{"{0} g"}
                other{"{0} g"}
            }
        }
        angle{
            degree{
                one{"{0} deg"}
                other{"{0} deg"}
            }
            minute{
                one{"{0} min"}
                other{"{0} min"}
            }
            second{
                one{"{0} sec"}
                other{"{0} secs"}
            }
        }
        area{
            acre{
                one{"{0} ac"}
                other{"{0} ac"}
            }
            hectare{
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-foot{
                one{"{0} sq ft"}
                other{"{0} sq ft"}
            }
            square-kilometer{
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                one{"{0} sq mi"}
                other{"{0} sq mi"}
            }
        }
        duration{
            day{
                one{"{0} day"}
                other{"{0} days"}
            }
            day-future{
                one{"In {0} day"}
                other{"In {0} days"}
            }
            day-past{
                one{"{0} day ago"}
                other{"{0} days ago"}
            }
            hour{
                one{"{0} hr"}
                other{"{0} hrs"}
            }
            hour-future{
                one{"In {0} hr"}
                other{"In {0} hrs"}
            }
            hour-past{
                one{"{0} hr ago"}
                other{"{0} hrs ago"}
            }
            millisecond{
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                one{"{0} min"}
                other{"{0} mins"}
            }
            minute-future{
                one{"In {0} min"}
                other{"In {0} mins"}
            }
            minute-past{
                one{"{0} min ago"}
                other{"{0} mins ago"}
            }
            month{
                one{"{0} mth"}
                other{"{0} mths"}
            }
            month-future{
                one{"In {0} mth"}
                other{"In {0} mths"}
            }
            month-past{
                one{"{0} mth ago"}
                other{"{0} mths ago"}
            }
            second{
                one{"{0} sec"}
                other{"{0} secs"}
            }
            second-future{
                one{"In {0} sec"}
                other{"In {0} secs"}
            }
            second-past{
                one{"{0} sec ago"}
                other{"{0} secs ago"}
            }
            week{
                one{"{0} wk"}
                other{"{0} wks"}
            }
            week-future{
                one{"In {0} wk"}
                other{"In {0} wks"}
            }
            week-past{
                one{"{0} wk ago"}
                other{"{0} wks ago"}
            }
            year{
                one{"{0} yr"}
                other{"{0} yrs"}
            }
            year-future{
                one{"In {0} yr"}
                other{"In {0} yrs"}
            }
            year-past{
                one{"{0} yr ago"}
                other{"{0} yrs ago"}
            }
        }
        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} mbar"}
                other{"{0} mbar"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} kph"}
                other{"{0} kph"}
            }
            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"}
            }
        }
    }
}
