﻿// ***************************************************************************
// *
// * Copyright (C) 2012 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.75.99"}
    calendar{
        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"}
                yMMM{"MMM y"}
                yMMMEd{"E, d, MMM y"}
                yMMMd{"d, MMM y"}
                yMd{"d/M/y"}
                yQ{"Q y"}
                yQQQ{"QQQ y"}
                yyQ{"Q yy"}
                yyyyMM{"MM-yyyy"}
                yyyyMMMM{"MMMM y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "ఆది",
                        "సోమ",
                        "మంగళ",
                        "బుధ",
                        "గురు",
                        "శుక్ర",
                        "శని",
                    }
                    narrow{
                        "ఆ",
                        "సో",
                        "మ",
                        "బు",
                        "గు",
                        "శు",
                        "శ",
                    }
                    short{
                        "ఆది",
                        "సోమ",
                        "మం",
                        "బుధ",
                        "గురు",
                        "శుక్ర",
                        "శని",
                    }
                    wide{
                        "ఆదివారం",
                        "సోమవారం",
                        "మంగళవారం",
                        "బుధవారం",
                        "గురువారం",
                        "శుక్రవారం",
                        "శనివారం",
                    }
                }
                stand-alone{
                    abbreviated{
                        "ఆది",
                        "సోమ",
                        "మంగళ",
                        "బుధ",
                        "గురు",
                        "శుక్ర",
                        "శని",
                    }
                    narrow{
                        "ఆ",
                        "సో",
                        "మ",
                        "బు",
                        "గు",
                        "శు",
                        "శ",
                    }
                    short{
                        "ఆది",
                        "సోమ",
                        "మం",
                        "బుధ",
                        "గురు",
                        "శుక్ర",
                        "శని",
                    }
                    wide{
                        "ఆదివారం",
                        "సోమవారం",
                        "మంగళవారం",
                        "బుధవారం",
                        "గురువారం",
                        "శుక్రవారం",
                        "శనివారం",
                    }
                }
            }
            eras{
                abbreviated{
                    "క్రీపూ",
                    "క్రీశ",
                }
                narrow{
                    "ఈసాపూర్వ.",
                    "సన్.",
                }
                wide{
                    "ఈసాపూర్వ.",
                    "సన్.",
                }
            }
            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{"మండలం"}
                }
            }
            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/yy – M/yy"}
                    y{"M/yy – M/yy"}
                }
                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{"“"}
    }
    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} సంవత్సరాలు"}
        }
    }
}
