





import math






def lowerCamelCase__    (							snake_case_	:  int       )      ->				bool:
   assert isinstance(snake_case_       ,      snake_case_       ) and (
       number >= 0
   ), "'number' must been an int and positive"

   if 1 < number < 4:
      # 2 and 3 are primes
      return True
   elif number < 2 or not number % 2:
      # Negatives, 0, 1 and all even numbers are not primes
      return False

   __snake_case							       =   range(3       ,      int(math.sqrt(snake_case_       ) + 1       )       ,      2       )
   return not any(not number % i for i in odd_numbers       )







def lowerCamelCase__    (							snake_case_	:  Optional[Any]       ,      snake_case_	:  Dict=1       ,      **snake_case_	:  List[Any]       )      ->				str:
   __snake_case							       =   factor * value
   __snake_case							       =   value

   while not is_prime(snake_case_       ):
      value += 1 if not ("desc" in kwargs and kwargs["desc"] is True) else -1

   if value == first_value_val:
      return next_prime(value + 1       ,      **snake_case_       )
   return value





'''simple docstring'''




from __future__ import annotations

from bisect import bisect_left
from functools import total_ordering
from heapq import merge

@total_ordering
class 		UpperCAmelCase_      (  __lowercase		):





     def __lt__( self       :      Optional[int]    ,      UpperCAmelCase__       :      List[str]    )				->  List[Any]:
        return self[-1] < other[-1]





     def __eq__( self       :      str    ,      UpperCAmelCase__       :      List[str]    )				->  Tuple:
        return self[-1] == other[-1]





def 	a_					( lowerCamelCase	:     list				):
   lowerCAmelCase     =			[]
   # sort into stacks
   for element in collection:
      lowerCAmelCase     =			Stack([element]				)
      lowerCAmelCase     =			bisect_left(lowerCamelCase	, lowerCamelCase				)
      if i != len(lowerCamelCase				):
         stacks[i].append(lowerCamelCase				)
      else:
         stacks.append(lowerCamelCase				)

    # use a heap-based merge to merge stack efficiently
   lowerCAmelCase     =			merge(*(reversed(lowerCamelCase				) for stack in stacks)				)
   return collection


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





