﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/bs.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/bs.xml
 */
bs{
    Version{"2.1.13.46"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"G"}
                few{"{0} G"}
                one{"{0} G"}
                other{"{0} G"}
            }
            meter-per-second-squared{
                dnam{"metri u sekundi za sekundu"}
                few{"{0} metra u sekundi za sekundu"}
                one{"{0} metar u sekundi za sekundu"}
                other{"{0} metara u sekundi za sekundu"}
            }
        }
        angle{
            arc-minute{
                dnam{"lučni minuti"}
                few{"{0} lučna minuta"}
                one{"{0} lučni minut"}
                other{"{0} lučnih minuta"}
            }
            arc-second{
                dnam{"lučne sekunde"}
                few{"{0} lučne sekunde"}
                one{"{0} lučna sekunda"}
                other{"{0} lučnih sekundi"}
            }
            degree{
                dnam{"stepeni"}
                few{"{0} stepena"}
                one{"{0} stepen"}
                other{"{0} stepeni"}
            }
            radian{
                dnam{"radijani"}
                few{"{0} radijana"}
                one{"{0} radijan"}
                other{"{0} radijana"}
            }
        }
        area{
            acre{
                dnam{"katastarskih jutara"}
                few{"{0} katastarska jutra"}
                one{"{0} katastarsko jutro"}
                other{"{0} katastarskih jutara"}
            }
            hectare{
                dnam{"hektara"}
                few{"{0} hektra"}
                one{"{0} hektar"}
                other{"{0} hektara"}
            }
            square-centimeter{
                dnam{"kvadratni centimetri"}
                few{"{0} kvadratna centimetra"}
                one{"{0} kvadratni centimetar"}
                other{"{0} kvadratnih centimetara"}
            }
            square-foot{
                dnam{"kvadratne stope"}
                few{"{0} kvadratne stope"}
                one{"{0} kvadratna stopa"}
                other{"{0} kvadratnih stopa"}
            }
            square-inch{
                dnam{"kvadratni inči"}
                few{"{0} kvadratna inča"}
                one{"{0} kvadratni inč"}
                other{"{0} kvadratnih inča"}
            }
            square-kilometer{
                dnam{"kvadratni kilometri"}
                few{"{0} kvadratna kilometra"}
                one{"{0} kvadratni kilometar"}
                other{"{0} kvadratnih kilometara"}
            }
            square-meter{
                dnam{"kvadratni metri"}
                few{"{0} kvadratna metra"}
                one{"{0} kvadratni metar"}
                other{"{0} kvadratnih metara"}
            }
            square-mile{
                dnam{"kvadratne milje"}
                few{"{0} kvadratne milje"}
                one{"{0} kvadratna milja"}
                other{"{0} kvadratnih milja"}
            }
            square-yard{
                dnam{"kvadratni jard"}
                few{"{0} kvadratna jarda"}
                one{"{0} kvadratni jard"}
                other{"{0} kvadratnih jarda"}
            }
        }
        consumption{
            liter-per-kilometer{
                dnam{"litri po kilometru"}
                few{"{0} litra po kilometru"}
                one{"{0} litar po kilometru"}
                other{"{0} litara po kilometru"}
            }
            mile-per-gallon{
                dnam{"milje po galonu"}
                few{"{0} milje po galonu"}
                one{"{0} milja po galonu"}
                other{"{0} milja po galonu"}
            }
        }
        digital{
            bit{
                dnam{"biti"}
                few{"{0} bita"}
                one{"{0} bit"}
                other{"{0} bita"}
            }
            byte{
                dnam{"bajtovi"}
                few{"{0} bajta"}
                one{"{0} bajt"}
                other{"{0} bajtova"}
            }
            gigabit{
                dnam{"gigabiti"}
                few{"{0} gigabita"}
                one{"{0} gigabit"}
                other{"{0} gigabita"}
            }
            gigabyte{
                dnam{"gigabajti"}
                few{"{0} gigabajta"}
                one{"{0} gigabajt"}
                other{"{0} gigabajta"}
            }
            kilobit{
                dnam{"kilobiti"}
                few{"{0} kilobita"}
                one{"{0} kilobit"}
                other{"{0} kilobita"}
            }
            kilobyte{
                dnam{"kilobajti"}
                few{"{0} kilobajta"}
                one{"{0} kilobajt"}
                other{"{0} kilobajta"}
            }
            megabit{
                dnam{"megabiti"}
                few{"{0} megabita"}
                one{"{0} megabit"}
                other{"{0} megabita"}
            }
            megabyte{
                dnam{"megabajti"}
                few{"{0} megabajta"}
                one{"{0} megabajta"}
                other{"{0} megabajta"}
            }
            terabit{
                dnam{"terabiti"}
                few{"{0} terabita"}
                one{"{0} terabit"}
                other{"{0} terabita"}
            }
            terabyte{
                dnam{"terabajti"}
                few{"{0} terabajta"}
                one{"{0} terabajt"}
                other{"{0} terabajta"}
            }
        }
        duration{
            day{
                dnam{"dana"}
                few{"{0} dana"}
                one{"{0} dan"}
                other{"{0} dana"}
            }
            hour{
                dnam{"sati"}
                few{"{0} sata"}
                one{"{0} sat"}
                other{"{0} sati"}
                per{"{0}/h"}
            }
            microsecond{
                dnam{"μs"}
                few{"{0} μs"}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"milisekundi"}
                few{"{0} milisekunde"}
                one{"{0} milisekunda"}
                other{"{0} milisekundi"}
            }
            minute{
                dnam{"minuta"}
                few{"{0} minute"}
                one{"{0} minut"}
                other{"{0} minuta"}
            }
            month{
                dnam{"mjeseci"}
                few{"{0} mjeseca"}
                one{"{0} mjesec"}
                other{"{0} mjeseci"}
            }
            nanosecond{
                dnam{"ns"}
                few{"{0} ns"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"sekundi"}
                few{"{0} sekunde"}
                one{"{0} sekunda"}
                other{"{0} sekundi"}
                per{"{0}/s"}
            }
            week{
                dnam{"sedmica"}
                few{"{0} sedmice"}
                one{"{0} sedmica"}
                other{"{0} sedmica"}
            }
            year{
                dnam{"godina"}
                few{"{0} godine"}
                one{"{0} godina"}
                other{"{0} godina"}
            }
        }
        electric{
            ampere{
                dnam{"amperi"}
                few{"{0} ampera"}
                one{"{0} amper"}
                other{"{0} ampera"}
            }
            milliampere{
                dnam{"miliamperi"}
                few{"{0} miliampera"}
                one{"{0} miliamper"}
                other{"{0} miliampera"}
            }
            ohm{
                dnam{"omi"}
                few{"{0} oma"}
                one{"{0} om"}
                other{"{0} oma"}
            }
            volt{
                dnam{"volti"}
                few{"{0} volta"}
                one{"{0} volt"}
                other{"{0} volta"}
            }
        }
        energy{
            calorie{
                dnam{"kalorije"}
                few{"{0} kalorije"}
                one{"{0} kalorija"}
                other{"{0} kalorija"}
            }
            foodcalorie{
                dnam{"kalorije"}
                few{"{0} kalorije"}
                one{"{0} kalorija"}
                other{"{0} kalorija"}
            }
            joule{
                dnam{"džuli"}
                few{"{0} džula"}
                one{"{0} džul"}
                other{"{0} džula"}
            }
            kilocalorie{
                dnam{"kilokalorije"}
                few{"{0} kilokalorije"}
                one{"{0} kilokalorija"}
                other{"{0} kilokalorija"}
            }
            kilojoule{
                dnam{"kilodžuli"}
                few{"{0} kilodžula"}
                one{"{0} kilodžul"}
                other{"{0} kilodžula"}
            }
            kilowatt-hour{
                dnam{"kilovat-sat"}
                few{"{0} kilovat-sata"}
                one{"{0} kilovat-sat"}
                other{"{0} kilovat-sati"}
            }
        }
        frequency{
            gigahertz{
                dnam{"gigaherci"}
                few{"{0} gigaherca"}
                one{"{0} gigaherc"}
                other{"{0} gigaherca"}
            }
            hertz{
                dnam{"herci"}
                few{"{0} herca"}
                one{"{0} herc"}
                other{"{0} herca"}
            }
            kilohertz{
                dnam{"kiloherci"}
                few{"{0} kiloherca"}
                one{"{0} kiloherc"}
                other{"{0} kiloherca"}
            }
            megahertz{
                dnam{"megaherci"}
                few{"{0} megaherca"}
                one{"{0} megaherc"}
                other{"{0} megaherca"}
            }
        }
        length{
            astronomical-unit{
                dnam{"astronomske jedinice"}
                few{"{0} astronomske jedinice"}
                one{"{0} astronomska jedinica"}
                other{"{0} astronomskih jedinica"}
            }
            centimeter{
                dnam{"centimetara"}
                few{"{0} centimetra"}
                one{"{0} centimetar"}
                other{"{0} centimetara"}
            }
            decimeter{
                dnam{"decimetara"}
                few{"{0} decimetara"}
                one{"{0} decimetar"}
                other{"{0} decimetara"}
            }
            foot{
                dnam{"stopa"}
                few{"{0} stope"}
                one{"{0} stopa"}
                other{"{0} stopa"}
            }
            inch{
                dnam{"inča"}
                few{"{0} inča"}
                one{"{0} inč"}
                other{"{0} inča"}
            }
            kilometer{
                dnam{"kilometara"}
                few{"{0} kilometra"}
                one{"{0} kilometar"}
                other{"{0} kilometara"}
            }
            light-year{
                dnam{"svjetlosnih godina"}
                few{"{0} svjetlosne godine"}
                one{"{0} svjetlosna godina"}
                other{"{0} svjetlosnih godina"}
            }
            meter{
                dnam{"metara"}
                few{"{0} metra"}
                one{"{0} metar"}
                other{"{0} metara"}
            }
            micrometer{
                dnam{"mikrometara"}
                few{"{0} mikrometra"}
                one{"{0} µm"}
                other{"{0} mikrometara"}
            }
            mile{
                dnam{"milja"}
                few{"{0} milje"}
                one{"{0} milja"}
                other{"{0} milja"}
            }
            millimeter{
                dnam{"milimetara"}
                few{"{0} milimetra"}
                one{"{0} milimetar"}
                other{"{0} milimetara"}
            }
            nanometer{
                dnam{"nanometara"}
                few{"{0} nanometra"}
                one{"{0} nanometar"}
                other{"{0} nanometara"}
            }
            nautical-mile{
                dnam{"nautičke milje"}
                few{"{0} nautičke milje"}
                one{"{0} nautička milja"}
                other{"{0} nautičkih milja"}
            }
            parsec{
                dnam{"parseci"}
                few{"{0} parseka"}
                one{"{0} parsek"}
                other{"{0} parseka"}
            }
            picometer{
                dnam{"pikometara"}
                few{"{0} pikometra"}
                one{"{0} pikometar"}
                other{"{0} pikometara"}
            }
            yard{
                dnam{"jardi"}
                few{"{0} jarda"}
                one{"{0} jard"}
                other{"{0} jardi"}
            }
        }
        light{
            lux{
                dnam{"luksi"}
                few{"{0} luksa"}
                one{"{0} luks"}
                other{"{0} luksa"}
            }
        }
        mass{
            carat{
                dnam{"karati"}
                few{"{0} karata"}
                one{"{0} karat"}
                other{"{0} karata"}
            }
            gram{
                dnam{"grami"}
                few{"{0} grama"}
                one{"{0} gram"}
                other{"{0} grama"}
            }
            kilogram{
                dnam{"kilogrami"}
                few{"{0} kilograma"}
                one{"{0} kilogram"}
                other{"{0} kilograma"}
            }
            metric-ton{
                dnam{"metričke tone"}
                few{"{0} metričke tone"}
                one{"{0} metrička tona"}
                other{"{0} metričkih tona"}
            }
            microgram{
                dnam{"mikrogrami"}
                few{"{0} mikrograma"}
                one{"{0} mikrogram"}
                other{"{0} mikrograma"}
            }
            milligram{
                dnam{"miligrami"}
                few{"{0} miligrama"}
                one{"{0} miligram"}
                other{"{0} miligrama"}
            }
            ounce{
                dnam{"unce"}
                few{"{0} unce"}
                one{"{0} unca"}
                other{"{0} unci"}
            }
            ounce-troy{
                dnam{"fine unce"}
                few{"{0} fine unce"}
                one{"{0} fina unca"}
                other{"{0} finih unci"}
            }
            pound{
                dnam{"funte"}
                few{"{0} funte"}
                one{"{0} funta"}
                other{"{0} funti"}
            }
            ton{
                dnam{"tone"}
                few{"{0} tone"}
                one{"{0} tona"}
                other{"{0} tona"}
            }
        }
        power{
            gigawatt{
                dnam{"gigavati"}
                few{"{0} gigavata"}
                one{"{0} gigavat"}
                other{"{0} gigavata"}
            }
            horsepower{
                dnam{"konjske snage"}
                few{"{0} konjske snage"}
                one{"{0} konjska snaga"}
                other{"{0} konjskih snaga"}
            }
            kilowatt{
                dnam{"kilovati"}
                few{"{0} kilovata"}
                one{"{0} kilovat"}
                other{"{0} kilovata"}
            }
            megawatt{
                dnam{"megavati"}
                few{"{0} megavata"}
                one{"{0} megavat"}
                other{"{0} megavata"}
            }
            milliwatt{
                dnam{"milivati"}
                few{"{0} milivata"}
                one{"{0} milivat"}
                other{"{0} milivata"}
            }
            watt{
                dnam{"vati"}
                few{"{0} vata"}
                one{"{0} vat"}
                other{"{0} vata"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hektopaskali"}
                few{"{0} hektopaskala"}
                one{"{0} hektopaskal"}
                other{"{0} hektopaskala"}
            }
            inch-hg{
                dnam{"inčevi žive"}
                few{"{0} inča žive"}
                one{"{0} inč žive"}
                other{"{0} inča žive"}
            }
            millibar{
                dnam{"milibari"}
                few{"{0} milibara"}
                one{"{0} milibar"}
                other{"{0} milibara"}
            }
            millimeter-of-mercury{
                dnam{"milimetri žive"}
                few{"{0} milimetra žive"}
                one{"{0} milimetar žive"}
                other{"{0} milimetara žive"}
            }
            pound-per-square-inch{
                dnam{"funte po kvadratnom inču"}
                few{"{0} funte po kvadratnom inču"}
                one{"{0} funta po kvadratnom inču"}
                other{"{0} funti po kvadratnom inču"}
            }
        }
        proportion{
            karat{
                dnam{"karati"}
                few{"{0} karata"}
                one{"{0} karat"}
                other{"{0} karata"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilometara na sat"}
                few{"{0} kilometra na sat"}
                one{"{0} kilometar na sat"}
                other{"{0} kilometara na sat"}
            }
            meter-per-second{
                dnam{"metara u sekundi"}
                few{"{0} metra u sekundi"}
                one{"{0} metar u sekundi"}
                other{"{0} metara u sekundi"}
            }
            mile-per-hour{
                dnam{"milja na sat"}
                few{"{0} milje na sat"}
                one{"{0} milja na sat"}
                other{"{0} milja na sat"}
            }
        }
        temperature{
            celsius{
                dnam{"Celzijusovi stepeni"}
                few{"{0} Celzijusova stepena"}
                one{"{0} Celzijusov stepen"}
                other{"{0} Celzijusovih stepeni"}
            }
            fahrenheit{
                dnam{"Farenhajtovi stepeni"}
                few{"{0} Farenhajtova stepena"}
                one{"{0} Farenhajtov stepen"}
                other{"{0} Farenhajtovih stepeni"}
            }
            kelvin{
                dnam{"Kelvinovi stepeni"}
                few{"{0} Kelvinova stepena"}
                one{"{0} Kelvinov stepen"}
                other{"{0} Kelvinovih stepeni"}
            }
        }
        volume{
            acre-foot{
                dnam{"ac ft"}
                few{"{0} ac ft"}
                one{"{0} ac ft"}
                other{"{0} ac ft"}
            }
            centiliter{
                dnam{"centilitri"}
                few{"{0} centilitra"}
                one{"{0} centilitar"}
                other{"{0} centilitara"}
            }
            cubic-centimeter{
                dnam{"kubni centimetri"}
                few{"{0} kubna centimetra"}
                one{"{0} kubni centimetar"}
                other{"{0} kubnih centimetara"}
            }
            cubic-foot{
                dnam{"kubne stope"}
                few{"{0} kubne stope"}
                one{"{0} kubna stopa"}
                other{"{0} kubnih stopa"}
            }
            cubic-inch{
                dnam{"kubni inči"}
                few{"{0} kubna inča"}
                one{"{0} kubni inč"}
                other{"{0} in³"}
            }
            cubic-kilometer{
                dnam{"kubni kilometri"}
                few{"{0} kubna kilometra"}
                one{"{0} kubni kilometar"}
                other{"{0} kubnih kilometara"}
            }
            cubic-meter{
                dnam{"kubni metri"}
                few{"{0} kubna metra"}
                one{"{0} kubni metar"}
                other{"{0} kubnih metara"}
            }
            cubic-mile{
                dnam{"kubne milje"}
                few{"{0} kubne milje"}
                one{"{0} kubna milja"}
                other{"{0} kubnih milja"}
            }
            cubic-yard{
                dnam{"kubni jardi"}
                few{"{0} kubna jarda"}
                one{"{0} kubni jard"}
                other{"{0} kubnih jarda"}
            }
            cup{
                dnam{"čaša"}
                few{"{0} čaše"}
                one{"{0} čaša"}
                other{"{0} čaša"}
            }
            deciliter{
                dnam{"decilitri"}
                few{"{0} decilitra"}
                one{"{0} decilitar"}
                other{"{0} decilitara"}
            }
            fluid-ounce{
                dnam{"tečne unce"}
                few{"{0} tečne unce"}
                one{"{0} tečna unca"}
                other{"{0} tečnih unci"}
            }
            gallon{
                dnam{"galoni"}
                few{"{0} galona"}
                one{"{0} galon"}
                other{"{0} galona"}
            }
            hectoliter{
                dnam{"hektolitri"}
                few{"{0} hektolitra"}
                one{"{0} hektolitar"}
                other{"{0} hektolitara"}
            }
            liter{
                dnam{"litri"}
                few{"{0} litra"}
                one{"{0} litar"}
                other{"{0} litara"}
            }
            megaliter{
                dnam{"megalitri"}
                few{"{0} megalitra"}
                one{"{0} megalitar"}
                other{"{0} megalitara"}
            }
            milliliter{
                dnam{"mililitri"}
                few{"{0} mililitra"}
                one{"{0} mililitar"}
                other{"{0} mililitara"}
            }
            pint{
                dnam{"pinte"}
                few{"{0} pinte"}
                one{"{0} pinta"}
                other{"{0} pinti"}
            }
            quart{
                dnam{"kvarti"}
                few{"{0} kvarta"}
                one{"{0} kvart"}
                other{"{0} kvarti"}
            }
            tablespoon{
                dnam{"kašike"}
                few{"{0} kašike"}
                one{"{0} kašika"}
                other{"{0} kašika"}
            }
            teaspoon{
                dnam{"kašičice"}
                few{"{0} kašičice"}
                one{"{0} kašičica"}
                other{"{0} kašičica"}
            }
        }
    }
    unitsNarrow{
        duration{
            day{
                dnam{"dan"}
                few{"{0} dan"}
                one{"{0} dan"}
                other{"{0} dan"}
            }
            hour{
                dnam{"sati"}
                few{"{0} sat"}
                one{"{0} sat"}
                other{"{0} sat"}
            }
            millisecond{
                dnam{"milisekundi"}
                few{"{0} ms"}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"minuta"}
                few{"{0} min"}
                one{"{0} min"}
                other{"{0} min"}
            }
            month{
                dnam{"mjesec"}
                few{"{0} mj."}
                one{"{0} mj."}
                other{"{0} mj."}
            }
            second{
                dnam{"sekundi"}
                few{"{0} sek"}
                one{"{0} sek"}
                other{"{0} sek"}
            }
            week{
                dnam{"sedm."}
                few{"{0} sedm"}
                one{"{0} sedm"}
                other{"{0} sedm"}
            }
            year{
                dnam{"godina"}
                few{"{0} god"}
                one{"{0} god"}
                other{"{0} god"}
            }
        }
        length{
            centimeter{
                dnam{"cm"}
                few{"{0} cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            kilometer{
                dnam{"kilometara"}
                few{"{0} km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            meter{
                dnam{"metara"}
                few{"{0} m"}
                one{"{0} m"}
                other{"{0} m"}
            }
            millimeter{
                dnam{"mm"}
                few{"{0} mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
        }
        mass{
            gram{
                dnam{"gram"}
                few{"{0}g"}
                one{"{0}g"}
                other{"{0}g"}
            }
            kilogram{
                dnam{"kg"}
                few{"{0}kg"}
                one{"{0}kg"}
                other{"{0}kg"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                few{"{0} km/h"}
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                few{"{0}°"}
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        volume{
            liter{
                dnam{"litar"}
                few{"{0}l"}
                one{"{0}l"}
                other{"{0}l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"G"}
                few{"{0} G"}
                one{"{0} G"}
                other{"{0} G"}
            }
            meter-per-second-squared{
                dnam{"m/s²"}
                few{"{0} m/s²"}
                one{"{0} m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"lučni minut"}
                few{"{0}′"}
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                dnam{"lučne sekunde"}
                few{"{0}″"}
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                dnam{"stepeni"}
                few{"{0}°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"rad"}
                few{"{0} rad"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
        }
        area{
            acre{
                dnam{"katastarskih jutara"}
                few{"{0} kj"}
                one{"{0} kj"}
                other{"{0} kj"}
            }
            hectare{
                dnam{"hektara"}
                few{"{0} ha"}
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                few{"{0} cm²"}
                one{"{0} cm²"}
                other{"{0} cm²"}
            }
            square-foot{
                dnam{"ft²"}
                few{"{0} ft²"}
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-inch{
                dnam{"in²"}
                few{"{0} in²"}
                one{"{0} in²"}
                other{"{0} in²"}
            }
            square-kilometer{
                dnam{"km²"}
                few{"{0} km²"}
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                dnam{"m²"}
                few{"{0} m²"}
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                dnam{"mi²"}
                few{"{0} mi²"}
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
            square-yard{
                dnam{"yd²"}
                few{"{0} yd²"}
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        consumption{
            liter-per-kilometer{
                dnam{"L/km"}
                few{"{0} L/km"}
                one{"{0} L/km"}
                other{"{0} L/km"}
            }
            mile-per-gallon{
                dnam{"mpg"}
                few{"{0} mpg"}
                one{"{0} mpg"}
                other{"{0} mpg"}
            }
        }
        digital{
            bit{
                dnam{"bit"}
                few{"{0} bit"}
                one{"{0} bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"bajt"}
                few{"{0} bajt"}
                one{"{0} bajt"}
                other{"{0} bajt"}
            }
            gigabit{
                dnam{"Gb"}
                few{"{0} Gb"}
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"GB"}
                few{"{0} GB"}
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kb"}
                few{"{0} kb"}
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"kB"}
                few{"{0} kB"}
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"Mb"}
                few{"{0} Mb"}
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"MB"}
                few{"{0} MB"}
                one{"{0} MB"}
                other{"{0} MB"}
            }
            terabit{
                dnam{"Tb"}
                few{"{0} Tb"}
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"TB"}
                few{"{0} TB"}
                one{"{0} TB"}
                other{"{0} TB"}
            }
        }
        duration{
            day{
                dnam{"dana"}
                few{"{0} dana"}
                one{"{0} dan"}
                other{"{0} dan"}
            }
            hour{
                dnam{"sati"}
                few{"{0} sata"}
                one{"{0} sat"}
                other{"{0} sat"}
                per{"{0}/h"}
            }
            microsecond{
                dnam{"μs"}
                few{"{0} μs"}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"milisekundi"}
                few{"{0} ms"}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"minuta"}
                few{"{0} min"}
                one{"{0} min"}
                other{"{0} min"}
            }
            month{
                dnam{"mjeseci"}
                few{"{0} mj"}
                one{"{0} mj"}
                other{"{0} mj"}
            }
            nanosecond{
                dnam{"ns"}
                few{"{0} ns"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"sekundi"}
                few{"{0} sek"}
                one{"{0} sek"}
                other{"{0} sek"}
                per{"{0}/s"}
            }
            week{
                dnam{"sedmica"}
                few{"{0} sedm"}
                one{"{0} sedm"}
                other{"{0} sedm"}
            }
            year{
                dnam{"godina"}
                few{"{0} god"}
                one{"{0} god"}
                other{"{0} god"}
            }
        }
        electric{
            ampere{
                dnam{"amp"}
                few{"{0} A"}
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"mA"}
                few{"{0} mA"}
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"omi"}
                few{"{0} Ω"}
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"volti"}
                few{"{0} V"}
                one{"{0} V"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"kal."}
                few{"{0} kal."}
                one{"{0} kal."}
                other{"{0} kal."}
            }
            foodcalorie{
                dnam{"kal."}
                few{"{0} kal."}
                one{"{0} kal."}
                other{"{0} kal."}
            }
            joule{
                dnam{"džuli"}
                few{"{0} J"}
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kcal"}
                few{"{0} kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            kilojoule{
                dnam{"kilodžul"}
                few{"{0} kJ"}
                one{"{0} kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kW-sat"}
                few{"{0} kWh"}
                one{"{0} kWh"}
                other{"{0} kWh"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GHz"}
                few{"{0} GHz"}
                one{"{0} GHz"}
                other{"{0} GHz"}
            }
            hertz{
                dnam{"Hz"}
                few{"{0} Hz"}
                one{"{0} Hz"}
                other{"{0} Hz"}
            }
            kilohertz{
                dnam{"kHz"}
                few{"{0} kHz"}
                one{"{0} kHz"}
                other{"{0} kHz"}
            }
            megahertz{
                dnam{"MHz"}
                few{"{0} MHz"}
                one{"{0} MHz"}
                other{"{0} MHz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"aj"}
                few{"{0} aj"}
                one{"{0} aj"}
                other{"{0} aj"}
            }
            centimeter{
                dnam{"centimetara"}
                few{"{0} cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            decimeter{
                dnam{"dm"}
                few{"{0} dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"stopa"}
                few{"{0} ft"}
                one{"{0} ft"}
                other{"{0} ft"}
            }
            inch{
                dnam{"inča"}
                few{"{0} in"}
                one{"{0} in"}
                other{"{0} in"}
            }
            kilometer{
                dnam{"kilometara"}
                few{"{0} km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                dnam{"svjetlosnih godina"}
                few{"{0} gs"}
                one{"{0} gs"}
                other{"{0} gs"}
            }
            meter{
                dnam{"metara"}
                few{"{0} m"}
                one{"{0} m"}
                other{"{0} m"}
            }
            micrometer{
                dnam{"µm"}
                few{"{0} µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"milja"}
                few{"{0} mi"}
                one{"{0} mi"}
                other{"{0} mi"}
            }
            millimeter{
                dnam{"mm"}
                few{"{0} mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                few{"{0} nm"}
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"nmi"}
                few{"{0} nmi"}
                one{"{0} nmi"}
                other{"{0} nmi"}
            }
            parsec{
                dnam{"parseka"}
                few{"{0} pc"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pm"}
                few{"{0} pm"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"jardi"}
                few{"{0} yd"}
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        light{
            lux{
                dnam{"lx"}
                few{"{0} lx"}
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"karati"}
                few{"{0} CD"}
                one{"{0} CD"}
                other{"{0} CD"}
            }
            gram{
                dnam{"grami"}
                few{"{0} g"}
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                few{"{0} kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            metric-ton{
                dnam{"t"}
                few{"{0} t"}
                one{"{0} t"}
                other{"{0} t"}
            }
            microgram{
                dnam{"µg"}
                few{"{0} µg"}
                one{"{0} µg"}
                other{"{0} µg"}
            }
            milligram{
                dnam{"mg"}
                few{"{0} mg"}
                one{"{0} mg"}
                other{"{0} mg"}
            }
            ounce{
                dnam{"oz"}
                few{"{0} oz"}
                one{"{0} oz"}
                other{"{0} oz"}
            }
            ounce-troy{
                dnam{"oz t"}
                few{"{0} oz t"}
                one{"{0} oz t"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"lb"}
                few{"{0} lb"}
                one{"{0} lb"}
                other{"{0} lb"}
            }
            ton{
                dnam{"tone"}
                few{"{0} tn"}
                one{"{0} tn"}
                other{"{0} tn"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                few{"{0} GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"ks"}
                few{"{0} ks"}
                one{"{0} ks"}
                other{"{0} ks"}
            }
            kilowatt{
                dnam{"kW"}
                few{"{0} kW"}
                one{"{0} kW"}
                other{"{0} kW"}
            }
            megawatt{
                dnam{"MW"}
                few{"{0} MW"}
                one{"{0} MW"}
                other{"{0} MW"}
            }
            milliwatt{
                dnam{"mW"}
                few{"{0} mW"}
                one{"{0} mW"}
                other{"{0} mW"}
            }
            watt{
                dnam{"vati"}
                few{"{0} W"}
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                few{"{0} hPa"}
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"in Hg"}
                few{"{0} inHg"}
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                dnam{"mbar"}
                few{"{0} mbar"}
                one{"{0} mbar"}
                other{"{0} mbar"}
            }
            millimeter-of-mercury{
                dnam{"mm Hg"}
                few{"{0} mm Hg"}
                one{"{0} mm Hg"}
                other{"{0} mm Hg"}
            }
            pound-per-square-inch{
                dnam{"psi"}
                few{"{0} psi"}
                one{"{0} psi"}
                other{"{0} psi"}
            }
        }
        proportion{
            karat{
                dnam{"kt"}
                few{"{0} kt"}
                one{"{0} kt"}
                other{"{0} kt"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                few{"{0} km/h"}
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
            meter-per-second{
                dnam{"m/s"}
                few{"{0} m/s"}
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"mi/h"}
                few{"{0} mi/h"}
                one{"{0} mi/h"}
                other{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                few{"{0}°C"}
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                dnam{"°F"}
                few{"{0}°F"}
                one{"{0}°F"}
                other{"{0}°F"}
            }
            kelvin{
                dnam{"°K"}
                few{"{0}°K"}
                one{"{0}°K"}
                other{"{0}°K"}
            }
        }
        volume{
            acre-foot{
                dnam{"ac ft"}
                few{"{0} ac ft"}
                one{"{0} ac ft"}
                other{"{0} ac ft"}
            }
            centiliter{
                dnam{"cL"}
                few{"{0} cL"}
                one{"{0} cL"}
                other{"{0} cL"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                few{"{0} cm³"}
                one{"{0} cm³"}
                other{"{0} cm³"}
            }
            cubic-foot{
                dnam{"ft³"}
                few{"{0} ft³"}
                one{"{0} ft³"}
                other{"{0} ft³"}
            }
            cubic-inch{
                dnam{"in³"}
                few{"{0} in³"}
                one{"{0} in³"}
                other{"{0} in³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                few{"{0} km³"}
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                few{"{0} m³"}
                one{"{0} m³"}
                other{"{0} m³"}
            }
            cubic-mile{
                dnam{"mi³"}
                few{"{0} mi³"}
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            cubic-yard{
                dnam{"yd³"}
                few{"{0} yd³"}
                one{"{0} yd³"}
                other{"{0} yd³"}
            }
            cup{
                dnam{"čaša"}
                few{"{0} čaše"}
                one{"{0} čaša"}
                other{"{0} čaša"}
            }
            deciliter{
                dnam{"dL"}
                few{"{0} dL"}
                one{"{0} dL"}
                other{"{0} dL"}
            }
            fluid-ounce{
                dnam{"fl oz"}
                few{"{0} fl oz"}
                one{"{0} fl oz"}
                other{"{0} fl oz"}
            }
            gallon{
                dnam{"gal"}
                few{"{0} gal"}
                one{"{0} gal"}
                other{"{0} gal"}
            }
            hectoliter{
                dnam{"hL"}
                few{"{0} hL"}
                one{"{0} hL"}
                other{"{0} hL"}
            }
            liter{
                dnam{"litri"}
                few{"{0} l"}
                one{"{0} l"}
                other{"{0} l"}
            }
            megaliter{
                dnam{"ML"}
                few{"{0} ML"}
                one{"{0} ML"}
                other{"{0} ML"}
            }
            milliliter{
                dnam{"mL"}
                few{"{0} mL"}
                one{"{0} mL"}
                other{"{0} mL"}
            }
            pint{
                dnam{"pinte"}
                few{"{0} pt"}
                one{"{0} pt"}
                other{"{0} pt"}
            }
            quart{
                dnam{"qt"}
                few{"{0} qt"}
                one{"{0} qt"}
                other{"{0} qt"}
            }
            tablespoon{
                dnam{"tbsp"}
                few{"{0} tbsp"}
                one{"{0} tbsp"}
                other{"{0} tbsp"}
            }
            teaspoon{
                dnam{"tsp"}
                few{"{0} tsp"}
                one{"{0} tsp"}
                other{"{0} tsp"}
            }
        }
    }
}
