

"""simple docstring"""



def  _snake_case     (    UpperCAmelCase_  :					int | float | str			):
					try:
										A__										=  float(UpperCamelCase__			)
					except ValueError:
										raise ValueError("""Please enter a valid number"""			)
					A__										=  decimal - int(UpperCamelCase__			)
					if fractional_part == 0:
										return int(UpperCamelCase__			), 1
					else:
										A__										=  len(str(UpperCamelCase__			).split("""."""			)[1]			)
										A__										=  int(decimal * (10**number_of_frac_digits)			)
										A__										=  10**number_of_frac_digits
										A__										=  denominator, numerator
										while True:
															A__										=  dividend % divisor
															if remainder == 0:
																				break
															A__										=  divisor, remainder
										A__										=  numerator / divisor, denominator / divisor
										return int(UpperCamelCase__			), int(UpperCamelCase__			)


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') = }""")









"""simple docstring"""



from collections import defaultdict





def  _snake_case     (    UpperCAmelCase_  :					int			):
     A__										=  1
     A__										=  True
     for v in tree[start]:
          if v not in visited:
               ret += dfs(UpperCAmelCase_			)
     if ret % 2 == 0:
          cuts.append(UpperCAmelCase_			)
     return ret





def  _snake_case     (    ):
     dfs(1			)


if __name__ == "__main__":
 SCREAMING_SNAKE_CASE_  ,SCREAMING_SNAKE_CASE_					:	Any							  =						1_0, 9
 SCREAMING_SNAKE_CASE_					:	Any							  =						defaultdict(list)
 SCREAMING_SNAKE_CASE_					:	dict[int, bool]							  =						{}
 SCREAMING_SNAKE_CASE_					:	list[int]							  =						[]
 SCREAMING_SNAKE_CASE_					:	Optional[int]							  =						0
 SCREAMING_SNAKE_CASE_					:	Any							  =						[(2, 1), (3, 1), (4, 3), (5, 2), (6, 1), (7, 2), (8, 6), (9, 8), (1_0, 8)]
 for u, v in edges:
  tree[u].append(v)
  tree[v].append(u)
 even_tree()
 print(len(cuts) - 1)






