﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/mk.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/mk.xml
 */
mk{
    AuxExemplarCharacters{"[ѐ ѝ]"}
    Ellipsis{
        final{"{0}…"}
        initial{"…{0}"}
        medial{"{0}…{1}"}
        word-final{"{0}…"}
        word-initial{"…{0}"}
        word-medial{"{0}… {1}"}
    }
    ExemplarCharacters{"[а б в г д ѓ е ж з ѕ и ј к л љ м н њ о п р с т ќ у ф х ц ч џ ш]"}
    ExemplarCharactersIndex{"[А Б В Г Д Ѓ Е Ж З Ѕ И Ј К Л Љ М Н Њ О П Р С Т Ќ У Ф Х Ц Ч Џ Ш]"}
    ExemplarCharactersPunctuation{"[\\- ‐ – — , ; \\: ! ? . … ‘ ‚ “ „ ( ) \\[ \\] \\{ \\}]"}
    LocaleScript{
        "Cyrl",
    }
    MoreInformation{"?"}
    NumberElements{
        latn{
            miscPatterns{
                atLeast{"{0}+"}
                range{"{0}–{1}"}
            }
            patterns{
                currencyFormat{"¤ #,##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{"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 трил'.'"}
                    }
                }
            }
            symbols{
                decimal{","}
                exponential{"E"}
                group{"."}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
            }
        }
    }
    Version{"2.0.95.33"}
    calendar{
        generic{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, dd MMMM y 'г'. G",
                "dd MMMM y 'г'. G",
                "dd.M.y G",
                "dd.M.y GGGGG",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"d E"}
                Gy{"y 'г'. G"}
                GyMMM{"MMM y 'г'. G"}
                GyMMMEd{"E, dd MMM y 'г'. G"}
                GyMMMd{"dd MMM y 'г'. G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, dd.M"}
                MMM{"LLL"}
                MMMEd{"E, dd MMM"}
                MMMMEd{"E, dd MMMM"}
                MMMMd{"dd MMMM"}
                MMMd{"dd MMM"}
                Md{"dd.M"}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"y 'г'. G"}
                yyyy{"y 'г'. G"}
                yyyyM{"M.y G"}
                yyyyMEd{"E, dd.M.y G"}
                yyyyMMM{"MMM y 'г'. G"}
                yyyyMMMEd{"E, dd MMM y 'г'. G"}
                yyyyMMMM{"MMMM y 'г'. G"}
                yyyyMMMd{"dd MMM y 'г'. G"}
                yyyyMd{"dd.M.y G"}
                yyyyQQQ{"G y QQQ"}
                yyyyQQQQ{"G y QQQQ"}
            }
            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 G"}
                }
                yM{
                    M{"M.y - M.y G"}
                    y{"M.y - M.y G"}
                }
                yMEd{
                    M{"E, dd.M.y - E, dd.M.y G"}
                    d{"E, dd.M.y - E, dd.M.y G"}
                    y{"E, dd.M.y - E, dd.M.y G"}
                }
                yMMM{
                    M{"MMM-MMM y G"}
                    y{"MMM y - MMM y G"}
                }
                yMMMEd{
                    M{"E, dd MMM - E, dd MMM y G"}
                    d{"E, dd - E, dd MMM y G"}
                    y{"E, dd MMM y - E, dd MMM y G"}
                }
                yMMMM{
                    M{"MMMM-MMMM y G"}
                    y{"MMMM y - MMMM y G"}
                }
                yMMMd{
                    M{"dd MMM - dd MMM y G"}
                    d{"dd-dd MMM y G"}
                    y{"dd MMM y - dd MMM y G"}
                }
                yMd{
                    M{"dd.M.y - dd.M.y G"}
                    d{"dd.M.y - dd.M.y G"}
                    y{"dd.M.y - dd.M.y G"}
                }
            }
        }
        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.y",
                "dd.M.yy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            appendItems{
                Timezone{"{0} {1}"}
            }
            availableFormats{
                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, dd MMM y 'г'. G"}
                GyMMMd{"dd MMM y 'г'. G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d.M"}
                MMM{"LLL"}
                MMMEd{"E d MMM"}
                MMMMEd{"E d MMMM"}
                MMMMd{"d MMMM"}
                MMMMdd{"dd MMMM"}
                MMMd{"d MMM"}
                Md{"d.M"}
                Mdd{"dd.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 'г'."}
                yMMMM{"MMMM y 'г'."}
                yMMMd{"d MMM y 'г'."}
                yMd{"d.M.y"}
                yQQQ{"QQQ y 'г'."}
                yQQQQ{"QQQQ y 'г'."}
            }
            dayNames{
                format{
                    abbreviated{
                        "нед.",
                        "пон.",
                        "вт.",
                        "сре.",
                        "чет.",
                        "пет.",
                        "саб.",
                    }
                    narrow{
                        "н",
                        "п",
                        "в",
                        "с",
                        "ч",
                        "п",
                        "с",
                    }
                    short{
                        "нед.",
                        "пон.",
                        "3",
                        "сре.",
                        "чет.",
                        "пет.",
                        "7",
                    }
                    wide{
                        "недела",
                        "понеделник",
                        "вторник",
                        "среда",
                        "четврток",
                        "петок",
                        "сабота",
                    }
                }
                stand-alone{
                    abbreviated{
                        "нед.",
                        "пон.",
                        "вт.",
                        "сре.",
                        "чет.",
                        "пет.",
                        "саб.",
                    }
                    narrow{
                        "н",
                        "п",
                        "в",
                        "с",
                        "ч",
                        "п",
                        "с",
                    }
                    short{
                        "нед.",
                        "пон.",
                        "вто.",
                        "сре.",
                        "чет.",
                        "пет.",
                        "саб.",
                    }
                    wide{
                        "недела",
                        "понеделник",
                        "вторник",
                        "среда",
                        "четврток",
                        "петок",
                        "сабота",
                    }
                }
            }
            eras{
                abbreviated{
                    "пр.н.е.",
                    "н.е.",
                }
            }
            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.y - M.y"}
                    y{"M.y - M.y"}
                }
                yMEd{
                    M{"E, dd.M.y - E, dd.M.y"}
                    d{"E, dd.M.y - E, dd.M.y"}
                    y{"E, dd.M.y - E, dd.M.y"}
                }
                yMMM{
                    M{"MMM-MMM y"}
                    y{"MMM y - MMM y"}
                }
                yMMMEd{
                    M{"E, dd MMM - E, dd MMM y"}
                    d{"E, dd - E, dd MMM y"}
                    y{"E, dd MMM y - E, dd MMM y"}
                }
                yMMMM{
                    M{"MMMM–MMMM y"}
                    y{"MMMM y – MMMM y"}
                }
                yMMMd{
                    M{"dd MMM - dd MMM y"}
                    d{"dd-dd MMM y"}
                    y{"dd MMM y - dd MMM y"}
                }
                yMd{
                    M{"dd.M.y - dd.M.y"}
                    d{"dd.M.y - dd.M.y"}
                    y{"dd.M.y - dd.M.y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "јан.",
                        "фев.",
                        "мар.",
                        "апр.",
                        "мај",
                        "јун.",
                        "јул.",
                        "авг.",
                        "септ.",
                        "окт.",
                        "ноем.",
                        "дек.",
                    }
                    narrow{
                        "ј",
                        "ф",
                        "м",
                        "а",
                        "м",
                        "ј",
                        "ј",
                        "а",
                        "с",
                        "о",
                        "н",
                        "д",
                    }
                    wide{
                        "јануари",
                        "февруари",
                        "март",
                        "април",
                        "мај",
                        "јуни",
                        "јули",
                        "август",
                        "септември",
                        "октомври",
                        "ноември",
                        "декември",
                    }
                }
                stand-alone{
                    abbreviated{
                        "јан.",
                        "фев.",
                        "мар.",
                        "апр.",
                        "мај",
                        "јун.",
                        "јул.",
                        "авг.",
                        "септ.",
                        "окт.",
                        "ноем.",
                        "дек.",
                    }
                    narrow{
                        "ј",
                        "ф",
                        "м",
                        "а",
                        "м",
                        "ј",
                        "ј",
                        "а",
                        "с",
                        "о",
                        "н",
                        "д",
                    }
                    wide{
                        "јануари",
                        "февруари",
                        "март",
                        "април",
                        "мај",
                        "јуни",
                        "јули",
                        "август",
                        "септември",
                        "октомври",
                        "ноември",
                        "декември",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "Q1",
                        "Q2",
                        "Q3",
                        "Q4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "прво тромесечје",
                        "второ тромесечје",
                        "трето тромесечје",
                        "четврто тромесечје",
                    }
                }
                stand-alone{
                    abbreviated{
                        "јан-мар",
                        "апр-јун",
                        "јул-сеп",
                        "окт-дек",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "прво тромесечје",
                        "второ тромесечје",
                        "трето тромесечје",
                        "четврто тромесечје",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"‘"}
        alternateQuotationStart{"‚"}
        quotationEnd{"“"}
        quotationStart{"„"}
    }
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    fields{
        day{
            dn{"ден"}
            relative{
                "-1"{"вчера"}
                "-2"{"завчера"}
                "0"{"Денес"}
                "1"{"утре"}
                "2"{"задутре"}
            }
            relativeTime{
                future{
                    one{"За {0} ден"}
                    other{"За {0} дена"}
                }
                past{
                    one{"Пред {0} ден"}
                    other{"Пред {0} дена"}
                }
            }
        }
        dayperiod{
            dn{"претпладне/попладне"}
        }
        era{
            dn{"Ера"}
        }
        fri{
            relative{
                "-1"{"минатиот петок"}
                "0"{"овој петок"}
                "1"{"следниот петок"}
            }
        }
        hour{
            dn{"Час"}
            relativeTime{
                future{
                    one{"За {0} час"}
                    other{"За {0} часа"}
                }
                past{
                    one{"Пред {0} час"}
                    other{"Пред {0} часа"}
                }
            }
        }
        minute{
            dn{"Минута"}
            relativeTime{
                future{
                    one{"За {0} минута"}
                    other{"За {0} минути"}
                }
                past{
                    one{"Пред {0} минута"}
                    other{"Пред {0} минути"}
                }
            }
        }
        mon{
            relative{
                "-1"{"минатиот понеделник"}
                "0"{"овој понеделник"}
                "1"{"следниот понеделник"}
            }
        }
        month{
            dn{"Месец"}
            relative{
                "-1"{"минатиот месец"}
                "0"{"овој месец"}
                "1"{"следниот месец"}
            }
            relativeTime{
                future{
                    one{"За {0} месец"}
                    other{"За {0} месеци"}
                }
                past{
                    one{"Пред {0} месец"}
                    other{"Пред {0} месеци"}
                }
            }
        }
        sat{
            relative{
                "-1"{"минатата сабота"}
                "0"{"оваа сабота"}
                "1"{"следната сабота"}
            }
        }
        second{
            dn{"Секунда"}
            relative{
                "0"{"сега"}
            }
            relativeTime{
                future{
                    one{"За {0} секунда"}
                    other{"За {0} секунди"}
                }
                past{
                    one{"Пред {0} секунда"}
                    other{"Пред {0} секунди"}
                }
            }
        }
        sun{
            relative{
                "-1"{"минатата недела"}
                "0"{"оваа недела"}
                "1"{"следната недела"}
            }
        }
        thu{
            relative{
                "-1"{"минатиот четврток"}
                "0"{"овој четврток"}
                "1"{"следниот четврток"}
            }
        }
        tue{
            relative{
                "-1"{"минатиот вторник"}
                "0"{"овој вторник"}
                "1"{"следниот вторник"}
            }
        }
        wed{
            relative{
                "-1"{"минатата среда"}
                "0"{"оваа среда"}
                "1"{"следната среда"}
            }
        }
        week{
            dn{"Недела"}
            relative{
                "-1"{"минатата седмица"}
                "0"{"оваа седмица"}
                "1"{"следната седмица"}
            }
            relativeTime{
                future{
                    one{"За {0} седмица"}
                    other{"За {0} седмици"}
                }
                past{
                    one{"Пред {0} седмица"}
                    other{"Пред {0} седмици"}
                }
            }
        }
        weekday{
            dn{"Ден во неделата"}
        }
        year{
            dn{"година"}
            relative{
                "-1"{"минатата година"}
                "0"{"оваа година"}
                "1"{"следната година"}
            }
            relativeTime{
                future{
                    one{"За {0} година"}
                    other{"За {0} години"}
                }
                past{
                    one{"Пред {0} година"}
                    other{"Пред {0} години"}
                }
            }
        }
        zone{
            dn{"зона"}
        }
    }
    listPattern{
        standard{
            2{"{0}, {1}"}
            end{"{0}, {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit{
            end{"{0} и {1}"}
        }
        unit-narrow{
            2{"{0} и {1}"}
            end{"{0} и {1}"}
        }
        unit-short{
            2{"{0} и {1}"}
            end{"{0} и {1}"}
        }
    }
    measurementSystemNames{
        UK{"британски"}
        US{"американски"}
        metric{"метрички"}
    }
    units{
        acceleration{
            g-force{
                one{"{0} гравитациска сила"}
                other{"{0} гравитациска сила"}
            }
        }
        angle{
            arc-minute{
                one{"{0} минута"}
                other{"{0} минути"}
            }
            arc-second{
                one{"{0} секунда"}
                other{"{0} секунди"}
            }
            degree{
                one{"{0} степен"}
                other{"{0} степени"}
            }
        }
        area{
            acre{
                one{"{0} акр"}
                other{"{0} акри"}
            }
            hectare{
                one{"{0} хектар"}
                other{"{0} хектари"}
            }
            square-foot{
                one{"{0} квадратна стапка"}
                other{"{0} квадратни стапки"}
            }
            square-kilometer{
                one{"{0} квадратен километар"}
                other{"{0} квадратни километри"}
            }
            square-meter{
                one{"{0} квадратен метар"}
                other{"{0} квадратни метри"}
            }
            square-mile{
                one{"{0} квадратна милја"}
                other{"{0} квадратни милји"}
            }
        }
        compound{
            per{"{0} на {1}"}
        }
        duration{
            day{
                one{"{0} ден"}
                other{"{0} дена"}
            }
            hour{
                one{"{0} час"}
                other{"{0} часа"}
            }
            millisecond{
                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} години"}
            }
        }
        length{
            centimeter{
                one{"{0} сантиметар"}
                other{"{0} сантиметри"}
            }
            foot{
                one{"{0} стапка"}
                other{"{0} стапки"}
            }
            inch{
                one{"{0} инч"}
                other{"{0} инчи"}
            }
            kilometer{
                one{"{0} километар"}
                other{"{0} километри"}
            }
            light-year{
                one{"{0} светлосна година"}
                other{"{0} светлосни години"}
            }
            meter{
                one{"{0} метар"}
                other{"{0} метри"}
            }
            mile{
                one{"{0} милја"}
                other{"{0} милји"}
            }
            millimeter{
                one{"{0} милиметар"}
                other{"{0} милиметри"}
            }
            picometer{
                one{"{0} пикометар"}
                other{"{0} пикометри"}
            }
            yard{
                one{"{0} јард"}
                other{"{0} јарди"}
            }
        }
        mass{
            gram{
                one{"{0} грам"}
                other{"{0} грама"}
            }
            kilogram{
                one{"{0} килограм"}
                other{"{0} килограми"}
            }
            ounce{
                one{"{0} унца"}
                other{"{0} унци"}
            }
            pound{
                one{"{0} фунта"}
                other{"{0} фунти"}
            }
        }
        power{
            horsepower{
                one{"{0} коњска сила"}
                other{"{0} коњски сили"}
            }
            kilowatt{
                one{"{0} киловат"}
                other{"{0} киловати"}
            }
            watt{
                one{"{0} ват"}
                other{"{0} вати"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} хектопаскал"}
                other{"{0} хектопаскали"}
            }
            inch-hg{
                one{"{0} инч жива"}
                other{"{0} инчи жива"}
            }
            millibar{
                one{"{0} милибар"}
                other{"{0} милибари"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} километар на час"}
                other{"{0} километри на час"}
            }
            meter-per-second{
                one{"{0} метар во секунда"}
                other{"{0} метри во секунда"}
            }
            mile-per-hour{
                one{"{0} милја на час"}
                other{"{0} милји на час"}
            }
        }
        temperature{
            celsius{
                one{"{0} целзиусов степен"}
                other{"{0} целзиусови степени"}
            }
            fahrenheit{
                one{"{0} фаренхајтов степен"}
                other{"{0} фаренхајтови степени"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} кубен километар"}
                other{"{0} кубни километри"}
            }
            cubic-mile{
                one{"{0} кубна милја"}
                other{"{0} кубни милји"}
            }
            liter{
                one{"{0} литар"}
                other{"{0} литри"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0} G"}
                other{"{0} G"}
            }
        }
        angle{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0} акр"}
                other{"{0} акри"}
            }
            hectare{
                one{"{0} ха"}
                other{"{0} ха"}
            }
            square-foot{
                one{"{0} ст²"}
                other{"{0} ст²"}
            }
            square-kilometer{
                one{"{0} км²"}
                other{"{0} км²"}
            }
            square-meter{
                one{"{0} м²"}
                other{"{0} м²"}
            }
            square-mile{
                one{"{0} ми²"}
                other{"{0} ми²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                one{"{0} ден"}
                other{"{0} дена"}
            }
            hour{
                one{"{0} час"}
                other{"{0} часа"}
            }
            millisecond{
                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} год."}
            }
        }
        length{
            centimeter{
                one{"{0} см"}
                other{"{0} см"}
            }
            foot{
                one{"{0} ст"}
                other{"{0} ст"}
            }
            inch{
                one{"{0} инч"}
                other{"{0} инчи"}
            }
            kilometer{
                one{"{0} км"}
                other{"{0} км"}
            }
            light-year{
                one{"{0} сг"}
                other{"{0} сг"}
            }
            meter{
                one{"{0} м"}
                other{"{0} м"}
            }
            mile{
                one{"{0} ми"}
                other{"{0} ми"}
            }
            millimeter{
                one{"{0} мм"}
                other{"{0} мм"}
            }
            picometer{
                one{"{0} пм"}
                other{"{0} пм"}
            }
            yard{
                one{"{0} јард"}
                other{"{0} јарди"}
            }
        }
        mass{
            gram{
                one{"{0} г"}
                other{"{0} г"}
            }
            kilogram{
                one{"{0} кг"}
                other{"{0} кг"}
            }
            ounce{
                one{"{0} унца"}
                other{"{0} унци"}
            }
            pound{
                one{"{0} фунта"}
                other{"{0} фунти"}
            }
        }
        power{
            horsepower{
                one{"{0} кс"}
                other{"{0} кс"}
            }
            kilowatt{
                one{"{0} kW"}
                other{"{0} kW"}
            }
            watt{
                one{"{0} ват"}
                other{"{0} вати"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                one{"{0} мб"}
                other{"{0} мб"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} к/ч"}
                other{"{0} к/ч"}
            }
            meter-per-second{
                one{"{0} м/с"}
                other{"{0} м/с"}
            }
            mile-per-hour{
                one{"{0} ми/ч"}
                other{"{0} ми/ч"}
            }
        }
        temperature{
            celsius{
                one{"{0}°"}
                other{"{0}°"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} км³"}
                other{"{0} км³"}
            }
            cubic-mile{
                one{"{0} ми³"}
                other{"{0} ми³"}
            }
            liter{
                one{"{0} л"}
                other{"{0} л"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                one{"{0} G"}
                other{"{0} G"}
            }
        }
        angle{
            arc-minute{
                one{"{0} мин."}
                other{"{0} мин."}
            }
            degree{
                one{"{0} степ."}
                other{"{0} степ."}
            }
        }
        area{
            acre{
                one{"{0} акр"}
                other{"{0} акри"}
            }
            hectare{
                one{"{0} ха"}
                other{"{0} ха"}
            }
            square-foot{
                one{"{0} кв. стапка"}
                other{"{0} кв. стапки"}
            }
            square-kilometer{
                one{"{0} км²"}
                other{"{0} км²"}
            }
            square-meter{
                one{"{0} м²"}
                other{"{0} м²"}
            }
            square-mile{
                one{"{0} кв. милја"}
                other{"{0} кв. милји"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                one{"{0} ден"}
                other{"{0} дена"}
            }
            hour{
                one{"{0} час"}
                other{"{0} часа"}
            }
            millisecond{
                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} год."}
            }
        }
        length{
            centimeter{
                one{"{0} см"}
                other{"{0} см"}
            }
            foot{
                one{"{0} ст"}
                other{"{0} ст"}
            }
            inch{
                one{"{0} инч"}
                other{"{0} инчи"}
            }
            kilometer{
                one{"{0} км"}
                other{"{0} км"}
            }
            light-year{
                one{"{0} сг"}
                other{"{0} сг"}
            }
            meter{
                one{"{0} м"}
                other{"{0} м"}
            }
            mile{
                one{"{0} ми"}
                other{"{0} ми"}
            }
            millimeter{
                one{"{0} мм"}
                other{"{0} мм"}
            }
            picometer{
                one{"{0} пм"}
                other{"{0} пм"}
            }
            yard{
                one{"{0} јард"}
                other{"{0} јарди"}
            }
        }
        mass{
            gram{
                one{"{0} г"}
                other{"{0} г"}
            }
            kilogram{
                one{"{0} кг"}
                other{"{0} кг"}
            }
            ounce{
                one{"{0} унца"}
                other{"{0} унци"}
            }
            pound{
                one{"{0} фунта"}
                other{"{0} фунти"}
            }
        }
        power{
            horsepower{
                one{"{0} кс"}
                other{"{0} кс"}
            }
            kilowatt{
                one{"{0} kW"}
                other{"{0} kW"}
            }
            watt{
                one{"{0} ват"}
                other{"{0} вати"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                one{"{0} мб"}
                other{"{0} мб"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} к/ч"}
                other{"{0} к/ч"}
            }
            meter-per-second{
                one{"{0} м/с"}
                other{"{0} м/с"}
            }
            mile-per-hour{
                one{"{0} ми/ч"}
                other{"{0} ми/ч"}
            }
        }
        temperature{
            celsius{
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} км³"}
                other{"{0} км³"}
            }
            cubic-mile{
                one{"{0} ми³"}
                other{"{0} ми³"}
            }
            liter{
                one{"{0} л"}
                other{"{0} л"}
            }
        }
    }
}
