





"""simple docstring"""






import random

def       __lowerCamelCase    (       SCREAMING_SNAKE_CASE							)		->       bool:






       """simple docstring"""




       _UpperCAmelCase     =     num - 1
       _UpperCAmelCase     =     0

       while s % 2 == 0:
              _UpperCAmelCase     =     s // 2
              t += 1

       for _ in range(5							):
              _UpperCAmelCase     =     random.randrange(2,num - 1							)
              _UpperCAmelCase     =     pow(SCREAMING_SNAKE_CASE,SCREAMING_SNAKE_CASE,SCREAMING_SNAKE_CASE							)
              if v != 1:
                     _UpperCAmelCase     =     0
                     while v != (num - 1):
                            if i == t - 1:
                                   return False
                            else:
                                   _UpperCAmelCase     =     i + 1
                                   _UpperCAmelCase     =     (v**2) % num
       return True

def       __lowerCamelCase    (       SCREAMING_SNAKE_CASE							)		->       bool:






       """simple docstring"""




       if num < 2:
              return False

       _UpperCAmelCase     =     [
           2,
           3,
           5,
           7,
           11,
           13,
           17,
           19,
           23,
           29,
           31,
           37,
           41,
           43,
           47,
           53,
           59,
           61,
           67,
           71,
           73,
           79,
           83,
           89,
           97,
           101,
           103,
           107,
           109,
           113,
           127,
           131,
           137,
           139,
           149,
           151,
           157,
           163,
           167,
           173,
           179,
           181,
           191,
           193,
           197,
           199,
           211,
           223,
           227,
           229,
           233,
           239,
           241,
           251,
           257,
           263,
           269,
           271,
           277,
           281,
           283,
           293,
           307,
           311,
           313,
           317,
           331,
           337,
           347,
           349,
           353,
           359,
           367,
           373,
           379,
           383,
           389,
           397,
           401,
           409,
           419,
           421,
           431,
           433,
           439,
           443,
           449,
           457,
           461,
           463,
           467,
           479,
           487,
           491,
           499,
           503,
           509,
           521,
           523,
           541,
           547,
           557,
           563,
           569,
           571,
           577,
           587,
           593,
           599,
           601,
           607,
           613,
           617,
           619,
           631,
           641,
           643,
           647,
           653,
           659,
           661,
           673,
           677,
           683,
           691,
           701,
           709,
           719,
           727,
           733,
           739,
           743,
           751,
           757,
           761,
           769,
           773,
           787,
           797,
           809,
           811,
           821,
           823,
           827,
           829,
           839,
           853,
           857,
           859,
           863,
           877,
           881,
           883,
           887,
           907,
           911,
           919,
           929,
           937,
           941,
           947,
           953,
           967,
           971,
           977,
           983,
           991,
           997,
       ]

       if num in low_primes:
              return True

       for prime in low_primes:
              if (num % prime) == 0:
                     return False

       return rabin_miller(SCREAMING_SNAKE_CASE							)

def       __lowerCamelCase    (       SCREAMING_SNAKE_CASE = 1024							)		->       int:






       """simple docstring"""




       while True:
              _UpperCAmelCase     =     random.randrange(2 ** (keysize - 1),2 ** (keysize)							)
              if is_prime_low_num(SCREAMING_SNAKE_CASE							):
                     return num


if __name__ == "__main__":
    lowerCAmelCase_			=							generate_large_prime()
    print(('''Prime number:''', num))
    print(('''is_prime_low_num:''', is_prime_low_num(num)))













"""simple docstring"""






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


lowerCAmelCase_			=							logging.get_logger(__name__)

lowerCAmelCase_			=							{
    '''microsoft/trocr-base-handwritten''': (
        '''https://huggingface.co/microsoft/trocr-base-handwritten/resolve/main/config.json'''
    ),
    # See all TrOCR models at https://huggingface.co/models?filter=trocr
}



class 	lowerCAmelCase					(      snake_case							):
       lowerCAmelCase__						 =  """trocr"""
       lowerCAmelCase__						 =  ["""past_key_values"""]
       lowerCAmelCase__						 =  {
           """num_attention_heads""": """decoder_attention_heads""",
           """hidden_size""": """d_model""",
           """num_hidden_layers""": """decoder_layers""",
       }






       def __init__(   self    ,  a__=5_02_65    ,  a__=10_24    ,  a__=12    ,  a__=16    ,  a__=40_96    ,  a__="gelu"    ,  a__=5_12    ,  a__=0.1    ,  a__=0.0    ,  a__=0.0    ,  a__=2    ,  a__=0.02    ,  a__=0.0    ,  a__=True    ,  a__=False    ,  a__=True    ,  a__=True    ,  a__=1    ,  a__=0    ,  a__=2    ,  **a__    ,  ):
              _UpperCAmelCase     =     vocab_size
              _UpperCAmelCase     =     d_model
              _UpperCAmelCase     =     decoder_layers
              _UpperCAmelCase     =     decoder_attention_heads
              _UpperCAmelCase     =     decoder_ffn_dim
              _UpperCAmelCase     =     activation_function
              _UpperCAmelCase     =     max_position_embeddings
              _UpperCAmelCase     =     dropout
              _UpperCAmelCase     =     attention_dropout
              _UpperCAmelCase     =     activation_dropout
              _UpperCAmelCase     =     init_std
              _UpperCAmelCase     =     decoder_layerdrop
              _UpperCAmelCase     =     use_cache
              _UpperCAmelCase     =     scale_embedding
              _UpperCAmelCase     =     use_learned_position_embeddings
              _UpperCAmelCase     =     layernorm_embedding

              super().__init__(
                  pad_token_id=a__    ,  bos_token_id=a__    ,  eos_token_id=a__    ,  decoder_start_token_id=a__    ,  **a__    ,  )






