





"""simple docstring"""




import torch

from transformers import PreTrainedModel

from .custom_configuration import CustomConfig, NoSuperInitConfig




class 			_lowerCamelCase	(      a      ):



      """simple docstring"""






      UpperCAmelCase_  : List[str]				      =CustomConfig







      def __init__(	self			,  UpperCAmelCase				)    ->				str:






        '''simple docstring'''






        super().__init__(UpperCAmelCase				)
        __snake_case				:			List[Any]            =    torch.nn.Linear(config.hidden_size			,  config.hidden_size				)







      def   UpperCAmelCase						(	self			,  UpperCAmelCase				)    ->				str:






        '''simple docstring'''






        return self.linear(UpperCAmelCase				)







      def   UpperCAmelCase						(	self			,  UpperCAmelCase				)    ->				Optional[int]:






        '''simple docstring'''






        pass




class 			_lowerCamelCase	(      a      ):



      """simple docstring"""






      UpperCAmelCase_  : Any				      =NoSuperInitConfig







      def __init__(	self			,  UpperCAmelCase				)    ->				Any:






        '''simple docstring'''






        super().__init__(UpperCAmelCase				)
        __snake_case				:			Optional[int]            =    torch.nn.Linear(config.attribute			,  config.attribute				)







      def   UpperCAmelCase						(	self			,  UpperCAmelCase				)    ->				Union[str, Any]:






        '''simple docstring'''






        return self.linear(UpperCAmelCase				)







      def   UpperCAmelCase						(	self			,  UpperCAmelCase				)    ->				int:






        '''simple docstring'''






        pass








def  lowerCAmelCase__(		lowercase    :      int = 10**6			)	->      int:

  if n <= 0:
    raise ValueError("Please enter an integer greater than 0"			)

  __snake_case				:			List[Any]            =    list(range(n + 1			)			)
  for number in range(2				,       n + 1			):
    if phi[number] == number:
      phi[number] -= 1
      for multiple in range(number * 2				,       n + 1				,       lowercase			):
        __snake_case				:			Optional[int]            =    (phi[multiple] // number) * (number - 1)

  __snake_case				:			List[Any]            =    1
  for number in range(1				,       n + 1			):
    if (answer / phi[answer]) < (number / phi[number]):
      __snake_case				:			List[str]            =    number

  return answer


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

