﻿// ***************************************************************************
// *
// * 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{
    AuxExemplarCharacters{"[w]"}
    Ellipsis{
        final{"{0}…"}
        word-final{"{0} …"}
    }
    ExemplarCharacters{
        "[a b c ç d {dh} e ë f g {gj} h i j k l {ll} m n {nj} o p q r {rr} s {sh} t {"
        "th} u v x {xh} y z {zh}]"
    }
    ExemplarCharactersIndex{
        "[A B C Ç D {DH} E Ë F G {GJ} H I J K L {LL} M N {NJ} O P Q R {RR} S {SH} T {"
        "TH} U V X {XH} Y Z {ZH}]"
    }
    LocaleScript{
        "Latn",
    }
    MoreInformation{"?"}
    NumberElements{
        latn{
            miscPatterns{
                atLeast{"⩾{0}"}
                range{"{0}-{1}"}
            }
            patterns{
                accountingFormat{"#,##0.00 ¤"}
                currencyFormat{"#,##0.00 ¤"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0%"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        one{"0 mijë"}
                        other{"0 mijë"}
                    }
                    10000{
                        one{"00 mijë"}
                        other{"00 mijë"}
                    }
                    100000{
                        one{"000 mijë"}
                        other{"000 mijë"}
                    }
                    1000000{
                        one{"0 milion"}
                        other{"0 milion"}
                    }
                    10000000{
                        one{"00 milion"}
                        other{"00 milion"}
                    }
                    100000000{
                        one{"000 milion"}
                        other{"000 milion"}
                    }
                    1000000000{
                        one{"0 miliard"}
                        other{"0 miliard"}
                    }
                    10000000000{
                        one{"00 miliard"}
                        other{"00 miliard"}
                    }
                    100000000000{
                        one{"000 miliard"}
                        other{"000 miliard"}
                    }
                    1000000000000{
                        one{"0 bilion"}
                        other{"0 bilion"}
                    }
                    10000000000000{
                        one{"00 bilion"}
                        other{"00 bilion"}
                    }
                    100000000000000{
                        one{"000 bilion"}
                        other{"000 bilion"}
                    }
                }
            }
            patternsShort{
                decimalFormat{
                    1000{
                        one{"0 mijë"}
                        other{"0 mijë"}
                    }
                    10000{
                        one{"00 mijë"}
                        other{"00 mijë"}
                    }
                    100000{
                        one{"000"}
                        other{"000 mijë"}
                    }
                    1000000{
                        one{"0 Mln"}
                        other{"0 Mln"}
                    }
                    10000000{
                        one{"00 Mln"}
                        other{"00 Mln"}
                    }
                    100000000{
                        one{"000 Mln"}
                        other{"000 Mln"}
                    }
                    1000000000{
                        one{"0 Mld"}
                        other{"0 Mld"}
                    }
                    10000000000{
                        one{"00 Mld"}
                        other{"00 Mld"}
                    }
                    100000000000{
                        one{"000 Mld"}
                        other{"000 Mld"}
                    }
                    1000000000000{
                        one{"0 Bln"}
                        other{"0 Bln"}
                    }
                    10000000000000{
                        one{"00 Bln"}
                        other{"00 Bln"}
                    }
                    100000000000000{
                        one{"000 Bln"}
                        other{"000 Bln"}
                    }
                }
            }
            symbols{
                decimal{","}
                exponential{"E"}
                group{" "}
                infinity{"∞"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
            }
        }
    }
    Version{"2.0.98.52"}
    calendar{
        generic{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE dd MMMM y G",
                "dd MMMM y G",
                "dd/MMM/y G",
                "dd/MM/yy GGGGG",
                "{1} {0}",
                "{1} 'në' {0}",
                "{1} 'në' {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E d"}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E d MMM y G"}
                GyMMMd{"d MMM y G"}
                H{"H"}
                Hm{"H.mm"}
                Hms{"H.mm.ss"}
                M{"L"}
                MEd{"E d/M"}
                MMM{"LLL"}
                MMMEd{"E d MMM"}
                MMMMEd{"E d MMMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                Md{"d/M"}
                d{"d"}
                h{"h.a"}
                hm{"h.mm.a"}
                hms{"h.mm.ss.a"}
                ms{"mm.ss"}
                y{"y G"}
                yyyy{"y G"}
                yyyyM{"M/y G"}
                yyyyMEd{"E d/M/y G"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E d MMM y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"d MMM y G"}
                yyyyMd{"d/M/y GGGGG"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"QQQQ y G"}
            }
            intervalFormats{
                M{
                    M{"M-M"}
                }
                MEd{
                    M{"E dd/MM - E dd/MM"}
                    d{"E dd/MM - E dd/MM"}
                }
                MMM{
                    M{"MMM-MMM"}
                }
                MMMEd{
                    M{"E dd MMM - E dd MMM"}
                    d{"E dd - E dd MMM"}
                }
                MMMd{
                    M{"dd MMM - dd MMM"}
                    d{"dd-dd MMM"}
                }
                Md{
                    M{"dd/MM - dd/MM"}
                    d{"dd/MM - dd/MM"}
                }
                d{
                    d{"d-d"}
                }
                fallback{"{0} - {1}"}
                y{
                    y{"y-y G"}
                }
                yM{
                    M{"MM/y - MM/y G"}
                    y{"MM/y - MM/y G"}
                }
                yMEd{
                    M{"E dd/MM/y - E dd/MM/y G"}
                    d{"E dd/MM/y - E dd/MM/y G"}
                    y{"E dd/MM/y - E dd/MM/y G"}
                }
                yMMM{
                    M{"MMM - MMM y G"}
                    y{"MMM y - MMM y G"}
                }
                yMMMEd{
                    M{"E d MMM - E d MMM y G"}
                    d{"E d - E d MMM y G"}
                    y{"E d MMM y - E d MMM y G"}
                }
                yMMMM{
                    M{"MMMM-MMMM y G"}
                    y{"MMMM-MMMM y G"}
                }
                yMMMd{
                    M{"dd MMM - dd MMM y G"}
                    d{"dd-dd MMM y G"}
                    y{"dd MMM y - dd MMM y G"}
                }
                yMd{
                    M{"dd/MM/y - dd/MM/y G"}
                    d{"dd/MM/y - dd/MM/y G"}
                    y{"dd/MM/y - dd/MM/y G"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "paradite",
                "pasdite",
            }
            AmPmMarkersNarrow{
                "AM",
                "PM",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, dd MMMM y",
                "dd MMMM y",
                "dd/MM/y",
                "dd/MM/yy",
                "{1} {0}",
                "{1} 'në' {0}",
                "{1} 'në' {0}",
                "{1} {0}",
                "{1} {0}",
            }
            appendItems{
                Timezone{"{0} {1}"}
            }
            availableFormats{
                EHm{"E HH:mm"}
                EHms{"E HH:mm:ss"}
                Ed{"E, d"}
                Ehm{"E h:mm a"}
                Ehms{"E h:mm:ss a"}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, d MMM y G"}
                GyMMMd{"d MMM y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d/M"}
                MMM{"LLL"}
                MMMEd{"E d MMM"}
                MMMMEd{"E d MMMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                MMdd{"dd/MM"}
                Md{"d/M"}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"y"}
                yM{"M/y"}
                yMEd{"E, d/M/y"}
                yMMM{"MMM y"}
                yMMMEd{"E, d MMM y"}
                yMMMM{"MMMM y"}
                yMMMd{"d MMM y"}
                yMd{"dd/MM/y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "Die",
                        "Hën",
                        "Mar",
                        "Mër",
                        "Enj",
                        "Pre",
                        "Sht",
                    }
                    narrow{
                        "D",
                        "H",
                        "M",
                        "M",
                        "E",
                        "P",
                        "S",
                    }
                    short{
                        "Die",
                        "Hën",
                        "Mar",
                        "Mër",
                        "Enj",
                        "Pre",
                        "Sht",
                    }
                    wide{
                        "e diel",
                        "e hënë",
                        "e martë",
                        "e mërkurë",
                        "e enjte",
                        "e premte",
                        "e shtunë",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Die",
                        "Hën",
                        "Mar",
                        "Mër",
                        "Enj",
                        "Pre",
                        "Sht",
                    }
                    narrow{
                        "D",
                        "H",
                        "M",
                        "M",
                        "E",
                        "P",
                        "S",
                    }
                    short{
                        "Die",
                        "Hën",
                        "Mar",
                        "Mër",
                        "Enj",
                        "Pre",
                        "Sht",
                    }
                    wide{
                        "e diel",
                        "e hënë",
                        "e martë",
                        "e mërkurë",
                        "e enjte",
                        "e premte",
                        "e shtunë",
                    }
                }
            }
            eras{
                abbreviated{
                    "p.e.r.",
                    "e.r.",
                }
                narrow{
                    "p.e.r.",
                    "e.r.",
                }
                wide{
                    "para erës së re",
                    "erës së re",
                }
            }
            intervalFormats{
                H{
                    H{"HH-HH"}
                }
                Hm{
                    H{"HH:mm-HH:mm"}
                    m{"HH:mm-HH:mm"}
                }
                Hmv{
                    H{"HH:mm-HH:mm v"}
                    m{"HH:mm-HH:mm v"}
                }
                Hv{
                    H{"HH-HH v"}
                }
                M{
                    M{"M-M"}
                }
                MEd{
                    M{"E, dd/MM - E, dd/MM"}
                    d{"E, dd/MM - E, dd/MM"}
                }
                MMM{
                    M{"MMM - MMM"}
                }
                MMMEd{
                    M{"E, dd MMM - E, dd MMM"}
                    d{"E, dd - E, dd MMM"}
                }
                MMMd{
                    M{"dd MMM - dd MMM"}
                    d{"dd-dd MMM"}
                }
                Md{
                    M{"dd/MM - dd/MM"}
                    d{"dd/MM - dd/MM"}
                }
                d{
                    d{"d-d"}
                }
                fallback{"{0} - {1}"}
                h{
                    a{"h a - h a"}
                    h{"h-h a"}
                }
                hm{
                    a{"h:mm a - h:mm a"}
                    h{"h:mm-h:mm a"}
                    m{"h:mm-h:mm a"}
                }
                hmv{
                    a{"h:mm a - h:mm a v"}
                    h{"h:mm-h:mm a v"}
                    m{"h:mm-h:mm a v"}
                }
                hv{
                    a{"h a - h a v"}
                    h{"h-h a v"}
                }
                y{
                    y{"y-y"}
                }
                yM{
                    M{"MM/y - MM/y"}
                    y{"MM/y - MM/y"}
                }
                yMEd{
                    M{"E, dd/MM/y - E, dd/MM/y"}
                    d{"E, dd/MM/y - E, dd/MM/y"}
                    y{"E, dd/MM/y - E, dd/MM/y"}
                }
                yMMM{
                    M{"MMM-MMM y"}
                    y{"MMM y - MMM y"}
                }
                yMMMEd{
                    M{"E, dd MMM - E, dd MMM y"}
                    d{"E, dd - E, dd MMM y"}
                    y{"E, dd MMM y - E, dd MMM y"}
                }
                yMMMM{
                    M{"MMMM - MMMM y"}
                    y{"MMMM y - MMMM y"}
                }
                yMMMd{
                    M{"dd MMM - dd MMM y"}
                    d{"dd-dd MMM y"}
                    y{"dd MMM y - dd MMM y"}
                }
                yMd{
                    M{"dd/MM/y - dd/MM/y"}
                    d{"dd/MM/y - dd/MM/y"}
                    y{"dd/MM/y - dd/MM/y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Jan",
                        "Shk",
                        "Mar",
                        "Pri",
                        "Maj",
                        "Qer",
                        "Kor",
                        "Gsh",
                        "Sht",
                        "Tet",
                        "Nën",
                        "Dhj",
                    }
                    narrow{
                        "J",
                        "S",
                        "M",
                        "P",
                        "M",
                        "Q",
                        "K",
                        "G",
                        "S",
                        "T",
                        "N",
                        "D",
                    }
                    wide{
                        "janar",
                        "shkurt",
                        "mars",
                        "prill",
                        "maj",
                        "qershor",
                        "korrik",
                        "gusht",
                        "shtator",
                        "tetor",
                        "nëntor",
                        "dhjetor",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Jan",
                        "Shk",
                        "Mar",
                        "Pri",
                        "Maj",
                        "Qer",
                        "Kor",
                        "Gsh",
                        "Sht",
                        "Tet",
                        "Nën",
                        "Dhj",
                    }
                    narrow{
                        "J",
                        "S",
                        "M",
                        "P",
                        "M",
                        "Q",
                        "K",
                        "G",
                        "S",
                        "T",
                        "N",
                        "D",
                    }
                    wide{
                        "janar",
                        "shkurt",
                        "mars",
                        "prill",
                        "maj",
                        "qershor",
                        "korrik",
                        "gusht",
                        "shtator",
                        "tetor",
                        "nëntor",
                        "dhjetor",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "T1",
                        "T2",
                        "T3",
                        "T4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "tremujori i parë",
                        "tremujori i dytë",
                        "tremujori i tretë",
                        "tremujori i katërt",
                    }
                }
                stand-alone{
                    abbreviated{
                        "T1",
                        "T2",
                        "T3",
                        "T4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "tremujori I",
                        "tremujori II",
                        "tremujori III",
                        "tremujori IV",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"”"}
        alternateQuotationStart{"“"}
        quotationEnd{"»"}
        quotationStart{"«"}
    }
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    fields{
        day{
            dn{"ditë"}
            relative{
                "-1"{"dje"}
                "0"{"sot"}
                "1"{"nesër"}
            }
            relativeTime{
                future{
                    one{"pas {0} dite"}
                    other{"pas {0} ditësh"}
                }
                past{
                    one{"para {0} dite"}
                    other{"para {0} ditësh"}
                }
            }
        }
        dayperiod{
            dn{"periudhë e ditës"}
        }
        era{
            dn{"erë"}
        }
        fri{
            relative{
                "-1"{"të premten e kaluar"}
                "0"{"këtë të premte"}
                "1"{"të premten e ardhshme"}
            }
        }
        hour{
            dn{"orë"}
            relativeTime{
                future{
                    one{"pas {0} ore"}
                    other{"pas {0} orësh"}
                }
                past{
                    one{"para {0} ore"}
                    other{"para {0} orësh"}
                }
            }
        }
        minute{
            dn{"minutë"}
            relativeTime{
                future{
                    one{"pas {0} minute"}
                    other{"pas {0} minutash"}
                }
                past{
                    one{"para {0} minute"}
                    other{"para {0} minutash"}
                }
            }
        }
        mon{
            relative{
                "-1"{"të hënën e kaluar"}
                "0"{"këtë të hënë"}
                "1"{"të hënën e ardhshme"}
            }
        }
        month{
            dn{"muaj"}
            relative{
                "-1"{"muajin e kaluar"}
                "0"{"këtë muaj"}
                "1"{"muajin e ardhshëm"}
            }
            relativeTime{
                future{
                    one{"pas {0} muaji"}
                    other{"pas {0} muajsh"}
                }
                past{
                    one{"para {0} muaji"}
                    other{"para {0} muajsh"}
                }
            }
        }
        sat{
            relative{
                "-1"{"të shtunën e kaluar"}
                "0"{"këtë të shtunë"}
                "1"{"të shtunën e ardhshme"}
            }
        }
        second{
            dn{"sekondë"}
            relative{
                "0"{"tani"}
            }
            relativeTime{
                future{
                    one{"pas {0} sekonde"}
                    other{"pas {0} sekondash"}
                }
                past{
                    one{"para {0} sekonde"}
                    other{"para {0} sekondash"}
                }
            }
        }
        sun{
            relative{
                "-1"{"të dielën e kaluar"}
                "0"{"këtë të diel"}
                "1"{"të dielën e ardhshme"}
            }
        }
        thu{
            relative{
                "-1"{"të enjten e kaluar"}
                "0"{"këtë të enjte"}
                "1"{"të enjten e ardhshme"}
            }
        }
        tue{
            relative{
                "-1"{"të martën e kaluar"}
                "0"{"këtë të martë"}
                "1"{"të martën e ardhshme"}
            }
        }
        wed{
            relative{
                "-1"{"të mërkurën e kaluar"}
                "0"{"këtë të mërkurë"}
                "1"{"të mërkurën e ardhshme"}
            }
        }
        week{
            dn{"javë"}
            relative{
                "-1"{"javën e kaluar"}
                "0"{"këtë javë"}
                "1"{"javën e ardhshme"}
            }
            relativeTime{
                future{
                    one{"pas {0} jave"}
                    other{"pas {0} javësh"}
                }
                past{
                    one{"para {0} jave"}
                    other{"para {0} javësh"}
                }
            }
        }
        weekday{
            dn{"ditë e javës"}
        }
        year{
            dn{"vit"}
            relative{
                "-1"{"vitin e kaluar"}
                "0"{"këtë vit"}
                "1"{"vitin e ardhshëm"}
            }
            relativeTime{
                future{
                    one{"pas {0} viti"}
                    other{"pas {0} vjetësh"}
                }
                past{
                    one{"para {0} viti"}
                    other{"para {0} vjetësh"}
                }
            }
        }
        zone{
            dn{"zonë"}
        }
    }
    listPattern{
        standard{
            2{"{0} dhe {1}"}
            end{"{0} dhe {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit{
            2{"{0} e {1}"}
            end{"{0} e {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit-short{
            2{"{0} e {1}"}
            end{"{0} e {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"britanik"}
        US{"amerikan"}
        metric{"metrik"}
    }
    units{
        acceleration{
            g-force{
                one{"{0} g-forcë"}
                other{"{0} g-forcë"}
            }
        }
        angle{
            arc-minute{
                one{"{0} minutë"}
                other{"{0} minuta"}
            }
            arc-second{
                one{"{0} sekondë"}
                other{"{0} sekonda"}
            }
            degree{
                one{"{0} gradë"}
                other{"{0} gradë"}
            }
        }
        area{
            acre{
                one{"{0} akër"}
                other{"{0} akra"}
            }
            hectare{
                one{"{0} hektar"}
                other{"{0} hektarë"}
            }
            square-foot{
                one{"{0} këmbë katror"}
                other{"{0} këmbë katrore"}
            }
            square-kilometer{
                one{"{0} kilometër katror"}
                other{"{0} kilometra katrore"}
            }
            square-meter{
                one{"{0} metër katror"}
                other{"{0} metra katrore"}
            }
            square-mile{
                one{"{0} milje katror"}
                other{"{0} milje katrore"}
            }
        }
        compound{
            per{"{0} në {1}"}
        }
        duration{
            day{
                one{"{0} ditë"}
                other{"{0} ditë"}
            }
            hour{
                one{"{0} orë"}
                other{"{0} orë"}
            }
            millisecond{
                one{"{0} milisekondë"}
                other{"{0} milisekonda"}
            }
            minute{
                one{"{0} minutë"}
                other{"{0} minuta"}
            }
            month{
                one{"{0} muaj"}
                other{"{0} muaj"}
            }
            second{
                one{"{0} sekondë"}
                other{"{0} sekonda"}
            }
            week{
                one{"{0} javë"}
                other{"{0} javë"}
            }
            year{
                one{"{0} vit"}
                other{"{0} vjet"}
            }
        }
        length{
            centimeter{
                one{"{0} centimetër"}
                other{"{0} centimetra"}
            }
            foot{
                one{"{0} këmbë"}
                other{"{0} këmbë"}
            }
            inch{
                one{"{0} inç"}
                other{"{0} inç"}
            }
            kilometer{
                one{"{0} kilometër"}
                other{"{0} kilometra"}
            }
            light-year{
                one{"{0} vit drite"}
                other{"{0} vjet drite"}
            }
            meter{
                one{"{0} metër"}
                other{"{0} metra"}
            }
            mile{
                one{"{0} milje"}
                other{"{0} milje"}
            }
            millimeter{
                one{"{0} milimetër"}
                other{"{0} milimetra"}
            }
            picometer{
                one{"{0} pikometër"}
                other{"{0} pikometra"}
            }
            yard{
                one{"{0} jard"}
                other{"{0} jardë"}
            }
        }
        mass{
            gram{
                one{"{0} gram"}
                other{"{0} gram"}
            }
            kilogram{
                one{"{0} kilogram"}
                other{"{0} kilogram"}
            }
            ounce{
                one{"{0} ons"}
                other{"{0} ons"}
            }
            pound{
                one{"{0} paund"}
                other{"{0} paund"}
            }
        }
        power{
            horsepower{
                one{"{0} kalë fuqi"}
                other{"{0} kuaj fuqi"}
            }
            kilowatt{
                one{"{0} kilovat"}
                other{"{0} kilovat"}
            }
            watt{
                one{"{0} vat"}
                other{"{0} vat"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hektopaskal"}
                other{"{0} hektopaskal"}
            }
            inch-hg{
                one{"{0} inç merkuri"}
                other{"{0} inç merkuri"}
            }
            millibar{
                one{"{0} milibar"}
                other{"{0} milibar"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} kilomentër në orë"}
                other{"{0} kilometra në orë"}
            }
            meter-per-second{
                one{"{0} metër në sekondë"}
                other{"{0} metra në sekondë"}
            }
            mile-per-hour{
                one{"{0} milje në orë"}
                other{"{0} milje në orë"}
            }
        }
        temperature{
            celsius{
                one{"{0} gradë Celsius"}
                other{"{0} gradë Celsius"}
            }
            fahrenheit{
                one{"{0} gradë Farenhait"}
                other{"{0} gradë Farenhait"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} kilometër kub"}
                other{"{0} kilometra kub"}
            }
            cubic-mile{
                one{"{0} milje në kub"}
                other{"{0} milje në kub"}
            }
            liter{
                one{"{0} litër"}
                other{"{0} litra"}
            }
        }
    }
    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}"}
        }
        duration{
            day{
                one{"{0} ditë"}
                other{"{0} ditë"}
            }
            hour{
                one{"{0} orë"}
                other{"{0} orë"}
            }
            millisecond{
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                one{"{0} min."}
                other{"{0} min."}
            }
            month{
                one{"{0} muaj"}
                other{"{0} muaj"}
            }
            second{
                one{"{0} sek."}
                other{"{0} sek."}
            }
            week{
                one{"{0} javë"}
                other{"{0} javë"}
            }
            year{
                one{"{0} vit"}
                other{"{0} vjet"}
            }
        }
        length{
            centimeter{
                one{"{0} cm"}
                other{"{0} cm"}
            }
            foot{
                one{"{0} ft"}
                other{"{0} ft"}
            }
            inch{
                one{"{0} inç"}
                other{"{0} inç"}
            }
            kilometer{
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} v. dr."}
                other{"{0} v. dr."}
            }
            meter{
                one{"{0} m"}
                other{"{0} m"}
            }
            mile{
                one{"{0} mi"}
                other{"{0} mi"}
            }
            millimeter{
                one{"{0} mm"}
                other{"{0} mm"}
            }
            picometer{
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                one{"{0} jd"}
                other{"{0} jd"}
            }
        }
        mass{
            gram{
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                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{
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                one{"{0} mb"}
                other{"{0} mb"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
            meter-per-second{
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                one{"{0} mi/h"}
                other{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                one{"{0}°"}
                other{"{0}°"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-mile{
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            liter{
                one{"{0} l"}
                other{"{0} l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                one{"{0} g-forcë"}
                other{"{0} g-forcë"}
            }
        }
        angle{
            arc-minute{
                one{"{0} min."}
                other{"{0} min."}
            }
            arc-second{
                one{"{0} sek."}
                other{"{0} sek."}
            }
            degree{
                one{"{0} gradë"}
                other{"{0} gradë"}
            }
        }
        area{
            acre{
                one{"{0} akër"}
                other{"{0} akra"}
            }
            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}"}
        }
        duration{
            day{
                one{"{0} ditë"}
                other{"{0} ditë"}
            }
            hour{
                one{"{0} orë"}
                other{"{0} orë"}
            }
            millisecond{
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                one{"{0} min."}
                other{"{0} min."}
            }
            month{
                one{"{0} muaj"}
                other{"{0} muaj"}
            }
            second{
                one{"{0} sek."}
                other{"{0} sek."}
            }
            week{
                one{"{0} javë"}
                other{"{0} javë"}
            }
            year{
                one{"{0} vit"}
                other{"{0} vjet"}
            }
        }
        length{
            centimeter{
                one{"{0} cm"}
                other{"{0} cm"}
            }
            foot{
                one{"{0} ft"}
                other{"{0} ft"}
            }
            inch{
                one{"{0} inç"}
                other{"{0} inç"}
            }
            kilometer{
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} v. dr."}
                other{"{0} v. dr."}
            }
            meter{
                one{"{0} m"}
                other{"{0} m"}
            }
            mile{
                one{"{0} mi"}
                other{"{0} mi"}
            }
            millimeter{
                one{"{0} mm"}
                other{"{0} mm"}
            }
            picometer{
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                one{"{0} jd"}
                other{"{0} jd"}
            }
        }
        mass{
            gram{
                one{"{0} gr"}
                other{"{0} gr"}
            }
            kilogram{
                one{"{0} kg"}
                other{"{0} kg"}
            }
            ounce{
                one{"{0} ons"}
                other{"{0} ons"}
            }
            pound{
                one{"{0} paund"}
                other{"{0} paund"}
            }
        }
        power{
            horsepower{
                one{"{0} k-fuqi"}
                other{"{0} k-fuqi"}
            }
            kilowatt{
                one{"{0} k-vat"}
                other{"{0} k-vat"}
            }
            watt{
                one{"{0} vat"}
                other{"{0} vat"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hPaskal"}
                other{"{0} hPaskal"}
            }
            inch-hg{
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                one{"{0} mb"}
                other{"{0} mb"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} km/orë"}
                other{"{0} km/orë"}
            }
            meter-per-second{
                one{"{0} m/sek."}
                other{"{0} m/sek."}
            }
            mile-per-hour{
                one{"{0} mi/orë"}
                other{"{0} mi/orë"}
            }
        }
        temperature{
            celsius{
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-mile{
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            liter{
                one{"{0} litër"}
                other{"{0} litra"}
            }
        }
    }
}
