




'''simple docstring'''






import functools
import operator

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


_lowerCAmelCase       =   logging.get_logger(__name__)

_lowerCAmelCase       =   {
    '''facebook/hubert-base-ls960''': '''https://huggingface.co/facebook/hubert-base-ls960/resolve/main/config.json''',
    # See all Hubert models at https://huggingface.co/models?filter=hubert
}



class    A						(					SCREAMING_SNAKE_CASE__						):




				'''simple docstring'''





				A       =							"hubert"
				def __init__(self					,    _UpperCAmelCase=3_2					,    _UpperCAmelCase=7_6_8					,    _UpperCAmelCase=1_2					,    _UpperCAmelCase=1_2					,    _UpperCAmelCase=3_0_7_2					,    _UpperCAmelCase="gelu"					,    _UpperCAmelCase=0.1					,    _UpperCAmelCase=0.1					,    _UpperCAmelCase=0.1					,    _UpperCAmelCase=True					,    _UpperCAmelCase=0.0					,    _UpperCAmelCase=0.1					,    _UpperCAmelCase=0.1					,    _UpperCAmelCase=0.02					,    _UpperCAmelCase=1E-5					,    _UpperCAmelCase="group"					,    _UpperCAmelCase="gelu"					,    _UpperCAmelCase=(5_1_2, 5_1_2, 5_1_2, 5_1_2, 5_1_2, 5_1_2, 5_1_2)					,    _UpperCAmelCase=(5, 2, 2, 2, 2, 2, 2)					,    _UpperCAmelCase=(1_0, 3, 3, 3, 3, 2, 2)					,    _UpperCAmelCase=False					,    _UpperCAmelCase=1_2_8					,    _UpperCAmelCase=1_6					,    _UpperCAmelCase=False					,    _UpperCAmelCase=True					,    _UpperCAmelCase=0.05					,    _UpperCAmelCase=1_0					,    _UpperCAmelCase=2					,    _UpperCAmelCase=0.0					,    _UpperCAmelCase=1_0					,    _UpperCAmelCase=0					,    _UpperCAmelCase="sum"					,    _UpperCAmelCase=False					,    _UpperCAmelCase=False					,    _UpperCAmelCase=2_5_6					,    _UpperCAmelCase=0					,    _UpperCAmelCase=1					,    _UpperCAmelCase=2					,    **_UpperCAmelCase					,    )      ->			int:
							super().__init__(**_UpperCAmelCase					,    pad_token_id=_UpperCAmelCase					,    bos_token_id=_UpperCAmelCase					,    eos_token_id=_UpperCAmelCase     )
							__UpperCamelCase :     Optional[int]										=  hidden_size
							__UpperCamelCase :     int										=  feat_extract_norm
							__UpperCamelCase :     int										=  feat_extract_activation
							__UpperCamelCase :     List[Any]										=  list(_UpperCAmelCase     )
							__UpperCamelCase :     Dict										=  list(_UpperCAmelCase     )
							__UpperCamelCase :     Optional[Any]										=  list(_UpperCAmelCase     )
							__UpperCamelCase :     Dict										=  conv_bias
							__UpperCamelCase :     Optional[int]										=  num_conv_pos_embeddings
							__UpperCamelCase :     List[str]										=  num_conv_pos_embedding_groups
							__UpperCamelCase :     int										=  len(self.conv_dim     )
							__UpperCamelCase :     Optional[int]										=  num_hidden_layers
							__UpperCamelCase :     List[str]										=  intermediate_size
							__UpperCamelCase :     Union[str, Any]										=  hidden_act
							__UpperCamelCase :     Optional[int]										=  num_attention_heads
							__UpperCamelCase :     Any										=  hidden_dropout
							__UpperCamelCase :     Any										=  attention_dropout
							__UpperCamelCase :     Dict										=  activation_dropout
							__UpperCamelCase :     Dict										=  feat_proj_layer_norm
							__UpperCamelCase :     Optional[Any]										=  feat_proj_dropout
							__UpperCamelCase :     int										=  final_dropout
							__UpperCamelCase :     List[str]										=  layerdrop
							__UpperCamelCase :     Optional[int]										=  layer_norm_eps
							__UpperCamelCase :     Tuple										=  initializer_range
							__UpperCamelCase :     Optional[Any]										=  vocab_size
							__UpperCamelCase :     Dict										=  do_stable_layer_norm
							__UpperCamelCase :     str										=  use_weighted_layer_sum
							__UpperCamelCase :     Optional[int]										=  classifier_proj_size

							if (
							    (len(self.conv_stride     ) != self.num_feat_extract_layers)
							    or (len(self.conv_kernel     ) != self.num_feat_extract_layers)
							    or (len(self.conv_dim     ) != self.num_feat_extract_layers)
							):
										raise ValueError(
										    "Configuration for convolutional layers is incorrect. It is required that `len(config.conv_dim)` =="
										    " `len(config.conv_stride)` == `len(config.conv_kernel)`, but is `len(config.conv_dim) ="
										    f" {len(self.conv_dim     )}`, `len(config.conv_stride) = {len(self.conv_stride     )}`,"
										    f" `len(config.conv_kernel) = {len(self.conv_kernel     )}`."     )

							# fine-tuning config parameters for SpecAugment: https://arxiv.org/abs/1904.08779
							__UpperCamelCase :     str										=  apply_spec_augment
							__UpperCamelCase :     List[str]										=  mask_time_prob
							__UpperCamelCase :     Any										=  mask_time_length
							__UpperCamelCase :     Optional[int]										=  mask_time_min_masks
							__UpperCamelCase :     str										=  mask_feature_prob
							__UpperCamelCase :     List[str]										=  mask_feature_length
							__UpperCamelCase :     Union[str, Any]										=  mask_feature_min_masks

							# ctc loss
							__UpperCamelCase :     Any										=  ctc_loss_reduction
							__UpperCamelCase :     Optional[int]										=  ctc_zero_infinity





				@property
				def 			a_			(self     )      ->			Union[str, Any]:
							return functools.reduce(operator.mul					,    self.conv_stride					,    1     )









'''simple docstring'''






def      __lowerCAmelCase   (       snake_case__		):

			for insert_index, insert_value in enumerate(collection[1:]		):
						__UpperCamelCase :     Union[str, Any]										=  insert_index
						while insert_index >= 0 and insert_value < collection[insert_index]:
									__UpperCamelCase :     int										=  collection[insert_index]
									insert_index -= 1
						if insert_index != temp_index:
									__UpperCamelCase :     Tuple										=  insert_value
			return collection


if __name__ == "__main__":
				from doctest import testmod

				testmod()

				_lowerCAmelCase       =   input('''Enter numbers separated by a comma:\n''').strip()
				_lowerCAmelCase       =   [int(item) for item in user_input.split(''',''')]
				print(f'{insertion_sort(unsorted) = }')



