






'''simple docstring'''




from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_torch_available,
)


lowerCamelCase_							      =      {
    '''configuration_rwkv''': ['''RWKV_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''RwkvConfig''', '''RwkvOnnxConfig'''],
}

try:
    if not is_torch_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    lowerCamelCase_							      =      [
        '''RWKV_PRETRAINED_MODEL_ARCHIVE_LIST''',
        '''RwkvForCausalLM''',
        '''RwkvModel''',
        '''RwkvPreTrainedModel''',
    ]


if TYPE_CHECKING:
    from .configuration_rwkv import RWKV_PRETRAINED_CONFIG_ARCHIVE_MAP, RwkvConfig, RwkvOnnxConfig

    try:
        if not is_torch_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .modeling_rwkv import (
            RWKV_PRETRAINED_MODEL_ARCHIVE_LIST,
            RwkvForCausalLM,
            RwkvModel,
            RwkvPreTrainedModel,
        )
else:
    import sys

    lowerCamelCase_							      =      _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)













'''simple docstring'''




import math

def       __lowercase		(    __lowercase ) ->		bool:

      '''simple docstring'''


      if 1 < number < 4:
            # 2 and 3 are primes
            return True
      elif number < 2 or number % 2 == 0 or number % 3 == 0:
            # Negatives, 0, 1, all even numbers, all multiples of 3 are not primes
            return False

      # All primes number are in format of 6k +/- 1
      for i in range(5     ,						int(math.sqrt(__lowercase ) + 1 )     ,						6 ):
            if number % i == 0 or number % (i + 2) == 0:
                  return False
      return True

def       __lowercase		(    __lowercase = 6008_5147_5143 ) ->		int:

      '''simple docstring'''


      try:
            _A      =			int(__lowercase )
      except (TypeError, ValueError):
            raise TypeError("Parameter n must be int or castable to int." )
      if n <= 0:
            raise ValueError("Parameter n must be greater than or equal to one." )
      _A      =			0
      if is_prime(__lowercase ):
            return n
      while n % 2 == 0:
            n //= 2
      if is_prime(__lowercase ):
            return n
      for i in range(3     ,						int(math.sqrt(__lowercase ) ) + 1     ,						2 ):
            if n % i == 0:
                  if is_prime(n // i ):
                        _A      =			n // i
                        break
                  elif is_prime(__lowercase ):
                        _A      =			i
      return max_number


if __name__ == "__main__":
    print(F"""{solution() = }""")





