﻿// ***************************************************************************
// *
// * Copyright (C) 2009 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/ii.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/ii.xml
 */
ii{
    Countries{
        BR{"ꀠꑭ"}
        CN{"ꍏꇩ"}
        DE{"ꄓꇩ"}
        FR{"ꃔꇩ"}
        GB{"ꑱꇩ"}
        IN{"ꑴꄗ"}
        IT{"ꑴꄊꆺ"}
        JP{"ꏝꀪ"}
        RU{"ꊉꇆꌦ"}
        US{"ꂰꇩ"}
        ZZ{"ꃅꄷꅉꀋꐚꌠ"}
    }
    Currencies{
        XXX{
            "XXX",
            "ꅉꀋꐚꌠꌋꆀꎆꃀꀋꈁꀐꌠ",
        }
    }
    ExemplarCharacters{"[ꀀ-ꒌ]"}
    Languages{
        de{"ꄓꇩꉙ"}
        en{"ꑱꇩꉙ"}
        es{"ꑭꀠꑸꉙ"}
        fr{"ꃔꇩꉙ"}
        ii{"ꆈꌠꉙ"}
        it{"ꑴꄊꆺꉙ"}
        ja{"ꏝꀪꉙ"}
        pt{"ꁍꄨꑸꉙ"}
        pt_BR{"ꀠꑟꁍꄨꑸꉙ"}
        ru{"ꊉꇩꉙ"}
        und{"ꅉꀋꌠꅇꂷ"}
        zh{"ꍏꇩꉙ"}
        zh_Hans{"ꈝꐯꍏꇩꉙ"}
        zh_Hant{"ꀎꋏꍏꇩꉙ"}
    }
    LocaleScript{
        "Yiii",
    }
    NumberElements{
        ".",
        ",",
        ";",
        "%",
        "0",
        "#",
        "-",
        "E",
        "‰",
        "∞",
        "NaN",
        "+",
    }
    Scripts{
        Arab{"ꀊꇁꀨꁱꂷ"}
        Cyrl{"ꀊꆨꌦꇁꃚꁱꂷ"}
        Hans{"ꈝꐯꉌꈲꁱꂷ"}
        Hant{"ꀎꋏꉌꈲꁱꂷ"}
        Latn{"ꇁꄀꁱꂷ"}
        Yiii{"ꆈꌠꁱꂷ"}
        Zxxx{"ꁱꀋꉆꌠ"}
        Zzzz{"ꅉꀋꐚꌠꁱꂷ"}
    }
    Types{
        calendar{
            gregorian{"ꄉꉻꃅꑍ"}
            islamic{"ꑳꌦꇂꑍꉖ"}
        }
    }
    Version{"1.10"}
    calendar{
        gregorian{
            AmPmMarkers{
                "ꎸꄑ",
                "ꁯꋒ",
            }
            dayNames{
                format{
                    abbreviated{
                        "ꆏꑍ",
                        "ꆏꋍ",
                        "ꆏꑍ",
                        "ꆏꌕ",
                        "ꆏꇖ",
                        "ꆏꉬ",
                        "ꆏꃘ",
                    }
                    wide{
                        "ꑭꆏꑍ",
                        "ꆏꊂꋍ",
                        "ꆏꊂꑍ",
                        "ꆏꊂꌕ",
                        "ꆏꊂꇖ",
                        "ꆏꊂꉬ",
                        "ꆏꊂꃘ",
                    }
                }
                stand-alone{
                    narrow{
                        "ꆏ",
                        "ꋍ",
                        "ꑍ",
                        "ꌕ",
                        "ꇖ",
                        "6",
                        "ꃘ",
                    }
                }
            }
            eras{
                abbreviated{
                    "ꃅꋊꂿ",
                    "ꃅꋊꊂ",
                }
            }
            fields{
                day{
                    dn{"ꑍ"}
                    relative{
                        "-1"{"ꀋꅔꉈ"}
                        "-2"{"ꎴꂿꋍꑍ"}
                        "0"{"ꀃꑍ"}
                        "1"{"ꃆꏂꑍ"}
                        "2"{"ꌕꀿꑍ"}
                    }
                }
                dayperiod{
                    dn{"ꎸꄑ/ꁯꋒ"}
                }
                era{
                    dn{"ꃅꋊ"}
                }
                hour{
                    dn{"ꄮꈉ"}
                }
                minute{
                    dn{"ꃏ"}
                }
                month{
                    dn{"ꆪ"}
                }
                second{
                    dn{"ꇙ"}
                }
                week{
                    dn{"ꑭꆏ"}
                }
                weekday{
                    dn{"ꆏꑍ"}
                }
                year{
                    dn{"ꈎ"}
                }
                zone{
                    dn{"ꃅꄷꄮꈉ"}
                }
            }
            monthNames{
                format{
                    wide{
                        "ꋍꆪ",
                        "ꑍꆪ",
                        "ꌕꆪ",
                        "ꇖꆪ",
                        "ꉬꆪ",
                        "ꃘꆪ",
                        "ꏃꆪ",
                        "ꉆꆪ",
                        "ꈬꆪ",
                        "10",
                        "ꊰꊪꆪ",
                        "ꊰꑋꆪ",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "ꃅꑌ",
                        "ꃅꎸ",
                        "ꃅꍵ",
                        "Q4",
                    }
                    wide{
                        "ꃅꑌ",
                        "ꃅꎸ",
                        "Q3",
                        "Q4",
                    }
                }
                stand-alone{
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                }
            }
        }
    }
    codePatterns{
        language{"ꅇꉙ: {0}"}
        script{"ꇇꁱ: {0}"}
        territory{"ꃅꄷ: {0}"}
    }
    measurementSystemNames{
        US{"ꂰꇩ"}
        metric{"ꂰꌬꌠ"}
    }
    zoneStrings{
        "Etc:Unknown"{
            ec{"ꅉꀋꐚꌠ"}
        }
    }
}
