﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/sq.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/sq.xml
 */
sq{
    Version{"2.1.8.9"}
    units{
        acceleration{
            g-force{
                dnam{"g-forcë"}
                one{"{0} g-forcë"}
                other{"{0} g-forcë"}
            }
            meter-per-second-squared{
                dnam{"metra për sekondë në katror"}
                one{"{0} metër për sekondë në katror"}
                other{"{0} metra për sekondë në katror"}
            }
        }
        angle{
            arc-minute{
                dnam{"hark-minuta"}
                one{"{0} hark-minutë"}
                other{"{0} hark-minuta"}
            }
            arc-second{
                dnam{"hark-sekonda"}
                one{"{0} hark-sekondë"}
                other{"{0} hark-sekonda"}
            }
            degree{
                dnam{"gradë"}
                one{"{0} gradë"}
                other{"{0} gradë"}
            }
            radian{
                dnam{"radianë"}
                one{"{0} radianë"}
                other{"{0} radianë"}
            }
        }
        area{
            acre{
                dnam{"akra"}
                one{"{0} akër"}
                other{"{0} akra"}
            }
            hectare{
                dnam{"hektarë"}
                one{"{0} hektar"}
                other{"{0} hektarë"}
            }
            square-centimeter{
                dnam{"centimetra katrore"}
                one{"{0} centimetër katror"}
                other{"{0} centimetra katrore"}
            }
            square-foot{
                dnam{"këmbë katrore"}
                one{"{0} këmbë katror"}
                other{"{0} këmbë katrore"}
            }
            square-inch{
                dnam{"inç katrore"}
                one{"{0} inç katror"}
                other{"{0} inç katrore"}
            }
            square-kilometer{
                dnam{"kilometra katrore"}
                one{"{0} kilometër katror"}
                other{"{0} kilometra katrore"}
            }
            square-meter{
                dnam{"metra katrore"}
                one{"{0} metër katror"}
                other{"{0} metra katrore"}
            }
            square-mile{
                dnam{"milje katrore"}
                one{"{0} milje katror"}
                other{"{0} milje katrore"}
            }
            square-yard{
                dnam{"jardë katrore"}
                one{"{0} jard katror"}
                other{"{0} jardë katrore"}
            }
        }
        compound{
            per{"{0} në {1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"litra për kilometër"}
                one{"{0} litër për kilometër"}
                other{"{0} litra për kilometër"}
            }
            mile-per-gallon{
                dnam{"milje për gallon"}
                one{"{0} milje për gallon"}
                other{"{0} milje për gallon"}
            }
        }
        digital{
            bit{
                dnam{"bit"}
                one{"{0} bit"}
                other{"{0} bitë"}
            }
            byte{
                dnam{"bajt"}
                one{"{0} bajt"}
                other{"{0} bajt"}
            }
            gigabit{
                dnam{"gigabit"}
                one{"{0} gigabit"}
                other{"{0} gigabitë"}
            }
            gigabyte{
                dnam{"gigabajt"}
                one{"{0} gigabajt"}
                other{"{0} gigabajt"}
            }
            kilobit{
                dnam{"kilobit"}
                one{"{0} kilobit"}
                other{"{0} kilobitë"}
            }
            kilobyte{
                dnam{"kilobajt"}
                one{"{0} kilobajt"}
                other{"{0} kilobajt"}
            }
            megabit{
                dnam{"megabit"}
                one{"{0} megabit"}
                other{"{0} megabitë"}
            }
            megabyte{
                dnam{"megabajt"}
                one{"{0} megabajt"}
                other{"{0} megabajt"}
            }
            terabit{
                dnam{"terabit"}
                one{"{0} terabit"}
                other{"{0} terabitë"}
            }
            terabyte{
                dnam{"terabajt"}
                one{"{0} terabajt"}
                other{"{0} terabajt"}
            }
        }
        duration{
            day{
                dnam{"ditë"}
                one{"{0} ditë"}
                other{"{0} ditë"}
            }
            hour{
                dnam{"orë"}
                one{"{0} orë"}
                other{"{0} orë"}
                per{"{0}/orë"}
            }
            microsecond{
                dnam{"mikrosekonda"}
                one{"{0} mikrosekondë"}
                other{"{0} mikrosekonda"}
            }
            millisecond{
                dnam{"milisekonda"}
                one{"{0} milisekondë"}
                other{"{0} milisekonda"}
            }
            minute{
                dnam{"minuta"}
                one{"{0} minutë"}
                other{"{0} minuta"}
            }
            month{
                dnam{"muaj"}
                one{"{0} muaj"}
                other{"{0} muaj"}
            }
            nanosecond{
                dnam{"nanosekonda"}
                one{"{0} nanosekondë"}
                other{"{0} nanosekonda"}
            }
            second{
                dnam{"sekonda"}
                one{"{0} sekondë"}
                other{"{0} sekonda"}
                per{"{0}/sek."}
            }
            week{
                dnam{"javë"}
                one{"{0} javë"}
                other{"{0} javë"}
            }
            year{
                dnam{"vjet"}
                one{"{0} vit"}
                other{"{0} vjet"}
            }
        }
        electric{
            ampere{
                dnam{"amper"}
                one{"{0} amper"}
                other{"{0} amper"}
            }
            milliampere{
                dnam{"miliamper"}
                one{"{0} miliamper"}
                other{"{0} miliamper"}
            }
            ohm{
                dnam{"om"}
                one{"{0} om"}
                other{"{0} om"}
            }
            volt{
                dnam{"volt"}
                one{"{0} volt"}
                other{"{0} volt"}
            }
        }
        energy{
            calorie{
                dnam{"kalori"}
                one{"{0} kalori"}
                other{"{0} kalori"}
            }
            foodcalorie{
                dnam{"kalori ushqimore"}
                one{"{0} kalori ushqimore"}
                other{"{0} kalori ushqimore"}
            }
            joule{
                dnam{"zhul"}
                one{"{0} zhul"}
                other{"{0} zhul"}
            }
            kilocalorie{
                dnam{"kilokalori"}
                one{"{0} kilokalori"}
                other{"{0} kilokalori"}
            }
            kilojoule{
                dnam{"kilozhul"}
                one{"{0} kilozhul"}
                other{"{0} kilozhul"}
            }
            kilowatt-hour{
                dnam{"kilovat-orë"}
                one{"{0} kilovat-orë"}
                other{"{0} kilovat-orë"}
            }
        }
        frequency{
            gigahertz{
                dnam{"gigaherc"}
                one{"{0} gigaherc"}
                other{"{0} gigaherc"}
            }
            hertz{
                dnam{"herc"}
                one{"{0} herc"}
                other{"{0} herc"}
            }
            kilohertz{
                dnam{"kiloherc"}
                one{"{0} kiloherc"}
                other{"{0} kiloherc"}
            }
            megahertz{
                dnam{"megaherc"}
                one{"{0} megaherc"}
                other{"{0} megaherc"}
            }
        }
        length{
            astronomical-unit{
                dnam{"njësi astronomike"}
                one{"{0} njësi astronomike"}
                other{"{0} njësi astronomike"}
            }
            centimeter{
                dnam{"centimetra"}
                one{"{0} centimetër"}
                other{"{0} centimetra"}
            }
            decimeter{
                dnam{"decimetra"}
                one{"{0} decimetër"}
                other{"{0} decimetra"}
            }
            foot{
                dnam{"këmbë"}
                one{"{0} këmbë"}
                other{"{0} këmbë"}
            }
            inch{
                dnam{"inç"}
                one{"{0} inç"}
                other{"{0} inç"}
            }
            kilometer{
                dnam{"kilometra"}
                one{"{0} kilometër"}
                other{"{0} kilometra"}
            }
            light-year{
                dnam{"vite dritë"}
                one{"{0} vit drite"}
                other{"{0} vite dritë"}
            }
            meter{
                dnam{"metra"}
                one{"{0} metër"}
                other{"{0} metra"}
            }
            micrometer{
                dnam{"mikrometra"}
                one{"{0} mikrometër"}
                other{"{0} mikrometra"}
            }
            mile{
                dnam{"milje"}
                one{"{0} milje"}
                other{"{0} milje"}
            }
            millimeter{
                dnam{"milimetra"}
                one{"{0} milimetër"}
                other{"{0} milimetra"}
            }
            nanometer{
                dnam{"nanometra"}
                one{"{0} nanometër"}
                other{"{0} nanometra"}
            }
            nautical-mile{
                dnam{"milje nautike"}
                one{"{0} milje nautike"}
                other{"{0} milje nautike"}
            }
            parsec{
                dnam{"parsekë"}
                one{"{0} parsek"}
                other{"{0} parsekë"}
            }
            picometer{
                dnam{"pikometra"}
                one{"{0} pikometër"}
                other{"{0} pikometra"}
            }
            yard{
                dnam{"jardë"}
                one{"{0} jard"}
                other{"{0} jardë"}
            }
        }
        light{
            lux{
                dnam{"luks"}
                one{"{0} luks"}
                other{"{0} luks"}
            }
        }
        mass{
            carat{
                dnam{"karatë"}
                one{"{0} karat"}
                other{"{0} karatë"}
            }
            gram{
                dnam{"gramë"}
                one{"{0} gram"}
                other{"{0} gramë"}
            }
            kilogram{
                dnam{"kilogram"}
                one{"{0} kilogram"}
                other{"{0} kilogramë"}
            }
            metric-ton{
                dnam{"tonë metrik"}
                one{"{0} ton metrik"}
                other{"{0} tonë metrik"}
            }
            microgram{
                dnam{"mikrogramë"}
                one{"{0} mikrogram"}
                other{"{0} mikrogramë"}
            }
            milligram{
                dnam{"miligramë"}
                one{"{0} miligram"}
                other{"{0} miligramë"}
            }
            ounce{
                dnam{"onsë"}
                one{"{0} ons"}
                other{"{0} onsë"}
            }
            ounce-troy{
                dnam{"onsë troi"}
                one{"{0} ons troi"}
                other{"{0} onsë troi"}
            }
            pound{
                dnam{"paund"}
                one{"{0} paund"}
                other{"{0} paund"}
            }
            ton{
                dnam{"tonë"}
                one{"{0} ton"}
                other{"{0} tonë"}
            }
        }
        power{
            gigawatt{
                dnam{"gigavat"}
                one{"{0} gigavat"}
                other{"{0} gigavat"}
            }
            horsepower{
                dnam{"kuaj fuqi"}
                one{"{0} kalë fuqi"}
                other{"{0} kuaj fuqi"}
            }
            kilowatt{
                dnam{"kilovat"}
                one{"{0} kilovat"}
                other{"{0} kilovat"}
            }
            megawatt{
                dnam{"megavat"}
                one{"{0} megavat"}
                other{"{0} megavat"}
            }
            milliwatt{
                dnam{"milivat"}
                one{"{0} milivat"}
                other{"{0} milivat"}
            }
            watt{
                dnam{"vat"}
                one{"{0} vat"}
                other{"{0} vat"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hektopaskal"}
                one{"{0} hektopaskal"}
                other{"{0} hektopaskal"}
            }
            inch-hg{
                dnam{"inç merkuri"}
                one{"{0} inç merkuri"}
                other{"{0} inç merkuri"}
            }
            millibar{
                dnam{"milibare"}
                one{"{0} milibar"}
                other{"{0} milibare"}
            }
            millimeter-of-mercury{
                dnam{"milimetra mërkuri"}
                one{"{0} milimetër mërkuri"}
                other{"{0} milimetra mërkuri"}
            }
            pound-per-square-inch{
                dnam{"paund për inç në katror"}
                one{"{0} paund për inç në katror"}
                other{"{0} paund për inç në katror"}
            }
        }
        proportion{
            karat{
                dnam{"karatë"}
                one{"{0} karat"}
                other{"{0} karatë"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilometra në orë"}
                one{"{0} kilomentër në orë"}
                other{"{0} kilometra në orë"}
            }
            meter-per-second{
                dnam{"metra në sekondë"}
                one{"{0} metër në sekondë"}
                other{"{0} metra në sekondë"}
            }
            mile-per-hour{
                dnam{"milje në orë"}
                one{"{0} milje në orë"}
                other{"{0} milje në orë"}
            }
        }
        temperature{
            celsius{
                dnam{"gradë Celsius"}
                one{"{0} gradë Celsius"}
                other{"{0} gradë Celsius"}
            }
            fahrenheit{
                dnam{"gradë Farenhait"}
                one{"{0} gradë Farenhait"}
                other{"{0} gradë Farenhait"}
            }
            kelvin{
                dnam{"Kelvin"}
                one{"{0} Kelvin"}
                other{"{0} Kelvin"}
            }
        }
        volume{
            acre-foot{
                dnam{"akra-këmbë"}
                one{"{0} akër-këmbë"}
                other{"{0} akra-këmbë"}
            }
            centiliter{
                dnam{"centilitra"}
                one{"{0} centilitër"}
                other{"{0} centilitra"}
            }
            cubic-centimeter{
                dnam{"centimetra kub"}
                one{"{0} centimetër kub"}
                other{"{0} centimetra kub"}
            }
            cubic-foot{
                dnam{"këmbë kub"}
                one{"{0} këmbë kub"}
                other{"{0} këmbë kub"}
            }
            cubic-inch{
                dnam{"inç në kub"}
                one{"{0} inç në kub"}
                other{"{0} inç në kub"}
            }
            cubic-kilometer{
                dnam{"kilometra kub"}
                one{"{0} kilometër kub"}
                other{"{0} kilometra kub"}
            }
            cubic-meter{
                dnam{"metra kub"}
                one{"{0} metër kub"}
                other{"{0} metra kub"}
            }
            cubic-mile{
                dnam{"milje në kub"}
                one{"{0} milje në kub"}
                other{"{0} milje në kub"}
            }
            cubic-yard{
                dnam{"jardë në kub"}
                one{"{0} jard në kub"}
                other{"{0} jardë në kub"}
            }
            cup{
                dnam{"kupa"}
                one{"{0} kupë"}
                other{"{0} kupa"}
            }
            deciliter{
                dnam{"decilitra"}
                one{"{0} decilitër"}
                other{"{0} decilitra"}
            }
            fluid-ounce{
                dnam{"onsë fluidë"}
                one{"{0} ons fluidë"}
                other{"{0} onsë fluidë"}
            }
            gallon{
                dnam{"gallonë"}
                one{"{0} gallon"}
                other{"{0} gallonë"}
            }
            hectoliter{
                dnam{"hektolitra"}
                one{"{0} hektolitër"}
                other{"{0} hektolitra"}
            }
            liter{
                dnam{"litra"}
                one{"{0} litër"}
                other{"{0} litra"}
            }
            megaliter{
                dnam{"megalitra"}
                one{"{0} megalitër"}
                other{"{0} megalitra"}
            }
            milliliter{
                dnam{"mililitra"}
                one{"{0} mililitër"}
                other{"{0} mililitra"}
            }
            pint{
                dnam{"pinta"}
                one{"{0} pintë"}
                other{"{0} pinta"}
            }
            quart{
                dnam{"çerekje"}
                one{"{0} çerek"}
                other{"{0} çerekje"}
            }
            tablespoon{
                dnam{"lugë gjelle"}
                one{"{0} lugë gjelle"}
                other{"{0} lugë gjelle"}
            }
            teaspoon{
                dnam{"lugë çaji"}
                one{"{0} lugë çaji"}
                other{"{0} lugë çaji"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0} g-forcë"}
                other{"{0} g-forcë"}
            }
        }
        angle{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0} ac"}
                other{"{0} ac"}
            }
            hectare{
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-foot{
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-kilometer{
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            mile-per-gallon{
                dnam{"mpg"}
                one{"{0}mpg"}
                other{"{0}mpg"}
            }
        }
        duration{
            day{
                dnam{"ditë"}
                one{"{0} ditë"}
                other{"{0} ditë"}
            }
            hour{
                dnam{"orë"}
                one{"{0} orë"}
                other{"{0} orë"}
            }
            millisecond{
                dnam{"milisek."}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"min."}
                one{"{0} min."}
                other{"{0} min."}
            }
            month{
                dnam{"muaj"}
                one{"{0} muaj"}
                other{"{0} muaj"}
            }
            second{
                dnam{"sek."}
                one{"{0} sek."}
                other{"{0} sek."}
            }
            week{
                dnam{"javë"}
                one{"{0} javë"}
                other{"{0} javë"}
            }
            year{
                dnam{"vjet"}
                one{"{0} vit"}
                other{"{0} vjet"}
            }
        }
        energy{
            foodcalorie{
                one{"{0} Kal."}
                other{"{0} Kal."}
            }
        }
        length{
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            foot{
                one{"{0} ft"}
                other{"{0} ft"}
            }
            inch{
                one{"{0} inç"}
                other{"{0} inç"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} v. dr."}
                other{"{0} v. dr."}
            }
            meter{
                dnam{"m"}
                one{"{0} m"}
                other{"{0} m"}
            }
            mile{
                one{"{0} mi"}
                other{"{0} mi"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            picometer{
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                one{"{0} jd"}
                other{"{0} jd"}
            }
        }
        mass{
            gram{
                dnam{"g"}
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            ounce{
                one{"{0} ons"}
                other{"{0} onsë"}
            }
            pound{
                one{"{0} lb"}
                other{"{0} lb"}
            }
        }
        power{
            horsepower{
                one{"{0} hp"}
                other{"{0} hp"}
            }
            kilowatt{
                one{"{0} kW"}
                other{"{0} kW"}
            }
            watt{
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"inç Hg"}
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                dnam{"mbar"}
                one{"{0} mb"}
                other{"{0} mb"}
            }
            millimeter-of-mercury{
                dnam{"mm Hg"}
                one{"{0} mm Hg"}
                other{"{0} mm Hg"}
            }
            pound-per-square-inch{
                dnam{"psi"}
                one{"{0} psi"}
                other{"{0} psi"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/orë"}
                one{"{0} km/orë"}
                other{"{0} km/orë"}
            }
            meter-per-second{
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                one{"{0} mi/h"}
                other{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                dnam{"°F"}
                one{"{0}°F"}
                other{"{0}°F"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-mile{
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            liter{
                dnam{"litër"}
                one{"{0} l"}
                other{"{0} l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"g-forcë"}
                one{"{0} G"}
                other{"{0} G"}
            }
            meter-per-second-squared{
                dnam{"m/s²"}
                one{"{0} m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"hark-min."}
                one{"{0} hark-min."}
                other{"{0} hark-min."}
            }
            arc-second{
                dnam{"hark-sek."}
                one{"{0} hark-sek."}
                other{"{0} hark-sek."}
            }
            degree{
                dnam{"gradë"}
                one{"{0} gradë"}
                other{"{0} gradë"}
            }
            radian{
                dnam{"radianë"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
        }
        area{
            acre{
                dnam{"akra"}
                one{"{0} akër"}
                other{"{0} akra"}
            }
            hectare{
                dnam{"hektarë"}
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                one{"{0} cm²"}
                other{"{0} cm²"}
            }
            square-foot{
                dnam{"këmbë katrore"}
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-inch{
                dnam{"in²"}
                one{"{0} in²"}
                other{"{0} in²"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                dnam{"metra katrore"}
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                dnam{"milje katrore"}
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
            square-yard{
                dnam{"jd²"}
                one{"{0} jd²"}
                other{"{0} jd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"litra/km"}
                one{"{0} L/km"}
                other{"{0} L/km"}
            }
            mile-per-gallon{
                dnam{"milje/gallon"}
                one{"{0} mi/gallon"}
                other{"{0} mi/gallon"}
            }
        }
        digital{
            bit{
                dnam{"bit"}
                one{"{0} bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"bajt"}
                one{"{0} bajt"}
                other{"{0} bajt"}
            }
            gigabit{
                dnam{"Gbit"}
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"Gbajt"}
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kbit"}
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"kBajt"}
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"Mbit"}
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"MBajt"}
                one{"{0} MB"}
                other{"{0} MB"}
            }
            terabit{
                dnam{"Tbit"}
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"TBajt"}
                one{"{0} TB"}
                other{"{0} TB"}
            }
        }
        duration{
            day{
                dnam{"ditë"}
                one{"{0} ditë"}
                other{"{0} ditë"}
            }
            hour{
                dnam{"orë"}
                one{"{0} orë"}
                other{"{0} orë"}
                per{"{0}/orë"}
            }
            microsecond{
                dnam{"mikrosek."}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"milisek."}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"min."}
                one{"{0} min."}
                other{"{0} min."}
            }
            month{
                dnam{"muaj"}
                one{"{0} muaj"}
                other{"{0} muaj"}
            }
            nanosecond{
                dnam{"nanosek."}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"sek."}
                one{"{0} sek."}
                other{"{0} sek."}
                per{"{0}/sek."}
            }
            week{
                dnam{"javë"}
                one{"{0} javë"}
                other{"{0} javë"}
            }
            year{
                dnam{"vjet"}
                one{"{0} vit"}
                other{"{0} vjet"}
            }
        }
        electric{
            ampere{
                dnam{"amper"}
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"miliamper"}
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"om"}
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"volt"}
                one{"{0} V"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"kal."}
                one{"{0} kal."}
                other{"{0} kal."}
            }
            foodcalorie{
                dnam{"kal. ushq."}
                one{"{0} kal. ushq."}
                other{"{0} kal. ushq."}
            }
            joule{
                dnam{"zhul"}
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kilokal."}
                one{"{0} kilokal."}
                other{"{0} kilokal."}
            }
            kilojoule{
                dnam{"kilozhul"}
                one{"{0} kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kW/orë"}
                one{"{0} kW/orë"}
                other{"{0} kW/orë"}
            }
        }
        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{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"këmbë"}
                one{"{0} ft"}
                other{"{0} ft"}
            }
            inch{
                dnam{"inç"}
                one{"{0} in"}
                other{"{0} in"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                dnam{"vite dritë"}
                one{"{0} v. dr."}
                other{"{0} v. dr."}
            }
            meter{
                dnam{"m"}
                one{"{0} m"}
                other{"{0} m"}
            }
            micrometer{
                dnam{"mikrometra"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"milje"}
                one{"{0} mi"}
                other{"{0} mi"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nanometra"}
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"nmi"}
                one{"{0} nmi"}
                other{"{0} nmi"}
            }
            parsec{
                dnam{"parsekë"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pm"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"jardë"}
                one{"{0} jd"}
                other{"{0} jd"}
            }
        }
        light{
            lux{
                dnam{"luks"}
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"karatë"}
                one{"{0} CD"}
                other{"{0} CD"}
            }
            gram{
                dnam{"gramë"}
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            metric-ton{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
            }
            microgram{
                dnam{"µg"}
                one{"{0} µg"}
                other{"{0} µg"}
            }
            milligram{
                dnam{"mg"}
                one{"{0} mg"}
                other{"{0} mg"}
            }
            ounce{
                dnam{"oz"}
                one{"{0} oz"}
                other{"{0} oz"}
            }
            ounce-troy{
                dnam{"oz t"}
                one{"{0} oz t"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"paund"}
                one{"{0} lb"}
                other{"{0} lb"}
            }
            ton{
                dnam{"tn"}
                one{"{0} tn"}
                other{"{0} tn"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"kuaj fuqi"}
                one{"{0} k-fuqi"}
                other{"{0} k-fuqi"}
            }
            kilowatt{
                dnam{"kW"}
                one{"{0} kW"}
                other{"{0} kW"}
            }
            megawatt{
                dnam{"MW"}
                one{"{0} MW"}
                other{"{0} MW"}
            }
            milliwatt{
                dnam{"mW"}
                one{"{0} mW"}
                other{"{0} mW"}
            }
            watt{
                dnam{"vat"}
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"inç Hg"}
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                dnam{"mbar"}
                one{"{0} mb"}
                other{"{0} mb"}
            }
            millimeter-of-mercury{
                dnam{"mm Hg"}
                one{"{0} mm Hg"}
                other{"{0} mm Hg"}
            }
            pound-per-square-inch{
                dnam{"psi"}
                one{"{0} psi"}
                other{"{0} psi"}
            }
        }
        proportion{
            karat{
                dnam{"karatë"}
                one{"{0} kt"}
                other{"{0} kt"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/orë"}
                one{"{0} km/orë"}
                other{"{0} km/orë"}
            }
            meter-per-second{
                dnam{"m/s"}
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"mi/orë"}
                one{"{0} mi/orë"}
                other{"{0} mi/orë"}
            }
        }
        temperature{
            celsius{
                dnam{"gradë C"}
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                dnam{"°F"}
                one{"{0}°F"}
                other{"{0}°F"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"akra-këmbë"}
                one{"{0} ac ft"}
                other{"{0} ac ft"}
            }
            centiliter{
                dnam{"cL"}
                one{"{0} cL"}
                other{"{0} cL"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0} cm³"}
                other{"{0} cm³"}
            }
            cubic-foot{
                dnam{"ft³"}
                one{"{0} ft³"}
                other{"{0} ft³"}
            }
            cubic-inch{
                dnam{"in³"}
                one{"{0} in³"}
                other{"{0} in³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0} m³"}
                other{"{0} m³"}
            }
            cubic-mile{
                dnam{"mi³"}
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            cubic-yard{
                dnam{"jd³"}
                one{"{0} jd³"}
                other{"{0} jd³"}
            }
            cup{
                dnam{"kupa"}
                one{"{0} c"}
                other{"{0} c"}
            }
            deciliter{
                dnam{"dL"}
                one{"{0} dL"}
                other{"{0} dL"}
            }
            fluid-ounce{
                dnam{"onsë fluidë"}
                one{"{0} on. fl."}
                other{"{0} on. fl."}
            }
            gallon{
                dnam{"gal"}
                one{"{0} gal"}
                other{"{0} gal"}
            }
            hectoliter{
                dnam{"hL"}
                one{"{0} hL"}
                other{"{0} hL"}
            }
            liter{
                dnam{"litra"}
                one{"{0} l"}
                other{"{0} l"}
            }
            megaliter{
                dnam{"ML"}
                one{"{0} ML"}
                other{"{0} ML"}
            }
            milliliter{
                dnam{"mL"}
                one{"{0} mL"}
                other{"{0} mL"}
            }
            pint{
                dnam{"pinta"}
                one{"{0} pt"}
                other{"{0} pt"}
            }
            quart{
                dnam{"çerekje"}
                one{"{0} qt"}
                other{"{0} qt"}
            }
            tablespoon{
                dnam{"lugë gjelle"}
                one{"{0} tbsp"}
                other{"{0} tbsp"}
            }
            teaspoon{
                dnam{"lugë çaji"}
                one{"{0} tsp"}
                other{"{0} tsp"}
            }
        }
    }
}
