



"""simple docstring"""






from ...configuration_utils import PretrainedConfig
from ...utils import logging


__snake_case							:   Optional[int]      =    logging.get_logger(__name__)

__snake_case							:   Any      =    {
    'transfo-xl-wt103': 'https://huggingface.co/transfo-xl-wt103/resolve/main/config.json',
}



class 			A__   (  __SCREAMING_SNAKE_CASE							):




	'''simple docstring'''





	SCREAMING_SNAKE_CASE          =	'transfo-xl'
	SCREAMING_SNAKE_CASE          =	['mems']
	SCREAMING_SNAKE_CASE          =	{
	    'n_token': 'vocab_size',
	    'hidden_size': 'd_model',
	    'num_attention_heads': 'n_head',
	    'num_hidden_layers': 'n_layer',
	}

	def __init__(     self:		Tuple       ,			_SCREAMING_SNAKE_CASE:		Optional[Any]=26_7735       ,			_SCREAMING_SNAKE_CASE:		int=[2_0000, 4_0000, 20_0000]       ,			_SCREAMING_SNAKE_CASE:		Optional[Any]=1024       ,			_SCREAMING_SNAKE_CASE:		Optional[Any]=1024       ,			_SCREAMING_SNAKE_CASE:		List[str]=16       ,			_SCREAMING_SNAKE_CASE:		Dict=64       ,			_SCREAMING_SNAKE_CASE:		Dict=4096       ,			_SCREAMING_SNAKE_CASE:		Any=4       ,			_SCREAMING_SNAKE_CASE:		Dict=False       ,			_SCREAMING_SNAKE_CASE:		str=18       ,			_SCREAMING_SNAKE_CASE:		Optional[int]=1600       ,			_SCREAMING_SNAKE_CASE:		Union[str, Any]=1000       ,			_SCREAMING_SNAKE_CASE:		List[str]=True       ,			_SCREAMING_SNAKE_CASE:		Union[str, Any]=True       ,			_SCREAMING_SNAKE_CASE:		List[Any]=0       ,			_SCREAMING_SNAKE_CASE:		str=-1       ,			_SCREAMING_SNAKE_CASE:		Optional[int]=True       ,			_SCREAMING_SNAKE_CASE:		int=0.1       ,			_SCREAMING_SNAKE_CASE:		Dict=0.0       ,			_SCREAMING_SNAKE_CASE:		Tuple=True       ,			_SCREAMING_SNAKE_CASE:		int="normal"       ,			_SCREAMING_SNAKE_CASE:		Union[str, Any]=0.01       ,			_SCREAMING_SNAKE_CASE:		Tuple=0.01       ,			_SCREAMING_SNAKE_CASE:		List[Any]=0.02       ,			_SCREAMING_SNAKE_CASE:		Dict=1e-5       ,			_SCREAMING_SNAKE_CASE:		str=0       ,			**_SCREAMING_SNAKE_CASE:		List[Any]       ,			)				->       List[Any]:

				"""simple docstring"""

				__lowerCAmelCase      :  Optional[int]												=       vocab_size
				__lowerCAmelCase      :  Optional[int]												=       []
				self.cutoffs.extend(_SCREAMING_SNAKE_CASE)
				if proj_share_all_but_first:
							__lowerCAmelCase      :  str												=       [False] + [True] * len(self.cutoffs)
				else:
							__lowerCAmelCase      :  int												=       [False] + [False] * len(self.cutoffs)
				__lowerCAmelCase      :  Union[str, Any]												=       d_model
				__lowerCAmelCase      :  Dict												=       d_embed
				__lowerCAmelCase      :  Any												=       d_head
				__lowerCAmelCase      :  Tuple												=       d_inner
				__lowerCAmelCase      :  List[Any]												=       div_val
				__lowerCAmelCase      :  Any												=       pre_lnorm
				__lowerCAmelCase      :  Any												=       n_layer
				__lowerCAmelCase      :  List[str]												=       n_head
				__lowerCAmelCase      :  Dict												=       mem_len
				__lowerCAmelCase      :  Tuple												=       same_length
				__lowerCAmelCase      :  List[str]												=       attn_type
				__lowerCAmelCase      :  Tuple												=       clamp_len
				__lowerCAmelCase      :  Union[str, Any]												=       sample_softmax
				__lowerCAmelCase      :  List[str]												=       adaptive
				__lowerCAmelCase      :  List[Any]												=       dropout
				__lowerCAmelCase      :  Optional[Any]												=       dropatt
				__lowerCAmelCase      :  List[Any]												=       untie_r
				__lowerCAmelCase      :  Optional[int]												=       init
				__lowerCAmelCase      :  Any												=       init_range
				__lowerCAmelCase      :  Dict												=       proj_init_std
				__lowerCAmelCase      :  List[Any]												=       init_std
				__lowerCAmelCase      :  Tuple												=       layer_norm_epsilon
				super().__init__(eos_token_id=_SCREAMING_SNAKE_CASE       ,			**_SCREAMING_SNAKE_CASE)

	@property
	def 							_SCREAMING_SNAKE_CASE   (     self:		Union[str, Any])				->       List[Any]:

				"""simple docstring"""

				logger.info(F"""The model {self.model_type} is one of the few models that has no sequence length limit.""")
				return -1







	@max_position_embeddings.setter
	def 							_SCREAMING_SNAKE_CASE   (     self:		List[Any]       ,			_SCREAMING_SNAKE_CASE:		Dict)				->       Any:

				"""simple docstring"""

				raise NotImplementedError(
				    F"""The model {self.model_type} is one of the few models that has no sequence length limit.""")




"""simple docstring"""






from __future__ import annotations


def 			_lowercase				(  __snake_case					,__snake_case					,__snake_case					,__snake_case	)						->   list:
			__lowerCAmelCase      :  Dict												=       []
			__lowerCAmelCase						,	__lowerCAmelCase      :  Any												=       input_list[low:mid], input_list[mid : high + 1]
			while left and right:
						result.append((left if left[0] <= right[0] else right).pop(0	)	)
			__lowerCAmelCase      :  int												=       result + left + right
			return input_list


def 			_lowercase				(  __snake_case	)						->   list:
			if len(__snake_case	) <= 1:
						return input_list
			__lowerCAmelCase      :  int												=       list(__snake_case	)

			# iteration for two-way merging
			__lowerCAmelCase      :  Optional[int]												=       2
			while p <= len(__snake_case	):
						# getting low, high and middle value for merge-sort of single list
						for i in range(0					,len(__snake_case	)					,__snake_case	):
									__lowerCAmelCase      :  Union[str, Any]												=       i
									__lowerCAmelCase      :  Tuple												=       i + p - 1
									__lowerCAmelCase      :  Optional[Any]												=       (low + high + 1) // 2
									__lowerCAmelCase      :  Any												=       merge(__snake_case					,__snake_case					,__snake_case					,__snake_case	)
						# final merge of last two parts
						if p * 2 >= len(__snake_case	):
									__lowerCAmelCase      :  Optional[Any]												=       i
									__lowerCAmelCase      :  Union[str, Any]												=       merge(__snake_case					,0					,__snake_case					,len(__snake_case	) - 1	)
									break
						p *= 2

			return input_list


if __name__ == "__main__":
	__snake_case							:   Union[str, Any]      =    input('Enter numbers separated by a comma:\n').strip()
	if user_input == "":
		__snake_case							:   Optional[int]      =    []
	else:
		__snake_case							:   int      =    [int(item.strip()) for item in user_input.split(',')]
	print(iter_merge_sort(unsorted))