Current File : //proc/3/root/proc/2/cwd/opt/alt/python35/lib64/python3.5/__pycache__/locale.cpython-35.pyc
�q�\�#�^@s�dZddlZddlZddlZddlZddlZddlmZddl Z dddddd d
ddd
dddddddddddddgZ
dd�Zdd�Zyddl
TWncek
r4d Zd!Zd"ZdZd#Zd$Zd%Zd&ZeZd'd
�Zdd(d�ZYnXde�krJeZde�kr_eZeZiZe j e�d)d
��Zd*d+�Z!d,d-d.�Z"d/d0�Z#ej$d1�Z%d,d,d2d�Z&d,d,d3d4�Z'd,d5d�Z(d6d,d,d7d�Z)d8d
�Zd9d:�Z*e+d;d�Z,d<d�Z-d=d>�Z.eZ/d?d@�Z0dAdB�Z1dCd�Z2dDdE�Z3dFdG�Z4d�dJd�Z5edKd�Z6ddLd�ZedMd �Z7ej8j9dN�r�d6dOd�Z:n;ye;Wn!e<k
rd6dPd�Z:YnXd6dQd�Z:dRdSdTdSdUdVdWdXdYdXdZd[d\d]d^d_d`dadbdcdddVdedfdgdhdidjdkdVdldVdmdVdndodpdqdrdsdtdudvdjdwdxdydfdzd{d|d}d~dhdd�d�d�d�d�d�d�d�dXd�d�d�d�d�d[d�d�d�d�d�d�d�d�d�d�d�d�d�d_d�dad�dci,Z=xBe>e=j?��D].\Z@ZAe@jBd�d��Z@e=jCe@eA�qAWd�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�dddddddddddd d
d dd�dd
dTdSddddSddSdd�ddddSddSddddddddddd d!d"dd#d�d$d%d&d'd(d)d*d+d,d-d.d-d/d-d0d1d2d3d4d5d6d5d7d-d8d-d9d-d:d;d<d;d=d;d>d;d?d@dAdBdCdDdEdFdGd@dHdIdJdKdLd@dMdNdOdPdQdRdSdTdUdVdWdXdYdXdZd[d\d]d^d_d`d]dadbdUd�dcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~dd�d�drd�d�d�d�d�d�d�d�d�d�d�d�d�drd�d�d�drd�d�d�dSd�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d[d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�dd�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�dd@dd@ddFdd@dddddd�d d�d
d]ddd
ddddddddddddddddddddddd+dd+dd+d d!d"d#d$d%d&d%d'd%d(d)d*d+d,d-d.d/d0d1d2d3d4d3d5d6d7d8d9d3d:d3d;d1d<d1d=d�d>d�d?d�d@d�dAd�dBd�dCdDdEdFdGdDdHdDdIdJdKdJdLdJdMddNddOdPdQdRdSdRdTdRdUdVdWdVdXdRdYdRdZdRd[dRd\dRd]d^d_d^d`d^dadbdcd^dddedfdgdhdgdidjdkdldmdldndodpdodqdodrdsdtdodudodvdwdxdwdydzd{d|d}d~dd~d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�dd�dd�d�d�d�d�d�d�d�d�d�d�d�d�dPd�d�d�dRd�dPd�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�ddddddddddddSd dSd
dddd
dddddddddddddddddddddddddd dd!d"d#d$d%d&d'd(d)d(d*d+d,d-d.d/d0d1d2d1d3d4d5d6d7d+d8d4d9d1d:d;d<d=d>d=d?d@dAd=dBdCdDdCdEdFdGdHdIdFdJdCdKdFdLdFdMdNdOdPdQdRdSdTdUdVdWdVdXd�dYd�dZd[d\d[d]d^d_d`dad`dbdcdddedfd4dgdcdhdidjd`dkd1dld4dmd1dndodpd4dqdVdrdVdsdodtd`dud`dvd`dwdxdydxdzd{d|d{d}d~dd�d�d~d�d�d�d�d�d~d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�dd�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d%d�d�d�d�d�d%d�d�d�d�d�d�d�d�d�d�d�d'd�d'd�d�d�d�i'ZDd�dddddddddd d
ddd
ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d,d.d/d0d1d2d3d4d5d6d7d8d7d9d:d;d<d=d>d$d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|dyd}d~dd�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�dddddddddd d
ddd
ddddddddddddddddddd d!d"d#d$d%d&d'd(d%d)d'd*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d5d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~dd�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�i�ZEd�d��ZFyeWne<k
rqYnXe
jGd��eHd�kr�eId��eI�eF�eI�eId��eI�e.�dS(�a�Locale support module.
The module provides low-level access to the C lib's locale APIs and adds high
level number formatting APIs as well as a locale aliasing engine to complement
these.
The aliasing engine includes support for many commonly used locale names and
maps them to values suitable for passing to the C lib's setlocale() function. It
also includes default encodings for all supported locale names.
�N)�str� getlocale�getdefaultlocale�getpreferredencoding�Error� setlocale�resetlocale�
localeconv�strcoll�strxfrmr�atof�atoi�format�
format_string�currency� normalize�LC_CTYPE�
LC_COLLATE�LC_TIME�LC_MONETARY�
LC_NUMERIC�LC_ALL�CHAR_MAXcCs||k||kS)zZ strcoll(string,string) -> int.
Compares two strings according to the locale.
�)�a�brr�+/opt/alt/python35/lib64/python3.5/locale.py�_strcoll!srcCs|S)z\ strxfrm(string) -> string.
Returns a string that behaves for cmp locale-aware.
r)�srrr�_strxfrm'sr)�*�������c$Cssddgdddddddddgd dd
dddd
dddddddddddddddddiS)zd localeconv() -> dict.
Returns numeric and monetary locale-specific parameters.
�groupingr!�currency_symbol��n_sign_posn�
p_cs_precedes�
n_cs_precedes�mon_grouping�n_sep_by_space�
decimal_point�.�
negative_sign�
positive_sign�p_sep_by_space�int_curr_symbol�p_sign_posn�
thousands_sep�mon_thousands_sep�frac_digits�mon_decimal_point�int_frac_digitsrrrrrr ?s$ cCs|dkrtd��dS)zd setlocale(integer,string=None) -> string.
Activates/queries locale processing.
Nr*�Cz*_locale emulation only supports "C" locale)Nr*r<)r)�category�valuerrrrWscCs t�}tr|jt�|S)N)�_localeconv�_override_localeconv�update)�drrrr ls
ccsfd}xY|D]Q}|tkr#dS|dkrS|dkrGtd��x |VqJW|V|}q
WdS)Nrzinvalid grouping)r�
ValueError)r(Z
last_interval�intervalrrr�_grouping_intervalszs
rEFc
CsBt�}||rdpd}||r.dp1d}|sE|dfS|d
dkr�|j�}|t|�d�}|}nd}d}g}xat|�D]S} |s�|dd kr�|}d}P|j|| d��|d| �}q�W|r |j|�|j�||j|�|t|�t|�dfS)Nr8r7r.r(rr&� r*�
0123456789���rH)r �rstrip�lenrE�append�reverse�join)
r�monetary�convr7r(ZstrippedZright_spacesZleft_spaces�groupsrDrrr�_group�s0
rQcCs�d}x.|r6||dkr6|d7}|d8}q Wt|�d}x.|rw||dkrw|d8}|d8}qJW|||d�S)NrrFr&)rJ)rZamountZlposZrposrrr�_strip_padding�s
rRzG%(?:\((?P<key>.*?)\))?(?P<modifiers>[-#0-9 +*.hlL]*?)[eEfFgGdiouxXcrs%]cGs`tj|�}|s4t|j��t|�krJtdt|���t|||||�S)z�Returns the locale-aware substitution of a %? specifier
(percent).
additional is for format strings which contain one or more
'*' modifiers.zHformat() must be given exactly one %%char format specifier, %s not valid)�_percent_re�matchrJ�grouprC�repr�_format)�percentr>r(rN�
additionalrTrrrr�s
%c Gs�|r||f|}n
||}|d dkr�d}|jd�}|rot|dd|�\|d<}t�|r�dp�d}|j|�}|r�t||�}nI|d
dkr�d}|r�t|d|�\}}|r�t||�}|S)Nr&ZeEfFgGrr1rNr:r0ZdiurHrH)�splitrQr rMrR) rXr>r(rNrYZ formattedZseps�partsr0rrrrW�s(
rWc Cslttj|��}tjd|�}t|tj�r�g}x|D]K}|j�ddkrr|jd�qF|jt |j�||��qFWn�t|t
�s�|f}g}d}x�|D]�}|j�d dkr�|jd�q�|jd�jd�}|jt|j�|||d||d|d|���|d|7}q�Wt
|�}||S)
z�Formats a string in the same way that the % formatting would use,
but takes the current locale into account.
Grouping is applied if the third parameter is true.z%sr&�%rZ modifiersr FrHrH)
�listrS�finditer�sub�
isinstance�collections�MappingrUrKr�tuple�countrW) �f�valr(ZpercentsZnew_fZnew_valZperc�iZ starcountrrrr�s0
&
TcCs�t�}||rdpd}|dkr7td��td|t|�|dd�}d|d }|r�||r|d
pd}||dkr�d
p�d}||dkr�dp�d} |r�|| r�dp�d|}n|| r�dp�d|}||dkr
dpd}
||dkr)dp,d}|
dkrMd|d}n~|
dkrf||}ne|
dkr||}nL|
dkr�|jd|�}n+|
dkr�|jd |�}n
||}|jdd�jd d�S)zIFormats val according to the currency settings
in the current locale.r;r9r!z9Currency formatting is not possible using the 'C' locale.z%%.%ifrNT�<�>r5r)rr-r,r/r4rFr*r+r6r2r3�(�)r&r'r#r%)r rCr�abs�replace)rfZsymbolr(Z
internationalrOZdigitsrZsmbZprecedesZ separatedZsign_posZsignrrrr�s6 "
cCs
td|�S)z8Convert float to string, taking the locale into account.z%.12g)r)rfrrrr+scCsNt�d}|r%|j|d�}t�d}|rJ|j|d�}|S)zHParses a string as a normalized number according to the locale settings.r7r*r0r1)r rm)�string�tsZddrrr�
delocalize/s
rpcCs|t|��S)z<Parses a string as a float according to the locale settings.)rp)rn�funcrrrr;scCstt|��S)zAConverts a string to an integer according to the locale settings.)�intrp)rnrrrr
?scCs[ttd�tddd�}t|dt|��td�}t|dt|��dS)Nr*z%di�[r&�isg��Q� @)rrr�printr
rr)�s1rrr�_testCs
rvcCs�d|kr(|d|jd��}n|}tj|�}tjjj|j�|�}|}|j�}|tkr�t|}n:|jdd�}|jdd�}|tkr�t|}|d|S)Nr1�_r*�-)�index� encodings�normalize_encoding�aliases�get�lower�locale_encoding_aliasrm)�code�encoding�langname�
norm_encodingrrr�_replace_encodingUs
r�cCsm|dkrad|kr |dS|jd�\}}}|dkrH|S|dkrat|d�S|d|S) N�euror1z.ISO8859-15�
ISO8859-15�UTF-8z ISO8859-1�@)r�r�)� partitionr�)r��modifierrwr�rrr�_append_modifierls
r�c Cs�|j�}d|kr*|jdd�}d|krQ|jdd�\}}nd}d|kr�|jd�dd�\}}n|}d}|}|r�|jdd�}|jd d�}|d|7}|}|r�|d|7}tj|d�}|dk r|S|rntj|d�}|dk rnd|krHt||�S|jdd�dj�|krn|S|r}|}|r�|d|7}tj|d�}|dk r�d|kr�t||�S|jdd�\}}t||�d|S|r}tj|d�}|dk r}d|kr>t||�}t||�S|jdd�\}}|j�|kr}t||�d|S|S)
a� Returns a normalized locale code for the given locale
name.
The returned locale code is formatted for use with
setlocale().
If normalization fails, the original name is returned
unchanged.
If the given encoding is not known, the function defaults to
the default encoding for the locale code just like setlocale()
does.
�:r1r�r&r*Nr'rxrw)r~rmrZ�locale_aliasr}r�r�) �
localenamer�r�r�r�Zlang_encr�Zlookup_nameZdefmodrrrrws`"
"
cCs�t|�}d|krR|jdd�\}}|dkrRd|krR|dfSd|kr{t|jd�dd��S|dkr�d
Std |��dS)a� Parses the locale code for localename and returns the
result as tuple (language code, encoding).
The localename is normalized and passed through the locale
alias engine. A ValueError is raised in case the locale name
cannot be parsed.
The language code corresponds to RFC 1766. code and encoding
can be None in case the values cannot be determined or are
unknown to this implementation.
r�r&r�r1ziso-8859-15Nr'r<zunknown locale: %s)NN)rrZrcrC)r�r�r�rrr�_parse_localename�s
r�cCsiy>|\}}|dkr!d}|dkr1|S|d|SWn$ttfk
rdtd��YnXdS)z� Builds a locale code from the given tuple (language code,
encoding).
No aliasing or normalizing takes place.
Nr<r1zXLocale must be None, a string, or an iterable of two strings -- language code, encoding.)� TypeErrorrC)ZlocaletupleZlanguager�rrr�_build_localename�sr��LANG�LANGUAGEcCs�y"ddl}|j�\}}Wnttfk
r<YnNXtjdkr�|r�|dd�dkr�tjt|d��}||fSddl }|j
j}xI|D];}||d�}|r�|dkr�|jd�d}Pq�Wd}t|�S) a� Tries to determine the default locale settings and returns
them as tuple (language code, encoding).
According to POSIX, a program which has not called
setlocale(LC_ALL, "") runs using the portable 'C' locale.
Calling setlocale(LC_ALL, "") lets it use the default locale as
defined by the LANG variable. Since we don't want to interfere
with the current locale setting we thus emulate the behavior
in the way described above.
To maintain compatibility with other platforms, not only the
LANG variable is tested, but a list of variables given as
envvars parameter. The first found to be defined will be
used. envvars defaults to the search path used in GNU gettext;
it must always contain the variable name 'LANG'.
Except for the code 'C', the language code corresponds to RFC
1766. code and encoding can be None in case the values cannot
be determined.
rN�win32r'Z0xr�r�r<)
�_localeZ_getdefaultlocale�ImportError�AttributeError�sys�platform�windows_localer}rr�os�environrZr�)Zenvvarsr�r�r�r��lookupZvariabler�rrrr�s$+
cCs:t|�}|tkr0d|kr0td��t|�S)ap Returns the current setting for the given locale category as
tuple (language code, encoding).
category may be one of the LC_* value except LC_ALL. It
defaults to LC_CTYPE.
Except for the code 'C', the language code corresponds to RFC
1766. code and encoding can be None in case the values cannot
be determined.
�;z category LC_ALL is not supported)�
_setlocalerr�r�)r=r�rrrr1s
cCs5|r(t|t�r(tt|��}t||�S)a^ Set the locale for the given category. The locale can be
a string, an iterable of two strings (language code and encoding),
or None.
Iterables are converted to strings using the locale aliasing
engine. Locale strings are passed directly to the C lib.
category may be given as one of the LC_* values.
)r`�_builtin_strrr�r�)r=ZlocalerrrrCscCst|tt���dS)z� Sets the locale for category to the default setting.
The default setting is determined by calling
getdefaultlocale(). category defaults to LC_ALL.
N)r�r�r)r=rrrrTs�wincCsddl}|jd�S)z1Return the charset that the user is likely using.rNF)�_bootlocaler)�do_setlocaler�rrrr`scCs#t�d}|dkrd}|S)zbReturn the charset that the user is likely using,
by looking at environment variables.r&N�ascii)r)r��resrrrrjs
cCsjddl}|rDtt�}yttd�Wntk
rCYnX|jd�}|rftt|�|S)zdReturn the charset that the user is likely using,
according to the system configuration.rNr*F)r�rrrr)r�r�Zoldloc�resultrrrrss
�437r<�cZenz ISO8859-1ZjisZJIS7Zjis7ZajecZeucJPZkoi8czKOI8-CZmicrosoftcp1251ZCP1251Zmicrosoftcp1255ZCP1255Zmicrosoftcp1256ZCP1256Z88591Z88592z ISO8859-2Z88595z ISO8859-5Z885915z
ISO8859-15r��latin_1� iso8859_1�
iso8859_10z
ISO8859-10�
iso8859_11z
ISO8859-11�
iso8859_13z
ISO8859-13�
iso8859_14z
ISO8859-14�
iso8859_15�
iso8859_16z
ISO8859-16� iso8859_2� iso8859_3z ISO8859-3� iso8859_4z ISO8859-4� iso8859_5� iso8859_6z ISO8859-6� iso8859_7z ISO8859-7� iso8859_8z ISO8859-8� iso8859_9z ISO8859-9�
iso2022_jp� shift_jisZSJIS�tactisZTACTIS�euc_jp�euc_krZeucKR�utf_8zUTF-8�koi8_rzKOI8-RZkoi8_tzKOI8-TZkoi8_uzKOI8-U�kz1048ZRK1048�cp1251�cp1255�cp1256rwr*Za3zaz_AZ.KOI8-CZa3_azz
a3_az.koicZaa_djzaa_DJ.ISO8859-1Zaa_erzaa_ER.UTF-8Zaa_etzaa_ET.UTF-8Zafzaf_ZA.ISO8859-1Zaf_zaZamzam_ET.UTF-8Zam_etZamericanzen_US.ISO8859-1Zan_eszan_ES.ISO8859-15�arzar_AA.ISO8859-6Zar_aaZar_aezar_AE.ISO8859-6Zar_bhzar_BH.ISO8859-6Zar_dzzar_DZ.ISO8859-6Zar_egzar_EG.ISO8859-6Zar_inzar_IN.UTF-8Zar_iqzar_IQ.ISO8859-6Zar_jozar_JO.ISO8859-6Zar_kwzar_KW.ISO8859-6Zar_lbzar_LB.ISO8859-6Zar_lyzar_LY.ISO8859-6Zar_mazar_MA.ISO8859-6Zar_omzar_OM.ISO8859-6Zar_qazar_QA.ISO8859-6Zar_sazar_SA.ISO8859-6Zar_sdzar_SD.ISO8859-6Zar_syzar_SY.ISO8859-6Zar_tnzar_TN.ISO8859-6Zar_yezar_YE.ISO8859-6�arabic�aszas_IN.UTF-8Zas_inZast_eszast_ES.ISO8859-15Zayc_pezayc_PE.UTF-8Zazzaz_AZ.ISO8859-9EZaz_azzaz_az.iso88599eZbezbe_BY.CP1251zbe@latinzbe_BY.UTF-8@latinz
be_bg.utf8zbg_BG.UTF-8Zbe_byzbe_by@latinZbem_zmzbem_ZM.UTF-8Zber_dzzber_DZ.UTF-8Zber_mazber_MA.UTF-8Zbgzbg_BG.CP1251Zbg_bgZbho_inzbho_IN.UTF-8Zbn_bdzbn_BD.UTF-8Zbn_inzbn_IN.UTF-8Zbo_cnzbo_CN.UTF-8Zbo_inzbo_IN.UTF-8Zbokmalznb_NO.ISO8859-1ubokmålZbrzbr_FR.ISO8859-1Zbr_frZbrx_inzbrx_IN.UTF-8Zbszbs_BA.ISO8859-2Zbs_baZ bulgarianZbyn_erzbyn_ER.UTF-8zc-frenchzfr_CA.ISO8859-1zc.asciizc.enz
c.iso88591zc.utf8zen_US.UTF-8Zc_czc_c.cZcazca_ES.ISO8859-1Zca_adzca_AD.ISO8859-1Zca_eszca_es@valenciazca_ES.ISO8859-15@valenciaZca_frzca_FR.ISO8859-1Zca_itzca_IT.ISO8859-1ZcatalanZcextendz chinese-szzh_CN.eucCNz chinese-tzzh_TW.eucTWZcrh_uazcrh_UA.UTF-8Zcroatianzhr_HR.ISO8859-2Zcszcs_CZ.ISO8859-2Zcs_csZcs_czZcsb_plzcsb_PL.UTF-8Zcv_ruzcv_RU.UTF-8Zcyzcy_GB.ISO8859-1Zcy_gbZczZcz_czZczechZdazda_DK.ISO8859-1Zda_dkZdanishZdanskZdezde_DE.ISO8859-1Zde_atzde_AT.ISO8859-1Zde_bezde_BE.ISO8859-1Zde_chzde_CH.ISO8859-1Zde_dez
de_li.utf8zde_LI.UTF-8Zde_luzde_LU.ISO8859-1ZdeutschZdoi_inzdoi_IN.UTF-8Zdutchznl_NL.ISO8859-1zdutch.iso88591znl_BE.ISO8859-1Zdv_mvzdv_MV.UTF-8Zdz_btzdz_BT.UTF-8Zeezee_EE.ISO8859-4Zee_eeZeestizet_EE.ISO8859-1Zelzel_GR.ISO8859-7Zel_cyzel_CY.ISO8859-7Zel_grz
el_gr@eurozel_GR.ISO8859-15Zen_agzen_AG.UTF-8Zen_auzen_AU.ISO8859-1Zen_bezen_BE.ISO8859-1Zen_bwzen_BW.ISO8859-1Zen_cazen_CA.ISO8859-1Zen_dkzen_DK.ISO8859-1z
en_dl.utf8zen_DL.UTF-8Zen_gbzen_GB.ISO8859-1Zen_hkzen_HK.ISO8859-1Zen_iezen_IE.ISO8859-1Zen_inzen_IN.ISO8859-1Zen_ngzen_NG.UTF-8Zen_nzzen_NZ.ISO8859-1Zen_phzen_PH.ISO8859-1Zen_sgzen_SG.ISO8859-1Zen_ukZen_uszen_us@euro@eurozen_US.ISO8859-15Zen_zazen_ZA.ISO8859-1Zen_zmzen_ZM.UTF-8Zen_zwzen_ZW.ISO8859-1z
en_zw.utf8zen_ZS.UTF-8Zeng_gbZenglishzen_EN.ISO8859-1Z
english_ukzenglish_united-stateszenglish_united-states.437Z
english_usZeozeo_XX.ISO8859-3zeo.utf8zeo.UTF-8Zeo_eozeo_EO.ISO8859-3z
eo_us.utf8zeo_US.UTF-8Zeo_xxZeszes_ES.ISO8859-1Zes_arzes_AR.ISO8859-1Zes_bozes_BO.ISO8859-1Zes_clzes_CL.ISO8859-1Zes_cozes_CO.ISO8859-1Zes_crzes_CR.ISO8859-1Zes_cuzes_CU.UTF-8Zes_dozes_DO.ISO8859-1Zes_eczes_EC.ISO8859-1Zes_esZes_gtzes_GT.ISO8859-1Zes_hnzes_HN.ISO8859-1Zes_mxzes_MX.ISO8859-1Zes_nizes_NI.ISO8859-1Zes_pazes_PA.ISO8859-1Zes_pezes_PE.ISO8859-1Zes_przes_PR.ISO8859-1Zes_pyzes_PY.ISO8859-1Zes_svzes_SV.ISO8859-1Zes_uszes_US.ISO8859-1Zes_uyzes_UY.ISO8859-1Zes_vezes_VE.ISO8859-1ZestonianZetzet_EE.ISO8859-15Zet_eeZeuzeu_ES.ISO8859-1Zeu_esZeu_frzeu_FR.ISO8859-1Zfazfa_IR.UTF-8Zfa_irzfa_ir.isiri3342zfa_IR.ISIRI-3342Zff_snzff_SN.UTF-8Zfizfi_FI.ISO8859-15Zfi_fiZfil_phzfil_PH.UTF-8Zfinnishzfi_FI.ISO8859-1Zfozfo_FO.ISO8859-1Zfo_foZfrzfr_FR.ISO8859-1Zfr_bezfr_BE.ISO8859-1Zfr_caZfr_chzfr_CH.ISO8859-1Zfr_frZfr_luzfr_LU.ISO8859-1u françaisZfre_frZfrenchzfrench.iso88591Z
french_franceZfur_itzfur_IT.UTF-8Zfy_dezfy_DE.UTF-8Zfy_nlzfy_NL.UTF-8Zgazga_IE.ISO8859-1Zga_ieZgalegozgl_ES.ISO8859-1ZgalicianZgdzgd_GB.ISO8859-1Zgd_gbZger_deZgermanzgerman.iso88591Zgerman_germanyZgez_erzgez_ER.UTF-8Zgez_etzgez_ET.UTF-8ZglZgl_es�greekZgu_inzgu_IN.UTF-8Zgvzgv_GB.ISO8859-1Zgv_gbZha_ngzha_NG.UTF-8Zhezhe_IL.ISO8859-8Zhe_il�hebrew�hizhi_IN.ISCII-DEVZhi_inzhi_in.isciidevZhnezhne_IN.UTF-8Zhne_inZhrZhr_hrZhrvatskiZhsb_dezhsb_DE.ISO8859-2Zht_htzht_HT.UTF-8Zhuzhu_HU.ISO8859-2Zhu_huZ hungarianZhy_amzhy_AM.UTF-8zhy_am.armscii8zhy_AM.ARMSCII_8Ziazia.UTF-8Zia_frzia_FR.UTF-8Z icelandiczis_IS.ISO8859-1�idzid_ID.ISO8859-1Zid_idZig_ngzig_NG.UTF-8Zik_cazik_CA.UTF-8�inZin_idrsZis_isz
iso-8859-1ziso-8859-15z iso8859-1z
iso8859-15�
iso_8859_1�iso_8859_15�itzit_IT.ISO8859-1Zit_chzit_CH.ISO8859-1Zit_itZitalianZiuziu_CA.NUNACOM-8Ziu_caziu_ca.nunacom8ZiwZiw_ilz
iw_il.utf8ziw_IL.UTF-8Zjazja_JP.eucJPZja_jpz ja_jp.euczja_jp.mscodez
ja_JP.SJISz ja_jp.pckZjapanZjapanesezjapanese-euczjapanese.eucZjp_jpZkazka_GE.GEORGIAN-ACADEMYZka_gezka_ge.georgianacademyzka_ge.georgianpszka_GE.GEORGIAN-PSzka_ge.georgianrsZkk_kzzkk_KZ.RK1048Zklzkl_GL.ISO8859-1Zkl_glZkm_khzkm_KH.UTF-8Zknzkn_IN.UTF-8Zkn_inZkozko_KR.eucKRZko_krz ko_kr.eucZkok_inzkok_IN.UTF-8�koreanz
korean.eucZkszks_IN.UTF-8Zks_inzks_in@devanagari.utf8zks_IN.UTF-8@devanagariZku_trzku_TR.ISO8859-9�kwzkw_GB.ISO8859-1Zkw_gbZkyzky_KG.UTF-8Zky_kgZlb_luzlb_LU.UTF-8Zlg_ugzlg_UG.ISO8859-10Zli_bezli_BE.UTF-8Zli_nlzli_NL.UTF-8Zlij_itzlij_IT.UTF-8Z
lithuanianzlt_LT.ISO8859-13�lozlo_LA.MULELAO-1Zlo_lazlo_la.cp1133zlo_LA.IBM-CP1133zlo_la.ibmcp1133zlo_la.mulelao1�ltZlt_ltZlvzlv_LV.ISO8859-13Zlv_lvZmag_inzmag_IN.UTF-8Zmaizmai_IN.UTF-8Zmai_inZmg_mgzmg_MG.ISO8859-15Zmhr_ruzmhr_RU.UTF-8Zmizmi_NZ.ISO8859-1Zmi_nzZmkzmk_MK.ISO8859-5Zmk_mkZmlzml_IN.UTF-8Zml_inZmn_mnzmn_MN.UTF-8Zmni_inzmni_IN.UTF-8Zmrzmr_IN.UTF-8Zmr_inZmszms_MY.ISO8859-1Zms_myZmtzmt_MT.ISO8859-3Zmt_mtZmy_mmzmy_MM.UTF-8znan_tw@latinznan_TW.UTF-8@latinZnbZnb_noZnds_deznds_DE.UTF-8Znds_nlznds_NL.UTF-8Zne_npzne_NP.UTF-8Znhn_mxznhn_MX.UTF-8Zniu_nuzniu_NU.UTF-8Zniu_nzzniu_NZ.UTF-8�nlZnl_awznl_AW.UTF-8Znl_beZnl_nlZnnznn_NO.ISO8859-1Znn_no�nozno_NO.ISO8859-1z
no@nynorskzny_NO.ISO8859-1Zno_nozno_no.iso88591@bokmalzno_no.iso88591@nynorskZ norwegianZnrznr_ZA.ISO8859-1Znr_zaZnsoznso_ZA.ISO8859-15Znso_zaZnyZny_noZnynorskZoczoc_FR.ISO8859-1Zoc_frZom_etzom_ET.UTF-8Zom_kezom_KE.ISO8859-1�orzor_IN.UTF-8Zor_inZos_ruzos_RU.UTF-8Zpazpa_IN.UTF-8Zpa_inZpa_pkzpa_PK.UTF-8Zpap_anzpap_AN.UTF-8Zpdzpd_US.ISO8859-1Zpd_dezpd_DE.ISO8859-1Zpd_usZphzph_PH.ISO8859-1Zph_phZplzpl_PL.ISO8859-2Zpl_plZpolishZ
portuguesezpt_PT.ISO8859-1Zportuguese_brazilzpt_BR.ISO8859-1�posixz
posix-utf2Zppzpp_AN.ISO8859-1Zpp_anZps_afzps_AF.UTF-8ZptZpt_brZpt_ptZrozro_RO.ISO8859-2Zro_roZromanianZruzru_RU.UTF-8Zru_ruZru_uazru_UA.KOI8-UZrumanianZrussianzru_RU.ISO8859-5Zrwzrw_RW.ISO8859-1Zrw_rwZsa_inzsa_IN.UTF-8Zsat_inzsat_IN.UTF-8Zsc_itzsc_IT.UTF-8Zsdzsd_IN.UTF-8Zsd_inzsd_in@devanagari.utf8zsd_IN.UTF-8@devanagariZsd_pkzsd_PK.UTF-8Zse_nozse_NO.UTF-8Z
serbocroatianzsr_RS.UTF-8@latinZshzsh_ba.iso88592@bosniazsr_CS.ISO8859-2Zsh_hrzsh_HR.ISO8859-2zsh_hr.iso88592Zsh_spZsh_yuZshs_cazshs_CA.UTF-8Zsizsi_LK.UTF-8Zsi_lkZsid_etzsid_ET.UTF-8ZsinhalaZskzsk_SK.ISO8859-2Zsk_skZslzsl_SI.ISO8859-2Zsl_cszsl_CS.ISO8859-2Zsl_siZslovakZsloveneZ slovenianZso_djzso_DJ.ISO8859-1Zso_etzso_ET.UTF-8Zso_kezso_KE.ISO8859-1Zso_sozso_SO.ISO8859-1Zspzsr_CS.ISO8859-5Zsp_yuZspanishZ
spanish_spainZsqzsq_AL.ISO8859-2Zsq_alZsq_mkzsq_MK.UTF-8�srzsr_RS.UTF-8zsr@cyrilliczsr@latnzsr_CS.UTF-8@latinZsr_cszsr_CS.UTF-8zsr_cs.iso88592@latnz
sr_cs@latnZsr_mezsr_ME.UTF-8Zsr_rsz
sr_rs@latnZsr_spZsr_yuzsr_yu.cp1251@cyrilliczsr_CS.CP1251zsr_yu.iso88592zsr_yu.iso88595zsr_yu.iso88595@cyrilliczsr_yu.microsoftcp1251@cyrillicz
sr_yu.utf8zsr_yu.utf8@cyrilliczsr_yu@cyrillicZsszss_ZA.ISO8859-1Zss_za�stzst_ZA.ISO8859-1Zst_zaZsvzsv_SE.ISO8859-1Zsv_fizsv_FI.ISO8859-1Zsv_seZsw_kezsw_KE.UTF-8Zsw_tzzsw_TZ.UTF-8ZswedishZszl_plzszl_PL.UTF-8Ztaz
ta_IN.TSCII-0Zta_inzta_in.tsciizta_in.tscii0Zta_lkzta_LK.UTF-8Ztezte_IN.UTF-8Zte_inZtgztg_TJ.KOI8-CZtg_tjZthzth_TH.ISO8859-11Zth_thzth_th.tactiszth_TH.TIS620zth_th.tis620�thaiZti_erzti_ER.UTF-8Zti_etzti_ET.UTF-8Ztig_erztig_ER.UTF-8Ztk_tmztk_TM.UTF-8Ztlztl_PH.ISO8859-1Ztl_phZtnztn_ZA.ISO8859-15Ztn_zaZtrztr_TR.ISO8859-9Ztr_cyztr_CY.ISO8859-9Ztr_trrozts_ZA.ISO8859-1Zts_zaZttztt_RU.TATAR-CYRZtt_ruztt_ru.tatarcyrz
tt_ru@iqtelifztt_RU.UTF-8@iqtelifZturkishZug_cnzug_CN.UTF-8Zukzuk_UA.KOI8-UZuk_uaZunivz en_US.utfZ universalzuniversal.utf8@ucs4Zunm_uszunm_US.UTF-8Zurzur_PK.CP1256Zur_inzur_IN.UTF-8Zur_pkZuzzuz_UZ.UTF-8Zuz_uzzuz_uz@cyrillicZvezve_ZA.UTF-8Zve_zaZviz
vi_VN.TCVNZvi_vnz
vi_vn.tcvnzvi_vn.tcvn5712zvi_vn.visciizvi_VN.VISCIIzvi_vn.viscii111Zwazwa_BE.ISO8859-1Zwa_beZwae_chzwae_CH.UTF-8Zwal_etzwal_ET.UTF-8Zwo_snzwo_SN.UTF-8Zxhzxh_ZA.ISO8859-1Zxh_zaZyizyi_US.CP1255Zyi_usZyo_ngzyo_NG.UTF-8Zyue_hkzyue_HK.UTF-8ZzhZzh_cnzzh_CN.gb2312z
zh_cn.big5z
zh_TW.big5z zh_cn.eucZzh_hkzzh_HK.big5hkscszzh_hk.big5hkZzh_sgzzh_SG.GB2312z zh_sg.gbkz zh_SG.GBKZzh_twz zh_tw.euczzh_tw.euctwZzuzzu_ZA.ISO8859-1Zzu_zai6Zaf_ZAiZsq_ALi�Zgsw_FRi^Zam_ETiZar_SAiZar_IQiZar_EGiZar_LYiZar_DZiZar_MAiZar_TNi Zar_OMi$Zar_YEi(Zar_SYi,Zar_JOi0Zar_LBi4Zar_KWi8Zar_AEi<Zar_BHi@Zar_QAi+Zhy_AMiMZas_INi,Zaz_AZi,imZba_RUi-Zeu_ESi#Zbe_BYiEZbn_INi Zbs_BAii~Zbr_FRiZbg_BGiZca_ESZzh_CHSiZzh_TWiZzh_CNiZzh_HKiZzh_SGiZzh_MOi|Zzh_CHTi�Zco_FRiZhr_HRiZhr_BAiZcs_CZiZda_DKi�Zgbz_AFieZdiv_MViZnl_NLiZnl_BEi Zen_USi Zen_GBi Zen_AUi Zen_CAi Zen_NZi Zen_IEi Zen_ZAi Zen_JAi $Zen_CBi (Zen_BZi ,Zen_TTi 0Zen_ZWi 4Zen_PHi @Zen_INi DZen_MYi Hi%Zet_EEi8Zfo_FOidZfil_PHiZfi_FIiZfr_FRiZfr_BEiZfr_CAiZfr_CHiZfr_LUiZfr_MCibZfy_NLiVZgl_ESi7Zka_GEiZde_DEiZde_CHiZde_ATiZde_LUiZde_LIiZel_GRioZkl_GLiGZgu_INihZha_NGi
Zhe_ILi9Zhi_INiZhu_HUiZis_ISi!Zid_IDi]Ziu_CAi]i<Zga_IEiZit_ITiZit_CHiZja_JPiKZkn_INi?Zkk_KZiSZkh_KHi�Zqut_GTi�Zrw_RWiWZkok_INiZko_KRi@Zky_KGiTZlo_LAi&Zlv_LVi'Zlt_LTi.Zdsb_DEinZlb_LUi/Zmk_MKi>Zms_MYi>Zms_BNiLZml_INi:Zmt_MTi�Zmi_NZizZarn_CLiNZmr_INi|Zmoh_CAiPZmn_MNiPZmn_CNiaZne_NPiZnb_NOiZnn_NOi�Zoc_FRiHZor_INicZps_AFi)Zfa_IRiZpl_PLiZpt_BRiZpt_PTiFZpa_INikZquz_BOikZquz_ECikZquz_PEiZro_ROiZrm_CHiZru_RUi;$Zsmn_FIi;Zsmj_NOi;Zsmj_SEi;Zse_NOi;Zse_SEi;Zse_FIi; Zsms_FIi;Zsma_NOi;Zsma_SEiOZsa_INiZsr_SPiZsr_BAiii[Zsi_LKilZns_ZAi2Ztn_ZAiZsk_SKi$Zsl_SIi
Zes_ESi
Zes_MXi
i
Zes_GTi
Zes_CRi
Zes_PAi
Zes_DOi
Zes_VEi
$Zes_COi
(Zes_PEi
,Zes_ARi
0Zes_ECi
4Zes_CLi
8Zes_URi
<Zes_PYi
@Zes_BOi
DZes_SVi
HZes_HNi
LZes_NIi
PZes_PRi
TZes_USiAZsw_KEiZsv_SEiZsv_FIiZZsyr_SYi(Ztg_TJi_Ztmz_DZiIZta_INiDZtt_RUiJZte_INiZth_THiQZbo_BTiQZbo_CNiZtr_TRiBZtk_TMi�Zug_CNi"Zuk_UAi.Zwen_DEi Zur_PKi Zur_INiCZuz_UZiCi*Zvi_VNiRZcy_GBi�Zwo_SNi4Zxh_ZAi�Zsah_RUixZii_CNijZyo_NGi5Zzu_ZAc
CsMi}|dd�}|�|d=td�tdd�t�\}}td|pYd�td |pld�t�td
�tdd�xf|j�D]X\}}t|d�t|�\}}td|p�d�td
|p�d�t�q�Wt�td�tdd�t�xf|j�D]X\}}t|d�t|�\}}td|ped�td
|pxd�t�q+Wyttd�Wn&td�td�td�Yn�Xt�td�tdd�xf|j�D]X\}}t|d�t|�\}}td|p'd�td
|p:d�t�q�WdS)z Test function.
cSsDx=t�j�D],\}}|dd�dkr|||<qWdS)Nr#ZLC_)�globals�items)�
categories�k�vrrr�_init_categoriesMsz'_print_locale.<locals>._init_categoriesrz4Locale defaults as determined by getdefaultlocale():rx�Hz
Language: z(undefined)z
Encoding: zLocale settings on startup:z...z
Language: z
Encoding: z,Locale settings after calling resetlocale():r*zNOTE:z9setlocale(LC_ALL, "") does not support the default localez&given in the OS environment variables.z4Locale settings after calling setlocale(LC_ALL, ""):N)rtrr�rrrr)r�r�Zlang�enc�namer=rrr�
_print_localeHsV
r��LC_MESSAGES�__main__zLocale aliasing:zNumber formatting:)rrr�r�)J�__doc__r�rzZencodings.aliases�rera�builtinsrr�� functools�__all__rrr�r�rrrrr�rrrrCrr rr�rr
r?r@�wrapsrErQrR�compilerSrrWrrrp�floatrr
rvr�r�r�rr�r�rrrr��
startswithr�CODESET� NameErrorr�sortedr�r�r�rm�
setdefaultr�r�r�rK�__name__rtrrrr�<module>s�
"-S5
"s: