





import math






def     lowerCamelCase__			(__lowerCamelCase,       __lowerCamelCase = 0,       __lowerCamelCase = 0	):
     _SCREAMING_SNAKE_CASE       :	Tuple						    =							end or len(__lowerCamelCase	)
     for i in range(__lowerCamelCase,       __lowerCamelCase	):
          _SCREAMING_SNAKE_CASE       :	List[str]						    =							i
          _SCREAMING_SNAKE_CASE       :	int						    =							array[i]
          while temp_index != start and temp_index_value < array[temp_index - 1]:
               _SCREAMING_SNAKE_CASE       :	Optional[Any]						    =							array[temp_index - 1]
               temp_index -= 1
          _SCREAMING_SNAKE_CASE       :	List[str]						    =							temp_index_value
     return array






def     lowerCamelCase__			(__lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase	):  # Max Heap
     _SCREAMING_SNAKE_CASE       :	List[Any]						    =							index
     _SCREAMING_SNAKE_CASE       :	List[str]						    =							2 * index + 1  # Left Node
     _SCREAMING_SNAKE_CASE       :	Tuple						    =							2 * index + 2  # Right Node

     if left_index < heap_size and array[largest] < array[left_index]:
          _SCREAMING_SNAKE_CASE       :	Optional[int]						    =							left_index

     if right_index < heap_size and array[largest] < array[right_index]:
          _SCREAMING_SNAKE_CASE       :	Optional[Any]						    =							right_index

     if largest != index:
          _SCREAMING_SNAKE_CASE    ,			_SCREAMING_SNAKE_CASE       :	List[str]						    =							array[largest], array[index]
          heapify(__lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase	)






def     lowerCamelCase__			(__lowerCamelCase	):
     _SCREAMING_SNAKE_CASE       :	List[Any]						    =							len(__lowerCamelCase	)

     for i in range(n // 2,       -1,       -1	):
          heapify(__lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase	)

     for i in range(n - 1,       0,       -1	):
          _SCREAMING_SNAKE_CASE    ,			_SCREAMING_SNAKE_CASE       :	Optional[int]						    =							array[0], array[i]
          heapify(__lowerCamelCase,       0,       __lowerCamelCase	)

     return array






def     lowerCamelCase__			(__lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase	):
     if (array[first_index] > array[middle_index]) != (
         array[first_index] > array[last_index]
     ):
          return array[first_index]
     elif (array[middle_index] > array[first_index]) != (
         array[middle_index] > array[last_index]
     ):
          return array[middle_index]
     else:
          return array[last_index]






def     lowerCamelCase__			(__lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase	):
     _SCREAMING_SNAKE_CASE       :	int						    =							low
     _SCREAMING_SNAKE_CASE       :	int						    =							high
     while True:
          while array[i] < pivot:
               i += 1
          j -= 1
          while pivot < array[j]:
               j -= 1
          if i >= j:
               return i
          _SCREAMING_SNAKE_CASE    ,			_SCREAMING_SNAKE_CASE       :	Tuple						    =							array[j], array[i]
          i += 1






def     lowerCamelCase__			(__lowerCamelCase	):
     if len(__lowerCamelCase	) == 0:
          return array
     _SCREAMING_SNAKE_CASE       :	Dict						    =							2 * math.ceil(math.loga(len(__lowerCamelCase	)	)	)
     _SCREAMING_SNAKE_CASE       :	List[str]						    =							16
     return intro_sort(__lowerCamelCase,       0,       len(__lowerCamelCase	),       __lowerCamelCase,       __lowerCamelCase	)






def     lowerCamelCase__			(__lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase	):
     while end - start > size_threshold:
          if max_depth == 0:
               return heap_sort(__lowerCamelCase	)
          max_depth -= 1
          _SCREAMING_SNAKE_CASE       :	List[Any]						    =							median_of_a(__lowerCamelCase,       __lowerCamelCase,       start + ((end - start) // 2) + 1,       end - 1	)
          _SCREAMING_SNAKE_CASE       :	Optional[Any]						    =							partition(__lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase	)
          intro_sort(__lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase	)
          _SCREAMING_SNAKE_CASE       :	List[str]						    =							p
     return insertion_sort(__lowerCamelCase,       __lowerCamelCase,       __lowerCamelCase	)


if __name__ == "__main__":
       import doctest

       doctest.testmod()

       UpperCamelCase__      =input('Enter numbers separated by a comma : ').strip()
       UpperCamelCase__      =[float(item) for item in user_input.split(',')]
       print(sort(unsorted))






def     lowerCamelCase__			(__lowerCamelCase,       __lowerCamelCase	):
     if a < 0 or b < 0:
          raise ValueError("the value of both inputs must be positive"	)
     _SCREAMING_SNAKE_CASE       :	Optional[Any]						    =							str(bin(__lowerCamelCase	)	)[2:]  # remove the leading "0b"
     _SCREAMING_SNAKE_CASE       :	List[str]						    =							str(bin(__lowerCamelCase	)	)[2:]
     _SCREAMING_SNAKE_CASE       :	Optional[Any]						    =							max(len(__lowerCamelCase	),       len(__lowerCamelCase	)	)
     return "0b" + "".join(
         str(int("1" in (char_a, char_b)	)	)
         for char_a, char_b in zip(a_binary.zfill(__lowerCamelCase	),       b_binary.zfill(__lowerCamelCase	)	)	)


if __name__ == "__main__":
       import doctest

       doctest.testmod()