﻿// ***************************************************************************
// *
// * 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.12"}
    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{"ꅉꀋꐚꌠ"}
        }
    }
}
