


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


__snake_case     =		logging.get_logger(__name__)

__snake_case     =		{
    '''tau/splinter-base''': '''https://huggingface.co/tau/splinter-base/resolve/main/config.json''',
    '''tau/splinter-base-qass''': '''https://huggingface.co/tau/splinter-base-qass/resolve/main/config.json''',
    '''tau/splinter-large''': '''https://huggingface.co/tau/splinter-large/resolve/main/config.json''',
    '''tau/splinter-large-qass''': '''https://huggingface.co/tau/splinter-large-qass/resolve/main/config.json''',
    # See all Splinter models at https://huggingface.co/models?filter=splinter
}



class 					__lowerCamelCase	(_a		):
       _lowercase    							=      """splinter"""







       def __init__(	self:				Union[str, Any],A_:				Union[str, Any]=3_0522,A_:				Union[str, Any]=768,A_:				Optional[int]=12,A_:				Optional[int]=12,A_:				Optional[Any]=3072,A_:				Union[str, Any]="gelu",A_:				Any=0.1,A_:				Dict=0.1,A_:				Optional[Any]=512,A_:				int=2,A_:				Optional[int]=0.0_2,A_:				Any=1E-12,A_:				str=True,A_:				List[Any]=0,A_:				Optional[int]=104,**A_:				int,):






            '''simple docstring'''




            super().__init__(pad_token_id=A_,**A_			)

            __UpperCamelCase				=	vocab_size
            __UpperCamelCase				=	max_position_embeddings
            __UpperCamelCase				=	hidden_size
            __UpperCamelCase				=	num_hidden_layers
            __UpperCamelCase				=	num_attention_heads
            __UpperCamelCase				=	intermediate_size
            __UpperCamelCase				=	hidden_act
            __UpperCamelCase				=	hidden_dropout_prob
            __UpperCamelCase				=	attention_probs_dropout_prob
            __UpperCamelCase				=	initializer_range
            __UpperCamelCase				=	type_vocab_size
            __UpperCamelCase				=	layer_norm_eps
            __UpperCamelCase				=	use_cache
            __UpperCamelCase				=	question_token_id






import math






def 						_A						(						_lowercase				)			->				list:


     """simple docstring"""


     if n <= 0:
          raise ValueError('Only positive integers have prime factors'				)
     __UpperCamelCase				=	[]
     while n % 2 == 0:
          pf.append(2				)
          __UpperCamelCase				=	int(n / 2				)
     for i in range(3			,       int(math.sqrt(_lowercase				)				) + 1			,       2				):
          while n % i == 0:
               pf.append(_lowercase				)
               __UpperCamelCase				=	int(n / i				)
     if n > 2:
          pf.append(_lowercase				)
     return pf






def 						_A						(						_lowercase				)			->				int:


     """simple docstring"""


     if n <= 0:
          raise ValueError('Only positive numbers are accepted'				)
     __UpperCamelCase				=	1
     __UpperCamelCase				=	1
     while n % 2 == 0:
          temp += 1
          __UpperCamelCase				=	int(n / 2				)
     div *= temp
     for i in range(3			,       int(math.sqrt(_lowercase				)				) + 1			,       2				):
          __UpperCamelCase				=	1
          while n % i == 0:
               temp += 1
               __UpperCamelCase				=	int(n / i				)
          div *= temp
     if n > 1:
          div *= 2
     return div






def 						_A						(						_lowercase				)			->				int:


     """simple docstring"""


     if n <= 0:
          raise ValueError('Only positive numbers are accepted'				)
     __UpperCamelCase				=	1
     __UpperCamelCase				=	1
     while n % 2 == 0:
          temp += 1
          __UpperCamelCase				=	int(n / 2				)
     if temp > 1:
          s *= (2**temp - 1) / (2 - 1)
     for i in range(3			,       int(math.sqrt(_lowercase				)				) + 1			,       2				):
          __UpperCamelCase				=	1
          while n % i == 0:
               temp += 1
               __UpperCamelCase				=	int(n / i				)
          if temp > 1:
               s *= (i**temp - 1) / (i - 1)
     return int(_lowercase				)






def 						_A						(						_lowercase				)			->				int:


     """simple docstring"""


     __UpperCamelCase				=	n
     for x in set(prime_factors(_lowercase				)				):
          s *= (x - 1) / x
     return int(_lowercase				)


if __name__ == "__main__":
    import doctest

    doctest.testmod()


