
"""simple docstring"""




class 		a__						:
   def __init__(			self	,    _a				):
          lowercase    :				Tuple       		=							size
          lowercase    :				str       		=							[0] * size
          lowercase    :				Any       		=							[0] * size
   @staticmethod
   def 			__magic_name__			(			_a				):
          return index | (index + 1)
   @staticmethod
   def 			__magic_name__			(			_a				):
          return (index & (index + 1)) - 1
   def 			__magic_name__			(			self	,    _a	,    _a				):
          lowercase    :				Optional[int]       		=							value
          while index < self.size:
                 lowercase    :				List[Any]       		=							self.get_prev(_a				) + 1
                 if current_left_border == index:
                        lowercase    :				Union[str, Any]       		=							value
                 else:
                        lowercase    :				Any       		=							max(_a	,    _a	,    _a				)
                 lowercase    :				Optional[Any]       		=							self.get_next(_a				)

   def 			__magic_name__			(			self	,    _a	,    _a				):
          right -= 1  # Because of right is exclusive
          lowercase    :				str       		=							0
          while left <= right:
                 lowercase    :				Optional[int]       		=							self.get_prev(_a				)
                 if left <= current_left:
                        lowercase    :				Union[str, Any]       		=							max(_a	,    self.tree[right]				)
                        lowercase    :				Optional[Any]       		=							current_left
                 else:
                        lowercase    :				List[str]       		=							max(_a	,    self.arr[right]				)
                        right -= 1
          return result


if __name__ == "__main__":
   import doctest

   doctest.testmod()




"""simple docstring"""




from __future__ import annotations


def   __magic_name__	(      __snake_case				:       list[int]  ) ->				list[int]:
       if len(__snake_case  ) == 0:
              return array

       lowercase		,    lowercase    :				Tuple       		=							min(__snake_case  ), max(__snake_case  )

       # Compute the variables
       lowercase    :				Optional[Any]       		=							_max - _min + 1
       lowercase		,    lowercase    :				List[str]       		=							[0] * holes_range, [0] * holes_range

       # Make the sorting.
       for i in array:
              lowercase    :				Tuple       		=							i - _min
              lowercase    :				str       		=							i
              holes_repeat[index] += 1

       # Makes the array back by replacing the numbers.
       lowercase    :				Union[str, Any]       		=							0
       for i in range(__snake_case  ):
              while holes_repeat[i] > 0:
                     lowercase    :				Tuple       		=							holes[i]
                     index += 1
                     holes_repeat[i] -= 1

    # Returns the sorted array.
       return array


if __name__ == "__main__":
   import doctest

   doctest.testmod()
   _A			:       str   		=       input("""Enter numbers separated by comma:\n""")
   _A			:       Optional[Any]   		=       [int(x) for x in user_input.split(""",""")]
   print(pigeon_sort(unsorted))


