


def 				UpperCamelCase__					(  SCREAMING_SNAKE_CASE__						):
 try:
  __lowerCamelCase		:							Tuple		 =						float(SCREAMING_SNAKE_CASE__						)
 except ValueError:
  raise ValueError('Please enter a valid number'						)
 __lowerCamelCase		:							List[str]		 =						decimal - int(SCREAMING_SNAKE_CASE__						)
 if fractional_part == 0:
  return int(SCREAMING_SNAKE_CASE__						), 1
 else:
  __lowerCamelCase		:							List[Any]		 =						len(str(SCREAMING_SNAKE_CASE__						).split('.'						)[1]						)
  __lowerCamelCase		:							Optional[int]		 =						int(decimal * (10**number_of_frac_digits)						)
  __lowerCamelCase		:							List[str]		 =						10**number_of_frac_digits
  __lowerCamelCase ,					__lowerCamelCase		:							Union[str, Any]		 =						denominator, numerator
  while True:
   __lowerCamelCase		:							str		 =						dividend % divisor
   if remainder == 0:
    break
   __lowerCamelCase ,					__lowerCamelCase		:							Any		 =						divisor, remainder
  __lowerCamelCase ,					__lowerCamelCase		:							Dict		 =						numerator / divisor, denominator / divisor
  return int(SCREAMING_SNAKE_CASE__						), int(SCREAMING_SNAKE_CASE__						)


if __name__ == "__main__":
       print(F"""{decimal_to_fraction(2) = }""")
       print(F"""{decimal_to_fraction(89.0) = }""")
       print(F"""{decimal_to_fraction('67') = }""")
       print(F"""{decimal_to_fraction('45.0') = }""")
       print(F"""{decimal_to_fraction(1.5) = }""")
       print(F"""{decimal_to_fraction('6.25') = }""")
       print(F"""{decimal_to_fraction('78td') = }""")





from maths.is_square_free import is_square_free
from maths.prime_factors import prime_factors
def 				UpperCamelCase__					(  SCREAMING_SNAKE_CASE__						):
 __lowerCamelCase		:							Dict		 =						prime_factors(SCREAMING_SNAKE_CASE__						)
 if is_square_free(SCREAMING_SNAKE_CASE__						):
  return -1 if len(SCREAMING_SNAKE_CASE__						) % 2 else 1
 return 0


if __name__ == "__main__":
       import doctest

       doctest.testmod()

