dbfdg 3 4\0X @s"ddlmZdddZddZdS) ) get_globalFcstt|j}td |r"jd|r0jdtdj|i}fdd|jD}|jddtd d |DS) 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] officialZofficial_regionalZde_facto_officialterritory_languagescs*g|]"\}}|jdkr|d|fqS)Zofficial_statusZpopulation_percent)get).0Zlanguageinfo) allowed_stati/usr/lib/python3.6/languages.py %sz*get_official_languages..T)reversecss|]\}}|VqdS)Nr )r_Zlangr r r *sz)get_official_languages..)r) struppersetaddrritemssorttuple) territoryZregionalZde_factoZ languagesZpairsr )rr get_official_languagess      rcCs t|j}tdj|ijS)a  Get a dictionary of language information for a territory. The dictionary is keyed by language code; the values are dicts with more information. The following keys are currently known for the values: * `population_percent`: The percentage of the territory's population speaking the language. * `official_status`: An optional string describing the officiality status of the language. Known values are "official", "official_regional" and "de_facto_official". .. 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! .. note:: Note that the format of the dict returned may change between Babel versions. See http://www.unicode.org/cldr/charts/latest/supplemental/territory_language_information.html :param territory: Territory code :type territory: str :return: Language information dictionary :rtype: dict[str, dict] r)rrrrcopy)rr r r get_territory_language_info-s rN)FF)Z babel.corerrrr r r r s  (