Your IP : 18.191.68.112


Current Path : /opt/alt/python34/lib64/python3.4/__pycache__/
Upload File :
Current File : //opt/alt/python34/lib64/python3.4/__pycache__/locale.cpython-34.pyc

�
h f"#�@s�dZddlZddlZddlZddlZddlZddlmZddl	Z	dddddd	d
ddd
dddddddddddddgZ
dd�Zdd�Zyddl
TWncek
r4d Zd!Zd"ZdZd#Zd$Zd%Zd&ZeZd'd
�Zdd(d�ZYnXde�krMeZnde�kreeZneZiZe	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
�Ze*d9d�Z+d:d�Z,d;d<�Z-eZ.d=d>�Z/d?d@�Z0dAd�Z1dBdC�Z2dDdE�Z3d�dHd�Z4edId�Z5ddJd�ZedKd	�Z6ej7j8dL�r�d6dMd�Z9n;ye:Wn!e;k
r
d6dNd�Z9YnXd6dOd�Z9i*dPdQ6dPdR6dSdT6dUdV6dUdW6dXdY6dZd[6d\d]6d^d_6d`da6dSdb6dcdd6dedf6dgdh6dSdi6dSdj6dSdk6dldm6dndo6dpdq6drds6dgdt6dudv6dcdw6dxdy6dzd{6ded|6d}d~6dd�6d�d�6d�d�6dUd�6d�d�6d�d�6dXd�6d�d�6d�d�6d�d�6d�d�6d\d�6d^d�6d`d�6Z<xBe=e<j>��D].\Z?Z@e?jAd�d��Z?e<jBe?e@�qYWi'd�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6dd6dd6dd6d�d6dd6dPdR6dd	6dPd
6dPd6d�d6d
d6dPd6dPd6dd6dd6dd6dd6dd6dd6dd6d�d6dd6d d!6d"d#6d$d%6d&d'6d&d(6d&d)6d*d+6d,d-6d.d/6d.d06d&d16d&d26d&d36d4d56d4d66d4d76d4d86d9d:6d;d<6d=d>6d?d@6d9dA6dBdC6dDdE6d9dF6dGdH6dIdJ6dKdL6dMdN6dOdP6dQdR6dQdS6dTdU6dVdW6dXdY6dVdZ6d[d\6d�dT6d]d^6d_d`6dadb6dcdd6dedf6dgdh6didj6dkdl6dmdn6dodp6dqdr6dsdt6dudv6dwdx6dydz6dkd{6d�d|6d}d~6dd�6d�d�6d�d�6d�d�6dkd�6d�d�6dkd�6d�d�6dPd�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6dTd�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6dd�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d9d�6d9d�6d?d�6d9d�6d�d�6dd6d�d6d�d6dVd6dd6dd6dd	6d
d6dd
6dd6dd6dd6dd6dd6dd6dd6d$d6d$d6d$d6dd6dd6dd6dd 6dd!6d"d#6d$d%6d&d'6d(d)6d*d+6d,d-6d,d.6d/d06d1d26d,d36d,d46d*d56d*d66d�d76d}d86d�d96d}d:6d�d;6d}d<6d=d>6d?d@6d=dA6d=dB6dCdD6dCdE6dCdF6ddG6ddH6dIdJ6dKdL6dKdM6dKdN6dOdP6dOdQ6dKdR6dKdS6dKdT6dKdU6dKdV6dWdX6dWdY6dWdZ6d[d\6dWd]6d^d_6d`da6d`db6dcdd6dedf6dedg6dhdi6dhdj6dhdk6dldm6dhdn6dhdo6dpdq6dpdr6dsdt6dudv6dwdx6dwdy6dzd{6dzd|6d}d~6dd�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6dId�6d�d�6dKd�6dId�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6dd6dPd6dPd6dd6dd6dd6d�d	6dd
6d�d6dd
6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd 6d!d"6d!d#6d$d%6d&d'6d(d)6d*d+6d*d,6d-d.6d/d06d$d16d-d26d*d36d4d56d6d76d6d86d9d:6d6d;6d<d=6d<d>6d?d@6dAdB6d?dC6d<dD6d?dE6d?dF6dGdH6dIdJ6dKdL6dMdN6dOdP6dOdQ6d�dR6d�dS6dTdU6dTdV6dWdX6dYdZ6dYd[6d\d]6d^d_6d-d`6d\da6dbdc6dYdd6d*de6d-df6d*dg6dhdi6d-dj6dOdk6dOdl6dhdm6dYdn6dYdo6dYdp6dqdr6dqds6dtdu6dtdv6dwdx6dydz6dwd{6d|d}6d~d6dwd�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d
d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6dd�6d�d�6d�d�6dd�6d�d�6d�d�6d�d�6d�d�6d�d�6d d�6d d�6d�d�6d�d�6ZCi�d�d�6d�d�6d�d�6d�d6dd6dd6dd6dd6d	d
6dd6d
d6dd6dd6dd6dd6dd6dd6dd6dd6dd 6d!d"6d#d$6d%d&6d%d'6d(d)6d*d+6d,d-6d.d/6d0d16d0d26d3d46d5d66d7d86d9d$6d:d;6d<d=6d>d?6d@dA6dBdC6dDdE6dFdG6dHdI6dJdK6dLdM6dNdO6dPdQ6dRdS6dTdU6dVdW6dXdY6dZd[6d\d]6d^d_6d`da6dbdc6ddde6dfdg6dhdi6djdk6dldm6dndo6dpdq6drds6dtdu6drdv6dwdx6dydz6d{d|6d}d~6dd�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6dd6dd6dd6dd6dd	6d
d6dd
6dd6dd6dd6dd6dd6dd6dd6dd6dd6d d!6dd"6d d#6d$d%6d&d'6d(d)6d*d+6d,d-6d.d/6d0d16d.d26d3d46d5d66d7d86d9d:6d;d<6d=d>6d?d@6dAdB6dCdD6dEdF6dGdH6dIdJ6dKdL6dMdN6dOdP6dQdR6dSdT6dUdV6dWdX6dYdZ6d[d\6d]d^6d_d`6dadb6dcdd6dedf6dgdh6didj6dkdl6dmdn6dodp6dqdr6dsdt6dudv6dwdx6dydz6d{d|6d}d~6d}d6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6d�d�6ZDd�d��ZEyeWne;k
r�YnXe
jFd��eGd�kr�eHd��eH�eE�eH�eHd��eH�e-�ndS(�a� Locale support.

    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/python34/lib64/python3.4/locale.py�_strcoll"srcCs|S)z\ strxfrm(string) -> string.
        Returns a string that behaves for cmp locale-aware.
    r)�srrr�_strxfrm(sr)�*�������cCs�idgd6dd6dd6dd6dd6gd6dd	6d
