﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
ce{
    Version{"2.1.28.76"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        duration{
            century{
                dnam{"c"}
                one{"{0} c"}
                other{"{0} c"}
            }
            day{
                dnam{"денош"}
                one{"{0} де"}
                other{"{0} де"}
                per{"{0} дийнахь"}
            }
            hour{
                dnam{"сахьташ"}
                one{"{0} сахьт"}
                other{"{0} сахьт"}
                per{"{0} сахьтехь"}
            }
            microsecond{
                dnam{"микросекундаш"}
                one{"{0} микросекунд"}
                other{"{0} микросекунд"}
            }
            millisecond{
                dnam{"миллисекундаш"}
                one{"{0} миллисекунд"}
                other{"{0} миллисекунд"}
            }
            minute{
                dnam{"миноташ"}
                one{"{0} минот"}
                other{"{0} минот"}
                per{"{0} минотехь"}
            }
            month{
                dnam{"беттанаш"}
                one{"{0} бутт"}
                other{"{0} бутт"}
                per{"{0} баттахь"}
            }
            nanosecond{
                dnam{"наносекундаш"}
                one{"{0} наносекунд"}
                other{"{0} наносекунд"}
            }
            second{
                dnam{"секундаш"}
                one{"{0} секунд"}
                other{"{0} секунд"}
                per{"{0} секундехь"}
            }
            week{
                dnam{"кӀиранаш"}
                one{"{0} кӀира"}
                other{"{0} кӀира"}
                per{"{0} кӀиранахь"}
            }
            year{
                dnam{"шераш"}
                one{"{0} шо"}
                other{"{0} шо"}
                per{"{0} шарахь"}
            }
        }
        length{
            astronomical-unit{
                dnam{"астрономин дакъош"}
                one{"{0} астрономин дакъа"}
                other{"{0} астрономин дакъа"}
            }
            centimeter{
                dnam{"сантиметраш"}
                one{"{0} сантиметр"}
                other{"{0} сантиметр"}
                per{"{0} сантиметрехь"}
            }
            decimeter{
                dnam{"дециметраш"}
                one{"{0} дециметр"}
                other{"{0} дециметр"}
            }
            foot{
                dnam{"футаш"}
                one{"{0} фут"}
                other{"{0} фут"}
            }
            inch{
                dnam{"дюймаш"}
                one{"{0} дюйм"}
                other{"{0} дюйм"}
            }
            kilometer{
                dnam{"километраш"}
                one{"{0} километр"}
                other{"{0} километр"}
            }
        }
    }
    unitsNarrow{
        duration{
            day{
                dnam{"д."}
                one{"{0} д."}
                other{"{0} д."}
            }
            hour{
                dnam{"сахь"}
                one{"{0} сахь."}
                other{"{0} сахь."}
            }
            millisecond{
                dnam{"мс"}
                one{"{0} мс"}
                other{"{0} мс"}
            }
            minute{
                dnam{"мин"}
                one{"{0} мин"}
                other{"{0} мин"}
            }
            month{
                dnam{"бут"}
                one{"{0} б."}
                other{"{0} б."}
            }
            second{
                dnam{"с"}
                one{"{0} с"}
                other{"{0} с"}
            }
            week{
                dnam{"кӀир"}
                one{"{0} кӀ."}
                other{"{0} кӀ."}
            }
            year{
                dnam{"ш."}
                one{"{0} ш."}
                other{"{0} ш."}
            }
        }
        length{
            centimeter{
                dnam{"см"}
                one{"{0} см"}
                other{"{0} cm"}
            }
            kilometer{
                dnam{"км"}
                one{"{0} км"}
                other{"{0} км"}
            }
        }
    }
    unitsShort{
        duration{
            century{
                dnam{"c"}
                one{"{0} c"}
                other{"{0} c"}
            }
            day{
                dnam{"денош"}
                one{"д."}
                other{"{0} д."}
            }
            hour{
                dnam{"сахь"}
                one{"{0} сахь."}
                other{"{0} сахь."}
                per{"{0} сахь."}
            }
            microsecond{
                dnam{"мкс"}
                one{"{0} мкс"}
                other{"{0} мкс"}
            }
            millisecond{
                dnam{"мс"}
                one{"{0} мс"}
                other{"{0} мс"}
            }
            minute{
                dnam{"мин"}
                one{"{0} мин"}
                other{"{0} мин"}
            }
            month{
                dnam{"бут"}
                one{"{0} бут."}
                other{"{0} бут."}
            }
            nanosecond{
                dnam{"нс"}
                one{"{0} нс"}
                other{"{0} нс"}
            }
            second{
                dnam{"сек"}
                one{"{0} сек"}
                other{"{0} сек"}
            }
            week{
                dnam{"кӀир"}
                one{"{0} кӀир."}
                other{"{0} кӀир."}
            }
            year{
                dnam{"ш."}
                one{"{0} ш."}
                other{"{0} ш."}
                per{"{0} ш."}
            }
        }
        length{
            astronomical-unit{
                dnam{"а. д."}
                one{"{0} а. д."}
                other{"{0} а. д."}
            }
            centimeter{
                dnam{"см"}
                one{"{0} см"}
                other{"{0} см"}
            }
            decimeter{
                dnam{"дм"}
                one{"{0} дм"}
                other{"{0} дм"}
            }
            foot{
                dnam{"футаш"}
                one{"{0} фут"}
                other{"{0} фут"}
            }
            inch{
                dnam{"дюйм"}
                one{"{0} дюйм."}
                other{"{0} дюйм."}
            }
            kilometer{
                dnam{"км"}
                one{"{0} км"}
                other{"{0} км"}
            }
        }
    }
}
