

from __future__ import annotations






def        UpperCamelCase_(							_snake_case   :  list[int]	):




			"""simple docstring"""






			if len(_snake_case	) == 0:
						return array

			__a      ,    __a        =min(_snake_case	), max(_snake_case	)

			# Compute the variables
			__a        =_max - _min + 1
			__a      ,    __a        =[0] * holes_range, [0] * holes_range

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

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

    # Returns the sorted array.
			return array


if __name__ == "__main__":
						import doctest

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









from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_sentencepiece_available,
    is_tokenizers_available,
    is_torch_available,
)


_lowerCAmelCase					:			Tuple  				=			{
    "configuration_llama": ["LLAMA_PRETRAINED_CONFIG_ARCHIVE_MAP", "LlamaConfig"],
}

try:
						if not is_sentencepiece_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						_lowerCAmelCase					:			Optional[int]  				=			["LlamaTokenizer"]

try:
						if not is_tokenizers_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						_lowerCAmelCase					:			Optional[int]  				=			["LlamaTokenizerFast"]

try:
						if not is_torch_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						_lowerCAmelCase					:			List[Any]  				=			[
						    "LlamaForCausalLM",
						    "LlamaModel",
						    "LlamaPreTrainedModel",
						    "LlamaForSequenceClassification",
						]


if TYPE_CHECKING:
						from .configuration_llama import LLAMA_PRETRAINED_CONFIG_ARCHIVE_MAP, LlamaConfig

						try:
												if not is_sentencepiece_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .tokenization_llama import LlamaTokenizer

						try:
												if not is_tokenizers_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .tokenization_llama_fast import LlamaTokenizerFast

						try:
												if not is_torch_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_llama import LlamaForCausalLM, LlamaForSequenceClassification, LlamaModel, LlamaPreTrainedModel


else:
						import sys

						_lowerCAmelCase					:			int  				=			_LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)






