﻿// ***************************************************************************
// *
// * Copyright (C) 2011 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/mk.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/mk.xml
 */
mk{
    AuxExemplarCharacters{"[ѐ ѝ]"}
    ExemplarCharacters{"[а б в г д ѓ е ж з ѕ и ј к л љ м н њ о п р с т ќ у ф х ц ч џ ш]"}
    ExemplarCharactersCurrency{"[a b c č d e f g h i j k l ł m n o º p q r s t u v w x y z]"}
    ExemplarCharactersIndex{"[А Б В Г Д Ѓ Е Ж З Ѕ И Ј К Л Љ М Н Њ О П Р С Т Ќ У Ф Х Ц Ч Џ Ш]"}
    LocaleScript{
        "Cyrl",
    }
    NumberElements{
        latn{
            patterns{
                decimalFormat{"#,##0.###"}
            }
            symbols{
                decimal{","}
                group{"."}
            }
        }
    }
    Version{"2.0.61.44"}
    calendar{
        gregorian{
            AmPmMarkers{
                "претпладне",
                "попладне",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, dd MMMM y",
                "dd MMMM y",
                "dd.M.yyyy",
                "dd.M.yy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                EEEd{"d EEE"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, M-d"}
                MMM{"LLL"}
                MMMEd{"E MMM d"}
                MMMMEd{"E MMMM d"}
                MMMMd{"MMMM d"}
                MMMMdd{"dd MMMM"}
                MMMd{"MMM d"}
                Md{"M-d"}
                Mdd{"dd.M"}
                d{"d"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"y"}
                yM{"y-M"}
                yMEd{"EEE, y-M-d"}
                yMMM{"y MMM"}
                yMMMEd{"EEE, y MMM d"}
                yMMMM{"y MMMM"}
                yQ{"y Q"}
                yQQQ{"y QQQ"}
                yyQ{"Q yy"}
                yyyyM{"M.yyyy"}
                yyyyMMMM{"MMMM y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "нед.",
                        "пон.",
                        "вт.",
                        "сре.",
                        "чет.",
                        "пет.",
                        "саб.",
                    }
                    wide{
                        "недела",
                        "понеделник",
                        "вторник",
                        "среда",
                        "четврток",
                        "петок",
                        "сабота",
                    }
                }
                stand-alone{
                    narrow{
                        "н",
                        "п",
                        "в",
                        "с",
                        "ч",
                        "п",
                        "с",
                    }
                }
            }
            eras{
                abbreviated{
                    "пр.н.е.",
                    "ае.",
                }
            }
            fields{
                day{
                    dn{"ден"}
                    relative{
                        "-1"{"Вчера"}
                        "-2"{"завчера"}
                        "0"{"Денес"}
                        "1"{"Утре"}
                        "2"{"задутре"}
                    }
                }
                dayperiod{
                    dn{"претпладне/попладне"}
                }
                era{
                    dn{"Ера"}
                }
                hour{
                    dn{"Час"}
                }
                minute{
                    dn{"Минута"}
                }
                month{
                    dn{"Месец"}
                }
                second{
                    dn{"Секунда"}
                }
                week{
                    dn{"Недела"}
                }
                weekday{
                    dn{"Ден во неделата"}
                }
                year{
                    dn{"година"}
                }
                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"}
                }
                MEd{
                    M{"E, dd.M - E, dd.M"}
                    d{"E, dd.M - E, dd.M"}
                }
                MMM{
                    M{"MMM-MMM"}
                }
                MMMEd{
                    M{"E, dd MMM - E, dd MMM"}
                    d{"E, dd - E, dd MMM"}
                }
                MMMM{
                    M{"LLLL–LLLL"}
                }
                MMMd{
                    M{"dd MMM - dd MMM"}
                    d{"dd-dd MMM"}
                }
                Md{
                    M{"dd.M - dd.M"}
                    d{"dd.M - dd.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.yy - M.yy"}
                    y{"M.yy - M.yy"}
                }
                yMEd{
                    M{"E, dd.M.yy - E, dd.M.yy"}
                    d{"E, dd.M.yy - E, dd.M.yy"}
                    y{"E, dd.M.yy - E, dd.M.yy"}
                }
                yMMM{
                    M{"MMM-MMM y"}
                    y{"MMM y - MMM y"}
                }
                yMMMM{
                    M{"yyyy-MM – MM"}
                    y{"yyyy-MM – yyyy-MM"}
                }
                yMMMd{
                    M{"dd MMM - dd MMM y"}
                    d{"dd-dd MMM y"}
                    y{"dd MMM y - dd MMM y"}
                }
                yMd{
                    M{"dd.M.yy - dd.M.yy"}
                    d{"dd.M.yy - dd.M.yy"}
                    y{"dd.M.yy - dd.M.yy"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "јан.",
                        "фев.",
                        "мар.",
                        "апр.",
                        "мај",
                        "јун.",
                        "јул.",
                        "авг.",
                        "септ.",
                        "окт.",
                        "ноем.",
                        "декем.",
                    }
                    wide{
                        "јануари",
                        "февруари",
                        "март",
                        "април",
                        "мај",
                        "јуни",
                        "јули",
                        "август",
                        "септември",
                        "октомври",
                        "ноември",
                        "декември",
                    }
                }
                stand-alone{
                    narrow{
                        "ј",
                        "ф",
                        "м",
                        "а",
                        "м",
                        "ј",
                        "ј",
                        "а",
                        "с",
                        "о",
                        "н",
                        "д",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "Q1",
                        "Q2",
                        "Q3",
                        "Q4",
                    }
                    wide{
                        "прво тромесечје",
                        "второ тромесечје",
                        "трето тромесечје",
                        "четврто тромесечје",
                    }
                }
                stand-alone{
                    abbreviated{
                        "јан-мар",
                        "апр-јун",
                        "јул-сеп",
                        "окт-дек",
                    }
                }
            }
        }
    }
    measurementSystemNames{
        US{"Американски"}
        metric{"Метрички"}
    }
    units{
        day{
            one{"{0} ден"}
            other{"{0} денови"}
        }
        day-future{
            one{"за {0} ден"}
            other{"за {0} денови"}
        }
        day-past{
            one{"пред {0} ден"}
            other{"пред {0} денови"}
        }
        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} години"}
        }
    }
}
