



'''simple docstring'''



from __future__ import annotations



def 	__lowerCAmelCase       (				lowerCamelCase :    int					,		lowerCamelCase :    int					,		lowerCamelCase :    int       ):






	'''simple docstring'''




	assert n > 1 and a > 0 and greatest_common_divisor(__a					,		__a       ) == 1
	((__lowerCAmelCase)				,							(__lowerCAmelCase)				,							(__lowerCAmelCase))       				=	extended_gcd(__a					,		__a       )  # Implemented below
	__lowerCAmelCase       				=	(b * s) % n
	return x



def 	__lowerCAmelCase       (				lowerCamelCase :    int					,		lowerCamelCase :    int       ):






	'''simple docstring'''




	((__lowerCAmelCase)				,							(__lowerCAmelCase))       				=	extended_euclid(__a					,		__a       )  # Implemented below
	if b < 0:
		__lowerCAmelCase       				=	(b % n + n) % n
	return b



def 	__lowerCAmelCase       (				lowerCamelCase :    int					,		lowerCamelCase :    int					,		lowerCamelCase :    int       ):






	'''simple docstring'''




	__lowerCAmelCase       				=	invert_modulo(__a					,		__a       )
	__lowerCAmelCase       				=	(b * s) % n
	return x



def 	__lowerCAmelCase       (				lowerCamelCase :    int					,		lowerCamelCase :    int       ):






	'''simple docstring'''




	assert a >= 0 and b >= 0

	if b == 0:
		__lowerCAmelCase				,							__lowerCAmelCase				,							__lowerCAmelCase       				=	a, 1, 0
	else:
		((__lowerCAmelCase)				,							(__lowerCAmelCase)				,							(__lowerCAmelCase))       				=	extended_gcd(__a					,		a % b       )
		__lowerCAmelCase       				=	q
		__lowerCAmelCase       				=	p - q * (a // b)

	assert a % d == 0 and b % d == 0
	assert d == a * x + b * y

	return (d, x, y)



def 	__lowerCAmelCase       (				lowerCamelCase :    int					,		lowerCamelCase :    int       ):






	'''simple docstring'''




	if b == 0:
		return (1, 0)
	((__lowerCAmelCase)				,							(__lowerCAmelCase))       				=	extended_euclid(__a					,		a % b       )
	__lowerCAmelCase       				=	a // b
	return (y, x - k * y)



def 	__lowerCAmelCase       (				lowerCamelCase :    int					,		lowerCamelCase :    int       ):






	'''simple docstring'''




	if a < b:
		__lowerCAmelCase				,							__lowerCAmelCase       				=	b, a

	while a % b != 0:
		__lowerCAmelCase				,							__lowerCAmelCase       				=	b, a % b

	return b


if __name__ == "__main__":
	from doctest import testmod

	testmod(name='''modular_division''', verbose=True)
	testmod(name='''modular_division2''', verbose=True)
	testmod(name='''invert_modulo''', verbose=True)
	testmod(name='''extended_gcd''', verbose=True)
	testmod(name='''extended_euclid''', verbose=True)
	testmod(name='''greatest_common_divisor''', verbose=True)




from __future__ import annotations

def       A_   (						__a  :					int		):

				"""simple docstring"""
				a__					   =		{1}
				a__					   =		[1]
				for _ in range(2			,		depth + 1		):
								a__					   =		[*previous_coefficients, 0]
								a__					   =		[0, *previous_coefficients]
								a__					   =		[]
								for x, y in zip(__a			,		__a		):
												coefficients.add(x + y		)
												previous_coefficients.append(x + y		)
				return coefficients

def       A_   (						__a  :					set[int]		):

				"""simple docstring"""
				a__					   =		set()
				for number in unique_coefficients:
								a__					   =		2
								a__					   =		number
								while divisor**2 <= copy_number:
												a__					   =		0
												while copy_number % divisor == 0:
																copy_number //= divisor
																multiplicity += 1
												if multiplicity >= 2:
																non_squarefrees.add(__a		)
																break
												divisor += 1

				return unique_coefficients.difference(__a		)

def       A_   (						__a  :					int = 51		):

				"""simple docstring"""
				a__					   =		get_pascal_triangle_unique_coefficients(__a		)
				a__					   =		get_squarefrees(__a		)
				return sum(__a		)


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

