﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html
// Generated using tools/cldr/cldr-to-icu/build-icu-data.xml
id{
    durationUnits{
        hm{"h.mm"}
        hms{"h.mm.ss"}
        ms{"m.ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"g-force"}
                other{"{0} g-force"}
            }
            meter-per-square-second{
                dnam{"meter per detik persegi"}
                other{"{0} meter per detik persegi"}
            }
        }
        angle{
            arc-minute{
                dnam{"menit busur"}
                other{"{0} menit busur"}
            }
            arc-second{
                dnam{"detik busur"}
                other{"{0} detik busur"}
            }
            degree{
                dnam{"derajat"}
                other{"{0} derajat"}
            }
            radian{
                dnam{"radian"}
                other{"{0} radian"}
            }
            revolution{
                dnam{"revolusi"}
                other{"{0} revolusi"}
            }
        }
        area{
            acre{
                dnam{"ekar"}
                other{"{0} ekar"}
            }
            hectare{
                dnam{"hektare"}
                other{"{0} hektare"}
            }
            square-centimeter{
                dnam{"sentimeter persegi"}
                other{"{0} sentimeter persegi"}
                per{"{0} per sentimeter persegi"}
            }
            square-foot{
                dnam{"kaki persegi"}
                other{"{0} kaki persegi"}
            }
            square-inch{
                dnam{"inci persegi"}
                other{"{0} inci persegi"}
                per{"{0} per inci persegi"}
            }
            square-kilometer{
                dnam{"kilometer persegi"}
                other{"{0} kilometer persegi"}
                per{"{0} per kilometer persegi"}
            }
            square-meter{
                dnam{"meter persegi"}
                other{"{0} meter persegi"}
                per{"{0} per meter persegi"}
            }
            square-mile{
                dnam{"mil persegi"}
                other{"{0} mil persegi"}
                per{"{0} per mil persegi"}
            }
            square-yard{
                dnam{"yard persegi"}
                other{"{0} yard persegi"}
            }
        }
        compound{
            per{"{0} per {1}"}
        }
        concentr{
            karat{
                dnam{"karat"}
                other{"{0} karat"}
            }
            milligram-per-deciliter{
                dnam{"milligram per desiliter"}
                other{"{0} milligram per desiliter"}
            }
            millimole-per-liter{
                dnam{"millimol per liter"}
                other{"{0} millimol per liter"}
            }
            percent{
                dnam{"persen"}
                other{"{0} persen"}
            }
            permille{
                dnam{"permil"}
                other{"{0} permil"}
            }
            permillion{
                dnam{"bagian per juta"}
                other{"{0} bagian per juta"}
            }
            permyriad{
                dnam{"permyriad"}
                other{"{0} permyriad"}
            }
        }
        consumption{
            liter-per-100-kilometer{
                dnam{"liter per 100 kilometer"}
                other{"{0} liter per 100 kilometer"}
            }
            liter-per-kilometer{
                dnam{"liter per kilometer"}
                other{"{0} liter per kilometer"}
            }
            mile-per-gallon{
                dnam{"mil per galon"}
                other{"{0} mil per galon"}
            }
            mile-per-gallon-imperial{
                dnam{"mil per galon Imp."}
                other{"{0} mil per galon Imp."}
            }
        }
        coordinate{
            dnam{"arah mata angin"}
            east{"{0} timur"}
            north{"{0} utara"}
            south{"{0} selatan"}
            west{"{0} barat"}
        }
        digital{
            bit{
                dnam{"bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"byte"}
                other{"{0} byte"}
            }
            gigabit{
                dnam{"gigabit"}
                other{"{0} gigabit"}
            }
            gigabyte{
                dnam{"gigabyte"}
                other{"{0} gigabyte"}
            }
            kilobit{
                dnam{"kilobit"}
                other{"{0} kilobit"}
            }
            kilobyte{
                dnam{"kilobyte"}
                other{"{0} kilobyte"}
            }
            megabit{
                dnam{"megabit"}
                other{"{0} megabit"}
            }
            megabyte{
                dnam{"megabyte"}
                other{"{0} megabyte"}
            }
            petabyte{
                dnam{"petabyte"}
                other{"{0} petabyte"}
            }
            terabit{
                dnam{"terabit"}
                other{"{0} terabit"}
            }
            terabyte{
                dnam{"terabyte"}
                other{"{0} terabyte"}
            }
        }
        duration{
            century{
                dnam{"abad"}
                other{"{0} abad"}
            }
            day{
                dnam{"hari"}
                other{"{0} hari"}
                per{"{0} per hari"}
            }
            decade{
                dnam{"dekade"}
                other{"{0} dekade"}
            }
            hour{
                dnam{"jam"}
                other{"{0} jam"}
                per{"{0} per jam"}
            }
            microsecond{
                dnam{"mikrodetik"}
                other{"{0} mikrodetik"}
            }
            millisecond{
                dnam{"milidetik"}
                other{"{0} milidetik"}
            }
            minute{
                dnam{"menit"}
                other{"{0} menit"}
                per{"{0} per menit"}
            }
            month{
                dnam{"bulan"}
                other{"{0} bulan"}
                per{"{0} per bulan"}
            }
            nanosecond{
                dnam{"nanodetik"}
                other{"{0} nanodetik"}
            }
            second{
                dnam{"detik"}
                other{"{0} detik"}
                per{"{0} per detik"}
            }
            week{
                dnam{"minggu"}
                other{"{0} minggu"}
                per{"{0} per minggu"}
            }
            year{
                dnam{"tahun"}
                other{"{0} tahun"}
                per{"{0} per tahun"}
            }
        }
        electric{
            ampere{
                dnam{"ampere"}
                other{"{0} ampere"}
            }
            milliampere{
                dnam{"miliampere"}
                other{"{0} miliampere"}
            }
            ohm{
                dnam{"ohm"}
                other{"{0} ohm"}
            }
            volt{
                dnam{"volt"}
                other{"{0} volt"}
            }
        }
        energy{
            british-thermal-unit{
                dnam{"satuan panas Britania"}
                other{"{0} satuan panas Britania"}
            }
            calorie{
                dnam{"kalori"}
                other{"{0} kalori"}
            }
            electronvolt{
                dnam{"elektronvolt"}
                other{"{0} elektronvolt"}
            }
            foodcalorie{
                dnam{"Kalori"}
                other{"{0} Kalori"}
            }
            joule{
                dnam{"joule"}
                other{"{0} joule"}
            }
            kilocalorie{
                dnam{"kilokalori"}
                other{"{0} kilokalori"}
            }
            kilojoule{
                dnam{"kilojoule"}
                other{"{0} kilojoule"}
            }
            kilowatt-hour{
                dnam{"kilowatt-jam"}
                other{"{0} kilowatt-jam"}
            }
            therm-us{
                dnam{"therm AS"}
                other{"{0} therm AS"}
            }
        }
        force{
            newton{
                dnam{"newton"}
                other{"{0} newton"}
            }
            pound-force{
                dnam{"pound gaya"}
                other{"{0} pound gaya"}
            }
        }
        frequency{
            gigahertz{
                dnam{"gigahertz"}
                other{"{0} gigahertz"}
            }
            hertz{
                dnam{"hertz"}
                other{"{0} hertz"}
            }
            kilohertz{
                dnam{"kilohertz"}
                other{"{0} kilohertz"}
            }
            megahertz{
                dnam{"megahertz"}
                other{"{0} megahertz"}
            }
        }
        graphics{
            dot-per-centimeter{
                dnam{"dot per sentimeter"}
                other{"{0} dot per sentimeter"}
            }
            dot-per-inch{
                dnam{"dot per inci"}
                other{"{0} dot per inci"}
            }
            em{
                dnam{"em tipografis"}
            }
            megapixel{
                dnam{"megapiksel"}
                other{"{0} megapiksel"}
            }
            pixel{
                dnam{"piksel"}
                other{"{0} piksel"}
            }
            pixel-per-centimeter{
                dnam{"piksel per sentimeter"}
                other{"{0} piksel per sentimeter"}
            }
            pixel-per-inch{
                dnam{"piksel per inci"}
                other{"{0} piksel per inci"}
            }
        }
        length{
            astronomical-unit{
                dnam{"satuan astronomi"}
                other{"{0} satuan astronomi"}
            }
            centimeter{
                dnam{"sentimeter"}
                other{"{0} sentimeter"}
                per{"{0} per sentimeter"}
            }
            decimeter{
                dnam{"desimeter"}
                other{"{0} desimeter"}
            }
            earth-radius{
                dnam{"jari-jari Bumi"}
                other{"{0} jari-jari Bumi"}
            }
            fathom{
                dnam{"depa"}
                other{"{0} depa"}
            }
            foot{
                dnam{"kaki"}
                other{"{0} kaki"}
                per{"{0} per kaki"}
            }
            furlong{
                dnam{"furlong"}
                other{"{0} furlong"}
            }
            inch{
                dnam{"inci"}
                other{"{0} inci"}
                per{"{0} per inci"}
            }
            kilometer{
                dnam{"kilometer"}
                other{"{0} kilometer"}
                per{"{0} per kilometer"}
            }
            light-year{
                dnam{"tahun cahaya"}
                other{"{0} tahun cahaya"}
            }
            meter{
                dnam{"meter"}
                other{"{0} meter"}
                per{"{0} per 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 laut"}
                other{"{0} mil laut"}
            }
            parsec{
                dnam{"parsec"}
                other{"{0} parsec"}
            }
            picometer{
                dnam{"pikometer"}
                other{"{0} pikometer"}
            }
            point{
                dnam{"poin"}
                other{"{0} poin"}
            }
            solar-radius{
                dnam{"radius Matahari"}
                other{"{0} radius Matahari"}
            }
            yard{
                dnam{"yard"}
                other{"{0} yard"}
            }
        }
        light{
            candela{
                dnam{"candela"}
                other{"{0} candela"}
            }
            lumen{
                dnam{"lumen"}
                other{"{0} lumen"}
            }
            lux{
                dnam{"lux"}
                other{"{0} lux"}
            }
            solar-luminosity{
                dnam{"luminositas matahari"}
                other{"{0} luminositas matahari"}
            }
        }
        mass{
            carat{
                dnam{"karat"}
                other{"{0} karat"}
            }
            dalton{
                dnam{"dalton"}
                other{"{0} dalton"}
            }
            earth-mass{
                dnam{"massa Bumi"}
                other{"{0} massa Bumi"}
            }
            grain{
                dnam{"grain"}
                other{"{0} grain"}
            }
            gram{
                dnam{"gram"}
                other{"{0} gram"}
                per{"{0} per gram"}
            }
            kilogram{
                dnam{"kilogram"}
                other{"{0} kilogram"}
                per{"{0} per kilogram"}
            }
            metric-ton{
                dnam{"metrik ton"}
                other{"{0} metrik ton"}
            }
            microgram{
                dnam{"mikrogram"}
                other{"{0} mikrogram"}
            }
            milligram{
                dnam{"miligram"}
                other{"{0} miligram"}
            }
            ounce{
                dnam{"ounce"}
                other{"{0} ons"}
                per{"{0} per ounce"}
            }
            ounce-troy{
                dnam{"troy ons"}
                other{"{0} troy ons"}
            }
            pound{
                dnam{"pound"}
                other{"{0} pound"}
                per{"{0} per pound"}
            }
            solar-mass{
                dnam{"massa Matahari"}
                other{"{0} massa Matahari"}
            }
            stone{
                dnam{"stone"}
                other{"{0} stone"}
            }
            ton{
                dnam{"ton Amerika Serikat"}
                other{"{0} ton Amerika Serikat"}
            }
        }
        power{
            gigawatt{
                dnam{"gigawatt"}
                other{"{0} gigawatt"}
            }
            horsepower{
                dnam{"daya kuda"}
                other{"{0} daya kuda"}
            }
            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{"hektopascal"}
                other{"{0} hektopascal"}
            }
            inch-ofhg{
                dnam{"inci raksa"}
                other{"{0} inci raksa"}
            }
            kilopascal{
                dnam{"kilopascal"}
                other{"{0} kilopascal"}
            }
            megapascal{
                dnam{"megapascal"}
                other{"{0} megapascal"}
            }
            millibar{
                dnam{"milibar"}
                other{"{0} milibar"}
            }
            millimeter-ofhg{
                dnam{"milimeter raksa"}
                other{"{0} milimeter raksa"}
            }
            pascal{
                dnam{"pascal"}
                other{"{0} pascal"}
            }
            pound-force-per-square-inch{
                dnam{"pound per inci persegi"}
                other{"{0} pound per inci persegi"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilometer per jam"}
                other{"{0} kilometer per jam"}
            }
            knot{
                dnam{"knot"}
                other{"{0} knot"}
            }
            meter-per-second{
                dnam{"meter per detik"}
                other{"{0} meter per detik"}
            }
            mile-per-hour{
                dnam{"mil per jam"}
                other{"{0} mil per jam"}
            }
        }
        temperature{
            celsius{
                dnam{"derajat Celsius"}
                other{"{0} derajat Celsius"}
            }
            fahrenheit{
                dnam{"derajat Fahrenheit"}
                other{"{0} derajat Fahrenheit"}
            }
            generic{
                dnam{"°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"kelvin"}
                other{"{0} kelvin"}
            }
        }
        torque{
            newton-meter{
                dnam{"newton meter"}
                other{"{0} newton meter"}
            }
            pound-force-foot{
                dnam{"pound kaki"}
                other{"{0} pound kaki"}
            }
        }
        volume{
            acre-foot{
                dnam{"ekar kaki"}
                other{"{0} ekar kaki"}
            }
            barrel{
                dnam{"barrel"}
                other{"{0} barrel"}
            }
            bushel{
                dnam{"gantang"}
                other{"{0} gantang"}
            }
            centiliter{
                dnam{"sentiliter"}
                other{"{0} sentiliter"}
            }
            cubic-centimeter{
                dnam{"sentimeter kubik"}
                other{"{0} sentimeter kubik"}
                per{"{0} per 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} per meter kubik"}
            }
            cubic-mile{
                dnam{"mil kubik"}
                other{"{0} mil kubik"}
            }
            cubic-yard{
                dnam{"yard kubik"}
                other{"{0} yard kubik"}
            }
            cup{
                dnam{"cup"}
                other{"{0} cup"}
            }
            cup-metric{
                dnam{"metric cup"}
                other{"{0} metric cup"}
            }
            deciliter{
                dnam{"desiliter"}
                other{"{0} desiliter"}
            }
            dessert-spoon{
                dnam{"sendok dessert"}
                other{"{0} sendok dessert"}
            }
            dessert-spoon-imperial{
                dnam{"sendok dessert Imp."}
                other{"{0} sendok dessert Imp."}
            }
            dram{
                dnam{"dram"}
                other{"{0} dram"}
            }
            drop{
                dnam{"tetes"}
                other{"{0} tetes"}
            }
            fluid-ounce{
                dnam{"fluid ounce"}
                other{"{0} fluid ounce"}
            }
            fluid-ounce-imperial{
                dnam{"Imp. fluid ounce"}
                other{"{0} Imp. fluid ounce"}
            }
            gallon{
                dnam{"galon"}
                other{"{0} galon"}
                per{"{0} per galon"}
            }
            gallon-imperial{
                dnam{"galon Imp."}
                other{"{0} galon Imp."}
                per{"{0} per galon Imp."}
            }
            hectoliter{
                dnam{"hektoliter"}
                other{"{0} hektoliter"}
            }
            jigger{
                dnam{"jigger"}
                other{"{0} sloki"}
            }
            liter{
                dnam{"liter"}
                other{"{0} liter"}
                per{"{0} per liter"}
            }
            megaliter{
                dnam{"megaliter"}
                other{"{0} megaliter"}
            }
            milliliter{
                dnam{"mililiter"}
                other{"{0} mililiter"}
            }
            pinch{
                dnam{"jumput"}
                other{"{0} jumput"}
            }
            pint{
                dnam{"pint"}
                other{"{0} pint"}
            }
            pint-metric{
                dnam{"metric pint"}
                other{"{0} metric pint"}
            }
            quart{
                dnam{"quart"}
                other{"{0} quart"}
            }
            quart-imperial{
                dnam{"quart Imp."}
                other{"{0} quart Imp."}
            }
            tablespoon{
                dnam{"sendok makan"}
                other{"{0} sendok makan"}
            }
            teaspoon{
                dnam{"sendok teh"}
                other{"{0} sendok teh"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                other{"{0} g"}
            }
            meter-per-square-second{
                dnam{"m/d²"}
                other{"{0}m/d²"}
            }
        }
        angle{
            arc-minute{
                other{"{0}′"}
            }
            arc-second{
                other{"{0}″"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        concentr{
            percent{
                dnam{"%"}
                other{"{0}%"}
            }
        }
        consumption{
            liter-per-100-kilometer{
                dnam{"L/100 km"}
                other{"{0}L/100 km"}
            }
        }
        coordinate{
            dnam{"arah"}
            east{"{0}T"}
            north{"{0}U"}
            south{"{0}S"}
            west{"{0}B"}
        }
        duration{
            century{
                dnam{"abad"}
                other{"{0} abad"}
            }
            day{
                dnam{"hari"}
                other{"{0}hr"}
                per{"{0}/hr"}
            }
            hour{
                dnam{"jam"}
                other{"{0}j"}
                per{"{0}/j"}
            }
            microsecond{
                dnam{"μdtk"}
                other{"{0} μd"}
            }
            millisecond{
                dnam{"milidtk"}
                other{"{0}md"}
            }
            minute{
                dnam{"mnt"}
                other{"{0}mnt"}
                per{"{0}/mnt"}
            }
            month{
                dnam{"bulan"}
                other{"{0}bln"}
                per{"{0}/bln"}
            }
            nanosecond{
                dnam{"nanodtk"}
                other{"{0} ndtk"}
            }
            second{
                dnam{"dtk"}
                other{"{0}dtk"}
                per{"{0}/dtk"}
            }
            week{
                dnam{"mgg"}
                other{"{0}mgg"}
                per{"{0}/mgg"}
            }
            year{
                dnam{"thn"}
                other{"{0}thn"}
                per{"{0}/thn"}
            }
        }
        length{
            astronomical-unit{
                dnam{"sa"}
                other{"{0}sa"}
            }
            centimeter{
                dnam{"cm"}
                other{"{0}cm"}
            }
            decimeter{
                other{"{0}dm"}
            }
            fathom{
                dnam{"depa"}
                other{"{0}dp"}
            }
            foot{
                dnam{"kaki"}
                per{"{0}/kaki"}
            }
            furlong{
                dnam{"furlong"}
                other{"{0}fur"}
            }
            inch{
                dnam{"inci"}
                other{"{0}″"}
            }
            kilometer{
                dnam{"km"}
                other{"{0}km"}
            }
            light-year{
                dnam{"thn cahaya"}
            }
            meter{
                dnam{"meter"}
                other{"{0}m"}
            }
            micrometer{
                dnam{"µmeter"}
                other{"{0}µm"}
            }
            mile{
                dnam{"mil"}
            }
            mile-scandinavian{
                other{"{0}smi"}
            }
            millimeter{
                dnam{"mm"}
                other{"{0}mm"}
            }
            nanometer{
                other{"{0}nm"}
            }
            nautical-mile{
                other{"{0}nmi"}
            }
            parsec{
                dnam{"parsec"}
                other{"{0}pc"}
            }
            point{
                dnam{"p"}
                other{"{0}p"}
            }
        }
        mass{
            carat{
                dnam{"karat"}
            }
            gram{
                dnam{"gram"}
                other{"{0}g"}
            }
            kilogram{
                dnam{"kg"}
                other{"{0}kg"}
            }
            ounce{
                dnam{"ons"}
            }
            pound{
                dnam{"pon"}
            }
            stone{
                dnam{"stone"}
            }
            ton{
                dnam{"ton"}
            }
        }
        pressure{
            inch-ofhg{
                dnam{"″ Hg"}
            }
            millimeter-ofhg{
                dnam{"mmHg"}
                other{"{0} mmHg"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/jam"}
                other{"{0}km/j"}
            }
            meter-per-second{
                dnam{"m/d"}
            }
            mile-per-hour{
                dnam{"mi/j"}
                other{"{0} mph"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                other{"{0}°C"}
            }
        }
        volume{
            liter{
                dnam{"liter"}
                other{"{0}L"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"g-force"}
                other{"{0} G"}
            }
            meter-per-square-second{
                dnam{"meter/dtk²"}
                other{"{0} m/dtk²"}
            }
        }
        angle{
            arc-minute{
                dnam{"mnt busur"}
                other{"{0} mnt busur"}
            }
            arc-second{
                dnam{"dtk busur"}
                other{"{0} dtk busur"}
            }
            degree{
                dnam{"derajat"}
                other{"{0}°"}
            }
            radian{
                dnam{"radian"}
                other{"{0} rad"}
            }
            revolution{
                dnam{"rev"}
                other{"{0} rev"}
            }
        }
        area{
            acre{
                dnam{"ekar"}
                other{"{0} ac"}
            }
            hectare{
                dnam{"hektare"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                other{"{0} cm²"}
                per{"{0}/cm²"}
            }
            square-foot{
                dnam{"kaki persegi"}
                other{"{0} ft²"}
            }
            square-inch{
                dnam{"inci²"}
                other{"{0} in²"}
                per{"{0}/in²"}
            }
            square-kilometer{
                dnam{"km²"}
                other{"{0} km²"}
                per{"{0}/km²"}
            }
            square-meter{
                dnam{"meter²"}
                other{"{0} m²"}
                per{"{0}/m²"}
            }
            square-mile{
                dnam{"mil persegi"}
                other{"{0} mi²"}
                per{"{0}/mi²"}
            }
            square-yard{
                dnam{"yard²"}
                other{"{0} yd²"}
            }
        }
        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{"millimol/liter"}
                other{"{0} mmol/L"}
            }
            percent{
                dnam{"persen"}
                other{"{0}%"}
            }
            permille{
                dnam{"permil"}
                other{"{0}‰"}
            }
            permillion{
                dnam{"bagian/juta"}
                other{"{0} ppm"}
            }
            permyriad{
                dnam{"permyriad"}
            }
        }
        consumption{
            liter-per-100-kilometer{
                dnam{"L/100 km"}
                other{"{0} L/100 km"}
            }
            liter-per-kilometer{
                dnam{"liter/km"}
                other{"{0} L/km"}
            }
            mile-per-gallon{
                dnam{"mil/gal"}
                other{"{0} mpg"}
            }
            mile-per-gallon-imperial{
                dnam{"mil/gal Imp."}
                other{"{0} mpg Imp."}
            }
        }
        coordinate{
            dnam{"arah"}
            east{"{0} T"}
            north{"{0} U"}
            south{"{0} S"}
            west{"{0} B"}
        }
        digital{
            bit{
                dnam{"bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"byte"}
                other{"{0} byte"}
            }
            gigabit{
                dnam{"Gbit"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"GByte"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kbit"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"kByte"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"Mbit"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"MByte"}
                other{"{0} MB"}
            }
            petabyte{
                dnam{"PByte"}
                other{"{0} PB"}
            }
            terabit{
                dnam{"Tbit"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"TByte"}
                other{"{0} TB"}
            }
        }
        duration{
            century{
                dnam{"abad"}
                other{"{0} abad"}
            }
            day{
                dnam{"hari"}
                other{"{0} hr"}
                per{"{0}/hr"}
            }
            decade{
                dnam{"dek"}
                other{"{0} dek"}
            }
            hour{
                dnam{"jam"}
                other{"{0} j"}
                per{"{0}/j"}
            }
            microsecond{
                dnam{"μdtk"}
                other{"{0} μd"}
            }
            millisecond{
                dnam{"milidtk"}
                other{"{0} md"}
            }
            minute{
                dnam{"mnt"}
                other{"{0} mnt"}
                per{"{0}/mnt"}
            }
            month{
                dnam{"bulan"}
                other{"{0} bln"}
                per{"{0}/bln"}
            }
            nanosecond{
                dnam{"nanodtk"}
                other{"{0} ndtk"}
            }
            second{
                dnam{"dtk"}
                other{"{0} dtk"}
                per{"{0}/dtk"}
            }
            week{
                dnam{"minggu"}
                other{"{0} mgg"}
                per{"{0}/mgg"}
            }
            year{
                dnam{"tahun"}
                other{"{0} thn"}
                per{"{0}/thn"}
            }
        }
        electric{
            ampere{
                dnam{"amp"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"miliamp"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"ohm"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"volt"}
                other{"{0} V"}
            }
        }
        energy{
            british-thermal-unit{
                dnam{"BTU"}
            }
            calorie{
                dnam{"kal"}
                other{"{0} kal"}
            }
            electronvolt{
                dnam{"elektronvolt"}
            }
            foodcalorie{
                dnam{"Kal"}
                other{"{0} Kal"}
            }
            joule{
                dnam{"joule"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kkal"}
                other{"{0} kkal"}
            }
            kilojoule{
                dnam{"kilojoule"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kW-jam"}
                other{"{0} kWh"}
            }
            therm-us{
                dnam{"therm AS"}
                other{"{0} therm AS"}
            }
        }
        force{
            newton{
                dnam{"newton"}
            }
            pound-force{
                dnam{"pound gaya"}
            }
        }
        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"}
            }
        }
        graphics{
            megapixel{
                dnam{"megapiksel"}
            }
            pixel{
                dnam{"piksel"}
            }
        }
        length{
            astronomical-unit{
                dnam{"sa"}
                other{"{0} sa"}
            }
            centimeter{
                dnam{"cm"}
                other{"{0} cm"}
                per{"{0}/cm"}
            }
            decimeter{
                dnam{"dm"}
                other{"{0} dm"}
            }
            fathom{
                dnam{"dp"}
                other{"{0} dp"}
            }
            foot{
                dnam{"kaki"}
                other{"{0} ft"}
                per{"{0}/ft"}
            }
            furlong{
                dnam{"furlong"}
            }
            inch{
                dnam{"inci"}
                other{"{0} in"}
                per{"{0}/in"}
            }
            kilometer{
                dnam{"km"}
                other{"{0} km"}
                per{"{0}/km"}
            }
            light-year{
                dnam{"thn cahaya"}
                other{"{0} tc"}
            }
            meter{
                dnam{"meter"}
                other{"{0} m"}
                per{"{0}/m"}
            }
            micrometer{
                dnam{"µmeter"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mil"}
                other{"{0} mi"}
            }
            mile-scandinavian{
                dnam{"smi"}
                other{"{0} smi"}
            }
            millimeter{
                dnam{"mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"nmi"}
                other{"{0} nmi"}
            }
            parsec{
                dnam{"parsec"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pm"}
                other{"{0} pm"}
            }
            point{
                dnam{"poin"}
                other{"{0} p"}
            }
            solar-radius{
                dnam{"radius Matahari"}
            }
            yard{
                dnam{"yard"}
                other{"{0} yd"}
            }
        }
        light{
            candela{
                dnam{"cd"}
                other{"{0} cd"}
            }
            lumen{
                dnam{"lm"}
                other{"{0} lm"}
            }
            lux{
                dnam{"lux"}
                other{"{0} lx"}
            }
            solar-luminosity{
                dnam{"luminositas matahari"}
            }
        }
        mass{
            carat{
                dnam{"karat"}
                other{"{0} CD"}
            }
            dalton{
                dnam{"dalton"}
            }
            earth-mass{
                dnam{"massa Bumi"}
            }
            grain{
                dnam{"grain"}
                other{"{0} grain"}
            }
            gram{
                dnam{"gram"}
                other{"{0} g"}
                per{"{0}/g"}
            }
            kilogram{
                dnam{"kg"}
                other{"{0} kg"}
                per{"{0}/kg"}
            }
            metric-ton{
                dnam{"t"}
                other{"{0} t"}
            }
            microgram{
                dnam{"µg"}
                other{"{0} µg"}
            }
            milligram{
                dnam{"mg"}
                other{"{0} mg"}
            }
            ounce{
                dnam{"oz"}
                other{"{0} oz"}
                per{"{0}/oz"}
            }
            ounce-troy{
                dnam{"oz troy"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"pound"}
                other{"{0} lb"}
                per{"{0}/lb"}
            }
            solar-mass{
                dnam{"massa Matahari"}
            }
            stone{
                dnam{"stone"}
            }
            ton{
                dnam{"ton AS"}
                other{"{0} tn AS"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"hp"}
                other{"{0} hp"}
            }
            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-ofhg{
                dnam{"in Hg"}
                other{"{0} inHg"}
            }
            millibar{
                dnam{"mbar"}
                other{"{0} mbar"}
            }
            millimeter-ofhg{
                dnam{"mmHg"}
                other{"{0} mmHg"}
            }
            pound-force-per-square-inch{
                dnam{"psi"}
                other{"{0} psi"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/jam"}
                other{"{0} km/j"}
            }
            knot{
                dnam{"kn"}
                other{"{0} kn"}
            }
            meter-per-second{
                dnam{"meter/dtk"}
                other{"{0} m/dtk"}
            }
            mile-per-hour{
                dnam{"mi/h"}
                other{"{0} mph"}
            }
        }
        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{"ac ft"}
                other{"{0} ac ft"}
            }
            barrel{
                dnam{"barrel"}
            }
            bushel{
                dnam{"gantang"}
            }
            centiliter{
                dnam{"cL"}
                other{"{0} cL"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                other{"{0} cm³"}
                per{"{0}/cm³"}
            }
            cubic-foot{
                dnam{"ft³"}
                other{"{0} ft³"}
            }
            cubic-inch{
                dnam{"inci³"}
                other{"{0} in³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                other{"{0} m³"}
                per{"{0}/m³"}
            }
            cubic-mile{
                dnam{"mi³"}
                other{"{0} mi³"}
            }
            cubic-yard{
                dnam{"yard³"}
                other{"{0} yd³"}
            }
            cup{
                dnam{"cup"}
                other{"{0} c"}
            }
            cup-metric{
                dnam{"mcup"}
                other{"{0} mc"}
            }
            deciliter{
                dnam{"dL"}
                other{"{0} dL"}
            }
            dram{
                dnam{"dram cairan"}
            }
            drop{
                dnam{"tetes"}
                other{"{0} tetes"}
            }
            fluid-ounce{
                dnam{"fl oz"}
                other{"{0} fl oz"}
            }
            gallon{
                dnam{"gal"}
                other{"{0} gal"}
                per{"{0}/gal"}
            }
            gallon-imperial{
                dnam{"gal Imp."}
                other{"{0} gal Imp."}
                per{"{0}/gal Imp."}
            }
            hectoliter{
                dnam{"hL"}
                other{"{0} hL"}
            }
            jigger{
                dnam{"sloki"}
                other{"{0} sloki"}
            }
            liter{
                dnam{"liter"}
                other{"{0} l"}
                per{"{0}/l"}
            }
            megaliter{
                dnam{"ML"}
                other{"{0} ML"}
            }
            milliliter{
                dnam{"mL"}
                other{"{0} mL"}
            }
            pinch{
                dnam{"jumput"}
                other{"{0} jumput"}
            }
            pint{
                dnam{"pint"}
                other{"{0} pt"}
            }
            pint-metric{
                dnam{"mpt"}
                other{"{0} mpt"}
            }
            quart{
                dnam{"qt"}
                other{"{0} qt"}
            }
            quart-imperial{
                dnam{"qt Imp."}
                other{"{0} qt Imp."}
            }
            tablespoon{
                dnam{"sdm"}
                other{"{0} sdm"}
            }
            teaspoon{
                dnam{"sdt"}
                other{"{0} sdt"}
            }
        }
    }
}
