﻿// ***************************************************************************
// *
// * 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"}
    durationUnits{
        hm{"hh:mm"}
        hms{"hh:mm:ss"}
        ms{"mm:ss"}
    }
    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."}
            }
        }
    }
}
