﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
jv{
    Version{"2.1.44.15"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"tenaga-g"}
                other{"{0} tenaga-g"}
            }
            meter-per-second-squared{
                dnam{"meter saben detik kuadrat"}
                other{"{0} meter saben detik kuadrat"}
            }
        }
        angle{
            arc-minute{
                dnam{"menit saka busur"}
                other{"{0} menit saka busur"}
            }
            arc-second{
                dnam{"detik saka busur"}
                other{"{0} detik saka busur"}
            }
            degree{
                dnam{"derajat"}
                other{"{0} derajat"}
            }
            radian{
                dnam{"radian"}
                other{"{0} radian"}
            }
            revolution{
                dnam{"revolusi"}
                other{"{0} revolusi"}
            }
        }
        area{
            acre{
                dnam{"are"}
                other{"{0} are"}
            }
            hectare{
                dnam{"hektar"}
                other{"{0} hektar"}
            }
            square-centimeter{
                dnam{"sentimeter persegi"}
                other{"{0} sentimeter persegi"}
                per{"{0} saben sentimeter persegi"}
            }
            square-foot{
                dnam{"kaki persegi"}
                other{"{0} kaki persegi"}
            }
            square-inch{
                dnam{"inci persegi"}
                other{"{0} inci persegi"}
                per{"{0} saben inci persegi"}
            }
            square-kilometer{
                dnam{"kilometer persegi"}
                other{"{0} kilometer persegi"}
                per{"{0} saben kilometer persegi"}
            }
            square-meter{
                dnam{"meter persegi"}
                other{"{0} meter persegi"}
                per{"{0} saben meter persegi"}
            }
            square-mile{
                dnam{"mil persegi"}
                other{"{0} mil persegi"}
                per{"{0} saben mil persegi"}
            }
            square-yard{
                dnam{"yard persegi"}
                other{"{0} yard persegi"}
            }
        }
        compound{
            per{"{0} saben {1}"}
        }
        concentr{
            karat{
                dnam{"karat"}
                other{"{0} karat"}
            }
            milligram-per-deciliter{
                dnam{"miligram saben desiliter"}
                other{"{0} miligram saben desiliter"}
            }
            millimole-per-liter{
                dnam{"milimol saben liter"}
                other{"{0} milimol saben liter"}
            }
            part-per-million{
                dnam{"bagean saben yuta"}
                other{"{0} bagean saben yuta"}
            }
            percent{
                dnam{"persen"}
                other{"{0} persen"}
            }
            permille{
                dnam{"permil"}
                other{"{0} permil"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"liter saben 100 kilometer"}
                other{"{0} liter saben 100 kilometer"}
            }
            liter-per-kilometer{
                dnam{"liter saben kilometer"}
                other{"{0} liter saben kilometer"}
            }
            mile-per-gallon{
                dnam{"mil saben galon"}
                other{"{0} mil saben galon"}
            }
            mile-per-gallon-imperial{
                dnam{"mil saben galon inggris"}
                other{"{0} mil saben galon inggris"}
            }
        }
        coordinate{
            dnam{"arah kardinal"}
            east{"{0} wetan"}
            north{"{0} lor"}
            south{"{0} kidul"}
            west{"{0} kulon"}
        }
        digital{
            bit{
                dnam{"bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"bite"}
                other{"{0} bite"}
            }
            gigabit{
                dnam{"gigabit"}
                other{"{0} gigabit"}
            }
            gigabyte{
                dnam{"gigabite"}
                other{"{0} gigabite"}
            }
            kilobit{
                dnam{"kilobit"}
                other{"{0} kilobit"}
            }
            kilobyte{
                dnam{"kilobite"}
                other{"{0} kilobite"}
            }
            megabit{
                dnam{"megabit"}
                other{"{0} megabit"}
            }
            megabyte{
                dnam{"megabite"}
                other{"{0} megabite"}
            }
            petabyte{
                dnam{"petabite"}
                other{"{0} petabite"}
            }
            terabit{
                dnam{"terabit"}
                other{"{0} terabit"}
            }
            terabyte{
                dnam{"terabite"}
                other{"{0} terabite"}
            }
        }
        duration{
            century{
                dnam{"abad"}
                other{"{0} abad"}
            }
            day{
                dnam{"dino"}
                other{"{0} dino"}
                per{"{0} saben dino"}
            }
            hour{
                dnam{"jam"}
                other{"{0} jam"}
                per{"{0} saben jam"}
            }
            microsecond{
                dnam{"mikrodetik"}
                other{"{0} mikrodetik"}
            }
            millisecond{
                dnam{"milidetik"}
                other{"{0} milidetik"}
            }
            minute{
                dnam{"menit"}
                other{"{0} menit"}
                per{"{0} saben menit"}
            }
            month{
                dnam{"sasi"}
                other{"{0} sasi"}
                per{"{0} saben sasi"}
            }
            nanosecond{
                dnam{"nanodetik"}
                other{"{0} nanodetik"}
            }
            second{
                dnam{"detik"}
                other{"{0} detik"}
                per{"{0} saben detik"}
            }
            week{
                dnam{"pekan"}
                other{"{0} pekan"}
                per{"{0} saben pekan"}
            }
            year{
                dnam{"taun"}
                other{"{0} taun"}
                per{"{0} saben taun"}
            }
        }
        electric{
            ampere{
                dnam{"amper"}
                other{"{0} amper"}
            }
            milliampere{
                dnam{"miliamper"}
                other{"{0} miliamper"}
            }
            ohm{
                dnam{"ohm"}
                other{"{0} ohm"}
            }
            volt{
                dnam{"volt"}
                other{"{0} volt"}
            }
        }
        energy{
            calorie{
                dnam{"kalori"}
                other{"{0} kalori"}
            }
            foodcalorie{
                dnam{"Kalori"}
                other{"{0} Kalori"}
            }
            joule{
                dnam{"jol"}
                other{"{0} jol"}
            }
            kilocalorie{
                dnam{"kilokalori"}
                other{"{0} kilokalori"}
            }
            kilojoule{
                dnam{"kilojol"}
                other{"{0} kilojol"}
            }
            kilowatt-hour{
                dnam{"kilowatt-jam"}
                other{"{0} kilowatt-jam"}
            }
        }
        frequency{
            gigahertz{
                dnam{"gigahet"}
                other{"{0} gigahet"}
            }
            hertz{
                dnam{"het"}
                other{"{0} het"}
            }
            kilohertz{
                dnam{"kilohet"}
                other{"{0} kilohet"}
            }
            megahertz{
                dnam{"megahet"}
                other{"{0} megahet"}
            }
        }
        length{
            astronomical-unit{
                dnam{"unit astronomi"}
                other{"{0} unit astronomi"}
            }
            centimeter{
                dnam{"sentimeter"}
                other{"{0} sentimeter"}
                per{"{0} saben sentimeter"}
            }
            decimeter{
                dnam{"desimeter"}
                other{"{0} desimeter"}
            }
            foot{
                dnam{"kaki"}
                other{"{0} kaki"}
                per{"{0} saben kaki"}
            }
            inch{
                dnam{"inci"}
                other{"{0} inci"}
                per{"{0} saben inci"}
            }
            kilometer{
                dnam{"kilometer"}
                other{"{0} kilometer"}
                per{"{0} saben kilometer"}
            }
            light-year{
                dnam{"taun cahya"}
                other{"{0} taun cahya"}
            }
            meter{
                dnam{"meter"}
                other{"{0} meter"}
                per{"{0} saben meter"}
            }
            micrometer{
                dnam{"mikrometer"}
                other{"{0} mikrometer"}
            }
            mile{
                dnam{"mil"}
                other{"{0} mil"}
            }
            mile-scandinavian{
                dnam{"mil-skandinavia"}
                other{"{0} mil-skandinavia"}
            }
            millimeter{
                dnam{"milimeter"}
                other{"{0} milimeter"}
            }
            nanometer{
                dnam{"nanometer"}
                other{"{0} nanometer"}
            }
            nautical-mile{
                dnam{"mil segoro"}
                other{"{0} mil segoro"}
            }
            parsec{
                dnam{"parsek"}
                other{"{0} parsek"}
            }
            picometer{
                dnam{"pikometer"}
                other{"{0} pikometer"}
            }
            point{
                dnam{"poin"}
                other{"{0} poin"}
            }
            yard{
                dnam{"yard"}
                other{"{0} yard"}
            }
        }
        light{
            lux{
                dnam{"luk"}
                other{"{0} luk"}
            }
        }
        mass{
            carat{
                dnam{"karat"}
                other{"{0} karat"}
            }
            gram{
                dnam{"gram"}
                other{"{0} gram"}
                per{"{0} saben gram"}
            }
            kilogram{
                dnam{"kilogram"}
                other{"{0} kilogram"}
                per{"{0} saben kilogram"}
            }
            metric-ton{
                dnam{"metrik ton"}
                other{"{0} metrik ton"}
            }
            microgram{
                dnam{"mikrogram"}
                other{"{0} mikrogram"}
            }
            milligram{
                dnam{"miligram"}
                other{"{0} miligram"}
            }
            ounce{
                dnam{"ons"}
                other{"{0} ons"}
                per{"{0} saben ons"}
            }
            ounce-troy{
                dnam{"troy ons"}
                other{"{0} troy ons"}
            }
            pound{
                dnam{"pon"}
                other{"{0} pon"}
                per{"{0} saben pon"}
            }
            ton{
                dnam{"ton"}
                other{"{0} ton"}
            }
        }
        power{
            gigawatt{
                dnam{"gigawatt"}
                other{"{0} gigawatt"}
            }
            horsepower{
                dnam{"tenogo jaran"}
                other{"{0} tenogo jaran"}
            }
            kilowatt{
                dnam{"kilowatt"}
                other{"{0} kilowatt"}
            }
            megawatt{
                dnam{"megawatt"}
                other{"{0} megawatt"}
            }
            milliwatt{
                dnam{"miliwatt"}
                other{"{0} miliwatt"}
            }
            watt{
                dnam{"watt"}
                other{"{0} watt"}
            }
        }
        pressure{
            atmosphere{
                dnam{"atmosfer"}
                other{"{0} atmosfer"}
            }
            hectopascal{
                dnam{"hektopaskal"}
                other{"{0} hektopaskal"}
            }
            inch-hg{
                dnam{"inci saka raksa"}
                other{"{0} inci saka raksa"}
            }
            millibar{
                dnam{"milibar"}
                other{"{0} milibar"}
            }
            millimeter-of-mercury{
                dnam{"milimeter saka raksa"}
                other{"{0} milimeter saka raksa"}
            }
            pound-per-square-inch{
                dnam{"pon saben inci kuadrat"}
                other{"{0} pon saben inci kuadrat"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilometer saben jam"}
                other{"{0} kilometer saben jam"}
            }
            knot{
                dnam{"knot"}
                other{"{0} knot"}
            }
            meter-per-second{
                dnam{"meter saben detik"}
                other{"{0} meter saben detik"}
            }
            mile-per-hour{
                dnam{"mil saben jam"}
                other{"{0} mil saben jam"}
            }
        }
        temperature{
            celsius{
                dnam{"derajat celsius"}
                other{"{0} derajat celsius"}
            }
            fahrenheit{
                dnam{"derajat Fahrenhet"}
                other{"{0} derajat Fahrenhet"}
            }
            generic{
                dnam{"°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"kelvin"}
                other{"{0} kelvin"}
            }
        }
        volume{
            acre-foot{
                dnam{"are-kaki"}
                other{"{0} are-kaki"}
            }
            centiliter{
                dnam{"sentiliter"}
                other{"{0} sentiliter"}
            }
            cubic-centimeter{
                dnam{"sentimeter kubik"}
                other{"{0} sentimeter kubik"}
                per{"{0} saben sentimeter kubik"}
            }
            cubic-foot{
                dnam{"kaki kubik"}
                other{"{0} kaki kubik"}
            }
            cubic-inch{
                dnam{"inci kubik"}
                other{"{0} inci kubik"}
            }
            cubic-kilometer{
                dnam{"kilometer kubik"}
                other{"{0} kilometer kubik"}
            }
            cubic-meter{
                dnam{"meter kubik"}
                other{"{0} meter kubik"}
                per{"{0} saben meter kubik"}
            }
            cubic-mile{
                dnam{"mil kubik"}
                other{"{0} mil kubik"}
            }
            cubic-yard{
                dnam{"yard kubik"}
                other{"{0} yard kubik"}
            }
            cup{
                dnam{"kup"}
                other{"{0} kup"}
            }
            cup-metric{
                dnam{"metrik kup"}
                other{"{0} metrik kup"}
            }
            deciliter{
                dnam{"desiliter"}
                other{"{0} desiliter"}
            }
            fluid-ounce{
                dnam{"ons banyu"}
                other{"{0} ons banyu"}
            }
            gallon{
                dnam{"galon"}
                other{"{0} galon"}
                per{"{0} saben galon"}
            }
            gallon-imperial{
                dnam{"galon inggris"}
                other{"{0} galon inggris"}
                per{"{0} saben galon inggris"}
            }
            hectoliter{
                dnam{"hektoliter"}
                other{"{0} hektoliter"}
            }
            liter{
                dnam{"liter"}
                other{"{0} liter"}
                per{"{0} saben liter"}
            }
            megaliter{
                dnam{"megaliter"}
                other{"{0} megaliter"}
            }
            milliliter{
                dnam{"mililiter"}
                other{"{0} mililiter"}
            }
            pint{
                dnam{"pin"}
                other{"{0} pin"}
            }
            pint-metric{
                dnam{"metrik pin"}
                other{"{0} metrik pin"}
            }
            quart{
                dnam{"seprapat galon"}
                other{"{0} seprapat galon"}
            }
            tablespoon{
                dnam{"sendok mangan"}
                other{"{0} sendok mangan"}
            }
            teaspoon{
                dnam{"sendok teh"}
                other{"{0} sendok teh"}
            }
        }
    }
    unitsNarrow{
        compound{
            per{"{0}/{1}"}
        }
        concentr{
            percent{
                dnam{"%"}
                other{"{0}%"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"L/100 km"}
                other{"{0} L/100 km"}
            }
        }
        coordinate{
            dnam{"arah"}
            east{"{0} wetan"}
            north{"{0} lor"}
            south{"{0} kidul"}
            west{"{0} kulon"}
        }
        duration{
            day{
                dnam{"dino"}
                other{"{0} dino"}
            }
            hour{
                dnam{"jam"}
                other{"{0}j"}
            }
            millisecond{
                dnam{"md"}
                other{"{0} md"}
            }
            minute{
                dnam{"mnt"}
                other{"{0} mnt"}
            }
            month{
                dnam{"sasi"}
                other{"{0} sasi"}
            }
            second{
                dnam{"dtk"}
                other{"{0} dtk"}
            }
            week{
                dnam{"pekan"}
                other{"{0} pekan"}
            }
            year{
                dnam{"taun"}
                other{"{0} taun"}
            }
        }
        length{
            centimeter{
                dnam{"cm"}
                other{"{0} cm"}
            }
            kilometer{
                dnam{"km"}
                other{"{0} km"}
            }
            meter{
                dnam{"m"}
                other{"{0} m"}
            }
            millimeter{
                dnam{"mm"}
                other{"{0} mm"}
            }
        }
        mass{
            gram{
                dnam{"gram"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                other{"{0} kg"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/jam"}
                other{"{0} km/jam"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                other{"{0}°C"}
            }
        }
        volume{
            liter{
                dnam{"liter"}
                other{"{0} L"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"tenaga-g"}
                other{"{0} G"}
            }
            meter-per-second-squared{
                dnam{"meter/detik²"}
                other{"{0} meter/detik²"}
            }
        }
        angle{
            arc-minute{
                dnam{"menit saka busur"}
                other{"{0} menit saka busur"}
            }
            arc-second{
                dnam{"detik saka busur"}
                other{"{0} detik saka busur"}
            }
            degree{
                dnam{"derajat"}
                other{"{0}°"}
            }
            radian{
                dnam{"rad"}
                other{"{0} rad"}
            }
            revolution{
                dnam{"rev"}
                other{"{0} rev"}
            }
        }
        area{
            acre{
                dnam{"are"}
                other{"{0} are"}
            }
            hectare{
                dnam{"hektar"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                other{"{0} cm²"}
                per{"{0}/cm²"}
            }
            square-foot{
                dnam{"kaki persegi"}
                other{"{0} kaki persegi"}
            }
            square-inch{
                dnam{"inci²"}
                other{"{0} inci²"}
                per{"{0}/inci²"}
            }
            square-kilometer{
                dnam{"km²"}
                other{"{0} km²"}
                per{"{0}/km²"}
            }
            square-meter{
                dnam{"m²"}
                other{"{0} m²"}
                per{"{0}/m²"}
            }
            square-mile{
                dnam{"mil²"}
                other{"{0} mil²"}
                per{"{0}/mil²"}
            }
            square-yard{
                dnam{"yard²"}
                other{"{0} yard²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        concentr{
            karat{
                dnam{"karat"}
                other{"{0} kt"}
            }
            milligram-per-deciliter{
                dnam{"mg/dL"}
                other{"{0} mg/dL"}
            }
            millimole-per-liter{
                dnam{"mmol/L"}
                other{"{0} mmol/L"}
            }
            part-per-million{
                dnam{"bagean/yuta"}
                other{"{0} bagean saben yuta"}
            }
            percent{
                dnam{"persen"}
                other{"{0}%"}
            }
            permille{
                dnam{"permil"}
                other{"{0}‰"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"L/100 km"}
                other{"{0} L/100 km"}
            }
            liter-per-kilometer{
                dnam{"liter/km"}
                other{"{0} L/km"}
            }
            mile-per-gallon{
                dnam{"mil/galon"}
                other{"{0} mpg"}
            }
            mile-per-gallon-imperial{
                dnam{"mil/galon inggris"}
                other{"{0} mpg inggris"}
            }
        }
        coordinate{
            dnam{"arah"}
            east{"{0} wetan"}
            north{"{0} lor"}
            south{"{0} kidul"}
            west{"{0} kulon"}
        }
        digital{
            bit{
                dnam{"bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"bite"}
                other{"{0} bite"}
            }
            gigabit{
                dnam{"Gbit"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"GBite"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kbit"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"kBite"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"Mbit"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"MBite"}
                other{"{0} MB"}
            }
            petabyte{
                dnam{"PBite"}
                other{"{0} PB"}
            }
            terabit{
                dnam{"Tbit"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"TBite"}
                other{"{0} TB"}
            }
        }
        duration{
            century{
                dnam{"abad"}
                other{"{0} abad"}
            }
            day{
                dnam{"dino"}
                other{"{0} dino"}
                per{"{0}/dino"}
            }
            hour{
                dnam{"jam"}
                other{"{0} jam"}
                per{"{0}/jam"}
            }
            microsecond{
                dnam{"μdtk"}
                other{"{0} μd"}
            }
            millisecond{
                dnam{"milidtk"}
                other{"{0} md"}
            }
            minute{
                dnam{"mnt"}
                other{"{0} mnt"}
                per{"{0}/mnt"}
            }
            month{
                dnam{"sasi"}
                other{"{0} sasi"}
                per{"{0}/sasi"}
            }
            nanosecond{
                dnam{"nanodtk"}
                other{"{0} nd"}
            }
            second{
                dnam{"dtk"}
                other{"{0} dtk"}
                per{"{0}/dtk"}
            }
            week{
                dnam{"pekan"}
                other{"{0} pekan"}
                per{"{0}/pekan"}
            }
            year{
                dnam{"taun"}
                other{"{0} taun"}
                per{"{0}/taun"}
            }
        }
        electric{
            ampere{
                dnam{"amper"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"miliamper"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"ohm"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"volt"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"kal"}
                other{"{0} kal"}
            }
            foodcalorie{
                dnam{"Kal"}
                other{"{0} Kal"}
            }
            joule{
                dnam{"jol"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kkal"}
                other{"{0} kkal"}
            }
            kilojoule{
                dnam{"kilojol"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kW-jam"}
                other{"{0} kW-jam"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GHz"}
                other{"{0} GHz"}
            }
            hertz{
                dnam{"Hz"}
                other{"{0} Hz"}
            }
            kilohertz{
                dnam{"kHz"}
                other{"{0} kHz"}
            }
            megahertz{
                dnam{"MHz"}
                other{"{0} MHz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"ua"}
                other{"{0} ua"}
            }
            centimeter{
                dnam{"cm"}
                other{"{0} cm"}
                per{"{0}/cm"}
            }
            decimeter{
                dnam{"dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"kaki"}
                other{"{0} kaki"}
                per{"{0}/kaki"}
            }
            inch{
                dnam{"inci"}
                other{"{0} in"}
                per{"{0}/in"}
            }
            kilometer{
                dnam{"km"}
                other{"{0} km"}
                per{"{0}/km"}
            }
            light-year{
                dnam{"taun cahya"}
                other{"{0} tc"}
            }
            meter{
                dnam{"m"}
                other{"{0} m"}
                per{"{0}/m"}
            }
            micrometer{
                dnam{"µmeter"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mil"}
                other{"{0} mil"}
            }
            mile-scandinavian{
                dnam{"mil-skandinavia"}
                other{"{0} mil-skandinavia"}
            }
            millimeter{
                dnam{"mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"mil segoro"}
                other{"{0} mil segoro"}
            }
            parsec{
                dnam{"parsek"}
                other{"{0} ps"}
            }
            picometer{
                dnam{"pm"}
                other{"{0} pm"}
            }
            point{
                dnam{"poin"}
                other{"{0} p"}
            }
            yard{
                dnam{"yard"}
                other{"{0} yard"}
            }
        }
        light{
            lux{
                dnam{"luk"}
                other{"{0} luk"}
            }
        }
        mass{
            carat{
                dnam{"karat"}
                other{"{0} karat"}
            }
            gram{
                dnam{"gram"}
                other{"{0} g"}
                per{"{0}/g"}
            }
            kilogram{
                dnam{"kg"}
                other{"{0} kg"}
                per{"{0}/kg"}
            }
            metric-ton{
                dnam{"metrik ton"}
                other{"{0} metrik ton"}
            }
            microgram{
                dnam{"mikrogram"}
                other{"{0} mikrogram"}
            }
            milligram{
                dnam{"mg"}
                other{"{0} mg"}
            }
            ounce{
                dnam{"ons"}
                other{"{0} ons"}
                per{"{0}/ons"}
            }
            ounce-troy{
                dnam{"troy ons"}
                other{"{0} troy ons"}
            }
            pound{
                dnam{"pon"}
                other{"{0} pon"}
                per{"{0}/pon"}
            }
            ton{
                dnam{"ton"}
                other{"{0} ton"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"tenogo jaran"}
                other{"{0} tenogo jaran"}
            }
            kilowatt{
                dnam{"kW"}
                other{"{0} kW"}
            }
            megawatt{
                dnam{"MW"}
                other{"{0} MW"}
            }
            milliwatt{
                dnam{"mW"}
                other{"{0} mW"}
            }
            watt{
                dnam{"watt"}
                other{"{0} W"}
            }
        }
        pressure{
            atmosphere{
                dnam{"atm"}
                other{"{0} atm"}
            }
            hectopascal{
                dnam{"hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"inHg"}
                other{"{0} inHg"}
            }
            millibar{
                dnam{"mbar"}
                other{"{0} mbar"}
            }
            millimeter-of-mercury{
                dnam{"mm Hg"}
                other{"{0} mm Hg"}
            }
            pound-per-square-inch{
                dnam{"psi"}
                other{"{0} psi"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/jam"}
                other{"{0} km/jam"}
            }
            knot{
                dnam{"knot"}
                other{"{0} knot"}
            }
            meter-per-second{
                dnam{"meter/dtk"}
                other{"{0} m/dtk"}
            }
            mile-per-hour{
                dnam{"mil/jam"}
                other{"{0} mil/jam"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                dnam{"°F"}
                other{"{0}°F"}
            }
            generic{
                dnam{"°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"are-kaki"}
                other{"{0} are-kaki"}
            }
            centiliter{
                dnam{"sentiliter"}
                other{"{0} sentiliter"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                other{"{0} cm³"}
                per{"{0}/cm³"}
            }
            cubic-foot{
                dnam{"kaki³"}
                other{"{0} kaki³"}
            }
            cubic-inch{
                dnam{"inci³"}
                other{"{0} inci³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                other{"{0} m³"}
                per{"{0}/m³"}
            }
            cubic-mile{
                dnam{"mil³"}
                other{"{0} mil³"}
            }
            cubic-yard{
                dnam{"yard³"}
                other{"{0} yard³"}
            }
            cup{
                dnam{"kup"}
                other{"{0} kup"}
            }
            cup-metric{
                dnam{"metrik kup"}
                other{"{0} metrik kup"}
            }
            deciliter{
                dnam{"dL"}
                other{"{0} dL"}
            }
            fluid-ounce{
                dnam{"ons banyu"}
                other{"{0} ons banyu"}
            }
            gallon{
                dnam{"galon"}
                other{"{0} galon"}
                per{"{0}/galon"}
            }
            gallon-imperial{
                dnam{"galon inggris"}
                other{"{0} galon inggris"}
                per{"{0}/galon inggris"}
            }
            hectoliter{
                dnam{"hL"}
                other{"{0} hL"}
            }
            liter{
                dnam{"liter"}
                other{"{0} L"}
                per{"{0}/L"}
            }
            megaliter{
                dnam{"ML"}
                other{"{0} ML"}
            }
            milliliter{
                dnam{"mL"}
                other{"{0} mL"}
            }
            pint{
                dnam{"pin"}
                other{"{0} pin"}
            }
            pint-metric{
                dnam{"metrik pin"}
                other{"{0} metrik pin"}
            }
            quart{
                dnam{"seprapat galon"}
                other{"{0} seprapat galon"}
            }
            tablespoon{
                dnam{"sdk mgn"}
                other{"{0} sdk mgn"}
            }
            teaspoon{
                dnam{"sdk teh"}
                other{"{0} sdk teh"}
            }
        }
    }
}
