﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/te.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/te.xml
 */
te{
    AuxExemplarCharacters{"[\u200C\u200D ౦ ౧ ౨ ౩ ౪ ౫ ౬ ౭ ౮ ౯]"}
    ExemplarCharacters{
        "[అ ఆ ఇ ఈ ఉ ఊ ఋ ౠ ఌ ౡ ఎ ఏ ఐ ఒ ఓ ఔ ఁ ం ః క ఖ గ ఘ ఙ చ ఛ జ ఝ ఞ ట ఠ డ ఢ ణ త థ ద ధ"
        " న ప ఫ బ భ మ య ర ఱ ల వ శ ష స హ ళ \u0C3E \u0C3F \u0C40 ు ూ ృ ౄ \u0C46 \u0C47 "
        "\u0C48 \u0C4A \u0C4B \u0C4C \u0C4D \u0C55 \u0C56]"
    }
    ExemplarCharactersIndex{
        "[అ ఆ ఇ ఈ ఉ ఊ ఋ ౠ ఎ ఏ ఐ ఒ ఓ ఔ క ఖ గ ఘ ఙ చ ఛ జ ఝ ఞ ట ఠ డ ఢ ణ త థ ద ధ న ప ఫ బ భ"
        " మ య ర ఱ ల వ శ ష స హ ళ]"
    }
    LocaleScript{
        "Telu",
    }
    NumberElements{
        default{"latn"}
        latn{
            patterns{
                currencyFormat{"¤#,##0.00;(¤#,##0.00)"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0%"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        one{"0 వేయి"}
                        other{"0 వేలు"}
                    }
                    10000{
                        one{"00 వేలు"}
                        other{"00 వేలు"}
                    }
                    100000{
                        one{"000 వేలు"}
                        other{"000 వేలు"}
                    }
                    1000000{
                        one{"0 మిలియన్"}
                        other{"0 మిలియన్"}
                    }
                    10000000{
                        one{"00 మిలియన్"}
                        other{"00 మిలియన్"}
                    }
                    100000000{
                        one{"000 మిలియన్"}
                        other{"000 మిలియన్"}
                    }
                    1000000000{
                        one{"0 బిలియన్"}
                        other{"0 బిలియన్"}
                    }
                    10000000000{
                        one{"00 బిలియన్"}
                        other{"00 బిలియన్"}
                    }
                    100000000000{
                        one{"000 బిలియన్"}
                        other{"000 బిలియన్"}
                    }
                    1000000000000{
                        one{"0 ట్రిలియన్"}
                        other{"0 ట్రిలియన్"}
                    }
                    10000000000000{
                        one{"00 ట్రిలియన్"}
                        other{"00 ట్రిలియన్"}
                    }
                    100000000000000{
                        one{"000 ట్రిలియన్"}
                        other{"000 ట్రిలియన్"}
                    }
                }
            }
            patternsShort{
                decimalFormat{
                    1000{
                        one{"0K"}
                        other{"0K"}
                    }
                    10000{
                        one{"00K"}
                        other{"00K"}
                    }
                    100000{
                        one{"000K"}
                        other{"000K"}
                    }
                    1000000{
                        one{"0M"}
                        other{"0M"}
                    }
                    10000000{
                        one{"00M"}
                        other{"00M"}
                    }
                    100000000{
                        one{"000M"}
                        other{"000M"}
                    }
                    1000000000{
                        one{"0B"}
                        other{"0B"}
                    }
                    10000000000{
                        one{"00B"}
                        other{"00B"}
                    }
                    100000000000{
                        one{"000B"}
                        other{"000B"}
                    }
                    1000000000000{
                        one{"0T"}
                        other{"0T"}
                    }
                    10000000000000{
                        one{"00T"}
                        other{"00T"}
                    }
                    100000000000000{
                        one{"000T"}
                        other{"000T"}
                    }
                }
            }
            symbols{
                decimal{"."}
                exponential{"E"}
                group{","}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
            }
        }
        native{"telu"}
    }
    Version{"2.0.82.45"}
    calendar{
        generic{
            DateTimePatterns{
                "h:mm:ss a zzzz",
                "h:mm:ss a z",
                "h:mm:ss a",
                "h:mm a",
                "EEEE d MMMM y G",
                "d MMMM y G",
                "d MMM y G",
                "dd-MM-yy GGGGG",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E d"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d/M"}
                MMM{"LLL"}
                MMMEd{"E, d MMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                MMdd{"dd-MM"}
                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"}
                yMM{"MM-y"}
                yMMM{"MMM y"}
                yMMMEd{"E, d, MMM y"}
                yMMMM{"MMMM y"}
                yMMMd{"d, MMM y"}
                yMd{"d/M/y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            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"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                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"}
                }
                yMMM{
                    M{"MMM–MMM y"}
                    y{"MMM y – MMM y"}
                }
                yMMMM{
                    M{"MMMM–MMMM y"}
                    y{"MMMM y – MMMM y"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "AM",
                "PM",
            }
            DateTimePatterns{
                "h:mm:ss a zzzz",
                "h:mm:ss a z",
                "h:mm:ss a",
                "h:mm a",
                "EEEE d MMMM y",
                "d MMMM y",
                "d MMM y",
                "dd-MM-yy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E d"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d/M"}
                MMM{"LLL"}
                MMMEd{"E, d MMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                MMdd{"dd-MM"}
                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"}
                yMM{"MM-y"}
                yMMM{"MMM y"}
                yMMMEd{"E, d, MMM y"}
                yMMMM{"MMMM y"}
                yMMMd{"d, MMM y"}
                yMd{"d/M/y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "ఆది",
                        "సోమ",
                        "మంగళ",
                        "బుధ",
                        "గురు",
                        "శుక్ర",
                        "శని",
                    }
                    narrow{
                        "ఆ",
                        "సో",
                        "మ",
                        "బు",
                        "గు",
                        "శు",
                        "శ",
                    }
                    short{
                        "ఆది",
                        "సోమ",
                        "మం",
                        "బుధ",
                        "గురు",
                        "శుక్ర",
                        "శని",
                    }
                    wide{
                        "ఆదివారం",
                        "సోమవారం",
                        "మంగళవారం",
                        "బుధవారం",
                        "గురువారం",
                        "శుక్రవారం",
                        "శనివారం",
                    }
                }
                stand-alone{
                    abbreviated{
                        "ఆది",
                        "సోమ",
                        "మంగళ",
                        "బుధ",
                        "గురు",
                        "శుక్ర",
                        "శని",
                    }
                    narrow{
                        "ఆ",
                        "సో",
                        "మ",
                        "బు",
                        "గు",
                        "శు",
                        "శ",
                    }
                    short{
                        "ఆది",
                        "సోమ",
                        "మం",
                        "బుధ",
                        "గురు",
                        "శుక్ర",
                        "శని",
                    }
                    wide{
                        "ఆదివారం",
                        "సోమవారం",
                        "మంగళవారం",
                        "బుధవారం",
                        "గురువారం",
                        "శుక్రవారం",
                        "శనివారం",
                    }
                }
            }
            eras{
                abbreviated{
                    "క్రీపూ",
                    "క్రీశ",
                }
                narrow{
                    "ఈసాపూర్వ.",
                    "సన్.",
                }
                wide{
                    "ఈసాపూర్వ.",
                    "సన్.",
                }
            }
            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"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                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"}
                }
                yMMM{
                    M{"MMM–MMM y"}
                    y{"MMM y – MMM y"}
                }
                yMMMM{
                    M{"MMMM–MMMM y"}
                    y{"MMMM y – MMMM y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "జన",
                        "ఫిబ్ర",
                        "మార్చి",
                        "ఏప్రి",
                        "మే",
                        "జూన్",
                        "జూలై",
                        "ఆగస్టు",
                        "సెప్టెంబర్",
                        "అక్టోబర్",
                        "నవంబర్",
                        "డిసెంబర్",
                    }
                    narrow{
                        "జ",
                        "ఫి",
                        "మా",
                        "ఏ",
                        "మే",
                        "జూ",
                        "జు",
                        "ఆ",
                        "సె",
                        "అ",
                        "న",
                        "డి",
                    }
                    wide{
                        "జనవరి",
                        "ఫిబ్రవరి",
                        "మార్చి",
                        "ఎప్రిల్",
                        "మే",
                        "జూన్",
                        "జూలై",
                        "ఆగస్టు",
                        "సెప్టెంబర్",
                        "అక్టోబర్",
                        "నవంబర్",
                        "డిసెంబర్",
                    }
                }
                stand-alone{
                    abbreviated{
                        "జన",
                        "ఫిబ్ర",
                        "మార్చి",
                        "ఏప్రి",
                        "మే",
                        "జూన్",
                        "జూలై",
                        "ఆగస్టు",
                        "సెప్టెం",
                        "అక్టో",
                        "నవం",
                        "డిసెం",
                    }
                    narrow{
                        "జ",
                        "ఫి",
                        "మా",
                        "ఏ",
                        "మే",
                        "జు",
                        "జు",
                        "ఆ",
                        "సె",
                        "అ",
                        "న",
                        "డి",
                    }
                    wide{
                        "జనవరి",
                        "ఫిబ్రవరి",
                        "మార్చి",
                        "ఎప్రిల్",
                        "మే",
                        "జూన్",
                        "జూలై",
                        "ఆగస్టు",
                        "సెప్టెంబర్",
                        "అక్టోబర్",
                        "నవంబర్",
                        "డిసెంబర్",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "త్రై1",
                        "త్రై2",
                        "త్రై3",
                        "త్రై4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1వ త్రైమాసం",
                        "2వ త్రైమాసం",
                        "3వ త్రైమాసం",
                        "4వ త్రైమాసం",
                    }
                }
                stand-alone{
                    abbreviated{
                        "త్రై1",
                        "త్రై2",
                        "త్రై3",
                        "త్రై4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "మొదటి త్రైమాసికం",
                        "రెండవ త్రైమాసికం",
                        "మూడవ త్రైమాసికం",
                        "నాల్గవ త్రైమాసికం",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"’"}
        alternateQuotationStart{"‘"}
        quotationEnd{"”"}
        quotationStart{"“"}
    }
    fields{
        day{
            dn{"దినం"}
            relative{
                "-1"{"నిన్న"}
                "-2"{"మొన్న"}
                "0"{"ఈ రోజు"}
                "1"{"రేపు"}
                "2"{"ఎల్లుండి"}
            }
        }
        dayperiod{
            dn{"AM/PM"}
        }
        era{
            dn{"యుగం, శకము"}
        }
        hour{
            dn{"గంట"}
        }
        minute{
            dn{"నిమిషము"}
        }
        month{
            dn{"నెల"}
            relative{
                "-1"{"గత నెల"}
                "0"{"ఈ నెల"}
                "1"{"తర్వాతి నెల"}
            }
        }
        second{
            dn{"క్షణం"}
        }
        week{
            dn{"వారము"}
            relative{
                "-1"{"గత వారం"}
                "0"{"ఈ వారం"}
                "1"{"తదుపరి వారం"}
            }
        }
        weekday{
            dn{"వారంలో రోజు"}
        }
        year{
            dn{"సంవత్సరం"}
            relative{
                "-1"{"మునుపటి సంవత్సరం"}
                "0"{"ఈ సంవత్సరం"}
                "1"{"తర్వాతి సంవత్సరం"}
            }
        }
        zone{
            dn{"మండలం"}
        }
    }
    listPattern{
        standard{
            2{"{0} మరియు {1}"}
            end{"{0} మరియు {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"యుకె"}
        US{"యుఎస్"}
        metric{"దశాంశం"}
    }
    units{
        day{
            one{"{0} రోజు"}
            other{"{0} days"}
        }
        day-future{
            one{"{0} రోజులో"}
            other{"{0} రోజుల్లో"}
        }
        day-past{
            one{"{0} రోజు క్రితం"}
            other{"{0} రోజుల క్రితం"}
        }
        hour{
            one{"{0} గంట"}
            other{"{0} గంటలు"}
        }
        hour-future{
            one{"{0} గంటలో"}
            other{"{0} గంటల్లో"}
        }
        hour-past{
            one{"{0} గంట క్రితం"}
            other{"{0} గంటల క్రితం"}
        }
        minute{
            one{"{0} నిమిషం"}
            other{"{0} నిమిషాలు"}
        }
        minute-future{
            one{"{0} నిమిషంలో"}
            other{"{0} నిమిషాల్లో"}
        }
        minute-past{
            one{"{0} నిమిషం క్రితం"}
            other{"{0} నిమిషాల క్రితం"}
        }
        month{
            one{"{0} నెల"}
            other{"{0} నెలలు"}
        }
        month-future{
            one{"{0} నెలలో"}
            other{"{0} నెలల్లో"}
        }
        month-past{
            one{"{0} నెల క్రితం"}
            other{"{0} నెలల క్రితం"}
        }
        second{
            one{"{0} సెకను"}
            other{"{0} సెకన్లు"}
        }
        second-future{
            one{"{0} సెకన్‌లో"}
            other{"{0} సెకన్లలో"}
        }
        second-past{
            one{"{0} సెకను క్రితం"}
            other{"{0} సెకన్ల క్రితం"}
        }
        week{
            one{"{0} వారం"}
            other{"{0} weeks"}
        }
        week-future{
            one{"{0} వారంలో"}
            other{"{0} వారాల్లో"}
        }
        week-past{
            one{"{0} వారం క్రితం"}
            other{"{0} వారాల క్రితం"}
        }
        year{
            one{"{0} సంవత్సరం"}
            other{"{0} సంవత్సరాలు"}
        }
        year-future{
            one{"{0} సంవత్సరంలో"}
            other{"{0} సంవత్సరాల్లో"}
        }
        year-past{
            one{"{0} సంవత్సరం క్రితం"}
            other{"{0} సంవత్సరాల క్రితం"}
        }
    }
    unitsShort{
        day{
            one{"{0} రోజు"}
            other{"{0} days"}
        }
        hour{
            one{"{0} గంట"}
            other{"{0} గంటలు"}
        }
        minute{
            one{"{0} నిమిషం"}
            other{"{0} నిమిషాలు"}
        }
        month{
            one{"{0} నెల"}
            other{"{0} నెలలు"}
        }
        second{
            one{"{0} సెకను"}
            other{"{0} సెకన్లు"}
        }
        week{
            one{"{0} వా"}
            other{"{0} వారాలు"}
        }
        year{
            one{"{0} సంవత్సరం"}
            other{"{0} సంవత్సరాలు"}
        }
    }
}
