§
    EqgÑ  ã                   óÖ  — d Z ddlmZmZmZ ddlmZmZ ddlmZ ddlm	Z	 ddl
mZ 	 ddlmZmZ nŠ# e$ r‚ dd	lZdd	lZej                             ej        d         ¦  «        d
k    s)ej                             ej        d         ¦  «        dk    r$ edej        ¬¦  «         dd ed¦  «        iiZdZn‚ Y nw xY wg d¢Zdd„Zdd„Zdd„Zd„ Zedk    rdd	lZ ej        ¦   «          d	S d	S )a8  Phone number to carrier mapping functionality

>>> import phonenumbers
>>> from phonenumbers.carrier import name_for_number
>>> ro_number = phonenumbers.parse("+40721234567", "RO")
>>> str(name_for_number(ro_number, "en"))
'Vodafone'
>>> str(name_for_number(ro_number, "fr"))  # fall back to English
'Vodafone'

é   )ÚprntÚuÚU_EMPTY_STRING)ÚPhoneNumberTypeÚnumber_type)Úregion_code_for_number)Ú is_mobile_number_portable_region)Ú_prefix_description_for_number)ÚCARRIER_DATAÚCARRIER_LONGEST_PREFIXé    Nzbuildmetadatafromxml.pyzbuildprefixdata.pyzAFailed to import generated data (but OK as during autogeneration))ÚfileÚ1ÚenzUnited States)Úname_for_valid_numberÚname_for_numberÚsafe_display_namec                 ó>   — t          t          t          | |||¦  «        S )aÃ  Returns a carrier name for the given PhoneNumber object, in the
    language provided.

    The carrier name is the one the number was originally allocated to,
    however if the country supports mobile number portability the number might
    not belong to the returned carrier anymore. If no mapping is found an
    empty string is returned.

    This method assumes the validity of the number passed in has already been
    checked, and that the number is suitable for carrier lookup. We consider
    mobile and pager numbers possible candidates for carrier lookup.

    Arguments:
    numobj -- The PhoneNumber object for which we want to get a carrier name.
    lang -- A 2-letter lowercase ISO 639-1 language code for the language in
                  which the description should be returned (e.g. "en")
    script -- A 4-letter titlecase (first letter uppercase, rest lowercase)
                  ISO script code as defined in ISO 15924, separated by an
                  underscore (e.g. "Hant")
    region --  A 2-letter uppercase ISO 3166-1 country code (e.g. "GB")

    Returns a carrier name in the given language code, for the given phone
    number, or an empty string if no description is available.
    )r
   r   r   ©ÚnumobjÚlangÚscriptÚregions       úF/var/www/html/env/lib/python3.11/site-packages/phonenumbers/carrier.pyr   r   5   s'   € õ2 *­,Õ8NØ*0°$¸ÀñHô Hð Hó    c                 óp   — t          | ¦  «        }t          |¦  «        rt          | |||¦  «        S t          S )a,  Returns a carrier name for the given PhoneNumber object, in the
    language provided.

    The carrier name is the one the number was originally allocated to,
    however if the country supports mobile number portability the number might
    not belong to the returned carrier anymore. If no mapping is found an
    empty string is returned.

    This function explicitly checks the validity of the number passed in

    Arguments:
    numobj -- The PhoneNumber object for which we want to get a carrier name.
    lang -- A 2-letter lowercase ISO 639-1 language code for the language in
                  which the description should be returned (e.g. "en")
    script -- A 4-letter titlecase (first letter uppercase, rest lowercase)
                  ISO script code as defined in ISO 15924, separated by an
                  underscore (e.g. "Hant")
    region --  A 2-letter uppercase ISO 3166-1 country code (e.g. "GB")

    Returns a carrier name in the given language code, for the given phone
    number, or an empty string if no description is available.
    )r   Ú
_is_mobiler   r   )r   r   r   r   Úntypes        r   r   r   R   s<   € õ. ˜ÑÔ€EÝ%ÑÔð CÝ$ V¨T°6¸6ÑBÔBÐBÝÐr   c                 ól   — t          t          | ¦  «        ¦  «        rt          S t          | |||¦  «        S )aÇ  Gets the name of the carrier for the given PhoneNumber object only when
    it is 'safe' to display to users.  A carrier name is onsidered safe if the
    number is valid and for a region that doesn't support mobile number
    portability (http://en.wikipedia.org/wiki/Mobile_number_portability).


    This function explicitly checks the validity of the number passed in

    Arguments:
    numobj -- The PhoneNumber object for which we want to get a carrier name.
    lang -- A 2-letter lowercase ISO 639-1 language code for the language in
                  which the description should be returned (e.g. "en")
    script -- A 4-letter titlecase (first letter uppercase, rest lowercase)
                  ISO script code as defined in ISO 15924, separated by an
                  underscore (e.g. "Hant")
    region --  A 2-letter uppercase ISO 3166-1 country code (e.g. "GB")

    Returns a carrier name that is safe to display to users, or the empty string.
    )r	   r   r   r   r   s       r   r   r   o   s7   € õ( (Õ(>¸vÑ(FÔ(FÑGÔGð ÝÐÝ˜6 4¨°Ñ8Ô8Ð8r   c                 ób   — | t           j        k    p| t           j        k    p| t           j        k    S )z:Checks if the supplied number type supports carrier lookup)r   ÚMOBILEÚFIXED_LINE_OR_MOBILEÚPAGER)r   s    r   r   r   ˆ   s2   € à•_Ô+Ò+ð +Ø•_Ô9Ò9ð+à•_Ô*Ò*ð,r   Ú__main__)NN)Ú__doc__Úutilr   r   r   Úphonenumberutilr   r   r   r	   Úprefixr
   Úcarrierdatar   r   ÚImportErrorÚosÚsysÚpathÚbasenameÚargvÚstderrÚ__all__r   r   r   r   Ú__name__ÚdoctestÚtestmod© r   r   ú<module>r6      sè  ðð
ð 
ð6 *Ð )Ð )Ð )Ð )Ð )Ð )Ð )Ð )Ð )Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø =Ð =Ð =Ð =Ð =Ð =Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2ðØAÐAÐAÐAÐAÐAÐAÐAÐAøØð ð ð ð €I€I€IØ€J€J€JØ
Œ×Ò˜œ !œÑ%Ô%Ð)BÒBÐBØ
Œ×Ò˜œ !œÑ%Ô%Ð)=Ò=Ð=ØˆÐPÐWZÔWaÐbÑbÔbÐbØ˜d A A oÑ$6Ô$6Ð7Ð8ˆØ!"ÐÐàð 	Ððøøøð LÐ
KÐ
K€ðHð Hð Hð Hð:ð ð ð ð:9ð 9ð 9ð 9ð2,ð ,ð ,ð ˆzÒÐØ€N€N€NØ€G„OÑÔÐÐÐð Ðs   ¨1 ±BB8Â7B8