﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/cy.xml
// *
// ***************************************************************************
cy{
    AuxExemplarCharacters{"[ă å ã ā æ ç ĕ ē ĭ ī k ñ ŏ ø ō œ q ŭ ū v x z]"}
    Ellipsis{
        final{"{0}…"}
        initial{"…{0}"}
        medial{"{0}…{1}"}
        word-final{"{0} …"}
        word-initial{"… {0}"}
        word-medial{"{0} … {1}"}
    }
    ExemplarCharacters{
        "[a á à â ä b c {ch} d {dd} e é è ê ë f {ff} g {ng} h i í ì î ï j l {ll} m n "
        "o ó ò ô ö p {ph} r {rh} s t {th} u ú ù û ü w ẃ ẁ ŵ ẅ y ý ỳ ŷ ÿ]"
    }
    ExemplarCharactersIndex{
        "[A B C {CH} D {DD} E F {FF} G {NG} H I J K L {LL} M N O P {PH} Q R {RH} S T "
        "{TH} U V W X Y Z]"
    }
    ExemplarCharactersPunctuation{
        "[\\- ‐ – — , ; \\: ! ? . … ' ‘ ’ \u0022 “ ” ( ) \\[ \\] § @ * / \\& # † ‡ ′ "
        "″]"
    }
    MoreInformation{"?"}
    NumberElements{
        arab{
            symbols{
                timeSeparator{":"}
            }
        }
        default{"latn"}
        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{
                        few{"0 mil"}
                        many{"0 mil"}
                        one{"0 mil"}
                        other{"0 mil"}
                        two{"0 fil"}
                        zero{"0 mil"}
                    }
                    10000{
                        few{"00 mil"}
                        many{"00 mil"}
                        one{"00 mil"}
                        other{"00 mil"}
                        two{"00 mil"}
                        zero{"00 mil"}
                    }
                    100000{
                        few{"000 mil"}
                        many{"000 mil"}
                        one{"000 mil"}
                        other{"000 mil"}
                        two{"000 mil"}
                        zero{"000 mil"}
                    }
                    1000000{
                        few{"0 miliwn"}
                        many{"0 miliwn"}
                        one{"0 miliwn"}
                        other{"0 miliwn"}
                        two{"0 filiwn"}
                        zero{"0 miliwn"}
                    }
                    10000000{
                        few{"00 miliwn"}
                        many{"00 miliwn"}
                        one{"00 miliwn"}
                        other{"00 miliwn"}
                        two{"00 miliwn"}
                        zero{"00 miliwn"}
                    }
                    100000000{
                        few{"000 miliwn"}
                        many{"000 miliwn"}
                        one{"000 miliwn"}
                        other{"000 miliwn"}
                        two{"000 miliwn"}
                        zero{"000 miliwn"}
                    }
                    1000000000{
                        few{"0 biliwn"}
                        many{"0 biliwn"}
                        one{"0 biliwn"}
                        other{"0 biliwn"}
                        two{"0 biliwn"}
                        zero{"0 biliwn"}
                    }
                    10000000000{
                        few{"00 biliwn"}
                        many{"00 biliwn"}
                        one{"00 biliwn"}
                        other{"00 biliwn"}
                        two{"00 biliwn"}
                        zero{"00 biliwn"}
                    }
                    100000000000{
                        few{"000 biliwn"}
                        many{"000 biliwn"}
                        one{"000 biliwn"}
                        other{"000 biliwn"}
                        two{"000 biliwn"}
                        zero{"000 biliwn"}
                    }
                    1000000000000{
                        few{"0 thriliwn"}
                        many{"0 thriliwn"}
                        one{"0 triliwn"}
                        other{"0 triliwn"}
                        two{"0 driliwn"}
                        zero{"0 triliwn"}
                    }
                    10000000000000{
                        few{"00 triliwn"}
                        many{"00 triliwn"}
                        one{"00 triliwn"}
                        other{"00 triliwn"}
                        two{"00 triliwn"}
                        zero{"00 triliwn"}
                    }
                    100000000000000{
                        few{"000 triliwn"}
                        many{"000 triliwn"}
                        one{"000 triliwn"}
                        other{"000 triliwn"}
                        two{"000 triliwn"}
                        zero{"000 triliwn"}
                    }
                }
            }
            patternsShort{
                currencyFormat{
                    1000{
                        few{"¤0K"}
                        many{"¤0K"}
                        one{"¤0K"}
                        other{"¤0K"}
                        two{"¤0K"}
                        zero{"¤0 mil"}
                    }
                    10000{
                        few{"¤00K"}
                        many{"¤00K"}
                        one{"¤00K"}
                        other{"¤00K"}
                        two{"¤00K"}
                        zero{"¤00K"}
                    }
                    100000{
                        few{"¤000K"}
                        many{"¤000K"}
                        one{"¤000K"}
                        other{"¤000K"}
                        two{"¤000K"}
                        zero{"¤000K"}
                    }
                    1000000{
                        few{"¤0M"}
                        many{"¤0M"}
                        one{"¤0M"}
                        other{"¤0M"}
                        two{"¤0M"}
                        zero{"¤0M"}
                    }
                    10000000{
                        few{"¤00M"}
                        many{"¤00M"}
                        one{"¤00M"}
                        other{"¤00M"}
                        two{"¤00M"}
                        zero{"¤00M"}
                    }
                    100000000{
                        few{"¤000M"}
                        many{"¤000M"}
                        one{"¤000M"}
                        other{"¤000M"}
                        two{"¤000M"}
                        zero{"¤000M"}
                    }
                    1000000000{
                        few{"¤0B"}
                        many{"¤0B"}
                        one{"¤0B"}
                        other{"¤0B"}
                        two{"¤0B"}
                        zero{"¤0B"}
                    }
                    10000000000{
                        few{"¤00B"}
                        many{"¤00B"}
                        one{"¤00B"}
                        other{"¤00B"}
                        two{"¤00B"}
                        zero{"¤00B"}
                    }
                    100000000000{
                        few{"¤000B"}
                        many{"¤000B"}
                        one{"¤000B"}
                        other{"¤000B"}
                        two{"¤000B"}
                        zero{"¤000B"}
                    }
                    1000000000000{
                        few{"¤0T"}
                        many{"¤0T"}
                        one{"¤0T"}
                        other{"¤0T"}
                        two{"¤0T"}
                        zero{"¤0T"}
                    }
                    10000000000000{
                        few{"¤00T"}
                        many{"¤00T"}
                        one{"¤00T"}
                        other{"¤00T"}
                        two{"¤00T"}
                        zero{"¤00T"}
                    }
                    100000000000000{
                        few{"¤000T"}
                        many{"¤000T"}
                        one{"¤000T"}
                        other{"¤000T"}
                        two{"¤000T"}
                        zero{"¤000T"}
                    }
                }
                decimalFormat{
                    1000{
                        few{"0K"}
                        many{"0K"}
                        one{"0K"}
                        other{"0K"}
                        two{"0K"}
                        zero{"0K"}
                    }
                    10000{
                        few{"00K"}
                        many{"00K"}
                        one{"00K"}
                        other{"00K"}
                        two{"00K"}
                        zero{"00K"}
                    }
                    100000{
                        few{"000K"}
                        many{"000K"}
                        one{"000K"}
                        other{"000K"}
                        two{"000K"}
                        zero{"000K"}
                    }
                    1000000{
                        few{"0M"}
                        many{"0M"}
                        one{"0M"}
                        other{"0M"}
                        two{"0M"}
                        zero{"0M"}
                    }
                    10000000{
                        few{"00M"}
                        many{"00M"}
                        one{"00M"}
                        other{"00M"}
                        two{"00M"}
                        zero{"00M"}
                    }
                    100000000{
                        few{"000M"}
                        many{"000M"}
                        one{"000M"}
                        other{"000M"}
                        two{"000M"}
                        zero{"000M"}
                    }
                    1000000000{
                        few{"0B"}
                        many{"0B"}
                        one{"0B"}
                        other{"0B"}
                        two{"0B"}
                        zero{"0B"}
                    }
                    10000000000{
                        few{"00B"}
                        many{"00B"}
                        one{"00B"}
                        other{"00B"}
                        two{"00B"}
                        zero{"00B"}
                    }
                    100000000000{
                        few{"000B"}
                        many{"000B"}
                        one{"000B"}
                        other{"000B"}
                        two{"000B"}
                        zero{"000B"}
                    }
                    1000000000000{
                        few{"0T"}
                        many{"0T"}
                        one{"0T"}
                        other{"0T"}
                        two{"0T"}
                        zero{"0T"}
                    }
                    10000000000000{
                        few{"00T"}
                        many{"00T"}
                        one{"00T"}
                        other{"00T"}
                        two{"00T"}
                        zero{"00T"}
                    }
                    100000000000000{
                        few{"000T"}
                        many{"000T"}
                        one{"000T"}
                        other{"000T"}
                        two{"000T"}
                        zero{"000T"}
                    }
                }
            }
            symbols{
                decimal{"."}
                exponential{"E"}
                group{","}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"x"}
                timeSeparator{":"}
            }
        }
        minimumGroupingDigits{"1"}
        native{"latn"}
    }
    Version{"2.1.20.4"}
    calendar{
        generic{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, d MMMM y G",
                "d MMMM y G",
                "d MMM y G",
                "dd/MM/y GGGGG",
                "{1}, {0}",
                "{1} am {0}",
                "{1} am {0}",
                "{1}, {0}",
                "{1}, {0}",
            }
            availableFormats{
                E{"ccc"}
                Ed{"E, d"}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, d MMM y G"}
                GyMMMd{"d MMM y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d/M"}
                MMM{"LLL"}
                MMMEd{"E, d MMM"}
                MMMMd{"MMMM d"}
                MMMd{"d MMM"}
                Md{"d/M"}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"y"}
                yyyy{"y G"}
                yyyyM{"M/y G"}
                yyyyMEd{"E, d/M/y G"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E, d MMM y G"}
                yyyyMMMM{"G y MMMM"}
                yyyyMMMd{"d MMM y G"}
                yyyyMd{"d/M/y G"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"QQQQ y G"}
            }
            intervalFormats{
                H{
                    H{"HH – HH"}
                }
                Hm{
                    H{"HH:mm – HH:mm"}
                    m{"HH:mm – HH:mm"}
                }
                Hmv{
                    H{"HH:mm – HH:mm v"}
                    m{"HH:mm – HH:mm v"}
                }
                Hv{
                    H{"HH – HH v"}
                }
                M{
                    M{"M – M"}
                }
                MEd{
                    M{"E, d/M – E, d/M"}
                    d{"E, d/M – E, d/M"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, d MMM – E, d MMM"}
                    d{"E, d MMM – E, d MMM"}
                }
                MMMM{
                    M{"LLLL–LLLL"}
                }
                MMMd{
                    M{"d MMM – d MMM"}
                    d{"d – d MMM"}
                }
                Md{
                    M{"d/M – d/M"}
                    d{"d/M – d/M"}
                }
                d{
                    d{"d – d"}
                }
                fallback{"{0} – {1}"}
                h{
                    a{"h a – h a"}
                    h{"h – h a"}
                }
                hm{
                    a{"h:mm a – h:mm a"}
                    h{"h:mm – h:mm a"}
                    m{"h:mm – h:mm a"}
                }
                hmv{
                    a{"h:mm a – h:mm a v"}
                    h{"h:mm – h:mm a v"}
                    m{"h:mm – h:mm a v"}
                }
                hv{
                    a{"h a – h a v"}
                    h{"h – h a v"}
                }
                y{
                    y{"y–y G"}
                }
                yM{
                    M{"M/y – M/y GGGGG"}
                    y{"M/y – M/y GGGGG"}
                }
                yMEd{
                    M{"E, d/M/y – E, d/M/y GGGGG"}
                    d{"E, d/M/y – E, d/M/y GGGGG"}
                    y{"E, d/M/y – E, d/M/y GGGGG"}
                }
                yMMM{
                    M{"MMM – MMM y G"}
                    y{"MMM y – MMM y G"}
                }
                yMMMEd{
                    M{"E, d MMM – E, d MMM y G"}
                    d{"E, d MMM – E, d MMM y G"}
                    y{"E, d MMM, y – E, d MMM y G"}
                }
                yMMMM{
                    M{"MMMM–MMMM y G"}
                    y{"MMMM y – MMMM y G"}
                }
                yMMMd{
                    M{"d MMM – d MMM y G"}
                    d{"d–d MMM y G"}
                    y{"d MMM y – d MMM y G"}
                }
                yMd{
                    M{"d/M/y – d/M/y GGGGG"}
                    d{"d/M/y – d/M/y GGGGG"}
                    y{"d/M/y – d/M/y GGGGG"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "AM",
                "PM",
            }
            AmPmMarkersAbbr{
                "AM",
                "PM",
            }
            AmPmMarkersNarrow{
                "AM",
                "PM",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, d MMMM y",
                "d MMMM y",
                "d MMM y",
                "dd/MM/yy",
                "{1} {0}",
                "{1} 'am' {0}",
                "{1} 'am' {0}",
                "{1} {0}",
                "{1} {0}",
            }
            appendItems{
                Timezone{"{0} {1}"}
            }
            availableFormats{
                E{"ccc"}
                EHm{"E, HH:mm"}
                EHms{"E, HH:mm:ss"}
                Ed{"E, d"}
                Ehm{"E, h:mm a"}
                Ehms{"E, h:mm:ss a"}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, d MMM y G"}
                GyMMMd{"d MMM y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                Hmsv{"HH:mm:ss v"}
                Hmv{"HH:mm v"}
                M{"L"}
                MEd{"E, d/M"}
                MMM{"LLL"}
                MMMEd{"E, d MMM"}
                MMMMd{"MMMM d"}
                MMMd{"d MMM"}
                Md{"d/M"}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                hmsv{"h:mm:ss a v"}
                hmv{"h:mm a v"}
                ms{"mm:ss"}
                y{"y"}
                yM{"M/y"}
                yMEd{"E, d/M/y"}
                yMMM{"MMM y"}
                yMMMEd{"E, d MMM y"}
                yMMMM{"MMMM y"}
                yMMMd{"d MMM y"}
                yMd{"d/M/y"}
                yQ{"Q y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "Sul",
                        "Llun",
                        "Maw",
                        "Mer",
                        "Iau",
                        "Gwen",
                        "Sad",
                    }
                    narrow{
                        "S",
                        "Ll",
                        "M",
                        "M",
                        "I",
                        "G",
                        "S",
                    }
                    short{
                        "Su",
                        "Ll",
                        "Ma",
                        "Me",
                        "Ia",
                        "Gw",
                        "Sa",
                    }
                    wide{
                        "Dydd Sul",
                        "Dydd Llun",
                        "Dydd Mawrth",
                        "Dydd Mercher",
                        "Dydd Iau",
                        "Dydd Gwener",
                        "Dydd Sadwrn",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Sul",
                        "Llun",
                        "Maw",
                        "Mer",
                        "Iau",
                        "Gwe",
                        "Sad",
                    }
                    narrow{
                        "S",
                        "Ll",
                        "M",
                        "M",
                        "I",
                        "G",
                        "S",
                    }
                    short{
                        "Su",
                        "Ll",
                        "Ma",
                        "Me",
                        "Ia",
                        "Gw",
                        "Sa",
                    }
                    wide{
                        "Dydd Sul",
                        "Dydd Llun",
                        "Dydd Mawrth",
                        "Dydd Mercher",
                        "Dydd Iau",
                        "Dydd Gwener",
                        "Dydd Sadwrn",
                    }
                }
            }
            eras{
                abbreviated{
                    "CC",
                    "OC",
                }
                abbreviated%variant{
                    "BCE",
                    "CE",
                }
                narrow{
                    "C",
                    "O",
                }
                wide{
                    "Cyn Crist",
                    "Oed Crist",
                }
                wide%variant{
                    "Cyn Cyfnod Cyffredin",
                    "Cyfnod Cyffredin",
                }
            }
            intervalFormats{
                H{
                    H{"HH–HH"}
                }
                Hm{
                    H{"HH:mm–HH:mm"}
                    m{"HH:mm–HH:mm"}
                }
                Hmv{
                    H{"HH:mm–HH:mm v"}
                    m{"HH:mm–HH:mm v"}
                }
                Hv{
                    H{"HH–HH v"}
                }
                M{
                    M{"M–M"}
                }
                MEd{
                    M{"E, d/M – E, d/M"}
                    d{"E, d/M – E, d/M"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, d MMM – E, d MMM"}
                    d{"E, d MMM – E, d MMM"}
                }
                MMMM{
                    M{"LLLL–LLLL"}
                }
                MMMd{
                    M{"d MMM – d MMM"}
                    d{"d–d MMM"}
                }
                Md{
                    M{"d/M – d/M"}
                    d{"d/M – d/M"}
                }
                d{
                    d{"d–d"}
                }
                fallback{"{0} – {1}"}
                h{
                    a{"h a – h a"}
                    h{"h–h a"}
                }
                hm{
                    a{"h:mm a – h:mm a"}
                    h{"h:mm h:mm a"}
                    m{"h:mm – h:mm a"}
                }
                hmv{
                    a{"h:mm a – h:mm a v"}
                    h{"h:mm – h:mm a v"}
                    m{"h:mm–h:mm a v"}
                }
                hv{
                    a{"h a – h a v"}
                    h{"h–h a v"}
                }
                y{
                    y{"y–y"}
                }
                yM{
                    M{"M/y – M/y"}
                    y{"M/y – M/y"}
                }
                yMEd{
                    M{"E, d/M/y – E, d/M/y"}
                    d{"E, d/M/y – E, d/M/y"}
                    y{"E, d/M/y – E, d/M/y"}
                }
                yMMM{
                    M{"MMM – MMM y"}
                    y{"MMM y – MMM y"}
                }
                yMMMEd{
                    M{"E, d MMM – E, d MMM y"}
                    d{"E, d MMM – E, d MMM y"}
                    y{"E, d MMM y – E, d MMM y"}
                }
                yMMMM{
                    M{"MMMM–MMMM y"}
                    y{"MMMM y – MMMM y"}
                }
                yMMMd{
                    M{"d MMM – d MMM y"}
                    d{"d–d MMM y"}
                    y{"d MMM, y – d MMM y"}
                }
                yMd{
                    M{"d/M/y – d/M/y"}
                    d{"d/M/y – d/M/y"}
                    y{"d/M/y – d/M/y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Ion",
                        "Chwef",
                        "Maw",
                        "Ebrill",
                        "Mai",
                        "Meh",
                        "Gorff",
                        "Awst",
                        "Medi",
                        "Hyd",
                        "Tach",
                        "Rhag",
                    }
                    narrow{
                        "I",
                        "Ch",
                        "M",
                        "E",
                        "M",
                        "M",
                        "G",
                        "A",
                        "M",
                        "H",
                        "T",
                        "Rh",
                    }
                    wide{
                        "Ionawr",
                        "Chwefror",
                        "Mawrth",
                        "Ebrill",
                        "Mai",
                        "Mehefin",
                        "Gorffennaf",
                        "Awst",
                        "Medi",
                        "Hydref",
                        "Tachwedd",
                        "Rhagfyr",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Ion",
                        "Chw",
                        "Maw",
                        "Ebr",
                        "Mai",
                        "Meh",
                        "Gor",
                        "Awst",
                        "Medi",
                        "Hyd",
                        "Tach",
                        "Rhag",
                    }
                    narrow{
                        "I",
                        "Ch",
                        "M",
                        "E",
                        "M",
                        "M",
                        "G",
                        "A",
                        "M",
                        "H",
                        "T",
                        "Rh",
                    }
                    wide{
                        "Ionawr",
                        "Chwefror",
                        "Mawrth",
                        "Ebrill",
                        "Mai",
                        "Mehefin",
                        "Gorffennaf",
                        "Awst",
                        "Medi",
                        "Hydref",
                        "Tachwedd",
                        "Rhagfyr",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "Ch1",
                        "Ch2",
                        "Ch3",
                        "Ch4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "chwarter 1af",
                        "2il chwarter",
                        "3ydd chwarter",
                        "4ydd chwarter",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Ch1",
                        "Ch2",
                        "Ch3",
                        "Ch4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "chwarter 1af",
                        "2il chwarter",
                        "3ydd chwarter",
                        "4ydd chwarter",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"”"}
        alternateQuotationStart{"“"}
        quotationEnd{"’"}
        quotationStart{"‘"}
    }
    fields{
        day{
            dn{"dydd"}
            relative{
                "-1"{"ddoe"}
                "-2"{"echdoe"}
                "0"{"heddiw"}
                "1"{"yfory"}
                "2"{"drennydd"}
            }
            relativeTime{
                future{
                    few{"ymhen tridiau"}
                    many{"ymhen {0} diwrnod"}
                    one{"ymhen diwrnod"}
                    other{"ymhen {0} diwrnod"}
                    two{"ymhen deuddydd"}
                    zero{"ymhen {0} diwrnod"}
                }
                past{
                    few{"{0} diwrnod yn ôl"}
                    many{"{0} diwrnod yn ôl"}
                    one{"{0} diwrnod yn ôl"}
                    other{"{0} diwrnod yn ôl"}
                    two{"{0} ddiwrnod yn ôl"}
                    zero{"{0} diwrnod yn ôl"}
                }
            }
        }
        day-narrow{
            dn{"dydd"}
            relativeTime{
                future{
                    few{"ymhen tridiau"}
                    many{"ymhen {0} diwrnod"}
                    one{"ymhen diwrnod"}
                    other{"ymhen {0} diwrnod"}
                    two{"ymhen deuddydd"}
                    zero{"ymhen {0} diwrnod"}
                }
                past{
                    few{"{0} diwrnod yn ôl"}
                    many{"{0} diwrnod yn ôl"}
                    one{"{0} diwrnod yn ôl"}
                    other{"{0} diwrnod yn ôl"}
                    two{"{0} ddiwrnod yn ôl"}
                    zero{"{0} diwrnod yn ôl"}
                }
            }
        }
        day-short{
            dn{"dydd"}
            relative{
                "-1"{"ddoe"}
                "-2"{"echdoe"}
                "0"{"heddiw"}
                "1"{"yfory"}
                "2"{"drennydd"}
            }
            relativeTime{
                future{
                    few{"ymhen tridiau"}
                    many{"ymhen {0} diwrnod"}
                    one{"ymhen diwrnod"}
                    other{"ymhen {0} diwrnod"}
                    two{"ymhen deuddydd"}
                    zero{"ymhen {0} diwrnod"}
                }
                past{
                    few{"{0} diwrnod yn ôl"}
                    many{"{0} diwrnod yn ôl"}
                    one{"{0} diwrnod yn ôl"}
                    other{"{0} diwrnod yn ôl"}
                    two{"{0} ddiwrnod yn ôl"}
                    zero{"{0} diwrnod yn ôl"}
                }
            }
        }
        dayperiod{
            dn{"AM/PM"}
        }
        era{
            dn{"Oes"}
        }
        fri{
            relative{
                "-1"{"dydd Gwener diwethaf"}
                "0"{"dydd Gwener yma"}
                "1"{"dydd Gwener nesaf"}
            }
        }
        fri-narrow{
            relative{
                "-1"{"Gwen. diwethaf"}
                "0"{"Gwen. yma"}
                "1"{"Gwen. nesaf"}
            }
        }
        fri-short{
            relative{
                "-1"{"Gwener diwethaf"}
                "0"{"Gwener yma"}
                "1"{"Gwener nesaf"}
            }
        }
        hour{
            dn{"awr"}
            relativeTime{
                future{
                    few{"ymhen {0} awr"}
                    many{"ymhen {0} awr"}
                    one{"ymhen awr"}
                    other{"ymhen {0} awr"}
                    two{"ymhen {0} awr"}
                    zero{"ymhen {0} awr"}
                }
                past{
                    few{"{0} awr yn ôl"}
                    many{"{0} awr yn ôl"}
                    one{"awr yn ôl"}
                    other{"{0} awr yn ôl"}
                    two{"{0} awr yn ôl"}
                    zero{"{0} awr yn ôl"}
                }
            }
        }
        hour-narrow{
            dn{"awr"}
            relativeTime{
                future{
                    few{"ymhen {0} awr"}
                    many{"ymhen {0} awr"}
                    one{"ymhen awr"}
                    other{"ymhen {0} awr"}
                    two{"ymhen {0} awr"}
                    zero{"ymhen {0} awr"}
                }
                past{
                    few{"{0} awr yn ôl"}
                    many{"{0} awr yn ôl"}
                    one{"{0} awr yn ôl"}
                    other{"{0} awr yn ôl"}
                    two{"{0} awr yn ôl"}
                    zero{"{0} awr yn ôl"}
                }
            }
        }
        hour-short{
            dn{"awr"}
            relativeTime{
                future{
                    few{"ymhen {0} awr"}
                    many{"ymhen {0} awr"}
                    one{"ymhen awr"}
                    other{"ymhen {0} awr"}
                    two{"ymhen {0} awr"}
                    zero{"ymhen {0} awr"}
                }
                past{
                    few{"{0} awr yn ôl"}
                    many{"{0} awr yn ôl"}
                    one{"awr yn ôl"}
                    other{"{0} awr yn ôl"}
                    two{"{0} awr yn ôl"}
                    zero{"{0} awr yn ôl"}
                }
            }
        }
        minute{
            dn{"munud"}
            relativeTime{
                future{
                    few{"ymhen {0} munud"}
                    many{"ymhen {0} munud"}
                    one{"ymhen munud"}
                    other{"ymhen {0} munud"}
                    two{"ymhen {0} funud"}
                    zero{"ymhen {0} munud"}
                }
                past{
                    few{"{0} munud yn ôl"}
                    many{"{0} munud yn ôl"}
                    one{"{0} munud yn ôl"}
                    other{"{0} munud yn ôl"}
                    two{"{0} funud yn ôl"}
                    zero{"{0} munud yn ôl"}
                }
            }
        }
        minute-narrow{
            dn{"mun."}
            relativeTime{
                future{
                    few{"ymhen {0} mun."}
                    many{"ymhen {0} mun."}
                    one{"ymhen {0} mun."}
                    other{"ymhen {0} mun."}
                    two{"ymhen {0} fun."}
                    zero{"ymhen {0} mun."}
                }
                past{
                    few{"{0} mun. yn ôl"}
                    many{"{0} mun. yn ôl"}
                    one{"{0} mun. yn ôl"}
                    other{"{0} mun. yn ôl"}
                    two{"{0} fun. yn ôl"}
                    zero{"{0} mun. yn ôl"}
                }
            }
        }
        minute-short{
            dn{"mun."}
            relativeTime{
                future{
                    few{"ymhen {0} mun."}
                    many{"ymhen {0} mun."}
                    one{"ymhen {0} mun."}
                    other{"ymhen {0} mun."}
                    two{"ymhen {0} fun."}
                    zero{"ymhen {0} mun."}
                }
                past{
                    few{"{0} mun. yn ôl"}
                    many{"{0} mun. yn ôl"}
                    one{"{0} mun. yn ôl"}
                    other{"{0} mun. yn ôl"}
                    two{"{0} fun. yn ôl"}
                    zero{"{0} mun. yn ôl"}
                }
            }
        }
        mon{
            relative{
                "-1"{"dydd Llun diwethaf"}
                "0"{"dydd Llun yma"}
                "1"{"dydd Llun nesaf"}
            }
        }
        mon-narrow{
            relative{
                "-1"{"Llun diwethaf"}
                "0"{"Llun yma"}
                "1"{"Llun nesaf"}
            }
        }
        mon-short{
            relative{
                "-1"{"Llun diwethaf"}
                "0"{"Llun yma"}
                "1"{"Llun nesaf"}
            }
        }
        month{
            dn{"mis"}
            relative{
                "-1"{"mis diwethaf"}
                "0"{"y mis hwn"}
                "1"{"mis nesaf"}
            }
            relativeTime{
                future{
                    few{"ymhen {0} mis"}
                    many{"ymhen {0} mis"}
                    one{"ymhen mis"}
                    other{"ymhen {0} mis"}
                    two{"ymhen deufis"}
                    zero{"ymhen {0} mis"}
                }
                past{
                    few{"{0} mis yn ôl"}
                    many{"{0} mis yn ôl"}
                    one{"{0} mis yn ôl"}
                    other{"{0} mis yn ôl"}
                    two{"{0} fis yn ôl"}
                    zero{"{0} mis yn ôl"}
                }
            }
        }
        month-narrow{
            dn{"mis"}
            relativeTime{
                future{
                    few{"ymhen {0} mis"}
                    many{"ymhen {0} mis"}
                    one{"ymhen mis"}
                    other{"ymhen {0} mis"}
                    two{"ymhen deufis"}
                    zero{"ymhen {0} mis"}
                }
                past{
                    few{"{0} mis yn ôl"}
                    many{"{0} mis yn ôl"}
                    one{"{0} mis yn ôl"}
                    other{"{0} mis yn ôl"}
                    two{"{0} fis yn ôl"}
                    zero{"{0} mis yn ôl"}
                }
            }
        }
        month-short{
            dn{"mis"}
            relativeTime{
                future{
                    few{"ymhen {0} mis"}
                    many{"ymhen {0} mis"}
                    one{"ymhen mis"}
                    other{"ymhen {0} mis"}
                    two{"ymhen deufis"}
                    zero{"ymhen {0} mis"}
                }
                past{
                    few{"{0} mis yn ôl"}
                    many{"{0} mis yn ôl"}
                    one{"{0} mis yn ôl"}
                    other{"{0} mis yn ôl"}
                    two{"{0} mis yn ôl"}
                    zero{"{0} mis yn ôl"}
                }
            }
        }
        quarter{
            dn{"chwarter"}
            relativeTime{
                future{
                    few{"ymhen {0} chwarter"}
                    many{"ymhen {0} chwarter"}
                    one{"ymhen {0} chwarter"}
                    other{"ymhen {0} chwarter"}
                    two{"ymhen {0} chwarter"}
                    zero{"ymhen {0} o chwarteri"}
                }
                past{
                    few{"{0} chwarter yn ôl"}
                    many{"{0} chwarter yn ôl"}
                    one{"{0} chwarter yn ôl"}
                    other{"{0} o chwarteri yn ôl"}
                    two{"{0} chwarter yn ôl"}
                    zero{"{0} o chwarteri yn ôl"}
                }
            }
        }
        quarter-narrow{
            dn{"chwarter"}
            relativeTime{
                future{
                    few{"ymhen {0} chwarter"}
                    many{"ymhen {0} chwarter"}
                    one{"ymhen {0} chwarter"}
                    other{"ymhen {0} o chwarteri"}
                    two{"ymhen {0} chwarter"}
                    zero{"ymhen {0} o chwarteri"}
                }
                past{
                    few{"{0} chwarter yn ôl"}
                    many{"{0} chwarter yn ôl"}
                    one{"{0} chwarter yn ôl"}
                    other{"{0} o chwarteri yn ôl"}
                    two{"{0} chwarter yn ôl"}
                    zero{"{0} o chwarteri yn ôl"}
                }
            }
        }
        quarter-short{
            dn{"chwarter"}
            relativeTime{
                future{
                    few{"ymhen {0} o chwarteri"}
                    many{"ymhen {0} o chwarteri"}
                    one{"ymhen {0} o chwarteri"}
                    other{"ymhen {0} o chwarteri"}
                    two{"ymhen {0} o chwarteri"}
                    zero{"ymhen {0} o chwarteri"}
                }
                past{
                    few{"{0} chwarter yn ôl"}
                    many{"{0} chwarter yn ôl"}
                    one{"{0} chwarter yn ôl"}
                    other{"{0} o chwarteri yn ôl"}
                    two{"{0} chwarter yn ôl"}
                    zero{"{0} o chwarteri yn ôl"}
                }
            }
        }
        sat{
            relative{
                "-1"{"dydd Sadwrn diwethaf"}
                "0"{"dydd Sadwrn yma"}
                "1"{"dydd Sadwrn nesaf"}
            }
        }
        sat-narrow{
            relative{
                "-1"{"Sad. diwethaf"}
                "0"{"Sad. yma"}
                "1"{"Sad. nesaf"}
            }
        }
        sat-short{
            relative{
                "-1"{"Sadwrn diwethaf"}
                "0"{"Sadwrn yma"}
                "1"{"Sadwrn nesaf"}
            }
        }
        second{
            dn{"eiliad"}
            relative{
                "0"{"nawr"}
            }
            relativeTime{
                future{
                    few{"ymhen {0} eiliad"}
                    many{"ymhen {0} eiliad"}
                    one{"ymhen eiliad"}
                    other{"ymhen {0} eiliad"}
                    two{"ymhen {0} eiliad"}
                    zero{"ymhen {0} eiliad"}
                }
                past{
                    few{"{0} eiliad yn ôl"}
                    many{"{0} eiliad yn ôl"}
                    one{"eiliad yn ôl"}
                    other{"{0} eiliad yn ôl"}
                    two{"{0} eiliad yn ôl"}
                    zero{"{0} eiliad yn ôl"}
                }
            }
        }
        second-narrow{
            dn{"eiliad"}
            relativeTime{
                future{
                    few{"ymhen {0} eiliad"}
                    many{"ymhen {0} eiliad"}
                    one{"ymhen eiliad"}
                    other{"ymhen {0} eiliad"}
                    two{"ymhen {0} eiliad"}
                    zero{"ymhen {0} eiliad"}
                }
                past{
                    few{"{0} eiliad yn ôl"}
                    many{"{0} eiliad yn ôl"}
                    one{"{0} eiliad yn ôl"}
                    other{"{0} eiliad yn ôl"}
                    two{"{0} eiliad yn ôl"}
                    zero{"{0} eiliad yn ôl"}
                }
            }
        }
        second-short{
            dn{"eiliad"}
            relativeTime{
                future{
                    few{"ymhen {0} eiliad"}
                    many{"ymhen {0} eiliad"}
                    one{"ymhen eiliad"}
                    other{"ymhen {0} eiliad"}
                    two{"ymhen {0} eiliad"}
                    zero{"ymhen {0} eiliad"}
                }
                past{
                    few{"{0} eiliad yn ôl"}
                    many{"{0} eiliad yn ôl"}
                    one{"{0} eiliad yn ôl"}
                    other{"{0} eiliad yn ôl"}
                    two{"{0} eiliad yn ôl"}
                    zero{"{0} eiliad yn ôl"}
                }
            }
        }
        sun{
            relative{
                "-1"{"dydd Sul diwethaf"}
                "0"{"dydd Sul yma"}
                "1"{"dydd Sul nesaf"}
            }
        }
        sun-narrow{
            relative{
                "-1"{"Sul diwethaf"}
                "0"{"Sul yma"}
                "1"{"Sul nesaf"}
            }
        }
        sun-short{
            relative{
                "-1"{"Sul diwethaf"}
                "0"{"Sul yma"}
                "1"{"Sul nesaf"}
            }
        }
        thu{
            relative{
                "-1"{"dydd Iau diwethaf"}
                "0"{"dydd Iau yma"}
                "1"{"dydd Iau nesaf"}
            }
        }
        thu-narrow{
            relative{
                "-1"{"Iau diwethaf"}
                "0"{"Iau yma"}
                "1"{"Iau nesaf"}
            }
        }
        thu-short{
            relative{
                "-1"{"Iau diwethaf"}
                "0"{"Iau yma"}
                "1"{"Iau nesaf"}
            }
        }
        tue{
            relative{
                "-1"{"dydd Mawrth diwethaf"}
                "0"{"dydd Mawrth yma"}
                "1"{"dydd Mawrth nesaf"}
            }
        }
        tue-narrow{
            relative{
                "-1"{"Maw. diwethaf"}
                "0"{"Maw. yma"}
                "1"{"Maw. nesaf"}
            }
        }
        tue-short{
            relative{
                "-1"{"Mawrth diwethaf"}
                "0"{"Mawrth yma"}
                "1"{"Mawrth nesaf"}
            }
        }
        wed{
            relative{
                "-1"{"dydd Mercher diwethaf"}
                "0"{"dydd Mercher yma"}
                "1"{"dydd Mercher nesaf"}
            }
        }
        wed-narrow{
            relative{
                "-1"{"Merch. diwethaf"}
                "0"{"Merch. yma"}
                "1"{"Merch. nesaf"}
            }
        }
        wed-short{
            relative{
                "-1"{"Mercher diwethaf"}
                "0"{"Mercher yma"}
                "1"{"Mercher nesaf"}
            }
        }
        week{
            dn{"wythnos"}
            relative{
                "-1"{"wythnos ddiwethaf"}
                "0"{"yr wythnos hon"}
                "1"{"wythnos nesaf"}
            }
            relativeTime{
                future{
                    few{"ymhen {0} wythnos"}
                    many{"ymhen {0} wythnos"}
                    one{"ymhen wythnos"}
                    other{"ymhen {0} wythnos"}
                    two{"ymhen pythefnos"}
                    zero{"ymhen {0} wythnos"}
                }
                past{
                    few{"{0} wythnos yn ôl"}
                    many{"{0} wythnos yn ôl"}
                    one{"{0} wythnos yn ôl"}
                    other{"{0} wythnos yn ôl"}
                    two{"{0} wythnos yn ôl"}
                    zero{"{0} wythnos yn ôl"}
                }
            }
        }
        week-narrow{
            dn{"wythnos"}
            relativeTime{
                future{
                    few{"ymhen {0} wythnos"}
                    many{"ymhen {0} wythnos"}
                    one{"ymhen wythnos"}
                    other{"ymhen {0} wythnos"}
                    two{"ymhen pythefnos"}
                    zero{"ymhen {0} wythnos"}
                }
                past{
                    few{"{0} wythnos yn ôl"}
                    many{"{0} wythnos yn ôl"}
                    one{"{0} wythnos yn ôl"}
                    other{"{0} wythnos yn ôl"}
                    two{"pythefnos yn ôl"}
                    zero{"{0} wythnos yn ôl"}
                }
            }
        }
        week-short{
            dn{"wythnos"}
            relativeTime{
                future{
                    few{"ymhen {0} wythnos"}
                    many{"ymhen {0} wythnos"}
                    one{"ymhen wythnos"}
                    other{"ymhen {0} wythnos"}
                    two{"ymhen pythefnos"}
                    zero{"ymhen {0} wythnos"}
                }
                past{
                    few{"{0} wythnos yn ôl"}
                    many{"{0} wythnos yn ôl"}
                    one{"{0} wythnos yn ôl"}
                    other{"{0} wythnos yn ôl"}
                    two{"pythefnos yn ôl"}
                    zero{"{0} wythnos yn ôl"}
                }
            }
        }
        weekday{
            dn{"dydd o’r wythnos"}
        }
        year{
            dn{"blwyddyn"}
            relative{
                "-1"{"llynedd"}
                "0"{"eleni"}
                "1"{"blwyddyn nesaf"}
            }
            relativeTime{
                future{
                    few{"ymhen {0} blynedd"}
                    many{"ymhen {0} blynedd"}
                    one{"ymhen blwyddyn"}
                    other{"ymhen {0} mlynedd"}
                    two{"ymhen {0} flynedd"}
                    zero{"ymhen {0} mlynedd"}
                }
                past{
                    few{"{0} blynedd yn ôl"}
                    many{"{0} blynedd yn ôl"}
                    one{"blwyddyn yn ôl"}
                    other{"{0} o flynyddoedd yn ôl"}
                    two{"{0} flynedd yn ôl"}
                    zero{"{0} o flynyddoedd yn ôl"}
                }
            }
        }
        year-narrow{
            dn{"bl."}
            relativeTime{
                future{
                    few{"ymhen {0} blynedd"}
                    many{"ymhen {0} blynedd"}
                    one{"ymhen blwyddyn"}
                    other{"ymhen {0} mlynedd"}
                    two{"ymhen {0} flynedd"}
                    zero{"ymhen {0} mlynedd"}
                }
                past{
                    few{"{0} blynedd yn ôl"}
                    many{"{0} blynedd yn ôl"}
                    one{"blwyddyn yn ôl"}
                    other{"{0} o flynyddoedd yn ôl"}
                    two{"{0} flynedd yn ôl"}
                    zero{"{0} o flynyddoedd yn ôl"}
                }
            }
        }
        year-short{
            dn{"bl."}
            relativeTime{
                future{
                    few{"ymhen {0} blynedd"}
                    many{"ymhen {0} blynedd"}
                    one{"ymhen blwyddyn"}
                    other{"ymhen {0} mlynedd"}
                    two{"ymhen {0} flynedd"}
                    zero{"ymhen {0} mlynedd"}
                }
                past{
                    few{"{0} blynedd yn ôl"}
                    many{"{0} blynedd yn ôl"}
                    one{"blwyddyn yn ôl"}
                    other{"{0} o flynyddoedd yn ôl"}
                    two{"{0} flynedd yn ôl"}
                    zero{"{0} o flynyddoedd yn ôl"}
                }
            }
        }
        zone{
            dn{"Cylchfa Amser"}
        }
    }
    listPattern{
        standard{
            2{"{0}, {1}"}
            end{"{0}, {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{"DU"}
        US{"UDA"}
        metric{"Metrig"}
    }
}
