﻿// ***************************************************************************
// *
// * Copyright (C) 2016 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/rbnf/bs.xml
// *
// ***************************************************************************
bs{
    RBNFRules{
        SpelloutRules{
            "%spellout-numbering-year:",
            "x.x: =#,###0.#=;",
            "0: =%spellout-numbering=;",
            "%spellout-numbering:",
            "0: =%spellout-cardinal-masculine=;",
            "%spellout-cardinal-masculine:",
            "-x: minus >>;",
            "x.x: << zarez >>;",
            "0: nula;",
            "1: jedan;",
            "2: dva;",
            "3: tri;",
            "4: \u010Detiri;",
            "5: pet;",
            "6: \u0161est;",
            "7: sedam;",
            "8: osam;",
            "9: devet;",
            "10: deset;",
            "11: jedenaest;",
            "12: dvanaest;",
            "13: trinaest;",
            "14: \u010Detrnaest;",
            "15: petnaest;",
            "16: \u0161estnaest;",
            "17: sedamnaest;",
            "18: osamnaest;",
            "19: devetnaest;",
            "20: dvadeset[ >>];",
            "30: trideset[ >>];",
            "40: \u010Detrdeset[ >>];",
            "50: pedeset[ >>];",
            "60: \u0161ezdeset[ >>];",
            "70: sedamdeset[ >>];",
            "80: osamdeset[ >>];",
            "90: devedeset[ >>];",
            "100: sto[ >>];",
            "200: dvesta[ >>];",
            "300: trista[ >>];",
            "400: \u010Detristo[ >>];",
            "500: petsto[ >>];",
            "600: \u0161esto[ >>];",
            "700: sedamsto[ >>];",
            "800: osamsto[ >>];",
            "900: devetsto[ >>];",
            "1000: <%spellout-cardinal-feminine< hiljada[ >>];",
            "1000000: <%spellout-cardinal-masculine< milion[ >>];",
            "1000000000: <%spellout-cardinal-masculine< miliard[ >>];",
            "1000000000000: <%spellout-cardinal-masculine< bilion[ >>];",
            "1000000000000000: <%spellout-cardinal-masculine< biliard[ >>];",
            "1000000000000000000: =#,##0=;",
            "%spellout-cardinal-neuter:",
            "-x: minus >>;",
            "x.x: << zarez >>;",
            "0: nula;",
            "1: jedno;",
            "2: dva;",
            "3: =%spellout-cardinal-masculine=;",
            "20: dvadeset[ >>];",
            "30: trideset[ >>];",
            "40: \u010Detrdeset[ >>];",
            "50: pedeset[ >>];",
            "60: \u0161ezdeset[ >>];",
            "70: sedamdeset[ >>];",
            "80: osamdeset[ >>];",
            "90: devedeset[ >>];",
            "100: sto[ >>];",
            "200: dvesta[ >>];",
            "300: trista[ >>];",
            "400: \u010Detristo[ >>];",
            "500: petsto[ >>];",
            "600: \u0161esto[ >>];",
            "700: sedamsto[ >>];",
            "800: osamsto[ >>];",
            "900: devetsto[ >>];",
            "1000: <%spellout-cardinal-feminine< hiljada[ >>];",
            "1000000: <%spellout-cardinal-masculine< milion[ >>];",
            "1000000000: <%spellout-cardinal-masculine< miliard[ >>];",
            "1000000000000: <%spellout-cardinal-masculine< bilion[ >>];",
            "1000000000000000: <%spellout-cardinal-masculine< biliard[ >>];",
            "1000000000000000000: =#,##0=;",
            "%spellout-cardinal-feminine:",
            "-x: minus >>;",
            "x.x: << zarez >>;",
            "0: nula;",
            "1: jedinica;",
            "2: dve;",
            "3: =%spellout-cardinal-masculine=;",
            "20: dvadeset[ >>];",
            "30: trideset[ >>];",
            "40: \u010Detrdeset[ >>];",
            "50: pedeset[ >>];",
            "60: \u0161ezdeset[ >>];",
            "70: sedamdeset[ >>];",
            "80: osamdeset[ >>];",
            "90: devedeset[ >>];",
            "100: sto[ >>];",
            "200: dvesta[ >>];",
            "300: trista[ >>];",
            "400: \u010Detristo[ >>];",
            "500: petsto[ >>];",
            "600: \u0161esto[ >>];",
            "700: sedamsto[ >>];",
            "800: osamsto[ >>];",
            "900: devetsto[ >>];",
            "1000: <%spellout-cardinal-feminine< hiljada[ >>];",
            "1000000: <%spellout-cardinal-masculine< milion[ >>];",
            "1000000000: <%spellout-cardinal-masculine< miliard[ >>];",
            "1000000000000: <%spellout-cardinal-masculine< bilion[ >>];",
            "1000000000000000: <%spellout-cardinal-masculine< biliard[ >>];",
            "1000000000000000000: =#,##0=;",
        }
    }
    Version{"2.1.19.14"}
}
