'''simple docstring'''




from typing import Mapping

from ...configuration_utils import PretrainedConfig
from ...onnx import OnnxSeqaSeqConfigWithPast
from ...utils import logging


__UpperCAmelCase					=logging.get_logger(__name__)

__UpperCAmelCase					={
    "google/umt5-small": "https://huggingface.co/google/umt5-small/resolve/main/config.json",
    # See all umt5 models at https://huggingface.co/models?filter=umt5
}




class        a__ (  UpperCAmelCase__					):
     lowerCamelCase    :	int				="umt5"
     lowerCamelCase    :	Optional[int]				=["past_key_values"]






     def __init__(					self						:						Dict    ,							a						:						List[Any]=25_01_12    ,							a						:						Optional[Any]=5_12    ,							a						:						Union[str, Any]=64    ,							a						:						List[Any]=10_24    ,							a						:						Any=8    ,							a						:						List[str]=None    ,							a						:						List[Any]=6    ,							a						:						Dict=32    ,							a						:						Dict=1_28    ,							a						:						int=0.1    ,							a						:						List[Any]=1e-6    ,							a						:						Optional[int]=1.0    ,							a						:						Union[str, Any]="gated-gelu"    ,							a						:						List[Any]=True    ,							a						:						List[str]=True    ,							a						:						Dict="T5Tokenizer"    ,							a						:						Any=True    ,							a						:						Tuple=0    ,							a						:						Optional[Any]=1    ,							a						:						Optional[Any]=0    ,							**a						:						Tuple    ,							):





         """simple docstring"""



         super().__init__(
             is_encoder_decoder=a    ,							tokenizer_class=a    ,							tie_word_embeddings=a    ,							pad_token_id=a    ,							eos_token_id=a    ,							decoder_start_token_id=a    ,							**a    ,							)
         __lowerCamelCase            =    vocab_size
         __lowerCamelCase            =    d_model
         __lowerCamelCase            =    d_kv
         __lowerCamelCase            =    d_ff
         __lowerCamelCase            =    num_layers
         __lowerCamelCase            =    (
             num_decoder_layers if num_decoder_layers is not None else self.num_layers
         )  # default = symmetry
         __lowerCamelCase            =    num_heads
         __lowerCamelCase            =    relative_attention_num_buckets
         __lowerCamelCase            =    relative_attention_max_distance
         __lowerCamelCase            =    dropout_rate
         __lowerCamelCase            =    layer_norm_epsilon
         __lowerCamelCase            =    initializer_factor
         __lowerCamelCase            =    feed_forward_proj
         __lowerCamelCase            =    use_cache

         __lowerCamelCase            =    self.feed_forward_proj.split('''-'''       )
         __lowerCamelCase            =    act_info[-1]
         __lowerCamelCase            =    act_info[0] == '''gated'''

         if len(a       ) > 1 and act_info[0] != "gated" or len(a       ) > 2:
             raise ValueError(
                 f"""`feed_forward_proj`: {feed_forward_proj} is not a valid activation function of the dense layer."""
                 '''Please make sure `feed_forward_proj` is of the format `gated-{ACT_FN}` or `{ACT_FN}`, e.g. '''
                 '''\'gated-gelu\' or \'relu\''''       )

         if feed_forward_proj == "gated-gelu":
             __lowerCamelCase            =    '''gelu_new'''






     @property
     def   SCREAMING_SNAKE_CASE__  (					self						:						Optional[int]       ):





         """simple docstring"""



         return self.d_model






     @property
     def   SCREAMING_SNAKE_CASE__  (					self						:						List[str]       ):





         """simple docstring"""



         return self.num_heads






     @property
     def   SCREAMING_SNAKE_CASE__  (					self						:						Union[str, Any]       ):





         """simple docstring"""



         return self.num_layers




class        a__ (  UpperCAmelCase__					):






     @property
     # Copied from transformers.models.t5.configuration_t5.T5OnnxConfig.inputs
     def   SCREAMING_SNAKE_CASE__  (					self						:						Union[str, Any]       ):





         """simple docstring"""



         __lowerCamelCase            =    {
             '''input_ids''': {0: '''batch''', 1: '''encoder_sequence'''},
             '''attention_mask''': {0: '''batch''', 1: '''encoder_sequence'''},
         }
         if self.use_past:
             __lowerCamelCase            =    '''past_encoder_sequence + sequence'''
             __lowerCamelCase            =    {0: '''batch'''}
             __lowerCamelCase            =    {0: '''batch''', 1: '''past_decoder_sequence + sequence'''}
         else:
             __lowerCamelCase            =    {0: '''batch''', 1: '''decoder_sequence'''}
             __lowerCamelCase            =    {0: '''batch''', 1: '''decoder_sequence'''}

         if self.use_past:
             self.fill_with_past_key_values_(a    ,							direction='''inputs'''       )

         return common_inputs






     @property
     # Copied from transformers.models.t5.configuration_t5.T5OnnxConfig.default_onnx_opset
     def   SCREAMING_SNAKE_CASE__  (					self						:						str       ):





         """simple docstring"""



         return 13






     @property
     def   SCREAMING_SNAKE_CASE__  (					self						:						Optional[int]       ):





         """simple docstring"""



         return 5e-4

'''simple docstring'''




def __lowerCAmelCase					(				)      ->       Optional[Any]:
    __lowerCamelCase            =    0
    for i in range(1							,    10_01							):
        total += i**i
    return str(UpperCamelCase__							)[-10:]


if __name__ == "__main__":
  print(solution())
