﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/os.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/os.xml
 */
os{
    Version{"2.1.7.53"}
    units{
        duration{
            day{
                dnam{"боны"}
                one{"{0} бон"}
                other{"{0} боны"}
            }
            hour{
                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} азы"}
            }
        }
    }
    unitsShort{
        duration{
            day{
                dnam{"боны"}
                one{"{0} бон"}
                other{"{0} боны"}
            }
            hour{
                dnam{"сахаты"}
                one{"{0} с."}
                other{"{0} с."}
            }
            minute{
                dnam{"минуты"}
                one{"{0} мин."}
                other{"{0} мин."}
            }
            month{
                dnam{"мӕйы"}
            }
            second{
                dnam{"секунды"}
            }
            week{
                dnam{"къуырийы"}
            }
            year{
                dnam{"азы"}
            }
        }
    }
}
