﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/fi.xml
// *
// ***************************************************************************
fi{
    AuxExemplarCharacters{
        "[á à ă â ã ą ā ć č ċ ç ď ð đ é è ê ě ë ė ę ē ğ ǧ ģ ǥ ȟ ħ í î ï İ į ī ı ǩ ķ ĺ"
        " ľ ļ ł ń ň ñ ņ ŋ ó ò ô ő õ œ ŕ ř ś ŝ ş ß ť ţ ŧ ú ù û ů ű ų ū ý ÿ ü ź ż ʒ ǯ þ"
        " æ ø]"
    }
    Ellipsis{
        final{"{0}…"}
        initial{"…{0}"}
        medial{"{0}…{1}"}
        word-final{"{0}…"}
        word-initial{"…{0}"}
        word-medial{"{0}… {1}"}
    }
    ExemplarCharacters{"[a b c d e f g h i j k l m n o p q r s š t u v w x y z ž å ä ö]"}
    ExemplarCharactersIndex{"[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Å Ä Ö]"}
    ExemplarCharactersPunctuation{"[‐ – , ; \\: ! ? . … ’ ” » ( ) \\[ \\] § @ * / \\\\ \\& #]"}
    MoreInformation{"?"}
    NumberElements{
        default{"latn"}
        latn{
            miscPatterns{
                atLeast{"vähintään {0}"}
                range{"{0}‒{1}"}
            }
            patterns{
                accountingFormat{"#,##0.00 ¤"}
                currencyFormat{"#,##0.00 ¤"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0 %"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        one{"0 tuhat"}
                        other{"0 tuhatta"}
                    }
                    10000{
                        one{"00 tuhatta"}
                        other{"00 tuhatta"}
                    }
                    100000{
                        one{"000 tuhatta"}
                        other{"000 tuhatta"}
                    }
                    1000000{
                        one{"0 miljoona"}
                        other{"0 miljoonaa"}
                    }
                    10000000{
                        one{"00 miljoonaa"}
                        other{"00 miljoonaa"}
                    }
                    100000000{
                        one{"000 miljoonaa"}
                        other{"000 miljoonaa"}
                    }
                    1000000000{
                        one{"0 miljardi"}
                        other{"0 miljardia"}
                    }
                    10000000000{
                        one{"00 miljardia"}
                        other{"00 miljardia"}
                    }
                    100000000000{
                        one{"000 miljardia"}
                        other{"000 miljardia"}
                    }
                    1000000000000{
                        one{"0 biljoona"}
                        other{"0 biljoonaa"}
                    }
                    10000000000000{
                        one{"00 biljoonaa"}
                        other{"00 biljoonaa"}
                    }
                    100000000000000{
                        one{"000 biljoonaa"}
                        other{"000 biljoonaa"}
                    }
                }
            }
            patternsShort{
                decimalFormat{
                    1000{
                        one{"0 t'.'"}
                        other{"0 t'.'"}
                    }
                    10000{
                        one{"00 t'.'"}
                        other{"00 t'.'"}
                    }
                    100000{
                        one{"000 t'.'"}
                        other{"000 t'.'"}
                    }
                    1000000{
                        one{"0 milj'.'"}
                        other{"0 milj'.'"}
                    }
                    10000000{
                        one{"00 milj'.'"}
                        other{"00 milj'.'"}
                    }
                    100000000{
                        one{"000 milj'.'"}
                        other{"000 milj'.'"}
                    }
                    1000000000{
                        one{"0 mrd'.'"}
                        other{"0 mrd'.'"}
                    }
                    10000000000{
                        one{"00 mrd'.'"}
                        other{"00 mrd'.'"}
                    }
                    100000000000{
                        one{"000 mrd'.'"}
                        other{"000 mrd'.'"}
                    }
                    1000000000000{
                        one{"0 bilj'.'"}
                        other{"0 bilj'.'"}
                    }
                    10000000000000{
                        one{"00 bilj'.'"}
                        other{"00 bilj'.'"}
                    }
                    100000000000000{
                        one{"000 bilj'.'"}
                        other{"000 bilj'.'"}
                    }
                }
            }
            symbols{
                decimal{","}
                exponential{"E"}
                group{" "}
                infinity{"∞"}
                list{";"}
                minusSign{"−"}
                nan{"epäluku"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
                timeSeparator{"."}
            }
        }
        minimumGroupingDigits{"1"}
        native{"latn"}
    }
    Version{"2.1.15.60"}
    calendar{
        buddhist{
            DateTimePatterns{
                "H.mm.ss zzzz",
                "H.mm.ss z",
                "H.mm.ss",
                "H.mm",
                "cccc d. MMMM y G",
                "d. MMMM y G",
                "d.M.y G",
                "d.M.y GGGGG",
                "{1} 'klo' {0}",
                "{1} 'klo' {0}",
                "{1} 'klo' {0}",
                "{1} 'klo' {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E d."}
                Gy{"y G"}
                GyMMM{"LLL y G"}
                GyMMMEd{"E d. MMM y G"}
                GyMMMd{"d. MMM y G"}
                M{"L"}
                MEd{"E d.M."}
                MMM{"LLL"}
                MMMEd{"ccc d. MMM"}
                MMMd{"d. MMM"}
                Md{"d.M."}
                d{"d"}
                y{"y G"}
                yyyy{"y G"}
                yyyyM{"L.y G"}
                yyyyMEd{"E d.M.y G"}
                yyyyMMM{"LLL y G"}
                yyyyMMMEd{"E d. MMM y G"}
                yyyyMMMM{"LLLL y G"}
                yyyyMMMd{"d. MMM y G"}
                yyyyMd{"d.M.y G"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"QQQQ y G"}
            }
            eras{
                abbreviated{
                    "BE",
                }
            }
        }
        chinese{
            DateTimePatterns{
                "H.mm.ss zzzz",
                "H.mm.ss z",
                "H.mm.ss",
                "H.mm",
                "cccc d.M.y",
                "d.M.y",
                "d.M.y",
                "d.M.y",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                H{"H"}
                Hm{"H.mm"}
                Hms{"H.mm.ss"}
                MEd{"E d.M."}
                MMMEd{"E d.M."}
                MMMd{"d.M."}
                Md{"d.M."}
                hm{"h.mm a"}
                hms{"h.mm.ss a"}
                ms{"mm.ss"}
                y{"y"}
                yyyy{"y"}
                yyyyMEd{"E d.M.y"}
                yyyyMMMEd{"E d.M.y"}
                yyyyMMMd{"d.M.y"}
                yyyyMd{"d.M.y"}
            }
        }
        generic{
            DateTimePatterns{
                "H.mm.ss zzzz",
                "H.mm.ss z",
                "H.mm.ss",
                "H.mm",
                "cccc d. MMMM y G",
                "d. MMMM y G",
                "d.M.y G",
                "d.M.y GGGGG",
                "{1} 'klo' {0}",
                "{1} 'klo' {0}",
                "{1} 'klo' {0}",
                "{1} 'klo' {0}",
                "{1} {0}",
            }
            availableFormats{
                E{"ccc"}
                Ed{"E d."}
                Gy{"y G"}
                GyMMM{"LLL 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{"ccc d. MMM"}
                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{"L.y G"}
                yyyyMEd{"E d.M.y G"}
                yyyyMM{"M.y G"}
                yyyyMMM{"LLL y G"}
                yyyyMMMEd{"E d. MMM y G"}
                yyyyMMMM{"LLLL y G"}
                yyyyMMMMccccd{"cccc d. MMMM y G"}
                yyyyMMMd{"d. MMM y G"}
                yyyyMd{"d.M.y G"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"QQQQ y G"}
            }
            intervalFormats{
                H{
                    H{"H–H"}
                }
                Hm{
                    H{"H.mm–H.mm"}
                    m{"H.mm–H.mm"}
                }
                Hmv{
                    H{"H.mm–H.mm v"}
                    m{"H.mm–H.mm v"}
                }
                Hv{
                    H{"H–H v"}
                }
                M{
                    M{"L.–L."}
                }
                MEd{
                    M{"E d.M. – E d.M."}
                    d{"E d. – E d.M."}
                }
                MMM{
                    M{"LLL–LLLL"}
                }
                MMMEd{
                    M{"E d. MMMM – E d. MMMM"}
                    d{"E d. – E d. MMMM"}
                }
                MMMM{
                    M{"LLL–LLLL"}
                }
                MMMd{
                    M{"d. MMMM – d. MMMM"}
                    d{"d.–d. MMMM"}
                }
                Md{
                    M{"d.M.–d.M."}
                    d{"d.–d.M."}
                }
                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 G"}
                }
                yM{
                    M{"LLL–LLLL y G"}
                    y{"LLLL y – LLLL y G"}
                }
                yMEd{
                    M{"E d.M.y – E d.M.y G"}
                    d{"E d.M.y – E d.M.y G"}
                    y{"E d.M.y – E d.M.y G"}
                }
                yMMM{
                    M{"LLL–LLLL y G"}
                    y{"LLLL y – LLLL y G"}
                }
                yMMMEd{
                    M{"E d. MMMM – E d. MMMM y G"}
                    d{"E d. – E d. MMMM y G"}
                    y{"E d. MMMM y – E d. MMMM y G"}
                }
                yMMMM{
                    M{"LLL–LLLL y G"}
                    y{"LLLL y – LLLL y G"}
                }
                yMMMd{
                    M{"d. MMMM – d. MMMM y G"}
                    d{"d.–d. MMMM y G"}
                    y{"d. MMMM y – d. MMMM y G"}
                }
                yMd{
                    M{"d.M.–d.M.y G"}
                    d{"d.–d.M.y G"}
                    y{"d.M.y–d.M.y G"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "ap.",
                "ip.",
            }
            AmPmMarkersAbbr{
                "ap.",
                "ip.",
            }
            AmPmMarkersNarrow{
                "ap.",
                "ip.",
            }
            DateTimePatterns{
                "H.mm.ss zzzz",
                "H.mm.ss z",
                "H.mm.ss",
                "H.mm",
                "cccc d. MMMM y",
                "d. MMMM y",
                "d.M.y",
                "d.M.y",
                "{1} 'klo' {0}",
                "{1} 'klo' {0}",
                "{1} 'klo' {0}",
                "{1} 'klo' {0}",
                "{1} {0}",
            }
            appendItems{
                Timezone{"{0} {1}"}
            }
            availableFormats{
                E{"ccc"}
                EHm{"E H.mm"}
                EHms{"E H.mm.ss"}
                Ed{"E d."}
                Ehm{"E h.mm a"}
                Ehms{"E h.mm.ss a"}
                Gy{"y G"}
                GyMMM{"LLL y G"}
                GyMMMEd{"E d. MMM y G"}
                GyMMMd{"d. MMM y G"}
                H{"H"}
                Hm{"H.mm"}
                Hms{"H.mm.ss"}
                Hmsv{"H.mm.ss v"}
                Hmv{"H.mm v"}
                M{"L"}
                MEd{"E d.M."}
                MMM{"LLL"}
                MMMEd{"ccc d. MMM"}
                MMMd{"d. MMM"}
                Md{"d.M."}
                d{"d"}
                h{"h a"}
                hm{"h.mm a"}
                hms{"h.mm.ss a"}
                hmsv{"h.mm.ss a v"}
                hmv{"h.mm a v"}
                ms{"m.ss"}
                y{"y"}
                yM{"L.y"}
                yMEd{"E d.M.y"}
                yMM{"M.y"}
                yMMM{"LLL y"}
                yMMMEd{"E d. MMM y"}
                yMMMM{"LLLL y"}
                yMMMMccccd{"cccc d. MMMM y"}
                yMMMd{"d. MMM y"}
                yMd{"d.M.y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "su",
                        "ma",
                        "ti",
                        "ke",
                        "to",
                        "pe",
                        "la",
                    }
                    narrow{
                        "S",
                        "M",
                        "T",
                        "K",
                        "T",
                        "P",
                        "L",
                    }
                    short{
                        "su",
                        "ma",
                        "ti",
                        "ke",
                        "to",
                        "pe",
                        "la",
                    }
                    wide{
                        "sunnuntaina",
                        "maanantaina",
                        "tiistaina",
                        "keskiviikkona",
                        "torstaina",
                        "perjantaina",
                        "lauantaina",
                    }
                }
                stand-alone{
                    abbreviated{
                        "su",
                        "ma",
                        "ti",
                        "ke",
                        "to",
                        "pe",
                        "la",
                    }
                    narrow{
                        "S",
                        "M",
                        "T",
                        "K",
                        "T",
                        "P",
                        "L",
                    }
                    short{
                        "su",
                        "ma",
                        "ti",
                        "ke",
                        "to",
                        "pe",
                        "la",
                    }
                    wide{
                        "sunnuntai",
                        "maanantai",
                        "tiistai",
                        "keskiviikko",
                        "torstai",
                        "perjantai",
                        "lauantai",
                    }
                }
            }
            dayPeriod{
                format{
                    narrow{
                        noon{"kp."}
                    }
                    wide{
                        noon{"keskipäivä"}
                    }
                }
                stand-alone{
                    wide{
                        afternoon1{"iltapäivä"}
                        evening1{"ilta"}
                        midnight{"keskiyö"}
                        morning1{"aamu"}
                        morning2{"aamupäivä"}
                        night1{"yö"}
                        noon{"keskipäivä"}
                    }
                }
            }
            eras{
                abbreviated{
                    "eKr.",
                    "jKr.",
                }
                abbreviated%variant{
                    "eaa.",
                    "jaa.",
                }
                narrow{
                    "eK",
                    "jK",
                }
                narrow%variant{
                    "eaa",
                    "jaa",
                }
                wide{
                    "ennen Kristuksen syntymää",
                    "jälkeen Kristuksen syntymän",
                }
                wide%variant{
                    "ennen ajanlaskun alkua",
                    "jälkeen ajanlaskun alun",
                }
            }
            intervalFormats{
                H{
                    H{"H–H"}
                }
                Hm{
                    H{"H.mm–H.mm"}
                    m{"H.mm–H.mm"}
                }
                Hmv{
                    H{"H.mm–H.mm v"}
                    m{"H.mm–H.mm v"}
                }
                Hv{
                    H{"H–H v"}
                }
                M{
                    M{"L.–L."}
                }
                MEd{
                    M{"E d.M. – E d.M."}
                    d{"E d. – E d.M."}
                }
                MMM{
                    M{"LLL–LLLL"}
                }
                MMMEd{
                    M{"E d. MMMM – E d. MMMM"}
                    d{"E d. – E d. MMMM"}
                }
                MMMM{
                    M{"LLL–LLLL"}
                }
                MMMd{
                    M{"d. MMMM – d. MMMM"}
                    d{"d.–d. MMMM"}
                }
                Md{
                    M{"d.M.–d.M."}
                    d{"d.–d.M."}
                }
                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{"LLL–LLLL y"}
                    y{"LLLL y – LLLL y"}
                }
                yMEd{
                    M{"E d.M.y – E d.M.y"}
                    d{"E d.M.y – E d.M.y"}
                    y{"E d.M.y – E d.M.y"}
                }
                yMMM{
                    M{"LLL–LLLL y"}
                    y{"LLLL y – LLLL y"}
                }
                yMMMEd{
                    M{"E d. MMMM – E d. MMMM y"}
                    d{"E d. – E d. MMMM y"}
                    y{"E d. MMMM y – E d. MMMM y"}
                }
                yMMMM{
                    M{"LLL–LLLL y"}
                    y{"LLLL y – LLLL y"}
                }
                yMMMd{
                    M{"d. MMMM – d. MMMM y"}
                    d{"d.–d. MMMM y"}
                    y{"d. MMMM y – d. MMMM y"}
                }
                yMd{
                    M{"d.M.–d.M.y"}
                    d{"d.–d.M.y"}
                    y{"d.M.y–d.M.y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "tammikuuta",
                        "helmikuuta",
                        "maaliskuuta",
                        "huhtikuuta",
                        "toukokuuta",
                        "kesäkuuta",
                        "heinäkuuta",
                        "elokuuta",
                        "syyskuuta",
                        "lokakuuta",
                        "marraskuuta",
                        "joulukuuta",
                    }
                    narrow{
                        "T",
                        "H",
                        "M",
                        "H",
                        "T",
                        "K",
                        "H",
                        "E",
                        "S",
                        "L",
                        "M",
                        "J",
                    }
                    wide{
                        "tammikuuta",
                        "helmikuuta",
                        "maaliskuuta",
                        "huhtikuuta",
                        "toukokuuta",
                        "kesäkuuta",
                        "heinäkuuta",
                        "elokuuta",
                        "syyskuuta",
                        "lokakuuta",
                        "marraskuuta",
                        "joulukuuta",
                    }
                }
                stand-alone{
                    abbreviated{
                        "tammi",
                        "helmi",
                        "maalis",
                        "huhti",
                        "touko",
                        "kesä",
                        "heinä",
                        "elo",
                        "syys",
                        "loka",
                        "marras",
                        "joulu",
                    }
                    narrow{
                        "T",
                        "H",
                        "M",
                        "H",
                        "T",
                        "K",
                        "H",
                        "E",
                        "S",
                        "L",
                        "M",
                        "J",
                    }
                    wide{
                        "tammikuu",
                        "helmikuu",
                        "maaliskuu",
                        "huhtikuu",
                        "toukokuu",
                        "kesäkuu",
                        "heinäkuu",
                        "elokuu",
                        "syyskuu",
                        "lokakuu",
                        "marraskuu",
                        "joulukuu",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "1. nelj.",
                        "2. nelj.",
                        "3. nelj.",
                        "4. nelj.",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1. neljännes",
                        "2. neljännes",
                        "3. neljännes",
                        "4. neljännes",
                    }
                }
                stand-alone{
                    abbreviated{
                        "1. nelj.",
                        "2. nelj.",
                        "3. nelj.",
                        "4. nelj.",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1. neljännes",
                        "2. neljännes",
                        "3. neljännes",
                        "4. neljännes",
                    }
                }
            }
        }
        hebrew{
            monthNames{
                format{
                    wide{
                        "tišríkuuta",
                        "hešvánkuuta",
                        "kislévkuuta",
                        "tevétkuuta",
                        "ševátkuuta",
                        "adárkuuta I",
                        "adárkuuta",
                        "nisánkuuta",
                        "ijjárkuuta",
                        "sivánkuuta",
                        "tammúzkuuta",
                        "abkuuta",
                        "elúlkuuta",
                        "adárkuuta II",
                    }
                }
                stand-alone{
                    abbreviated{
                        "tišrí",
                        "hešván",
                        "kislév",
                        "tevét",
                        "ševát",
                        "adár I",
                        "adár",
                        "nisán",
                        "ijjár",
                        "siván",
                        "tammúz",
                        "ab",
                        "elúl",
                        "adár II",
                    }
                    narrow{
                        "T",
                        "H",
                        "K",
                        "T",
                        "S",
                        "A",
                        "A",
                        "N",
                        "I",
                        "S",
                        "T",
                        "A",
                        "E",
                        "A",
                    }
                    wide{
                        "tišríkuu",
                        "hešvánkuu",
                        "kislévkuu",
                        "tevétkuu",
                        "ševátkuu",
                        "adárkuu I",
                        "adárkuu",
                        "nisánkuu",
                        "ijjárkuu",
                        "sivánkuu",
                        "tammúzkuu",
                        "abkuu",
                        "elúlkuu",
                        "adárkuu II",
                    }
                }
            }
        }
        islamic{
            monthNames{
                format{
                    wide{
                        "muharram",
                        "safar",
                        "rabi’ al-awwal",
                        "rabi’ al-akhir",
                        "džumada-l-ula",
                        "džumada-l-akhira",
                        "radžab",
                        "ša’ban",
                        "ramadan",
                        "šawwal",
                        "dhu-l-qa’da",
                        "dhu-l-hiddža",
                    }
                }
                stand-alone{
                    wide{
                        "muharram",
                        "safar",
                        "rabi’ al-awwal",
                        "rabi’ al-akhir",
                        "džumada-l-ula",
                        "džumada-l-akhira",
                        "radžab",
                        "ša’ban",
                        "ramadan",
                        "šawwal",
                        "dhu-l-qa’da",
                        "dhu-l-hiddža",
                    }
                }
            }
        }
        japanese{
            DateTimePatterns{
                "H.mm.ss zzzz",
                "H.mm.ss z",
                "H.mm.ss",
                "H.mm",
                "cccc d. MMMM y G",
                "d. MMMM y G",
                "d.M.y G",
                "d.M.y GGGGG",
                "{1} 'klo' {0}",
                "{1} 'klo' {0}",
                "{1} 'klo' {0}",
                "{1} 'klo' {0}",
                "{1} {0}",
            }
        }
        roc{
            eras{
                abbreviated{
                    "Before R.O.C.",
                    "Minguo",
                }
            }
        }
    }
    contextTransforms{
        languages:intvector{
            1,
            0,
        }
        relative:intvector{
            0,
            1,
        }
    }
    delimiters{
        alternateQuotationEnd{"’"}
        alternateQuotationStart{"’"}
        quotationEnd{"”"}
        quotationStart{"”"}
    }
    fields{
        day{
            dn{"päivä"}
            relative{
                "-1"{"eilen"}
                "-2"{"toissa päivänä"}
                "0"{"tänään"}
                "1"{"huomenna"}
                "2"{"ylihuomenna"}
            }
            relativeTime{
                future{
                    one{"{0} päivän päästä"}
                    other{"{0} päivän päästä"}
                }
                past{
                    one{"{0} päivä sitten"}
                    other{"{0} päivää sitten"}
                }
            }
        }
        day-narrow{
            dn{"pv"}
            relativeTime{
                future{
                    one{"{0} pv päästä"}
                    other{"{0} pv päästä"}
                }
                past{
                    one{"{0} pv sitten"}
                    other{"{0} pv sitten"}
                }
            }
        }
        day-short{
            dn{"pv"}
            relativeTime{
                future{
                    one{"{0} pv päästä"}
                    other{"{0} pv päästä"}
                }
                past{
                    one{"{0} pv sitten"}
                    other{"{0} pv sitten"}
                }
            }
        }
        dayperiod{
            dn{"vuorokaudenaika"}
        }
        era{
            dn{"aikakausi"}
        }
        fri{
            relative{
                "-1"{"viime perjantaina"}
                "0"{"tänä perjantaina"}
                "1"{"ensi perjantaina"}
            }
        }
        fri-narrow{
            relative{
                "-1"{"viime pe"}
                "0"{"tänä pe"}
                "1"{"ensi pe"}
            }
        }
        fri-short{
            relative{
                "-1"{"viime pe"}
                "0"{"tänä pe"}
                "1"{"ensi pe"}
            }
        }
        hour{
            dn{"tunti"}
            relativeTime{
                future{
                    one{"{0} tunnin päästä"}
                    other{"{0} tunnin päästä"}
                }
                past{
                    one{"{0} tunti sitten"}
                    other{"{0} tuntia sitten"}
                }
            }
        }
        hour-narrow{
            dn{"t"}
            relativeTime{
                future{
                    one{"{0} t päästä"}
                    other{"{0} t päästä"}
                }
                past{
                    one{"{0} t sitten"}
                    other{"{0} t sitten"}
                }
            }
        }
        hour-short{
            dn{"t"}
            relativeTime{
                future{
                    one{"{0} t päästä"}
                    other{"{0} t päästä"}
                }
                past{
                    one{"{0} t sitten"}
                    other{"{0} t sitten"}
                }
            }
        }
        minute{
            dn{"minuutti"}
            relativeTime{
                future{
                    one{"{0} minuutin päästä"}
                    other{"{0} minuutin päästä"}
                }
                past{
                    one{"{0} minuutti sitten"}
                    other{"{0} minuuttia sitten"}
                }
            }
        }
        minute-narrow{
            dn{"min"}
            relativeTime{
                future{
                    one{"{0} min päästä"}
                    other{"{0} min päästä"}
                }
                past{
                    one{"{0} min sitten"}
                    other{"{0} min sitten"}
                }
            }
        }
        minute-short{
            dn{"min"}
            relativeTime{
                future{
                    one{"{0} min päästä"}
                    other{"{0} min päästä"}
                }
                past{
                    one{"{0} min sitten"}
                    other{"{0} min sitten"}
                }
            }
        }
        mon{
            relative{
                "-1"{"viime maanantaina"}
                "0"{"tänä maanantaina"}
                "1"{"ensi maanantaina"}
            }
        }
        mon-narrow{
            relative{
                "-1"{"viime ma"}
                "0"{"tänä ma"}
                "1"{"ensi ma"}
            }
        }
        mon-short{
            relative{
                "-1"{"viime ma"}
                "0"{"tänä ma"}
                "1"{"ensi ma"}
            }
        }
        month{
            dn{"kuukausi"}
            relative{
                "-1"{"viime kuussa"}
                "0"{"tässä kuussa"}
                "1"{"ensi kuussa"}
            }
            relativeTime{
                future{
                    one{"{0} kuukauden päästä"}
                    other{"{0} kuukauden päästä"}
                }
                past{
                    one{"{0} kuukausi sitten"}
                    other{"{0} kuukautta sitten"}
                }
            }
        }
        month-narrow{
            dn{"kk"}
            relativeTime{
                future{
                    one{"{0} kk päästä"}
                    other{"{0} kk päästä"}
                }
                past{
                    one{"{0} kk sitten"}
                    other{"{0} kk sitten"}
                }
            }
        }
        month-short{
            dn{"kk"}
            relativeTime{
                future{
                    one{"{0} kk päästä"}
                    other{"{0} kk päästä"}
                }
                past{
                    one{"{0} kk sitten"}
                    other{"{0} kk sitten"}
                }
            }
        }
        quarter{
            dn{"neljännesvuosi"}
            relativeTime{
                future{
                    one{"{0} neljännesvuoden päästä"}
                    other{"{0} neljännesvuoden päästä"}
                }
                past{
                    one{"{0} neljännesvuosi sitten"}
                    other{"{0} neljännesvuotta sitten"}
                }
            }
        }
        quarter-narrow{
            dn{"nelj."}
            relativeTime{
                future{
                    one{"{0} nelj. päästä"}
                    other{"{0} nelj. päästä"}
                }
                past{
                    one{"{0} nelj. sitten"}
                    other{"{0} nelj. sitten"}
                }
            }
        }
        quarter-short{
            dn{"neljännes"}
            relativeTime{
                future{
                    one{"{0} neljänneksen päästä"}
                    other{"{0} neljänneksen päästä"}
                }
                past{
                    one{"{0} neljännes sitten"}
                    other{"{0} neljännes sitten"}
                }
            }
        }
        sat{
            relative{
                "-1"{"viime lauantaina"}
                "0"{"tänä lauantaina"}
                "1"{"ensi lauantaina"}
            }
        }
        sat-narrow{
            relative{
                "-1"{"viime la"}
                "0"{"tänä la"}
                "1"{"ensi la"}
            }
        }
        sat-short{
            relative{
                "-1"{"viime la"}
                "0"{"tänä la"}
                "1"{"ensi la"}
            }
        }
        second{
            dn{"sekunti"}
            relative{
                "0"{"nyt"}
            }
            relativeTime{
                future{
                    one{"{0} sekunnin päästä"}
                    other{"{0} sekunnin päästä"}
                }
                past{
                    one{"{0} sekunti sitten"}
                    other{"{0} sekuntia sitten"}
                }
            }
        }
        second-narrow{
            dn{"s"}
            relativeTime{
                future{
                    one{"{0} s päästä"}
                    other{"{0} s päästä"}
                }
                past{
                    one{"{0} s sitten"}
                    other{"{0} s sitten"}
                }
            }
        }
        second-short{
            dn{"s"}
            relativeTime{
                future{
                    one{"{0} s päästä"}
                    other{"{0} s päästä"}
                }
                past{
                    one{"{0} s sitten"}
                    other{"{0} s sitten"}
                }
            }
        }
        sun{
            relative{
                "-1"{"viime sunnuntaina"}
                "0"{"tänä sunnuntaina"}
                "1"{"ensi sunnuntaina"}
            }
        }
        sun-narrow{
            relative{
                "-1"{"viime su"}
                "0"{"tänä su"}
                "1"{"ensi su"}
            }
        }
        sun-short{
            relative{
                "-1"{"viime su"}
                "0"{"tänä su"}
                "1"{"ensi su"}
            }
        }
        thu{
            relative{
                "-1"{"viime torstaina"}
                "0"{"tänä torstaina"}
                "1"{"ensi torstaina"}
            }
        }
        thu-narrow{
            relative{
                "-1"{"viime to"}
                "0"{"tänä to"}
                "1"{"ensi to"}
            }
        }
        thu-short{
            relative{
                "-1"{"viime to"}
                "0"{"tänä to"}
                "1"{"ensi to"}
            }
        }
        tue{
            relative{
                "-1"{"viime tiistaina"}
                "0"{"tänä tiistaina"}
                "1"{"ensi tiistaina"}
            }
        }
        tue-narrow{
            relative{
                "-1"{"viime ti"}
                "0"{"tänä ti"}
                "1"{"ensi ti"}
            }
        }
        tue-short{
            relative{
                "-1"{"viime ti"}
                "0"{"tänä ti"}
                "1"{"ensi ti"}
            }
        }
        wed{
            relative{
                "-1"{"viime keskiviikkona"}
                "0"{"tänä keskiviikkona"}
                "1"{"ensi keskiviikkona"}
            }
        }
        wed-narrow{
            relative{
                "-1"{"viime ke"}
                "0"{"tänä ke"}
                "1"{"ensi ke"}
            }
        }
        wed-short{
            relative{
                "-1"{"viime ke"}
                "0"{"tänä ke"}
                "1"{"ensi ke"}
            }
        }
        week{
            dn{"viikko"}
            relative{
                "-1"{"viime viikolla"}
                "0"{"tällä viikolla"}
                "1"{"ensi viikolla"}
            }
            relativeTime{
                future{
                    one{"{0} viikon päästä"}
                    other{"{0} viikon päästä"}
                }
                past{
                    one{"{0} viikko sitten"}
                    other{"{0} viikkoa sitten"}
                }
            }
        }
        week-narrow{
            dn{"vk"}
            relativeTime{
                future{
                    one{"{0} vk päästä"}
                    other{"{0} vk päästä"}
                }
                past{
                    one{"{0} vk sitten"}
                    other{"{0} vk sitten"}
                }
            }
        }
        week-short{
            dn{"vk"}
            relativeTime{
                future{
                    one{"{0} vk päästä"}
                    other{"{0} vk päästä"}
                }
                past{
                    one{"{0} vk sitten"}
                    other{"{0} vk sitten"}
                }
            }
        }
        weekday{
            dn{"viikonpäivä"}
        }
        year{
            dn{"vuosi"}
            relative{
                "-1"{"viime vuonna"}
                "0"{"tänä vuonna"}
                "1"{"ensi vuonna"}
            }
            relativeTime{
                future{
                    one{"{0} vuoden päästä"}
                    other{"{0} vuoden päästä"}
                }
                past{
                    one{"{0} vuosi sitten"}
                    other{"{0} vuotta sitten"}
                }
            }
        }
        year-narrow{
            dn{"v"}
            relativeTime{
                future{
                    one{"{0} v päästä"}
                    other{"{0} v päästä"}
                }
                past{
                    one{"{0} v sitten"}
                    other{"{0} v sitten"}
                }
            }
        }
        year-short{
            dn{"v"}
            relativeTime{
                future{
                    one{"{0} vuoden päästä"}
                    other{"{0} vuoden päästä"}
                }
                past{
                    one{"{0} vuotta sitten"}
                    other{"{0} vuotta sitten"}
                }
            }
        }
        zone{
            dn{"aikavyöhyke"}
        }
    }
    listPattern{
        standard{
            2{"{0} ja {1}"}
            end{"{0} ja {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit{
            2{"{0} ja {1}"}
            end{"{0} ja {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit-narrow{
            2{"{0} {1}"}
            end{"{0} {1}"}
            middle{"{0} {1}"}
            start{"{0} {1}"}
        }
        unit-short{
            2{"{0}, {1}"}
            end{"{0}, {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"brittiläinen"}
        US{"amerikkalainen"}
        metric{"metrinen"}
    }
    transformNames{
        BGN{"BGN-latinaistus"}
        Numeric{"numeerinen muunnos"}
        Tone{"tooni"}
        UNGEGN{"UNGEGN-latinaistus"}
        x-Accents{"aksenttimerkit"}
        x-Fullwidth{"ideogrammin levyinen"}
        x-Halfwidth{"ideogrammin puolikkaan levyinen"}
        x-Jamo{"jamo"}
        x-Pinyin{"pinyin-latinaistus"}
        x-Publishing{"julkaisuvalinta"}
    }
}
