



def 			__lowercase     (				a__     )       ->				tuple[int, int]:
							# base case
							if len(a__     ) == 1:
														return a[0], a[0]
							else:
														# split A into half.
														__SCREAMING_SNAKE_CASE								=      a[: len(a__     ) // 2]
														__SCREAMING_SNAKE_CASE								=      a[len(a__     ) // 2 :]

														# 2 sub problems, 1/2 of original size.
														__SCREAMING_SNAKE_CASE							, __SCREAMING_SNAKE_CASE								=      max_difference(a__     )
														__SCREAMING_SNAKE_CASE							, __SCREAMING_SNAKE_CASE								=      max_difference(a__     )

														# get min of first and max of second
														# linear time
														__SCREAMING_SNAKE_CASE								=      min(a__     )
														__SCREAMING_SNAKE_CASE								=      max(a__     )

														# 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()











def 			__lowercase     (				a__     )       ->				int:
							return int(a__     ) if x - int(a__     ) <= 0 else int(a__     ) + 1


if __name__ == "__main__":
			import doctest

			doctest.testmod()






