﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
se{
    Version{"2.1.37.1"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"Maapallo gravitaatiovoimat"}
                one{"{0} Maapallo gravitaatiovoima"}
                other{"{0} Maapallo gravitaatiovoimat"}
                two{"{0} Maapallo gravitaatiovoimat"}
            }
        }
        angle{
            arc-minute{
                dnam{"jorbbas minuhtta"}
                one{"{0} jorbbas minuhta"}
                other{"{0} jorbbas minuhtta"}
                two{"{0} jorbbas minuhtta"}
            }
            arc-second{
                dnam{"jorbbas sekundda"}
                one{"{0} jorbbas sekunda"}
                other{"{0} jorbbas sekundda"}
                two{"{0} jorbbas sekundda"}
            }
            degree{
                dnam{"grádat"}
                one{"{0} grádat"}
                other{"{0} grádat"}
                two{"{0} grádat"}
            }
        }
        area{
            acre{
                dnam{"Amerihká tynnyrinala"}
                one{"{0} Amerihká tynnyrinala"}
                other{"{0} Amerihká tynnyrinala"}
                two{"{0} Amerihká tynnyrinala"}
            }
            hectare{
                dnam{"hehtaaria"}
                one{"{0} hehtaari"}
                other{"{0} hehtaaria"}
                two{"{0} hehtaaria"}
            }
            square-foot{
                dnam{"neliöjuolgi"}
                one{"{0} neliöjuolgi"}
                other{"{0} neliöjuolgi"}
                two{"{0} neliöjuolgi"}
            }
            square-kilometer{
                dnam{"neliökilomehtera"}
                one{"{0} neliökilomehter"}
                other{"{0} neliökilomehtera"}
                two{"{0} neliökilomehtera"}
            }
            square-meter{
                dnam{"neliömehtera"}
                one{"{0} neliömehter"}
                other{"{0} neliömehtera"}
                two{"{0} neliömehtera"}
            }
            square-mile{
                dnam{"eangas neliömiila"}
                one{"{0} eangas neliömiil"}
                other{"{0} eangas neliömiila"}
                two{"{0} eangas neliömiila"}
            }
        }
        compound{
            per{"{0} juohke {1}"}
        }
        duration{
            day{
                dnam{"jándora"}
                one{"{0} jándor"}
                other{"{0} jándora"}
                two{"{0} jándora"}
            }
            hour{
                dnam{"diibmur"}
                one{"{0} diibmu"}
                other{"{0} diibmur"}
                two{"{0} diimmur"}
            }
            millisecond{
                dnam{"millisekundda"}
                one{"{0} millisekunda"}
                other{"{0} millisekundda"}
                two{"{0} millisekundda"}
            }
            minute{
                dnam{"minuhtta"}
                one{"{0} minuhta"}
                other{"{0} minuhtta"}
                two{"{0} minuhtta"}
            }
            month{
                dnam{"mánotbadji"}
                one{"{0} mánotbadji"}
                other{"{0} mánotbadji"}
                two{"{0} mánotbaji"}
            }
            second{
                dnam{"sekundda"}
                one{"{0} sekunda"}
                other{"{0} sekundda"}
                two{"{0} sekundda"}
            }
            week{
                dnam{"váhkku"}
                one{"{0} váhku"}
                other{"{0} váhkku"}
                two{"{0} váhkku"}
            }
            year{
                dnam{"jahkki"}
                one{"{0} jahki"}
                other{"{0} jahkki"}
                two{"{0} jahkki"}
            }
        }
        length{
            centimeter{
                dnam{"sentimehtera"}
                one{"{0} sentimehter"}
                other{"{0} sentimehtera"}
                two{"{0} sentimehtera"}
            }
            foot{
                dnam{"juolgi"}
                one{"{0} juolgi"}
                other{"{0} juolgi"}
                two{"{0} juolgi"}
            }
            inch{
                dnam{"bealgi"}
                one{"{0} bealgi"}
                other{"{0} bealgi"}
                two{"{0} bealgi"}
            }
            kilometer{
                dnam{"kilomehtera"}
                one{"{0} kilomehter"}
                other{"{0} kilomehtera"}
                two{"{0} kilomehtera"}
            }
            light-year{
                dnam{"chuovgat jagi"}
                one{"{0} chuovgat jagi"}
                other{"{0} chuovgat jagi"}
                two{"{0} chuovgat jagi"}
            }
            meter{
                dnam{"mehtera"}
                one{"{0} mehter"}
                other{"{0} mehtera"}
                two{"{0} mehtera"}
            }
            mile{
                dnam{"eangas miila"}
                one{"{0} eangas miil"}
                other{"{0} eangas miila"}
                two{"{0} eangas miila"}
            }
            millimeter{
                dnam{"millimehtera"}
                one{"{0} millimehter"}
                other{"{0} millimehtera"}
                two{"{0} millimehtera"}
            }
            picometer{
                dnam{"pikomehtera"}
                one{"{0} pikomehter"}
                other{"{0} pikomehtera"}
                two{"{0} pikomehtera"}
            }
            yard{
                dnam{"eangas yard"}
                one{"{0} eangas yard"}
                other{"{0} eangas yard"}
                two{"{0} eangas yard"}
            }
        }
        mass{
            gram{
                dnam{"gram"}
                one{"{0} gram"}
                other{"{0} gram"}
                two{"{0} gram"}
            }
            kilogram{
                dnam{"kilogram"}
                one{"{0} kilogram"}
                other{"{0} kilogram"}
                two{"{0} kilogram"}
            }
            ounce{
                dnam{"unssi"}
                one{"{0} unssi"}
                other{"{0} unssi"}
                two{"{0} unssi"}
            }
            pound{
                dnam{"pauna"}
                one{"{0} pauna"}
                other{"{0} pauna"}
                two{"{0} pauna"}
            }
        }
        power{
            horsepower{
                dnam{"hevosvoima"}
                one{"{0} hevosvoima"}
                other{"{0} hevosvoima"}
                two{"{0} hevosvoima"}
            }
            kilowatt{
                dnam{"kilowatt"}
                one{"{0} kilowatt"}
                other{"{0} kilowatt"}
                two{"{0} kilowatt"}
            }
            watt{
                dnam{"watt"}
                one{"{0} watt"}
                other{"{0} watt"}
                two{"{0} watt"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hehtopascal"}
                one{"{0} hehtopascal"}
                other{"{0} hehtopascal"}
                two{"{0} hehtopascal"}
            }
            inch-hg{
                dnam{"bealgi kvikksølv"}
                one{"{0} bealgi kvikksølv"}
                other{"{0} bealgi kvikksølv"}
                two{"{0} bealgi kvikksølv"}
            }
            millibar{
                dnam{"millibar"}
                one{"{0} millibar"}
                other{"{0} millibar"}
                two{"{0} millibar"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilomehtera kohti diibmu"}
                one{"{0} kilomehter kohti diibmu"}
                other{"{0} kilomehtera kohti diibmu"}
                two{"{0} kilomehtera kohti diibmu"}
            }
            meter-per-second{
                dnam{"mehtera kohti sekunti"}
                one{"{0} mehter kohti sekunti"}
                other{"{0} mehtera kohti sekunti"}
                two{"{0} mehtera kohti sekunti"}
            }
            mile-per-hour{
                dnam{"eangas miila kohti diibmu"}
                one{"{0} eangas miil kohti diibmu"}
                other{"{0} eangas miila kohti diibmu"}
                two{"{0} eangas miila kohti diibmu"}
            }
        }
        temperature{
            celsius{
                dnam{"grádat Celsius"}
                one{"{0} grádat Celsius"}
                other{"{0} grádat Celsius"}
                two{"{0} grádat Celsius"}
            }
            fahrenheit{
                dnam{"grádat Fahrenheit"}
                one{"{0} grádat Fahrenheit"}
                other{"{0} grádat Fahrenheit"}
                two{"{0} grádat Fahrenheit"}
            }
        }
        volume{
            cubic-kilometer{
                dnam{"kubikkilomehtera"}
                one{"{0} kubikkilomehter"}
                other{"{0} kubikkilomehtera"}
                two{"{0} kubikkilomehtera"}
            }
            cubic-mile{
                dnam{"eangas kubikkmiila"}
                one{"{0} eangas kubikkmiil"}
                other{"{0} eangas kubikkmiila"}
                two{"{0} eangas kubikkmiila"}
            }
            liter{
                dnam{"lihtara"}
                one{"{0} lihtar"}
                other{"{0} lihtara"}
                two{"{0} lihtara"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0}G"}
                other{"{0}G"}
                two{"{0}G"}
            }
        }
        angle{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
                two{"{0}′"}
            }
            arc-second{
                one{"{0}″"}
                other{"{0}″"}
                two{"{0}″"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
                two{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0} ac"}
                other{"{0} ac"}
                two{"{0} ac"}
            }
            hectare{
                one{"{0}ha"}
                other{"{0}ha"}
                two{"{0}ha"}
            }
            square-foot{
                one{"{0} ft²"}
                other{"{0} ft²"}
                two{"{0} ft²"}
            }
            square-kilometer{
                one{"{0}km²"}
                other{"{0}km²"}
                two{"{0}km²"}
            }
            square-meter{
                one{"{0}m²"}
                other{"{0}m²"}
                two{"{0}m²"}
            }
            square-mile{
                one{"{0} mi²"}
                other{"{0} mi²"}
                two{"{0} mi²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                one{"{0}d"}
                other{"{0}d"}
                two{"{0}d"}
            }
            hour{
                one{"{0}h"}
                other{"{0}h"}
                two{"{0}h"}
            }
            millisecond{
                one{"{0}ms"}
                other{"{0}ms"}
                two{"{0}ms"}
            }
            minute{
                one{"{0}m"}
                other{"{0}m"}
                two{"{0}m"}
            }
            month{
                one{"{0}m"}
                other{"{0}m"}
                two{"{0}m"}
            }
            second{
                one{"{0}s"}
                other{"{0}s"}
                two{"{0}s"}
            }
            week{
                one{"{0}v"}
                other{"{0}v"}
                two{"{0}v"}
            }
            year{
                one{"{0}j"}
                other{"{0}j"}
                two{"{0}j"}
            }
        }
        length{
            centimeter{
                one{"{0}cm"}
                other{"{0}cm"}
                two{"{0}cm"}
            }
            foot{
                one{"{0} juolgi"}
                other{"{0} juolgi"}
                two{"{0} juolgi"}
            }
            inch{
                one{"{0} bealgi"}
                other{"{0} bealgi"}
                two{"{0} bealgi"}
            }
            kilometer{
                one{"{0}km"}
                other{"{0}km"}
                two{"{0}km"}
            }
            light-year{
                one{"{0} ly"}
                other{"{0} ly"}
                two{"{0} ly"}
            }
            meter{
                one{"{0}m"}
                other{"{0}m"}
                two{"{0}m"}
            }
            mile{
                one{"{0} mi"}
                other{"{0} mi"}
                two{"{0} mi"}
            }
            millimeter{
                one{"{0}mm"}
                other{"{0}mm"}
                two{"{0}mm"}
            }
            picometer{
                one{"{0}pm"}
                other{"{0}pm"}
                two{"{0}pm"}
            }
            yard{
                one{"{0} yd"}
                other{"{0} yd"}
                two{"{0} yd"}
            }
        }
        mass{
            gram{
                one{"{0}g"}
                other{"{0}g"}
                two{"{0}g"}
            }
            kilogram{
                one{"{0}kg"}
                other{"{0}kg"}
                two{"{0}kg"}
            }
            ounce{
                one{"{0} unssi"}
                other{"{0} unssi"}
                two{"{0} unssi"}
            }
            pound{
                one{"{0} pauna"}
                other{"{0} pauna"}
                two{"{0} pauna"}
            }
        }
        power{
            horsepower{
                one{"{0}hv"}
                other{"{0}hv"}
                two{"{0}hv"}
            }
            kilowatt{
                one{"{0}kW"}
                other{"{0}kW"}
                two{"{0}kW"}
            }
            watt{
                one{"{0}W"}
                other{"{0}W"}
                two{"{0}W"}
            }
        }
        pressure{
            hectopascal{
                one{"{0}hPa"}
                other{"{0}hPa"}
                two{"{0}hPa"}
            }
            inch-hg{
                one{"{0} bealgi Hg"}
                other{"{0} bealgi Hg"}
                two{"{0} bealgi Hg"}
            }
            millibar{
                one{"{0}mbar"}
                other{"{0}mbar"}
                two{"{0}mbar"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0}km/h"}
                other{"{0}km/h"}
                two{"{0}km/h"}
            }
            meter-per-second{
                one{"{0}m/s"}
                other{"{0}m/s"}
                two{"{0}m/s"}
            }
            mile-per-hour{
                one{"{0} mi/h"}
                other{"{0} mi/h"}
                two{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                one{"{0}°"}
                other{"{0}°"}
                two{"{0}°"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
                two{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0}km³"}
                other{"{0}km³"}
                two{"{0}km³"}
            }
            cubic-mile{
                one{"{0} mi³"}
                other{"{0} mi³"}
                two{"{0} mi³"}
            }
            liter{
                one{"{0}L"}
                other{"{0}L"}
                two{"{0}L"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"Maapallo gravitaatiovoimat"}
                one{"{0} G"}
                other{"{0} G"}
                two{"{0} G"}
            }
        }
        angle{
            arc-minute{
                dnam{"jorbbas minuhtta"}
                one{"{0}′"}
                other{"{0}′"}
                two{"{0}′"}
            }
            arc-second{
                dnam{"jorbbas sekundda"}
                one{"{0}″"}
                other{"{0}″"}
                two{"{0}″"}
            }
            degree{
                dnam{"grádat"}
                one{"{0}°"}
                other{"{0}°"}
                two{"{0}°"}
            }
        }
        area{
            acre{
                dnam{"Amerihká tynnyrinala"}
                one{"{0} ac"}
                other{"{0} ac"}
                two{"{0} ac"}
            }
            hectare{
                dnam{"hehtaaria"}
                one{"{0} ha"}
                other{"{0} ha"}
                two{"{0} ha"}
            }
            square-foot{
                dnam{"neliöjuolgi"}
                one{"{0} ft²"}
                other{"{0} ft²"}
                two{"{0} ft²"}
            }
            square-kilometer{
                dnam{"neliökilomehtera"}
                one{"{0} km²"}
                other{"{0} km²"}
                two{"{0} km²"}
            }
            square-meter{
                dnam{"neliömehtera"}
                one{"{0} m²"}
                other{"{0} m²"}
                two{"{0} m²"}
            }
            square-mile{
                dnam{"eangas neliömiila"}
                one{"{0} mi²"}
                other{"{0} mi²"}
                two{"{0} mi²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                dnam{"jándora"}
                one{"{0} d"}
                other{"{0} d"}
                two{"{0} d"}
            }
            hour{
                dnam{"diibmur"}
                one{"{0} h"}
                other{"{0} h"}
                two{"{0} h"}
            }
            millisecond{
                dnam{"millisekundda"}
                one{"{0} ms"}
                other{"{0} ms"}
                two{"{0} ms"}
            }
            minute{
                dnam{"minuhtta"}
                one{"{0} min"}
                other{"{0} min"}
                two{"{0} min"}
            }
            month{
                dnam{"mánotbadji"}
                one{"{0} mán"}
                other{"{0} mán"}
                two{"{0} mán"}
            }
            second{
                dnam{"sekundda"}
                one{"{0} s"}
                other{"{0} s"}
                two{"{0} s"}
            }
            week{
                dnam{"váhkku"}
                one{"{0} v"}
                other{"{0} v"}
                two{"{0} v"}
            }
            year{
                dnam{"jahkki"}
                one{"{0} jah"}
                other{"{0} jah"}
                two{"{0} jah"}
            }
        }
        length{
            centimeter{
                dnam{"sentimehtera"}
                one{"{0} cm"}
                other{"{0} cm"}
                two{"{0} cm"}
            }
            foot{
                dnam{"juolgi"}
                one{"{0} juolgi"}
                other{"{0} juolgi"}
                two{"{0} juolgi"}
            }
            inch{
                dnam{"bealgi"}
                one{"{0} bealgi"}
                other{"{0} bealgi"}
                two{"{0} bealgi"}
            }
            kilometer{
                dnam{"kilomehtera"}
                one{"{0} km"}
                other{"{0} km"}
                two{"{0} km"}
            }
            light-year{
                dnam{"chuovgat jagi"}
                one{"{0} ly"}
                other{"{0} ly"}
                two{"{0} ly"}
            }
            meter{
                dnam{"mehtera"}
                one{"{0} m"}
                other{"{0} m"}
                two{"{0} m"}
            }
            mile{
                dnam{"eangas miila"}
                one{"{0} mi"}
                other{"{0} mi"}
                two{"{0} mi"}
            }
            millimeter{
                dnam{"millimehtera"}
                one{"{0} mm"}
                other{"{0} mm"}
                two{"{0} mm"}
            }
            picometer{
                dnam{"pikomehtera"}
                one{"{0} pm"}
                other{"{0} pm"}
                two{"{0} pm"}
            }
            yard{
                dnam{"eangas yard"}
                one{"{0} yd"}
                other{"{0} yd"}
                two{"{0} yd"}
            }
        }
        mass{
            gram{
                dnam{"gram"}
                one{"{0} g"}
                other{"{0} g"}
                two{"{0} g"}
            }
            kilogram{
                dnam{"kilogram"}
                one{"{0} kg"}
                other{"{0} kg"}
                two{"{0} kg"}
            }
            ounce{
                dnam{"unssi"}
                one{"{0} unssi"}
                other{"{0} unssi"}
                two{"{0} unssi"}
            }
            pound{
                dnam{"pauna"}
                one{"{0} pauna"}
                other{"{0} pauna"}
                two{"{0} pauna"}
            }
        }
        power{
            horsepower{
                dnam{"hevosvoima"}
                one{"{0} hv"}
                other{"{0} hv"}
                two{"{0} hv"}
            }
            kilowatt{
                dnam{"kilowatt"}
                one{"{0} kW"}
                other{"{0} kW"}
                two{"{0} kW"}
            }
            watt{
                dnam{"watt"}
                one{"{0} W"}
                other{"{0} W"}
                two{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hehtopascal"}
                one{"{0} hPa"}
                other{"{0} hPa"}
                two{"{0} hPa"}
            }
            inch-hg{
                dnam{"bealgi kvikksølv"}
                one{"{0} bealgi Hg"}
                other{"{0} bealgi Hg"}
                two{"{0} bealgi Hg"}
            }
            millibar{
                dnam{"millibar"}
                one{"{0} mbar"}
                other{"{0} mbar"}
                two{"{0} mbar"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilomehtera kohti diibmu"}
                one{"{0} km/h"}
                other{"{0} km/h"}
                two{"{0} km/h"}
            }
            meter-per-second{
                dnam{"mehtera kohti sekunti"}
                one{"{0} m/s"}
                other{"{0} m/s"}
                two{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"eangas miila kohti diibmu"}
                one{"{0} mi/h"}
                other{"{0} mi/h"}
                two{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"grádat Celsius"}
                one{"{0}°C"}
                other{"{0}°C"}
                two{"{0}°C"}
            }
            fahrenheit{
                dnam{"grádat Fahrenheit"}
                one{"{0}°F"}
                other{"{0}°F"}
                two{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                dnam{"kubikkilomehtera"}
                one{"{0} km³"}
                other{"{0} km³"}
                two{"{0} km³"}
            }
            cubic-mile{
                dnam{"eangas kubikkmiila"}
                one{"{0} mi³"}
                other{"{0} mi³"}
                two{"{0} mi³"}
            }
            liter{
                dnam{"lihtara"}
                one{"{0} l"}
                other{"{0} l"}
                two{"{0} l"}
            }
        }
    }
}
