




__a			:	Union[str, Any]							     =		{0: [1, 2], 1: [0, 3], 2: [0], 3: [1], 4: [5, 6], 5: [4, 6], 6: [4, 5]}

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




def  a_		(							__snake_case     ,		__snake_case     ,		__snake_case					)	->			list:

			'''simple docstring'''


			UpperCamelCase_     				= True
			UpperCamelCase_     				= []

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

			return [vert, *connected_verts]




def  a_		(							__snake_case					)	->			list:

			'''simple docstring'''


			UpperCamelCase_     				= len(__snake_case					)
			UpperCamelCase_     				= graph_size * [False]
			UpperCamelCase_     				= []

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

			return components_list


if __name__ == "__main__":
				import doctest

				doctest.testmod()






__a			:	Optional[Any]							     =		[chr(i) for i in range(32, 1_26)]
__a			:	Dict							     =		list(range(len(alphabets)))
__a			:	List[Any]							     =		list(range(len(alphabets)))
__a			:	Tuple							     =		list(range(len(alphabets)))
__a			:	List[Any]							     =		list(reversed(range(len(alphabets))))
__a			:	List[Any]							     =		[]
__a			:	Optional[int]							     =		0




def  a_		(							)	->			Dict:

			'''simple docstring'''


			global gear_one_pos
			global gear_two_pos
			global gear_three_pos
			UpperCamelCase_     				= gear_one[0]
			gear_one.append(__snake_case					)
			del gear_one[0]
			gear_one_pos += 1
			if gear_one_pos % int(len(__snake_case					)					) == 0:
						UpperCamelCase_     				= gear_two[0]
						gear_two.append(__snake_case					)
						del gear_two[0]
						gear_two_pos += 1
						if gear_two_pos % int(len(__snake_case					)					) == 0:
									UpperCamelCase_     				= gear_three[0]
									gear_three.append(__snake_case					)
									del gear_three[0]
									gear_three_pos += 1




def  a_		(							__snake_case					)	->			Any:

			'''simple docstring'''


			UpperCamelCase_     				= alphabets.index(__snake_case					)
			UpperCamelCase_     				= gear_one[target]
			UpperCamelCase_     				= gear_two[target]
			UpperCamelCase_     				= gear_three[target]
			UpperCamelCase_     				= reflector[target]
			UpperCamelCase_     				= gear_three.index(__snake_case					)
			UpperCamelCase_     				= gear_two.index(__snake_case					)
			UpperCamelCase_     				= gear_one.index(__snake_case					)
			code.append(alphabets[target]					)
			rotator()


if __name__ == "__main__":
				__a			:	Union[str, Any]							     =		list(input("""Type your message:\n"""))
				while True:
								try:
												__a			:	Optional[Any]							     =		int(input("""Please set token:(must be only digits)\n"""))
												break
								except Exception as error:
												print(error)
				for _ in range(token):
								rotator()
				for j in decode:
								engine(j)
				print("""\n""" + """""".join(code))
				print(
				    f"""\nYour Token is {token} please write it down.\nIf you want to decode """
				    """this message again you should input same digits as token!"""
				)
