






"""simple docstring"""







import unittest
from timeit import timeit





def 							SCREAMING_SNAKE_CASE							(   lowerCamelCase_			,  lowerCamelCase_):
					a__ 							=	first_num if first_num >= second_num else second_num
					a__ 							=	max_num
					while (common_mult % first_num > 0) or (common_mult % second_num > 0):
										common_mult += max_num
					return common_mult





def 							SCREAMING_SNAKE_CASE							(   lowerCamelCase_			,  lowerCamelCase_):
					return b if a == 0 else greatest_common_divisor(b % a			,  lowerCamelCase_)





def 							SCREAMING_SNAKE_CASE							(   lowerCamelCase_			,  lowerCamelCase_):
					return first_num // greatest_common_divisor(lowerCamelCase_			,  lowerCamelCase_) * second_num





def 							SCREAMING_SNAKE_CASE							(   ):
					a__ 							=	(
					    '''from __main__ import least_common_multiple_slow, least_common_multiple_fast'''
					)
					print(
					    '''least_common_multiple_slow():'''			,  timeit('''least_common_multiple_slow(1000, 999)'''			,  setup=lowerCamelCase_)			,  )
					print(
					    '''least_common_multiple_fast():'''			,  timeit('''least_common_multiple_fast(1000, 999)'''			,  setup=lowerCamelCase_)			,  )







class 							_SCREAMING_SNAKE_CASE    (	unittest.TestCase				):





							"""simple docstring"""





							_SCREAMING_SNAKE_CASE     =(
							    (10, 20),
							    (13, 15),
							    (4, 31),
							    (10, 42),
							    (43, 34),
							    (5, 12),
							    (12, 25),
							    (10, 25),
							    (6, 9),
							)
							_SCREAMING_SNAKE_CASE     =(20, 195, 124, 210, 1_462, 60, 300, 50, 18)




							def 			lowercase		( self:  List[str]     ):

												'''simple docstring'''

												for i, (first_num, second_num) in enumerate(self.test_inputs     ):
																	a__ 							=	least_common_multiple_slow(__A					,		__A     )
																	a__ 							=	least_common_multiple_fast(__A					,		__A     )
																	with self.subTest(i=__A     ):
																						self.assertEqual(__A					,		self.expected_results[i]     )
																						self.assertEqual(__A					,		self.expected_results[i]     )


if __name__ == "__main__":
	benchmark()
	unittest.main()










"""simple docstring"""







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


__a							:						Union[str, Any]   							=			logging.get_logger(__name__)

__a							:						Optional[Any]   							=			{
    'tau/splinter-base': 'https://huggingface.co/tau/splinter-base/resolve/main/config.json',
    'tau/splinter-base-qass': 'https://huggingface.co/tau/splinter-base-qass/resolve/main/config.json',
    'tau/splinter-large': 'https://huggingface.co/tau/splinter-large/resolve/main/config.json',
    'tau/splinter-large-qass': 'https://huggingface.co/tau/splinter-large-qass/resolve/main/config.json',
    # See all Splinter models at https://huggingface.co/models?filter=splinter
}







class 							_SCREAMING_SNAKE_CASE    (	__snake_case				):





							"""simple docstring"""





							_SCREAMING_SNAKE_CASE     ='splinter'




							def __init__( self:  Dict					,		__A:  List[Any]=30522					,		__A:  str=768					,		__A:  int=12					,		__A:  str=12					,		__A:  Tuple=3072					,		__A:  Dict="gelu"					,		__A:  Optional[int]=0.1					,		__A:  List[str]=0.1					,		__A:  str=512					,		__A:  List[Any]=2					,		__A:  Any=0.0_2					,		__A:  Any=1e-12					,		__A:  Tuple=True					,		__A:  List[Any]=0					,		__A:  List[str]=104					,		**__A:  Union[str, Any]					,		):

												'''simple docstring'''

												super().__init__(pad_token_id=__A					,		**__A     )

												a__ 							=	vocab_size
												a__ 							=	max_position_embeddings
												a__ 							=	hidden_size
												a__ 							=	num_hidden_layers
												a__ 							=	num_attention_heads
												a__ 							=	intermediate_size
												a__ 							=	hidden_act
												a__ 							=	hidden_dropout_prob
												a__ 							=	attention_probs_dropout_prob
												a__ 							=	initializer_range
												a__ 							=	type_vocab_size
												a__ 							=	layer_norm_eps
												a__ 							=	use_cache
												a__ 							=	question_token_id


