


from __future__ import annotations


def      a	(							SCREAMING_SNAKE_CASE_      :		int = 4       ):






       """simple docstring"""





       UpperCamelCase    :	Optional[Any]   	=		abs(SCREAMING_SNAKE_CASE_       ) or 4
       return [[1 + x + y * row_size for x in range(SCREAMING_SNAKE_CASE_       )] for y in range(SCREAMING_SNAKE_CASE_       )]


def      a	(							SCREAMING_SNAKE_CASE_      :		list[list[int]]       ):






       """simple docstring"""





       return reverse_row(transpose(SCREAMING_SNAKE_CASE_       )       )
       # OR.. transpose(reverse_column(matrix))


def      a	(							SCREAMING_SNAKE_CASE_      :		list[list[int]]       ):






       """simple docstring"""





       return reverse_row(reverse_column(SCREAMING_SNAKE_CASE_       )       )
       # OR.. reverse_column(reverse_row(matrix))


def      a	(							SCREAMING_SNAKE_CASE_      :		list[list[int]]       ):






       """simple docstring"""





       return reverse_column(transpose(SCREAMING_SNAKE_CASE_       )       )
       # OR.. transpose(reverse_row(matrix))


def      a	(							SCREAMING_SNAKE_CASE_      :		list[list[int]]       ):






       """simple docstring"""





       UpperCamelCase    :	Tuple   	=		[list(SCREAMING_SNAKE_CASE_       ) for x in zip(*SCREAMING_SNAKE_CASE_       )]
       return matrix


def      a	(							SCREAMING_SNAKE_CASE_      :		list[list[int]]       ):






       """simple docstring"""





       UpperCamelCase    :	Optional[Any]   	=		matrix[::-1]
       return matrix


def      a	(							SCREAMING_SNAKE_CASE_      :		list[list[int]]       ):






       """simple docstring"""





       UpperCamelCase    :	Dict   	=		[x[::-1] for x in matrix]
       return matrix


def      a	(							SCREAMING_SNAKE_CASE_      :		list[list[int]]       ):






       """simple docstring"""





       for i in matrix:
              print(*SCREAMING_SNAKE_CASE_       )


if __name__ == "__main__":
  __UpperCAmelCase : int 			=				make_matrix()
  print("\norigin:\n")
  print_matrix(matrix)
  print("\nrotate 90 counterclockwise:\n")
  print_matrix(rotate_aa(matrix))

  __UpperCAmelCase : List[str] 			=				make_matrix()
  print("\norigin:\n")
  print_matrix(matrix)
  print("\nrotate 180:\n")
  print_matrix(rotate_aaa(matrix))

  __UpperCAmelCase : Tuple 			=				make_matrix()
  print("\norigin:\n")
  print_matrix(matrix)
  print("\nrotate 270 counterclockwise:\n")
  print_matrix(rotate_aaa(matrix))





from __future__ import annotations


def      a	(							SCREAMING_SNAKE_CASE_      :		list[int]       ):






       """simple docstring"""





       if len(SCREAMING_SNAKE_CASE_       ) == 0:
              return array

       UpperCamelCase	, UpperCamelCase    :	Union[str, Any]   	=		min(SCREAMING_SNAKE_CASE_       ), max(SCREAMING_SNAKE_CASE_       )

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

       # Make the sorting.
       for i in array:
              UpperCamelCase    :	Optional[int]   	=		i - _min
              UpperCamelCase    :	Any   	=		i
              holes_repeat[index] += 1

       # Makes the array back by replacing the numbers.
       UpperCamelCase    :	str   	=		0
       for i in range(SCREAMING_SNAKE_CASE_       ):
              while holes_repeat[i] > 0:
                     UpperCamelCase    :	List[Any]   	=		holes[i]
                     index += 1
                     holes_repeat[i] -= 1

    # Returns the sorted array.
       return array


if __name__ == "__main__":
  import doctest

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

