code: def is_valid_number_for_region(numobj, region_code):
      
      country_code = numobj.country_code
      if region_code is None:
          return False
      metadata = PhoneMetadata.metadata_for_region_or_calling_code(country_code, region_code.upper())
      if (metadata is None or
          (region_code != REGION_CODE_FOR_NON_GEO_ENTITY and
           country_code != country_code_for_valid_region(region_code))):
          # Either the region code was invalid, or the country calling code for
          # this number does not match that of the region code.
          return False
      nsn = national_significant_number(numobj)
      return (_number_type_helper(nsn, metadata) != PhoneNumberType.UNKNOWN)
docs: Tests whether a phone number is valid for a certain region.
  
      Note this doesn't verify the number is actually in use, which is
      impossible to tell by just looking at a number itself. If the country
      calling code is not the same as the country calling code for the region,
      this immediately exits with false. After this, the specific number pattern
      rules for the region are examined. This is useful for determining for
      example whether a particular number is valid for Canada, rather than just
      a valid NANPA number.
  
      Warning: In most cases, you want to use is_valid_number instead. For
      example, this method will mark numbers from British Crown dependencies
      such as the Isle of Man as invalid for the region "GB" (United Kingdom),
      since it has its own region code, "IM", which may be undesirable.
  
      Arguments:
      numobj -- The phone number object that we want to validate.
      region_code -- The region that we want to validate the phone number for.
  
      Returns a boolean that indicates whether the number is of a valid pattern.