�
ƪb�� � � � d Z ddlZddlZddlmZ ddlmZ g d�Zda ei � � Z d� Z
d� Zi dd �d
d�dd
�dd�dd�dd�dd�dd�dd�dd�dd�dd�d d!�d"d#�d$d%�d&d'�d(d)�i d*d+�d,d-�d.d/�d0d1�d2d3�d4d5�d6d7�d8d9�d:d;�d<d=�d>d?�d@dA�dBdC�dDdE�dFdG�dHdI�dJdK��dLdMdNdOdPdQ��Z G dR� dSe
� � Z G dT� dU� � ZdefdV�ZdWefdX�Zd[dY�Zd[dZ�ZdS )\z�
babel.core
~~~~~~~~~~
Core locale representation and locale data access.
:copyright: (c) 2013-2022 by the Babel Team.
:license: BSD, see LICENSE for more details.
� N)�
localedata)�
PluralRule)�UnknownLocaleError�Locale�default_locale�negotiate_locale�parse_localec � � t d� � �)Nz�The babel data files are not available. This usually happens because you are using a source checkout from Babel and you did not build the data files. Just make sure to run "python setup.py import_cldr" before installing the library.)�RuntimeError� � �,/usr/lib/python3/dist-packages/babel/core.py�_raise_no_data_errorr s � �
� 1� 2� 2� 2r
c �� � t ��t j � t j � t
� � � � }t j � |d� � }t j � |� � st � � t |d� � 5 }t j
|� � a ddd� � n# 1 swxY w Y t � | i � � S )a_ Return the dictionary for the given key in the global data.
The global data is stored in the ``babel/global.dat`` file and contains
information independent of individual locales.
>>> get_global('zone_aliases')['UTC']
u'Etc/UTC'
>>> get_global('zone_territories')['Europe/Berlin']
u'DE'
The keys available are:
- ``all_currencies``
- ``currency_fractions``
- ``language_aliases``
- ``likely_subtags``
- ``parent_exceptions``
- ``script_aliases``
- ``territory_aliases``
- ``territory_currencies``
- ``territory_languages``
- ``territory_zones``
- ``variant_aliases``
- ``windows_zone_mapping``
- ``zone_aliases``
- ``zone_territories``
.. note:: The internal structure of the data may change between versions.
.. versionadded:: 0.9
:param key: the data key
Nz
global.dat�rb)�_global_data�os�path�join�dirname�__file__�isfiler �open�pickle�load�get)�keyr �filename�fileobjs r �
get_globalr " |