﻿// ***************************************************************************
// *
// * Copyright (C) 2011 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/ml.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/ml.xml
 */
ml{
    AuxExemplarCharacters{"[]"}
    ExemplarCharacters{
        "[\u200C\u200D ഃ അ ആ ഇ ഈ ഉ ഊ ഋ ൠ ഌ ൡ എ ഏ ഐ ഒ ഓ ഔ ക ഖ ഗ ഘ ങ ച ഛ ജ ഝ ഞ ട ഠ ഡ ഢ "
        "ണ ത ഥ ദ ധ ന പ ഫ ബ ഭ മ ം യ ര ല വ ശ ഷ സ ഹ ള ഴ റ ാ ി ീ \u0D41 \u0D42 \u0D43 െ േ"
        " ൈ ൊ ോ ൗ ൌ \u0D4D]"
    }
    ExemplarCharactersCurrency{"[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{
        "[അ ആ ഇ ഈ ഉ ഊ ഋ എ ഏ ഐ ഒ ഓ ഔ ക ഖ ഗ ഘ ങ ച ഛ ജ ഝ ഞ ട ഠ ഡ ഢ ണ ത ഥ ദ ധ ന പ ഫ ബ ഭ മ"
        " യ ര ല വ ശ ഷ സ ഹ ള ഴ റ]"
    }
    LocaleScript{
        "Mlym",
    }
    NumberElements{
        default{"mlym"}
        latn{
            patterns{
                currencyFormat{"#,##,##0.00¤"}
                decimalFormat{"#,##,##0.###"}
                percentFormat{"#,##,##0%"}
                scientificFormat{"#E0"}
            }
            symbols{
                decimal{"."}
                exponential{"E"}
                group{","}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
            }
        }
    }
    Version{"2.0.58.79"}
    calendar{
        gregorian{
            AmPmMarkers{
                "രാവിലെ",
                "വൈകുന്നേരം",
            }
            DateTimePatterns{
                "h:mm:ss a zzzz",
                "h:mm:ss a z",
                "h:mm:ss a",
                "h:mm a",
                "y, MMMM d, EEEE",
                "y, MMMM d",
                "y, MMM d",
                "dd/MM/yy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                EEEd{"d EEE"}
                M{"L"}
                MEd{"M/d, E"}
                MMM{"LLL"}
                MMMEd{"MMM d, E"}
                MMMMEd{"MMMM d, E"}
                MMMMd{"MMMM d"}
                MMMd{"MMM d"}
                MMdd{"dd-MM"}
                Md{"d/M"}
                d{"d"}
                hm{"h:mm a"}
                ms{"mm:ss"}
                y{"y"}
                yM{"M-y"}
                yMEd{"d-M-yyyy, EEE"}
                yMMM{"y MMM"}
                yMMMEd{"y MMM d, EEE"}
                yMMMM{"y MMMM"}
                yMMMd{"y MMM d"}
                yMd{"d/M/y"}
                yQ{"yyyy Q"}
                yQQQ{"y QQQ"}
                yyQ{"Q yy"}
                yyyyMM{"MM-yyyy"}
                yyyyMMMM{"MMMM y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "ഞായര്‍",
                        "തിങ്കള്‍",
                        "ചൊവ്വ",
                        "ബുധന്‍",
                        "വ്യാഴം",
                        "വെള്ളി",
                        "ശനി",
                    }
                    wide{
                        "ഞായറാഴ്ച",
                        "തിങ്കളാഴ്ച",
                        "ചൊവ്വാഴ്ച",
                        "ബുധനാഴ്ച",
                        "വ്യാഴാഴ്ച",
                        "വെള്ളിയാഴ്ച",
                        "ശനിയാഴ്ച",
                    }
                }
                stand-alone{
                    narrow{
                        "ഞാ",
                        "തി",
                        "ചൊ",
                        "ബു",
                        "വ്യാ",
                        "വെ",
                        "ശ",
                    }
                }
            }
            eras{
                abbreviated{
                    "ക്രി.മൂ",
                    "ക്രി.പി.",
                }
                wide{
                    "ക്രിസ്തുവിനു് മുമ്പ്‌",
                    "ക്രിസ്തുവിന് പിന്‍പ്",
                }
            }
            fields{
                day{
                    dn{"ദിവസം"}
                    relative{
                        "-1"{"ഇന്നലെ"}
                        "-2"{"മിനിഞ്ഞാന്ന്"}
                        "-3"{"മൂന്നുദിവസം മുന്പ്"}
                        "0"{"ഇന്ന്"}
                        "1"{"നാളെ"}
                        "2"{"മറ്റന്നാള്‍"}
                        "3"{"ഇന്നേയ്ക്ക് മൂന്നാം പക്കം"}
                    }
                }
                dayperiod{
                    dn{"am/pm"}
                }
                era{
                    dn{"കാലഘട്ടം"}
                }
                hour{
                    dn{"മണിക്കൂര്‍"}
                }
                minute{
                    dn{"മിനിട്ട്"}
                }
                month{
                    dn{"മാസം"}
                    relative{
                        "-1"{"കഴിഞ്ഞ മാസം"}
                        "0"{"ഈ മാസം"}
                        "1"{"അടുത്ത മാസം"}
                    }
                }
                second{
                    dn{"സെക്കന്‍റ്"}
                }
                week{
                    dn{"ആഴ്ച"}
                    relative{
                        "-1"{"കഴിഞ്ഞ ആഴ്‌ച"}
                        "0"{"ഈ ആഴ്ച"}
                        "1"{"അടുത്ത ആഴ്ച"}
                    }
                }
                weekday{
                    dn{"ആഴ്ചയിലെ ദിവസം"}
                }
                year{
                    dn{"വര്‍ഷം"}
                    relative{
                        "-1"{"കഴിഞ്ഞ വര്‍ഷം"}
                        "0"{"ഈ വര്‍‌ഷം"}
                        "1"{"അടുത്തവര്‍ഷം"}
                    }
                }
                zone{
                    dn{"മേഖല"}
                }
            }
            intervalFormats{
                M{
                    M{"M-M"}
                }
                MEd{
                    M{"d/M, E - d/M, E"}
                    d{"d/M, E - d/M, E"}
                }
                MMM{
                    M{"MMM-MMM"}
                }
                MMMEd{
                    M{"MMM d, E - MMM d, E"}
                    d{"MMM d, E - MMM d, E"}
                }
                MMMM{
                    M{"LLLL-LLLL"}
                }
                MMMd{
                    M{"MMM d - MMM d"}
                    d{"MMM d-d"}
                }
                Md{
                    M{"d/M - d/M"}
                    d{"d/M - 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/yy – M/yy"}
                    y{"M/yy – M/yy"}
                }
                yMEd{
                    M{"d/M/yy, E - d/M/yy, E"}
                    d{"d/M/yy, E - d/M/yy, E"}
                    y{"d/M/yy, E - d/M/yy, E"}
                }
                yMMM{
                    M{"y MMM-MMM"}
                    y{"y MMM - y MMM"}
                }
                yMMMEd{
                    M{"y MMM d, E - MMM d, E"}
                    d{"y, MMM d, E - d, E"}
                    y{"y MMM d, E - y MMM d, E"}
                }
                yMMMM{
                    M{"yyyy-MM – MM"}
                    y{"yyyy-MM – yyyy-MM"}
                }
                yMMMd{
                    M{"y MMM d - MMM d"}
                    d{"y MMM d-d"}
                    y{"y MMM d - y MMM d"}
                }
                yMd{
                    M{"d/M/yy – d/M/yy"}
                    d{"d/M/yy – d/M/yy"}
                    y{"d/M/yy – d/M/yy"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "ജനു",
                        "ഫെബ്രു",
                        "മാര്‍",
                        "ഏപ്രി",
                        "മേയ്",
                        "ജൂണ്‍",
                        "ജൂലൈ",
                        "ഓഗ",
                        "സെപ്റ്റം",
                        "ഒക്ടോ",
                        "നവം",
                        "ഡിസം",
                    }
                    wide{
                        "ജനുവരി",
                        "ഫെബ്രുവരി",
                        "മാര്‍ച്ച്",
                        "ഏപ്രില്‍",
                        "മേയ്",
                        "ജൂണ്‍",
                        "ജൂലൈ",
                        "ആഗസ്റ്റ്",
                        "സെപ്റ്റംബര്‍",
                        "ഒക്ടോബര്‍",
                        "നവംബര്‍",
                        "ഡിസംബര്‍",
                    }
                }
                stand-alone{
                    narrow{
                        "ജ",
                        "ഫെ",
                        "മാ",
                        "ഏ",
                        "മേ",
                        "ജൂ",
                        "ജൂ",
                        "ഓ",
                        "സെ",
                        "ഒ",
                        "ന",
                        "ഡി",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "Q1",
                        "Q2",
                        "Q3",
                        "Q4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "ഒന്നാം പാദം",
                        "രണ്ടാം പാദം",
                        "മൂന്നാം പാദം",
                        "നാലാം പാദം",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Q1",
                        "Q2",
                        "Q3",
                        "Q4",
                    }
                }
            }
        }
        indian{
            eras{
                abbreviated{
                    "ശക",
                }
            }
            monthNames{
                format{
                    wide{
                        "ചൈത്രം",
                        "വൈശാഖം",
                        "ജ്യേഷ്ഠം",
                        "ആഷാഢം",
                        "ശ്രാവണം",
                        "ഭാദ്രപാദം",
                        "ആശ്വിനം",
                        "കാര്‍ത്തികം",
                        "മാര്‍ഗശീര്‍ഷം",
                        "പൗഷം",
                        "മാഘം",
                        "ഫല്‍ഗുനം",
                    }
                }
                stand-alone{
                    narrow{
                        "ചൈ",
                        "വൈ",
                        "ജ്യേ",
                        "ആ",
                        "ശ്രാ",
                        "ഭാ",
                        "ആ",
                        "കാ",
                        "മാ",
                        "പൗ",
                        "മാ",
                        "ഫ",
                    }
                }
            }
        }
        islamic{
            eras{
                abbreviated{
                    "ഹിജറ",
                }
            }
            monthNames{
                format{
                    wide{
                        "മുഹറം",
                        "സഫര്‍",
                        "റബീഹുല്‍ അവ്വല്‍",
                        "റബീഹുല്‍ ആഖിര്‍",
                        "ജമാദുല്‍ അവ്വല്‍",
                        "ജമാദുല്‍ ആഖിര്‍",
                        "റജബ്",
                        "ശഹബാന്‍",
                        "റമളാന്‍",
                        "ശവ്വാല്‍",
                        "ദുല്‍ ഖഹദ്",
                        "ദുല്‍ ഹിജ്ജ",
                    }
                }
                stand-alone{
                    narrow{
                        "മു",
                        "സ",
                        "റ",
                        "റ",
                        "ജ",
                        "ജ",
                        "റ",
                        "ശ",
                        "റ",
                        "ശ",
                        "ദു",
                        "ദു",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"’"}
        alternateQuotationStart{"‘"}
        quotationEnd{"”"}
        quotationStart{"“"}
    }
    listPattern{
        standard{
            2{"{0} കൂടാതെ {1}"}
            end{"{0}, {1} എന്നിവ"}
        }
    }
    measurementSystemNames{
        UK{"യുകെ"}
        US{"യുഎസ്സ്"}
        metric{"മെട്രിക്ക്"}
    }
    units{
        day{
            one{"{0} ദിവസം"}
            other{"{0} ദിവസം"}
        }
        day-future{
            0{"0 ദിവസത്തില്‍"}
            1{"1 ദിവസത്തില്‍"}
            other{"{0} ദിവസത്തില്‍"}
        }
        day-past{
            0{"0 ദിവസം മുമ്പ്"}
            1{"1 ദിവസം മുമ്പ്"}
            other{"{0} ദിവസം മുമ്പ്"}
        }
        hour{
            one{"{0} മണിക്കൂര്‍"}
            other{"{0} മണിക്കൂര്‍"}
        }
        hour-future{
            0{"0 മണിക്കൂറില്‍"}
            1{"1 മണിക്കൂറില്‍"}
            other{"{0} മണിക്കൂറില്‍"}
        }
        hour-past{
            0{"0 മണിക്കൂര്‍ മുമ്പ്"}
            1{"1 മണിക്കൂര്‍ മുമ്പ്"}
            other{"{0} മണിക്കൂര്‍ മുമ്പ്"}
        }
        minute{
            one{"{0} മിനിട്ട്"}
            other{"{0} മിനിട്ട്"}
        }
        minute-future{
            0{"0 മിനിറ്റില്‍"}
            1{"1 മിനിറ്റിനുള്ളില്‍"}
            other{"{0} മിനിറ്റിനുള്ളില്‍"}
        }
        minute-past{
            0{"0 മിനിറ്റ് മുമ്പ്"}
            1{"1 മിനിറ്റ് മുമ്പ്"}
            other{"{0} മിനിറ്റ് മുമ്പ്"}
        }
        month{
            one{"{0} മാസം"}
            other{"{0} മാസം"}
        }
        month-future{
            0{"0 മാസത്തില്‍"}
            1{"1 മാസത്തില്‍"}
            other{"{0} മാസത്തില്‍"}
        }
        month-past{
            0{"0 മാസം മുമ്പ്"}
            1{"1 മാസം മുമ്പ്"}
            other{"{0} മാസം മുമ്പ്"}
        }
        second{
            one{"{0} സെക്കന്റ്"}
            other{"{0} സെക്കന്റ്"}
        }
        second-future{
            0{"0 സെക്കന്‍ഡില്‍"}
            1{"1 സെക്കന്‍ഡില്‍"}
            other{"{0} സെക്കന്‍ഡില്‍"}
        }
        second-past{
            0{"0 സെക്കന്‍റ് മുമ്പ്"}
            1{"1 സെക്കന്‍റ് മുമ്പ്"}
            other{"{0} സെക്കന്‍റ് മുമ്പ്"}
        }
        week{
            one{"{0} ആഴ്ച"}
            other{"{0} ആഴ്ച"}
        }
        week-future{
            0{"0 ആഴ്ചയില്‍"}
            1{"1 ആഴ്ചയില്‍"}
            other{"{0} ആഴ്ചയില്‍"}
        }
        week-past{
            0{"0 ആഴ്ച മുമ്പ്"}
            1{"1 ആഴ്ച മുമ്പ്"}
            other{"{0} ആഴ്ച മുമ്പ്"}
        }
        year{
            one{"{0} വര്‍ഷം"}
            other{"{0} വര്‍ഷം"}
        }
        year-future{
            0{"0 വര്‍ഷത്തില്‍"}
            1{"1 വര്‍ഷത്തില്‍"}
            other{"{0} വര്‍ഷത്തില്‍"}
        }
        year-past{
            0{"0 വര്‍ഷം മുമ്പ്"}
            1{"1 വര്‍ഷം മുമ്പ്"}
            other{"{0} വര്‍ഷം മുമ്പ്"}
        }
    }
    unitsShort{
        day{
            0{"0 ദിവസം‌"}
            1{"1 ദിവസം"}
            other{"{0} ദിവസം‌"}
        }
        hour{
            0{"0 മണിക്കൂര്‍"}
            1{"1 മണിക്കൂര്‍‌"}
            other{"{0} മണിക്കൂര്‍"}
        }
        minute{
            0{"0 മിനിറ്റ്"}
            1{"1 മിനിറ്റ്"}
            other{"{0} മിനിറ്റ്"}
        }
        month{
            0{"0 മാസങ്ങള്‍"}
            1{"1 മാസം"}
            other{"{0} മാസം"}
        }
        second{
            0{"0 സെക്കന്‍റ്"}
            1{"1 സെക്കന്‍റ്"}
            other{"{0} സെക്കന്‍റ്"}
        }
        week{
            0{"0 ആഴ്‌ച"}
            1{"1 ആഴ്‌ച"}
            other{"{0} ആഴ്‌ച"}
        }
        year{
            0{"0 വര്‍‌ഷം"}
            1{"1 വര്‍ഷം"}
            other{"{0} വര്‍‌ഷം"}
        }
    }
}
