﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/to.xml
// *
// ***************************************************************************
to{
    Version{"2.1.15.80"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"k-mālohi"}
                other{"k-mālohi ʻe {0}"}
            }
            meter-per-second-squared{
                dnam{"mita he sekoni sikuea"}
                other{"mita he sekoni sikuea ʻe {0}"}
            }
        }
        angle{
            arc-minute{
                dnam{"miniti seakale"}
                other{"miniti seakale ʻe {0}"}
            }
            arc-second{
                dnam{"sekoni seakale"}
                other{"sekoni seakale ʻe {0}"}
            }
            degree{
                dnam{"tikili seakale"}
                other{"tikili seakale ʻe {0}"}
            }
            radian{
                dnam{"lētiani"}
                other{"lētiani ʻe {0}"}
            }
        }
        area{
            acre{
                dnam{"ʻeka ʻe"}
                other{"ʻeka ʻe {0}"}
            }
            hectare{
                dnam{"hekitale"}
                other{"hekitale ʻe {0}"}
            }
            square-centimeter{
                dnam{"senitimita sikuea"}
                other{"senitimita sikuea ʻe {0}"}
            }
            square-foot{
                dnam{"fute sikuea"}
                other{"fute sikuea ʻe {0}"}
            }
            square-inch{
                dnam{"ʻinisi sikuea"}
                other{"ʻinisi sikuea ʻe {0}"}
            }
            square-kilometer{
                dnam{"kilomita sikuea"}
                other{"kilomita sikuea ʻe {0}"}
            }
            square-meter{
                dnam{"mita sikuea ʻe"}
                other{"mita sikuea ʻe {0}"}
            }
            square-mile{
                dnam{"maile sikuea"}
                other{"maile sikuea ʻe {0}"}
            }
            square-yard{
                dnam{"iate sikuea"}
                other{"iate sikuea ʻe {0}"}
            }
        }
        compound{
            per{"{0} ʻi he {1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"lita he kilomita"}
                other{"lita he kilomita ʻe {0}"}
            }
            mile-per-gallon{
                dnam{"maile he kālani"}
                other{"maile he kālani ʻe {0}"}
            }
        }
        digital{
            bit{
                dnam{"ʻū piti"}
                other{"piti ʻe {0}"}
            }
            byte{
                dnam{"paiti"}
                other{"paiti ʻe {0}"}
            }
            gigabit{
                dnam{"kikapiti"}
                other{"kikapiti ʻe {0}"}
            }
            gigabyte{
                dnam{"kikapaiti"}
                other{"kikapaiti ʻe {0}"}
            }
            kilobit{
                dnam{"kilopiti"}
                other{"kilopiti ʻe {0}"}
            }
            kilobyte{
                dnam{"kilopaiti"}
                other{"kilopaiti ʻe {0}"}
            }
            megabit{
                dnam{"mekapiti"}
                other{"mekapiti ʻe {0}"}
            }
            megabyte{
                dnam{"mekapaiti"}
                other{"mekapaiti ʻe {0}"}
            }
            terabit{
                dnam{"telapiti"}
                other{"telapiti ʻe {0}"}
            }
            terabyte{
                dnam{"telapaiti"}
                other{"telapaiti ʻe {0}"}
            }
        }
        duration{
            day{
                dnam{"ʻaho"}
                other{"ʻaho ʻe {0}"}
            }
            hour{
                dnam{"houa"}
                other{"houa ʻe {0}"}
                per{"{0} ki he houa"}
            }
            microsecond{
                dnam{"mikolosekoni"}
                other{"mikolosekoni ʻe {0}"}
            }
            millisecond{
                dnam{"milisekoni"}
                other{"milisekoni ʻe {0}"}
            }
            minute{
                dnam{"miniti"}
                other{"miniti ʻe {0}"}
            }
            month{
                dnam{"māhina"}
                other{"māhina ʻe {0}"}
            }
            nanosecond{
                dnam{"nanosekoni"}
                other{"nanosekoni ʻe {0}"}
            }
            second{
                dnam{"sekoni"}
                other{"sekoni ʻe {0}"}
                per{"{0} ki he sekoni"}
            }
            week{
                dnam{"uike"}
                other{"uike ʻe {0}"}
            }
            year{
                dnam{"taʻu"}
                other{"taʻu ʻe {0}"}
            }
        }
        electric{
            ampere{
                dnam{"ʻamipele"}
                other{"ʻamipele ʻe {0}"}
            }
            milliampere{
                dnam{"miliʻamipele"}
                other{"miliʻamipele ʻe {0}"}
            }
            ohm{
                dnam{"ʻōmi"}
                other{"ʻōmi ʻe {0}"}
            }
            volt{
                dnam{"volotā"}
                other{"volotā ʻe {0}"}
            }
        }
        energy{
            calorie{
                dnam{"ʻū kaloli"}
                other{"kaloli ʻe {0}"}
            }
            foodcalorie{
                dnam{"ʻū kaloli-kai"}
                other{"kaloli-kai ʻe {0}"}
            }
            joule{
                dnam{"siule"}
                other{"siule ʻe {0}"}
            }
            kilocalorie{
                dnam{"kilokaloli"}
                other{"kilokaloli ʻe {0}"}
            }
            kilojoule{
                dnam{"kilosiule"}
                other{"kilosiule ʻe {0}"}
            }
            kilowatt-hour{
                dnam{"kilouate-houa"}
                other{"kilouate-houa ʻe {0}"}
            }
        }
        frequency{
            gigahertz{
                dnam{"kikahēti"}
                other{"kikahēti ʻe {0}"}
            }
            hertz{
                dnam{"hēti"}
                other{"hēti ʻe {0}"}
            }
            kilohertz{
                dnam{"kilohēti"}
                other{"kilohēti ʻe {0}"}
            }
            megahertz{
                dnam{"megahēti"}
                other{"megahēti ʻe {0}"}
            }
        }
        length{
            astronomical-unit{
                dnam{"ʻiuniti fakaʻasitalōnoma"}
                other{"ʻiuniti fakaʻasitalōnoma ʻe {0}"}
            }
            centimeter{
                dnam{"senitimita"}
                other{"senitimita ʻe {0}"}
            }
            decimeter{
                dnam{"tesimita"}
                other{"tesimita ʻe {0}"}
            }
            fathom{
                dnam{"ofa"}
                other{"ofa ʻe {0}"}
            }
            foot{
                dnam{"fute"}
                other{"fute ʻe {0}"}
            }
            furlong{
                dnam{"fālongo"}
                other{"fālongo ʻe {0}"}
            }
            inch{
                dnam{"ʻinisi"}
                other{"ʻinisi ʻe {0}"}
            }
            kilometer{
                dnam{"kilomita"}
                other{"kilomita ʻe {0}"}
            }
            light-year{
                dnam{"taʻumaama"}
                other{"taʻumaama ʻe {0}"}
            }
            meter{
                dnam{"mita"}
                other{"mita ʻe {0}"}
            }
            micrometer{
                dnam{"maikolomita"}
                other{"maikolomita ʻe {0}"}
            }
            mile{
                dnam{"maile"}
                other{"maile ʻe {0}"}
            }
            millimeter{
                dnam{"milimita"}
                other{"milimita ʻe {0}"}
            }
            nanometer{
                dnam{"nanomita"}
                other{"nanomita ʻe {0}"}
            }
            nautical-mile{
                dnam{"maile ʻi tahi"}
                other{"maile ʻi tahi ʻe {0}"}
            }
            parsec{
                dnam{"ngaofesekoni"}
                other{"ngaofesekoni ʻe {0}"}
            }
            picometer{
                dnam{"pikomita"}
                other{"pikomita ʻe {0}"}
            }
            yard{
                dnam{"iate"}
                other{"iate ʻe {0}"}
            }
        }
        light{
            lux{
                dnam{"lukisi"}
                other{"lukisi ʻe {0}"}
            }
        }
        mass{
            carat{
                dnam{"kalati"}
                other{"kalati ʻe {0}"}
            }
            gram{
                dnam{"kalami"}
                other{"kalami ʻe {0}"}
            }
            kilogram{
                dnam{"kilokalami"}
                other{"kilokalami ʻe {0}"}
            }
            metric-ton{
                dnam{"toni"}
                other{"toni ʻe {0}"}
            }
            microgram{
                dnam{"maikolokalami"}
                other{"maikolokalami ʻe {0}"}
            }
            milligram{
                dnam{"milikalami"}
                other{"milikalami ʻe {0}"}
            }
            ounce{
                dnam{"ʻaunise"}
                other{"ʻaunisi ʻe {0}"}
            }
            ounce-troy{
                dnam{"ʻaunisi koula"}
                other{"ʻaunisi koula ʻe {0}"}
            }
            pound{
                dnam{"pāuni"}
                other{"pāuni ʻe {0}"}
            }
            stone{
                dnam{"sitoni"}
                other{"sitoni ʻe {0}"}
            }
            ton{
                dnam{"toni nounou"}
                other{"toni nounou ʻe {0}"}
            }
        }
        power{
            gigawatt{
                dnam{"kikauate"}
                other{"kikauate ʻe {0}"}
            }
            horsepower{
                dnam{"hoosipaoa"}
                other{"hoosipaoa ʻe {0}"}
            }
            kilowatt{
                dnam{"kilouate"}
                other{"kilouate ʻe {0}"}
            }
            megawatt{
                dnam{"mekauate"}
                other{"mekauate ʻe {0}"}
            }
            milliwatt{
                dnam{"miliuate"}
                other{"miliuate ʻe {0}"}
            }
            watt{
                dnam{"uate"}
                other{"uate ʻe {0}"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hēkitopasikale"}
                other{"hēkitopasikale ʻe {0}"}
            }
            inch-hg{
                dnam{"ʻinisi mēkuli"}
                other{"ʻinisi mēkuli ʻe {0}"}
            }
            millibar{
                dnam{"milipā"}
                other{"milipā ʻe {0}"}
            }
            millimeter-of-mercury{
                dnam{"milimita mēkuli"}
                other{"milimita mēkuli ʻe {0}"}
            }
            pound-per-square-inch{
                dnam{"pāuni he ʻinisi sikuea"}
                other{"pāuni he ʻinisi sikuea ʻe {0}"}
            }
        }
        proportion{
            karat{
                dnam{"kalati"}
                other{"kalati ʻe {0}"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilomita he houa"}
                other{"kilomita he houa ʻe {0}"}
            }
            meter-per-second{
                dnam{"mita he sekoni"}
                other{"mita he sekoni ʻe {0}"}
            }
            mile-per-hour{
                dnam{"maile he houa"}
                other{"maile he houa ʻe {0}"}
            }
        }
        temperature{
            celsius{
                dnam{"tikili selisiasi"}
                other{"tikili selisiasi ʻe {0}"}
            }
            fahrenheit{
                dnam{"tikili felenihaiti"}
                other{"tikili felenihaiti ʻe {0}"}
            }
            kelvin{
                dnam{"kelevini"}
                other{"kelevini ʻe {0}"}
            }
        }
        volume{
            acre-foot{
                dnam{"ʻeka-fute"}
                other{"ʻeka-fute ʻe {0}"}
            }
            bushel{
                dnam{"pūseli"}
                other{"pūseli ʻe {0}"}
            }
            centiliter{
                dnam{"senitilita"}
                other{"senitilita ʻe {0}"}
            }
            cubic-centimeter{
                dnam{"senitimita kiupiki"}
                other{"senitimita kiupiki ʻe {0}"}
            }
            cubic-foot{
                dnam{"fute kiupiki"}
                other{"fute kiupiki ʻe {0}"}
            }
            cubic-inch{
                dnam{"ʻinisi kiupiki"}
                other{"ʻinisi kiupiki ʻe {0}"}
            }
            cubic-kilometer{
                dnam{"kilomita kiupiki"}
                other{"kilomita kiupiki ʻe {0}"}
            }
            cubic-meter{
                dnam{"mita kiupiki"}
                other{"mita kiupiki ʻe {0}"}
            }
            cubic-mile{
                dnam{"maile kiupiki"}
                other{"maile kiupiki ʻe {0}"}
            }
            cubic-yard{
                dnam{"iate kiupiki"}
                other{"iate kiupiki ʻe {0}"}
            }
            cup{
                dnam{"ipu"}
                other{"ipu ʻe {0}"}
            }
            deciliter{
                dnam{"tesilita"}
                other{"tesilita ʻe {0}"}
            }
            fluid-ounce{
                dnam{"ʻaunise tafe"}
                other{"ʻaunise tafe ʻe {0}"}
            }
            gallon{
                dnam{"kālani"}
                other{"kālani ʻe {0}"}
            }
            hectoliter{
                dnam{"hēkitolita"}
                other{"hēkitolita ʻe {0}"}
            }
            liter{
                dnam{"lita"}
                other{"lita ʻe {0}"}
            }
            megaliter{
                dnam{"mekalita"}
                other{"mekalita ʻe {0}"}
            }
            milliliter{
                dnam{"mililita"}
                other{"mililita ʻe {0}"}
            }
            pint{
                dnam{"painite"}
                other{"painite ʻe {0}"}
            }
            quart{
                dnam{"kuata"}
                other{"kuata ʻe {0}"}
            }
            tablespoon{
                dnam{"sēpuni tēpile"}
                other{"sēpuni tēpile ʻe {0}"}
            }
            teaspoon{
                dnam{"sēpuni tī"}
                other{"sēpuni tī ʻe {0}"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                dnam{"k-mā"}
                other{"{0} k-mā"}
            }
            meter-per-second-squared{
                dnam{"m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"′"}
                other{"{0}′"}
            }
            arc-second{
                dnam{"″"}
                other{"{0}″"}
            }
            degree{
                dnam{"°"}
                other{"{0}°"}
            }
            radian{
                dnam{"lēt"}
                other{"{0} lēt"}
            }
        }
        area{
            acre{
                dnam{"ʻek"}
                other{"{0} ʻek"}
            }
            hectare{
                dnam{"ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"sm²"}
                other{"{0} sm²"}
            }
            square-foot{
                dnam{"ft²"}
                other{"{0} ft²"}
            }
            square-inch{
                dnam{"in²"}
                other{"{0} in²"}
            }
            square-kilometer{
                dnam{"km²"}
                other{"{0} km²"}
            }
            square-meter{
                dnam{"m²"}
                other{"{0} m²"}
            }
            square-mile{
                dnam{"mi²"}
                other{"{0} mi²"}
            }
            square-yard{
                dnam{"it²"}
                other{"{0} it²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"l/km"}
                other{"{0} l/km"}
            }
            mile-per-gallon{
                dnam{"mi/kā"}
                other{"{0} mi/kā"}
            }
        }
        digital{
            bit{
                dnam{"b"}
                other{"{0} b"}
            }
            byte{
                dnam{"B"}
                other{"{0} B"}
            }
            gigabit{
                dnam{"Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"kB"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"MB"}
                other{"{0} MB"}
            }
            terabit{
                dnam{"Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"TB"}
                other{"{0} TB"}
            }
        }
        duration{
            day{
                dnam{"ʻa"}
                other{"{0} ʻa"}
            }
            hour{
                dnam{"h"}
                other{"{0} h"}
                per{"{0} /h"}
            }
            microsecond{
                dnam{"μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"m"}
                other{"{0} m"}
            }
            month{
                dnam{"m"}
                other{"{0} m"}
            }
            nanosecond{
                dnam{"ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"s"}
                other{"{0} s"}
                per{"{0} /s"}
            }
            week{
                dnam{"u"}
                other{"{0} u"}
            }
            year{
                dnam{"t"}
                other{"{0} t"}
            }
        }
        electric{
            ampere{
                dnam{"A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"Ω"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"V"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"kal"}
                other{"{0} kal"}
            }
            foodcalorie{
                dnam{"kal-k"}
                other{"{0} kal-k"}
            }
            joule{
                dnam{"J"}
                other{"J ʻe {0}"}
            }
            kilocalorie{
                dnam{"kkal"}
                other{"{0} kkal"}
            }
            kilojoule{
                dnam{"kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kWh"}
                other{"{0} kWh"}
            }
        }
        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{"ʻiʻa"}
                other{"{0} ʻiʻa"}
            }
            centimeter{
                dnam{"sm"}
                other{"{0} sm"}
            }
            decimeter{
                dnam{"tm"}
                other{"{0} tm"}
            }
            fathom{
                dnam{"o"}
                other{"{0} o"}
            }
            foot{
                dnam{"ft"}
                other{"{0} ft"}
            }
            furlong{
                dnam{"fāl"}
                other{"{0} fāl"}
            }
            inch{
                dnam{"in"}
                other{"{0} in"}
            }
            kilometer{
                dnam{"km"}
                other{"{0} km"}
            }
            light-year{
                dnam{"tma"}
                other{"{0} tma"}
            }
            meter{
                dnam{"m"}
                other{"{0} m"}
            }
            micrometer{
                dnam{"µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mi"}
                other{"{0} mi"}
            }
            millimeter{
                dnam{"mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"mt"}
                other{"{0} mt"}
            }
            parsec{
                dnam{"ngs"}
                other{"{0} ngs"}
            }
            picometer{
                dnam{"pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"it"}
                other{"{0} it"}
            }
        }
        light{
            lux{
                dnam{"lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"kt"}
                other{"{0} kt"}
            }
            gram{
                dnam{"k"}
                other{"{0} k"}
            }
            kilogram{
                dnam{"kk"}
                other{"{0} kk"}
            }
            metric-ton{
                dnam{"to"}
                other{"{0} to"}
            }
            microgram{
                dnam{"μk"}
                other{"{0} μk"}
            }
            milligram{
                dnam{"mk"}
                other{"{0} mk"}
            }
            ounce{
                dnam{"ʻau"}
                other{"{0} ʻau"}
            }
            ounce-troy{
                dnam{"ʻau-k"}
                other{"{0} ʻau-k"}
            }
            pound{
                dnam{"pā"}
                other{"{0} pā"}
            }
            stone{
                dnam{"st"}
                other{"{0} st"}
            }
            ton{
                dnam{"tn"}
                other{"{0} tn"}
            }
        }
        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{"W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"in-Hg"}
                other{"{0} in-Hg"}
            }
            millibar{
                dnam{"mpā"}
                other{"{0} mpā"}
            }
            millimeter-of-mercury{
                dnam{"mm-Hg"}
                other{"{0} mm-Hg"}
            }
            pound-per-square-inch{
                dnam{"pā/in²"}
                other{"{0} pā/in²"}
            }
        }
        proportion{
            karat{
                dnam{"kt"}
                other{"{0} kt"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                other{"{0} km/h"}
            }
            meter-per-second{
                dnam{"m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"mi/h"}
                other{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°S"}
                other{"{0}°S"}
            }
            fahrenheit{
                dnam{"°F"}
                other{"{0}°F"}
            }
            kelvin{
                dnam{"K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"ʻe-ft"}
                other{"{0} ʻe-ft"}
            }
            bushel{
                dnam{"pū"}
                other{"{0} pū"}
            }
            centiliter{
                dnam{"sl"}
                other{"{0} sl"}
            }
            cubic-centimeter{
                dnam{"sm³"}
                other{"{0} sm³"}
            }
            cubic-foot{
                dnam{"ft³"}
                other{"{0} ft³"}
            }
            cubic-inch{
                dnam{"in³"}
                other{"{0} in³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                other{"{0} m³"}
            }
            cubic-mile{
                dnam{"mi³"}
                other{"{0} mi³"}
            }
            cubic-yard{
                dnam{"it³"}
                other{"{0} it³"}
            }
            cup{
                dnam{"ip"}
                other{"{0} ip"}
            }
            deciliter{
                dnam{"tl"}
                other{"{0} tl"}
            }
            fluid-ounce{
                dnam{"ʻau-tf"}
                other{"{0} ʻau-tf"}
            }
            gallon{
                dnam{"kā"}
                other{"{0} kā"}
            }
            hectoliter{
                dnam{"hl"}
                other{"{0} hl"}
            }
            liter{
                dnam{"l"}
                other{"{0} l"}
            }
            megaliter{
                dnam{"Ml"}
                other{"{0} Ml"}
            }
            milliliter{
                dnam{"ml"}
                other{"{0} ml"}
            }
            pint{
                dnam{"pt"}
                other{"{0} pt"}
            }
            quart{
                dnam{"ku"}
                other{"{0} ku"}
            }
            tablespoon{
                dnam{"sētē"}
                other{"{0} sētē"}
            }
            teaspoon{
                dnam{"sētī"}
                other{"{0} sētī"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"k-mā"}
                other{"k-mā ʻe {0}"}
            }
            meter-per-second-squared{
                dnam{"m/s²"}
                other{"m/s² ʻe {0}"}
            }
        }
        angle{
            arc-minute{
                dnam{"msk"}
                other{"msk ʻe {0}"}
            }
            arc-second{
                dnam{"ssk"}
                other{"ssk ʻe {0}"}
            }
            degree{
                dnam{"tsk"}
                other{"tsk ʻe {0}"}
            }
            radian{
                dnam{"lēt"}
                other{"lēt ʻe {0}"}
            }
        }
        area{
            acre{
                dnam{"ʻeka ʻe"}
                other{"ʻek ʻe {0}"}
            }
            hectare{
                dnam{"ha"}
                other{"ha ʻe {0}"}
            }
            square-centimeter{
                dnam{"sm²"}
                other{"sm² ʻe {0}"}
            }
            square-foot{
                dnam{"ft²"}
                other{"sk ft² ʻe {0}"}
            }
            square-inch{
                dnam{"in²"}
                other{"sk in² ʻe {0}"}
            }
            square-kilometer{
                dnam{"km²"}
                other{"sk km² ʻe {0}"}
            }
            square-meter{
                dnam{"mita sikuea ʻe"}
                other{"sk m² ʻe {0}"}
            }
            square-mile{
                dnam{"maile sikuea ʻe"}
                other{"sk mi² ʻe {0}"}
            }
            square-yard{
                dnam{"it²"}
                other{"it² ʻe {0}"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"l/km"}
                other{"l/km ʻe {0}"}
            }
            mile-per-gallon{
                dnam{"mi/kā"}
                other{"mi/kā ʻe {0}"}
            }
        }
        digital{
            bit{
                dnam{"piti"}
                other{"piti ʻe {0}"}
            }
            byte{
                dnam{"ʻū paiti"}
                other{"paiti ʻe {0}"}
            }
            gigabit{
                dnam{"Gb"}
                other{"Gb ʻe {0}"}
            }
            gigabyte{
                dnam{"kikapaiti"}
                other{"KP ʻe {0}"}
            }
            kilobit{
                dnam{"kilopiti"}
                other{"kb ʻe {0}"}
            }
            kilobyte{
                dnam{"kilopaiti"}
                other{"kB ʻe {0}"}
            }
            megabit{
                dnam{"mekapiti"}
                other{"Mb ʻe {0}"}
            }
            megabyte{
                dnam{"mekapaiti"}
                other{"MB ʻe {0}"}
            }
            terabit{
                dnam{"telapiti"}
                other{"Tb ʻe {0}"}
            }
            terabyte{
                dnam{"telapaiti"}
                other{"TB ʻe {0}"}
            }
        }
        duration{
            day{
                dnam{"ʻa"}
                other{"ʻa ʻe {0}"}
            }
            hour{
                dnam{"h"}
                other{"h ʻe {0}"}
                per{"{0} /h"}
            }
            microsecond{
                dnam{"μs"}
                other{"μs ʻe {0}"}
            }
            millisecond{
                dnam{"ms"}
                other{"ms ʻe {0}"}
            }
            minute{
                dnam{"m"}
                other{"m ʻe {0}"}
            }
            month{
                dnam{"mā"}
                other{"mā ʻe {0}"}
            }
            nanosecond{
                dnam{"ns"}
                other{"ns ʻe {0}"}
            }
            second{
                dnam{"s"}
                other{"s ʻe {0}"}
                per{"{0} /s"}
            }
            week{
                dnam{"u"}
                other{"u ʻe {0}"}
            }
            year{
                dnam{"taʻu"}
                other{"taʻu ʻe {0}"}
            }
        }
        electric{
            ampere{
                dnam{"A"}
                other{"A ʻe {0}"}
            }
            milliampere{
                dnam{"mA"}
                other{"mA ʻe {0}"}
            }
            ohm{
                dnam{"Ω"}
                other{"Ω ʻe {0}"}
            }
            volt{
                dnam{"volotā"}
                other{"V ʻe {0}"}
            }
        }
        energy{
            calorie{
                dnam{"kal"}
                other{"kal ʻe {0}"}
            }
            foodcalorie{
                dnam{"kal-k"}
                other{"kal-k ʻe {0}"}
            }
            joule{
                dnam{"J"}
                other{"J ʻe {0}"}
            }
            kilocalorie{
                dnam{"kkal"}
                other{"kkal ʻe {0}"}
            }
            kilojoule{
                dnam{"kJ"}
                other{"kJ ʻe {0}"}
            }
            kilowatt-hour{
                dnam{"kWh"}
                other{"kWh ʻe {0}"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GHz"}
                other{"GHz ʻe {0}"}
            }
            hertz{
                dnam{"Hz"}
                other{"Hz ʻe {0}"}
            }
            kilohertz{
                dnam{"kHz"}
                other{"kHz ʻe {0}"}
            }
            megahertz{
                dnam{"MHz"}
                other{"MHz ʻe {0}"}
            }
        }
        length{
            astronomical-unit{
                dnam{"ʻiʻa"}
                other{"ʻiʻa ʻe {0}"}
            }
            centimeter{
                dnam{"sm"}
                other{"sm ʻe {0}"}
            }
            decimeter{
                dnam{"tm"}
                other{"tm ʻe {0}"}
            }
            fathom{
                dnam{"ofa"}
                other{"ofa ʻe {0}"}
            }
            foot{
                dnam{"ft"}
                other{"ft ʻe {0}"}
            }
            furlong{
                dnam{"fāl"}
                other{"fāl ʻe {0}"}
            }
            inch{
                dnam{"in"}
                other{"in ʻe {0}"}
            }
            kilometer{
                dnam{"km"}
                other{"km ʻe {0}"}
            }
            light-year{
                dnam{"tma"}
                other{"tma ʻe {0}"}
            }
            meter{
                dnam{"m"}
                other{"m ʻe {0}"}
            }
            micrometer{
                dnam{"µm"}
                other{"µm ʻe {0}"}
            }
            mile{
                dnam{"mi"}
                other{"mi ʻe {0}"}
            }
            millimeter{
                dnam{"mm"}
                other{"mm ʻe {0}"}
            }
            nanometer{
                dnam{"nm"}
                other{"nm ʻe {0}"}
            }
            nautical-mile{
                dnam{"mt"}
                other{"mt ʻe {0}"}
            }
            parsec{
                dnam{"ngs"}
                other{"ngs ʻe {0}"}
            }
            picometer{
                dnam{"pm"}
                other{"pm ʻe {0}"}
            }
            yard{
                dnam{"it"}
                other{"it ʻe {0}"}
            }
        }
        light{
            lux{
                dnam{"lx"}
                other{"lx ʻe {0}"}
            }
        }
        mass{
            carat{
                dnam{"kt"}
                other{"kt ʻe {0}"}
            }
            gram{
                dnam{"k"}
                other{"k ʻe {0}"}
            }
            kilogram{
                dnam{"kk"}
                other{"kk ʻe {0}"}
            }
            metric-ton{
                dnam{"to"}
                other{"to ʻe {0}"}
            }
            microgram{
                dnam{"μk"}
                other{"μk ʻe {0}"}
            }
            milligram{
                dnam{"mk"}
                other{"mk ʻe {0}"}
            }
            ounce{
                dnam{"ʻau"}
                other{"ʻau ʻe {0}"}
            }
            ounce-troy{
                dnam{"ʻau-k"}
                other{"ʻau-k ʻe {0}"}
            }
            pound{
                dnam{"pā"}
                other{"pā ʻe {0}"}
            }
            stone{
                dnam{"st"}
                other{"st ʻe {0}"}
            }
            ton{
                dnam{"tn"}
                other{"tn ʻe {0}"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                other{"GW ʻe {0}"}
            }
            horsepower{
                dnam{"hp"}
                other{"hp ʻe {0}"}
            }
            kilowatt{
                dnam{"kW"}
                other{"kW ʻe {0}"}
            }
            megawatt{
                dnam{"MW"}
                other{"MW ʻe {0}"}
            }
            milliwatt{
                dnam{"mW"}
                other{"mW ʻe {0}"}
            }
            watt{
                dnam{"uate"}
                other{"W ʻe {0}"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                other{"hPa ʻe {0}"}
            }
            inch-hg{
                dnam{"in-Hg"}
                other{"in-Hg ʻe {0}"}
            }
            millibar{
                dnam{"mpā"}
                other{"mpā ʻe {0}"}
            }
            millimeter-of-mercury{
                dnam{"mm-Hg"}
                other{"mm-Hg ʻe {0}"}
            }
            pound-per-square-inch{
                dnam{"pā/in²"}
                other{"pā/in² ʻe {0}"}
            }
        }
        proportion{
            karat{
                dnam{"kt"}
                other{"kt ʻe {0}"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                other{"km/h ʻe {0}"}
            }
            meter-per-second{
                dnam{"m/s"}
                other{"m/s ʻe {0}"}
            }
            mile-per-hour{
                dnam{"mi/h"}
                other{"mi/h ʻe {0}"}
            }
        }
        temperature{
            celsius{
                dnam{"°S"}
                other{"°S ʻe {0}"}
            }
            fahrenheit{
                dnam{"°F"}
                other{"°F ʻe {0}"}
            }
            kelvin{
                dnam{"K"}
                other{"K ʻe {0}"}
            }
        }
        volume{
            acre-foot{
                dnam{"ʻe-ft"}
                other{"ʻe-ft ʻe {0}"}
            }
            bushel{
                dnam{"pū"}
                other{"pū ʻe {0}"}
            }
            centiliter{
                dnam{"sl"}
                other{"sl ʻe {0}"}
            }
            cubic-centimeter{
                dnam{"sm³"}
                other{"sm³ ʻe {0}"}
            }
            cubic-foot{
                dnam{"ft³"}
                other{"ft³ ʻe {0}"}
            }
            cubic-inch{
                dnam{"in³"}
                other{"in³ ʻe {0}"}
            }
            cubic-kilometer{
                dnam{"km³"}
                other{"km³ ʻe {0}"}
            }
            cubic-meter{
                dnam{"m³"}
                other{"m³ ʻe {0}"}
            }
            cubic-mile{
                dnam{"mi³"}
                other{"mi³ ʻe {0}"}
            }
            cubic-yard{
                dnam{"it³"}
                other{"it³ ʻe {0}"}
            }
            cup{
                dnam{"ip"}
                other{"ip ʻe {0}"}
            }
            deciliter{
                dnam{"tl"}
                other{"tl ʻe {0}"}
            }
            fluid-ounce{
                dnam{"ʻau-tf"}
                other{"ʻau-tf ʻe {0}"}
            }
            gallon{
                dnam{"kā"}
                other{"kā ʻe {0}"}
            }
            hectoliter{
                dnam{"hl"}
                other{"hl ʻe {0}"}
            }
            liter{
                dnam{"l"}
                other{"l ʻe {0}"}
            }
            megaliter{
                dnam{"Ml"}
                other{"Ml ʻe {0}"}
            }
            milliliter{
                dnam{"ml"}
                other{"ml ʻe {0}"}
            }
            pint{
                dnam{"pt"}
                other{"pt ʻe {0}"}
            }
            quart{
                dnam{"ku"}
                other{"ku ʻe {0}"}
            }
            tablespoon{
                dnam{"sētē"}
                other{"sētē ʻe {0}"}
            }
            teaspoon{
                dnam{"sētī"}
                other{"sētī ʻe {0}"}
            }
        }
    }
}
