





'''simple docstring'''




from ...configuration_utils import PretrainedConfig
from ...utils import logging


__UpperCAmelCase			    =    logging.get_logger(__name__)

__UpperCAmelCase			    =    {
    """facebook/vit-mae-base""": """https://huggingface.co/facebook/vit-mae-base/resolve/main/config.json""",
    # See all ViT MAE models at https://huggingface.co/models?filter=vit-mae
}




class 			UpperCamelCase__ ( _a       ):




					"""simple docstring"""
					SCREAMING_SNAKE_CASE__            =     '''vit_mae'''


					def __init__(		self							:       str	,		lowerCamelCase_							:       Optional[Any]=7_68	,		lowerCamelCase_							:       Union[str, Any]=12	,		lowerCamelCase_							:       Optional[int]=12	,		lowerCamelCase_							:       Any=30_72	,		lowerCamelCase_							:       List[str]="gelu"	,		lowerCamelCase_							:       int=0.0	,		lowerCamelCase_							:       Dict=0.0	,		lowerCamelCase_							:       Any=0.02	,		lowerCamelCase_							:       int=1e-12	,		lowerCamelCase_							:       Optional[Any]=2_24	,		lowerCamelCase_							:       Union[str, Any]=16	,		lowerCamelCase_							:       Any=3	,		lowerCamelCase_							:       Optional[Any]=True	,		lowerCamelCase_							:       List[Any]=16	,		lowerCamelCase_							:       List[Any]=5_12	,		lowerCamelCase_							:       Dict=8	,		lowerCamelCase_							:       Optional[int]=20_48	,		lowerCamelCase_							:       Optional[Any]=0.75	,		lowerCamelCase_							:       Union[str, Any]=False	,		**lowerCamelCase_							:       Union[str, Any]	,		):

							'''simple docstring'''



							super().__init__(**lowerCamelCase_		)

							SCREAMING_SNAKE_CASE      :							Optional[Any]						=       hidden_size
							SCREAMING_SNAKE_CASE      :							int						=       num_hidden_layers
							SCREAMING_SNAKE_CASE      :							str						=       num_attention_heads
							SCREAMING_SNAKE_CASE      :							Any						=       intermediate_size
							SCREAMING_SNAKE_CASE      :							Optional[Any]						=       hidden_act
							SCREAMING_SNAKE_CASE      :							int						=       hidden_dropout_prob
							SCREAMING_SNAKE_CASE      :							List[Any]						=       attention_probs_dropout_prob
							SCREAMING_SNAKE_CASE      :							Any						=       initializer_range
							SCREAMING_SNAKE_CASE      :							Tuple						=       layer_norm_eps
							SCREAMING_SNAKE_CASE      :							Optional[int]						=       image_size
							SCREAMING_SNAKE_CASE      :							List[Any]						=       patch_size
							SCREAMING_SNAKE_CASE      :							str						=       num_channels
							SCREAMING_SNAKE_CASE      :							Tuple						=       qkv_bias
							SCREAMING_SNAKE_CASE      :							List[Any]						=       decoder_num_attention_heads
							SCREAMING_SNAKE_CASE      :							int						=       decoder_hidden_size
							SCREAMING_SNAKE_CASE      :							Dict						=       decoder_num_hidden_layers
							SCREAMING_SNAKE_CASE      :							Any						=       decoder_intermediate_size
							SCREAMING_SNAKE_CASE      :							Optional[int]						=       mask_ratio
							SCREAMING_SNAKE_CASE      :							Optional[Any]						=       norm_pix_loss










def      lowerCamelCase_						(				_UpperCamelCase ,				_UpperCamelCase )		->						List[str]:






				"""simple docstring"""


				print('''\nThe shortest path matrix using Floyd Warshall algorithm\n''' )
				for i in range(_UpperCamelCase ):
								for j in range(_UpperCamelCase ):
												if dist[i][j] != float('''inf''' ):
																print(int(dist[i][j] ) ,				end='''\t''' )
												else:
																print('''INF''' ,				end='''\t''' )
								print()






def      lowerCamelCase_						(				_UpperCamelCase ,				_UpperCamelCase )		->						Union[str, Any]:






				"""simple docstring"""


				snake_case_						:    int				=  [[float('''inf''' ) for _ in range(_UpperCamelCase )] for _ in range(_UpperCamelCase )]

				for i in range(_UpperCamelCase ):
								for j in range(_UpperCamelCase ):
												snake_case_						:    Dict				=  graph[i][j]

												# check vertex k against all other vertices (i, j)
				for k in range(_UpperCamelCase ):
								# looping through rows of graph array
								for i in range(_UpperCamelCase ):
												# looping through columns of graph array
												for j in range(_UpperCamelCase ):
																if (
																    dist[i][k] != float('''inf''' )
																    and dist[k][j] != float('''inf''' )
																    and dist[i][k] + dist[k][j] < dist[i][j]
																):
																				snake_case_						:    List[Any]				=  dist[i][k] + dist[k][j]

				_print_dist(_UpperCamelCase ,				_UpperCamelCase )
				return dist, v


if __name__ == "__main__":
	lowerCAmelCase_    =				int(input('''Enter number of vertices: '''))
	lowerCAmelCase_    =				int(input('''Enter number of edges: '''))

	lowerCAmelCase_    =				[[float('''inf''') for i in range(v)] for j in range(v)]

	for i in range(v):
		lowerCAmelCase_    =				0.0

		# src and dst are indices that must be within the array size graph[e][v]
		# failure to follow this will result in an error
	for i in range(e):
		print('''\nEdge ''', i + 1)
		lowerCAmelCase_    =				int(input('''Enter source:'''))
		lowerCAmelCase_    =				int(input('''Enter destination:'''))
		lowerCAmelCase_    =				float(input('''Enter weight:'''))
		lowerCAmelCase_    =				weight

	floyd_warshall(graph, v)

	# Example Input
	# Enter number of vertices: 3
	# Enter number of edges: 2

	# # generated graph from vertex and edge inputs
	# [[inf, inf, inf], [inf, inf, inf], [inf, inf, inf]]
	# [[0.0, inf, inf], [inf, 0.0, inf], [inf, inf, 0.0]]

	# specify source, destination and weight for edge #1
	# Edge  1
	# Enter source:1
	# Enter destination:2
	# Enter weight:2

	# specify source, destination and weight for edge #2
	# Edge  2
	# Enter source:2
	# Enter destination:1
	# Enter weight:1

	# # Expected Output from the vertice, edge and src, dst, weight inputs!!
	# 0		INF	INF
	# INF	0	2
	# INF	1	0
