


def 							__lowerCamelCase		(					UpperCAmelCase_		:						list		):




      """simple docstring"""





      a		:Any									=			len(UpperCAmelCase_		)
      for i in range(1					,    UpperCAmelCase_		):
            a		:Dict									=			collection[i]
            a		:List[Any]									=			0
            a		:List[str]									=			i - 1

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


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









def 							__lowerCamelCase		(					UpperCAmelCase_		:						int					,    UpperCAmelCase_		:						int		):




      """simple docstring"""





      while b:
            a				,							a		:int									=			b, a % b
      return a
def 							__lowerCamelCase		(					UpperCAmelCase_		:						int					,    UpperCAmelCase_		:						int		):




      """simple docstring"""





      return a if b == 0 else euclidean_gcd_recursive(UpperCAmelCase_					,    a % b		)
def 							__lowerCamelCase		(					):




      """simple docstring"""





      print(F'''euclidean_gcd(3, 5) = {euclidean_gcd(3					,    5		)}'''		)
      print(F'''euclidean_gcd(5, 3) = {euclidean_gcd(5					,    3		)}'''		)
      print(F'''euclidean_gcd(1, 3) = {euclidean_gcd(1					,    3		)}'''		)
      print(F'''euclidean_gcd(3, 6) = {euclidean_gcd(3					,    6		)}'''		)
      print(F'''euclidean_gcd(6, 3) = {euclidean_gcd(6					,    3		)}'''		)

      print(F'''euclidean_gcd_recursive(3, 5) = {euclidean_gcd_recursive(3					,    5		)}'''		)
      print(F'''euclidean_gcd_recursive(5, 3) = {euclidean_gcd_recursive(5					,    3		)}'''		)
      print(F'''euclidean_gcd_recursive(1, 3) = {euclidean_gcd_recursive(1					,    3		)}'''		)
      print(F'''euclidean_gcd_recursive(3, 6) = {euclidean_gcd_recursive(3					,    6		)}'''		)
      print(F'''euclidean_gcd_recursive(6, 3) = {euclidean_gcd_recursive(6					,    3		)}'''		)


if __name__ == "__main__":
     main()





