




'''simple docstring'''







import argparse

from transformers import CanineConfig, CanineModel, CanineTokenizer, load_tf_weights_in_canine
from transformers.utils import logging


logging.set_verbosity_info()






def 		_lowercase		(	lowercase_						,							lowercase_  ):



		'''simple docstring'''







		_snake_case	       =       CanineConfig()
		_snake_case	       =       CanineModel(lowercase_  )
		model.eval()

		print(f'''Building PyTorch model from configuration: {config}'''  )

		# Load weights from tf checkpoint
		load_tf_weights_in_canine(lowercase_						,							lowercase_						,							lowercase_  )

		# Save pytorch-model (weights and configuration)
		print(f'''Save PyTorch model to {pytorch_dump_path}'''  )
		model.save_pretrained(lowercase_  )

		# Save tokenizer files
		_snake_case	       =       CanineTokenizer()
		print(f'''Save tokenizer files to {pytorch_dump_path}'''  )
		tokenizer.save_pretrained(lowercase_  )


if __name__ == "__main__":
						_lowerCamelCase							:						Dict								=  argparse.ArgumentParser()
						# Required parameters
						parser.add_argument(
						    '--tf_checkpoint_path',
						    default=None,
						    type=str,
						    required=True,
						    help='Path to the TensorFlow checkpoint. Should end with model.ckpt',
						)
						parser.add_argument(
						    '--pytorch_dump_path',
						    default=None,
						    type=str,
						    required=True,
						    help='Path to a folder where the PyTorch model will be placed.',
						)
						_lowerCamelCase							:						Tuple								=  parser.parse_args()
						convert_tf_checkpoint_to_pytorch(args.tf_checkpoint_path, args.pytorch_dump_path)











'''simple docstring'''







from __future__ import annotations

_lowerCamelCase							:						Union[str, Any]								=  {1: 1}






def 		_lowercase		(	lowercase_  ):



		'''simple docstring'''







		if n in COLLATZ_SEQUENCE_LENGTHS:
				return COLLATZ_SEQUENCE_LENGTHS[n]
		_snake_case	       =       n // 2 if n % 2 == 0 else 3 * n + 1
		_snake_case	       =       collatz_sequence_length(lowercase_  ) + 1
		_snake_case	       =       sequence_length
		return sequence_length






def 		_lowercase		(	lowercase_ = 1000000  ):



		'''simple docstring'''







		_snake_case	       =       max((collatz_sequence_length(lowercase_  ), i) for i in range(1						,							lowercase_  )  )
		return result[1]


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