d6dd6dd
6dd6dd6dd6dd6dd6dd6dd6dd6S)zd localeconv() -> dict.
            Returns numeric and monetary locale-specific parameters.
        r!�grouping��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��ndS)zd setlocale(integer,string=None) -> string.
            Activates/queries locale processing.
        Nr)�Cz*_locale emulation only supports "C" locale)Nr)r<)r)�category�valuerrrrXscCs#t�}tr|jt�n|S)N)�_localeconv�_override_localeconv�update)�drrrr	ms	ccsld}x_|D]W}|tkr#dS|dkrY|dkrJtd��nx|VqMWn|V|}q
WdS)Nrzinvalid grouping)r�
ValueError)r(Z
last_interval�intervalrrr�_grouping_intervals{s
rEFc
CsHt�}||rdpd}||r.dp1d}|sE|dfS|d
dkr�|j�}|t|�d�}|}nd}d}g}xdt|�D]V}	|s�|dd	kr�|}d}Pn|j||	d��|d|	�}q�W|r|j|�n|j�||j|�|t|�t|�dfS)Nr8r7r.r(rr&� r)�
0123456789���rH)r	�rstrip�lenrE�append�reverse�join)
r�monetary�convr7r(ZstrippedZright_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%]cGsctj|�}|s4t|j��t|�krMtdt|���nt|||||�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�}|rrt|dd|�\|d<}nt�|r�dp�d}|j|�}|rt||�}qnR|d
dkrd}|r�t|d|�\}}n|rt||�}qn|S)Nr&ZeEfFgGrr0rNr:r1ZdiurHrH)�splitrQr	rMrR)	rXr>r(rNrYZ	formattedZseps�partsr1rrrrW�s(
#rWc	Csottj|��}tjd|�}t|tj�r�g}x|D]K}|j�ddkrr|jd�qF|jt	|j�||��qFWn�t|t
�s�|f}ng}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
&
 TcCs�t�}||rdpd}|dkr:td��ntd|t|�|dd�}d|d	}|r�||rd
p�d}||dkr�d
p�d}||dkr�dp�d}	|r�||	r�dp�d|}q�||	r�dp�d|}n||dkrdpd}
||dkr/dp2d}|
dkrSd|d}n~|
dkrl||}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)z9Convert float to integer, taking the locale into account.z%.12g)r)rfrrrr,scCsZt�d}|r(|j|d�}nt�d}|rP|j|d�}n||�S)z<Parses a string as a float according to the locale settings.r7r)r1r0)r	rm)�string�func�tsZddrrrr0s

