﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/cy.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <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 “ ” ( ) \\[ \\] § @ * / \\& # † ‡ ′ "
        "″]"
    }
    LocaleScript{
        "Latn",
    }
    MoreInformation{"?"}
    NumberElements{
        default{"latn"}
        latn{
            miscPatterns{
                atLeast{"{0}+"}
                range{"{0}-{1}"}
            }
            patterns{
                currencyFormat{"¤#,##0.00"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0%"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        few{"0 mil"}
                        many{"0 mil"}
                        one{"0 fil"}
                        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 filiwn"}
                        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{
                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"}
            }
        }
        native{"latn"}
    }
    Version{"2.1.7.80"}
    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} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E, d"}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, d MMM y G"}
                GyMMMd{"d MMM y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d/M"}
                MMM{"LLL"}
                MMMEd{"E, d MMM"}
                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"}
                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",
            }
            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}",
            }
            NoonMarker{"hanner dydd"}
            appendItems{
                Timezone{"{0} {1}"}
            }
            availableFormats{
                EHm{"E, HH:mm"}
                EHms{"E, HH:mm:ss"}
                Ed{"E, d"}
                Ehm{"E, h.mm a"}
                Ehms{"E, h.mm.ss a"}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, d MMM y G"}
                GyMMMd{"d MMM y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d/M"}
                MMM{"LLL"}
                MMMEd{"E, d MMM"}
                MMMd{"d MMM"}
                Md{"d/M"}
                d{"d"}
                h{"h a"}
                hm{"h.mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"y"}
                yM{"M/y"}
                yMEd{"E, d/M/y"}
                yMMM{"MMM y"}
                yMMMEd{"E, d MMM y"}
                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",
                }
                narrow{
                    "C",
                    "O",
                }
                wide{
                    "Cyn Crist",
                    "Oed Crist",
                }
            }
            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",
                        "Mawrth",
                        "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{"‘"}
    }
    durationUnits{
        hm{"h.mm"}
        hms{"h.mm.ss"}
        ms{"m.ss"}
    }
    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-short{
            relativeTime{
                past{
                    few{"{0} diwrnod yn ôl"}
                    many{"{0} diwrnod yn ôl"}
                    one{"{0} diwrnod yn ôl"}
                    other{"{0} diwrnod yn ôl"}
                    two{"{0} diwrnod 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"}
            }
        }
        hour{
            dn{"Awr"}
            relativeTime{
                future{
                    few{"Ymhen {0} awr"}
                    many{"Ymhen {0} awr"}
                    one{"Ymhen {0} 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"}
                }
            }
        }
        mon{
            relative{
                "-1"{"dydd Llun diwethaf"}
                "0"{"dydd Llun yma"}
                "1"{"dydd 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{
            relativeTime{
                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"}
                }
            }
        }
        month-short{
            relativeTime{
                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"}
                }
            }
        }
        sat{
            relative{
                "-1"{"dydd Sadwrn diwethaf"}
                "0"{"dydd Sadwrn yma"}
                "1"{"dydd 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"}
                }
            }
        }
        sun{
            relative{
                "-1"{"dydd Sul diwethaf"}
                "0"{"dydd Sul yma"}
                "1"{"dydd Sul nesaf"}
            }
        }
        thu{
            relative{
                "-1"{"dydd Iau diwethaf"}
                "0"{"dydd Iau yma"}
                "1"{"dydd Iau nesaf"}
            }
        }
        tue{
            relative{
                "-1"{"dydd Mawrth diwethaf"}
                "0"{"dydd Mawrth yma"}
                "1"{"dydd Mawrth nesaf"}
            }
        }
        wed{
            relative{
                "-1"{"dydd Mercher diwethaf"}
                "0"{"dydd Mercher yma"}
                "1"{"dydd 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"}
                }
            }
        }
        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"}
                }
            }
        }
        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-short{
            2{"{0}, {1}"}
            end{"{0}, {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"DU"}
        US{"UDA"}
        metric{"Metrig"}
    }
}
