
from math import sqrt



def      __UpperCAmelCase    (  snake_case_							:		int				):



	'''simple docstring'''



	UpperCAmelCase:					Any 						=     [1]
	for i in range(2				,					int(sqrt(snake_case_				)				) + 1				,					1				):
		if number % i == 0:
			values.append(snake_case_				)
			if int(number // i				) != i:
				values.append(int(number // i				)				)
	return sorted(snake_case_				)



def      __UpperCAmelCase    (  snake_case_							:		int				):



	'''simple docstring'''



	return sum(factors(snake_case_				)				) > n



def      __UpperCAmelCase    (  snake_case_							:		int				):



	'''simple docstring'''



	UpperCAmelCase:					Optional[Any] 						=     factors(snake_case_				)
	UpperCAmelCase:					Optional[int] 						=     len(snake_case_				)
	UpperCAmelCase:					str 						=     [[0 for i in range(number + 1				)] for j in range(r + 1				)]
	for i in range(r + 1				):
		UpperCAmelCase:					List[Any] 						=     True

	for i in range(1				,					number + 1				):
		UpperCAmelCase:					List[str] 						=     False

	for i in range(1				,					r + 1				):
		for j in range(1				,					number + 1				):
			if j < values[i - 1]:
				UpperCAmelCase:					Tuple 						=     subset[i - 1][j]
			else:
				UpperCAmelCase:					Dict 						=     subset[i - 1][j] or subset[i - 1][j - values[i - 1]]

	return subset[r][number] != 0



def      __UpperCAmelCase    (  snake_case_							:		int				):



	'''simple docstring'''



	return abundant(snake_case_				) and not semi_perfect(snake_case_				)


if __name__ == "__main__":
	import doctest

	doctest.testmod(verbose=True)
	for number in (6_9, 7_0, 7_1):
		print(f"""{number} is {'' if weird(number) else 'not '}weird.""")


def      __UpperCAmelCase    (  snake_case_							:		str				):



	'''simple docstring'''



	UpperCAmelCase:					Tuple 						=     str(snake_case_				).strip()
	if not bin_string:
		raise ValueError("Empty string was passed to the function"				)
	UpperCAmelCase:					List[Any] 						=     bin_string[0] == "-"
	if is_negative:
		UpperCAmelCase:					Optional[int] 						=     bin_string[1:]
	if not all(char in "01" for char in bin_string				):
		raise ValueError("Non-binary value was passed to the function"				)
	UpperCAmelCase:					List[str] 						=     0
	for char in bin_string:
		UpperCAmelCase:					Union[str, Any] 						=     2 * decimal_number + int(snake_case_				)
	return -decimal_number if is_negative else decimal_number


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

	testmod()
