﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/uz_Arab.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/uz_Arab.xml
 */
uz_Arab{
    %%Parent{"root"}
    AuxExemplarCharacters{"[\u200C\u200D ټ ځ څ ډ ړ ږ ښ ګ ڼ ي ۍ ې]"}
    ExemplarCharacters{
        "[\u064B \u064C \u064D \u064E \u064F \u0650 \u0651 \u0652 \u0654 \u0670 ء آ أ"
        " ؤ ئ ا ب پ ة ت ث ج چ ح خ د ذ ر ز ژ س ش ص ض ط ظ ع غ ف ق ک گ ل م ن ه و ۇ ۉ ی]"
    }
    LocaleScript{
        "Arab",
    }
    NumberElements{
        arabext{
            symbols{
                decimal{"٫"}
                exponential{"×۱۰^"}
                group{"٬"}
                percentSign{"٪"}
            }
        }
        default{"arabext"}
        latn{
            symbols{
                decimal{","}
                group{"."}
                minusSign{"−"}
            }
        }
        native{"arabext"}
    }
    Version{"2.0.82.45"}
    layout{
        characters{"right-to-left"}
    }
}
