﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/et.xml
// *
// ***************************************************************************
et{
    AuxExemplarCharacters{"[á à â å ā æ ç é è ê ë ē í ì î ï ī ñ ó ò ŏ ô ø ō œ ú ù û ū]"}
    Ellipsis{
        final{"{0}…"}
        initial{"…{0}"}
        medial{"{0} … {1}"}
        word-final{"{0} …"}
        word-initial{"… {0}"}
        word-medial{"{0} … {1}"}
    }
    ExemplarCharacters{"[a b c d e f g h i j k l m n o p q r s š z ž t u v w õ ä ö ü x y]"}
    ExemplarCharactersIndex{"[A B C D E F G H I J K L M N O P Q R S Š Z Ž T U V Õ Ä Ö Ü X Y]"}
    MoreInformation{"?"}
    NumberElements{
        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{
                        one{"0 tuhat"}
                        other{"0 tuhat"}
                    }
                    10000{
                        one{"00 tuhat"}
                        other{"00 tuhat"}
                    }
                    100000{
                        one{"000 tuhat"}
                        other{"000 tuhat"}
                    }
                    1000000{
                        one{"0 miljon"}
                        other{"0 miljonit"}
                    }
                    10000000{
                        one{"00 miljon"}
                        other{"00 miljonit"}
                    }
                    100000000{
                        one{"000 miljon"}
                        other{"000 miljonit"}
                    }
                    1000000000{
                        one{"0 miljard"}
                        other{"0 miljardit"}
                    }
                    10000000000{
                        one{"00 miljard"}
                        other{"00 miljardit"}
                    }
                    100000000000{
                        one{"000 miljard"}
                        other{"000 miljardit"}
                    }
                    1000000000000{
                        one{"0 triljon"}
                        other{"0 triljonit"}
                    }
                    10000000000000{
                        one{"00 triljon"}
                        other{"00 triljonit"}
                    }
                    100000000000000{
                        one{"000 triljon"}
                        other{"000 triljonit"}
                    }
                }
            }
            patternsShort{
                decimalFormat{
                    1000{
                        one{"0 tuh"}
                        other{"0 tuh"}
                    }
                    10000{
                        one{"00 tuh"}
                        other{"00 tuh"}
                    }
                    100000{
                        one{"000 tuh"}
                        other{"000 tuh"}
                    }
                    1000000{
                        one{"0 mln"}
                        other{"0 mln"}
                    }
                    10000000{
                        one{"00 mln"}
                        other{"00 mln"}
                    }
                    100000000{
                        one{"000 mln"}
                        other{"000 mln"}
                    }
                    1000000000{
                        one{"0 mld"}
                        other{"0 mld"}
                    }
                    10000000000{
                        one{"00 mld"}
                        other{"00 mld"}
                    }
                    100000000000{
                        one{"000 mld"}
                        other{"000 mld"}
                    }
                    1000000000000{
                        one{"0 trl"}
                        other{"0 trl"}
                    }
                    10000000000000{
                        one{"00 trl"}
                        other{"00 trl"}
                    }
                    100000000000000{
                        one{"000 trl"}
                        other{"000 trl"}
                    }
                }
            }
            symbols{
                decimal{","}
                exponential{"×10^"}
                group{" "}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
                timeSeparator{"."}
            }
        }
        minimumGroupingDigits{"3"}
        native{"latn"}
    }
    Version{"2.1.16.1"}
    calendar{
        generic{
            DateTimePatterns{
                "H:mm.ss zzzz",
                "H:mm.ss z",
                "H:mm.ss",
                "H:mm",
                "EEEE, d. MMMM y G",
                "d. MMMM y G",
                "dd.MM.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. MMMM y G"}
                GyMMMd{"d. MMM y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"H:mm.ss"}
                M{"M"}
                MEd{"E, d.M"}
                MMM{"MMMM"}
                MMMEd{"E, d. MMM"}
                MMMMEd{"E, d. MMMM"}
                MMMMd{"d. MMMM"}
                MMMd{"d. MMM"}
                Md{"d.M"}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm.ss a"}
                mmss{"mm.ss"}
                ms{"mm.ss"}
                y{"y G"}
                yyyy{"y G"}
                yyyyM{"M.y G"}
                yyyyMEd{"E, d.M y G"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E, d. MMMM y G"}
                yyyyMMMM{"MMMM 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, dd.MM–E, dd.MM"}
                    d{"E, dd.MM–E, dd.MM"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, d. MMM–E, d. MMM"}
                    d{"E, d. MMM–E, d. MMM"}
                }
                MMMd{
                    M{"d. MMM–d. MMM"}
                    d{"d.–d. MMM"}
                }
                Md{
                    M{"dd.MM–dd.MM"}
                    d{"dd.MM–dd.MM"}
                }
                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{"MM.y–MM.y G"}
                    y{"MM.y–MM.y G"}
                }
                yMEd{
                    M{"E, dd.MM.y–E, dd.MM.y G"}
                    d{"E, dd.MM.y–E, dd.MM.y G"}
                    y{"E, dd.MM.y–E, dd.MM.y G"}
                }
                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{"dd.MM.y–dd.MM.y G"}
                    d{"dd.MM.y–dd.MM.y G"}
                    y{"dd.MM.y–dd.MM.y G"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "AM",
                "PM",
            }
            AmPmMarkersAbbr{
                "AM",
                "PM",
            }
            AmPmMarkersNarrow{
                "a",
                "p",
            }
            DateTimePatterns{
                "H:mm.ss zzzz",
                "H:mm.ss z",
                "H:mm.ss",
                "H:mm",
                "EEEE, d. MMMM y",
                "d. MMMM y",
                "d. MMM y",
                "dd.MM.yy",
                "{1} {0}",
                "{1} {0}",
                "{1} {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. MMMM y G"}
                GyMMMd{"d. MMM y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"H:mm.ss"}
                M{"M"}
                MEd{"E, d.M"}
                MMM{"MMMM"}
                MMMEd{"E, d. MMM"}
                MMMMEd{"E, d. MMMM"}
                MMMMd{"d. MMMM"}
                MMMd{"d. MMM"}
                Md{"d.M"}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm.ss a"}
                mmss{"mm.ss"}
                ms{"mm.ss"}
                y{"y"}
                yM{"M.y"}
                yMEd{"E, d.M y"}
                yMMM{"MMM y"}
                yMMMEd{"E, d. MMMM y"}
                yMMMM{"MMMM y"}
                yMMMd{"d. MMM y"}
                yMd{"d.M.y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "P",
                        "E",
                        "T",
                        "K",
                        "N",
                        "R",
                        "L",
                    }
                    narrow{
                        "P",
                        "E",
                        "T",
                        "K",
                        "N",
                        "R",
                        "L",
                    }
                    short{
                        "P",
                        "E",
                        "T",
                        "K",
                        "N",
                        "R",
                        "L",
                    }
                    wide{
                        "pühapäev",
                        "esmaspäev",
                        "teisipäev",
                        "kolmapäev",
                        "neljapäev",
                        "reede",
                        "laupäev",
                    }
                }
                stand-alone{
                    abbreviated{
                        "P",
                        "E",
                        "T",
                        "K",
                        "N",
                        "R",
                        "L",
                    }
                    narrow{
                        "P",
                        "E",
                        "T",
                        "K",
                        "N",
                        "R",
                        "L",
                    }
                    short{
                        "P",
                        "E",
                        "T",
                        "K",
                        "N",
                        "R",
                        "L",
                    }
                    wide{
                        "pühapäev",
                        "esmaspäev",
                        "teisipäev",
                        "kolmapäev",
                        "neljapäev",
                        "reede",
                        "laupäev",
                    }
                }
            }
            dayPeriod{
                format{
                    narrow{
                        noon{"n"}
                    }
                    wide{
                        noon{"keskpäev"}
                    }
                }
                stand-alone{
                    wide{
                        afternoon1{"pärastlõuna"}
                        evening1{"õhtu"}
                        midnight{"kesköö"}
                        morning1{"hommik"}
                        night1{"öö"}
                        noon{"keskpäev"}
                    }
                }
            }
            eras{
                abbreviated{
                    "e.m.a.",
                    "m.a.j.",
                }
                abbreviated%variant{
                    "EMA",
                    "MA",
                }
                narrow{
                    "e.m.a.",
                    "m.a.j.",
                }
                narrow%variant{
                    "EMA",
                    "MA",
                }
                wide{
                    "enne meie aega",
                    "meie aja järgi",
                }
                wide%variant{
                    "enne meie ajaarvamist",
                    "meie ajaarvamise järgi",
                }
            }
            intervalFormats{
                H{
                    H{"HH–HH"}
                }
                Hm{
                    H{"HH.mm–HH.mm"}
                    m{"HH.mm–HH.mm"}
                }
                Hmv{
                    H{"HH.mm–HH.mm v"}
                    m{"HH:mm–HH:mm v"}
                }
                Hv{
                    H{"HH–HH v"}
                }
                M{
                    M{"MM–MM"}
                }
                MEd{
                    M{"E, dd.MM–E, dd.MM"}
                    d{"E, dd.MM–E, dd.MM"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, d. MMM–E, d. MMM"}
                    d{"E, d. MMM–E, d. MMM"}
                }
                MMMd{
                    M{"d. MMM–d. MMM"}
                    d{"d.–d. MMM"}
                }
                Md{
                    M{"dd.MM–dd.MM"}
                    d{"dd.MM–dd.MM"}
                }
                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{"MM.y–MM.y"}
                    y{"MM.y–MM.y"}
                }
                yMEd{
                    M{"E, dd.MM.y–E, dd.MM.y"}
                    d{"E, dd.MM.y–E, dd.MM.y"}
                    y{"E, dd.MM.y–E, dd.MM.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{"dd.MM.y–dd.MM.y"}
                    d{"dd.MM.y–dd.MM.y"}
                    y{"dd.MM.y–dd.MM.y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "jaan",
                        "veebr",
                        "märts",
                        "apr",
                        "mai",
                        "juuni",
                        "juuli",
                        "aug",
                        "sept",
                        "okt",
                        "nov",
                        "dets",
                    }
                    narrow{
                        "J",
                        "V",
                        "M",
                        "A",
                        "M",
                        "J",
                        "J",
                        "A",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                    wide{
                        "jaanuar",
                        "veebruar",
                        "märts",
                        "aprill",
                        "mai",
                        "juuni",
                        "juuli",
                        "august",
                        "september",
                        "oktoober",
                        "november",
                        "detsember",
                    }
                }
                stand-alone{
                    abbreviated{
                        "jaan",
                        "veebr",
                        "märts",
                        "apr",
                        "mai",
                        "juuni",
                        "juuli",
                        "aug",
                        "sept",
                        "okt",
                        "nov",
                        "dets",
                    }
                    narrow{
                        "J",
                        "V",
                        "M",
                        "A",
                        "M",
                        "J",
                        "J",
                        "A",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                    wide{
                        "jaanuar",
                        "veebruar",
                        "märts",
                        "aprill",
                        "mai",
                        "juuni",
                        "juuli",
                        "august",
                        "september",
                        "oktoober",
                        "november",
                        "detsember",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "K1",
                        "K2",
                        "K3",
                        "K4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1. kvartal",
                        "2. kvartal",
                        "3. kvartal",
                        "4. kvartal",
                    }
                }
                stand-alone{
                    abbreviated{
                        "K1",
                        "K2",
                        "K3",
                        "K4",
                    }
                    narrow{
                        "1.",
                        "2.",
                        "3.",
                        "4.",
                    }
                    wide{
                        "1. kvartal",
                        "2. kvartal",
                        "3. kvartal",
                        "4. kvartal",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"‘"}
        alternateQuotationStart{"‚"}
        quotationEnd{"“"}
        quotationStart{"„"}
    }
    fields{
        day{
            dn{"päev"}
            relative{
                "-1"{"eile"}
                "-2"{"üleeile"}
                "0"{"täna"}
                "1"{"homme"}
                "2"{"ülehomme"}
            }
            relativeTime{
                future{
                    one{"{0} päeva pärast"}
                    other{"{0} päeva pärast"}
                }
                past{
                    one{"{0} päeva eest"}
                    other{"{0} päeva eest"}
                }
            }
        }
        day-narrow{
            dn{"p"}
            relativeTime{
                future{
                    one{"{0} p pärast"}
                    other{"{0} p pärast"}
                }
                past{
                    one{"{0} p tagasi"}
                    other{"{0} p tagasi"}
                }
            }
        }
        day-short{
            dn{"p"}
            relativeTime{
                future{
                    one{"{0} p pärast"}
                    other{"{0} p pärast"}
                }
                past{
                    one{"{0} p tagasi"}
                    other{"{0} p tagasi"}
                }
            }
        }
        dayperiod{
            dn{"enne/pärast lõunat"}
        }
        era{
            dn{"ajastu"}
        }
        fri{
            relative{
                "-1"{"eelmine reede"}
                "0"{"käesolev reede"}
                "1"{"järgmine reede"}
            }
        }
        fri-narrow{
            relative{
                "-1"{"eelmine reede"}
                "0"{"käesolev reede"}
                "1"{"järgmine reede"}
            }
        }
        fri-short{
            relative{
                "-1"{"eelmine reede"}
                "0"{"käesolev reede"}
                "1"{"järgmine reede"}
            }
        }
        hour{
            dn{"tund"}
            relativeTime{
                future{
                    one{"{0} tunni pärast"}
                    other{"{0} tunni pärast"}
                }
                past{
                    one{"{0} tunni eest"}
                    other{"{0} tunni eest"}
                }
            }
        }
        hour-narrow{
            dn{"t"}
            relativeTime{
                future{
                    one{"{0} h pärast"}
                    other{"{0} h pärast"}
                }
                past{
                    one{"{0} h tagasi"}
                    other{"{0} h tagasi"}
                }
            }
        }
        hour-short{
            dn{"t"}
            relativeTime{
                future{
                    one{"{0} h pärast"}
                    other{"{0} h pärast"}
                }
                past{
                    one{"{0} h tagasi"}
                    other{"{0} h tagasi"}
                }
            }
        }
        minute{
            dn{"minut"}
            relativeTime{
                future{
                    one{"{0} minuti pärast"}
                    other{"{0} minuti pärast"}
                }
                past{
                    one{"{0} minuti eest"}
                    other{"{0} minuti eest"}
                }
            }
        }
        minute-narrow{
            dn{"min"}
            relativeTime{
                future{
                    one{"{0} min pärast"}
                    other{"{0} min pärast"}
                }
                past{
                    one{"{0} min tagasi"}
                    other{"{0} min tagasi"}
                }
            }
        }
        minute-short{
            dn{"min"}
            relativeTime{
                future{
                    one{"{0} min pärast"}
                    other{"{0} min pärast"}
                }
                past{
                    one{"{0} min tagasi"}
                    other{"{0} min tagasi"}
                }
            }
        }
        mon{
            relative{
                "-1"{"eelmine esmaspäev"}
                "0"{"käesolev esmaspäev"}
                "1"{"järgmine esmaspäev"}
            }
        }
        mon-narrow{
            relative{
                "-1"{"eelmine esmaspäev"}
                "0"{"käesolev esmaspäev"}
                "1"{"järgmine esmaspäev"}
            }
        }
        mon-short{
            relative{
                "-1"{"eelmine esmaspäev"}
                "0"{"käesolev esmaspäev"}
                "1"{"järgmine esmaspäev"}
            }
        }
        month{
            dn{"kuu"}
            relative{
                "-1"{"eelmine kuu"}
                "0"{"käesolev kuu"}
                "1"{"järgmine kuu"}
            }
            relativeTime{
                future{
                    one{"{0} kuu pärast"}
                    other{"{0} kuu pärast"}
                }
                past{
                    one{"{0} kuu eest"}
                    other{"{0} kuu eest"}
                }
            }
        }
        month-narrow{
            dn{"k"}
            relativeTime{
                future{
                    one{"{0} kuu pärast"}
                    other{"{0} kuu pärast"}
                }
                past{
                    one{"{0} kuu eest"}
                    other{"{0} kuu eest"}
                }
            }
        }
        month-short{
            dn{"k"}
            relativeTime{
                future{
                    one{"{0} kuu pärast"}
                    other{"{0} kuu pärast"}
                }
                past{
                    one{"{0} kuu eest"}
                    other{"{0} kuu eest"}
                }
            }
        }
        quarter{
            dn{"Kvartal"}
            relativeTime{
                future{
                    one{"{0} kvartali pärast"}
                    other{"{0} kvartali pärast"}
                }
                past{
                    one{"{0} kvartali eest"}
                    other{"{0} kvartali eest"}
                }
            }
        }
        quarter-narrow{
            dn{"kv"}
            relativeTime{
                future{
                    one{"+{0} kv"}
                    other{"+{0} kv"}
                }
                past{
                    one{"-{0} kv"}
                    other{"-{0} kv"}
                }
            }
        }
        quarter-short{
            dn{"kv"}
            relativeTime{
                future{
                    one{"{0} kv pärast"}
                    other{"{0} kv pärast"}
                }
                past{
                    one{"{0} kv eest"}
                    other{"{0} kv eest"}
                }
            }
        }
        sat{
            relative{
                "-1"{"eelmine laupäev"}
                "0"{"käesolev laupäev"}
                "1"{"järgmine laupäev"}
            }
        }
        sat-narrow{
            relative{
                "-1"{"eelmine laupäev"}
                "0"{"käesolev laupäev"}
                "1"{"järgmine laupäev"}
            }
        }
        sat-short{
            relative{
                "-1"{"eelmine laupäev"}
                "0"{"käesolev laupäev"}
                "1"{"järgmine laupäev"}
            }
        }
        second{
            dn{"sekund"}
            relative{
                "0"{"nüüd"}
            }
            relativeTime{
                future{
                    one{"{0} sekundi pärast"}
                    other{"{0} sekundi pärast"}
                }
                past{
                    one{"{0} sekundi eest"}
                    other{"{0} sekundi eest"}
                }
            }
        }
        second-narrow{
            dn{"s"}
            relativeTime{
                future{
                    one{"{0} s pärast"}
                    other{"{0} s pärast"}
                }
                past{
                    one{"{0} s tagasi"}
                    other{"{0} s tagasi"}
                }
            }
        }
        second-short{
            dn{"sek"}
            relativeTime{
                future{
                    one{"{0} s pärast"}
                    other{"{0} s pärast"}
                }
                past{
                    one{"{0} s tagasi"}
                    other{"{0} s tagasi"}
                }
            }
        }
        sun{
            relative{
                "-1"{"eelmine pühapäev"}
                "0"{"käesolev pühapäev"}
                "1"{"järgmine pühapäev"}
            }
        }
        sun-narrow{
            relative{
                "-1"{"eelmine pühapäev"}
                "0"{"käesolev pühapäev"}
                "1"{"järgmine pühapäev"}
            }
        }
        sun-short{
            relative{
                "-1"{"eelmine pühapäev"}
                "0"{"käesolev pühapäev"}
                "1"{"järgmine pühapäev"}
            }
        }
        thu{
            relative{
                "-1"{"eelmine neljapäev"}
                "0"{"käesolev neljapäev"}
                "1"{"järgmine neljapäev"}
            }
        }
        thu-narrow{
            relative{
                "-1"{"eelmine neljapäev"}
                "0"{"käesolev neljapäev"}
                "1"{"järgmine neljapäev"}
            }
        }
        thu-short{
            relative{
                "-1"{"eelmine neljapäev"}
                "0"{"käesolev neljapäev"}
                "1"{"järgmine neljapäev"}
            }
        }
        tue{
            relative{
                "-1"{"eelmine teisipäev"}
                "0"{"käesolev teisipäev"}
                "1"{"järgmine teisipäev"}
            }
        }
        tue-narrow{
            relative{
                "-1"{"eelmine teisipäev"}
                "0"{"käesolev teisipäev"}
                "1"{"järgmine teisipäev"}
            }
        }
        tue-short{
            relative{
                "-1"{"eelmine teisipäev"}
                "0"{"käesolev teisipäev"}
                "1"{"järgmine teisipäev"}
            }
        }
        wed{
            relative{
                "-1"{"eelmine kolmapäev"}
                "0"{"käesolev kolmapäev"}
                "1"{"järgmine kolmapäev"}
            }
        }
        wed-narrow{
            relative{
                "-1"{"eelmine kolmapäev"}
                "0"{"käesolev kolmapäev"}
                "1"{"järgmine kolmapäev"}
            }
        }
        wed-short{
            relative{
                "-1"{"eelmine kolmapäev"}
                "0"{"käesolev kolmapäev"}
                "1"{"järgmine kolmapäev"}
            }
        }
        week{
            dn{"nädal"}
            relative{
                "-1"{"eelmine nädal"}
                "0"{"käesolev nädal"}
                "1"{"järgmine nädal"}
            }
            relativeTime{
                future{
                    one{"{0} nädala pärast"}
                    other{"{0} nädala pärast"}
                }
                past{
                    one{"{0} nädala eest"}
                    other{"{0} nädala eest"}
                }
            }
        }
        week-narrow{
            dn{"näd"}
            relativeTime{
                future{
                    one{"{0} nädala pärast"}
                    other{"{0} nädala pärast"}
                }
                past{
                    one{"{0} nädala eest"}
                    other{"{0} nädala eest"}
                }
            }
        }
        week-short{
            dn{"näd"}
            relativeTime{
                future{
                    one{"{0} nädala pärast"}
                    other{"{0} nädala pärast"}
                }
                past{
                    one{"{0} nädala eest"}
                    other{"{0} nädala eest"}
                }
            }
        }
        weekday{
            dn{"nädalapäev"}
        }
        year{
            dn{"aasta"}
            relative{
                "-1"{"eelmine aasta"}
                "0"{"käesolev aasta"}
                "1"{"järgmine aasta"}
            }
            relativeTime{
                future{
                    one{"{0} aasta pärast"}
                    other{"{0} aasta pärast"}
                }
                past{
                    one{"{0} aasta eest"}
                    other{"{0} aasta eest"}
                }
            }
        }
        year-narrow{
            dn{"a"}
            relativeTime{
                future{
                    one{"{0} aasta pärast"}
                    other{"{0} aasta pärast"}
                }
                past{
                    one{"{0} aasta eest"}
                    other{"{0} aasta eest"}
                }
            }
        }
        year-short{
            dn{"a"}
            relativeTime{
                future{
                    one{"{0} aasta pärast"}
                    other{"{0} aasta pärast"}
                }
                past{
                    one{"{0} aasta eest"}
                    other{"{0} aasta eest"}
                }
            }
        }
        zone{
            dn{"ajavöönd"}
        }
    }
    listPattern{
        standard{
            2{"{0} ja {1}"}
            end{"{0} ja {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{"inglise mõõdustik"}
        US{"inglise mõõdustik"}
        metric{"meetermõõdustik"}
    }
    transformNames{
        BGN{"BGN"}
        Numeric{"Numbriline"}
        Tone{"Toon"}
        UNGEGN{"UNGEGN"}
        x-Accents{"Aktsendid"}
        x-Fullwidth{"Täislai"}
        x-Halfwidth{"Poolaius"}
        x-Jamo{"Jamo"}
        x-Pinyin{"Pinyin"}
        x-Publishing{"Kirjastamine"}
    }
}
