﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/kl.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/kl.xml
 */
kl{
    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 æ ø å]"
    }
    LocaleScript{
        "Latn",
    }
    NumberElements{
        latn{
            patterns{
                currencyFormat{"¤#,##0.00;¤-#,##0.00"}
                percentFormat{"#,##0 %"}
            }
            symbols{
                decimal{","}
                group{"."}
            }
        }
    }
    Version{"2.0.82.45"}
    calendar{
        gregorian{
            dayNames{
                format{
                    abbreviated{
                        "sab",
                        "ata",
                        "mar",
                        "pin",
                        "sis",
                        "tal",
                        "arf",
                    }
                    wide{
                        "sabaat",
                        "ataasinngorneq",
                        "marlunngorneq",
                        "pingasunngorneq",
                        "sisamanngorneq",
                        "tallimanngorneq",
                        "arfininngorneq",
                    }
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "jan",
                        "feb",
                        "mar",
                        "apr",
                        "maj",
                        "jun",
                        "jul",
                        "aug",
                        "sep",
                        "okt",
                        "nov",
                        "dec",
                    }
                    wide{
                        "januari",
                        "februari",
                        "martsi",
                        "aprili",
                        "maji",
                        "juni",
                        "juli",
                        "augustusi",
                        "septemberi",
                        "oktoberi",
                        "novemberi",
                        "decemberi",
                    }
                }
                stand-alone{
                    abbreviated{
                        "jan",
                        "feb",
                        "mar",
                        "apr",
                        "maj",
                        "jun",
                        "jul",
                        "aug",
                        "sep",
                        "okt",
                        "nov",
                        "dec",
                    }
                    wide{
                        "januari",
                        "februari",
                        "martsi",
                        "aprili",
                        "maji",
                        "juni",
                        "juli",
                        "augustusi",
                        "septemberi",
                        "oktoberi",
                        "novemberi",
                        "decemberi",
                    }
                }
            }
        }
    }
    units{
        day{
            one{"{0} ulloq unnuarlu"}
            other{"{0} ulloq unnuarlu"}
        }
        hour{
            one{"{0} nalunaaquttap-akunnera"}
            other{"{0} nalunaaquttap-akunnera"}
        }
        minute{
            one{"{0} minutsi"}
            other{"{0} minutsi"}
        }
        month{
            one{"{0} qaammat"}
            other{"{0} qaammat"}
        }
        second{
            one{"{0} sekundi"}
            other{"{0} sekundi"}
        }
        week{
            one{"{0} sapaatip-akunnera"}
            other{"{0} sapaatip-akunnera"}
        }
        year{
            one{"{0} ukioq"}
            other{"{0} ukioq"}
        }
    }
}
