﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/ko.xml
// *
// ***************************************************************************
ko{
    Version{"2.1.19.94"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"중력가속도"}
                other{"{0} 중력가속도"}
            }
            meter-per-second-squared{
                dnam{"제곱 초당 미터"}
                other{"{0}제곱 초당 미터"}
            }
        }
        angle{
            arc-minute{
                dnam{"분각"}
                other{"{0}분각"}
            }
            arc-second{
                dnam{"각초"}
                other{"{0}각초"}
            }
            degree{
                dnam{"도"}
                other{"{0}도"}
            }
            radian{
                dnam{"라디안"}
                other{"{0}라디안"}
            }
            revolution{
                dnam{"회전"}
                other{"{0}회전"}
            }
        }
        area{
            acre{
                dnam{"에이커"}
                other{"{0}에이커"}
            }
            hectare{
                dnam{"헥타르"}
                other{"{0}헥타르"}
            }
            square-centimeter{
                dnam{"제곱센티미터"}
                other{"{0}제곱센티미터"}
                per{"제곱센티미터당 {0}"}
            }
            square-foot{
                dnam{"제곱피트"}
                other{"{0}제곱피트"}
            }
            square-inch{
                dnam{"제곱인치"}
                other{"{0}제곱인치"}
                per{"제곱인치당 {0}"}
            }
            square-kilometer{
                dnam{"제곱킬로미터"}
                other{"{0}제곱킬로미터"}
            }
            square-meter{
                dnam{"제곱미터"}
                other{"{0}제곱미터"}
                per{"제곱미터당 {0}"}
            }
            square-mile{
                dnam{"제곱마일"}
                other{"{0}제곱마일"}
            }
            square-yard{
                dnam{"제곱야드"}
                other{"{0}제곱야드"}
            }
        }
        compound{
            per{"{1}당 {0}"}
        }
        consumption{
            liter-per-100kilometers{
                dnam{"100킬로미터당 리터"}
                other{"100킬로미터당 {0}리터"}
            }
            liter-per-kilometer{
                dnam{"킬로미터당 리터"}
                other{"킬로미터당 {0}리터"}
            }
            mile-per-gallon{
                dnam{"갤런당 마일"}
                other{"갤런당 {0}마일"}
            }
        }
        coordinate{
            east{"동경 {0}"}
            north{"북위 {0}"}
            south{"남위 {0}"}
            west{"서경 {0}"}
        }
        digital{
            bit{
                dnam{"비트"}
                other{"{0}비트"}
            }
            byte{
                dnam{"바이트"}
                other{"{0}바이트"}
            }
            gigabit{
                dnam{"기가비트"}
                other{"{0}기가비트"}
            }
            gigabyte{
                dnam{"기가바이트"}
                other{"{0}기가바이트"}
            }
            kilobit{
                dnam{"킬로비트"}
                other{"{0}킬로비트"}
            }
            kilobyte{
                dnam{"킬로바이트"}
                other{"{0}킬로바이트"}
            }
            megabit{
                dnam{"메가비트"}
                other{"{0}메가비트"}
            }
            megabyte{
                dnam{"메가바이트"}
                other{"{0}메가바이트"}
            }
            terabit{
                dnam{"테라비트"}
                other{"{0}테라비트"}
            }
            terabyte{
                dnam{"테라바이트"}
                other{"{0}테라바이트"}
            }
        }
        duration{
            century{
                dnam{"세기"}
                other{"{0}세기"}
            }
            day{
                dnam{"일"}
                other{"{0}일"}
                per{"일당 {0}"}
            }
            hour{
                dnam{"시간"}
                other{"{0}시간"}
                per{"시간당 {0}"}
            }
            microsecond{
                dnam{"마이크로초"}
                other{"{0}마이크로초"}
            }
            millisecond{
                dnam{"밀리초"}
                other{"{0}밀리초"}
            }
            minute{
                dnam{"분"}
                other{"{0}분"}
                per{"분당 {0}"}
            }
            month{
                dnam{"개월"}
                other{"{0}개월"}
                per{"월당 {0}"}
            }
            nanosecond{
                dnam{"나노초"}
                other{"{0}나노초"}
            }
            second{
                dnam{"초"}
                other{"{0}초"}
                per{"초당 {0}"}
            }
            week{
                dnam{"주"}
                other{"{0}주"}
                per{"주당 {0}"}
            }
            year{
                dnam{"년"}
                other{"{0}년"}
                per{"연당 {0}"}
            }
        }
        electric{
            ampere{
                dnam{"암페어"}
                other{"{0}암페어"}
            }
            milliampere{
                dnam{"밀리암페어"}
                other{"{0}밀리암페어"}
            }
            ohm{
                dnam{"옴"}
                other{"{0}옴"}
            }
            volt{
                dnam{"볼트"}
                other{"{0}볼트"}
            }
        }
        energy{
            calorie{
                dnam{"칼로리"}
                other{"{0}칼로리"}
            }
            foodcalorie{
                dnam{"칼로리"}
                other{"{0}칼로리"}
            }
            joule{
                dnam{"줄"}
                other{"{0}줄"}
            }
            kilocalorie{
                dnam{"킬로칼로리"}
                other{"{0}킬로칼로리"}
            }
            kilojoule{
                dnam{"킬로줄"}
                other{"{0}킬로줄"}
            }
            kilowatt-hour{
                dnam{"킬로와트시"}
                other{"{0}킬로와트시"}
            }
        }
        frequency{
            gigahertz{
                dnam{"기가헤르츠"}
                other{"{0}기가헤르츠"}
            }
            hertz{
                dnam{"헤르츠"}
                other{"{0}헤르츠"}
            }
            kilohertz{
                dnam{"킬로헤르츠"}
                other{"{0}킬로헤르츠"}
            }
            megahertz{
                dnam{"메가헤르츠"}
                other{"{0}메가헤르츠"}
            }
        }
        length{
            astronomical-unit{
                dnam{"천문 단위"}
                other{"{0}천문 단위"}
            }
            centimeter{
                dnam{"센티미터"}
                other{"{0}센티미터"}
                per{"센티미터당 {0}"}
            }
            decimeter{
                dnam{"데시미터"}
                other{"{0}데시미터"}
            }
            foot{
                dnam{"피트"}
                other{"{0}피트"}
                per{"피트당 {0}"}
            }
            inch{
                dnam{"인치"}
                other{"{0}인치"}
                per{"인치당 {0}"}
            }
            kilometer{
                dnam{"킬로미터"}
                other{"{0}킬로미터"}
                per{"킬로미터당 {0}"}
            }
            light-year{
                dnam{"광년"}
                other{"{0}광년"}
            }
            meter{
                dnam{"미터"}
                other{"{0}미터"}
                per{"미터당 {0}"}
            }
            micrometer{
                dnam{"마이크로미터"}
                other{"{0}마이크로미터"}
            }
            mile{
                dnam{"마일"}
                other{"{0}마일"}
            }
            mile-scandinavian{
                dnam{"스칸디나비아 마일"}
                other{"{0}스칸디나비아 마일"}
            }
            millimeter{
                dnam{"밀리미터"}
                other{"{0}밀리미터"}
            }
            nanometer{
                dnam{"나노미터"}
                other{"{0}나노미터"}
            }
            nautical-mile{
                dnam{"해리"}
                other{"{0}해리"}
            }
            parsec{
                dnam{"파섹"}
                other{"{0}파섹"}
            }
            picometer{
                dnam{"피코미터"}
                other{"{0}피코미터"}
            }
            yard{
                dnam{"야드"}
                other{"{0}야드"}
            }
        }
        light{
            lux{
                dnam{"룩스"}
                other{"{0}룩스"}
            }
        }
        mass{
            carat{
                dnam{"캐럿"}
                other{"{0}캐럿"}
            }
            gram{
                dnam{"그램"}
                other{"{0}그램"}
                per{"그램당 {0}"}
            }
            kilogram{
                dnam{"킬로그램"}
                other{"{0}킬로그램"}
                per{"킬로그램당 {0}"}
            }
            metric-ton{
                dnam{"메트릭 톤"}
                other{"{0}메트릭 톤"}
            }
            microgram{
                dnam{"마이크로그램"}
                other{"{0}마이크로그램"}
            }
            milligram{
                dnam{"밀리그램"}
                other{"{0}밀리그램"}
            }
            ounce{
                dnam{"온스"}
                other{"{0}온스"}
                per{"온스당 {0}"}
            }
            ounce-troy{
                dnam{"트로이 온스"}
                other{"{0}트로이 온스"}
            }
            pound{
                dnam{"파운드"}
                other{"{0}파운드"}
                per{"파운드당 {0}"}
            }
            ton{
                dnam{"톤"}
                other{"{0}톤"}
            }
        }
        power{
            gigawatt{
                dnam{"기가와트"}
                other{"{0}기가와트"}
            }
            horsepower{
                dnam{"마력"}
                other{"{0}마력"}
            }
            kilowatt{
                dnam{"킬로와트"}
                other{"{0}킬로와트"}
            }
            megawatt{
                dnam{"메가와트"}
                other{"{0}메가와트"}
            }
            milliwatt{
                dnam{"밀리와트"}
                other{"{0}밀리와트"}
            }
            watt{
                dnam{"와트"}
                other{"{0}와트"}
            }
        }
        pressure{
            hectopascal{
                dnam{"헥토파스칼"}
                other{"{0}헥토파스칼"}
            }
            inch-hg{
                dnam{"수은주인치"}
                other{"{0}수은주인치"}
            }
            millibar{
                dnam{"밀리바"}
                other{"{0}밀리바"}
            }
            millimeter-of-mercury{
                dnam{"수은주밀리미터"}
                other{"{0}수은주밀리미터"}
            }
            pound-per-square-inch{
                dnam{"제곱인치당 파운드"}
                other{"{0}제곱인치당 파운드"}
            }
        }
        proportion{
            karat{
                dnam{"캐럿"}
                other{"{0}캐럿"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"시간당 킬로미터"}
                other{"시속 {0}킬로미터"}
            }
            knot{
                dnam{"노트"}
                other{"{0}노트"}
            }
            meter-per-second{
                dnam{"m/s"}
                other{"초속 {0}미터"}
            }
            mile-per-hour{
                dnam{"mi/h"}
                other{"시속 {0}마일"}
            }
        }
        temperature{
            celsius{
                dnam{"섭씨"}
                other{"섭씨 {0}도"}
            }
            fahrenheit{
                dnam{"화씨"}
                other{"화씨 {0}도"}
            }
            generic{
                dnam{"도"}
                other{"{0}도"}
            }
            kelvin{
                dnam{"켈빈"}
                other{"{0}켈빈"}
            }
        }
        volume{
            acre-foot{
                dnam{"에이커 피트"}
                other{"{0}에이커 피트"}
            }
            centiliter{
                dnam{"센티리터"}
                other{"{0}센티리터"}
            }
            cubic-centimeter{
                dnam{"세제곱센티미터"}
                other{"{0}세제곱센티미터"}
                per{"세제곱센티미터당 {0}"}
            }
            cubic-foot{
                dnam{"세제곱피트"}
                other{"{0}세제곱피트"}
            }
            cubic-inch{
                dnam{"세제곱인치"}
                other{"{0}세제곱인치"}
            }
            cubic-kilometer{
                dnam{"세제곱킬로미터"}
                other{"{0}세제곱킬로미터"}
            }
            cubic-meter{
                dnam{"세제곱미터"}
                other{"{0}세제곱미터"}
                per{"세제곱미터당 {0}"}
            }
            cubic-mile{
                dnam{"세제곱마일"}
                other{"{0}세제곱마일"}
            }
            cubic-yard{
                dnam{"세제곱야드"}
                other{"{0}세제곱야드"}
            }
            cup{
                dnam{"컵"}
                other{"{0}컵"}
            }
            cup-metric{
                dnam{"미터식 컵"}
                other{"{0}미터식 컵"}
            }
            deciliter{
                dnam{"데시리터"}
                other{"{0}데시리터"}
            }
            fluid-ounce{
                dnam{"액량 온스"}
                other{"{0}액량 온스"}
            }
            gallon{
                dnam{"갤런"}
                other{"{0}갤런"}
                per{"갤런당 {0}"}
            }
            hectoliter{
                dnam{"헥토리터"}
                other{"{0}헥토리터"}
            }
            liter{
                dnam{"리터"}
                other{"{0}리터"}
                per{"리터당 {0}"}
            }
            megaliter{
                dnam{"메가리터"}
                other{"{0}메가리터"}
            }
            milliliter{
                dnam{"밀리리터"}
                other{"{0}밀리리터"}
            }
            pint{
                dnam{"파인트"}
                other{"{0}파인트"}
            }
            pint-metric{
                dnam{"미터식 파인트"}
                other{"{0}미터식 파인트"}
            }
            quart{
                dnam{"쿼트"}
                other{"{0}쿼트"}
            }
            tablespoon{
                dnam{"테이블스푼"}
                other{"{0}테이블스푼"}
            }
            teaspoon{
                dnam{"티스푼"}
                other{"{0}티스푼"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                other{"{0}G"}
            }
        }
        angle{
            arc-minute{
                other{"{0}′"}
            }
            arc-second{
                other{"{0}″"}
            }
            degree{
                other{"{0}°"}
            }
        }
        area{
            acre{
                other{"{0}ac"}
            }
            hectare{
                other{"{0}ha"}
            }
            square-foot{
                other{"{0}ft²"}
            }
            square-kilometer{
                other{"{0}km²"}
            }
            square-meter{
                other{"{0}m²"}
            }
            square-mile{
                other{"{0}mi²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-100kilometers{
                dnam{"L/100km"}
                other{"{0}L/100km"}
            }
        }
        coordinate{
            east{"{0}E"}
            north{"{0}N"}
            south{"{0}S"}
            west{"{0}W"}
        }
        duration{
            day{
                dnam{"일"}
                other{"{0}일"}
            }
            hour{
                dnam{"시간"}
                other{"{0}시간"}
            }
            millisecond{
                dnam{"ms"}
                other{"{0}ms"}
            }
            minute{
                dnam{"분"}
                other{"{0}분"}
            }
            month{
                dnam{"개월"}
                other{"{0}개월"}
            }
            second{
                dnam{"초"}
                other{"{0}초"}
            }
            week{
                dnam{"주"}
                other{"{0}주"}
            }
            year{
                dnam{"년"}
                other{"{0}년"}
            }
        }
        length{
            centimeter{
                dnam{"cm"}
                other{"{0}cm"}
            }
            foot{
                other{"{0}′"}
            }
            inch{
                other{"{0}″"}
            }
            kilometer{
                dnam{"km"}
                other{"{0}km"}
            }
            light-year{
                other{"{0}ly"}
            }
            meter{
                dnam{"m"}
                other{"{0}m"}
            }
            mile{
                other{"{0}mi"}
            }
            millimeter{
                dnam{"mm"}
                other{"{0}mm"}
            }
            picometer{
                other{"{0}pm"}
            }
            yard{
                other{"{0}yd"}
            }
        }
        mass{
            gram{
                dnam{"g"}
                other{"{0}g"}
            }
            kilogram{
                dnam{"kg"}
                other{"{0}kg"}
            }
            ounce{
                other{"{0}oz"}
            }
            pound{
                other{"{0}lb"}
            }
        }
        power{
            horsepower{
                other{"{0}HP"}
            }
            kilowatt{
                other{"{0}kW"}
            }
            watt{
                other{"{0}W"}
            }
        }
        pressure{
            hectopascal{
                other{"{0}hPa"}
            }
            inch-hg{
                other{"{0}\u0022Hg"}
            }
            millibar{
                other{"{0}mb"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                other{"{0}km/h"}
            }
            meter-per-second{
                other{"{0}m/s"}
            }
            mile-per-hour{
                other{"{0}mph"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                other{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                other{"{0}km³"}
            }
            cubic-mile{
                other{"{0}mi³"}
            }
            liter{
                dnam{"ℓ"}
                other{"{0}ℓ"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"g-force"}
                other{"{0}G"}
            }
            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{"rad"}
                other{"{0}rad"}
            }
            revolution{
                dnam{"rev"}
                other{"{0}rev"}
            }
        }
        area{
            acre{
                dnam{"ac"}
                other{"{0}ac"}
            }
            hectare{
                dnam{"ha"}
                other{"{0}ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                other{"{0}cm²"}
                per{"{0}/cm²"}
            }
            square-foot{
                dnam{"ft²"}
                other{"{0}ft²"}
            }
            square-inch{
                dnam{"in²"}
                other{"{0}in²"}
                per{"{0}/in²"}
            }
            square-kilometer{
                dnam{"km²"}
                other{"{0}km²"}
            }
            square-meter{
                dnam{"m²"}
                other{"{0}m²"}
                per{"{0}/m²"}
            }
            square-mile{
                dnam{"mi²"}
                other{"{0}mi²"}
            }
            square-yard{
                dnam{"yd²"}
                other{"{0}yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-100kilometers{
                dnam{"L/100km"}
                other{"{0}L/100km"}
            }
            liter-per-kilometer{
                dnam{"L/km"}
                other{"{0}L/km"}
            }
            mile-per-gallon{
                dnam{"mpg"}
                other{"{0}mpg"}
            }
        }
        coordinate{
            east{"{0}E"}
            north{"{0}N"}
            south{"{0}S"}
            west{"{0}W"}
        }
        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{"kB"}
                other{"{0}kB"}
            }
            megabit{
                dnam{"Mbit"}
                other{"{0}Mb"}
            }
            megabyte{
                dnam{"MB"}
                other{"{0}MB"}
            }
            terabit{
                dnam{"Tbit"}
                other{"{0}Tb"}
            }
            terabyte{
                dnam{"TByte"}
                other{"{0}TB"}
            }
        }
        duration{
            century{
                dnam{"C"}
                other{"{0}C"}
            }
            day{
                dnam{"일"}
                other{"{0}일"}
                per{"{0}/일"}
            }
            hour{
                dnam{"시간"}
                other{"{0}시간"}
                per{"{0}/h"}
            }
            microsecond{
                dnam{"μs"}
                other{"{0}μs"}
            }
            millisecond{
                dnam{"밀리초"}
                other{"{0}ms"}
            }
            minute{
                dnam{"분"}
                other{"{0}분"}
                per{"{0}/min"}
            }
            month{
                dnam{"개월"}
                other{"{0}개월"}
                per{"{0}/월"}
            }
            nanosecond{
                dnam{"ns"}
                other{"{0}ns"}
            }
            second{
                dnam{"초"}
                other{"{0}초"}
                per{"{0}/s"}
            }
            week{
                dnam{"주"}
                other{"{0}주"}
                per{"{0}/주"}
            }
            year{
                dnam{"년"}
                other{"{0}년"}
                per{"{0}/년"}
            }
        }
        electric{
            ampere{
                dnam{"amp"}
                other{"{0}A"}
            }
            milliampere{
                dnam{"mA"}
                other{"{0}mA"}
            }
            ohm{
                dnam{"ohm"}
                other{"{0}Ω"}
            }
            volt{
                dnam{"volt"}
                other{"{0}V"}
            }
        }
        energy{
            calorie{
                dnam{"cal"}
                other{"{0}cal"}
            }
            foodcalorie{
                dnam{"Cal"}
                other{"{0}Cal"}
            }
            joule{
                dnam{"줄"}
                other{"{0}줄"}
            }
            kilocalorie{
                dnam{"kcal"}
                other{"{0}kcal"}
            }
            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{"au"}
                other{"{0}au"}
            }
            centimeter{
                dnam{"cm"}
                other{"{0}cm"}
                per{"{0}/cm"}
            }
            decimeter{
                dnam{"dm"}
                other{"{0}dm"}
            }
            foot{
                dnam{"ft"}
                other{"{0}ft"}
                per{"{0}/ft"}
            }
            inch{
                dnam{"in"}
                other{"{0}in"}
                per{"{0}/in"}
            }
            kilometer{
                dnam{"km"}
                other{"{0}km"}
                per{"{0}/km"}
            }
            light-year{
                dnam{"ly"}
                other{"{0}ly"}
            }
            meter{
                dnam{"m"}
                other{"{0}m"}
                per{"{0}/m"}
            }
            micrometer{
                dnam{"µm"}
                other{"{0}µm"}
            }
            mile{
                dnam{"mi"}
                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{"pc"}
                other{"{0}pc"}
            }
            picometer{
                dnam{"pm"}
                other{"{0}pm"}
            }
            yard{
                dnam{"yd"}
                other{"{0}야드"}
            }
        }
        light{
            lux{
                dnam{"lx"}
                other{"{0}lx"}
            }
        }
        mass{
            carat{
                dnam{"CD"}
                other{"{0}CD"}
            }
            gram{
                dnam{"그램"}
                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 t"}
                other{"{0}oz t"}
            }
            pound{
                dnam{"lb"}
                other{"{0}lb"}
                per{"{0}/lb"}
            }
            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{"inHg"}
                other{"{0}inHg"}
            }
            millibar{
                dnam{"mbar"}
                other{"{0}mb"}
            }
            millimeter-of-mercury{
                dnam{"mm Hg"}
                other{"{0}mm Hg"}
            }
            pound-per-square-inch{
                dnam{"psi"}
                other{"{0}psi"}
            }
        }
        proportion{
            karat{
                dnam{"kt"}
                other{"{0}kt"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                other{"{0}km/h"}
            }
            knot{
                dnam{"kn"}
                other{"{0}kn"}
            }
            meter-per-second{
                dnam{"m/s"}
                other{"초속 {0}m"}
            }
            mile-per-hour{
                dnam{"mi/h"}
                other{"시속 {0}mi"}
            }
        }
        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"}
            }
            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{"in³"}
                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{"yd³"}
                other{"{0}yd³"}
            }
            cup{
                dnam{"컵"}
                other{"{0}컵"}
            }
            cup-metric{
                dnam{"mcup"}
                other{"{0}mc"}
            }
            deciliter{
                dnam{"dL"}
                other{"{0}dL"}
            }
            fluid-ounce{
                dnam{"fl oz"}
                other{"{0}fl oz"}
            }
            gallon{
                dnam{"gal"}
                other{"{0}gal"}
                per{"{0}/gal"}
            }
            hectoliter{
                dnam{"hL"}
                other{"{0}hL"}
            }
            liter{
                dnam{"리터"}
                other{"{0}L"}
                per{"{0}/L"}
            }
            megaliter{
                dnam{"ML"}
                other{"{0}ML"}
            }
            milliliter{
                dnam{"mL"}
                other{"{0}mL"}
            }
            pint{
                dnam{"pt"}
                other{"{0}pt"}
            }
            pint-metric{
                dnam{"mpt"}
                other{"{0}mpt"}
            }
            quart{
                dnam{"qt"}
                other{"{0}qt"}
            }
            tablespoon{
                dnam{"tbsp"}
                other{"{0}tbsp"}
            }
            teaspoon{
                dnam{"tsp"}
                other{"{0}tsp"}
            }
        }
    }
}
