'''simple docstring'''




from collections import defaultdict



def     __snake_case			(							lowerCAmelCase							:  Optional[int]      ):
 __UpperCAmelCase								=       1
 __UpperCAmelCase								=       True
 for v in tree[start]:
  if v not in visited:
   ret += dfs(_lowerCAmelCase      )
 if ret % 2 == 0:
  cuts.append(_lowerCAmelCase      )
 return ret



def     __snake_case			(							):
 dfs(1      )


if __name__ == "__main__":
     _UpperCamelCase      ,   _UpperCamelCase					:		Optional[int]							      =		10, 9
     _UpperCamelCase					:		str							      =		defaultdict(list)
     _UpperCamelCase					:		List[Any]							      =		{}
     _UpperCamelCase					:		Any							      =		[]
     _UpperCamelCase					:		Dict							      =		0
     _UpperCamelCase					:		Optional[int]							      =		[(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)








'''simple docstring'''





def 			a_	(				_lowerCAmelCase			,_lowerCAmelCase			) -> tuple[float, float]:

  # Check if the input is valid
  if not len(_lowerCAmelCase			) == len(_lowerCAmelCase			) == 3:
    raise ValueError('Please enter a valid equation.'			)
  if equationa[0] == equationa[1] == equationa[0] == equationa[1] == 0:
    raise ValueError('Both a & b of two equations can\'t be zero.'			)

  # Extract the coefficients
  __lowerCamelCase			,__lowerCamelCase			,__lowerCamelCase			:			Union[str, Any]       			=					equationa
  __lowerCamelCase			,__lowerCamelCase			,__lowerCamelCase			:			Any       			=					equationa

  # Calculate the determinants of the matrices
  __lowerCamelCase			:			Union[str, Any]       			=					aa * ba - aa * ba
  __lowerCamelCase			:			Dict       			=					ca * ba - ca * ba
  __lowerCamelCase			:			List[str]       			=					aa * ca - aa * ca

  # Check if the system of linear equations has a solution (using Cramer's rule)
  if determinant == 0:
    if determinant_x == determinant_y == 0:
      raise ValueError('Infinite solutions. (Consistent system)'			)
    else:
      raise ValueError('No solution. (Inconsistent system)'			)
  else:
    if determinant_x == determinant_y == 0:
      # Trivial solution (Inconsistent system)
      return (0.0, 0.0)
    else:
      __lowerCamelCase			:			Tuple       			=					determinant_x / determinant
      __lowerCamelCase			:			Union[str, Any]       			=					determinant_y / determinant
      # Non-Trivial Solution (Consistent system)
      return (x, y)






