comment_char    %
escape_char     /
% Arabic language locale for Bahrain.
% Contributed by Kentaroh Noji <knoji@jp.ibm.com> and
% Tetsuji Orita <orita@jp.ibm.com>.

LC_IDENTIFICATION
title      "Arabic language locale for Bahrain"
source     "IBM Globalization Center of Competency, Yamato Software Laboratory"
address    "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact    ""
email      "bug-glibc-locales@gnu.org"
tel        ""
fax        ""
language   "Arabic"
territory  "Bahrain"
revision   "1.0"
date       "2000-07-20"
%
category  "ar_BH:2000";LC_IDENTIFICATION
category  "ar_BH:2000";LC_CTYPE
category  "ar_BH:2000";LC_COLLATE
category  "ar_BH:2000";LC_TIME
category  "ar_BH:2000";LC_NUMERIC
category  "ar_BH:2000";LC_MONETARY
category  "ar_BH:2000";LC_MESSAGES
category  "ar_BH:2000";LC_PAPER
category  "ar_BH:2000";LC_NAME
category  "ar_BH:2000";LC_ADDRESS
category  "ar_BH:2000";LC_TELEPHONE

END LC_IDENTIFICATION


LC_CTYPE
copy "ar_EG"
END LC_CTYPE

LC_COLLATE

% Copy the template from ISO/IEC 14651
copy "iso14651_t1"

END LC_COLLATE

LC_MONETARY
% This is the POSIX Locale definition the LC_MONETARY category.
% These are generated based on XML base Locale definition file
% for IBM Class for Unicode/Java
%
int_curr_symbol       "<U0042><U0048><U0044><U0020>"
currency_symbol       "<U062F><U002E><U0628><U002E>"
mon_decimal_point     "<U002E>"
mon_thousands_sep     "<U002C>"
mon_grouping          3
positive_sign         ""
negative_sign         "<U002D>"
int_frac_digits       3
frac_digits           3
p_cs_precedes         1
p_sep_by_space        1
n_cs_precedes         1
n_sep_by_space        1
p_sign_posn           1
n_sign_posn           2
%
END LC_MONETARY


LC_NUMERIC
% This is the POSIX Locale definition for the LC_NUMERIC  category.
%
decimal_point          "<U002E>"
thousands_sep          "<U002C>"
grouping               3
%
END LC_NUMERIC


LC_TIME
% This is the POSIX Locale definition for the LC_TIME category.
% These are generated based on XML base Locale definition file
% for IBM Class for Unicode/Java
%
% Abbreviated weekday names (%a)
abday       "<U062D>";"<U0646>";/
            "<U062B>";"<U0631>";/
            "<U062E>";"<U062C>";/
            "<U0633>"
%
% Full weekday names (%A)
day         "<U0627><U0644><U0623><U062D><U062F>";/
            "<U0627><U0644><U0627><U062B><U0646><U064A><U0646>";/
            "<U0627><U0644><U062B><U0644><U0627><U062B><U0627><U0621>";/
            "<U0627><U0644><U0623><U0631><U0628><U0639><U0627><U0621>";/
            "<U0627><U0644><U062E><U0645><U064A><U0633>";/
            "<U0627><U0644><U062C><U0645><U0639><U0629>";/
            "<U0627><U0644><U0633><U0628><U062A>"
%
% Abbreviated month names (%b)
abmon       "<U064A><U0646><U0627>";"<U0641><U0628><U0631>";/
            "<U0645><U0627><U0631>";"<U0623><U0628><U0631>";/
            "<U0645><U0627><U064A>";"<U064A><U0648><U0646>";/
            "<U064A><U0648><U0644>";"<U0623><U063A><U0633>";/
            "<U0633><U0628><U062A>";"<U0623><U0643><U062A>";/
            "<U0646><U0648><U0641>";"<U062F><U064A><U0633>"
%
% Full month names (%B)
mon         "<U064A><U0646><U0627><U064A><U0631>";/
            "<U0641><U0628><U0631><U0627><U064A><U0631>";/
            "<U0645><U0627><U0631><U0633>";/
            "<U0623><U0628><U0631><U064A><U0644>";/
            "<U0645><U0627><U064A><U0648>";/
            "<U064A><U0648><U0646><U064A><U0648>";/
            "<U064A><U0648><U0644><U064A><U0648>";/
            "<U0623><U063A><U0633><U0637><U0633>";/
            "<U0633><U0628><U062A><U0645><U0628><U0631>";/
            "<U0623><U0643><U062A><U0648><U0628><U0631>";/
            "<U0646><U0648><U0641><U0645><U0628><U0631>";/
            "<U062F><U064A><U0633><U0645><U0628><U0631>"
%
% Equivalent of AM PM
am_pm       "<U0635>";"<U0645>"
%
% Appropriate date and time representation
% %d %b, %Y%Z %I:%M:%S
d_t_fmt     "<U0025><U0064><U0020><U0025><U0062><U002C><U0020><U0025>/
<U0059><U0020><U0025><U005A><U0020><U0025><U0049><U003A><U0025><U004D>/
<U003A><U0025><U0053><U0020><U0025><U0070>"
%
% Appropriate date representation
% %d %b, %Y
d_fmt       "<U0025><U0064><U0020><U0025><U0062><U002C><U0020><U0025><U0059>"
%
% Appropriate time representation
% %Z %I:%M:%S
t_fmt       "<U0025><U005A><U0020><U0025><U0049><U003A><U0025><U004D>/
<U003A><U0025><U0053><U0020>"
%
% Appropriate 12 h time representation (%r)
t_fmt_ampm  "<U0025><U005A><U0020><U0025><U0049><U003A><U0025><U004D>/
<U003A><U0025><U0053><U0020><U0025><U0070>"
%
% Appropriate date representation (date(1))   "%a %b %e %H:%M:%S %Z %Y"
date_fmt	"<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
<U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
<U0025><U005A><U0020><U0025><U0059>"
END LC_TIME


LC_MESSAGES
copy "ar_EG"
END LC_MESSAGES


LC_PAPER
% This is the ISO_IEC TR14652 Locale definition for the
% LC_PAPER category
height      297
width       210

END LC_PAPER


LC_NAME
% This is the ISO_IEC TR14652 Locale definition for the
% LC_NAME category.
%
name_fmt    "<U0025><U0070><U0025><U0074><U0025><U0066><U0025><U0074>/
<U0025><U0067>"
name_gen    "<U002D><U0073><U0061><U006E>"
name_mr     "<U004D><U0072><U002E>"
name_mrs    "<U004D><U0072><U0073><U002E>"
name_miss   "<U004D><U0069><U0073><U0073><U002E>"
name_ms     "<U004D><U0073><U002E>"

END LC_NAME


LC_ADDRESS
% This is the ISO_IEC TR14652 Locale definition for the
% LC_ADDRESS
postal_fmt  "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
<U0025><U0062><U0025><U0065><U0025><U0072>"
country_ab2 "<U0042><U0048>"
country_ab3 "<U0042><U0048><U0052>"
country_num 048

END LC_ADDRESS


LC_TELEPHONE
% This is the ISO_IEC TR14652 Locale definition for the
%
tel_int_fmt "<U002B><U0025><U0063><U0020><U003B><U0025><U0061><U0020>/
<U003B><U0025><U006C>"
int_prefix  "<U0039><U0037><U0033>"
int_select  "<U0030>"

END LC_TELEPHONE


LC_MEASUREMENT
% This is the ISO_IEC TR14652 Locale definition for the
%
measurement 1

END LC_MEASUREMENT
