




def 	_a      (						SCREAMING_SNAKE_CASE_							:				int     ):  # noqa: E741
					__lowerCAmelCase				   =       len(SCREAMING_SNAKE_CASE_     )
					__lowerCAmelCase				   =       0
					__lowerCAmelCase				   =       [0] * n
					__lowerCAmelCase				   =       [False] * n
					__lowerCAmelCase				   =       [False] * n

					def dfs(SCREAMING_SNAKE_CASE_							:				List[Any]      ,      SCREAMING_SNAKE_CASE_							:				int      ,      SCREAMING_SNAKE_CASE_							:				Any      ,      SCREAMING_SNAKE_CASE_							:				List[Any]     ):
										if parent == root:
															out_edge_count += 1
										__lowerCAmelCase				   =       True
										__lowerCAmelCase				   =       at

										for to in l[at]:
															if to == parent:
																				pass
															elif not visited[to]:
																				__lowerCAmelCase				   =       dfs(SCREAMING_SNAKE_CASE_      ,      SCREAMING_SNAKE_CASE_      ,      SCREAMING_SNAKE_CASE_      ,      SCREAMING_SNAKE_CASE_     )
																				__lowerCAmelCase				   =       min(low[at]      ,      low[to]     )

																				# AP found via bridge
																				if at < low[to]:
																									__lowerCAmelCase				   =       True
																				# AP found via cycle
																				if at == low[to]:
																									__lowerCAmelCase				   =       True
															else:
																				__lowerCAmelCase				   =       min(low[at]      ,      SCREAMING_SNAKE_CASE_     )
										return out_edge_count

					for i in range(SCREAMING_SNAKE_CASE_     ):
										if not visited[i]:
															__lowerCAmelCase				   =       0
															__lowerCAmelCase				   =       dfs(SCREAMING_SNAKE_CASE_      ,      SCREAMING_SNAKE_CASE_      ,      -1      ,      SCREAMING_SNAKE_CASE_     )
															__lowerCAmelCase				   =       out_edge_count > 1

					for x in range(len(SCREAMING_SNAKE_CASE_     )     ):
										if is_art[x] is True:
															print(SCREAMING_SNAKE_CASE_     )


# Adjacency list of graph
UpperCamelCase__    			=			{
    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],
}


compute_ap(data)








'''simple docstring'''

a_  :				Any						= """0.21.0"""

from .accelerator import Accelerator
from .big_modeling import (
    cpu_offload,
    cpu_offload_with_hook,
    disk_offload,
    dispatch_model,
    init_empty_weights,
    init_on_device,
    load_checkpoint_and_dispatch,
)
from .data_loader import skip_first_batches
from .launchers import debug_launcher, notebook_launcher
from .state import PartialState
from .utils import (
    DeepSpeedPlugin,
    DistributedDataParallelKwargs,
    DistributedType,
    FullyShardedDataParallelPlugin,
    GradScalerKwargs,
    InitProcessGroupKwargs,
    find_executable_batch_size,
    infer_auto_device_map,
    is_rich_available,
    load_checkpoint_in_model,
    synchronize_rng_states,
)


if is_rich_available():
     from .utils import rich



