

import math

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


snake_case_        =			logging.get_logger(__name__)

snake_case_        =			{
    '''facebook/data2vec-base-960h''': '''https://huggingface.co/facebook/data2vec-audio-base-960h/resolve/main/config.json''',
    # See all Data2VecAudio models at https://huggingface.co/models?filter=data2vec-audio
}


class 				SCREAMING_SNAKE_CASE__ (snake_case__					):
    __lowerCamelCase						:	Dict														=					"""data2vec-audio"""





    def __init__(				self						,       a=32						,       a=768						,       a=12						,       a=12						,       a=3072						,       a="gelu"						,       a=0.1						,       a=0.1						,       a=0.1						,       a=0.0						,       a=0.1						,       a=0.1						,       a=0.02						,       a=1e-5						,       a="gelu"						,       a=(512, 512, 512, 512, 512, 512, 512)						,       a=(5, 2, 2, 2, 2, 2, 2)						,       a=(10, 3, 3, 3, 3, 2, 2)						,       a=False						,       a=16						,       a=19						,       a=5						,       a=0.05						,       a=10						,       a=2						,       a=0.0						,       a=10						,       a=0						,       a="sum"						,       a=False						,       a=False						,       a=256						,       a=(512, 512, 512, 512, 1500)						,       a=(5, 3, 3, 1, 1)						,       a=(1, 2, 3, 1, 1)						,       a=512						,       a=0						,       a=1						,       a=2						,       a=False						,       a=3						,       a=2						,       a=3						,       a=None						,       **a						,       ):
         super().__init__(**_A						,       pad_token_id=_A						,       bos_token_id=_A						,       eos_token_id=_A)
         lowercase__   :       Union[str, Any]				=	hidden_size
         lowercase__   :       List[Any]				=	feat_extract_activation
         lowercase__   :       Tuple				=	list(_A)
         lowercase__   :       Union[str, Any]				=	list(_A)
         lowercase__   :       List[str]				=	list(_A)
         lowercase__   :       Dict				=	conv_bias
         lowercase__   :       Union[str, Any]				=	num_conv_pos_embeddings
         lowercase__   :       Dict				=	num_conv_pos_embedding_groups
         lowercase__   :       Dict				=	conv_pos_kernel_size
         lowercase__   :       str				=	len(self.conv_dim)
         lowercase__   :       Dict				=	num_hidden_layers
         lowercase__   :       Any				=	intermediate_size
         lowercase__   :       List[str]				=	hidden_act
         lowercase__   :       Any				=	num_attention_heads
         lowercase__   :       Optional[int]				=	hidden_dropout
         lowercase__   :       str				=	attention_dropout
         lowercase__   :       Optional[Any]				=	activation_dropout
         lowercase__   :       List[Any]				=	feat_proj_dropout
         lowercase__   :       Dict				=	final_dropout
         lowercase__   :       List[str]				=	layerdrop
         lowercase__   :       Optional[int]				=	layer_norm_eps
         lowercase__   :       List[str]				=	initializer_range
         lowercase__   :       str				=	vocab_size
         lowercase__   :       Union[str, Any]				=	use_weighted_layer_sum

         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
         lowercase__   :       Optional[int]				=	mask_time_prob
         lowercase__   :       Any				=	mask_time_length
         lowercase__   :       Any				=	mask_time_min_masks
         lowercase__   :       Dict				=	mask_feature_prob
         lowercase__   :       int				=	mask_feature_length
         lowercase__   :       Optional[int]				=	mask_feature_min_masks

         # ctc loss
         lowercase__   :       Tuple				=	ctc_loss_reduction
         lowercase__   :       int				=	ctc_zero_infinity

         # adapter
         lowercase__   :       int				=	add_adapter
         lowercase__   :       Any				=	adapter_kernel_size
         lowercase__   :       List[Any]				=	adapter_stride
         lowercase__   :       str				=	num_adapter_layers
         lowercase__   :       Union[str, Any]				=	output_hidden_size or hidden_size

         # SequenceClassification-specific parameter. Feel free to ignore for other classes.
         lowercase__   :       Dict				=	classifier_proj_size

         # XVector-specific parameters. Feel free to ignore for other classes.
         lowercase__   :       Optional[Any]				=	list(_A)
         lowercase__   :       Tuple				=	list(_A)
         lowercase__   :       str				=	list(_A)
         lowercase__   :       List[Any]				=	xvector_output_dim





    @property
    def 				snake_case_    (				self):
         return math.prod(self.conv_stride)




def      snake_case__      (   SCREAMING_SNAKE_CASE_		:   int      ):



     '''simple docstring'''





     return 1 if digit in (0, 1) else (digit * factorial(digit - 1      ))

def      snake_case__      (   SCREAMING_SNAKE_CASE_		:   int      ):



     '''simple docstring'''





     lowercase__   :       List[str]				=	0
     lowercase__   :       Optional[int]				=	number
     while duplicate > 0:
          lowercase__				,			lowercase__   :       Tuple				=	divmod(SCREAMING_SNAKE_CASE_     ,					10      )
          fact_sum += factorial(SCREAMING_SNAKE_CASE_      )
     return fact_sum == number


if __name__ == "__main__":
       print('''Program to check whether a number is a Krisnamurthy Number or not.''')
       snake_case_        =			int(input('''Enter number: ''').strip())
       print(
           F'''{number} is {'' if krishnamurthy(number) else 'not '}a Krishnamurthy Number.'''
       )