cCs
t|t�S)zAConverts a string to an integer according to the locale settings.)r�int)rrrrr
=scCs[ttd�tddd�}t|dt|��td�}t|dt|��dS)Nr)z%di�[r&�isg��Q�	@)rrr�printr
rr)�s1rrr�_testAs

rucCs�d|kr(|d|jd��}n|}tj|�}tjjj|j�|�}|}|j�}|tkr�t|}n=|jdd�}|jdd�}|tkr�t|}n|d|S)Nr0�_r)�-)�index�	encodings�normalize_encoding�aliases�get�lower�locale_encoding_aliasrm)�code�encoding�langname�
norm_encodingrrr�_replace_encodingSs	

r�cCsp|dkrdd|kr |dS|jd�\}}}|dkrH|S|dkrdt|d�Sn|d|S)	N�euror0z.ISO8859-15�
ISO8859-15�UTF-8z	ISO8859-1�@)r�r�)�	partitionr�)r�modifierrvr�rrr�_append_modifierjsr�c	Cs�|j�}d|kr-|jdd�}nd|krT|jdd�\}}nd}d|kr�|jd�dd�\}}n|}d}|}|r�|jdd�}|jd	d�}|d|7}n|}|r�|d|7}ntj|d�}|dk	r|S|r}tj|d�}|dk	r}d|krQt||�S|jdd�dj�|krz|Sq}n|r�|}|r�|d|7}ntj|d�}|dk	rd|kr�t||�S|jdd�\}}t||�d|S|r�tj|d�}|dk	r�d|krPt||�}t||�S|jdd�\}}|j�|kr�t||�d|Sq�q�n|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.

    �:r0r�r&r)Nr'rwrv)r}rmrZ�locale_aliasr|r�r�)	�
