



'''simple docstring'''






import unittest
from timeit import timeit


def 			snake_case_					( _lowerCAmelCase  :						int       ,				_lowerCAmelCase  :						int  )				->       int:
							UpperCAmelCase			:	Any										=		first_num if first_num >= second_num else second_num
							UpperCAmelCase			:	List[Any]										=		max_num
							while (common_mult % first_num > 0) or (common_mult % second_num > 0):
														common_mult += max_num
							return common_mult


def 			snake_case_					( _lowerCAmelCase  :						int       ,				_lowerCAmelCase  :						int  )				->       int:
							return b if a == 0 else greatest_common_divisor(b % a       ,				_lowerCAmelCase  )


def 			snake_case_					( _lowerCAmelCase  :						int       ,				_lowerCAmelCase  :						int  )				->       int:
							return first_num // greatest_common_divisor(_lowerCAmelCase       ,				_lowerCAmelCase  ) * second_num


def 			snake_case_					( )				->       List[str]:
							UpperCAmelCase			:	int										=		(
							    '''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"""






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







	def 					A     (						self      :					int		)      ->		Any:
								for i, (first_num, second_num) in enumerate(self.test_inputs		):
															UpperCAmelCase			:	str										=		least_common_multiple_slow(__snake_case		,      __snake_case		)
															UpperCAmelCase			:	Any										=		least_common_multiple_fast(__snake_case		,      __snake_case		)
															with self.subTest(i=__snake_case		):
																						self.assertEqual(__snake_case		,      self.expected_results[i]		)
																						self.assertEqual(__snake_case		,      self.expected_results[i]		)


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










'''simple docstring'''






UpperCamelCase__:       str							     =      [0.485, 0.456, 0.406]
UpperCamelCase__:       List[str]							     =      [0.229, 0.224, 0.225]
UpperCamelCase__:       List[str]							     =      [0.5, 0.5, 0.5]
UpperCamelCase__:       Optional[Any]							     =      [0.5, 0.5, 0.5]
UpperCamelCase__:       List[str]							     =      [0.48145466, 0.4578275, 0.40821073]
UpperCamelCase__:       List[str]							     =      [0.26862954, 0.26130258, 0.27577711]





