﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/to.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/to.xml
 */
to{
    Version{"2.1.8.9"}
    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}"}
            }
        }
    }
}
