
"""simple docstring"""


def     _lowerCamelCase(__UpperCamelCase       )				-> int:
	_lowerCAmelCase								=str(UpperCamelCase_       ).strip()
	if not bin_string:
		raise ValueError("""Empty string was passed to the function"""       )
	_lowerCAmelCase								=bin_string[0] == """-"""
	if is_negative:
		_lowerCAmelCase								=bin_string[1:]
	if not all(char in """01""" for char in bin_string       ):
		raise ValueError("""Non-binary value was passed to the function"""       )
	_lowerCAmelCase								=0
	for char in bin_string:
		_lowerCAmelCase								=2 * decimal_number + int(UpperCamelCase_       )
	return -decimal_number if is_negative else decimal_number


if __name__ == "__main__":
			from doctest import testmod

			testmod()










import math




def        lowerCAmelCase_       (							UpperCamelCase_     )   ->						bool:

       if 1 < number < 4:
              # 2 and 3 are primes
              return True
       elif number < 2 or number % 2 == 0 or number % 3 == 0:
              # Negatives, 0, 1, all even numbers, all multiples of 3 are not primes
              return False

       # All primes number are in format of 6k +/- 1
       for i in range(5    ,						int(math.sqrt(UpperCamelCase_     ) + 1     )    ,						6     ):
              if number % i == 0 or number % (i + 2) == 0:
                     return False
       return True




def        lowerCAmelCase_       (							UpperCamelCase_ = 600851475143     )   ->						int:

       try:
              UpperCamelCase_      				=     int(UpperCamelCase_     )
       except (TypeError, ValueError):
              raise TypeError("Parameter n must be int or castable to int."     )
       if n <= 0:
              raise ValueError("Parameter n must be greater than or equal to one."     )
       UpperCamelCase_      				=     0
       if is_prime(UpperCamelCase_     ):
              return n
       while n % 2 == 0:
              n //= 2
       if is_prime(UpperCamelCase_     ):
              return n
       for i in range(3    ,						int(math.sqrt(UpperCamelCase_     )     ) + 1    ,						2     ):
              if n % i == 0:
                     if is_prime(n // i     ):
                            UpperCamelCase_      				=     n // i
                            break
                     elif is_prime(UpperCamelCase_     ):
                            UpperCamelCase_      				=     i
       return max_number


if __name__ == "__main__":
     print(f'''{solution() = }''')

