



'''simple docstring'''

# A Bipartite Graph is a graph whose vertices can be divided into two independent sets,
# U and V such that every edge (u, v) either connects a vertex from U to V or a vertex
# from V to U. In other words, for every edge (u, v), either u belongs to U and v to V,
# or u belongs to V and v to U. We can also say that there is no edge that connects
# vertices of same set.
from queue import Queue






def 		_snake_case		(					_SCREAMING_SNAKE_CASE     :						Optional[int]							)			->						Union[str, Any]:







	"""simple docstring"""
	lowerCAmelCase    =	Queue()
	lowerCAmelCase    =	[False] * len(_SCREAMING_SNAKE_CASE							)
	lowerCAmelCase    =	[-1] * len(_SCREAMING_SNAKE_CASE							)

	def bfs():
		while not queue.empty():
			lowerCAmelCase    =	queue.get()
			lowerCAmelCase    =	True

			for neighbour in graph[u]:
				if neighbour == u:
					return False

				if color[neighbour] == -1:
					lowerCAmelCase    =	1 - color[u]
					queue.put(_SCREAMING_SNAKE_CASE							)

				elif color[neighbour] == color[u]:
					return False

		return True

	for i in range(len(_SCREAMING_SNAKE_CASE							)							):
		if not visited[i]:
			queue.put(_SCREAMING_SNAKE_CASE							)
			lowerCAmelCase    =	0
			if bfs() is False:
				return False

	return True


if __name__ == "__main__":
				# Adjacency List of graph
				print(check_bipartite({0: [1, 3], 1: [0, 2], 2: [1, 3], 3: [0, 2]}))




'''simple docstring'''

def 		_snake_case		(					_SCREAMING_SNAKE_CASE     :						int = 4_000_000							)			->						int:







	"""simple docstring"""
	lowerCAmelCase    =	1
	lowerCAmelCase    =	2
	lowerCAmelCase    =	0
	while j <= n:
		if j % 2 == 0:
			total += j
		lowerCAmelCase,   lowerCAmelCase    =	j, i + j

	return total


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