



def 				A				(					_lowerCamelCase  ):





							'''simple docstring'''




							_lowerCAmelCase     :							Tuple    =    abs(_lowerCamelCase  )
							_lowerCAmelCase     :							Optional[int]    =    0
							while n > 0:
														res += n % 10
														n //= 10
							return res






def 				A				(					_lowerCamelCase  ):





							'''simple docstring'''




							_lowerCAmelCase     :							Optional[Any]    =    abs(_lowerCamelCase  )
							return n if n < 10 else n % 10 + sum_of_digits(n // 10  )






def 				A				(					_lowerCamelCase  ):





							'''simple docstring'''




							return sum(int(_lowerCamelCase  ) for c in str(abs(_lowerCamelCase  )  )  )






def 				A				(					):





							'''simple docstring'''




							from collections.abc import Callable
							from timeit import timeit

							def benchmark_a_function(_lowerCamelCase				, _lowerCamelCase  ) -> None:
														_lowerCAmelCase     :							Optional[Any]    =    F"{func.__name__}({value})"
														_lowerCAmelCase     :							str    =    timeit(F"__main__.{call}"				, setup="import __main__"  )
														print(F"{call:56} = {func(_lowerCamelCase  )} -- {timing:.4f} seconds"  )

							for value in (262_144, 1_125_899_906_842_624, 1_267_650_600_228_229_401_496_703_205_376):
														for func in (sum_of_digits, sum_of_digits_recursion, sum_of_digits_compact):
																					benchmark_a_function(_lowerCamelCase				, _lowerCamelCase  )
														print()


if __name__ == "__main__":
						import doctest

						doctest.testmod()
						benchmark()

def       _snake_case	(   lowerCAmelCase							:   list	):
		"""simple docstring"""







		SCREAMING_SNAKE_CASE_  :		Dict				      =    len(lowerCAmelCase	)
		for i in range(1   , lowerCAmelCase	):
				SCREAMING_SNAKE_CASE_  :		int				      =    collection[i]
				SCREAMING_SNAKE_CASE_  :		Any				      =    0
				SCREAMING_SNAKE_CASE_  :		Tuple				      =    i - 1

				while low <= high:
						SCREAMING_SNAKE_CASE_  :		int				      =    (low + high) // 2
						if val < collection[mid]:
								SCREAMING_SNAKE_CASE_  :		Optional[Any]				      =    mid - 1
						else:
								SCREAMING_SNAKE_CASE_  :		Tuple				      =    mid + 1
				for j in range(lowerCAmelCase   , lowerCAmelCase   , -1	):
						SCREAMING_SNAKE_CASE_  :		Union[str, Any]				      =    collection[j - 1]
				SCREAMING_SNAKE_CASE_  :		int				      =    val
		return collection


if __name__ == "__main__":
		__lowerCamelCase					:	Dict       =  input('''Enter numbers separated by a comma:\n''').strip()
		__lowerCamelCase					:	List[str]       =  [int(item) for item in user_input.split(''',''')]
		print(binary_insertion_sort(unsorted))
