


'''simple docstring'''







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


SCREAMING_SNAKE_CASE_      =			logging.get_logger(__name__)

SCREAMING_SNAKE_CASE_      =			{
    'microsoft/biogpt': 'https://huggingface.co/microsoft/biogpt/resolve/main/config.json',
    # See all BioGPT models at https://huggingface.co/models?filter=biogpt
}


class  lowerCAmelCase_						(       snake_case__      ):





  """simple docstring"""



  a_       :List[str]												="""biogpt"""

  def __init__(					self     :							Optional[int]				,							SCREAMING_SNAKE_CASE__     :							int=4_2_3_8_4				,							SCREAMING_SNAKE_CASE__     :							List[str]=1_0_2_4				,							SCREAMING_SNAKE_CASE__     :							Optional[Any]=2_4				,							SCREAMING_SNAKE_CASE__     :							str=1_6				,							SCREAMING_SNAKE_CASE__     :							Dict=4_0_9_6				,							SCREAMING_SNAKE_CASE__     :							Optional[Any]="gelu"				,							SCREAMING_SNAKE_CASE__     :							Any=0.1				,							SCREAMING_SNAKE_CASE__     :							List[str]=0.1				,							SCREAMING_SNAKE_CASE__     :							int=1_0_2_4				,							SCREAMING_SNAKE_CASE__     :							List[str]=0.0_2				,							SCREAMING_SNAKE_CASE__     :							Tuple=1E-12				,							SCREAMING_SNAKE_CASE__     :							Dict=True				,							SCREAMING_SNAKE_CASE__     :							List[str]=True				,							SCREAMING_SNAKE_CASE__     :							int=0.0				,							SCREAMING_SNAKE_CASE__     :							Any=0.0				,							SCREAMING_SNAKE_CASE__     :							int=1				,							SCREAMING_SNAKE_CASE__     :							Optional[int]=0				,							SCREAMING_SNAKE_CASE__     :							Tuple=2				,							**SCREAMING_SNAKE_CASE__     :							List[Any]				,							):





       '''simple docstring'''

       __a       =   vocab_size
       __a       =   max_position_embeddings
       __a       =   hidden_size
       __a       =   num_hidden_layers
       __a       =   num_attention_heads
       __a       =   intermediate_size
       __a       =   hidden_act
       __a       =   hidden_dropout_prob
       __a       =   attention_probs_dropout_prob
       __a       =   initializer_range
       __a       =   layer_norm_eps
       __a       =   scale_embedding
       __a       =   use_cache
       __a       =   layerdrop
       __a       =   activation_dropout
       super().__init__(pad_token_id=SCREAMING_SNAKE_CASE__				,							bos_token_id=SCREAMING_SNAKE_CASE__				,							eos_token_id=SCREAMING_SNAKE_CASE__				,							**SCREAMING_SNAKE_CASE__						)










'''simple docstring'''







def        __lowercase						(      __SCREAMING_SNAKE_CASE = 100_0000		)				->					int:
     """simple docstring"""




     __a       =   1
     __a       =   1
     __a       =   {1: 1}

     for inputa in range(2				,  __SCREAMING_SNAKE_CASE		):
          __a       =   0
          __a       =   inputa

          while True:
               if number in counters:
                    counter += counters[number]
                    break
               if number % 2 == 0:
                    number //= 2
                    counter += 1
               else:
                    __a       =   (3 * number) + 1
                    counter += 1

          if inputa not in counters:
               __a       =   counter

          if counter > pre_counter:
               __a       =   inputa
               __a       =   counter
     return largest_number


if __name__ == "__main__":
 print(solution(int(input().strip())))






