



'''simple docstring'''





def 			a_	(				_lowerCAmelCase			) -> list:

  def merge(_lowerCAmelCase			,_lowerCAmelCase			) -> list:

    def _merge():
      while left and right:
        yield (left if left[0] <= right[0] else right).pop(0			)
      yield from left
      yield from right

    return list(_merge()			)

  if len(_lowerCAmelCase			) <= 1:
    return collection
  __lowerCamelCase			:			Union[str, Any]       			=					len(_lowerCAmelCase			) // 2
  return merge(merge_sort(collection[:mid]			)			,merge_sort(collection[mid:]			)			)


if __name__ == "__main__":
   import doctest

   doctest.testmod()
   _UpperCamelCase											=		input('Enter numbers separated by a comma:\n').strip()
   _UpperCamelCase											=		[int(item) for item in user_input.split(',')]
   print(*merge_sort(unsorted), sep=',')











'''simple docstring'''





import random
from typing import Any

def 			a_	(				_lowerCAmelCase			) -> list[Any]:
  for _ in range(len(_lowerCAmelCase			)			):
    __lowerCamelCase			:			Optional[Any]       			=					random.randint(0			,len(_lowerCAmelCase			) - 1			)
    __lowerCamelCase			:			str       			=					random.randint(0			,len(_lowerCAmelCase			) - 1			)
    __lowerCamelCase			,__lowerCamelCase			:			List[Any]       			=					data[b], data[a]
  return data


if __name__ == "__main__":
   _UpperCamelCase											=		[0, 1, 2, 3, 4, 5, 6, 7]
   _UpperCamelCase											=		['python', 'says', 'hello', '!']
   print('Fisher-Yates Shuffle:')
   print('List', integers, strings)
   print('FY Shuffle', fisher_yates_shuffle(integers), fisher_yates_shuffle(strings))






