






def _UpperCAmelCase (						a    :						int	,       a    :						int			):





							while a != 0:
														snake_case__	,			snake_case__							=							b % a, a
							return b



def _UpperCAmelCase (						a    :						int	,       a    :						int			):





							if gcd(a__	,       a__			) != 1:
														snake_case__							=							F'''mod inverse of {a!r} and {m!r} does not exist'''
														raise ValueError(a__			)
							snake_case__	,			snake_case__	,			snake_case__							=							1, 0, a
							snake_case__	,			snake_case__	,			snake_case__							=							0, 1, m
							while va != 0:
														snake_case__							=							ua // va
														snake_case__	,			snake_case__	,			snake_case__	,			snake_case__	,			snake_case__	,			snake_case__							=							(ua - q * va), (ua - q * va), (ua - q * va), va, va, va
							return ua % m




def 			lowerCAmelCase__					(     a__:						int     ,    a__:						int			)    ->						int:


							'''simple docstring'''





							return x if y == 0 else greatest_common_divisor(a__     ,    x % y			)

def 			lowerCAmelCase__					(     a__:						int     ,    a__:						int			)    ->						int:


							'''simple docstring'''





							return (x * y) // greatest_common_divisor(a__     ,    a__			)

def 			lowerCAmelCase__					(     a__:						int = 2_0			)    ->						int:


							'''simple docstring'''





							_UpperCAmelCase											=     1
							for i in range(1     ,    n + 1			):
														_UpperCAmelCase											=     lcm(a__     ,    a__			)
							return g


if __name__ == "__main__":
		print(f'''{solution() = }''')
