

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


__lowercase				      =						logging.get_logger(__name__)

__lowercase				      =						{
    """speechbrain/m-ctc-t-large""": """https://huggingface.co/speechbrain/m-ctc-t-large/resolve/main/config.json""",
    # See all M-CTC-T models at https://huggingface.co/models?filter=mctct
}

class    _lowercase				(					__lowerCamelCase			):
   _lowercase     :       List[Any]  					=    'mctct'

   def __init__(				self	:    List[Any]			,						lowerCamelCase__	:    str=8_0_6_5			,						lowerCamelCase__	:    List[str]=1_5_3_6			,						lowerCamelCase__	:    Dict=3_6			,						lowerCamelCase__	:    List[Any]=6_1_4_4			,						lowerCamelCase__	:    int=4			,						lowerCamelCase__	:    int=3_8_4			,						lowerCamelCase__	:    Optional[Any]=9_2_0			,						lowerCamelCase__	:    Union[str, Any]=1e-5			,						lowerCamelCase__	:    Optional[Any]=0.3			,						lowerCamelCase__	:    Union[str, Any]="relu"			,						lowerCamelCase__	:    Any=0.02			,						lowerCamelCase__	:    Tuple=0.3			,						lowerCamelCase__	:    Union[str, Any]=0.3			,						lowerCamelCase__	:    List[Any]=1			,						lowerCamelCase__	:    int=0			,						lowerCamelCase__	:    List[Any]=2			,						lowerCamelCase__	:    str=1			,						lowerCamelCase__	:    int=0.3			,						lowerCamelCase__	:    Dict=1			,						lowerCamelCase__	:    List[Any]=(7,)			,						lowerCamelCase__	:    str=(3,)			,						lowerCamelCase__	:    Tuple=8_0			,						lowerCamelCase__	:    Dict=1			,						lowerCamelCase__	:    Tuple=None			,						lowerCamelCase__	:    Dict="sum"			,						lowerCamelCase__	:    Tuple=False			,						**lowerCamelCase__	:    Tuple			,						) ->			Optional[Any]:
         """simple docstring"""





         super().__init__(**lowerCamelCase__			,						pad_token_id=lowerCamelCase__			,						bos_token_id=lowerCamelCase__			,						eos_token_id=lowerCamelCase__       )
         A_							       =		vocab_size
         A_							       =		hidden_size
         A_							       =		num_hidden_layers
         A_							       =		intermediate_size
         A_							       =		num_attention_heads
         A_							       =		attention_head_dim
         A_							       =		max_position_embeddings
         A_							       =		layer_norm_eps
         A_							       =		layerdrop
         A_							       =		hidden_act
         A_							       =		initializer_range
         A_							       =		hidden_dropout_prob
         A_							       =		attention_probs_dropout_prob
         A_							       =		pad_token_id
         A_							       =		bos_token_id
         A_							       =		eos_token_id
         A_							       =		conv_glu_dim
         A_							       =		conv_dropout
         A_							       =		num_conv_layers
         A_							       =		input_feat_per_channel
         A_							       =		input_channels
         A_							       =		conv_channels
         A_							       =		ctc_loss_reduction
         A_							       =		ctc_zero_infinity

         # prevents config testing fail with exporting to json
         A_							       =		list(lowerCamelCase__       )
         A_							       =		list(lowerCamelCase__       )

         if len(self.conv_kernel       ) != self.num_conv_layers:
               raise ValueError(
                   '''Configuration for convolutional module is incorrect. '''
                   '''It is required that `len(config.conv_kernel)` == `config.num_conv_layers` '''
                   F"but is `len(config.conv_kernel) = {len(self.conv_kernel       )}`, "
                   F"`config.num_conv_layers = {self.num_conv_layers}`."       )








def 							_lowerCamelCase   (			SCREAMING_SNAKE_CASE		,				SCREAMING_SNAKE_CASE   ):
      '''simple docstring'''







      return int((input_a, input_a).count(0   ) != 0   )







def 							_lowerCamelCase   (			):
      '''simple docstring'''







      assert nand_gate(0		,				0   ) == 1
      assert nand_gate(0		,				1   ) == 1
      assert nand_gate(1		,				0   ) == 1
      assert nand_gate(1		,				1   ) == 0


if __name__ == "__main__":
      print(nand_gate(0, 0))
      print(nand_gate(0, 1))
      print(nand_gate(1, 0))
      print(nand_gate(1, 1))





