�
ƪb�
� � � d dl mZ dd�Zd� Zy)� )�
get_globalc � � t | � j � } dh}|r|j d� |r|j d� t d� j | i � }|j � D ��cg c] \ }}|j d� |v r|d |f��! }}}|j
d�� t d � |D � � S c c}}w )
a^
Get the official language(s) for the given territory.
The language codes, if any are known, are returned in order of descending popularity.
If the `regional` flag is set, then languages which are regionally official are also returned.
If the `de_facto` flag is set, then languages which are "de facto" official are also returned.
.. warning:: Note that the data is as up to date as the current version of the CLDR used
by Babel. If you need scientifically accurate information, use another source!
:param territory: Territory code
:type territory: str
:param regional: Whether to return regionally official languages too
:type regional: bool
:param de_facto: Whether to return de-facto official languages too
:type de_facto: bool
:return: Tuple of language codes
:rtype: tuple[str]
�official�official_regional�de_facto_official�territory_languages�official_status�population_percentT)�reversec 3 �& |