
'''simple docstring'''
from ...configuration_utils import PretrainedConfig
from ...utils import logging


_SCREAMING_SNAKE_CASE =	logging.get_logger(__name__)

_SCREAMING_SNAKE_CASE =	{
    # pcqm4mv1 now deprecated
    "graphormer-base": "https://huggingface.co/clefourrier/graphormer-base-pcqm4mv2/resolve/main/config.json",
    # See all Graphormer models at https://huggingface.co/models?filter=graphormer
}
class      __UpperCAmelCase							(    lowerCAmelCase__							):



					'''simple docstring'''





					_UpperCamelCase  	=		"""graphormer"""
					_UpperCamelCase  	=		["""past_key_values"""]



					def __init__(  self    :	Optional[int]			,					_lowercase    :	Optional[Any] = 1			,					_lowercase    :	Tuple = 512 * 9			,					_lowercase    :	Tuple = 512 * 3			,					_lowercase    :	Tuple = 512			,					_lowercase    :	int = 512			,					_lowercase    :	Dict = 512			,					_lowercase    :	int = 128			,					_lowercase    :	int = 5			,					_lowercase    :	Tuple = 1_024			,					_lowercase    :	Any = "multi_hop"			,					_lowercase    :	Any = 512			,					_lowercase    :	Any = False			,					_lowercase    :	Optional[Any] = 12			,					_lowercase    :	Optional[Any] = 768			,					_lowercase    :	Union[str, Any] = 768			,					_lowercase    :	Union[str, Any] = 32			,					_lowercase    :	str = 0.1			,					_lowercase    :	List[str] = 0.1			,					_lowercase    :	Optional[Any] = 0.0			,					_lowercase    :	Optional[int] = False			,					_lowercase    :	str = False			,					_lowercase    :	Any = False			,					_lowercase    :	Any = "gelu"			,					_lowercase    :	List[str] = None			,					_lowercase    :	Dict = False			,					_lowercase    :	List[str] = 0			,					_lowercase    :	Any = False			,					_lowercase    :	int = 0.0			,					_lowercase    :	str = 8			,					_lowercase    :	Any = None			,					_lowercase    :	Optional[int] = None			,					_lowercase    :	Optional[Any] = True			,					_lowercase    :	List[Any] = True			,					_lowercase    :	Any=0			,					_lowercase    :	int=1			,					_lowercase    :	int=2			,					**_lowercase    :	int			,					)						->       Any:
								A_       		=   num_classes
								A_       		=   num_atoms
								A_       		=   num_in_degree
								A_       		=   num_out_degree
								A_       		=   num_edges
								A_       		=   num_spatial
								A_       		=   num_edge_dis
								A_       		=   edge_type
								A_       		=   multi_hop_max_dist
								A_       		=   spatial_pos_max
								A_       		=   max_nodes
								A_       		=   num_hidden_layers
								A_       		=   embedding_dim
								A_       		=   embedding_dim
								A_       		=   ffn_embedding_dim
								A_       		=   num_attention_heads
								A_       		=   dropout
								A_       		=   attention_dropout
								A_       		=   layerdrop
								A_       		=   encoder_normalize_before
								A_       		=   pre_layernorm
								A_       		=   apply_graphormer_init
								A_       		=   activation_fn
								A_       		=   embed_scale
								A_       		=   freeze_embeddings
								A_       		=   num_trans_layers_to_freeze
								A_       		=   share_input_output_embed
								A_       		=   traceable
								A_       		=   q_noise
								A_       		=   qn_block_size

								# These parameters are here for future extensions
								# atm, the model only supports self attention
								A_       		=   kdim
								A_       		=   vdim
								A_       		=   self_attention
								A_       		=   bias

								super().__init__(
								    pad_token_id=_lowerCamelCase			,					bos_token_id=_lowerCamelCase			,					eos_token_id=_lowerCamelCase			,					**_lowerCamelCase			,					)










'''simple docstring'''
from __future__ import annotations

import sys





def  lowerCamelCase(       SCREAMING_SNAKE_CASE_					,SCREAMING_SNAKE_CASE_    )		->		tuple[int, int]:
			# base cases
			if abs(SCREAMING_SNAKE_CASE_    ) == 1:
						return a, 0
			elif abs(SCREAMING_SNAKE_CASE_    ) == 1:
						return 0, b

			A_		,   A_       		=   a, b
			A_		,   A_       		=   1, 0
			A_		,   A_       		=   0, 1

			while remainder != 0:
						A_       		=   old_remainder // remainder
						A_		,   A_       		=   remainder, old_remainder - quotient * remainder
						A_		,   A_       		=   coeff_a, old_coeff_a - quotient * coeff_a
						A_		,   A_       		=   coeff_b, old_coeff_b - quotient * coeff_b

			# sign correction for negative numbers
			if a < 0:
						A_       		=   -old_coeff_a
			if b < 0:
						A_       		=   -old_coeff_b

			return old_coeff_a, old_coeff_b





def  lowerCamelCase(       )		->		Tuple:
			if len(sys.argv    ) < 3:
						print('2 integer arguments required'    )
						return 1
			A_       		=   int(sys.argv[1]    )
			A_       		=   int(sys.argv[2]    )
			print(extended_euclidean_algorithm(SCREAMING_SNAKE_CASE_					,SCREAMING_SNAKE_CASE_    )    )
			return 0


if __name__ == "__main__":
							raise SystemExit(main())




