



import argparse

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


logging.set_verbosity_info()

def       A_   (						__a  :					List[str]			,		__a  :					Optional[Any]		):

				"""simple docstring"""
				# Initialize PyTorch model
				a__					   =		CanineConfig()
				a__					   =		CanineModel(__a		)
				model.eval()

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

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

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

				# Save tokenizer files
				a__					   =		CanineTokenizer()
				print(F'''Save tokenizer files to {pytorch_dump_path}'''		)
				tokenizer.save_pretrained(__a		)


if __name__ == "__main__":
	UpperCAmelCase							=       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.""",
	)
	UpperCAmelCase							=       parser.parse_args()
	convert_tf_checkpoint_to_pytorch(args.tf_checkpoint_path, args.pytorch_dump_path)








'''simple docstring'''






def 				_lowerCamelCase(	UpperCamelCase__     :			int = 1_000		)		->	int:
    A							:							Optional[Any]				=    [0, 3, 3, 5, 4, 4, 3, 5, 5, 4, 3, 6, 6, 8, 8, 7, 7, 9, 8, 8]
    # number of letters in twenty, thirty, ..., ninety (0 for numbers less than
    # 20 due to inconsistency in teens)
    A							:							Tuple				=    [0, 0, 6, 6, 5, 5, 5, 7, 6, 6]

    A							:							str				=    0

    for i in range(1     ,							n + 1		):
        if i < 1_000:
            if i >= 100:
                # add number of letters for "n hundred"
                count += ones_counts[i // 100] + 7

                if i % 100 != 0:
                    # add number of letters for "and" if number is not multiple
                    # of 100
                    count += 3

            if 0 < i % 100 < 20:
                # add number of letters for one, two, three, ..., nineteen
                # (could be combined with below if not for inconsistency in
                # teens)
                count += ones_counts[i % 100]
            else:
                # add number of letters for twenty, twenty one, ..., ninety
                # nine
                count += ones_counts[i % 10]
                count += tens_counts[(i % 100 - i % 10) // 10]
        else:
            count += ones_counts[i // 1_000] + 8
    return count


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