localenamerr�r�r�Zlang_encr�Zlookup_nameZdefmodrrrrus`"
"


cCs�t|�}d|krU|jdd�\}}|dkrUd|krU|dfSnd|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�r0ziso-8859-15Nr'r<zunknown locale: %s)NN)rrZrcrC)r�rr�rrr�_parse_localename�s
r�cCslyA|\}}|dkr$d}n|dkr4|S|d|SWn$ttfk
rgtd��YnXdS)z� Builds a locale code from the given tuple (language code,
        encoding).

        No aliasing or normalizing takes place.

    Nr<r0zXLocale must be None, a string, or an iterable of two strings -- language code, encoding.)�	TypeErrorrC)ZlocaletupleZlanguager�rrr�_build_localename�s	r��LANG�LANGUAGEcCsy"ddl}|j�\}}Wnttfk
r<YnQXtjdkr�|r�|dd�dkr�tjt|d��}n||fSddl	}|j
j}xO|D]A}||d�}|r�|dkr�|jd�d}nPq�q�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|rq�os�environrZr�)Zenvvarsr�rr�r��lookupZvariabler�rrrr�s$+

cCs=t|�}|tkr3d|kr3td��nt|�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�rrrr/s
cCs8|r+t|t�r+tt|��}nt||�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=ZlocalerrrrAscCst|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=rrrrRs�wincCsddl}|jd�S)z1Return the charset that the user is likely using.rNF)�_bootlocaler)�do_setlocaler�rrrr^scCs&t�d}|dkr"d}n|S)zbReturn the charset that the user is likely using,
            by looking at environment variables.r&N�ascii)r)r��resrrrrhs
	cCspddl}|rGtt�}yttd�WqGtk
rCYqGXn|jd�}|rltt|�n|S)zdReturn the charset that the user is likely using,
            according to the system configuration.rNr)F)r�rrrr)r�r�Zoldloc�resultrrrrqs
r<�437�cz	ISO8859-1ZenZJIS7ZjisZjis7ZeucJPZajeczKOI8-CZkoi8cZCP1251Zmicrosoftcp1251ZCP1255Zmicrosoftcp1255ZCP1256Zmicrosoftcp1256Z88591z	ISO8859-2Z88592z	ISO8859-5Z88595z
ISO8859-15Z885915r��latin_1�	iso8859_1z
ISO8859-10�
iso8859_10z
ISO8859-11�
iso8859_11z
ISO8859-13�
iso8859_13z
ISO8859-14�
iso8859_14�
iso8859_15z
ISO8859-16�
iso8859_16�	iso8859_2z	ISO8859-3�	iso8859_3z	ISO8859-4�	iso8859_4�	iso8859_5z	ISO8859-6�	iso8859_6z	ISO8859-7�	iso8859_7z	ISO8859-8�	iso8859_8z	ISO8859-9�	iso8859_9�
iso2022_jpZSJIS�	shift_jisZTACTIS�tactis�euc_jpZeucKR�euc_krzUTF-8�utf_8zKOI8-R�koi8_rzKOI8-UZkoi8_u�cp1251�cp1255�cp1256rvr)zaz_AZ.KOI8-CZa3Za3_azz
a3_az.koiczaa_DJ.ISO8859-1Zaa_djzaa_ER.UTF-8Zaa_erzaa_ET.UTF-8Zaa_etzaf_ZA.ISO8859-1ZafZaf_zazam_ET.UTF-8ZamZam_etzen_US.ISO8859-1Zamericanzan_ES.ISO8859-15Zan_eszar_AA.ISO8859-6�arZar_aazar_AE.ISO8859-6Zar_aezar_BH.ISO8859-6Zar_bhzar_DZ.ISO8859-6Zar_dzzar_EG.ISO8859-6Zar_egzar_IN.UTF-8Zar_inzar_IQ.ISO8859-6Zar_iqzar_JO.ISO8859-6Zar_jozar_KW.ISO8859-6Zar_kwzar_LB.ISO8859-6Zar_lbzar_LY.ISO8859-6Zar_lyzar_MA.ISO8859-6Zar_mazar_OM.ISO8859-6Zar_omzar_QA.ISO8859-6Zar_qazar_SA.ISO8859-6Zar_sazar_SD.ISO8859-6Zar_sdzar_SY.ISO8859-6Zar_syzar_TN.ISO8859-6Zar_tnzar_YE.ISO8859-6Zar_ye�arabiczas_IN.UTF-8�asZas_inzast_ES.ISO8859-15Zast_eszayc_PE.UTF-8Zayc_pezaz_AZ.ISO8859-9EZazZaz_azzaz_az.iso88599ezbe_BY.CP1251Zbezbe_BY.UTF-8@latinzbe@latinzbg_BG.UTF-8z
be_bg.utf8Zbe_byzbe_by@latinzbem_ZM.UTF-8Zbem_zmzber_DZ.UTF-8Zber_dzzber_MA.UTF-8Zber_mazbg_BG.CP1251ZbgZbg_bgzbho_IN.UTF-8Zbho_inzbn_BD.UTF-8Zbn_bdzbn_IN.UTF-8Zbn_inzbo_CN.UTF-8Zbo_cnzbo_IN.UTF-8Zbo_inznb_NO.ISO8859-1Zbokmalubokmålzbr_FR.ISO8859-1ZbrZbr_frzbrx_IN.UTF-8Zbrx_inzbs_BA.ISO8859-2ZbsZbs_baZ	bulgarianzbyn_ER.UTF-8Zbyn_erzfr_CA.ISO8859-1zc-frenchzc.asciizc.enz
c.iso88591zen_US.UTF-8zc.utf8Zc_czc_c.czca_ES.ISO8859-1Zcazca_AD.ISO8859-1Zca_adZca_eszca_ES.ISO8859-15@valenciazca_es@valenciazca_FR.ISO8859-1Zca_frzca_IT.ISO8859-1Zca_itZcatalanZcextendzzh_CN.eucCNz	chinese-szzh_TW.eucTWz	chinese-tzcrh_UA.UTF-8Zcrh_uazhr_HR.ISO8859-2Zcroatianzcs_CZ.ISO8859-2ZcsZcs_csZcs_czzcsb_PL.UTF-8Zcsb_plzcv_RU.UTF-8Zcv_ruzcy_GB.ISO8859-1ZcyZcy_gbZczZcz_czZczechzda_DK.ISO8859-1ZdaZda_dkZdanishZdanskzde_DE.ISO8859-1Zdezde_AT.ISO8859-1Zde_atzde_BE.ISO8859-1Zde_bezde_CH.ISO8859-1Zde_chZde_dezde_LI.UTF-8z
de_li.utf8zde_LU.ISO8859-1Zde_luZdeutschzdoi_IN.UTF-8Zdoi_inznl_NL.ISO8859-1Zdutchznl_BE.ISO8859-1zdutch.iso88591zdv_MV.UTF-8Zdv_mvzdz_BT.UTF-8Zdz_btzee_EE.ISO8859-4ZeeZee_eezet_EE.ISO8859-1Zeestizel_GR.ISO8859-7Zelzel_CY.ISO8859-7Zel_cyZel_grzel_GR.ISO8859-15z
el_gr@eurozen_AG.UTF-8Zen_agzen_AU.ISO8859-1Zen_auzen_BE.ISO8859-1Zen_bezen_BW.ISO8859-1Zen_bwzen_CA.ISO8859-1Zen_cazen_DK.ISO8859-1Zen_dkzen_DL.UTF-8z
en_dl.utf8zen_GB.ISO8859-1Zen_gbzen_HK.ISO8859-1Zen_hkzen_IE.ISO8859-1Zen_iezen_IN.ISO8859-1Zen_inzen_NG.UTF-8Zen_ngzen_NZ.ISO8859-1Zen_nzzen_PH.ISO8859-1Zen_phzen_SG.ISO8859-1Zen_sgZen_ukZen_uszen_US.ISO8859-15zen_us@euro@eurozen_ZA.ISO8859-1Zen_zazen_ZM.UTF-8Zen_zmzen_ZW.ISO8859-1Zen_zwzen_ZS.UTF-8z
en_zw.utf8Zeng_gbzen_EN.ISO8859-1ZenglishZ
english_ukzenglish_united-stateszenglish_united-states.437Z
english_uszeo_XX.ISO8859-3Zeozeo.UTF-8zeo.utf8zeo_EO.ISO8859-3Zeo_eozeo_US.UTF-8z
eo_us.utf8Zeo_xxzes_ES.ISO8859-1Zeszes_AR.ISO8859-1Zes_arzes_BO.ISO8859-1Zes_bozes_CL.ISO8859-1Zes_clzes_CO.ISO8859-1Zes_cozes_CR.ISO8859-1Zes_crzes_CU.UTF-8Zes_cuzes_DO.ISO8859-1Zes_dozes_EC.ISO8859-1Zes_ecZes_eszes_GT.ISO8859-1Zes_gtzes_HN.ISO8859-1Zes_hnzes_MX.ISO8859-1Zes_mxzes_NI.ISO8859-1Zes_nizes_PA.ISO8859-1Zes_pazes_PE.ISO8859-1Zes_pezes_PR.ISO8859-1Zes_przes_PY.ISO8859-1Zes_pyzes_SV.ISO8859-1Zes_svzes_US.ISO8859-1Zes_uszes_UY.ISO8859-1Zes_uyzes_VE.ISO8859-1Zes_veZestonianzet_EE.ISO8859-15ZetZet_eezeu_ES.ISO8859-1ZeuZeu_eszeu_FR.ISO8859-1Zeu_frzfa_IR.UTF-8ZfaZfa_irzfa_IR.ISIRI-3342zfa_ir.isiri3342zff_SN.UTF-8Zff_snzfi_FI.ISO8859-15ZfiZfi_fizfil_PH.UTF-8Zfil_phzfi_FI.ISO8859-1Zfinnishzfo_FO.ISO8859-1ZfoZfo_fozfr_FR.ISO8859-1Zfrzfr_BE.ISO8859-1Zfr_beZfr_cazfr_CH.ISO8859-1Zfr_chZfr_frzfr_LU.ISO8859-1Zfr_luu	françaisZfre_frZfrenchzfrench.iso88591Z
french_francezfur_IT.UTF-8Zfur_itzfy_DE.UTF-8Zfy_dezfy_NL.UTF-8Zfy_nlzga_IE.ISO8859-1ZgaZga_iezgl_ES.ISO8859-1ZgalegoZgalicianzgd_GB.ISO8859-1ZgdZgd_gbZger_deZgermanzgerman.iso88591Zgerman_germanyzgez_ER.UTF-8Zgez_erzgez_ET.UTF-8Zgez_etZglZgl_es�greekzgu_IN.UTF-8Zgu_inzgv_GB.ISO8859-1ZgvZgv_gbzha_NG.UTF-8Zha_ngzhe_IL.ISO8859-8ZheZhe_il�hebrewzhi_IN.ISCII-DEV�hiZhi_inzhi_in.isciidevzhne_IN.UTF-8ZhneZhne_inZhrZhr_hrZhrvatskizhsb_DE.ISO8859-2Zhsb_dezht_HT.UTF-8Zht_htzhu_HU.ISO8859-2ZhuZhu_huZ	hungarianzhy_AM.UTF-8Zhy_amzhy_AM.ARMSCII_8zhy_am.armscii8zia.UTF-8Ziazia_FR.UTF-8Zia_frzis_IS.ISO8859-1Z	icelandiczid_ID.ISO8859-1�idZid_idzig_NG.UTF-8Zig_ngzik_CA.UTF-8Zik_ca�inZin_idrrZis_isz
iso-8859-1ziso-8859-15z	iso8859-1z
iso8859-15�
iso_8859_1�iso_8859_15zit_IT.ISO8859-1�itzit_CH.ISO8859-1Zit_chZit_itZitalianziu_CA.NUNACOM-8ZiuZiu_caziu_ca.nunacom8ZiwZiw_ilziw_IL.UTF-8z
iw_il.utf8zja_JP.eucJPZjaZja_jpz	ja_jp.eucz
ja_JP.SJISzja_jp.mscodez	ja_jp.pckZjapanZjapanesezjapanese-euczjapanese.eucZjp_jpzka_GE.GEORGIAN-ACADEMYZkaZka_gezka_ge.georgianacademyzka_GE.GEORGIAN-PSzka_ge.georgianpszka_ge.georgianrszkk_KZ.RK1048Zkk_kzzkl_GL.ISO8859-1ZklZkl_glzkm_KH.UTF-8Zkm_khzkn_IN.UTF-8ZknZkn_inzko_KR.eucKRZkoZko_krz	ko_kr.euczkok_IN.UTF-8Zkok_in�koreanz
korean.euczks_IN.UTF-8ZksZks_inzks_IN.UTF-8@devanagarizks_in@devanagari.utf8zku_TR.ISO8859-9Zku_trzkw_GB.ISO8859-1�kwZkw_gbzky_KG.UTF-8ZkyZky_kgzlb_LU.UTF-8Zlb_luzlg_UG.ISO8859-10Zlg_ugzli_BE.UTF-8Zli_bezli_NL.UTF-8Zli_nlzlij_IT.UTF-8Zlij_itzlt_LT.ISO8859-13Z
lithuanianzlo_LA.MULELAO-1�loZlo_lazlo_LA.IBM-CP1133zlo_la.cp1133zlo_la.ibmcp1133zlo_la.mulelao1�ltZlt_ltzlv_LV.ISO8859-13ZlvZlv_lvzmag_IN.UTF-8Zmag_inzmai_IN.UTF-8ZmaiZmai_inzmg_MG.ISO8859-15Zmg_mgzmhr_RU.UTF-8Zmhr_ruzmi_NZ.ISO8859-1ZmiZmi_nzzmk_MK.ISO8859-5ZmkZmk_mkzml_IN.UTF-8ZmlZml_inzmn_MN.UTF-8Zmn_mnzmni_IN.UTF-8Zmni_inzmr_IN.UTF-8ZmrZmr_inzms_MY.ISO8859-1ZmsZms_myzmt_MT.ISO8859-3ZmtZmt_mtzmy_MM.UTF-8Zmy_mmznan_TW.UTF-8@latinznan_tw@latinZnbZnb_noznds_DE.UTF-8Znds_deznds_NL.UTF-8Znds_nlzne_NP.UTF-8Zne_npznhn_MX.UTF-8Znhn_mxzniu_NU.UTF-8Zniu_nuzniu_NZ.UTF-8Zniu_nz�nlznl_AW.UTF-8Znl_awZnl_beZnl_nlznn_NO.ISO8859-1ZnnZnn_nozno_NO.ISO8859-1�nozny_NO.ISO8859-1z
no@nynorskZno_nozno_no.iso88591@bokmalzno_no.iso88591@nynorskZ	norwegianznr_ZA.ISO8859-1ZnrZnr_zaznso_ZA.ISO8859-15ZnsoZnso_zaZnyZny_noZnynorskzoc_FR.ISO8859-1ZocZoc_frzom_ET.UTF-8Zom_etzom_KE.ISO8859-1Zom_kezor_IN.UTF-8�orZor_inzos_RU.UTF-8Zos_ruzpa_IN.UTF-8ZpaZpa_inzpa_PK.UTF-8Zpa_pkzpap_AN.UTF-8Zpap_anzpd_US.ISO8859-1Zpdzpd_DE.ISO8859-1Zpd_deZpd_uszph_PH.ISO8859-1ZphZph_phzpl_PL.ISO8859-2ZplZpl_plZpolishzpt_PT.ISO8859-1Z
portuguesezpt_BR.ISO8859-1Zportuguese_brazil�posixz
posix-utf2zpp_AN.ISO8859-1ZppZpp_anzps_AF.UTF-8Zps_afZptZpt_brZpt_ptzro_RO.ISO8859-2ZroZro_roZromanianzru_RU.UTF-8ZruZru_ruzru_UA.KOI8-UZru_uaZrumanianzru_RU.ISO8859-5Zrussianzrw_RW.ISO8859-1ZrwZrw_rwzsa_IN.UTF-8Zsa_inzsat_IN.UTF-8Zsat_inzsc_IT.UTF-8Zsc_itzsd_IN.UTF-8ZsdZsd_inzsd_IN.UTF-8@devanagarizsd_in@devanagari.utf8zsd_PK.UTF-8Zsd_pkzse_NO.UTF-8Zse_nozsr_RS.UTF-8@latinZ
serbocroatianZshzsr_CS.ISO8859-2zsh_ba.iso88592@bosniazsh_HR.ISO8859-2Zsh_hrzsh_hr.iso88592Zsh_spZsh_yuzshs_CA.UTF-8Zshs_cazsi_LK.UTF-8ZsiZsi_lkzsid_ET.UTF-8Zsid_etZsinhalazsk_SK.ISO8859-2ZskZsk_skzsl_SI.ISO8859-2Zslzsl_CS.ISO8859-2Zsl_csZsl_siZslovakZsloveneZ	slovenianzso_DJ.ISO8859-1Zso_djzso_ET.UTF-8Zso_etzso_KE.ISO8859-1Zso_kezso_SO.ISO8859-1Zso_sozsr_CS.ISO8859-5ZspZsp_yuZspanishZ
spanish_spainzsq_AL.ISO8859-2ZsqZsq_alzsq_MK.UTF-8Zsq_mkzsr_RS.UTF-8�srzsr@cyrilliczsr_CS.UTF-8@latinzsr@latnzsr_CS.UTF-8Zsr_cszsr_cs.iso88592@latnz
sr_cs@latnzsr_ME.UTF-8Zsr_meZsr_rsz
sr_rs@latnZsr_spZsr_yuzsr_CS.CP1251zsr_yu.cp1251@cyrilliczsr_yu.iso88592zsr_yu.iso88595zsr_yu.iso88595@cyrilliczsr_yu.microsoftcp1251@cyrillicz
sr_yu.utf8zsr_yu.utf8@cyrilliczsr_yu@cyrilliczss_ZA.ISO8859-1ZssZss_zazst_ZA.ISO8859-1�stZst_zazsv_SE.ISO8859-1Zsvzsv_FI.ISO8859-1Zsv_fiZsv_sezsw_KE.UTF-8Zsw_kezsw_TZ.UTF-8Zsw_tzZswedishzszl_PL.UTF-8Zszl_plz
ta_IN.TSCII-0ZtaZta_inzta_in.tsciizta_in.tscii0zta_LK.UTF-8Zta_lkzte_IN.UTF-8ZteZte_inztg_TJ.KOI8-CZtgZtg_tjzth_TH.ISO8859-11ZthZth_thzth_TH.TIS620zth_th.tactiszth_th.tis620�thaizti_ER.UTF-8Zti_erzti_ET.UTF-8Zti_etztig_ER.UTF-8Ztig_erztk_TM.UTF-8Ztk_tmztl_PH.ISO8859-1ZtlZtl_phztn_ZA.ISO8859-15ZtnZtn_zaztr_TR.ISO8859-9Ztrztr_CY.ISO8859-9Ztr_cyZtr_trzts_ZA.ISO8859-1rpZts_zaztt_RU.TATAR-CYRZttZtt_ruztt_ru.tatarcyrztt_RU.UTF-8@iqtelifz
tt_ru@iqtelifZturkishzug_CN.UTF-8Zug_cnzuk_UA.KOI8-UZukZuk_uaz	en_US.utfZunivZ	universalzuniversal.utf8@ucs4zunm_US.UTF-8Zunm_uszur_PK.CP1256Zurzur_IN.UTF-8Zur_inZur_pkzuz_UZ.UTF-8ZuzZuz_uzzuz_uz@cyrilliczve_ZA.UTF-8ZveZve_zaz
vi_VN.TCVNZviZvi_vnz
vi_vn.tcvnzvi_vn.tcvn5712zvi_VN.VISCIIzvi_vn.visciizvi_vn.viscii111zwa_BE.ISO8859-1ZwaZwa_bezwae_CH.UTF-8Zwae_chzwal_ET.UTF-8Zwal_etzwo_SN.UTF-8Zwo_snzxh_ZA.ISO8859-1ZxhZxh_zazyi_US.CP1255ZyiZyi_uszyo_NG.UTF-8Zyo_ngzyue_HK.UTF-8Zyue_hkZzhzzh_CN.gb2312Zzh_cnz
zh_TW.big5z
zh_cn.big5z	zh_cn.euczzh_HK.big5hkscsZzh_hkzzh_hk.big5hkzzh_SG.GB2312Zzh_sgz	zh_SG.GBKz	zh_sg.gbkZzh_twz	zh_tw.euczzh_tw.euctwzzu_ZA.ISO8859-1ZzuZzu_zaZaf_ZAi6Zsq_ALiZgsw_FRi�Zam_ETi^Zar_SAiZar_IQiZar_EGiZar_LYiZar_DZiZar_MAiZar_TNiZar_OMi Zar_YEi$Zar_SYi(Zar_JOi,Zar_LBi0Zar_KWi4Zar_AEi8Zar_BHi<Zar_QAi@Zhy_AMi+Zas_INiMZaz_AZi,i,Zba_RUimZeu_ESi-Zbe_BYi#Zbn_INiEZbs_BAi iZbr_FRi~Zbg_BGiZca_ESiZzh_CHSZzh_TWiZzh_CNiZzh_HKiZzh_SGiZzh_MOiZzh_CHTi|Zco_FRi�Zhr_HRiZhr_BAiZcs_CZiZda_DKiZgbz_AFi�Zdiv_MVieZnl_NLiZnl_BEiZen_USi	Zen_GBi	Zen_AUi	Zen_CAi	Zen_NZi	Zen_IEi	Zen_ZAi	Zen_JAi	 Zen_CBi	$Zen_BZi	(Zen_TTi	,Zen_ZWi	0Zen_PHi	4Zen_INi	@Zen_MYi	Di	HZet_EEi%Zfo_FOi8Zfil_PHidZfi_FIiZfr_FRiZfr_BEiZfr_CAiZfr_CHiZfr_LUiZfr_MCiZfy_NLibZgl_ESiVZka_GEi7Zde_DEiZde_CHiZde_ATiZde_LUiZde_LIiZel_GRiZkl_GLioZgu_INiGZha_NGihZhe_ILi
Zhi_INi9Zhu_HUiZis_ISiZid_IDi!Ziu_CAi]i]Zga_IEi<Zit_ITiZit_CHiZja_JPiZkn_INiKZkk_KZi?Zkh_KHiSZqut_GTi�Zrw_RWi�Zkok_INiWZko_KRiZky_KGi@Zlo_LAiTZlv_LVi&Zlt_LTi'Zdsb_DEi.Zlb_LUinZmk_MKi/Zms_MYi>Zms_BNi>Zml_INiLZmt_MTi:Zmi_NZi�Zarn_CLizZmr_INiNZmoh_CAi|Zmn_MNiPZmn_CNiPZne_NPiaZnb_NOiZnn_NOiZoc_FRi�Zor_INiHZps_AFicZfa_IRi)Zpl_PLiZpt_BRiZpt_PTiZpa_INiFZquz_BOikZquz_ECikZquz_PEikZro_ROiZrm_CHiZru_RUiZsmn_FIi;$Zsmj_NOi;Zsmj_SEi;Zse_NOi;Zse_SEi;Zse_FIi;Zsms_FIi; Zsma_NOi;Zsma_SEi;Zsa_INiOZsr_SPiZsr_BAiiiZsi_LKi[Zns_ZAilZtn_ZAi2Zsk_SKiZsl_SIi$Zes_ESi
Zes_MXi
i
Zes_GTi
Zes_CRi
Zes_PAi
Zes_DOi
Zes_VEi
 Zes_COi
$Zes_PEi
(Zes_ARi
,Zes_ECi
0Zes_CLi
4Zes_URi
8Zes_PYi
<Zes_BOi
@Zes_SVi
DZes_HNi
HZes_NIi
LZes_PRi
PZes_USi
TZsw_KEiAZsv_SEiZsv_FIiZsyr_SYiZZtg_TJi(Ztmz_DZi_Zta_INiIZtt_RUiDZte_INiJZth_THiZbo_BTiQZbo_CNiQZtr_TRiZtk_TMiBZug_CNi�Zuk_UAi"Zwen_DEi.Zur_PKi Zur_INi Zuz_UZiCiCZvi_VNi*Zcy_GBiRZwo_SNi�Zxh_ZAi4Zsah_RUi�Zii_CNixZyo_NGijZzu_ZAi5c
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.
    cSsGx@t�j�D]/\}}|dd�dkr|||<qqWdS)Nr#ZLC_)�globals�items)�
categories�k�vrrr�_init_categoriesIsz'_print_locale.<locals>._init_categoriesrz4Locale defaults as determined by getdefaultlocale():rw�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)rsrr�rrrr)r�r�Zlang�enc�namer=rrr�
_print_localeDsV








r��LC_MESSAGES�__main__zLocale aliasing:zNumber formatting:)zLC_ALLzLC_CTYPEr�zLANGUAGE)I�__doc__r�ryZencodings.aliases�rera�builtinsrr��	functools�__all__rrr�r�rrrrr�rrrrCrr	rr�rr
r?r@�wrapsrErQrR�compilerSrrWrr�floatrr
rur�r�r�rr�r�rrrr��
startswithr�CODESET�	NameErrorr~�sortedr�r�r�rm�
setdefaultr�r�r�rK�__name__rsrrrr�<module>s�
			
"-
S5

	
r

:





?>