﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
pa{
    Version{"2.1.28.79"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"ਗੁਰੂਤਾਕਰਸ਼ਣ ਬਲ"}
                one{"{0} ਗੁਰੂਤਾਕਰਸ਼ਣ ਬਲ"}
                other{"{0} ਗੁਰੂਤਾਕਰਸ਼ਣ ਬਲ"}
            }
            meter-per-second-squared{
                dnam{"ਮੀਟਰ ਪ੍ਰਤੀ ਵਰਗ ਸਕਿੰਟ"}
                one{"{0} ਮੀਟਰ ਪ੍ਰਤੀ ਵਰਗ ਸਕਿੰਟ"}
                other{"{0} ਮੀਟਰ ਪ੍ਰਤੀ ਵਰਗ ਸਕਿੰਟ"}
            }
        }
        angle{
            arc-minute{
                dnam{"ਚਾਪ-ਮਿੰਟ"}
                one{"{0} ਚਾਪ-ਮਿੰਟ"}
                other{"{0} ਚਾਪ-ਮਿੰਟ"}
            }
            arc-second{
                dnam{"ਚਾਪ-ਸਕਿੰਟ"}
                one{"{0} ਚਾਪ-ਸਕਿੰਟ"}
                other{"{0} ਚਾਪ-ਸਕਿੰਟ"}
            }
            degree{
                dnam{"ਡਿਗਰੀ"}
                one{"{0} ਡਿਗਰੀ"}
                other{"{0} ਡਿਗਰੀ"}
            }
            radian{
                dnam{"ਰੇਡੀਅਨ"}
                one{"{0} ਰੇਡੀਅਨ"}
                other{"{0} ਰੇਡੀਅਨ"}
            }
            revolution{
                dnam{"ਪਰਿਕਰਮਾ"}
                one{"{0} ਪਰਿਕਰਮਾ"}
                other{"{0} ਪਰਿਕਰਮਾ"}
            }
        }
        area{
            acre{
                dnam{"ਏਕੜ"}
                one{"{0} ਏਕੜ"}
                other{"{0} ਏਕੜ"}
            }
            hectare{
                dnam{"ਹੈਕਟੇਅਰ"}
                one{"{0} ਹੈਕਟੇਅਰ"}
                other{"{0} ਹੈਕਟੇਅਰ"}
            }
            square-centimeter{
                dnam{"ਵਰਗ ਸੈਂਟੀਮੀਟਰ"}
                one{"{0} ਵਰਗ ਸੈਂਟੀਮੀਟਰ"}
                other{"{0} ਵਰਗ ਸੈਂਟੀਮੀਟਰ"}
                per{"{0} ਪ੍ਰਤੀ ਵਰਗ ਸੈਂਟੀਮੀਟਰ"}
            }
            square-foot{
                dnam{"ਵਰਗ ਫੁੱਟ"}
                one{"{0} ਵਰਗ ਫੁੱਟ"}
                other{"{0} ਵਰਗ ਫੁੱਟ"}
            }
            square-inch{
                dnam{"ਵਰਗ ਇੰਚ"}
                one{"{0} ਵਰਗ ਇੰਚ"}
                other{"{0} ਵਰਗ ਇੰਚ"}
                per{"{0} ਪ੍ਰਤੀ ਵਰਗ ਇੰਚ"}
            }
            square-kilometer{
                dnam{"ਵਰਗ ਕਿਲੋਮੀਟਰ"}
                one{"{0} ਵਰਗ ਕਿਲੋਮੀਟਰ"}
                other{"{0} ਵਰਗ ਕਿਲੋਮੀਟਰ"}
                per{"{0} ਪ੍ਰਤੀ ਵਰਗ ਕਿਲੋਮੀਟਰ"}
            }
            square-meter{
                dnam{"ਵਰਗ ਮੀਟਰ"}
                one{"{0} ਵਰਗ ਮੀਟਰ"}
                other{"{0} ਵਰਗ ਮੀਟਰ"}
                per{"{0} ਪ੍ਰਤੀ ਵਰਗ ਮੀਟਰ"}
            }
            square-mile{
                dnam{"ਵਰਗ ਮੀਲ"}
                one{"{0} ਵਰਗ ਮੀਲ"}
                other{"{0} ਵਰਗ ਮੀਲ"}
                per{"{0} ਪ੍ਰਤੀ ਵਰਗ ਮੀਲ"}
            }
            square-yard{
                dnam{"ਵਰਗ ਗਜ਼"}
                one{"{0} ਵਰਗ ਗਜ਼"}
                other{"{0} ਵਰਗ ਗਜ਼"}
            }
        }
        compound{
            per{"{0} ਪ੍ਰਤੀ {1}"}
        }
        concentr{
            karat{
                dnam{"ਕੇਰਟ"}
                one{"{0} ਕੇਰਟ"}
                other{"{0} ਕੇਰਟ"}
            }
            milligram-per-deciliter{
                dnam{"ਮਿਲੀਗ੍ਰਾਮ ਪ੍ਰਤੀ ਡੈਸੀਲਿਟਰ"}
                one{"{0} ਮਿਲੀਗ੍ਰਾਮ ਪ੍ਰਤੀ ਡੈਸੀਲਿਟਰ"}
                other{"{0} ਮਿਲੀਗ੍ਰਾਮ ਪ੍ਰਤੀ ਡੈਸੀਲਿਟਰ"}
            }
            millimole-per-liter{
                dnam{"ਮਿਲੀਮੋਲ ਪ੍ਰਤੀ ਲਿਟਰ"}
                one{"{0} ਮਿਲੀਮੋਲ ਪ੍ਰਤੀ ਲਿਟਰ"}
                other{"{0} ਮਿਲੀਮੋਲ ਪ੍ਰਤੀ ਲਿਟਰ"}
            }
            part-per-million{
                dnam{"ਹਿੱਸੇ ਪ੍ਰਤੀ ਮਿਲੀਅਨ"}
                one{"{0} ਹਿੱਸਾ ਪ੍ਰਤੀ ਮਿਲੀਅਨ"}
                other{"{0} ਹਿੱਸੇ ਪ੍ਰਤੀ ਮਿਲੀਅਨ"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"ਲਿਟਰ ਪ੍ਰਤੀ 100 ਕਿਲੋਮੀਟਰ"}
                one{"{0} ਲਿਟਰ ਪ੍ਰਤੀ 100 ਕਿਲੋਮੀਟਰ"}
                other{"{0} ਲਿਟਰ ਪ੍ਰਤੀ 100 ਕਿਲੋਮੀਟਰ"}
            }
            liter-per-kilometer{
                dnam{"ਲਿਟਰ ਪ੍ਰਤੀ ਕਿਲੋਮੀਟਰ"}
                one{"{0} ਲਿਟਰ ਪ੍ਰਤੀ ਕਿਲੋਮੀਟਰ"}
                other{"{0} ਲਿਟਰ ਪ੍ਰਤੀ ਕਿਲੋਮੀਟਰ"}
            }
            mile-per-gallon{
                dnam{"ਮੀਲ ਪ੍ਰਤੀ ਗੈਲਨ"}
                one{"{0} ਮੀਲ ਪ੍ਰਤੀ ਗੈਲਨ"}
                other{"{0} ਮੀਲ ਪ੍ਰਤੀ ਗੈਲਨ"}
            }
            mile-per-gallon-imperial{
                dnam{"ਮੀਲ ਪ੍ਰਤੀ ਇੰਪ. ਗੈਲਨ"}
                one{"{0} ਮੀਲ ਪ੍ਰਤੀ ਇੰਪ. ਗੈਲਨ"}
                other{"{0} ਮੀਲ ਪ੍ਰਤੀ ਇੰਪ. ਗੈਲਨ"}
            }
        }
        coordinate{
            east{"{0}ਪੂ"}
            north{"{0}ਉ"}
            south{"{0}ਦੱ"}
            west{"{0}ਪੱ"}
        }
        digital{
            bit{
                dnam{"ਬਿਟ"}
                one{"{0} ਬਿਟ"}
                other{"{0} ਬਿਟ"}
            }
            byte{
                dnam{"ਬਾਇਟ"}
                one{"{0} ਬਾਇਟ"}
                other{"{0} ਬਾਇਟ"}
            }
            gigabit{
                dnam{"ਗੀਗਾਬਿਟ"}
                one{"{0} ਗੀਗਾਬਿਟ"}
                other{"{0} ਗੀਗਾਬਿਟ"}
            }
            gigabyte{
                dnam{"ਗੀਗਾਬਾਇਟ"}
                one{"{0} ਗੀਗਾਬਾਇਟ"}
                other{"{0} ਗੀਗਾਬਾਇਟ"}
            }
            kilobit{
                dnam{"ਕਿਲੋਬਿਟ"}
                one{"{0} ਕਿਲੋਬਿਟ"}
                other{"{0} ਕਿਲੋਬਿਟ"}
            }
            kilobyte{
                dnam{"ਕਿਲੋਬਾਇਟ"}
                one{"{0} ਕਿਲੋਬਾਇਟ"}
                other{"{0} ਕਿਲੋਬਾਇਟ"}
            }
            megabit{
                dnam{"ਮੈਗਾਬਿਟ"}
                one{"{0} ਮੈਗਾਬਿਟ"}
                other{"{0} ਮੈਗਾਬਿਟ"}
            }
            megabyte{
                dnam{"ਮੈਗਾਬਾਇਟ"}
                one{"{0} ਮੈਗਾਬਾਇਟ"}
                other{"{0} ਮੈਗਾਬਾਇਟ"}
            }
            terabit{
                dnam{"ਟੇਰਾਬਿਟ"}
                one{"{0} ਟੇਰਾਬਿਟ"}
                other{"{0} ਟੇਰਾਬਿਟ"}
            }
            terabyte{
                dnam{"ਟੈਰਾਬਾਇਟ"}
                one{"{0} ਟੈਰਾਬਾਇਟ"}
                other{"{0} ਟੈਰਾਬਾਇਟ"}
            }
        }
        duration{
            century{
                dnam{"ਸਦੀਆਂ"}
                one{"{0} ਸਦੀ"}
                other{"{0} ਸਦੀਆਂ"}
            }
            day{
                dnam{"ਦਿਨ"}
                one{"{0} ਦਿਨ"}
                other{"{0} ਦਿਨ"}
                per{"{0} ਪ੍ਰਤੀ ਦਿਨ"}
            }
            hour{
                dnam{"ਘੰਟੇ"}
                one{"{0} ਘੰਟਾ"}
                other{"{0} ਘੰਟੇ"}
                per{"{0} ਪ੍ਰਤੀ ਘੰਟਾ"}
            }
            microsecond{
                dnam{"ਮਾਈਕਰੋਸਕਿੰਟ"}
                one{"{0} ਮਾਈਕਰੋਸਕਿੰਟ"}
                other{"{0} ਮਾਈਕਰੋਸਕਿੰਟ"}
            }
            millisecond{
                dnam{"ਮਿਲੀਸਕਿੰਟ"}
                one{"{0} ਮਿਲੀਸਕਿੰਟ"}
                other{"{0} ਮਿਲੀਸਕਿੰਟ"}
            }
            minute{
                dnam{"ਮਿੰਟ"}
                one{"{0} ਮਿੰਟ"}
                other{"{0} ਮਿੰਟ"}
                per{"{0} ਪ੍ਰਤੀ ਮਿੰਟ"}
            }
            month{
                dnam{"ਮਹੀਨੇ"}
                one{"{0} ਮਹੀਨਾ"}
                other{"{0} ਮਹੀਨੇ"}
                per{"{0} ਪ੍ਰਤੀ ਮਹੀਨਾ"}
            }
            nanosecond{
                dnam{"ਨੈਨੋਸਕਿੰਟ"}
                one{"{0} ਨੈਨੋਸਕਿੰਟ"}
                other{"{0} ਨੈਨੋਸਕਿੰਟ"}
            }
            second{
                dnam{"ਸਕਿੰਟ"}
                one{"{0} ਸਕਿੰਟ"}
                other{"{0} ਸਕਿੰਟ"}
                per{"{0} ਪ੍ਰਤੀ ਸਕਿੰਟ"}
            }
            week{
                dnam{"ਹਫ਼ਤੇ"}
                one{"{0} ਹਫ਼ਤਾ"}
                other{"{0} ਹਫ਼ਤੇ"}
                per{"{0} ਪ੍ਰਤੀ ਹਫ਼ਤਾ"}
            }
            year{
                dnam{"ਸਾਲ"}
                one{"{0} ਸਾਲ"}
                other{"{0} ਸਾਲ"}
                per{"{0} ਪ੍ਰਤੀ ਸਾਲ"}
            }
        }
        electric{
            ampere{
                dnam{"ਐਮਪੀਅਰ"}
                one{"{0} ਐਮਪੀਅਰ"}
                other{"{0} ਐਮਪੀਅਰ"}
            }
            milliampere{
                dnam{"ਮਿਲੀਐਮਪੀਅਰ"}
                one{"{0} ਮਿਲੀਐਮਪੀਅਰ"}
                other{"{0} ਮਿਲੀਐਮਪੀਅਰ"}
            }
            ohm{
                dnam{"ਓਹਮ"}
                one{"{0} ਓਹਮ"}
                other{"{0} ਓਹਮ"}
            }
            volt{
                dnam{"ਵੋਲਟ"}
                one{"{0} ਵੋਲਟ"}
                other{"{0} ਵੋਲਟ"}
            }
        }
        energy{
            calorie{
                dnam{"ਕੈਲੋਰੀਆਂ"}
                one{"{0} ਕੈਲੋਰੀ"}
                other{"{0} ਕੈਲੋਰੀਆਂ"}
            }
            foodcalorie{
                dnam{"ਕੈਲੋਰੀਆਂ"}
                one{"{0} ਕੈਲੋਰੀ"}
                other{"{0} ਕੈਲੋਰੀਆਂ"}
            }
            joule{
                dnam{"ਜੂਲ"}
                one{"{0} ਜੂਲ"}
                other{"{0} ਜੂਲ"}
            }
            kilocalorie{
                dnam{"ਕਿਲੋਕੈਲੋਰੀਆਂ"}
                one{"{0} ਕਿਲੋਕੈਲੋਰੀ"}
                other{"{0} ਕਿਲੋਕੈਲੋਰੀਆਂ"}
            }
            kilojoule{
                dnam{"ਕਿਲੋਜੂਲ"}
                one{"{0} ਕਿਲੋਜੂਲ"}
                other{"{0} ਕਿਲੋਜੂਲ"}
            }
            kilowatt-hour{
                dnam{"ਕਿਲੋਵਾਟ-ਘੰਟੇ"}
                one{"{0} ਕਿਲੋਵਾਟ ਘੰਟਾ"}
                other{"{0} ਕਿਲੋਵਾਟ ਘੰਟੇ"}
            }
        }
        frequency{
            gigahertz{
                dnam{"ਗੀਗਾਹਰਟਜ਼"}
                one{"{0} ਗੀਗਾਹਰਟਜ਼"}
                other{"{0} ਗੀਗਾਹਰਟਜ਼"}
            }
            hertz{
                dnam{"ਹਰਟਜ਼"}
                one{"{0} ਹਰਟਜ਼"}
                other{"{0} ਹਰਟਜ਼"}
            }
            kilohertz{
                dnam{"ਕਿਲੋਹਰਟਜ਼"}
                one{"{0} ਕਿਲੋਹਰਟਜ਼"}
                other{"{0} ਕਿਲੋਹਰਟਜ਼"}
            }
            megahertz{
                dnam{"ਮੈਗਾਹਰਟਜ਼"}
                one{"{0} ਮੈਗਾਹਰਟਜ਼"}
                other{"{0} ਮੈਗਾਹਰਟਜ਼"}
            }
        }
        length{
            astronomical-unit{
                dnam{"ਖਗੋਲੀ ਇਕਾਈਆਂ"}
                one{"{0} ਖਗੋਲੀ ਇਕਾਈ"}
                other{"{0} ਖਗੋਲੀ ਇਕਾਈਆਂ"}
            }
            centimeter{
                dnam{"ਸੈਂਟੀਮੀਟਰ"}
                one{"{0} ਸੈਂਟੀਮੀਟਰ"}
                other{"{0} ਸੈਂਟੀਮੀਟਰ"}
                per{"{0} ਪ੍ਰਤੀ ਸੈਂਟੀਮੀਟਰ"}
            }
            decimeter{
                dnam{"ਡੈਸੀਮੀਟਰ"}
                one{"{0} ਡੈਸੀਮੀਟਰ"}
                other{"{0} ਡੈਸੀਮੀਟਰ"}
            }
            fathom{
                dnam{"ਫ਼ੈਦਮ"}
                one{"{0} ਫ਼ੈਦਮ"}
                other{"{0} ਫ਼ੈਦਮ"}
            }
            foot{
                dnam{"ਫੁੱਟ"}
                one{"{0} ਫੁੱਟ"}
                other{"{0} ਫੁੱਟ"}
                per{"{0} ਪ੍ਰਤੀ ਫੁੱਟ"}
            }
            furlong{
                dnam{"ਫਰਲਾਂਗ"}
                one{"{0} ਫਰਲਾਂਗ"}
                other{"{0} ਫਰਲਾਂਗ"}
            }
            inch{
                dnam{"ਇੰਚ"}
                one{"{0} ਇੰਚ"}
                other{"{0} ਇੰਚ"}
                per{"{0} ਪ੍ਰਤੀ ਇੰਚ"}
            }
            kilometer{
                dnam{"ਕਿਲੋਮੀਟਰ"}
                one{"{0} ਕਿਲੋਮੀਟਰ"}
                other{"{0} ਕਿਲੋਮੀਟਰ"}
                per{"{0} ਪ੍ਰਤੀ ਕਿਲੋਮੀਟਰ"}
            }
            light-year{
                dnam{"ਪ੍ਰਕਾਸ਼ ਸਾਲ"}
                one{"{0} ਪ੍ਰਕਾਸ਼ ਸਾਲ"}
                other{"{0} ਪ੍ਰਕਾਸ਼ ਸਾਲ"}
            }
            meter{
                dnam{"ਮੀਟਰ"}
                one{"{0} ਮੀਟਰ"}
                other{"{0} ਮੀਟਰ"}
                per{"{0} ਪ੍ਰਤੀ ਮੀਟਰ"}
            }
            micrometer{
                dnam{"ਮਾਈਕਰੋਮੀਟਰ"}
                one{"{0} ਮਾਈਕਰੋਮੀਟਰ"}
                other{"{0} ਮਾਈਕਰੋਮੀਟਰ"}
            }
            mile{
                dnam{"ਮੀਲ"}
                one{"{0} ਮੀਲ"}
                other{"{0} ਮੀਲ"}
            }
            mile-scandinavian{
                dnam{"ਮੀਲ-ਸਕੈਂਡਿਨੇਵਿਆਈ"}
                one{"{0} ਮੀਲ-ਸਕੈਂਡਿਨੇਵਿਆਈ"}
                other{"{0} ਮੀਲ-ਸਕੈਂਡਿਨੇਵਿਆਈ"}
            }
            millimeter{
                dnam{"ਮਿਲੀਮੀਟਰ"}
                one{"{0} ਮਿਲੀਮੀਟਰ"}
                other{"{0} ਮਿਲੀਮੀਟਰ"}
            }
            nanometer{
                dnam{"ਨੈਨੋਮੀਟਰ"}
                one{"{0} ਨੈਨੋਮੀਟਰ"}
                other{"{0} ਨੈਨੋਮੀਟਰ"}
            }
            nautical-mile{
                dnam{"ਨੋਟੀਕਲ ਮੀਲ"}
                one{"{0} ਨੋਟੀਕਲ ਮੀਲ"}
                other{"{0} ਨੋਟੀਕਲ ਮੀਲ"}
            }
            parsec{
                dnam{"ਪਾਸੈੱਕ"}
                one{"{0} ਪਾਸੈੱਕ"}
                other{"{0} ਪਾਸੈੱਕ"}
            }
            picometer{
                dnam{"ਪਿਕੋਮੀਟਰ"}
                one{"{0} ਪਿਕੋਮੀਟਰ"}
                other{"{0} ਪਿਕੋਮੀਟਰ"}
            }
            yard{
                dnam{"ਗਜ਼"}
                one{"{0} ਗਜ਼"}
                other{"{0} ਗਜ਼"}
            }
        }
        light{
            lux{
                dnam{"ਲਕਸ"}
                one{"{0} ਲਕਸ"}
                other{"{0} ਲਕਸ"}
            }
        }
        mass{
            carat{
                dnam{"ਕੈਰਟ"}
                one{"{0} ਕੈਰਟ"}
                other{"{0} ਕੈਰਟ"}
            }
            gram{
                dnam{"ਗ੍ਰਾਮ"}
                one{"{0} ਗ੍ਰਾਮ"}
                other{"{0} ਗ੍ਰਾਮ"}
                per{"{0} ਪ੍ਰਤੀ ਗ੍ਰਾਮ"}
            }
            kilogram{
                dnam{"ਕਿਲੋਗ੍ਰਾਮ"}
                one{"{0} ਕਿਲੋਗ੍ਰਾਮ"}
                other{"{0} ਕਿਲੋਗ੍ਰਾਮ"}
                per{"{0} ਪ੍ਰਤੀ ਕਿਲੋਗ੍ਰਾਮ"}
            }
            metric-ton{
                dnam{"ਮੀਟਰਿਕ ਟਨ"}
                one{"{0} ਮੀਟਰਿਕ ਟਨ"}
                other{"{0} ਮੀਟਰਿਕ ਟਨ"}
            }
            microgram{
                dnam{"ਮਾਈਕਰੋਗ੍ਰਾਮ"}
                one{"{0} ਮਾਈਕਰੋਗ੍ਰਾਮ"}
                other{"{0} ਮਾਈਕਰੋਗ੍ਰਾਮ"}
            }
            milligram{
                dnam{"ਮਿਲੀਗ੍ਰਾਮ"}
                one{"{0} ਮਿਲੀਗ੍ਰਾਮ"}
                other{"{0} ਮਿਲੀਗ੍ਰਾਮ"}
            }
            ounce{
                dnam{"ਔਂਸ"}
                one{"{0} ਔਂਸ"}
                other{"{0} ਔਂਸ"}
                per{"{0} ਪ੍ਰਤੀ ਔਂਸ"}
            }
            ounce-troy{
                dnam{"ਟਰੌਏ ਔਂਸ"}
                one{"{0} ਟਰੌਏ ਔਂਸ"}
                other{"{0} ਟਰੌਏ ਔਂਸ"}
            }
            pound{
                dnam{"ਪੌਂਡ"}
                one{"{0} ਪੌਂਡ"}
                other{"{0} ਪੌਂਡ"}
                per{"{0} ਪ੍ਰਤੀ ਪੌਂਡ"}
            }
            stone{
                dnam{"ਸਟੋਨ"}
                one{"{0} ਸਟੋਨ"}
                other{"{0} ਸਟੋਨ"}
            }
            ton{
                dnam{"ਟਨ"}
                one{"{0} ਟਨ"}
                other{"{0} ਟਨ"}
            }
        }
        power{
            gigawatt{
                dnam{"ਗੀਗਾਵਾਟ"}
                one{"{0} ਗੀਗਾਵਾਟ"}
                other{"{0} ਗੀਗਾਵਾਟ"}
            }
            horsepower{
                dnam{"ਹੌਰਸਪਾਵਰ"}
                one{"{0} ਹੌਰਸਪਾਵਰ"}
                other{"{0} ਹੌਰਸਪਾਵਰ"}
            }
            kilowatt{
                dnam{"ਕਿਲੋਵਾਟ"}
                one{"{0} ਕਿਲੋਵਾਟ"}
                other{"{0} ਕਿਲੋਵਾਟ"}
            }
            megawatt{
                dnam{"ਮੈਗਾਵਾਟ"}
                one{"{0} ਮੈਗਾਵਾਟ"}
                other{"{0} ਮੈਗਾਵਾਟ"}
            }
            milliwatt{
                dnam{"ਮਿਲੀਵਾਟ"}
                one{"{0} ਮਿਲੀਵਾਟ"}
                other{"{0} ਮਿਲੀਵਾਟ"}
            }
            watt{
                dnam{"ਵਾਟ"}
                one{"{0} ਵਾਟ"}
                other{"{0} ਵਾਟ"}
            }
        }
        pressure{
            hectopascal{
                dnam{"ਹੈਕਟੋਪਾਸਕਲ"}
                one{"{0} ਹੈਕਟੋਪਾਸਕਲ"}
                other{"{0} ਹੈਕਟੋਪਾਸਕਲ"}
            }
            inch-hg{
                dnam{"ਇੰਚ ਪਾਰਾ"}
                one{"{0} ਇੰਚ ਪਾਰਾ"}
                other{"{0} ਇੰਚ ਪਾਰਾ"}
            }
            millibar{
                dnam{"ਮਿਲੀਬਾਰ"}
                one{"{0} ਮਿਲੀਬਾਰ"}
                other{"{0} ਮਿਲੀਬਾਰ"}
            }
            millimeter-of-mercury{
                dnam{"ਮਿਲੀਮੀਟਰ ਪਾਰਾ"}
                one{"{0} ਮਿਲੀਮੀਟਰ ਪਾਰਾ"}
                other{"{0} ਮਿਲੀਮੀਟਰ ਪਾਰਾ"}
            }
            pound-per-square-inch{
                dnam{"ਪੌਂਡ ਪ੍ਰਤੀ ਵਰਗ ਇੰਚ"}
                one{"{0} ਪੌਂਡ ਪ੍ਰਤੀ ਵਰਗ ਇੰਚ"}
                other{"{0} ਪੌਂਡ ਪ੍ਰਤੀ ਵਰਗ ਇੰਚ"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"ਕਿਲੋਮੀਟਰ ਪ੍ਰਤੀ ਘੰਟਾ"}
                one{"{0} ਕਿਲੋਮੀਟਰ ਪ੍ਰਤੀ ਘੰਟਾ"}
                other{"{0} ਕਿਲੋਮੀਟਰ ਪ੍ਰਤੀ ਘੰਟਾ"}
            }
            knot{
                dnam{"ਨੌਟ"}
                one{"{0} ਨੌਟ"}
                other{"{0} ਨੌਟ"}
            }
            meter-per-second{
                dnam{"ਮੀਟਰ ਪ੍ਰਤੀ ਸਕਿੰਟ"}
                one{"{0} ਮੀਟਰ ਪ੍ਰਤੀ ਸਕਿੰਟ"}
                other{"{0} ਮੀਟਰ ਪ੍ਰਤੀ ਸਕਿੰਟ"}
            }
            mile-per-hour{
                dnam{"ਮੀਲ ਪ੍ਰਤੀ ਘੰਟਾ"}
                one{"{0} ਮੀਲ ਪ੍ਰਤੀ ਘੰਟਾ"}
                other{"{0} ਮੀਲ ਪ੍ਰਤੀ ਘੰਟਾ"}
            }
        }
        temperature{
            celsius{
                dnam{"ਦਰਜੇ ਸੈਲਸੀਅਸ"}
                one{"{0} ਦਰਜਾ ਸੈਲਸੀਅਸ"}
                other{"{0} ਦਰਜੇ ਸੈਲਸੀਅਸ"}
            }
            fahrenheit{
                dnam{"ਦਰਜੇ ਫਾਰੇਨਹਾਈਟ"}
                one{"{0} ਦਰਜਾ ਫਾਰੇਨਹਾਈਟ"}
                other{"{0} ਦਰਜੇ ਫਾਰੇਨਹਾਈਟ"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"ਕੈਲਵਿਨ"}
                one{"{0} ਕੈਲਵਿਨ"}
                other{"{0} ਕੈਲਵਿਨ"}
            }
        }
        volume{
            acre-foot{
                dnam{"ਏਕੜ ਫੁੱਟ"}
                one{"{0} ਏਕੜ ਫੁੱਟ"}
                other{"{0} ਏਕੜ ਫੁੱਟ"}
            }
            bushel{
                dnam{"ਬੁਸ਼ਲ"}
                one{"{0} ਬੁਸ਼ਲ"}
                other{"{0} ਬੁਸ਼ਲ"}
            }
            centiliter{
                dnam{"ਸੈਂਟੀਲਿਟਰ"}
                one{"{0} ਸੈਂਟੀਲਿਟਰ"}
                other{"{0} ਸੈਂਟੀਲਿਟਰ"}
            }
            cubic-centimeter{
                dnam{"ਘਣ ਸੈਂਟੀਮੀਟਰ"}
                one{"{0} ਘਣ ਸੈਂਟੀਮੀਟਰ"}
                other{"{0} ਘਣ ਸੈਂਟੀਮੀਟਰ"}
                per{"{0} ਪ੍ਰਤੀ ਘਣ ਸੈਂਟੀਮੀਟਰ"}
            }
            cubic-foot{
                dnam{"ਘਣ ਫੁੱਟ"}
                one{"{0} ਘਣ ਫੁੱਟ"}
                other{"{0} ਘਣ ਫੁੱਟ"}
            }
            cubic-inch{
                dnam{"ਘਣ ਇੰਚ"}
                one{"{0} ਘਣ ਇੰਚ"}
                other{"{0} ਘਣ ਇੰਚ"}
            }
            cubic-kilometer{
                dnam{"ਘਣ ਕਿਲੋਮੀਟਰ"}
                one{"{0} ਘਣ ਕਿਲੋਮੀਟਰ"}
                other{"{0} ਘਣ ਕਿਲੋਮੀਟਰ"}
            }
            cubic-meter{
                dnam{"ਘਣ ਮੀਟਰ"}
                one{"{0} ਘਣ ਮੀਟਰ"}
                other{"{0} ਘਣ ਮੀਟਰ"}
                per{"{0} ਪ੍ਰਤੀ ਘਣ ਮੀਟਰ"}
            }
            cubic-mile{
                dnam{"ਘਣ ਮੀਲ"}
                one{"{0} ਘਣ ਮੀਲ"}
                other{"{0} ਘਣ ਮੀਲ"}
            }
            cubic-yard{
                dnam{"ਘਣ ਗਜ਼"}
                one{"{0} ਘਣ ਗਜ਼"}
                other{"{0} ਘਣ ਗਜ਼"}
            }
            cup{
                dnam{"ਕੱਪ"}
                one{"{0} ਕੱਪ"}
                other{"{0} ਕੱਪ"}
            }
            cup-metric{
                dnam{"ਮੀਟਰਿਕ ਕੱਪ"}
                one{"{0} ਮੀਟਰਿਕ ਕੱਪ"}
                other{"{0} ਮੀਟਰਿਕ ਕੱਪ"}
            }
            deciliter{
                dnam{"ਡੈਸੀਲਿਟਰ"}
                one{"{0} ਡੈਸੀਲਿਟਰ"}
                other{"{0} ਡੈਸੀਲਿਟਰ"}
            }
            fluid-ounce{
                dnam{"ਤਰਲ ਔਂਸ"}
                one{"{0} ਤਰਲ ਔਂਸ"}
                other{"{0} ਤਰਲ ਔਂਸ"}
            }
            gallon{
                dnam{"ਗੈਲਨ"}
                one{"{0} ਗੈਲਨ"}
                other{"{0} ਗੈਲਨ"}
                per{"{0} ਪ੍ਰਤੀ ਗੈਲਨ"}
            }
            gallon-imperial{
                dnam{"ਇੰਪ. ਗੈਲਨ"}
                one{"{0} ਇੰਪ. ਗੈਲਨ"}
                other{"{0} ਇੰਪ. ਗੈਲਨ"}
                per{"{0} ਪ੍ਰਤੀ ਇੰਪ. ਗੈਲਨ"}
            }
            hectoliter{
                dnam{"ਹੈਕਟੋਲਿਟਰ"}
                one{"{0} ਹੈਕਟੋਲਿਟਰ"}
                other{"{0} ਹੈਕਟੋਲਿਟਰ"}
            }
            liter{
                dnam{"ਲਿਟਰ"}
                one{"{0} ਲਿਟਰ"}
                other{"{0} ਲਿਟਰ"}
                per{"{0} ਪ੍ਰਤੀ ਲਿਟਰ"}
            }
            megaliter{
                dnam{"ਮੈਗਾਲਿਟਰ"}
                one{"{0} ਮੈਗਾਲਿਟਰ"}
                other{"{0} ਮੈਗਾਲਿਟਰ"}
            }
            milliliter{
                dnam{"ਮਿਲੀਲਿਟਰ"}
                one{"{0} ਮਿਲੀਲਿਟਰ"}
                other{"{0} ਮਿਲੀਲਿਟਰ"}
            }
            pint{
                dnam{"ਪਿੰਟ"}
                one{"{0} ਪਿੰਟ"}
                other{"{0} ਪਿੰਟ"}
            }
            pint-metric{
                dnam{"ਮੀਟਰਿਕ ਪਿੰਟ"}
                one{"{0} ਮੀਟਰਿਕ ਪਿੰਟ"}
                other{"{0} ਮੀਟਰਿਕ ਪਿੰਟ"}
            }
            quart{
                dnam{"ਕੁਆਟ"}
                one{"{0} ਕੁਆਟ"}
                other{"{0} ਕੁਆਟ"}
            }
            tablespoon{
                dnam{"ਟੇਬਲ ਸਪੂਨ"}
                one{"{0} ਟੇਬਲ ਸਪੂਨ"}
                other{"{0} ਟੇਬਲ ਸਪੂਨ"}
            }
            teaspoon{
                dnam{"ਟੀ ਸਪੂਨ"}
                one{"{0} ਟੀ ਸਪੂਨ"}
                other{"{0} ਟੀ ਸਪੂਨ"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0}G"}
                other{"{0}Gs"}
            }
            meter-per-second-squared{
                one{"{0}ਮੀ/ਸ²"}
                other{"{0}ਮੀ/ਸ²"}
            }
        }
        angle{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                one{"{0} ਰੇਡੀ."}
                other{"{0} ਰੇਡੀ."}
            }
        }
        area{
            acre{
                one{"{0}ਏਕੜ"}
                other{"{0}ਏਕੜ"}
            }
            hectare{
                one{"{0}ਹੈਕ"}
                other{"{0}ਹੈਕ"}
            }
            square-centimeter{
                one{"{0}ਸੈਮੀ²"}
                other{"{0}ਸੈਮੀ²"}
            }
            square-foot{
                one{"{0}ਫੁੱਟ²"}
                other{"{0}ਫੁੱਟ²"}
            }
            square-inch{
                one{"{0}ਇੰਚ²"}
                other{"{0}ਇੰਚ²"}
            }
            square-kilometer{
                one{"{0} ਕਿਮੀ²"}
                other{"{0} ਕਿਮੀ²"}
            }
            square-meter{
                one{"{0} ਮੀ²"}
                other{"{0} ਮੀ²"}
            }
            square-mile{
                one{"{0}ਮੀਲ²"}
                other{"{0}ਮੀਲ²"}
            }
            square-yard{
                one{"{0} ਗਜ਼²"}
                other{"{0} ਗਜ਼²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        concentr{
            karat{
                one{"{0} ਕੇਰਟ"}
                other{"{0} ਕੇਰਟ"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"ਲਿ./100ਕਿ.ਮੀ."}
                one{"{0} L/100km"}
                other{"{0} L/100km"}
            }
            liter-per-kilometer{
                one{"{0}ਲਿ./ਕਿ.ਮੀ."}
                other{"{0}ਲਿ./ਕਿ.ਮੀ."}
            }
            mile-per-gallon{
                one{"{0} ਮੀ.ਪ੍ਰ.ਗੈ."}
                other{"{0} ਮੀ.ਪ੍ਰ.ਗੈ."}
            }
        }
        coordinate{
            east{"{0}ਪੂ"}
            north{"{0}ਉ"}
            south{"{0}ਦੱ"}
            west{"{0}ਪੱ"}
        }
        digital{
            bit{
                one{"{0}ਬਿਟ"}
                other{"{0}ਬਿਟ"}
            }
            byte{
                one{"{0}ਬਾਇਟ"}
                other{"{0}ਬਾਇਟ"}
            }
            gigabit{
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                one{"{0} MB"}
                other{"{0} MB"}
            }
            terabit{
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                one{"{0} TB"}
                other{"{0} TB"}
            }
        }
        duration{
            day{
                dnam{"ਦਿਨ"}
                one{"{0} ਦਿਨ"}
                other{"{0} ਦਿਨ"}
            }
            hour{
                dnam{"ਘੰਟਾ"}
                one{"{0} ਘੰਟਾ"}
                other{"{0} ਘੰਟੇ"}
            }
            microsecond{
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"ਮਿਲੀਸਕਿੰਟ"}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"ਮਿੰਟ"}
                one{"{0} ਮਿੰਟ"}
                other{"{0} ਮਿੰਟ"}
            }
            month{
                dnam{"ਮਹੀਨਾ"}
                one{"{0} ਮਹੀਨਾ"}
                other{"{0} ਮਹੀਨੇ"}
            }
            nanosecond{
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"ਸਕਿੰਟ"}
                one{"{0} ਸਕਿੰਟ"}
                other{"{0} ਸਕਿੰਟ"}
            }
            week{
                dnam{"ਹਫ਼ਤਾ"}
                one{"{0} ਹਫ਼ਤਾ"}
                other{"{0} ਹਫ਼ਤੇ"}
            }
            year{
                dnam{"ਸਾਲ"}
                one{"{0} ਸਾਲ"}
                other{"{0} ਸਾਲ"}
            }
        }
        electric{
            ampere{
                one{"{0}A"}
                other{"{0}A"}
            }
            milliampere{
                one{"{0}mA"}
                other{"{0}mA"}
            }
            ohm{
                one{"{0}Ω"}
                other{"{0}Ω"}
            }
            volt{
                one{"{0}V"}
                other{"{0}V"}
            }
        }
        energy{
            calorie{
                one{"{0} ਕੈਲੋਰੀਆਂ"}
                other{"{0} ਕੈਲੋਰੀਆਂ"}
            }
            foodcalorie{
                one{"{0} ਕੈਲੋਰੀਆਂ"}
                other{"{0} ਕੈਲੋਰੀਆਂ"}
            }
            joule{
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                one{"{0}ਕਿ.ਕੈਲੋਰੀਆਂ"}
                other{"{0}ਕਿ.ਕੈਲੋਰੀਆਂ"}
            }
            kilojoule{
                one{"{0} ਕਿ.ਜੂਲ"}
                other{"{0} ਕਿ.ਜੂਲ"}
            }
            kilowatt-hour{
                one{"{0} ਕਿ.ਵਾ.ਘੰ."}
                other{"{0} ਕਿ.ਵਾ.ਘੰ."}
            }
        }
        frequency{
            gigahertz{
                one{"{0}GHz"}
                other{"{0}GHz"}
            }
            hertz{
                one{"{0}Hz"}
                other{"{0}Hz"}
            }
            kilohertz{
                one{"{0}kHz"}
                other{"{0}kHz"}
            }
            megahertz{
                one{"{0}MHz"}
                other{"{0}MHz"}
            }
        }
        length{
            astronomical-unit{
                one{"{0} au"}
                other{"{0} au"}
            }
            centimeter{
                dnam{"ਸੈਂ.ਮੀ."}
                one{"{0}ਸੈਂ.ਮੀ."}
                other{"{0}ਸੈਂ.ਮੀ."}
            }
            decimeter{
                one{"{0} ਡੈ.ਮੀ."}
                other{"{0} ਡੈ.ਮੀ."}
            }
            fathom{
                dnam{"ਫ਼ੈਦਮ"}
                one{"{0} ਫ਼ੈਦਮ"}
                other{"{0} ਫ਼ੈਦਮ"}
            }
            foot{
                one{"{0}'"}
                other{"{0}'"}
            }
            furlong{
                dnam{"ਫਰਲਾਂਗ"}
                one{"{0} ਫਰਲਾਂਗ"}
                other{"{0} ਫਰਲਾਂਗ"}
            }
            inch{
                one{"{0}\u0022"}
                other{"{0}\u0022"}
            }
            kilometer{
                dnam{"ਕਿ.ਮੀ."}
                one{"{0} ਕਿ.ਮੀ."}
                other{"{0} ਕਿ.ਮੀ."}
            }
            light-year{
                one{"{0} ਪ੍ਰ.ਸ."}
                other{"{0} ਪ੍ਰ.ਸ."}
            }
            meter{
                dnam{"ਮੀਟਰ"}
                one{"{0} ਮੀ."}
                other{"{0} ਮੀ."}
            }
            micrometer{
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                one{"{0} ਮੀਲ"}
                other{"{0} ਮੀਲ"}
            }
            millimeter{
                dnam{"ਮਿ.ਮੀ."}
                one{"{0} ਮਿ.ਮੀ."}
                other{"{0} ਮਿ.ਮੀ."}
            }
            nanometer{
                one{"{0} ਨੈ.ਮੀ."}
                other{"{0} ਨੈ.ਮੀ."}
            }
            nautical-mile{
                one{"{0} ਨੋ.ਮੀਲ"}
                other{"{0} ਨੋ.ਮੀਲ"}
            }
            parsec{
                one{"{0} ਪਾਸੈੱਕ"}
                other{"{0} ਪਾਸੈੱਕ"}
            }
            picometer{
                one{"{0} ਪਿ.ਮੀ."}
                other{"{0} ਪਿ.ਮੀ."}
            }
            yard{
                one{"{0} ਗਜ਼"}
                other{"{0} ਗਜ਼"}
            }
        }
        light{
            lux{
                one{"{0} ਲਕਸ"}
                other{"{0} ਲਕਸ"}
            }
        }
        mass{
            gram{
                dnam{"ਗ੍ਰਾਮ"}
                one{"{0} ਗ੍ਰਾ."}
                other{"{0} ਗ੍ਰਾ."}
            }
            kilogram{
                dnam{"ਕਿ ਗ੍ਰਾ"}
                one{"{0} ਕਿ.ਗ੍ਰਾ."}
                other{"{0} ਕਿ.ਗ੍ਰਾ."}
            }
            ounce{
                one{"{0} ਔਂਸ"}
                other{"{0} ਔਂਸ"}
            }
            ounce-troy{
                one{"{0} ਔਂਸ ਟ."}
                other{"{0} ਔਂਸ ਟ."}
            }
            pound{
                one{"{0}#"}
                other{"{0}#"}
            }
            stone{
                dnam{"ਸਟੋਨ"}
                one{"{0}ਸਟੋਨ"}
                other{"{0}ਸਟੋਨ"}
            }
            ton{
                one{"{0}ਟਨ"}
                other{"{0}ਟਨ"}
            }
        }
        power{
            gigawatt{
                one{"{0} ਗੀ.ਵਾਟ"}
                other{"{0} ਗੀ.ਵਾਟ"}
            }
            horsepower{
                one{"{0}hp"}
                other{"{0} hp"}
            }
            kilowatt{
                one{"{0} ਕਿ. ਵਾਟ"}
                other{"{0} ਕਿ. ਵਾਟ"}
            }
            megawatt{
                one{"{0} ਮੈ.ਵਾਟ"}
                other{"{0} ਮੈ.ਵਾਟ"}
            }
            milliwatt{
                one{"{0} ਮਿ.ਵਾਟ"}
                other{"{0} ਮਿ.ਵਾਟ"}
            }
            watt{
                one{"{0} ਵਾਟ"}
                other{"{0} ਵਾਟ"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} ਹੈ.ਪਾ."}
                other{"{0} ਹੈ.ਪਾ."}
            }
            inch-hg{
                one{"{0}\u0022 ਪਾਰਾ"}
                other{"{0}\u0022 ਪਾਰਾ"}
            }
            millibar{
                one{"{0} ਮਿ.ਬਾ."}
                other{"{0} ਮਿ.ਬਾ."}
            }
            millimeter-of-mercury{
                one{"{0} ਮਿ.ਮੀ. ਪਾਰਾ"}
                other{"{0} ਮਿ.ਮੀ. ਪਾਰਾ"}
            }
            pound-per-square-inch{
                one{"{0} ਪੌਂ.ਵ.ਇੰਚ"}
                other{"{0} ਪੌਂ.ਵ.ਇੰਚ"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"ਕਿ.ਮੀ./ਘੰਟਾ"}
                one{"{0} ਕਿ.ਪ੍ਰ.ਘੰ."}
                other{"{0} ਕਿ.ਪ੍ਰ.ਘੰ."}
            }
            meter-per-second{
                one{"{0}ਮੀ/ਸ"}
                other{"{0}ਮੀ/ਸ"}
            }
            mile-per-hour{
                one{"{0} ਮੀ.ਪ੍ਰ.ਘੰ."}
                other{"{0} ਮੀ.ਪ੍ਰ.ਘੰ."}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                one{"{0}°"}
                other{"{0}°"}
            }
            kelvin{
                one{"{0}°K"}
                other{"{0}°K"}
            }
        }
        volume{
            acre-foot{
                one{"{0}ਏਕੜ ਫੁੱਟ"}
                other{"{0}ਏਕੜ ਫੁੱਟ"}
            }
            bushel{
                dnam{"ਬੁਸ਼ਲ"}
                one{"{0}ਬੁਸ਼ਲ"}
                other{"{0}ਬੁਸ਼ਲ"}
            }
            centiliter{
                one{"{0} ਸੈਂ.ਲਿ."}
                other{"{0} ਸੈਂ.ਲਿ."}
            }
            cubic-centimeter{
                one{"{0}ਸੈਮੀ³"}
                other{"{0}ਸੈਮੀ³"}
            }
            cubic-foot{
                one{"{0}ਫੁੱਟ³"}
                other{"{0}ਫੁੱਟ³"}
            }
            cubic-inch{
                one{"{0}ਇੰਚ³"}
                other{"{0}ਇੰਚ³"}
            }
            cubic-kilometer{
                one{"{0}ਕਿਮੀ³"}
                other{"{0}ਕਿਮੀ³"}
            }
            cubic-meter{
                one{"{0}ਮੀ³"}
                other{"{0}ਮੀ³"}
            }
            cubic-mile{
                one{"{0}ਮੀਲ³"}
                other{"{0}ਮੀਲ³"}
            }
            cubic-yard{
                one{"{0}ਗਜ਼³"}
                other{"{0}ਗਜ਼³"}
            }
            cup{
                one{"{0}ਕੱਪ"}
                other{"{0}ਕੱਪ"}
            }
            deciliter{
                one{"{0} ਡੈ.ਲਿ."}
                other{"{0} ਡੈ.ਲਿ."}
            }
            fluid-ounce{
                one{"{0} ਤ. ਔਂਸ"}
                other{"{0} ਤ. ਔਂਸ"}
            }
            gallon{
                one{"{0}ਗੈਲਨ"}
                other{"{0}ਗੈਲਨ"}
            }
            hectoliter{
                one{"{0} ਹੈ.ਲਿ."}
                other{"{0} ਹੈ.ਲਿ."}
            }
            liter{
                dnam{"ਲਿਟਰ"}
                one{"{0} ਲਿ."}
                other{"{0} ਲਿ."}
            }
            megaliter{
                one{"{0} ਮੈ.ਲਿ."}
                other{"{0} ਮੈ.ਲਿ."}
            }
            milliliter{
                one{"{0} ਮਿ.ਲਿ."}
                other{"{0} ਮਿ.ਲਿ."}
            }
            pint{
                one{"{0}ਪਿੰਟ"}
                other{"{0}ਪਿੰਟ"}
            }
            quart{
                one{"{0}ਕੁਆਟ"}
                other{"{0}ਕੁਆਟ"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"ਗੁਰੂਤਾਕਰਸ਼ਣ ਬਲ"}
                one{"{0} G"}
                other{"{0} G"}
            }
            meter-per-second-squared{
                dnam{"ਮੀਟਰ/ਸਕਿੰਟ²"}
                one{"{0} ਮੀ/ਸ²"}
                other{"{0} ਮੀ/ਸ²"}
            }
        }
        angle{
            arc-minute{
                dnam{"ਚਾਪ-ਮਿੰਟ"}
                one{"{0} ਚਾਪਮਿੰਟ"}
                other{"{0} ਚਾਪ-ਮਿੰਟ"}
            }
            arc-second{
                dnam{"ਚਾਪ-ਸਕਿੰਟ"}
                one{"{0} ਚਾਪ-ਸਕਿੰਟ"}
                other{"{0} ਚਾਪ-ਸਕਿੰਟ"}
            }
            degree{
                dnam{"ਡਿਗਰੀ"}
                one{"{0} ਡਿ."}
                other{"{0} ਡਿ."}
            }
            radian{
                dnam{"ਰੇਡੀਅਨ"}
                one{"{0} ਰੇਡੀ."}
                other{"{0} ਰੇਡੀ."}
            }
            revolution{
                dnam{"ਪਰਿਕਰਮਾ"}
                one{"{0} ਪਰਿਕਰਮਾ"}
                other{"{0} ਪਰਿਕਰਮਾ"}
            }
        }
        area{
            acre{
                dnam{"ਏਕੜ"}
                one{"{0} ਏਕੜ"}
                other{"{0} ਏਕੜ"}
            }
            hectare{
                dnam{"ਹੈਕਟੇਅਰ"}
                one{"{0} ਹੈਕਟੇਅਰ"}
                other{"{0} ਹੈਕਟੇਅਰ"}
            }
            square-centimeter{
                dnam{"ਸੈਮੀ²"}
                one{"{0} ਸੈਮੀ²"}
                other{"{0} ਸੈਮੀ²"}
                per{"{0} ਪ੍ਰਤੀ ਸੈਮੀ²"}
            }
            square-foot{
                dnam{"ਵ. ਫੁੱਟ"}
                one{"{0} ਵ. ਫੁੱਟ"}
                other{"{0} ਵ. ਫੁੱਟ"}
            }
            square-inch{
                dnam{"ਇੰਚ²"}
                one{"{0} ਇੰਚ²"}
                other{"{0} ਇੰਚ²"}
                per{"{0} ਪ੍ਰਤੀ ਇੰਚ²"}
            }
            square-kilometer{
                dnam{"ਕਿਮੀ²"}
                one{"{0} ਕਿਮੀ²"}
                other{"{0} ਕਿਮੀ²"}
                per{"{0}/ਕਿਮੀ²"}
            }
            square-meter{
                dnam{"ਮੀਟਰ²"}
                one{"{0} ਮੀ²"}
                other{"{0} ਮੀ²"}
                per{"{0} ਪ੍ਰਤੀ ਮੀ²"}
            }
            square-mile{
                dnam{"ਵਰਗ ਮੀਲ"}
                one{"{0} ਵ. ਮੀਲ"}
                other{"{0} ਵ. ਮੀਲ"}
                per{"{0}/ਮੀਲ²"}
            }
            square-yard{
                dnam{"ਗਜ਼²"}
                one{"{0} ਗਜ਼²"}
                other{"{0} ਗਜ਼²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        concentr{
            karat{
                dnam{"ਕੇਰਟ"}
                one{"{0} ਕੇਰਟ"}
                other{"{0} ਕੇਰਟ"}
            }
            milligram-per-deciliter{
                dnam{"ਮਿ.ਗ੍ਰਾ./ਡੈ.ਲਿ."}
                one{"{0}ਮਿਗ੍ਰਾ/ਡੈ.ਲਿ"}
                other{"{0}ਮਿਗ੍ਰਾ/ਡੈ.ਲਿ"}
            }
            millimole-per-liter{
                dnam{"ਮਿਲੀਮੋਲ/ਲਿਟਰ"}
                one{"{0} ਮਿ.ਮੋ./ਲਿ."}
                other{"{0} ਮਿ.ਮੋ./ਲਿ."}
            }
            part-per-million{
                dnam{"ਹਿੱਸੇ/ਮਿਲੀਅਨ"}
                one{"{0} ppm"}
                other{"{0} ppm"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"ਲਿ./100ਕਿ.ਮੀ."}
                one{"{0}ਲਿ/100 ਕਿਮੀ"}
                other{"{0}ਲਿ/100 ਕਿਮੀ"}
            }
            liter-per-kilometer{
                dnam{"ਲਿਟਰ/ਕਿ.ਮੀ."}
                one{"{0} ਲਿ./ਕਿ.ਮੀ."}
                other{"{0} ਲਿ./ਕਿ.ਮੀ."}
            }
            mile-per-gallon{
                dnam{"ਮੀਲ/ਗੈਲਨ"}
                one{"{0} ਮੀ.ਪ੍ਰ.ਗੈ."}
                other{"{0} ਮੀ.ਪ੍ਰ.ਗੈ."}
            }
            mile-per-gallon-imperial{
                dnam{"ਮੀਲ/ਗੈਲਨ ਇੰਪ."}
                one{"{0} mpg ਇੰਪ."}
                other{"{0} mpg ਇੰਪ."}
            }
        }
        coordinate{
            east{"{0}ਪੂ"}
            north{"{0}ਉ"}
            south{"{0}ਦੱ"}
            west{"{0}ਪੱ"}
        }
        digital{
            bit{
                dnam{"ਬਿਟ"}
                one{"{0} ਬਿਟ"}
                other{"{0} ਬਿਟ"}
            }
            byte{
                dnam{"ਬਾਇਟ"}
                one{"{0} ਬਾਇਟ"}
                other{"{0} ਬਾਇਟ"}
            }
            gigabit{
                dnam{"Gbit"}
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"ਗੀਗਾਬਾਇਟ"}
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"ਕਿਲੋਬਿਟ"}
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"ਕਿਲੋਬਾਇਟ"}
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"ਮੈਗਾਬਿਟ"}
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"ਮੈਗਾਬਾਇਟ"}
                one{"{0} MB"}
                other{"{0} MB"}
            }
            terabit{
                dnam{"ਟੇਰਾਬਿਟ"}
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"ਟੈਰਾਬਾਇਟ"}
                one{"{0} TB"}
                other{"{0} TB"}
            }
        }
        duration{
            century{
                dnam{"ਸਦੀ"}
                one{"{0} ਸਦੀ"}
                other{"{0} ਸਦੀ"}
            }
            day{
                dnam{"ਦਿਨ"}
                one{"{0} ਦਿਨ"}
                other{"{0} ਦਿਨ"}
                per{"{0}/ਦਿਨ"}
            }
            hour{
                dnam{"ਘੰਟੇ"}
                one{"{0} ਘੰਟਾ"}
                other{"{0} ਘੰਟੇ"}
                per{"{0} ਪ੍ਰ.ਘੰ."}
            }
            microsecond{
                dnam{"ਮਾਈਕਰੋਸਕਿੰਟ"}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"ਮਿਲੀਸਕਿੰਟ"}
                one{"{0} ਮਿਲੀਸਕਿੰਟ"}
                other{"{0} ਮਿਲੀਸਕਿੰਟ"}
            }
            minute{
                dnam{"ਮਿੰਟ"}
                one{"{0} ਮਿੰਟ"}
                other{"{0} ਮਿੰਟ"}
                per{"{0}/ਮਿੰਟ"}
            }
            month{
                dnam{"ਮਹੀਨੇ"}
                one{"{0} ਮਹੀਨਾ"}
                other{"{0} ਮਹੀਨੇ"}
                per{"{0}/ਮਹੀਨਾ"}
            }
            nanosecond{
                dnam{"ਨੈਨੋਸਕਿੰਟ"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"ਸਕਿੰਟ"}
                one{"{0} ਸਕਿੰਟ"}
                other{"{0} ਸਕਿੰਟ"}
                per{"{0} ਪ੍ਰ.ਸ."}
            }
            week{
                dnam{"ਹਫ਼ਤੇ"}
                one{"{0} ਹਫ਼ਤਾ"}
                other{"{0} ਹਫ਼ਤੇ"}
                per{"{0}/ਹਫ਼ਤਾ"}
            }
            year{
                dnam{"ਸਾਲ"}
                one{"{0} ਸਾਲ"}
                other{"{0} ਸਾਲ"}
                per{"{0}/ਸਾਲ"}
            }
        }
        electric{
            ampere{
                dnam{"ਐਮਪੀਅਰ"}
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"ਮਿਲੀਐਮਪੀਅਰ"}
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"ਓਹਮ"}
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"ਵੋਲਟ"}
                one{"{0} V"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"ਕੈਲੋਰੀ"}
                one{"{0} ਕੈਲੋਰੀ"}
                other{"{0} ਕੈਲੋਰੀਆਂ"}
            }
            foodcalorie{
                dnam{"ਕੈਲੋਰੀ"}
                one{"{0} ਕੈਲੋਰੀ"}
                other{"{0} ਕੈਲੋਰੀਆਂ"}
            }
            joule{
                dnam{"ਜੂਲ"}
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"ਕਿ.ਕੈਲੋਰੀ"}
                one{"{0} ਕਿ.ਕੈਲੋਰੀ"}
                other{"{0} ਕਿ.ਕੈਲੋਰੀਆਂ"}
            }
            kilojoule{
                dnam{"ਕਿਲੋਜੂਲ"}
                one{"{0} ਕਿ.ਜੂਲ"}
                other{"{0} ਕਿ.ਜੂਲ"}
            }
            kilowatt-hour{
                dnam{"ਕਿ.ਵਾ.ਘੰ."}
                one{"{0} ਕਿ.ਵਾ.ਘੰ."}
                other{"{0} ਕਿ.ਵਾ.ਘੰ."}
            }
        }
        frequency{
            gigahertz{
                dnam{"GHz"}
                one{"{0} GHz"}
                other{"{0} GHz"}
            }
            hertz{
                dnam{"Hz"}
                one{"{0} Hz"}
                other{"{0} Hz"}
            }
            kilohertz{
                dnam{"kHz"}
                one{"{0} kHz"}
                other{"{0} kHz"}
            }
            megahertz{
                dnam{"MHz"}
                one{"{0} MHz"}
                other{"{0} MHz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"au"}
                one{"{0} au"}
                other{"{0} au"}
            }
            centimeter{
                dnam{"ਸੈਂ.ਮੀ."}
                one{"{0} ਸੈਂ.ਮੀ."}
                other{"{0} ਸੈਂ.ਮੀ."}
                per{"{0}/ਸੈਂ.ਮੀ."}
            }
            decimeter{
                dnam{"ਡੈ.ਮੀ."}
                one{"{0} ਡੈ.ਮੀ."}
                other{"{0} ਡੈ.ਮੀ."}
            }
            fathom{
                dnam{"ਫ਼ੈਦਮ"}
                one{"{0} ਫ਼ੈਦਮ"}
                other{"{0} ਫ਼ੈਦਮ"}
            }
            foot{
                dnam{"ਫੁੱਟ"}
                one{"{0} ਫੁੱਟ"}
                other{"{0} ਫੁੱਟ"}
                per{"{0}/ਫੁੱਟ"}
            }
            furlong{
                dnam{"ਫਰਲਾਂਗ"}
                one{"{0} ਫਰਲਾਂਗ"}
                other{"{0} ਫਰਲਾਂਗ"}
            }
            inch{
                dnam{"ਇੰਚ"}
                one{"{0} ਇੰਚ"}
                other{"{0} ਇੰਚ"}
                per{"{0}/ਇੰਚ"}
            }
            kilometer{
                dnam{"ਕਿ.ਮੀ."}
                one{"{0} ਕਿ.ਮੀ."}
                other{"{0} ਕਿ.ਮੀ."}
                per{"{0}/ਕਿ.ਮੀ."}
            }
            light-year{
                dnam{"ਪ੍ਰਕਾਸ਼ ਸਾਲ"}
                one{"{0} ਪ੍ਰ.ਸ."}
                other{"{0} ਪ੍ਰ.ਸ."}
            }
            meter{
                dnam{"ਮੀਟਰ"}
                one{"{0} ਮੀ."}
                other{"{0} ਮੀ."}
                per{"{0}/ਮੀ."}
            }
            micrometer{
                dnam{"ਮਾਈਕਰੋਮੀਟਰ"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"ਮੀਲ"}
                one{"{0} ਮੀਲ"}
                other{"{0} ਮੀਲ"}
            }
            mile-scandinavian{
                dnam{"ਸਕੈਂਡ. ਮੀਲ"}
                one{"{0} ਸਕੈਂਡ. ਮੀਲ"}
                other{"{0} ਸਕੈਂਡ. ਮੀਲ"}
            }
            millimeter{
                dnam{"ਮਿ.ਮੀ."}
                one{"{0} ਮਿ.ਮੀ."}
                other{"{0} ਮਿ.ਮੀ."}
            }
            nanometer{
                dnam{"ਨੈ.ਮੀ."}
                one{"{0} ਨੈ.ਮੀ."}
                other{"{0} ਨੈ.ਮੀ."}
            }
            nautical-mile{
                dnam{"ਨੋ.ਮੀਲ"}
                one{"{0} ਨੋ.ਮੀਲ"}
                other{"{0} ਨੋ.ਮੀਲ"}
            }
            parsec{
                dnam{"ਪਾਸੈੱਕ"}
                one{"{0} ਪਾਸੈੱਕ"}
                other{"{0} ਪਾਸੈੱਕ"}
            }
            picometer{
                dnam{"ਪਿ.ਮੀ."}
                one{"{0} ਪਿਕੋਮੀਟਰ"}
                other{"{0} ਪਿਕੋਮੀਟਰ"}
            }
            yard{
                dnam{"ਗਜ਼"}
                one{"{0} ਗਜ਼"}
                other{"{0} ਗਜ਼"}
            }
        }
        light{
            lux{
                dnam{"ਲਕਸ"}
                one{"{0} ਲਕਸ"}
                other{"{0} ਲਕਸ"}
            }
        }
        mass{
            carat{
                dnam{"ਕੈਰਟ"}
                one{"{0} ਕੈਰਟ"}
                other{"{0} ਕੈਰਟ"}
            }
            gram{
                dnam{"ਗ੍ਰਾਮ"}
                one{"{0} ਗ੍ਰਾ."}
                other{"{0} ਗ੍ਰਾ."}
                per{"{0}/ਗ੍ਰਾ."}
            }
            kilogram{
                dnam{"ਕਿ.ਗ੍ਰਾ."}
                one{"{0} ਕਿ.ਗ੍ਰਾ."}
                other{"{0} ਕਿ.ਗ੍ਰਾ."}
                per{"{0}/ਕਿ.ਗ੍ਰਾ."}
            }
            metric-ton{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
            }
            microgram{
                dnam{"µg"}
                one{"{0} µg"}
                other{"{0} µg"}
            }
            milligram{
                dnam{"ਮਿ.ਗ੍ਰਾ."}
                one{"{0} ਮਿ.ਗ੍ਰਾ."}
                other{"{0} ਮਿ.ਗ੍ਰਾ."}
            }
            ounce{
                dnam{"ਔਂਸ"}
                one{"{0} ਔਂਸ"}
                other{"{0} ਔਂਸ"}
                per{"{0}/ਔਂਸ"}
            }
            ounce-troy{
                dnam{"ਔਂਸ ਟਰੌਏ"}
                one{"{0} ਔਂਸ ਟ."}
                other{"{0} ਔਂਸ ਟ."}
            }
            pound{
                dnam{"ਪੌਂਡ"}
                one{"{0} ਪੌਂਡ"}
                other{"{0} ਪੌਂਡ"}
                per{"{0}/ਪੌਂਡ"}
            }
            stone{
                dnam{"ਸਟੋਨ"}
                one{"{0} ਸਟੋਨ"}
                other{"{0} ਸਟੋਨ"}
            }
            ton{
                dnam{"ਟਨ"}
                one{"{0} ਟਨ"}
                other{"{0} ਟਨ"}
            }
        }
        power{
            gigawatt{
                dnam{"ਗੀ.ਵਾਟ"}
                one{"{0} ਗੀ.ਵਾਟ"}
                other{"{0} ਗੀ.ਵਾਟ"}
            }
            horsepower{
                dnam{"hp"}
                one{"{0} ਹੌਰਸਪਾਵਰ"}
                other{"{0} ਹੌਰਸਪਾਵਰ"}
            }
            kilowatt{
                dnam{"ਕਿ.ਵਾਟ"}
                one{"{0} ਕਿ. ਵਾਟ"}
                other{"{0} ਕਿ. ਵਾਟ"}
            }
            megawatt{
                dnam{"ਮੈ.ਵਾਟ"}
                one{"{0} ਮੈ.ਵਾਟ"}
                other{"{0} ਮੈ.ਵਾਟ"}
            }
            milliwatt{
                dnam{"ਮਿ.ਵਾਟ"}
                one{"{0} ਮਿ.ਵਾਟ"}
                other{"{0} ਮਿ.ਵਾਟ"}
            }
            watt{
                dnam{"ਵਾਟ"}
                one{"{0} ਵਾਟ"}
                other{"{0} ਵਾਟ"}
            }
        }
        pressure{
            hectopascal{
                dnam{"ਹੈ.ਪਾ."}
                one{"{0} ਹੈ.ਪਾ."}
                other{"{0} ਹੈ.ਪਾ."}
            }
            inch-hg{
                dnam{"ਇੰਚ ਪਾਰਾ"}
                one{"{0} ਇੰਚ ਪਾਰਾ"}
                other{"{0} ਇੰਚ ਪਾਰਾ"}
            }
            millibar{
                dnam{"ਮਿਲੀਬਾਰ"}
                one{"{0} ਮਿਲੀਬਾਰ"}
                other{"{0} ਮਿਲੀਬਾਰ"}
            }
            millimeter-of-mercury{
                dnam{"ਮਿ.ਮੀ. ਪਾਰਾ"}
                one{"{0} ਮਿ.ਮੀ. ਪਾਰਾ"}
                other{"{0} ਮਿ.ਮੀ. ਪਾਰਾ"}
            }
            pound-per-square-inch{
                dnam{"ਪੌਂ.ਵ.ਇੰਚ"}
                one{"{0} ਪੌਂ.ਵ.ਇੰਚ"}
                other{"{0} ਪੌਂ.ਵ.ਇੰਚ"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"ਕਿ.ਮੀ./ਘੰਟਾ"}
                one{"{0} ਕਿ.ਪ੍ਰ.ਘੰ."}
                other{"{0} ਕਿ.ਪ੍ਰ.ਘੰ."}
            }
            knot{
                dnam{"kn"}
                one{"{0} kn"}
                other{"{0} kn"}
            }
            meter-per-second{
                dnam{"ਮੀਟਰ/ਸਕਿੰਟ"}
                one{"{0} ਮੀ./ਸ."}
                other{"{0} ਮੀ./ਸ."}
            }
            mile-per-hour{
                dnam{"ਮੀਲ/ਘੰਟਾ"}
                one{"{0} ਮੀ.ਪ੍ਰ.ਘੰ."}
                other{"{0} ਮੀ.ਪ੍ਰ.ਘੰ."}
            }
        }
        temperature{
            celsius{
                dnam{"ਦਰਜਾ ਸੈਲਸੀਅਸ"}
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                dnam{"ਦਰਜਾ ਫਾਰੇਨਹਾਈਟ"}
                one{"{0}°F"}
                other{"{0}°F"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"ਏਕੜ ਫੁੱਟ"}
                one{"{0} ਏਕੜ ਫੁੱਟ"}
                other{"{0} ਏਕੜ ਫੁੱਟ"}
            }
            bushel{
                dnam{"ਬੁਸ਼ਲ"}
                one{"{0} ਬੁਸ਼ਲ"}
                other{"{0} ਬੁਸ਼ਲ"}
            }
            centiliter{
                dnam{"ਸੈਂ.ਲਿ."}
                one{"{0} ਸੈਂ.ਲਿ."}
                other{"{0} ਸੈਂ.ਲਿ."}
            }
            cubic-centimeter{
                dnam{"ਸੈਮੀ³"}
                one{"{0} ਸੈਮੀ³"}
                other{"{0} ਸੈਮੀ³"}
                per{"{0}/ਸੈਮੀ³"}
            }
            cubic-foot{
                dnam{"ਫੁੱਟ³"}
                one{"{0} ਫੁੱਟ³"}
                other{"{0} ਫੁੱਟ³"}
            }
            cubic-inch{
                dnam{"ਇੰਚ³"}
                one{"{0} ਇੰਚ³"}
                other{"{0} ਇੰਚ³"}
            }
            cubic-kilometer{
                dnam{"ਕਿਮੀ³"}
                one{"{0} ਕਿਮੀ³"}
                other{"{0} ਕਿਮੀ³"}
            }
            cubic-meter{
                dnam{"ਮੀ³"}
                one{"{0} ਮੀ³"}
                other{"{0} ਮੀ³"}
                per{"{0}/ਮੀ³"}
            }
            cubic-mile{
                dnam{"ਮੀਲ³"}
                one{"{0} ਮੀਲ³"}
                other{"{0} ਮੀਲ³"}
            }
            cubic-yard{
                dnam{"ਗਜ਼³"}
                one{"{0} ਗਜ਼³"}
                other{"{0} ਗਜ਼³"}
            }
            cup{
                dnam{"ਕੱਪ"}
                one{"{0} ਕੱਪ"}
                other{"{0} ਕੱਪ"}
            }
            cup-metric{
                dnam{"ਮੀ ਕੱਪ"}
                one{"{0} ਮੀ ਕੱਪ"}
                other{"{0} ਮੀ ਕੱਪ"}
            }
            deciliter{
                dnam{"ਡੈ.ਲਿ."}
                one{"{0} ਡੈ.ਲਿ."}
                other{"{0} ਡੈ.ਲਿ."}
            }
            fluid-ounce{
                dnam{"ਤ. ਔਂਸ"}
                one{"{0} ਤ. ਔਂਸ"}
                other{"{0} ਤ. ਔਂਸ"}
            }
            gallon{
                dnam{"ਗੈਲਨ"}
                one{"{0} ਗੈਲਨ"}
                other{"{0} ਗੈਲਨ"}
                per{"{0}/ਗੈਲਨ"}
            }
            gallon-imperial{
                dnam{"ਇੰਪ. ਗੈਲਨ"}
                one{"{0} ਗੈਲਨ ਇੰਪ."}
                other{"{0} ਗੈਲਨ ਇੰਪ."}
                per{"{0}/ਗੈਲਨ ਇੰਪ."}
            }
            hectoliter{
                dnam{"ਹੈ.ਲਿ."}
                one{"{0} ਹੈ.ਲਿ."}
                other{"{0} ਹੈ.ਲਿ."}
            }
            liter{
                dnam{"ਲਿਟਰ"}
                one{"{0} ਲਿ."}
                other{"{0} ਲਿ."}
                per{"{0}/ਲਿ."}
            }
            megaliter{
                dnam{"ਮੈ.ਲਿ."}
                one{"{0} ਮੈ.ਲਿ."}
                other{"{0} ਮੈ.ਲਿ."}
            }
            milliliter{
                dnam{"ਮਿ.ਲਿ."}
                one{"{0} ਮਿ.ਲਿ."}
                other{"{0} ਮਿ.ਲਿ."}
            }
            pint{
                dnam{"ਪਿੰਟ"}
                one{"{0} ਪਿੰਟ"}
                other{"{0} ਪਿੰਟ"}
            }
            pint-metric{
                dnam{"ਮੀ ਪਿੰਟ"}
                one{"{0} ਮੀ ਪਿੰਟ"}
                other{"{0} ਮੀ ਪਿੰਟ"}
            }
            quart{
                dnam{"ਕੁਆਟ"}
                one{"{0} ਕੁਆਟ"}
                other{"{0} ਕੁਆਟ"}
            }
            tablespoon{
                dnam{"ਟੇਬਲ ਸਪੂਨ"}
                one{"{0} ਟੇਬਲ ਸਪੂਨ"}
                other{"{0} ਟੇਬਲ ਸਪੂਨ"}
            }
            teaspoon{
                dnam{"ਟੀ ਸਪੂਨ"}
                one{"{0} ਟੀ ਸਪੂਨ"}
                other{"{0} ਟੀ ਸਪੂਨ"}
            }
        }
    }
}
