
"""simple docstring"""




def     __magic_name__      ( __snake_case							:			str    )					->							bool:
       return credit_card_number.startswith(("34", "35", "37", "4", "5", "6")    )


def     __magic_name__      ( __snake_case							:			str    )					->							bool:
       lowercase       :							Optional[int]									=				credit_card_number
       lowercase       :							str									=				0
       lowercase       :							str									=				len(__snake_case    ) - 2
       for i in range(__snake_case	,					-1	,					-2    ):
              #  double the value of every second digit
              lowercase       :							Tuple									=				int(cc_number[i]    )
              digit *= 2
              # If doubling of a number results in a two digit number
              # i.e greater than 9(e.g., 6 × 2 = 12),
              # then add the digits of the product (e.g., 12: 1 + 2 = 3, 15: 1 + 5 = 6),
              # to get a single digit number.
              if digit > 9:
                     digit %= 10
                     digit += 1
              lowercase       :							Any									=				cc_number[:i] + str(__snake_case    ) + cc_number[i + 1 :]
              total += digit

       # Sum up the remaining digits
       for i in range(len(__snake_case    ) - 1	,					-1	,					-2    ):
              total += int(cc_number[i]    )

       return total % 10 == 0


def     __magic_name__      ( __snake_case							:			str    )					->							bool:
       lowercase       :							int									=				f"""{credit_card_number} is an invalid credit card number because"""
       if not credit_card_number.isdigit():
              print(f"""{error_message} it has nonnumerical characters."""    )
              return False

       if not 13 <= len(__snake_case    ) <= 16:
              print(f"""{error_message} of its length."""    )
              return False

       if not validate_initial_digits(__snake_case    ):
              print(f"""{error_message} of its first two digits."""    )
              return False

       if not luhn_validation(__snake_case    ):
              print(f"""{error_message} it fails the Luhn check."""    )
              return False

       print(f"""{credit_card_number} is a valid credit card number."""    )
       return True


if __name__ == "__main__":
   import doctest

   doctest.testmod()
   validate_credit_card_number("""4111111111111111""")
   validate_credit_card_number("""32323""")




"""simple docstring"""




from __future__ import annotations

from math import pow, sqrt


def     __magic_name__      ( __snake_case							:			float	,					__snake_case							:			float	,					__snake_case							:			float    )					->							dict[str, float]:
       if (resistance, reactance, impedance).count(0    ) != 1:
              raise ValueError("One and only one argument must be 0"    )
       if resistance == 0:
              return {"resistance": sqrt(pow(__snake_case	,					2    ) - pow(__snake_case	,					2    )    )}
       elif reactance == 0:
              return {"reactance": sqrt(pow(__snake_case	,					2    ) - pow(__snake_case	,					2    )    )}
       elif impedance == 0:
              return {"impedance": sqrt(pow(__snake_case	,					2    ) + pow(__snake_case	,					2    )    )}
       else:
              raise ValueError("Exactly one argument must be 0"    )


if __name__ == "__main__":
   import doctest

   doctest.testmod()


