"""simple docstring"""


def    UpperCAmelCase       (						UpperCAmelCase		,   UpperCAmelCase   )							-> int:
     if a < b:
          return gcd(UpperCAmelCase		,   UpperCAmelCase   )
     if a % b == 0:
          return b
     return gcd(UpperCAmelCase		,   a % b   )







def    UpperCAmelCase       (						UpperCAmelCase		,   UpperCAmelCase		,   UpperCAmelCase   )							-> int:
     if y == 0:
          return 1
     snake_case_   			=   power(UpperCAmelCase		,   y // 2		,   UpperCAmelCase   ) % mod
     snake_case_   			=   (temp * temp) % mod
     if y % 2 == 1:
          snake_case_   			=   (temp * x) % mod
     return temp







def    UpperCAmelCase       (						UpperCAmelCase   )							-> bool:
     snake_case_   			=   2
     while b < n:
          if gcd(UpperCAmelCase		,   UpperCAmelCase   ) == 1 and power(UpperCAmelCase		,   n - 1		,   UpperCAmelCase   ) != 1:
               return False
          b += 1
     return True


if __name__ == "__main__":
    __UpperCamelCase										=     int(input('''Enter number: ''').strip())
    if is_carmichael_number(number):
        print(F"""{number} is a Carmichael Number.""")
    else:
        print(F"""{number} is not a Carmichael Number.""")


"""simple docstring"""


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


__UpperCamelCase										=     logging.get_logger(__name__)

__UpperCamelCase										=     {
    '''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 					UpperCamelCase   (							lowerCAmelCase__  ):
       SCREAMING_SNAKE_CASE_						      = "splinter"







       def __init__(					self,				lowerCAmelCase__=3_0522,				lowerCAmelCase__=768,				lowerCAmelCase__=12,				lowerCAmelCase__=12,				lowerCAmelCase__=3072,				lowerCAmelCase__="gelu",				lowerCAmelCase__=0.1,				lowerCAmelCase__=0.1,				lowerCAmelCase__=512,				lowerCAmelCase__=2,				lowerCAmelCase__=0.02,				lowerCAmelCase__=1e-12,				lowerCAmelCase__=True,				lowerCAmelCase__=0,				lowerCAmelCase__=104,				**lowerCAmelCase__,				) -> Dict:
            super().__init__(pad_token_id=lowerCAmelCase__,				**lowerCAmelCase__)

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

