﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/brx.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/brx.xml
 */
brx{
    Version{"2.1.8.9"}
    units{
        duration{
            day{
                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} साल"}
            }
        }
    }
}
