﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/af.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/af.xml
 */
af{
    Version{"2.1.8.9"}
    units{
        acceleration{
            g-force{
                dnam{"swaartekrag van die Aarde"}
                one{"{0} swaartekrag van die Aarde"}
                other{"{0} swaartekrag van die Aarde"}
            }
            meter-per-second-squared{
                dnam{"m/s²"}
                one{"{0} m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"boogminute"}
                one{"{0} boogminuut"}
                other{"{0} boogminute"}
            }
            arc-second{
                dnam{"boogsekondes"}
                one{"{0} boogsekonde"}
                other{"{0} boogsekondes"}
            }
            degree{
                dnam{"grade"}
                one{"{0} graad"}
                other{"{0} grade"}
            }
            radian{
                dnam{"radiale"}
                one{"{0} radiaal"}
                other{"{0} radiale"}
            }
        }
        area{
            acre{
                dnam{"akker"}
                one{"{0} akker"}
                other{"{0} akker"}
            }
            hectare{
                dnam{"hektaar"}
                one{"{0} hektaar"}
                other{"{0} hektaar"}
            }
            square-centimeter{
                dnam{"vierkante sentimeter"}
                one{"{0} vierkante sentimeter"}
                other{"{0} vierkante sentimeter"}
            }
            square-foot{
                dnam{"vierkante voet"}
                one{"{0} vierkante voet"}
                other{"{0} vierkante voet"}
            }
            square-inch{
                dnam{"vierkante duim"}
                one{"{0} vierkante duim"}
                other{"{0} vierkante duim"}
            }
            square-kilometer{
                dnam{"vierkante kilometer"}
                one{"{0} vierkante kilometer"}
                other{"{0} vierkante kilometer"}
            }
            square-meter{
                dnam{"vierkante meter"}
                one{"{0} vierkante meter"}
                other{"{0} vierkante meter"}
            }
            square-mile{
                dnam{"vierkante myl"}
                one{"{0} vierkante myl"}
                other{"{0} vierkante myl"}
            }
            square-yard{
                dnam{"vierkante jaart"}
                one{"{0} vierkante jaart"}
                other{"{0} vierkante jaart"}
            }
        }
        compound{
            per{"{0} per {1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"liter per kilometer"}
                one{"{0} liter per kilometer"}
                other{"{0} liter per kilometer"}
            }
            mile-per-gallon{
                dnam{"myl per gelling"}
                one{"{0} myl per gelling"}
                other{"{0} myl per gelling"}
            }
        }
        digital{
            bit{
                dnam{"bis"}
                one{"{0} bis"}
                other{"{0} bis"}
            }
            byte{
                dnam{"grepe"}
                one{"{0} greep"}
                other{"{0} grepe"}
            }
            gigabit{
                dnam{"Gb"}
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"GB"}
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kb"}
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"kB"}
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"Mb"}
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"MB"}
                one{"{0} MB"}
                other{"{0} MB"}
            }
            terabit{
                dnam{"Tb"}
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"TB"}
                one{"{0} TB"}
                other{"{0} TB"}
            }
        }
        duration{
            day{
                dnam{"dae"}
                one{"{0} dag"}
                other{"{0} dae"}
            }
            hour{
                dnam{"uur"}
                one{"{0} uur"}
                other{"{0} uur"}
                per{"{0}/h"}
            }
            microsecond{
                dnam{"mikrosekondes"}
                one{"{0} mikrosekonde"}
                other{"{0} mikrosekondes"}
            }
            millisecond{
                dnam{"millisekondes"}
                one{"{0} millisekonde"}
                other{"{0} millisekondes"}
            }
            minute{
                dnam{"minute"}
                one{"{0} minuut"}
                other{"{0} minute"}
            }
            month{
                dnam{"maande"}
                one{"{0} maand"}
                other{"{0} maande"}
            }
            nanosecond{
                dnam{"nanosekondes"}
                one{"{0} nanosekonde"}
                other{"{0} nanosekondes"}
            }
            second{
                dnam{"sekondes"}
                one{"{0} sekonde"}
                other{"{0} sekondes"}
                per{"{0}/s"}
            }
            week{
                dnam{"weke"}
                one{"{0} week"}
                other{"{0} weke"}
            }
            year{
                dnam{"jaar"}
                one{"{0} jaar"}
                other{"{0} jaar"}
            }
        }
        electric{
            ampere{
                dnam{"ampere"}
                one{"{0} ampere"}
                other{"{0} ampere"}
            }
            milliampere{
                dnam{"mA"}
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"ohm"}
                one{"{0} ohm"}
                other{"{0} ohm"}
            }
            volt{
                dnam{"volt"}
                one{"{0} volt"}
                other{"{0} volt"}
            }
        }
        energy{
            calorie{
                dnam{"kalorië"}
                one{"{0} kalorie"}
                other{"{0} kalorië"}
            }
            foodcalorie{
                dnam{"Kalorië"}
                one{"{0} Kalorie"}
                other{"{0} Kalorië"}
            }
            joule{
                dnam{"joule"}
                one{"{0} joule"}
                other{"{0} joule"}
            }
            kilocalorie{
                dnam{"kilokalorië"}
                one{"{0} kilokalorie"}
                other{"{0} kilokalorië"}
            }
            kilojoule{
                dnam{"kJ"}
                one{"{0} kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kWh"}
                one{"{0} kWh"}
                other{"{0} kWh"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GHz"}
                one{"{0} GHz"}
                other{"{0} GHz"}
            }
            hertz{
                dnam{"Hz"}
                one{"{0} Hz"}
                other{"{0} Hz"}
            }
            kilohertz{
                dnam{"kHz"}
                one{"{0} kHz"}
                other{"{0} kHz"}
            }
            megahertz{
                dnam{"MHz"}
                one{"{0} MHz"}
                other{"{0} MHz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"astronomiese eenheid"}
                one{"{0} astronomiese eenheid"}
                other{"{0} astronomiese eenheid"}
            }
            centimeter{
                dnam{"sentimeter"}
                one{"{0} sentimeter"}
                other{"{0} sentimeter"}
            }
            decimeter{
                dnam{"desimeter"}
                one{"{0} desimeter"}
                other{"{0} desimeter"}
            }
            foot{
                dnam{"voet"}
                one{"{0} voet"}
                other{"{0} voet"}
            }
            inch{
                dnam{"duim"}
                one{"{0} duim"}
                other{"{0} duim"}
            }
            kilometer{
                dnam{"kilometer"}
                one{"{0} kilometer"}
                other{"{0} kilometer"}
            }
            light-year{
                dnam{"ligjare"}
                one{"{0} ligjare"}
                other{"{0} ligjare"}
            }
            meter{
                dnam{"meter"}
                one{"{0} meter"}
                other{"{0} meter"}
            }
            micrometer{
                dnam{"mikrometer"}
                one{"{0} mikrometer"}
                other{"{0} mikrometer"}
            }
            mile{
                dnam{"myl"}
                one{"{0} myl"}
                other{"{0} myl"}
            }
            millimeter{
                dnam{"millimeter"}
                one{"{0} millimeter"}
                other{"{0} millimeter"}
            }
            nanometer{
                dnam{"nanometer"}
                one{"{0} nanometer"}
                other{"{0} nanometer"}
            }
            nautical-mile{
                dnam{"seemyl"}
                one{"{0} seemyl"}
                other{"{0} seemyl"}
            }
            parsec{
                dnam{"parsek"}
                one{"{0} parsek"}
                other{"{0} parsek"}
            }
            picometer{
                dnam{"pikometer"}
                one{"{0} pikometer"}
                other{"{0} pikometer"}
            }
            yard{
                dnam{"jaart"}
                one{"{0} jaart"}
                other{"{0} jaart"}
            }
        }
        light{
            lux{
                dnam{"lux"}
                one{"{0} lux"}
                other{"{0} lux"}
            }
        }
        mass{
            carat{
                dnam{"karaat"}
                one{"{0} karaat"}
                other{"{0} karaat"}
            }
            gram{
                dnam{"gram"}
                one{"{0} gram"}
                other{"{0} gram"}
            }
            kilogram{
                dnam{"kilogram"}
                one{"{0} kilogram"}
                other{"{0} kilogram"}
            }
            metric-ton{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
            }
            microgram{
                dnam{"mikrogram"}
                one{"{0} mikrogram"}
                other{"{0} mikrogram"}
            }
            milligram{
                dnam{"milligram"}
                one{"{0} milligram"}
                other{"{0} milligram"}
            }
            ounce{
                dnam{"onse"}
                one{"{0} ons"}
                other{"{0} onse"}
            }
            ounce-troy{
                dnam{"troy-onse"}
                one{"{0} troy-ons"}
                other{"{0} troy-onse"}
            }
            pound{
                dnam{"pond"}
                one{"{0} pond"}
                other{"{0} pond"}
            }
            ton{
                dnam{"ton"}
                one{"{0} ton"}
                other{"{0} ton"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"perdekrag"}
                one{"{0} perdekrag"}
                other{"{0} perdekrag"}
            }
            kilowatt{
                dnam{"kilowatt"}
                one{"{0} kilowatt"}
                other{"{0} kilowatt"}
            }
            megawatt{
                dnam{"MW"}
                one{"{0} MW"}
                other{"{0} MW"}
            }
            milliwatt{
                dnam{"mW"}
                one{"{0} mW"}
                other{"{0} mW"}
            }
            watt{
                dnam{"watt"}
                one{"{0} watt"}
                other{"{0} watt"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hektopascal"}
                one{"{0} hektopascal"}
                other{"{0} hektopascal"}
            }
            inch-hg{
                dnam{"duim kwik"}
                one{"{0} duim kwik"}
                other{"{0} duim kwik"}
            }
            millibar{
                dnam{"millibar"}
                one{"{0} millibar"}
                other{"{0} millibar"}
            }
            millimeter-of-mercury{
                dnam{"millimeter kwik"}
                one{"{0} millimeter kwik"}
                other{"{0} millimeter kwik"}
            }
            pound-per-square-inch{
                dnam{"pond per vierkante duim"}
                one{"{0} pond per vierkante duim"}
                other{"{0} pond per vierkante duim"}
            }
        }
        proportion{
            karat{
                dnam{"karat"}
                one{"{0} karat"}
                other{"{0} karat"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilometer per uur"}
                one{"{0} kilometer per uur"}
                other{"{0} kilometer per uur"}
            }
            meter-per-second{
                dnam{"meter per sekonde"}
                one{"{0} meter per sekonde"}
                other{"{0} meter per sekonde"}
            }
            mile-per-hour{
                dnam{"myl per uur"}
                one{"{0} myl per uur"}
                other{"{0} myl per uur"}
            }
        }
        temperature{
            celsius{
                dnam{"grade Celsius"}
                one{"{0} graad Celsius"}
                other{"{0} grade Celsius"}
            }
            fahrenheit{
                dnam{"grade Fahrenheit"}
                one{"{0} graad Fahrenheit"}
                other{"{0} grade Fahrenheit"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"akkervoet"}
                one{"{0} akkervoet"}
                other{"{0} akkervoet"}
            }
            centiliter{
                dnam{"sentiliter"}
                one{"{0} sentiliter"}
                other{"{0} sentiliter"}
            }
            cubic-centimeter{
                dnam{"kubieke sentimeter"}
                one{"{0} kubieke sentimeter"}
                other{"{0} kubieke sentimeter"}
            }
            cubic-foot{
                dnam{"kubieke voet"}
                one{"{0} kubieke voet"}
                other{"{0} ft³"}
            }
            cubic-inch{
                dnam{"kubieke duim"}
                one{"{0} kubieke duim"}
                other{"{0} kubieke duim"}
            }
            cubic-kilometer{
                dnam{"kubieke kilometer"}
                one{"{0} kubieke kilometer"}
                other{"{0} kubieke kilometer"}
            }
            cubic-meter{
                dnam{"kubieke meter"}
                one{"{0} kubieke meter"}
                other{"{0} kubieke meter"}
            }
            cubic-mile{
                dnam{"kubieke myl"}
                one{"{0} kubieke myl"}
                other{"{0} kubieke myl"}
            }
            cubic-yard{
                dnam{"kubieke jaart"}
                one{"{0} kubieke jaart"}
                other{"{0} kubieke jaart"}
            }
            cup{
                dnam{"koppies"}
                one{"{0} koppie"}
                other{"{0} koppies"}
            }
            deciliter{
                dnam{"desiliter"}
                one{"{0} desiliter"}
                other{"{0} desiliter"}
            }
            fluid-ounce{
                dnam{"vloeistofonse"}
                one{"{0} vloeistofons"}
                other{"{0} vloeistofonse"}
            }
            gallon{
                dnam{"gelling"}
                one{"{0} gelling"}
                other{"{0} gelling"}
            }
            hectoliter{
                dnam{"hektoliter"}
                one{"{0} hektoliter"}
                other{"{0} hektoliter"}
            }
            liter{
                dnam{"liter"}
                one{"{0} liter"}
                other{"{0} liter"}
            }
            megaliter{
                dnam{"megaliter"}
                one{"{0} megaliter"}
                other{"{0} megaliter"}
            }
            milliliter{
                dnam{"milliliter"}
                one{"{0} milliliter"}
                other{"{0} milliliter"}
            }
            pint{
                dnam{"pinte"}
                one{"{0} pint"}
                other{"{0} pinte"}
            }
            quart{
                dnam{"kwarte"}
                one{"{0} kwart"}
                other{"{0} kwarte"}
            }
            tablespoon{
                dnam{"eetlepel"}
                one{"{0} eetlepel"}
                other{"{0} eetlepels"}
            }
            teaspoon{
                dnam{"teelepels"}
                one{"{0} teelepel"}
                other{"{0} teelepels"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0}G"}
                other{"{0}G"}
            }
        }
        angle{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0} ak"}
                other{"{0} ak"}
            }
            hectare{
                one{"{0}ha"}
                other{"{0}ha"}
            }
            square-foot{
                one{"{0} vt.²"}
                other{"{0} vt.²"}
            }
            square-kilometer{
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                one{"{0}myl²"}
                other{"{0}myl²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                dnam{"dag"}
                one{"{0} d."}
                other{"{0} d."}
            }
            hour{
                dnam{"uur"}
                one{"{0} u."}
                other{"{0} u."}
            }
            millisecond{
                dnam{"ms"}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"minute"}
                one{"{0} min."}
                other{"{0} min."}
            }
            month{
                dnam{"maand"}
                one{"{0} md."}
                other{"{0} md."}
            }
            second{
                dnam{"sekondes"}
                one{"{0} sek."}
                other{"{0} sek."}
            }
            week{
                dnam{"w."}
                one{"{0} w."}
                other{"{0} w."}
            }
            year{
                dnam{"jaar"}
                one{"{0} j."}
                other{"{0} j."}
            }
        }
        length{
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            foot{
                one{"{0} vt."}
                other{"{0} vt."}
            }
            inch{
                one{"{0} duim"}
                other{"{0} duim"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} lj"}
                other{"{0} lj"}
            }
            meter{
                dnam{"meter"}
                one{"{0} m"}
                other{"{0} m"}
            }
            mile{
                one{"{0} myl"}
                other{"{0} myl"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            picometer{
                one{"{0}pm"}
                other{"{0}pm"}
            }
            yard{
                one{"{0} jt."}
                other{"{0} jt."}
            }
        }
        mass{
            gram{
                dnam{"gram"}
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            ounce{
                one{"{0} oz."}
                other{"{0} oz."}
            }
            pound{
                one{"{0} lb."}
                other{"{0} lb."}
            }
        }
        power{
            horsepower{
                one{"{0}pk."}
                other{"{0}pk."}
            }
            kilowatt{
                one{"{0}kW"}
                other{"{0}kW"}
            }
            watt{
                one{"{0}W"}
                other{"{0}W"}
            }
        }
        pressure{
            hectopascal{
                one{"{0}hPa"}
                other{"{0}hPa"}
            }
            inch-hg{
                one{"{0} dm.Hg"}
                other{"{0} dm.Hg"}
            }
            millibar{
                one{"{0}mbar"}
                other{"{0} mbar"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
            meter-per-second{
                one{"{0}m/s"}
                other{"{0}m/s"}
            }
            mile-per-hour{
                one{"{0} myl/h"}
                other{"{0} myl/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0} °C"}
                other{"{0} °C"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0}km³"}
                other{"{0}km³"}
            }
            cubic-mile{
                one{"{0} myl³"}
                other{"{0} myl³"}
            }
            liter{
                dnam{"liter"}
                one{"{0} ℓ"}
                other{"{0} ℓ"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"swaartekrag van die Aarde"}
                one{"{0} G"}
                other{"{0} G"}
            }
            meter-per-second-squared{
                dnam{"m/s²"}
                one{"{0} m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"boogminute"}
                one{"{0} boogmin."}
                other{"{0} boogmin."}
            }
            arc-second{
                dnam{"boogsekondes"}
                one{"{0} boogsek."}
                other{"{0} boogsek."}
            }
            degree{
                dnam{"grade"}
                one{"{0} gr."}
                other{"{0} gr."}
            }
            radian{
                dnam{"radiale"}
                one{"{0} rad."}
                other{"{0} rad."}
            }
        }
        area{
            acre{
                dnam{"akker"}
                one{"{0} ak"}
                other{"{0} ak"}
            }
            hectare{
                dnam{"hektaar"}
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                one{"{0} cm²"}
                other{"{0} cm²"}
            }
            square-foot{
                dnam{"vt.²"}
                one{"{0} vt.²"}
                other{"{0} vt.²"}
            }
            square-inch{
                dnam{"duim²"}
                one{"{0} dm.²"}
                other{"{0} dm.²"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                dnam{"m²"}
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                dnam{"myl²"}
                one{"{0} myl²"}
                other{"{0} myl²"}
            }
            square-yard{
                dnam{"jaart²"}
                one{"{0} jt.²"}
                other{"{0} jt.²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"liter/km"}
                one{"{0} ℓ/km"}
                other{"{0} ℓ/km"}
            }
            mile-per-gallon{
                dnam{"myl/gelling"}
                one{"{0} m.p.g."}
                other{"{0} m.p.g."}
            }
        }
        digital{
            bit{
                dnam{"bis"}
                one{"{0} bis"}
                other{"{0} bis"}
            }
            byte{
                dnam{"greep"}
                one{"{0} greep"}
                other{"{0} greep"}
            }
            gigabit{
                dnam{"Gb"}
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"GB"}
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kb"}
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"kB"}
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"Mb"}
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"MB"}
                one{"{0} MB"}
                other{"{0} MB"}
            }
            terabit{
                dnam{"Tb"}
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"TB"}
                one{"{0} TB"}
                other{"{0} TB"}
            }
        }
        duration{
            day{
                dnam{"dae"}
                one{"{0} dag"}
                other{"{0} dae"}
            }
            hour{
                dnam{"uur"}
                one{"{0} u."}
                other{"{0} u."}
                per{"{0}/h"}
            }
            microsecond{
                dnam{"μs"}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"millisekondes"}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"minute"}
                one{"{0} min."}
                other{"{0} min."}
            }
            month{
                dnam{"maande"}
                one{"{0} md."}
                other{"{0} md."}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"sekondes"}
                one{"{0} sek."}
                other{"{0} sek."}
                per{"{0}/s"}
            }
            week{
                dnam{"weke"}
                one{"{0} w."}
                other{"{0} w."}
            }
            year{
                dnam{"jaar"}
                one{"{0} j."}
                other{"{0} j."}
            }
        }
        electric{
            ampere{
                dnam{"ampere"}
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"mA"}
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"ohm"}
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"volt"}
                one{"{0} V"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"kal."}
                one{"{0} kal."}
                other{"{0} kal."}
            }
            foodcalorie{
                dnam{"kal."}
                one{"{0} kal."}
                other{"{0} kal."}
            }
            joule{
                dnam{"joule"}
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kkal."}
                one{"{0} kkal."}
                other{"{0} kkal."}
            }
            kilojoule{
                dnam{"kJ"}
                one{"{0} kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kWh"}
                one{"{0} kWh"}
                other{"{0} kWh"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GHz"}
                one{"{0} GHz"}
                other{"{0} GHz"}
            }
            hertz{
                dnam{"Hz"}
                one{"{0} Hz"}
                other{"{0} Hz"}
            }
            kilohertz{
                dnam{"kHz"}
                one{"{0} kHz"}
                other{"{0} kHz"}
            }
            megahertz{
                dnam{"MHz"}
                one{"{0} MHz"}
                other{"{0} MHz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"AE"}
                one{"{0} AE"}
                other{"{0} AE"}
            }
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"voet"}
                one{"{0} vt."}
                other{"{0} vt."}
            }
            inch{
                dnam{"duim"}
                one{"{0} duim"}
                other{"{0} duim"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                dnam{"ligjare"}
                one{"{0} lj."}
                other{"{0} lj."}
            }
            meter{
                dnam{"meter"}
                one{"{0} m"}
                other{"{0} m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"myl"}
                one{"{0} myl"}
                other{"{0} myl"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"sm."}
                one{"{0} sm."}
                other{"{0} sm."}
            }
            parsec{
                dnam{"parsek"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pm"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"jaart"}
                one{"{0} jt."}
                other{"{0} jt."}
            }
        }
        light{
            lux{
                dnam{"lux"}
                one{"{0} lux"}
                other{"{0} lux"}
            }
        }
        mass{
            carat{
                dnam{"karaat"}
                one{"{0} kar."}
                other{"{0} kar."}
            }
            gram{
                dnam{"gram"}
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            metric-ton{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
            }
            microgram{
                dnam{"µg"}
                one{"{0} µg"}
                other{"{0} µg"}
            }
            milligram{
                dnam{"mg"}
                one{"{0} mg"}
                other{"{0} mg"}
            }
            ounce{
                dnam{"oz."}
                one{"{0} oz."}
                other{"{0} oz."}
            }
            ounce-troy{
                dnam{"troy-ons"}
                one{"{0} oz t"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"lb."}
                one{"{0} lb."}
                other{"{0} lb."}
            }
            ton{
                dnam{"ton"}
                one{"{0} tn"}
                other{"{0} tn"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"perdekrag"}
                one{"{0} pk."}
                other{"{0} pk."}
            }
            kilowatt{
                dnam{"kilowatt"}
                one{"{0} kW"}
                other{"{0} kW"}
            }
            megawatt{
                dnam{"MW"}
                one{"{0} MW"}
                other{"{0} MW"}
            }
            milliwatt{
                dnam{"mW"}
                one{"{0} mW"}
                other{"{0} mW"}
            }
            watt{
                dnam{"watt"}
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"duim kwik"}
                one{"{0} dm.Hg"}
                other{"{0} dm.Hg"}
            }
            millibar{
                dnam{"millibar"}
                one{"{0} mbar"}
                other{"{0} mbar"}
            }
            millimeter-of-mercury{
                dnam{"mm Hg"}
                one{"{0} mm Hg"}
                other{"{0} mm Hg"}
            }
            pound-per-square-inch{
                dnam{"pond per vierkante duim"}
                one{"{0} pd.vk.dm."}
                other{"{0} pd.vk.dm."}
            }
        }
        proportion{
            karat{
                dnam{"karat"}
                one{"{0} kar."}
                other{"{0} kar."}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/uur"}
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
            meter-per-second{
                dnam{"meter per sekonde"}
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"myl per uur"}
                one{"{0} myl/h"}
                other{"{0} myl/h"}
            }
        }
        temperature{
            celsius{
                dnam{"grade Celsius"}
                one{"{0} °C"}
                other{"{0} °C"}
            }
            fahrenheit{
                dnam{"grade Fahrenheit"}
                one{"{0} °F"}
                other{"{0}°F"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"akkervoet"}
                one{"{0} ak.vt."}
                other{"{0} ak.vt."}
            }
            centiliter{
                dnam{"cℓ"}
                one{"{0} cℓ"}
                other{"{0} cℓ"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0} cm³"}
                other{"{0} cm³"}
            }
            cubic-foot{
                dnam{"ft³"}
                one{"{0} ft³"}
                other{"{0} ft³"}
            }
            cubic-inch{
                dnam{"duim³"}
                one{"{0} dm.³"}
                other{"{0} dm.³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0} m³"}
                other{"{0} m³"}
            }
            cubic-mile{
                dnam{"myl³"}
                one{"{0} myl³"}
                other{"{0} myl³"}
            }
            cubic-yard{
                dnam{"jt.³"}
                one{"{0} jt.³"}
                other{"{0} jt.³"}
            }
            cup{
                dnam{"koppie"}
                one{"{0} kp."}
                other{"{0} kp."}
            }
            deciliter{
                dnam{"dℓ"}
                one{"{0} dℓ"}
                other{"{0} dℓ"}
            }
            fluid-ounce{
                dnam{"vloz."}
                one{"{0} vloz."}
                other{"{0} vloz."}
            }
            gallon{
                dnam{"gell."}
                one{"{0} gell."}
                other{"{0} gell."}
            }
            hectoliter{
                dnam{"hℓ"}
                one{"{0} hℓ"}
                other{"{0} hℓ"}
            }
            liter{
                dnam{"liter"}
                one{"{0} ℓ"}
                other{"{0} ℓ"}
            }
            megaliter{
                dnam{"Mℓ"}
                one{"{0} Mℓ"}
                other{"{0} Mℓ"}
            }
            milliliter{
                dnam{"mℓ"}
                one{"{0} mℓ"}
                other{"{0} mℓ"}
            }
            pint{
                dnam{"pinte"}
                one{"{0} pt."}
                other{"{0} pt."}
            }
            quart{
                dnam{"kw."}
                one{"{0} kw."}
                other{"{0} kw."}
            }
            tablespoon{
                dnam{"eetl."}
                one{"{0} e."}
                other{"{0} e."}
            }
            teaspoon{
                dnam{"teel."}
                one{"{0} teel."}
                other{"{0} teel."}
            }
        }
    }
}
