





UpperCAmelCase__  :	List[str]     ={0: [1, 2], 1: [0, 3], 2: [0], 3: [1], 4: [5, 6], 5: [4, 6], 6: [4, 5]}

UpperCAmelCase__  :	List[Any]     ={0: [1, 2, 3], 1: [0, 3], 2: [0], 3: [0, 1], 4: [], 5: []}





def    _lowercase    (  _UpperCAmelCase	,					_UpperCAmelCase	,					_UpperCAmelCase )  ->     list:
				lowerCamelCase		       =True
				lowerCamelCase		       =[]

				for neighbour in graph[vert]:
								if not visited[neighbour]:
												connected_verts += dfs(_UpperCAmelCase	,					_UpperCAmelCase	,					_UpperCAmelCase )

				return [vert, *connected_verts]





def    _lowercase    (  _UpperCAmelCase )  ->     list:
				lowerCamelCase		       =len(_UpperCAmelCase )
				lowerCamelCase		       =graph_size * [False]
				lowerCamelCase		       =[]

				for i in range(_UpperCAmelCase ):
								if not visited[i]:
												lowerCamelCase		       =dfs(_UpperCAmelCase	,					_UpperCAmelCase	,					_UpperCAmelCase )
												components_list.append(_UpperCAmelCase )

				return components_list


if __name__ == "__main__":
							import doctest

							doctest.testmod()













def    lowerCAmelCase__		(			_a				:	int			):
		if not isinstance(_a     ,					_a			):
				snake_case_ :							Optional[int]         =				F'''Input value of [number={number}] must be an integer'''
				raise TypeError(_a			)
		if number < 1:
				raise ValueError("Input must be a positive integer"			)
		return number * (2 * number - 1)


if __name__ == "__main__":
							import doctest

							doctest.testmod()
