<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def country_name_for_number(numobj, lang, script=None, region=None):
 """Returns the customary display name in the given langauge for the given territory the given PhoneNumber object is from. If it could be from many territories, nothing is returned. Arguments: numobj -- The PhoneNumber object for which we want to get a text description. 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") The script and region parameters are currently ignored. Returns a text description in the given language code, for the given phone number's region, or an empty string if no description is available."""

    region_codes = region_codes_for_country_code(numobj.country_code)
    if len(region_codes) == 1:
        return _region_display_name(region_codes[0], lang, script, region)
    else:
        region_where_number_is_valid = u("ZZ")
        for region_code in region_codes:
            if is_valid_number_for_region(numobj, region_code):
                # If the number has already been found valid for one region,
                # then we don't know which region it belongs to so we return
                # nothing.
                if region_where_number_is_valid != u("ZZ"):
                    return U_EMPTY_STRING
                region_where_number_is_valid = region_code
        return _region_display_name(region_where_number_is_valid, lang, script, region)