﻿// ***************************************************************************
// *
// * Copyright (C) 2016 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/lv.xml
// *
// ***************************************************************************
lv{
    Version{"2.1.23.7"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"Brīvās krišanas paātrinājums:"}
                one{"Brīvās krišanas paātrinājums: {0}"}
                other{"Brīvās krišanas paātrinājums: {0}"}
                zero{"Brīvās krišanas paātrinājums: {0}"}
            }
            meter-per-second-squared{
                dnam{"metri sekundē kvadrātā"}
                one{"{0} metrs sekundē kvadrātā"}
                other{"{0} metri sekundē kvadrātā"}
                zero{"{0} metri sekundē kvadrātā"}
            }
        }
        angle{
            arc-minute{
                dnam{"leņķa minūtes"}
                one{"{0} leņķa minūte"}
                other{"{0} leņķa minūtes"}
                zero{"{0} leņķa minūtes"}
            }
            arc-second{
                dnam{"leņķa sekundes"}
                one{"{0} leņķa sekunde"}
                other{"{0} leņķa sekundes"}
                zero{"{0} leņķa sekundes"}
            }
            degree{
                dnam{"grādi"}
                one{"{0} grāds"}
                other{"{0} grādi"}
                zero{"{0} grādi"}
            }
            radian{
                dnam{"radiāni"}
                one{"{0} radiāns"}
                other{"{0} radiāni"}
                zero{"{0} radiāni"}
            }
            revolution{
                dnam{"apgrieziens"}
                one{"{0} apgrieziens"}
                other{"{0} apgriezieni"}
                zero{"{0} apgriezieni"}
            }
        }
        area{
            acre{
                dnam{"akri"}
                one{"{0} akrs"}
                other{"{0} akri"}
                zero{"{0} akri"}
            }
            hectare{
                dnam{"hektāri"}
                one{"{0} hektārs"}
                other{"{0} hektāri"}
                zero{"{0} hektāri"}
            }
            square-centimeter{
                dnam{"kvadrātcentimetri"}
                one{"{0} kvadrātcentimetrs"}
                other{"{0} kvadrātcentimetri"}
                per{"{0} uz kvadrātcentimetru"}
                zero{"{0} kvadrātcentimetri"}
            }
            square-foot{
                dnam{"kvadrātpēdas"}
                one{"{0} kvadrātpēda"}
                other{"{0} kvadrātpēdas"}
                zero{"{0} kvadrātpēdas"}
            }
            square-inch{
                dnam{"kvadrātcollas"}
                one{"{0} kvadrātcolla"}
                other{"{0} kvadrātcollas"}
                per{"{0} uz kvadrātcollu"}
                zero{"{0} kvadrātcollas"}
            }
            square-kilometer{
                dnam{"kvadrātkilometri"}
                one{"{0} kvadrātkilometrs"}
                other{"{0} kvadrātkilometri"}
                zero{"{0} kvadrātkilometri"}
            }
            square-meter{
                dnam{"kvadrātmetri"}
                one{"{0} kvadrātmetrs"}
                other{"{0} kvadrātmetri"}
                per{"{0} uz kvadrātmetru"}
                zero{"{0} kvadrātmetri"}
            }
            square-mile{
                dnam{"kvadrātjūdzes"}
                one{"{0} kvadrātjūdze"}
                other{"{0} kvadrātjūdzes"}
                zero{"{0} kvadrātjūdzes"}
            }
            square-yard{
                dnam{"kvadrātjardi"}
                one{"{0} kvadrātjards"}
                other{"{0} kvadrātjardi"}
                zero{"{0} kvadrātjardi"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        concentr{
            karat{
                dnam{"karāti"}
                one{"{0} karāts"}
                other{"{0} karāti"}
                zero{"{0} karāti"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"litri uz 100 kilometriem"}
                one{"{0} litrs uz 100 kilometriem"}
                other{"{0} litri uz 100 kilometriem"}
                zero{"{0} litri uz 100 kilometriem"}
            }
            liter-per-kilometer{
                dnam{"litri uz kilometru"}
                one{"{0} litrs uz kilometru"}
                other{"{0} litri uz kilometru"}
                zero{"{0} litri uz kilometru"}
            }
            mile-per-gallon{
                dnam{"jūdzes ar galonu"}
                one{"{0} jūdze ar galonu"}
                other{"{0} jūdzes ar galonu"}
                zero{"{0} jūdzes ar galonu"}
            }
        }
        coordinate{
            east{"{0}A"}
            north{"{0}Z"}
            south{"{0}D"}
            west{"{0}R"}
        }
        digital{
            bit{
                dnam{"biti"}
                one{"{0} bits"}
                other{"{0} biti"}
                zero{"{0} biti"}
            }
            byte{
                dnam{"baiti"}
                one{"{0} baits"}
                other{"{0} baiti"}
                zero{"{0} baiti"}
            }
            gigabit{
                dnam{"gigabiti"}
                one{"{0} gigabits"}
                other{"{0} gigabiti"}
                zero{"{0} gigabiti"}
            }
            gigabyte{
                dnam{"gigabaiti"}
                one{"{0} gigabaits"}
                other{"{0} gigabaiti"}
                zero{"{0} gigabaiti"}
            }
            kilobit{
                dnam{"kilobiti"}
                one{"{0} kilobits"}
                other{"{0} kilobiti"}
                zero{"{0} kilobiti"}
            }
            kilobyte{
                dnam{"kilobaiti"}
                one{"{0} kilobaits"}
                other{"{0} kilobaiti"}
                zero{"{0} kilobaiti"}
            }
            megabit{
                dnam{"megabiti"}
                one{"{0} megabits"}
                other{"{0} megabiti"}
                zero{"{0} megabiti"}
            }
            megabyte{
                dnam{"megabaiti"}
                one{"{0} megabaits"}
                other{"{0} megabaits"}
                zero{"{0} megabaiti"}
            }
            terabit{
                dnam{"terabiti"}
                one{"{0} terabits"}
                other{"{0} terabiti"}
                zero{"{0} terabiti"}
            }
            terabyte{
                dnam{"terabaiti"}
                one{"{0} terabaits"}
                other{"{0} terabaiti"}
                zero{"{0} terabaiti"}
            }
        }
        duration{
            century{
                dnam{"gadsimti"}
                one{"{0} gadsimts"}
                other{"{0} gadsimti"}
                zero{"{0} gadsimti"}
            }
            day{
                dnam{"dienas"}
                one{"{0} diena"}
                other{"{0} dienas"}
                per{"{0} dienā"}
                zero{"{0} dienas"}
            }
            hour{
                dnam{"stundas"}
                one{"{0} stunda"}
                other{"{0} stundas"}
                per{"{0} stundā"}
                zero{"{0} stundas"}
            }
            microsecond{
                dnam{"mikrosekundes"}
                one{"{0} mikrosekunde"}
                other{"{0} mikrosekundes"}
                zero{"{0} mikrosekundes"}
            }
            millisecond{
                dnam{"milisekundes"}
                one{"{0} milisekunde"}
                other{"{0} milisekundes"}
                zero{"{0} milisekundes"}
            }
            minute{
                dnam{"minūtes"}
                one{"{0} minūte"}
                other{"{0} minūtes"}
                per{"{0}/minūtē"}
                zero{"{0} minūtes"}
            }
            month{
                dnam{"mēneši"}
                one{"{0} mēnesis"}
                other{"{0} mēneši"}
                per{"{0} mēnesī"}
                zero{"{0} mēneši"}
            }
            nanosecond{
                dnam{"nanosekundes"}
                one{"{0} nanosekunde"}
                other{"{0} nanosekundes"}
                zero{"{0} nanosekundes"}
            }
            second{
                dnam{"sekundes"}
                one{"{0} sekunde"}
                other{"{0} sekundes"}
                per{"{0} sekundē"}
                zero{"{0} sekundes"}
            }
            week{
                dnam{"nedēļas"}
                one{"{0} nedēļa"}
                other{"{0} nedēļas"}
                per{"{0} nedēļā"}
                zero{"{0} nedēļas"}
            }
            year{
                dnam{"gadi"}
                one{"{0} gads"}
                other{"{0} gadi"}
                zero{"{0} gadi"}
            }
        }
        electric{
            ampere{
                dnam{"ampēri"}
                one{"{0} ampērs"}
                other{"{0} ampēri"}
                zero{"{0} ampēri"}
            }
            milliampere{
                dnam{"miliampēri"}
                one{"{0} miliampērs"}
                other{"{0} miliampēri"}
                zero{"{0} miliampēri"}
            }
            ohm{
                dnam{"omi"}
                one{"{0} oms"}
                other{"{0} omi"}
                zero{"{0} omi"}
            }
            volt{
                dnam{"volti"}
                one{"{0} volts"}
                other{"{0} volti"}
                zero{"{0} volti"}
            }
        }
        energy{
            calorie{
                dnam{"kalorijas"}
                one{"{0} kalorija"}
                other{"{0} kalorijas"}
                zero{"{0} kalorijas"}
            }
            foodcalorie{
                dnam{"kalorijas"}
                one{"{0} kalorija"}
                other{"{0} kalorijas"}
                zero{"{0} kalorijas"}
            }
            joule{
                dnam{"džouli"}
                one{"{0} džouls"}
                other{"{0} džouli"}
                zero{"{0} džouli"}
            }
            kilocalorie{
                dnam{"kilokalorijas"}
                one{"{0} kilokalorija"}
                other{"{0} kilokalorijas"}
                zero{"{0} kilokalorijas"}
            }
            kilojoule{
                dnam{"kilodžouli"}
                one{"{0} kilodžouls"}
                other{"{0} kilodžouli"}
                zero{"{0} kilodžouli"}
            }
            kilowatt-hour{
                dnam{"kilovatstundas"}
                one{"{0} kilovatstunda"}
                other{"{0} kilovatstundas"}
                zero{"{0} kilovatstundas"}
            }
        }
        frequency{
            gigahertz{
                dnam{"gigaherci"}
                one{"{0} gigahercs"}
                other{"{0} gigaherci"}
                zero{"{0} gigaherci"}
            }
            hertz{
                dnam{"herci"}
                one{"{0} hercs"}
                other{"{0} herci"}
                zero{"{0} herci"}
            }
            kilohertz{
                dnam{"kiloherci"}
                one{"{0} kilohercs"}
                other{"{0} kiloherci"}
                zero{"{0} kiloherci"}
            }
            megahertz{
                dnam{"megaherci"}
                one{"{0} megahercs"}
                other{"{0} megaherci"}
                zero{"{0} megaherci"}
            }
        }
        length{
            astronomical-unit{
                dnam{"astronomiskās vienības"}
                one{"{0} astronomiskā vienība"}
                other{"{0} astronomiskās vienības"}
                zero{"{0} astronomiskās vienības"}
            }
            centimeter{
                dnam{"centimetri"}
                one{"{0} centimetrs"}
                other{"{0} centimetri"}
                per{"{0} centimetrā"}
                zero{"{0} centimetri"}
            }
            decimeter{
                dnam{"decimetri"}
                one{"{0} decimetrs"}
                other{"{0} decimetri"}
                zero{"{0} decimetri"}
            }
            foot{
                dnam{"pēdas"}
                one{"{0} pēda"}
                other{"{0} pēdas"}
                per{"{0} pēdā"}
                zero{"{0} pēdas"}
            }
            inch{
                dnam{"collas"}
                one{"{0} colla"}
                other{"{0} collas"}
                per{"{0} collā"}
                zero{"{0} collas"}
            }
            kilometer{
                dnam{"kilometri"}
                one{"{0} kilometrs"}
                other{"{0} kilometri"}
                per{"{0} kilometrā"}
                zero{"{0} kilometri"}
            }
            light-year{
                dnam{"gaismas gadi"}
                one{"{0} gaismas gads"}
                other{"{0} gaismas gadi"}
                zero{"{0} gaismas gadi"}
            }
            meter{
                dnam{"metri"}
                one{"{0} metrs"}
                other{"{0} metri"}
                per{"{0} metrā"}
                zero{"{0} metri"}
            }
            micrometer{
                dnam{"mikrometri"}
                one{"{0} mikrometrs"}
                other{"{0} mikrometri"}
                zero{"{0} mikrometri"}
            }
            mile{
                dnam{"jūdzes"}
                one{"{0} jūdze"}
                other{"{0} jūdzes"}
                zero{"{0} jūdzes"}
            }
            mile-scandinavian{
                dnam{"skandināvu jūdze"}
                one{"{0} skandināvu jūdze"}
                other{"{0} skandināvu jūdzes"}
                zero{"{0} skandināvu jūdzes"}
            }
            millimeter{
                dnam{"milimetri"}
                one{"{0} milimetrs"}
                other{"{0} milimetri"}
                zero{"{0} milimetri"}
            }
            nanometer{
                dnam{"nanometri"}
                one{"{0} nanometrs"}
                other{"{0} nanometri"}
                zero{"{0} nanometri"}
            }
            nautical-mile{
                dnam{"jūras jūdzes"}
                one{"{0} jūras jūdze"}
                other{"{0} jūras jūdzes"}
                zero{"{0} jūras jūdzes"}
            }
            parsec{
                dnam{"parseki"}
                one{"{0} parseks"}
                other{"{0} parseki"}
                zero{"{0} parseki"}
            }
            picometer{
                dnam{"pikometri"}
                one{"{0} pikometrs"}
                other{"{0} pikometri"}
                zero{"{0} pikometri"}
            }
            yard{
                dnam{"jardi"}
                one{"{0} jards"}
                other{"{0} jardi"}
                zero{"{0} jardi"}
            }
        }
        light{
            lux{
                dnam{"lukss"}
                one{"{0} lukss"}
                other{"{0} luksi"}
                zero{"{0} luksi"}
            }
        }
        mass{
            carat{
                dnam{"karāti"}
                one{"{0} karāts"}
                other{"{0} karāti"}
                zero{"{0} karāti"}
            }
            gram{
                dnam{"grami"}
                one{"{0} grams"}
                other{"{0} grami"}
                per{"{0}/g"}
                zero{"{0} grami"}
            }
            kilogram{
                dnam{"kilogrami"}
                one{"{0} kilograms"}
                other{"{0} kilogrami"}
                per{"{0}/kg"}
                zero{"{0} kilogrami"}
            }
            metric-ton{
                dnam{"metriskās tonnas"}
                one{"{0} metriskā tonna"}
                other{"{0} metriskās tonnas"}
                zero{"{0} metriskās tonnas"}
            }
            microgram{
                dnam{"mikrogrami"}
                one{"{0} mikrograms"}
                other{"{0} mikrogrami"}
                zero{"{0} mikrogrami"}
            }
            milligram{
                dnam{"miligrami"}
                one{"{0} miligrams"}
                other{"{0} miligrami"}
                zero{"{0} miligrami"}
            }
            ounce{
                dnam{"unces"}
                one{"{0} unce"}
                other{"{0} unces"}
                per{"{0}/unce"}
                zero{"{0} unces"}
            }
            ounce-troy{
                dnam{"Trojas unces"}
                one{"{0} Trojas unce"}
                other{"{0} Trojas unces"}
                zero{"{0} Trojas unces"}
            }
            pound{
                dnam{"mārciņas"}
                one{"{0} mārciņa"}
                other{"{0} mārciņas"}
                per{"{0}/mārc."}
                zero{"{0} mārciņas"}
            }
            ton{
                dnam{"tonnas"}
                one{"{0} tonna"}
                other{"{0} tonnas"}
                zero{"{0} tonnas"}
            }
        }
        power{
            gigawatt{
                dnam{"gigavati"}
                one{"{0} gigavats"}
                other{"{0} gigavati"}
                zero{"{0} gigavati"}
            }
            horsepower{
                dnam{"zirgspēki"}
                one{"{0} zirgspēks"}
                other{"{0} zirgspēki"}
                zero{"{0} zirgspēki"}
            }
            kilowatt{
                dnam{"kilovati"}
                one{"{0} kilovats"}
                other{"{0} kilovati"}
                zero{"{0} kilovati"}
            }
            megawatt{
                dnam{"megavati"}
                one{"{0} megavats"}
                other{"{0} megavati"}
                zero{"{0} megavati"}
            }
            milliwatt{
                dnam{"milivati"}
                one{"{0} milivats"}
                other{"{0} milivati"}
                zero{"{0} milivati"}
            }
            watt{
                dnam{"vati"}
                one{"{0} vats"}
                other{"{0} vati"}
                zero{"{0} vati"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hektopaskāli"}
                one{"{0} hektopaskāls"}
                other{"{0} hektopaskāli"}
                zero{"{0} hektopaskāli"}
            }
            inch-hg{
                dnam{"dzīvsudraba staba collas"}
                one{"{0} dzīvsudraba staba colla"}
                other{"{0} dzīvsudraba staba collas"}
                zero{"{0} dzīvsudraba staba collas"}
            }
            millibar{
                dnam{"milibāri"}
                one{"{0} milibārs"}
                other{"{0} milibāri"}
                zero{"{0} milibāri"}
            }
            millimeter-of-mercury{
                dnam{"dzīvsudraba staba milimetri"}
                one{"{0} dzīvsudraba staba milimetrs"}
                other{"{0} dzīvsudraba staba milimetri"}
                zero{"{0} dzīvsudraba staba milimetri"}
            }
            pound-per-square-inch{
                dnam{"mārciņas uz kvadrātcollu"}
                one{"{0} mārciņa uz kvadrātcollu"}
                other{"{0} mārciņas uz kvadrātcollu"}
                zero{"{0} mārciņas uz kvadrātcollu"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilometri stundā"}
                one{"{0} kilometrs stundā"}
                other{"{0} kilometri stundā"}
                zero{"{0} kilometri stundā"}
            }
            knot{
                dnam{"mezgls"}
                one{"{0} mezgls"}
                other{"{0} mezgli"}
                zero{"{0} mezgli"}
            }
            meter-per-second{
                dnam{"metri sekundē"}
                one{"{0} metrs sekundē"}
                other{"{0} metri sekundē"}
                zero{"{0} metri sekundē"}
            }
            mile-per-hour{
                dnam{"jūdzes stundā"}
                one{"{0} jūdze stundā"}
                other{"{0} jūdzes stundā"}
                zero{"{0} jūdzes stundā"}
            }
        }
        temperature{
            celsius{
                dnam{"Celsija grādi"}
                one{"{0} Celsija grāds"}
                other{"{0} Celsija grādi"}
                zero{"{0} Celsija grādi"}
            }
            fahrenheit{
                dnam{"Fārenheita grādi"}
                one{"{0} Fārenheita grāds"}
                other{"{0} Fārenheita grādi"}
                zero{"{0} Fārenheita grādi"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
                zero{"{0}°"}
            }
            kelvin{
                dnam{"kelvini"}
                one{"{0} kelvins"}
                other{"{0} kelvini"}
                zero{"{0} kelvini"}
            }
        }
        volume{
            acre-foot{
                dnam{"akrpēdas"}
                one{"{0} akrpēda"}
                other{"{0} akrpēdas"}
                zero{"{0} akrpēdas"}
            }
            centiliter{
                dnam{"centilitri"}
                one{"{0} centilitrs"}
                other{"{0} centilitri"}
                zero{"{0} centilitri"}
            }
            cubic-centimeter{
                dnam{"kubikcentimetri"}
                one{"{0} kubikcentimetrs"}
                other{"{0} kubikcentimetri"}
                per{"{0} uz kubikcentimetru"}
                zero{"{0} kubikcentimetri"}
            }
            cubic-foot{
                dnam{"kubikpēdas"}
                one{"{0} kubikpēda"}
                other{"{0} kubikpēdas"}
                zero{"{0} kubikpēdas"}
            }
            cubic-inch{
                dnam{"kubikcollas"}
                one{"{0} kubikcolla"}
                other{"{0} kubikcollas"}
                zero{"{0} kubikcollas"}
            }
            cubic-kilometer{
                dnam{"kubikkilometri"}
                one{"{0} kubikkilometrs"}
                other{"{0} kubikkilometri"}
                zero{"{0} kubikkilometri"}
            }
            cubic-meter{
                dnam{"kubikmetri"}
                one{"{0} kubikmetrs"}
                other{"{0} kubikmetri"}
                per{"{0} uz kubikmetru"}
                zero{"{0} kubikmetri"}
            }
            cubic-mile{
                dnam{"kubikjūdzes"}
                one{"{0} kubikjūdze"}
                other{"{0} kubikjūdzes"}
                zero{"{0} kubikjūdzes"}
            }
            cubic-yard{
                dnam{"kubikjardi"}
                one{"{0} kubikjards"}
                other{"{0} kubikjardi"}
                zero{"{0} kubikjardi"}
            }
            cup{
                dnam{"glāzes"}
                one{"{0} glāze"}
                other{"{0} glāzes"}
                zero{"{0} glāzes"}
            }
            deciliter{
                dnam{"decilitri"}
                one{"{0} decilitrs"}
                other{"{0} decilitri"}
                zero{"{0} decilitri"}
            }
            fluid-ounce{
                dnam{"šķidruma unces"}
                one{"{0} šķidruma unce"}
                other{"{0} šķidruma unces"}
                zero{"{0} šķidruma unces"}
            }
            gallon{
                dnam{"galoni"}
                one{"{0} galons"}
                other{"{0} galoni"}
                per{"{0}/gal."}
                zero{"{0} galoni"}
            }
            hectoliter{
                dnam{"hektolitri"}
                one{"{0} hektolitrs"}
                other{"{0} hektolitri"}
                zero{"{0} hektolitri"}
            }
            liter{
                dnam{"litri"}
                one{"{0} litrs"}
                other{"{0} litri"}
                per{"{0} uz litru"}
                zero{"{0} litri"}
            }
            megaliter{
                dnam{"megalitri"}
                one{"{0} megalitrs"}
                other{"{0} megalitri"}
                zero{"{0} megalitri"}
            }
            milliliter{
                dnam{"mililitri"}
                one{"{0} mililitrs"}
                other{"{0} mililitri"}
                zero{"{0} mililitri"}
            }
            pint{
                dnam{"pintes"}
                one{"{0} pinte"}
                other{"{0} pintes"}
                zero{"{0} pintes"}
            }
            pint-metric{
                dnam{"metriskās pintes"}
                one{"{0} metriskā pinte"}
                other{"{0} metriskās pintes"}
                zero{"{0} metriskās pintes"}
            }
            quart{
                dnam{"kvartas"}
                one{"{0} kvarta"}
                other{"{0} kvartas"}
                zero{"{0} kvartas"}
            }
            tablespoon{
                dnam{"ēdamkarotes"}
                one{"{0} ēdamkarote"}
                other{"{0} ēdamkarotes"}
                zero{"{0} ēdamkarotes"}
            }
            teaspoon{
                dnam{"tējkarotes"}
                one{"{0} tējkarote"}
                other{"{0} tējkarotes"}
                zero{"{0} tējkarotes"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0}G"}
                other{"{0}G"}
                zero{"{0}G"}
            }
        }
        angle{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
                zero{"{0}′"}
            }
            arc-second{
                one{"{0}″"}
                other{"{0}″"}
                zero{"{0}″"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
                zero{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0}ac"}
                other{"{0}ac"}
                zero{"{0}ac"}
            }
            hectare{
                one{"{0}ha"}
                other{"{0}ha"}
                zero{"{0}ha"}
            }
            square-foot{
                one{"{0}ft²"}
                other{"{0}ft²"}
                zero{"{0}ft²"}
            }
            square-kilometer{
                one{"{0}km²"}
                other{"{0}km²"}
                zero{"{0}km²"}
            }
            square-meter{
                one{"{0}m²"}
                other{"{0}m²"}
                zero{"{0}m²"}
            }
            square-mile{
                one{"{0}mi²"}
                other{"{0}mi²"}
                zero{"{0}mi²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-100kilometers{
                dnam{"l/100 km"}
                one{"{0} l/100 km"}
                other{"{0} l/100 km"}
                zero{"{0} l/100 km"}
            }
        }
        coordinate{
            east{"{0}A"}
            north{"{0}Z"}
            south{"{0}D"}
            west{"{0}R"}
        }
        duration{
            day{
                dnam{"d."}
                one{"{0}d"}
                other{"{0}d"}
                zero{"{0}d"}
            }
            hour{
                dnam{"h"}
                one{"{0}h"}
                other{"{0}h"}
                zero{"{0}h"}
            }
            millisecond{
                dnam{"ms"}
                one{"{0}ms"}
                other{"{0}ms"}
                zero{"{0}ms"}
            }
            minute{
                dnam{"min"}
                one{"{0} min"}
                other{"{0} min"}
                zero{"{0} min"}
            }
            month{
                dnam{"mēn."}
                one{"{0} mēn."}
                other{"{0} mēn."}
                zero{"{0} mēn."}
            }
            second{
                dnam{"s"}
                one{"{0}s"}
                other{"{0}s"}
                zero{"{0}s"}
            }
            week{
                dnam{"ned."}
                one{"{0} ned."}
                other{"{0} ned."}
                zero{"{0} ned."}
            }
            year{
                dnam{"g."}
                one{"{0}g."}
                other{"{0}g."}
                zero{"{0}g."}
            }
        }
        length{
            centimeter{
                dnam{"cm"}
                one{"{0}cm"}
                other{"{0}cm"}
                zero{"{0}cm"}
            }
            foot{
                one{"{0}ft"}
                other{"{0}ft"}
                zero{"{0}ft"}
            }
            inch{
                one{"{0}in"}
                other{"{0}in"}
                zero{"{0}in"}
            }
            kilometer{
                dnam{"km"}
                one{"{0}km"}
                other{"{0}km"}
                zero{"{0}km"}
            }
            light-year{
                dnam{"g.g."}
                one{"{0}g.g."}
                other{"{0}g.g."}
                zero{"{0}g.g."}
            }
            meter{
                dnam{"m"}
                one{"{0}m"}
                other{"{0}m"}
                zero{"{0}m"}
            }
            mile{
                one{"{0}mi"}
                other{"{0}mi"}
                zero{"{0}mi"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0}mm"}
                other{"{0}mm"}
                zero{"{0}mm"}
            }
            picometer{
                one{"{0}pm"}
                other{"{0}pm"}
                zero{"{0}pm"}
            }
            yard{
                one{"{0}yd"}
                other{"{0}yd"}
                zero{"{0}yd"}
            }
        }
        mass{
            gram{
                dnam{"g"}
                one{"{0}g"}
                other{"{0}g"}
                zero{"{0}g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0}kg"}
                other{"{0}kg"}
                zero{"{0}kg"}
            }
            ounce{
                one{"{0}oz"}
                other{"{0}oz"}
                zero{"{0}oz"}
            }
            pound{
                one{"{0}lb"}
                other{"{0}lb"}
                zero{"{0}lb"}
            }
        }
        power{
            horsepower{
                one{"{0} ZS"}
                other{"{0} ZS"}
                zero{"{0} ZS"}
            }
            kilowatt{
                one{"{0}kW"}
                other{"{0}kW"}
                zero{"{0}kW"}
            }
            watt{
                one{"{0}W"}
                other{"{0}W"}
                zero{"{0}W"}
            }
        }
        pressure{
            hectopascal{
                one{"{0}hPa"}
                other{"{0}hPa"}
                zero{"{0}hPa"}
            }
            inch-hg{
                one{"{0}inHg"}
                other{"{0}inHg"}
                zero{"{0}inHg"}
            }
            millibar{
                one{"{0}mbar"}
                other{"{0}mbar"}
                zero{"{0}mbar"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                one{"{0}km/h"}
                other{"{0}km/h"}
                zero{"{0}km/h"}
            }
            meter-per-second{
                one{"{0}m/s"}
                other{"{0}m/s"}
                zero{"{0}m/s"}
            }
            mile-per-hour{
                one{"{0}mi/h"}
                other{"{0}mi/h"}
                zero{"{0}mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0} °C"}
                other{"{0} °C"}
                zero{"{0} °C"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
                zero{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0}km³"}
                other{"{0}km³"}
                zero{"{0}km³"}
            }
            cubic-mile{
                one{"{0}mi³"}
                other{"{0}mi³"}
                zero{"{0}mi³"}
            }
            liter{
                dnam{"l"}
                one{"{0}l"}
                other{"{0}l"}
                zero{"{0}l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"Brīvās krišanas paātrinājums:"}
                one{"{0} G"}
                other{"{0} G"}
                zero{"{0} G"}
            }
            meter-per-second-squared{
                dnam{"m/s²"}
                one{"{0} m/s²"}
                other{"{0} m/s²"}
                zero{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"′"}
                one{"{0}′"}
                other{"{0}′"}
                zero{"{0}′"}
            }
            arc-second{
                dnam{"″"}
                one{"{0}″"}
                other{"{0}″"}
                zero{"{0}″"}
            }
            degree{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
                zero{"{0}°"}
            }
            radian{
                dnam{"rad"}
                one{"{0} rad"}
                other{"{0} rad"}
                zero{"{0} rad"}
            }
            revolution{
                dnam{"apgr."}
                one{"{0} apgr."}
                other{"{0} apgr."}
                zero{"{0} apgr."}
            }
        }
        area{
            acre{
                dnam{"ac"}
                one{"{0} ac"}
                other{"{0} ac"}
                zero{"{0} ac"}
            }
            hectare{
                dnam{"ha"}
                one{"{0} ha"}
                other{"{0} ha"}
                zero{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                one{"{0} cm²"}
                other{"{0} cm²"}
                per{"{0} uz cm²"}
                zero{"{0} cm²"}
            }
            square-foot{
                dnam{"ft²"}
                one{"{0} ft²"}
                other{"{0} ft²"}
                zero{"{0} ft²"}
            }
            square-inch{
                dnam{"in²"}
                one{"{0} in²"}
                other{"{0} in²"}
                per{"{0} uz collu²"}
                zero{"{0} in²"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0} km²"}
                other{"{0} km²"}
                zero{"{0} km²"}
            }
            square-meter{
                dnam{"m²"}
                one{"{0} m²"}
                other{"{0} m²"}
                per{"{0} uz m²"}
                zero{"{0} m²"}
            }
            square-mile{
                dnam{"mi²"}
                one{"{0} mi²"}
                other{"{0} mi²"}
                zero{"{0} mi²"}
            }
            square-yard{
                dnam{"yd²"}
                one{"{0} yd²"}
                other{"{0} yd²"}
                zero{"{0} yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        concentr{
            karat{
                dnam{"kt"}
                one{"{0} kt"}
                other{"{0} kt"}
                zero{"{0} kt"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"l/100 km"}
                one{"{0} l/100 km"}
                other{"{0} l/100 km"}
                zero{"{0} l/100 km"}
            }
            liter-per-kilometer{
                dnam{"l/km"}
                one{"{0} l/km"}
                other{"{0} l/km"}
                zero{"{0} l/km"}
            }
            mile-per-gallon{
                dnam{"mpg"}
                one{"{0} mpg"}
                other{"{0} mpg"}
                zero{"{0} mpg"}
            }
        }
        coordinate{
            east{"{0}A"}
            north{"{0}Z"}
            south{"{0}D"}
            west{"{0}R"}
        }
        digital{
            bit{
                dnam{"b"}
                one{"{0} b"}
                other{"{0} b"}
                zero{"{0} b"}
            }
            byte{
                dnam{"B"}
                one{"{0} B"}
                other{"{0} B"}
                zero{"{0} B"}
            }
            gigabit{
                dnam{"Gb"}
                one{"{0} Gb"}
                other{"{0} Gb"}
                zero{"{0} Gb"}
            }
            gigabyte{
                dnam{"GB"}
                one{"{0} GB"}
                other{"{0} GB"}
                zero{"{0} GB"}
            }
            kilobit{
                dnam{"Kb"}
                one{"{0} Kb"}
                other{"{0} Kb"}
                zero{"{0} Kb"}
            }
            kilobyte{
                dnam{"KB"}
                one{"{0} KB"}
                other{"{0} KB"}
                zero{"{0} KB"}
            }
            megabit{
                dnam{"Mb"}
                one{"{0} Mb"}
                other{"{0} Mb"}
                zero{"{0} Mb"}
            }
            megabyte{
                dnam{"MB"}
                one{"{0} MB"}
                other{"{0} MB"}
                zero{"{0} MB"}
            }
            terabit{
                dnam{"Tb"}
                one{"{0} Tb"}
                other{"{0} Tb"}
                zero{"{0} Tb"}
            }
            terabyte{
                dnam{"TB"}
                one{"{0} TB"}
                other{"{0} TB"}
                zero{"{0} TB"}
            }
        }
        duration{
            century{
                dnam{"gs."}
                one{"{0} gs."}
                other{"{0} gs."}
                zero{"{0} gs."}
            }
            day{
                dnam{"d."}
                one{"{0} d."}
                other{"{0} d."}
                per{"{0}/d."}
                zero{"{0} d."}
            }
            hour{
                dnam{"st."}
                one{"{0} st."}
                other{"{0} st."}
                per{"{0}/st."}
                zero{"{0} st."}
            }
            microsecond{
                dnam{"μs"}
                one{"{0} μs"}
                other{"{0} μs"}
                zero{"{0} μs"}
            }
            millisecond{
                dnam{"ms"}
                one{"{0} ms"}
                other{"{0} ms"}
                zero{"{0} ms"}
            }
            minute{
                dnam{"min."}
                one{"{0} min."}
                other{"{0} min."}
                per{"{0}/min."}
                zero{"{0} min."}
            }
            month{
                dnam{"mēneši"}
                one{"{0} mēn."}
                other{"{0} mēn."}
                per{"{0}/mēn."}
                zero{"{0} mēn."}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0} ns"}
                other{"{0} ns"}
                zero{"{0} ns"}
            }
            second{
                dnam{"sek."}
                one{"{0} sek."}
                other{"{0} sek."}
                per{"{0}/sek."}
                zero{"{0} sek."}
            }
            week{
                dnam{"ned."}
                one{"{0} ned."}
                other{"{0} ned."}
                per{"{0}/ned."}
                zero{"{0} ned."}
            }
            year{
                dnam{"g."}
                one{"{0} g."}
                other{"{0} g."}
                per{"{0}/g."}
                zero{"{0} g."}
            }
        }
        electric{
            ampere{
                dnam{"A"}
                one{"{0} A"}
                other{"{0} A"}
                zero{"{0} A"}
            }
            milliampere{
                dnam{"mA"}
                one{"{0} mA"}
                other{"{0} mA"}
                zero{"{0} mA"}
            }
            ohm{
                dnam{"Ω"}
                one{"{0} Ω"}
                other{"{0} Ω"}
                zero{"{0} Ω"}
            }
            volt{
                dnam{"V"}
                one{"{0} V"}
                other{"{0} V"}
                zero{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"cal"}
                one{"{0} cal"}
                other{"{0} cal"}
                zero{"{0} cal"}
            }
            foodcalorie{
                dnam{"cal"}
                one{"{0} cal"}
                other{"{0} cal"}
                zero{"{0} cal"}
            }
            joule{
                dnam{"J"}
                one{"{0} J"}
                other{"{0} J"}
                zero{"{0} J"}
            }
            kilocalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
                zero{"{0} kcal"}
            }
            kilojoule{
                dnam{"kJ"}
                one{"{0} kJ"}
                other{"{0} kJ"}
                zero{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kWh"}
                one{"{0} kWh"}
                other{"{0} kWh"}
                zero{"{0} kWh"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GHz"}
                one{"{0} GHz"}
                other{"{0} GHz"}
                zero{"{0} GHz"}
            }
            hertz{
                dnam{"Hz"}
                one{"{0} Hz"}
                other{"{0} Hz"}
                zero{"{0} Hz"}
            }
            kilohertz{
                dnam{"kHz"}
                one{"{0} kHz"}
                other{"{0} kHz"}
                zero{"{0} kHz"}
            }
            megahertz{
                dnam{"MHz"}
                one{"{0} MHz"}
                other{"{0} MHz"}
                zero{"{0} MHz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"a.v."}
                one{"{0} a.v."}
                other{"{0} a.v."}
                zero{"{0} a.v."}
            }
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
                per{"{0}/cm"}
                zero{"{0} cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
                zero{"{0} dm"}
            }
            foot{
                dnam{"ft"}
                one{"{0} ft"}
                other{"{0} ft"}
                per{"{0}/pēda"}
                zero{"{0} ft"}
            }
            inch{
                dnam{"c."}
                one{"{0} c."}
                other{"{0} c."}
                per{"{0}/colla"}
                zero{"{0} c."}
            }
            kilometer{
                dnam{"kilometri"}
                one{"{0} km"}
                other{"{0} km"}
                per{"{0}/km"}
                zero{"{0} km"}
            }
            light-year{
                dnam{"g.g."}
                one{"{0} g.g."}
                other{"{0} g.g."}
                zero{"{0} g.g."}
            }
            meter{
                dnam{"m"}
                one{"{0} m"}
                other{"{0} m"}
                per{"{0}/m"}
                zero{"{0} m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
                zero{"{0} µm"}
            }
            mile{
                dnam{"mi"}
                one{"{0} mi"}
                other{"{0} mi"}
                zero{"{0} mi"}
            }
            mile-scandinavian{
                dnam{"skandināvu jūdze"}
                one{"{0} skandināvu jūdze"}
                other{"{0} skandināvu jūdzes"}
                zero{"{0} skandināvu jūdzes"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
                zero{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                one{"{0} nm"}
                other{"{0} nm"}
                zero{"{0} nm"}
            }
            nautical-mile{
                dnam{"nmi"}
                one{"{0} nmi"}
                other{"{0} nmi"}
                zero{"{0} nmi"}
            }
            parsec{
                dnam{"pc"}
                one{"{0} pc"}
                other{"{0} pc"}
                zero{"{0} pc"}
            }
            picometer{
                dnam{"pm"}
                one{"{0} pm"}
                other{"{0} pm"}
                zero{"{0} pm"}
            }
            yard{
                dnam{"yd"}
                one{"{0} yd"}
                other{"{0} yd"}
                zero{"{0} yd"}
            }
        }
        light{
            lux{
                dnam{"lx"}
                one{"{0} lx"}
                other{"{0} lx"}
                zero{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"CD"}
                one{"{0} CD"}
                other{"{0} CD"}
                zero{"{0} CD"}
            }
            gram{
                dnam{"g"}
                one{"{0} g"}
                other{"{0} g"}
                per{"{0}/g"}
                zero{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
                per{"{0}/kg"}
                zero{"{0} kg"}
            }
            metric-ton{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
                zero{"{0} t"}
            }
            microgram{
                dnam{"µg"}
                one{"{0} µg"}
                other{"{0} µg"}
                zero{"{0} µg"}
            }
            milligram{
                dnam{"mg"}
                one{"{0} mg"}
                other{"{0} mg"}
                zero{"{0} mg"}
            }
            ounce{
                dnam{"oz"}
                one{"{0} oz"}
                other{"{0} oz"}
                per{"{0}/unce"}
                zero{"{0} oz"}
            }
            ounce-troy{
                dnam{"oz t"}
                one{"{0} oz t"}
                other{"{0} oz t"}
                zero{"{0} oz t"}
            }
            pound{
                dnam{"lb"}
                one{"{0} lb"}
                other{"{0} lb"}
                per{"{0}/mārc."}
                zero{"{0} lb"}
            }
            ton{
                dnam{"tonnas"}
                one{"{0} tonna"}
                other{"{0} tonnas"}
                zero{"{0} tonnas"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
                zero{"{0} GW"}
            }
            horsepower{
                dnam{"ZS"}
                one{"{0} ZS"}
                other{"{0} ZS"}
                zero{"{0} ZS"}
            }
            kilowatt{
                dnam{"kW"}
                one{"{0} kW"}
                other{"{0} kW"}
                zero{"{0} kW"}
            }
            megawatt{
                dnam{"MW"}
                one{"{0} MW"}
                other{"{0} MW"}
                zero{"{0} MW"}
            }
            milliwatt{
                dnam{"mW"}
                one{"{0} mW"}
                other{"{0} mW"}
                zero{"{0} mW"}
            }
            watt{
                dnam{"W"}
                one{"{0} W"}
                other{"{0} W"}
                zero{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                one{"{0} hPa"}
                other{"{0} hPa"}
                zero{"{0} hPa"}
            }
            inch-hg{
                dnam{"inHg"}
                one{"{0} inHg"}
                other{"{0} inHg"}
                zero{"{0} inHg"}
            }
            millibar{
                dnam{"mbar"}
                one{"{0} mbar"}
                other{"{0} mbar"}
                zero{"{0} mbar"}
            }
            millimeter-of-mercury{
                dnam{"mmHg"}
                one{"{0} mmHg"}
                other{"{0} mmHg"}
                zero{"{0} mmHg"}
            }
            pound-per-square-inch{
                dnam{"psi"}
                one{"{0} psi"}
                other{"{0} psi"}
                zero{"{0} psi"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/st."}
                one{"{0} km/st."}
                other{"{0} km/st."}
                zero{"{0} km/st."}
            }
            knot{
                dnam{"mezgls"}
                one{"{0} mezgls"}
                other{"{0} mezgli"}
                zero{"{0} mezgli"}
            }
            meter-per-second{
                dnam{"m/s"}
                one{"{0} m/s"}
                other{"{0} m/s"}
                zero{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"mi/h"}
                one{"{0} mi/h"}
                other{"{0} mi/h"}
                zero{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0} °C"}
                other{"{0} °C"}
                zero{"{0} °C"}
            }
            fahrenheit{
                dnam{"°F"}
                one{"{0} °F"}
                other{"{0} °F"}
                zero{"{0} °F"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
                zero{"{0}°"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
                zero{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"ac ft"}
                one{"{0} ac ft"}
                other{"{0} ac ft"}
                zero{"{0} ac ft"}
            }
            centiliter{
                dnam{"cl"}
                one{"{0} cl"}
                other{"{0} cl"}
                zero{"{0} cl"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0} cm³"}
                other{"{0} cm³"}
                per{"{0}/cm³"}
                zero{"{0} cm³"}
            }
            cubic-foot{
                dnam{"ft³"}
                one{"{0} ft³"}
                other{"{0} ft³"}
                zero{"{0} ft³"}
            }
            cubic-inch{
                dnam{"in³"}
                one{"{0} in³"}
                other{"{0} in³"}
                zero{"{0} in³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0} km³"}
                other{"{0} km³"}
                zero{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0} m³"}
                other{"{0} m³"}
                per{"{0}/m³"}
                zero{"{0} m³"}
            }
            cubic-mile{
                dnam{"mi³"}
                one{"{0} mi³"}
                other{"{0} mi³"}
                zero{"{0} mi³"}
            }
            cubic-yard{
                dnam{"yd³"}
                one{"{0} yd³"}
                other{"{0} yd³"}
                zero{"{0} yd³"}
            }
            cup{
                dnam{"gl."}
                one{"{0} gl."}
                other{"{0} gl."}
                zero{"{0} gl."}
            }
            cup-metric{
                dnam{"metr.gl."}
                one{"{0} metr.gl."}
                other{"{0} metr.gl."}
                zero{"{0} metr.gl."}
            }
            deciliter{
                dnam{"dl"}
                one{"{0} dl"}
                other{"{0} dl"}
                zero{"{0} dl"}
            }
            fluid-ounce{
                dnam{"fl oz"}
                one{"{0} fl oz"}
                other{"{0} fl oz"}
                zero{"{0} fl oz"}
            }
            gallon{
                dnam{"gal"}
                one{"{0} gal"}
                other{"{0} gal"}
                per{"{0}/gal."}
                zero{"{0} gal"}
            }
            hectoliter{
                dnam{"hl"}
                one{"{0} hl"}
                other{"{0} hl"}
                zero{"{0} hl"}
            }
            liter{
                dnam{"l"}
                one{"{0} l"}
                other{"{0} l"}
                per{"{0}/l"}
                zero{"{0} l"}
            }
            megaliter{
                dnam{"ML"}
                one{"{0} ML"}
                other{"{0} ML"}
                zero{"{0} ML"}
            }
            milliliter{
                dnam{"ml"}
                one{"{0} ml"}
                other{"{0} ml"}
                zero{"{0} ml"}
            }
            pint{
                dnam{"pt"}
                one{"{0} pt"}
                other{"{0} pt"}
                zero{"{0} pt"}
            }
            pint-metric{
                dnam{"mpt"}
                one{"{0} mpt"}
                other{"{0} mpt"}
                zero{"{0} mpt"}
            }
            quart{
                dnam{"qt"}
                one{"{0} qt"}
                other{"{0} qt"}
                zero{"{0} qt"}
            }
            tablespoon{
                dnam{"ĒK"}
                one{"{0} ĒK"}
                other{"{0} ĒK"}
                zero{"{0} ĒK"}
            }
            teaspoon{
                dnam{"TK"}
                one{"{0} TK"}
                other{"{0} TK"}
                zero{"{0} TK"}
            }
        }
    }
}
