﻿// ***************************************************************************
// *
// * Copyright (C) 2006 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/be.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/be.xml
 */
be{
    Countries{
        BR{"Бразілія"}
        BY{"Беларусь"}
        CN{"Кітай"}
        DE{"Германія"}
        FR{"Францыя"}
        GB{"Велікабрытанія"}
        IN{"Індыя"}
        IT{"Італія"}
        JP{"Японія"}
        RU{"Расія"}
        US{"Злучаныя Штаты"}
    }
    Currencies{
        BRL{
            "BRL",
            "бразільскі рэал",
        }
        BYB{
            "Руб",
            "BYB",
        }
        BYR{
            "BYR",
            "беларускі рубель",
        }
        CNY{
            "CNY",
            "кітайскі юань Renminbi",
        }
        EUR{
            "€",
            "еўра",
        }
        GBP{
            "£",
            "англійскі фунт",
        }
        INR{
            "=0#Rs.|1#Re.|1<Rs.",
            "індыйская рупія",
        }
        JPY{
            "¥",
            "японская іена",
        }
        RUB{
            "RUB",
            "рускі рубель",
        }
        USD{
            "$",
            "долар ЗША",
        }
    }
    ExemplarCharacters{"[’ а-д {дж} {дз} е ё ж з й і к-у ў ф-ш ы-я]"}
    Languages{
        ar{"арабскі"}
        be{"Беларускі"}
        de{"нямецкі"}
        en{"англійскі"}
        es{"іспанскі"}
        fr{"французскі"}
        hi{"хіндзі"}
        it{"італьянскі"}
        ja{"японскі"}
        pt{"партугальскі"}
        ru{"рускі"}
        zh{"кітайскі"}
    }
    LocaleScript{
        "Cyrl",
    }
    NumberElements{
        ",",
        " ",
        ";",
        "%",
        "0",
        "#",
        "-",
        "E",
        "‰",
        "∞",
        "NaN",
        "+",
    }
    Scripts{
        Cyrl{"кірылічны"}
        Latn{"лацінскі"}
    }
    Version{"1.52"}
    calendar{
        gregorian{
            DateTimePatterns{
                "HH.mm.ss z",
                "HH.mm.ss z",
                "HH.mm.ss",
                "HH.mm",
                "EEEE, d MMMM yyyy",
                "d MMMM yyyy",
                "d.M.yyyy",
                "d.M.yy",
                "{1} {0}",
            }
            availableFormats{
                MMMMd{"d MMMM"}
                Md{"d.M"}
                mmss{"mm.ss"}
                yyyyM{"M.yyyy"}
                yyyyMMMM{"MMMM yyyy"}
            }
            dayNames{
                format{
                    abbreviated{
                        "нд",
                        "пн",
                        "аў",
                        "ср",
                        "чц",
                        "пт",
                        "сб",
                    }
                    wide{
                        "нядзеля",
                        "панядзелак",
                        "аўторак",
                        "серада",
                        "чацвер",
                        "пятніца",
                        "субота",
                    }
                }
                stand-alone{
                    narrow{
                        "н",
                        "п",
                        "а",
                        "с",
                        "ч",
                        "п",
                        "с",
                    }
                }
            }
            eras{
                abbreviated{
                    "да н.е.",
                    "н.е.",
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "сту",
                        "лют",
                        "сак",
                        "кра",
                        "май",
                        "чэр",
                        "ліп",
                        "жні",
                        "вер",
                        "кас",
                        "ліс",
                        "сне",
                    }
                    wide{
                        "студзень",
                        "люты",
                        "сакавік",
                        "красавік",
                        "май",
                        "чэрвень",
                        "ліпень",
                        "жнівень",
                        "верасень",
                        "кастрычнік",
                        "лістапад",
                        "снежань",
                    }
                }
                stand-alone{
                    narrow{
                        "с",
                        "л",
                        "с",
                        "к",
                        "м",
                        "ч",
                        "л",
                        "ж",
                        "в",
                        "к",
                        "л",
                        "с",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "1-ы кв.",
                        "2-ы кв.",
                        "3-ы кв.",
                        "4-ы кв.",
                    }
                    wide{
                        "1-ы квартал",
                        "2-ы квартал",
                        "3-ы квартал",
                        "4-ы квартал",
                    }
                }
            }
        }
    }
    localPatternChars{"GanjkHmsSEDFwWxhKzAeugXZvcL"}
}
