from collections import defaultdict






def     lowerCAmelCase_			(   _SCREAMING_SNAKE_CASE     :				int			):
						UpperCamelCase_		:							Optional[int]  =		1
						UpperCamelCase_		:							Optional[Any]  =		True
						for v in tree[start]:
												if v not in visited:
																		ret += dfs(_SCREAMING_SNAKE_CASE			)
						if ret % 2 == 0:
												cuts.append(_SCREAMING_SNAKE_CASE			)
						return ret






def     lowerCAmelCase_			(   ):
						dfs(1			)


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







import numpy as np






def     lowerCAmelCase_			(   _SCREAMING_SNAKE_CASE     :				np.array			):
						return (2 / (1 + np.exp(-2 * vector			))) - 1


if __name__ == "__main__":
	import doctest

	doctest.testmod()






