


'''simple docstring'''



def       _UpperCamelCase (						UpperCamelCase__   ):
			return [
			    {
			        0: [1, 2],
			        1: [0, 2],
			        2: [0, 1, 3, 5],
			        3: [2, 4],
			        4: [3],
			        5: [2, 6, 8],
			        6: [5, 7],
			        7: [6, 8],
			        8: [5, 7],
			    },
			    {
			        0: [6],
			        1: [9],
			        2: [4, 5],
			        3: [4],
			        4: [2, 3],
			        5: [2],
			        6: [0, 7],
			        7: [6],
			        8: [],
			        9: [1],
			    },
			    {
			        0: [4],
			        1: [6],
			        2: [],
			        3: [5, 6, 7],
			        4: [0, 6],
			        5: [3, 8, 9],
			        6: [1, 3, 4, 7],
			        7: [3, 6, 8, 9],
			        8: [5, 7],
			        9: [5, 7],
			    },
			    {
			        0: [1, 3],
			        1: [0, 2, 4],
			        2: [1, 3, 4],
			        3: [0, 2, 4],
			        4: [1, 2, 3],
			    },
			][index]







def       _UpperCamelCase (						UpperCamelCase__   ):
			UpperCAmelCase__					:   Any       				=       0
			UpperCAmelCase__					:   Union[str, Any]       				=       len(lowerCamelCase__   )  # No of vertices in graph
			UpperCAmelCase__					:   Optional[Any]       				=       [0] * n
			UpperCAmelCase__					:   Dict       				=       [False] * n

			def dfs(UpperCamelCase__	, UpperCamelCase__	, UpperCamelCase__	, UpperCamelCase__   ):
						UpperCAmelCase__					:   Optional[Any]       				=       True
						UpperCAmelCase__					:   Dict       				=       id_
						id_ += 1
						for to in graph[at]:
									if to == parent:
												pass
									elif not visited[to]:
												dfs(lowerCamelCase__	, lowerCamelCase__	, lowerCamelCase__	, id_   )
												UpperCAmelCase__					:   Optional[Any]       				=       min(low[at]	, low[to]   )
												if id_ <= low[to]:
															bridges.append((at, to) if at < to else (to, at)   )
									else:
												# This edge is a back edge and cannot be a bridge
												UpperCAmelCase__					:   int       				=       min(low[at]	, low[to]   )

			UpperCAmelCase__					:   list[tuple[int, int]]       				=       []
			for i in range(lowerCamelCase__   ):
						if not visited[i]:
									dfs(lowerCamelCase__	, -1	, lowerCamelCase__	, id_   )
			return bridges


if __name__ == "__main__":
		import doctest

		doctest.testmod()



'''simple docstring'''



def       _UpperCamelCase (						UpperCamelCase__ = 1_0	, UpperCamelCase__ = 2_2   ):
			UpperCAmelCase__					:   List[str]       				=       range(1	, UpperCamelCase__   )
			UpperCAmelCase__					:   int       				=       range(1	, UpperCamelCase__   )
			return sum(
			    1 for power in powers for base in bases if len(str(base**power   )   ) == power   )


if __name__ == "__main__":
		print(f"""{solution(10, 22) = }""")