


'''simple docstring'''
def 			a_							(  UpperCamelCase_   ):
							# base case
							if len(lowercase__   ) == 1:
														return a[0], a[0]
							else:
														# split A into half.
														A_ 						=		a[: len(lowercase__   ) // 2]
														A_ 						=		a[len(lowercase__   ) // 2 :]

														# 2 sub problems, 1/2 of original size.
														A_						,				A_ 						=		max_difference(lowercase__   )
														A_						,				A_ 						=		max_difference(lowercase__   )

														# get min of first and max of second
														# linear time
														A_ 						=		min(lowercase__   )
														A_ 						=		max(lowercase__   )

														# 3 cases, either (small1, big1),
														# (min_first, max_second), (small2, big2)
														# constant comparisons
														if biga - smalla > max_second - min_first and biga - smalla > biga - smalla:
																					return smalla, biga
														elif biga - smalla > max_second - min_first:
																					return smalla, biga
														else:
																					return min_first, max_second


if __name__ == "__main__":
							import doctest

							doctest.testmod()









'''simple docstring'''
def 			a_							(  UpperCamelCase_   ):
							if not isinstance(UpperCamelCase_	,     UpperCamelCase_   ):
														A_ 						=		f"Input value of [number={number}] must be an integer"
														raise TypeError(UpperCamelCase_   )
							if number < 0 or number % 2 == 1:
														return False
							A_ 						=		int(number**0.5   )
							return number == number_sqrt * (number_sqrt + 1)


if __name__ == "__main__":
							import doctest

							doctest.testmod()





