﻿// ***************************************************************************
// *
// * Copyright (C) 2008 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/pa_Arab.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/pa_Arab.xml
 */
pa_Arab{
    AuxExemplarCharacters{"[أ ٻ ة ٺ ټ ٽ]"}
    Countries{
        PK{"پکستان"}
    }
    Currencies{
        EUR{
            "€",
            "يورو",
        }
        INR{
            "ر [INR]",
            "روپئیہ [INR]",
        }
        PKR{
            "ر",
            "روپئیہ",
        }
    }
    ExemplarCharacters{"[ُ ء آ ؤ ئ-ب پ ت ث ٹ ج چ ح-ذ ڈ ر ز ڑ ژ س-غ ف ق ک گ ل-ن ں ه ھ ہ و ی ے]"}
    Languages{
        pa{"پنجاب"}
    }
    LocaleScript{
        "Arab",
    }
    Scripts{
        Arab{"العربية"}
        Guru{"گُرمُکھی"}
    }
    Version{"1.20"}
    calendar{
        gregorian{
            dayNames{
                format{
                    wide{
                        "اتوار",
                        "پیر",
                        "منگل",
                        "بُدھ",
                        "جمعرات",
                        "جمعہ",
                        "ہفتہ",
                    }
                }
            }
            eras{
                wide{
                    "ايساپورو",
                    "سں",
                }
            }
            fields{
                day{
                    dn{"دئن"}
                }
                hour{
                    dn{"گھنٹا"}
                }
                minute{
                    dn{"منٹ"}
                }
                month{
                    dn{"مہينا"}
                }
                week{
                    dn{"ہفتہ"}
                }
                weekday{
                    dn{"ہفتے دا دن"}
                }
                year{
                    dn{"ورھا"}
                }
                zone{
                    dn{"ٹپہ"}
                }
            }
            monthNames{
                format{
                    wide{
                        "جنوری",
                        "فروری",
                        "مارچ",
                        "اپریل",
                        "مئ",
                        "جون",
                        "جولائی",
                        "اگست",
                        "ستمبر",
                        "اکتوبر",
                        "نومبر",
                        "دسمبر",
                    }
                }
            }
            quarters{
                format{
                    wide{
                        "چوتھاي پہلاں",
                        "چوتھاي دوجا",
                        "چوتھاي تيجا",
                        "چوتھاي چوتھا",
                    }
                }
            }
        }
    }
    layout{
        characters{"right-to-left"}
        lines{"top-to-bottom"}
    }
}
