﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/sl.xml
// *
// ***************************************************************************
sl{
    AuxExemplarCharacters{
        "[á à ă â å ä ā æ ç ć đ é è ĕ ê ë ē í ì ĭ î ï ī ñ ó ò ŏ ô ö ø ō œ q ú ù ŭ û ü"
        " ū w x y ÿ]"
    }
    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 r s š t u v 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 Ž]"}
    MoreInformation{"?"}
    NumberElements{
        default{"latn"}
        latn{
            miscPatterns{
                atLeast{"⩾{0}"}
                range{"{0}–{1}"}
            }
            patterns{
                accountingFormat{"#,##0.00 ¤;(#,##0.00 ¤)"}
                currencyFormat{"#,##0.00 ¤"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0%"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        few{"0 tisoč"}
                        one{"0 tisoč"}
                        other{"0 tisoč"}
                        two{"0 tisoč"}
                    }
                    10000{
                        few{"00 tisoč"}
                        one{"00 tisoč"}
                        other{"00 tisoč"}
                        two{"00 tisoč"}
                    }
                    100000{
                        few{"000 tisoč"}
                        one{"000 tisoč"}
                        other{"000 tisoč"}
                        two{"000 tisoč"}
                    }
                    1000000{
                        few{"0 milijone"}
                        one{"0 milijon"}
                        other{"0 milijonov"}
                        two{"0 milijona"}
                    }
                    10000000{
                        few{"00 milijoni"}
                        one{"00 milijon"}
                        other{"00 milijonov"}
                        two{"00 milijona"}
                    }
                    100000000{
                        few{"000 milijoni"}
                        one{"000 milijon"}
                        other{"000 milijonov"}
                        two{"000 milijona"}
                    }
                    1000000000{
                        few{"0 milijarde"}
                        one{"0 milijarda"}
                        other{"0 milijard"}
                        two{"0 milijardi"}
                    }
                    10000000000{
                        few{"00 milijarde"}
                        one{"00 milijarda"}
                        other{"00 milijard"}
                        two{"00 milijardi"}
                    }
                    100000000000{
                        few{"000 milijarde"}
                        one{"000 milijarda"}
                        other{"000 milijard"}
                        two{"000 milijardi"}
                    }
                    1000000000000{
                        few{"0 bilijoni"}
                        one{"0 bilijon"}
                        other{"0 bilijonov"}
                        two{"0 bilijona"}
                    }
                    10000000000000{
                        few{"00 bilijoni"}
                        one{"00 bilijon"}
                        other{"00 bilijonov"}
                        two{"00 bilijona"}
                    }
                    100000000000000{
                        few{"000 bilijoni("}
                        one{"000 bilijon"}
                        other{"000 bilijonov"}
                        two{"000 bilijona"}
                    }
                }
            }
            patternsShort{
                decimalFormat{
                    1000{
                        few{"0 tis'.'"}
                        one{"0 tis'.'"}
                        other{"0 tis'.'"}
                        two{"0 tis'.'"}
                    }
                    10000{
                        few{"00 tis'.'"}
                        one{"00 tis'.'"}
                        other{"00 tis'.'"}
                        two{"00 tis'.'"}
                    }
                    100000{
                        few{"000 tis'.'"}
                        one{"000 tis'.'"}
                        other{"000 tis'.'"}
                        two{"000 tis'.'"}
                    }
                    1000000{
                        few{"0 mio'.'"}
                        one{"0 mio'.'"}
                        other{"0 mio'.'"}
                        two{"0 mio'.'"}
                    }
                    10000000{
                        few{"00 mio'.'"}
                        one{"00 mio'.'"}
                        other{"00 mio'.'"}
                        two{"00 mio'.'"}
                    }
                    100000000{
                        few{"000 mio'.'"}
                        one{"000 mio'.'"}
                        other{"000 mio'.'"}
                        two{"000 mio'.'"}
                    }
                    1000000000{
                        few{"0 mrd'.'"}
                        one{"0 mrd'.'"}
                        other{"0 mrd'.'"}
                        two{"0 mrd'.'"}
                    }
                    10000000000{
                        few{"00 mrd'.'"}
                        one{"00 mrd'.'"}
                        other{"00 mrd'.'"}
                        two{"00 mrd'.'"}
                    }
                    100000000000{
                        few{"000 mrd'.'"}
                        one{"000 mrd'.'"}
                        other{"000 mrd'.'"}
                        two{"000 mrd'.'"}
                    }
                    1000000000000{
                        few{"0 bil'.'"}
                        one{"0 bil'.'"}
                        other{"0 bil'.'"}
                        two{"0 bil'.'"}
                    }
                    10000000000000{
                        few{"00 bil'.'"}
                        one{"00 bil'.'"}
                        other{"00 bil'.'"}
                        two{"00 bil'.'"}
                    }
                    100000000000000{
                        few{"000 bil'.'"}
                        one{"000 bil'.'"}
                        other{"000 bil'.'"}
                        two{"000 bil'.'"}
                    }
                }
            }
            symbols{
                decimal{","}
                exponential{"e"}
                group{"."}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
                timeSeparator{":"}
            }
        }
        minimumGroupingDigits{"1"}
        native{"latn"}
    }
    Version{"2.1.12.94"}
    calendar{
        generic{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, dd. MMMM y G",
                "dd. MMMM y G",
                "d. MMM y G",
                "d. MM. yy GGGGG",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E, d."}
                Gy{"y G"}
                GyM{"M/y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, d. MMM y G"}
                GyMMMd{"d. MMM y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d. MM."}
                MMM{"LLL"}
                MMMEd{"E, 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"}
                yyyy{"y G"}
                yyyyM{"M/y G"}
                yyyyMEd{"E, d. M. y G"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E, d. MMM y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"d. MMM y G"}
                yyyyMd{"d. M. y G"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"QQQQ y G"}
            }
            intervalFormats{
                H{
                    H{"HH–HH"}
                }
                Hm{
                    H{"HH:mm–HH:mm"}
                    m{"HH:mm–HH:mm"}
                }
                Hmv{
                    H{"HH:mm–HH:mm v"}
                    m{"HH:mm–HH:mm v"}
                }
                Hv{
                    H{"HH–HH v"}
                }
                M{
                    M{"M.–M."}
                }
                MEd{
                    M{"E, d. M. – E, d. M."}
                    d{"E, d. – E, d. M."}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, d. MMM – E, d. MMM"}
                    d{"E, d. – E, d. MMM"}
                }
                MMMd{
                    M{"d. MMM – d. MMM"}
                    d{"d.–d. MMM"}
                }
                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{"M.–M. y"}
                    y{"M. y – M. y"}
                }
                yMEd{
                    M{"E, d. M. – E, d. M. y"}
                    d{"E, d. – E, d. M. y"}
                    y{"E, d. M. y – E, d. M. y"}
                }
                yMMM{
                    M{"MMM – MMM y"}
                    y{"MMM y – MMM y"}
                }
                yMMMEd{
                    M{"E, d. MMM – E, d. MMM y"}
                    d{"E, d. MMM – E, d. MMM y"}
                    y{"E, d. MMM y – E, d. MMM y"}
                }
                yMMMM{
                    M{"MMMM–MMMM y"}
                    y{"MMMM y – MMMM y"}
                }
                yMMMd{
                    M{"d. MMM – d. MMM y"}
                    d{"d.–d. MMM y"}
                    y{"d. MMM y – d. MMM y"}
                }
                yMd{
                    M{"d. M. – d. M. y"}
                    d{"d. M. y – d. M. y"}
                    y{"d. M. y – d. M. y"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "dop.",
                "pop.",
            }
            AmPmMarkersNarrow{
                "d",
                "p",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, dd. MMMM y",
                "dd. MMMM y",
                "d. MMM y",
                "d. MM. yy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            NoonMarker{"poldne"}
            NoonMarkerNarrow{"n"}
            appendItems{
                Timezone{"{0} {1}"}
            }
            availableFormats{
                E{"ccc"}
                EHm{"E HH:mm"}
                EHms{"E HH:mm:ss"}
                Ed{"E, d."}
                Ehm{"E h:mm a"}
                Ehms{"E h:mm:ss a"}
                Gy{"y G"}
                GyM{"M/y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, d. MMM y G"}
                GyMMMd{"d. MMM y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d. MM."}
                MMM{"LLL"}
                MMMEd{"E, 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"}
                yM{"M/y"}
                yMEd{"E, d. M. y"}
                yMMM{"MMM y"}
                yMMMEd{"E, d. MMM y"}
                yMMMM{"MMMM y"}
                yMMMd{"d. MMM y"}
                yMd{"d. M. y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "ned.",
                        "pon.",
                        "tor.",
                        "sre.",
                        "čet.",
                        "pet.",
                        "sob.",
                    }
                    narrow{
                        "n",
                        "p",
                        "t",
                        "s",
                        "č",
                        "p",
                        "s",
                    }
                    short{
                        "ned.",
                        "pon.",
                        "tor.",
                        "sre.",
                        "čet.",
                        "pet.",
                        "sob.",
                    }
                    wide{
                        "nedelja",
                        "ponedeljek",
                        "torek",
                        "sreda",
                        "četrtek",
                        "petek",
                        "sobota",
                    }
                }
                stand-alone{
                    abbreviated{
                        "ned",
                        "pon",
                        "tor",
                        "sre",
                        "čet",
                        "pet",
                        "sob",
                    }
                    narrow{
                        "n",
                        "p",
                        "t",
                        "s",
                        "č",
                        "p",
                        "s",
                    }
                    short{
                        "ned.",
                        "pon.",
                        "tor.",
                        "sre.",
                        "čet.",
                        "pet.",
                        "sob.",
                    }
                    wide{
                        "nedelja",
                        "ponedeljek",
                        "torek",
                        "sreda",
                        "četrtek",
                        "petek",
                        "sobota",
                    }
                }
            }
            eras{
                abbreviated{
                    "pr. n. št.",
                    "po Kr.",
                }
                abbreviated%variant{
                    "BCE",
                    "po n. št.",
                }
                wide{
                    "pred našim štetjem",
                    "naše štetje",
                }
                wide%variant{
                    "BCE",
                    "po n. št.",
                }
            }
            intervalFormats{
                H{
                    H{"HH–HH"}
                }
                Hm{
                    H{"HH:mm–HH:mm"}
                    m{"HH:mm–HH:mm"}
                }
                Hmv{
                    H{"HH:mm–HH:mm v"}
                    m{"HH:mm–HH:mm v"}
                }
                Hv{
                    H{"HH–HH v"}
                }
                M{
                    M{"M.–M."}
                }
                MEd{
                    M{"E, d. M. – E, d. M."}
                    d{"E, d. – E, d. M."}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, d. MMM – E, d. MMM"}
                    d{"E, d. – E, d. MMM"}
                }
                MMMd{
                    M{"d. MMM – d. MMM"}
                    d{"d.–d. MMM"}
                }
                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{"M.–M. y"}
                    y{"M. y – M. y"}
                }
                yMEd{
                    M{"E, d. M. – E, d. M. y"}
                    d{"E, d. – E, d. M. y"}
                    y{"E, d. M. y – E, d. M. y"}
                }
                yMMM{
                    M{"MMM – MMM y"}
                    y{"MMM y – MMM y"}
                }
                yMMMEd{
                    M{"E, d. MMM – E, d. MMM y"}
                    d{"E, d. MMM – E, d. MMM y"}
                    y{"E, d. MMM y – E, d. MMM y"}
                }
                yMMMM{
                    M{"MMMM–MMMM y"}
                    y{"MMMM y – MMMM y"}
                }
                yMMMd{
                    M{"d. MMM – d. MMM y"}
                    d{"d.–d. MMM y"}
                    y{"d. MMM y – d. MMM y"}
                }
                yMd{
                    M{"d. M. – d. M. y"}
                    d{"d. M. y – d. M. y"}
                    y{"d. M. y – d. M. y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "jan.",
                        "feb.",
                        "mar.",
                        "apr.",
                        "maj",
                        "jun.",
                        "jul.",
                        "avg.",
                        "sep.",
                        "okt.",
                        "nov.",
                        "dec.",
                    }
                    narrow{
                        "j",
                        "f",
                        "m",
                        "a",
                        "m",
                        "j",
                        "j",
                        "a",
                        "s",
                        "o",
                        "n",
                        "d",
                    }
                    wide{
                        "januar",
                        "februar",
                        "marec",
                        "april",
                        "maj",
                        "junij",
                        "julij",
                        "avgust",
                        "september",
                        "oktober",
                        "november",
                        "december",
                    }
                }
                stand-alone{
                    abbreviated{
                        "jan",
                        "feb",
                        "mar",
                        "apr",
                        "maj",
                        "jun",
                        "jul",
                        "avg",
                        "sep",
                        "okt",
                        "nov",
                        "dec",
                    }
                    narrow{
                        "j",
                        "f",
                        "m",
                        "a",
                        "m",
                        "j",
                        "j",
                        "a",
                        "s",
                        "o",
                        "n",
                        "d",
                    }
                    wide{
                        "januar",
                        "februar",
                        "marec",
                        "april",
                        "maj",
                        "junij",
                        "julij",
                        "avgust",
                        "september",
                        "oktober",
                        "november",
                        "december",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "Q1",
                        "Q2",
                        "Q3",
                        "Q4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1. četrtletje",
                        "2. četrtletje",
                        "3. četrtletje",
                        "4. četrtletje",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Q1",
                        "Q2",
                        "Q3",
                        "Q4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1. četrtletje",
                        "2. četrtletje",
                        "3. četrtletje",
                        "4. četrtletje",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"‘"}
        alternateQuotationStart{"‚"}
        quotationEnd{"“"}
        quotationStart{"„"}
    }
    fields{
        day{
            dn{"Dan"}
            relative{
                "-1"{"včeraj"}
                "-2"{"predvčerajšnjim"}
                "0"{"danes"}
                "1"{"jutri"}
                "2"{"pojutrišnjem"}
            }
            relativeTime{
                future{
                    few{"čez {0} dni"}
                    one{"čez {0} dan"}
                    other{"čez {0} dni"}
                    two{"čez {0} dneva"}
                }
                past{
                    few{"pred {0} dnevi"}
                    one{"pred {0} dnevom"}
                    other{"pred {0} dnevi"}
                    two{"pred {0} dnevoma"}
                }
            }
        }
        day-narrow{
            dn{"Dan"}
            relativeTime{
                future{
                    few{"čez {0} d"}
                    one{"čez {0} dan"}
                    other{"čez {0} d"}
                    two{"čez {0} d"}
                }
                past{
                    few{"pred {0} d"}
                    one{"pred {0} d"}
                    other{"pred {0} d"}
                    two{"pred {0} d"}
                }
            }
        }
        day-short{
            dn{"Dan"}
            relativeTime{
                future{
                    few{"čez {0} d"}
                    one{"čez {0} d"}
                    other{"čez {0} d"}
                    two{"čez {0} d"}
                }
                past{
                    few{"pred {0} d"}
                    one{"pred {0} d"}
                    other{"pred {0} d"}
                    two{"pred {0} d"}
                }
            }
        }
        dayperiod{
            dn{"Čas dneva"}
        }
        era{
            dn{"Doba"}
        }
        fri{
            relative{
                "-1"{"Prejšnji petek"}
                "0"{"Ta petek"}
                "1"{"Naslednji petek"}
            }
        }
        fri-narrow{
            relative{
                "-1"{"Prejš. pet."}
                "0"{"Ta pet."}
                "1"{"Nasl. pet."}
            }
        }
        fri-short{
            relative{
                "-1"{"Prejšnji pet."}
                "0"{"Ta pet."}
                "1"{"Naslednji pet."}
            }
        }
        hour{
            dn{"Ura"}
            relativeTime{
                future{
                    few{"čez {0} h"}
                    one{"čez {0} h"}
                    other{"čez {0} h"}
                    two{"čez {0} h"}
                }
                past{
                    few{"pred {0} h"}
                    one{"pred {0} h"}
                    other{"pred {0} h"}
                    two{"pred {0} h"}
                }
            }
        }
        hour-narrow{
            dn{"h"}
            relativeTime{
                future{
                    few{"čez {0} h"}
                    one{"čez {0} h"}
                    other{"čez {0} h"}
                    two{"čez {0} h"}
                }
                past{
                    few{"pred {0} h"}
                    one{"pred {0} h"}
                    other{"pred {0} h"}
                    two{"pred {0} h"}
                }
            }
        }
        hour-short{
            dn{"ura"}
            relativeTime{
                future{
                    few{"čez {0} h"}
                    one{"čez {0} h"}
                    other{"čez {0} h"}
                    two{"čez {0} h"}
                }
                past{
                    few{"pred {0} h"}
                    one{"pred {0} h"}
                    other{"pred {0} h"}
                    two{"pred {0} h"}
                }
            }
        }
        minute{
            dn{"Minuta"}
            relativeTime{
                future{
                    few{"čez {0} min."}
                    one{"čez {0} min."}
                    other{"čez {0} min."}
                    two{"čez {0} min."}
                }
                past{
                    few{"pred {0} min."}
                    one{"pred {0} min."}
                    other{"pred {0} min."}
                    two{"pred {0} min."}
                }
            }
        }
        minute-narrow{
            dn{"min."}
            relativeTime{
                future{
                    few{"čez {0} min"}
                    one{"čez {0} min"}
                    other{"čez {0} min"}
                    two{"čez {0} min"}
                }
                past{
                    few{"pred {0} min"}
                    one{"pred {0} min"}
                    other{"pred {0} min"}
                    two{"pred {0} min"}
                }
            }
        }
        minute-short{
            dn{"min."}
            relativeTime{
                future{
                    few{"čez {0} min"}
                    one{"čez {0} min"}
                    other{"čez {0} min"}
                    two{"čez {0} min"}
                }
                past{
                    few{"pred {0} min"}
                    one{"pred {0} min"}
                    other{"pred {0} min"}
                    two{"pred {0} min"}
                }
            }
        }
        mon{
            relative{
                "-1"{"prejšnji ponedeljek"}
                "0"{"ta ponedeljek"}
                "1"{"naslednji ponedeljek"}
            }
        }
        mon-narrow{
            relative{
                "-1"{"prejš. pon."}
                "0"{"ta pon."}
                "1"{"nasl. pon."}
            }
        }
        mon-short{
            relative{
                "-1"{"prejšnji pon."}
                "0"{"ta pon."}
                "1"{"naslednji pon."}
            }
        }
        month{
            dn{"Mesec"}
            relative{
                "-1"{"prejšnji mesec"}
                "0"{"ta mesec"}
                "1"{"naslednji mesec"}
            }
            relativeTime{
                future{
                    few{"čez {0} mesece"}
                    one{"čez {0} mesec"}
                    other{"čez {0} mesecev"}
                    two{"čez {0} meseca"}
                }
                past{
                    few{"pred {0} meseci"}
                    one{"pred {0} mesecem"}
                    other{"pred {0} meseci"}
                    two{"pred {0} mesecema"}
                }
            }
        }
        month-narrow{
            dn{"mes."}
            relativeTime{
                future{
                    few{"čez {0} mes."}
                    one{"čez {0} mes."}
                    other{"čez {0} mes."}
                    two{"čez {0} mes."}
                }
                past{
                    few{"pred {0} mes."}
                    one{"pred {0} mes."}
                    other{"pred {0} mes."}
                    two{"pred {0} mes."}
                }
            }
        }
        month-short{
            dn{"mes."}
            relativeTime{
                future{
                    few{"čez {0} mesece"}
                    one{"čez {0} mesec"}
                    other{"čez {0} mesece"}
                    two{"čez {0} meseca"}
                }
                past{
                    few{"pred {0} meseci"}
                    one{"pred {0} mesecem"}
                    other{"pred {0} meseci"}
                    two{"pred {0} mesecema"}
                }
            }
        }
        quarter{
            dn{"Četrtletje"}
            relativeTime{
                future{
                    few{"čez {0} četrtletja"}
                    one{"čez {0} četrtletje"}
                    other{"čez {0} četrtletij"}
                    two{"čez {0} četrtletji"}
                }
                past{
                    few{"pred {0} četrtletji"}
                    one{"pred {0} četrtletjem"}
                    other{"pred {0} četrtletji"}
                    two{"pred {0} četrtletjema"}
                }
            }
        }
        quarter-narrow{
            dn{"čet."}
            relativeTime{
                future{
                    few{"čez {0} četrtletja"}
                    one{"čez {0} četrtletje"}
                    other{"čez {0} četrtletij"}
                    two{"čez {0} četrtletji"}
                }
                past{
                    few{"pred {0} četrtletji"}
                    one{"pred {0} četrtletjem"}
                    other{"pred {0} četrtletji"}
                    two{"pred {0} četrtletjema"}
                }
            }
        }
        quarter-short{
            dn{"četrtl."}
            relativeTime{
                future{
                    few{"čez {0} četrtletja"}
                    one{"čez {0} četrtletje"}
                    other{"čez {0} četrtletja"}
                    two{"čez {0} četrtletji"}
                }
                past{
                    few{"pred {0} četrtletji"}
                    one{"pred {0} četrtletjem"}
                    other{"pred {0} četrtletji"}
                    two{"pred {0} četrtletjema"}
                }
            }
        }
        sat{
            relative{
                "-1"{"Prejšnjo soboto"}
                "0"{"To soboto"}
                "1"{"Naslednjo soboto"}
            }
        }
        sat-narrow{
            relative{
                "-1"{"Prejš. sob."}
                "0"{"To sob."}
                "1"{"Nasl. sob."}
            }
        }
        sat-short{
            relative{
                "-1"{"Prejšnjo sob."}
                "0"{"To sob."}
                "1"{"Naslednjo sob."}
            }
        }
        second{
            dn{"Sekunda"}
            relative{
                "0"{"zdaj"}
            }
            relativeTime{
                future{
                    few{"čez {0} sekunde"}
                    one{"čez {0} sekundo"}
                    other{"čez {0} sekund"}
                    two{"čez {0} sekundi"}
                }
                past{
                    few{"pred {0} sekundami"}
                    one{"pred {0} sekundo"}
                    other{"pred {0} sekundami"}
                    two{"pred {0} sekundama"}
                }
            }
        }
        second-narrow{
            dn{"s"}
            relativeTime{
                future{
                    few{"čez {0} s"}
                    one{"čez {0} s"}
                    other{"čez {0} s"}
                    two{"čez {0} s"}
                }
                past{
                    few{"pred {0} s"}
                    one{"pred {0} s"}
                    other{"pred {0} s"}
                    two{"pred {0} s"}
                }
            }
        }
        second-short{
            dn{"sek."}
            relativeTime{
                future{
                    few{"čez {0} s"}
                    one{"čez {0} s"}
                    other{"čez {0} s"}
                    two{"čez {0} s"}
                }
                past{
                    few{"pred {0} s"}
                    one{"pred {0} s"}
                    other{"pred {0} s"}
                    two{"pred {0} s"}
                }
            }
        }
        sun{
            relative{
                "-1"{"prejšnjo nedeljo"}
                "0"{"to nedeljo"}
                "1"{"naslednjo nedeljo"}
            }
        }
        sun-narrow{
            relative{
                "-1"{"prejš. ned."}
                "0"{"to ned."}
                "1"{"nasl. ned."}
            }
        }
        sun-short{
            relative{
                "-1"{"prejšnjo ned."}
                "0"{"to ned."}
                "1"{"naslednjo ned."}
            }
        }
        thu{
            relative{
                "-1"{"Prejšnji četrtek"}
                "0"{"Ta četrtek"}
                "1"{"Naslednji četrtek"}
            }
        }
        thu-narrow{
            relative{
                "-1"{"Prejš. čet."}
                "0"{"Ta čet."}
                "1"{"Nasl. čet."}
            }
        }
        thu-short{
            relative{
                "-1"{"Prejšnji čet."}
                "0"{"Ta čet."}
                "1"{"Naslednji čet."}
            }
        }
        tue{
            relative{
                "-1"{"Prejšnji torek"}
                "0"{"Ta torek"}
                "1"{"Naslednji torek"}
            }
        }
        tue-narrow{
            relative{
                "-1"{"Prejš. tor."}
                "0"{"Ta tor."}
                "1"{"Nasl. tor."}
            }
        }
        tue-short{
            relative{
                "-1"{"Prejšnji tor."}
                "0"{"Ta tor."}
                "1"{"Naslednji tor."}
            }
        }
        wed{
            relative{
                "-1"{"Prejšnjo sredo"}
                "0"{"To sredo"}
                "1"{"Naslednjo sredo"}
            }
        }
        wed-narrow{
            relative{
                "-1"{"Prejš. sr."}
                "0"{"To sr."}
                "1"{"Nasl. sr."}
            }
        }
        wed-short{
            relative{
                "-1"{"Prejšnjo sr."}
                "0"{"To sr."}
                "1"{"Naslednjo sr."}
            }
        }
        week{
            dn{"Teden"}
            relative{
                "-1"{"prejšnji teden"}
                "0"{"ta teden"}
                "1"{"naslednji teden"}
            }
            relativeTime{
                future{
                    few{"čez {0} tedne"}
                    one{"čez {0} teden"}
                    other{"čez {0} tednov"}
                    two{"čez {0} tedna"}
                }
                past{
                    few{"pred {0} tedni"}
                    one{"pred {0} tednom"}
                    other{"pred {0} tedni"}
                    two{"pred {0} tednoma"}
                }
            }
        }
        week-narrow{
            dn{"ted."}
            relativeTime{
                future{
                    few{"čez {0} tedne"}
                    one{"čez {0} teden"}
                    other{"čez {0} tednov"}
                    two{"čez {0} tedna"}
                }
                past{
                    few{"pred {0} tedni"}
                    one{"pred {0} tednom"}
                    other{"pred {0} tedni"}
                    two{"pred {0} tednoma"}
                }
            }
        }
        week-short{
            dn{"ted."}
            relativeTime{
                future{
                    few{"čez {0} tedne"}
                    one{"čez {0} teden"}
                    other{"čez {0} tednov"}
                    two{"čez {0} tedna"}
                }
                past{
                    few{"pred {0} tedni"}
                    one{"pred {0} tednom"}
                    other{"pred {0} tedni"}
                    two{"pred {0} tednoma"}
                }
            }
        }
        weekday{
            dn{"Dan v tednu"}
        }
        year{
            dn{"Leto"}
            relative{
                "-1"{"lani"}
                "0"{"letos"}
                "1"{"naslednje leto"}
            }
            relativeTime{
                future{
                    few{"čez {0} leta"}
                    one{"čez {0} leto"}
                    other{"čez {0} let"}
                    two{"čez {0} leti"}
                }
                past{
                    few{"pred {0} leti"}
                    one{"pred {0} letom"}
                    other{"pred {0} leti"}
                    two{"pred {0} letoma"}
                }
            }
        }
        year-narrow{
            dn{"leto"}
            relativeTime{
                future{
                    few{"čez {0} leta"}
                    one{"čez {0} leto"}
                    other{"čez {0} let"}
                    two{"čez {0} leti"}
                }
                past{
                    few{"pred {0} leti"}
                    one{"pred {0} letom"}
                    other{"pred {0} leti"}
                    two{"pred {0} letoma"}
                }
            }
        }
        year-short{
            dn{"leto"}
            relativeTime{
                future{
                    few{"čez {0} leta"}
                    one{"čez {0} leto"}
                    other{"čez {0} let"}
                    two{"čez {0} leti"}
                }
                past{
                    few{"pred {0} leti"}
                    one{"pred {0} letom"}
                    other{"pred {0} leti"}
                    two{"pred {0} letoma"}
                }
            }
        }
        zone{
            dn{"Časovni pas"}
        }
    }
    listPattern{
        standard{
            2{"{0} in {1}"}
            end{"{0} in {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit{
            2{"{0} in {1}"}
            end{"{0} in {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit-narrow{
            2{"{0} in {1}"}
            end{"{0} in {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit-short{
            2{"{0} in {1}"}
            end{"{0} in {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"Angleški"}
        US{"imperialni"}
        metric{"metrični"}
    }
    transformNames{
        BGN{"BGN"}
        Numeric{"Številsko"}
        Tone{"Ton"}
        UNGEGN{"UNGEGN"}
        x-Accents{"Accents"}
        x-Fullwidth{"Polna širina"}
        x-Halfwidth{"Polovična širina"}
        x-Jamo{"Jamo"}
        x-Pinyin{"Pinjin"}
        x-Publishing{"Publishing"}
    }
}
