﻿// ***************************************************************************
// *
// * Copyright (C) 2010 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/si.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/si.xml
 */
si{
    AuxExemplarCharacters{"[\u200B \u200C \u200D ඎ ඏ ඐ ඦ ෳ]"}
    ExemplarCharacters{
        "[අ ආ ඇ ඈ ඉ ඊ උ ඌ ඍ එ ඒ ඓ ඔ ඕ ඖ ං ඃ ක ඛ ග ඝ ඞ ඟ ච ඡ ජ ඣ ඥ ඤ ට ඨ ඩ ඪ ණ ඬ ත ථ ද"
        " ධ න ඳ ප ඵ බ භ ම ඹ ය ර ල ව ශ ෂ ස හ ළ ෆ ා ැ ෑ \u0DD2 \u0DD3 \u0DD4 \u0DD6 ෘ ෲ"
        " ෟ \u0DCA ෙ ේ ෛ ො ෝ ෞ]"
    }
    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{
        "Sinh",
    }
    NumberElements{
        latn{
            patterns{
                currencyFormat{"¤#,##,##0.00;(¤#,##,##0.00)"}
                decimalFormat{"#,##,##0.###"}
                percentFormat{"#,##,##0%"}
            }
        }
    }
    Version{"2.0.47.63"}
    calendar{
        gregorian{
            AmPmMarkers{
                "පෙ.ව.",
                "ප.ව.",
            }
            DateTimePatterns{
                "h:mm:ss a zzzz",
                "h:mm:ss a z",
                "h:mm:ss a",
                "h:mm a",
                "EEEE, y MMMM d",
                "y MMMM d",
                "y MMM d",
                "yyyy/MM/dd",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            dayNames{
                format{
                    abbreviated{
                        "ඉරි",
                        "සඳු",
                        "අඟ",
                        "බදා",
                        "බ්‍රහ",
                        "සිකු",
                        "සෙන",
                    }
                    wide{
                        "ඉරිදා",
                        "සඳුදා",
                        "අඟහරුවාදා",
                        "බදාදා",
                        "බ්‍රහස්පතින්දා",
                        "සිකුරාදා",
                        "සෙනසුරාදා",
                    }
                }
                stand-alone{
                    narrow{
                        "ඉ",
                        "ස",
                        "අ",
                        "බ",
                        "බ්‍ර",
                        "සි",
                        "සෙ",
                    }
                }
            }
            eras{
                abbreviated{
                    "ක්‍රි.පූ.",
                    "ක්‍රි.ව.",
                }
                wide{
                    "ක්‍රිස්තු පූර්‍ව",
                    "ක්‍රිස්තු වර්‍ෂ",
                }
            }
            fields{
                day{
                    relative{
                        "-1"{"ඊයෙ"}
                        "0"{"අද"}
                        "1"{"හෙට"}
                    }
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "ජන",
                        "පෙබ",
                        "මාර්ත",
                        "අප්‍රේල",
                        "මැය",
                        "ජූන",
                        "ජූල",
                        "අගෝ",
                        "සැප",
                        "ඔක",
                        "නොවැ",
                        "දෙසැ",
                    }
                    wide{
                        "ජනවාර",
                        "පෙබරවාර",
                        "මාර්ත",
                        "අප්‍රේල්",
                        "මැයි",
                        "ජූන",
                        "ජූලි",
                        "අගෝස්තු",
                        "සැප්තැම්බර්",
                        "ඔක්තෝබර්",
                        "නොවැම්බර්",
                        "දෙසැම්බර්",
                    }
                }
                stand-alone{
                    narrow{
                        "ජ",
                        "පෙ",
                        "මා",
                        "අ",
                        "මැ",
                        "ජූ",
                        "ජූ",
                        "අ",
                        "සැ",
                        "ඔ",
                        "නො",
                        "දෙ",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "කාර්:1",
                        "කාර්:2",
                        "කාර්:3",
                        "කාර්:4",
                    }
                    wide{
                        "1 වන කාර්තුව",
                        "2 වන කාර්තුව",
                        "3 වන කාර්තුව",
                        "4 වන කාර්තුව",
                    }
                }
            }
        }
    }
}
