"""simple docstring"""







def   __UpperCAmelCase    (   UpperCAmelCase_   :    int  )							->      int:

	'''simple docstring'''





	if collection == []:
		return []

	# get some information about the collection
	__snake_case      :							List[str]						=			len(lowercase__  )
	__snake_case      :							List[str]						=			max(lowercase__  )
	__snake_case      :							List[str]						=			min(lowercase__  )

	# create the counting array
	__snake_case      :							List[Any]						=			coll_max + 1 - coll_min
	__snake_case      :							List[Any]						=			[0] * counting_arr_length

	# count how much a number appears in the collection
	for number in collection:
		counting_arr[number - coll_min] += 1

	# sum each position with it's predecessors. now, counting_arr[i] tells
	# us how many elements <= i has in the collection
	for i in range(1      ,							lowercase__  ):
		__snake_case      :							Optional[int]						=			counting_arr[i] + counting_arr[i - 1]

	# create the output collection
	__snake_case      :							Dict						=			[0] * coll_len

	# place the elements in the output, respecting the original order (stable
	# sort) from end to begin, updating counting_arr
	for i in reversed(range(0      ,							lowercase__  )  ):
		__snake_case      :							Any						=			collection[i]
		counting_arr[collection[i] - coll_min] -= 1

	return ordered




def   __UpperCAmelCase    (   UpperCAmelCase_   :    str  )							->      Tuple:

	'''simple docstring'''





	return "".join([chr(lowercase__  ) for i in counting_sort([ord(lowercase__  ) for c in string]  )]  )


if __name__ == "__main__":
	# Test string sort
	assert counting_sort_string("thisisthestring") == "eghhiiinrsssttt"

	_a					:					List[str]=			input("Enter numbers separated by a comma:\n").strip()
	_a					:					int=			[int(item) for item in user_input.split(",")]
	print(counting_sort(unsorted))






"""simple docstring"""







from __future__ import annotations

import math
def   __UpperCAmelCase    (   UpperCAmelCase_   :    int  )							->      bool:

	'''simple docstring'''





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

	# All primes number are in format of 6k +/- 1
	for i in range(5      ,							int(math.sqrt(UpperCAmelCase_  ) + 1  )      ,							6  ):
		if number % i == 0 or number % (i + 2) == 0:
			return False
	return True


_a					:					Any=			[num for num in range(3, 100_001, 2) if not is_prime(num)]
def   __UpperCAmelCase    (   UpperCAmelCase_   :    int  )							->      list[int]:

	'''simple docstring'''





	if not isinstance(UpperCAmelCase_      ,							UpperCAmelCase_  ):
		raise ValueError('n must be an integer'  )
	if n <= 0:
		raise ValueError('n must be >= 0'  )

	__snake_case      :							int						=			[]
	for num in range(len(UpperCAmelCase_  )  ):
		__snake_case      :							List[str]						=			0
		while 2 * i * i <= odd_composites[num]:
			__snake_case      :							List[Any]						=			odd_composites[num] - 2 * i * i
			if is_prime(UpperCAmelCase_  ):
				break
			i += 1
		else:
			list_nums.append(odd_composites[num]  )
			if len(UpperCAmelCase_  ) == n:
				return list_nums

	return []
def   __UpperCAmelCase    (   )							->      int:

	'''simple docstring'''





	return compute_nums(1  )[0]


if __name__ == "__main__":
	print(f'''{solution() = }''')





