﻿// ***************************************************************************
// *
// * Copyright (C) 2014 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{
                accountingFormat{"¤#,##0.00;(¤#,##0.00)"}
                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.98.76"}
    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",
            }
            AmPmMarkersNarrow{
                "a",
                "p",
            }
            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}",
            }
            NoonMarker{"noon"}
            NoonMarkerNarrow{"n"}
            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",
                }
            }
        }
    }
    contextTransforms{
        calendar-field:intvector{
            1,
            1,
        }
        keyValue:intvector{
            1,
            1,
        }
        number-spellout:intvector{
            1,
            1,
        }
        relative:intvector{
            1,
            1,
        }
    }
    delimiters{
        alternateQuotationEnd{"’"}
        alternateQuotationStart{"‘"}
        quotationEnd{"”"}
        quotationStart{"“"}
    }
    fields{
        day{
            dn{"Day"}
            relative{
                "-1"{"yesterday"}
                "0"{"today"}
                "1"{"tomorrow"}
            }
            relativeTime{
                future{
                    one{"in {0} day"}
                    other{"in {0} days"}
                }
                past{
                    one{"{0} day ago"}
                    other{"{0} days ago"}
                }
            }
        }
        dayperiod{
            dn{"AM/PM"}
        }
        era{
            dn{"Era"}
        }
        fri{
            relative{
                "-1"{"last Friday"}
                "0"{"this Friday"}
                "1"{"next Friday"}
            }
        }
        hour{
            dn{"Hour"}
            relativeTime{
                future{
                    one{"in {0} hour"}
                    other{"in {0} hours"}
                }
                past{
                    one{"{0} hour ago"}
                    other{"{0} hours ago"}
                }
            }
        }
        minute{
            dn{"Minute"}
            relativeTime{
                future{
                    one{"in {0} minute"}
                    other{"in {0} minutes"}
                }
                past{
                    one{"{0} minute ago"}
                    other{"{0} minutes ago"}
                }
            }
        }
        mon{
            relative{
                "-1"{"last Monday"}
                "0"{"this Monday"}
                "1"{"next Monday"}
            }
        }
        month{
            dn{"Month"}
            relative{
                "-1"{"last month"}
                "0"{"this month"}
                "1"{"next month"}
            }
            relativeTime{
                future{
                    one{"in {0} month"}
                    other{"in {0} months"}
                }
                past{
                    one{"{0} month ago"}
                    other{"{0} months ago"}
                }
            }
        }
        sat{
            relative{
                "-1"{"last Saturday"}
                "0"{"this Saturday"}
                "1"{"next Saturday"}
            }
        }
        second{
            dn{"Second"}
            relative{
                "0"{"now"}
            }
            relativeTime{
                future{
                    one{"in {0} second"}
                    other{"in {0} seconds"}
                }
                past{
                    one{"{0} second ago"}
                    other{"{0} seconds ago"}
                }
            }
        }
        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"}
            }
            relativeTime{
                future{
                    one{"in {0} week"}
                    other{"in {0} weeks"}
                }
                past{
                    one{"{0} week ago"}
                    other{"{0} weeks ago"}
                }
            }
        }
        weekday{
            dn{"Day of the Week"}
        }
        year{
            dn{"Year"}
            relative{
                "-1"{"last year"}
                "0"{"this year"}
                "1"{"next year"}
            }
            relativeTime{
                future{
                    one{"in {0} year"}
                    other{"in {0} years"}
                }
                past{
                    one{"{0} year ago"}
                    other{"{0} years ago"}
                }
            }
        }
        zone{
            dn{"Time Zone"}
        }
    }
    listPattern{
        standard{
            2{"{0} and {1}"}
            end{"{0}, and {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit{
            2{"{0}, {1}"}
            end{"{0}, {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit-narrow{
            2{"{0} {1}"}
            end{"{0} {1}"}
            middle{"{0} {1}"}
            start{"{0} {1}"}
        }
        unit-short{
            2{"{0}, {1}"}
            end{"{0}, {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"UK"}
        US{"US"}
        metric{"Metric"}
    }
    transformNames{
        BGN{"BGN"}
        Numeric{"Numeric"}
        Tone{"Tone"}
        UNGEGN{"UNGEGN"}
        x-Accents{"Accents"}
        x-Fullwidth{"Fullwidth"}
        x-Halfwidth{"Halfwidth"}
        x-Jamo{"Jamo"}
        x-Pinyin{"Pinyin"}
        x-Publishing{"Publishing"}
    }
    units{
        acceleration{
            g-force{
                one{"{0} g-force"}
                other{"{0} g-force"}
            }
        }
        angle{
            arc-minute{
                one{"{0} arcminute"}
                other{"{0} arcminutes"}
            }
            arc-second{
                one{"{0} arcsecond"}
                other{"{0} arcseconds"}
            }
            degree{
                one{"{0} degree"}
                other{"{0} degrees"}
            }
        }
        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"}
            }
        }
        compound{
            per{"{0} per {1}"}
        }
        duration{
            day{
                one{"{0} day"}
                other{"{0} days"}
            }
            hour{
                one{"{0} hour"}
                other{"{0} hours"}
            }
            millisecond{
                one{"{0} millisecond"}
                other{"{0} milliseconds"}
            }
            minute{
                one{"{0} minute"}
                other{"{0} minutes"}
            }
            month{
                one{"{0} month"}
                other{"{0} months"}
            }
            second{
                one{"{0} second"}
                other{"{0} seconds"}
            }
            week{
                one{"{0} week"}
                other{"{0} weeks"}
            }
            year{
                one{"{0} year"}
                other{"{0} years"}
            }
        }
        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"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0}G"}
                other{"{0}Gs"}
            }
        }
        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-mile{
                one{"{0}mi²"}
                other{"{0}mi²"}
            }
        }
        duration{
            day{
                one{"{0}d"}
                other{"{0}d"}
            }
            hour{
                one{"{0}h"}
                other{"{0}h"}
            }
            millisecond{
                one{"{0}ms"}
                other{"{0}ms"}
            }
            minute{
                one{"{0}m"}
                other{"{0}m"}
            }
            month{
                one{"{0}m"}
                other{"{0}m"}
            }
            second{
                one{"{0}s"}
                other{"{0}s"}
            }
            week{
                one{"{0}w"}
                other{"{0}w"}
            }
            year{
                one{"{0}y"}
                other{"{0}y"}
            }
        }
        length{
            centimeter{
                one{"{0}cm"}
                other{"{0}cm"}
            }
            foot{
                one{"{0}′"}
                other{"{0}′"}
            }
            inch{
                one{"{0}″"}
                other{"{0}″"}
            }
            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}#"}
                other{"{0}#"}
            }
        }
        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}\u0022 Hg"}
                other{"{0}\u0022 Hg"}
            }
            millibar{
                one{"{0}mb"}
                other{"{0}mb"}
            }
        }
        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}°"}
                other{"{0}°"}
            }
        }
        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} arcmin"}
                other{"{0} arcmin"}
            }
            arc-second{
                one{"{0} arcsec"}
                other{"{0} arcsecs"}
            }
            degree{
                one{"{0} deg"}
                other{"{0} deg"}
            }
        }
        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"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                one{"{0} day"}
                other{"{0} days"}
            }
            hour{
                one{"{0} hr"}
                other{"{0} hrs"}
            }
            millisecond{
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                one{"{0} min"}
                other{"{0} mins"}
            }
            month{
                one{"{0} mth"}
                other{"{0} mths"}
            }
            second{
                one{"{0} sec"}
                other{"{0} secs"}
            }
            week{
                one{"{0} wk"}
                other{"{0} wks"}
            }
            year{
                one{"{0} yr"}
                other{"{0} yrs"}
            }
        }
        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"}
            }
        }
    }
}
