





'''simple docstring'''





lowercase_		:				dict[str, float]				=						{
    "km/h": 1.0,
    "m/s": 3.6,
    "mph": 1.60_9344,
    "knot": 1.852,
}

lowercase_		:				dict[str, float]				=						{
    "km/h": 1.0,
    "m/s": 0.2_7777_7778,
    "mph": 0.6_2137_1192,
    "knot": 0.5_3995_6803,
}

def       A__(		__lowerCAmelCase	,			__lowerCAmelCase	,			__lowerCAmelCase ):







				if unit_to not in speed_chart or unit_from not in speed_chart_inverse:
								_snake_case :			Union[str, Any]  						=   (
								    F'''Incorrect \'from_type\' or \'to_type\' value: {unit_from!r}, {unit_to!r}\n'''
								    F'''Valid values are: {', '.join(__lowerCAmelCase )}'''
								)
								raise ValueError(__lowerCAmelCase )
				return round(speed * speed_chart[unit_from] * speed_chart_inverse[unit_to]	,			3 )


if __name__ == "__main__":
		import doctest

		doctest.testmod()













import argparse

import torch

from transformers import BertConfig, BertForPreTraining, load_tf_weights_in_bert
from transformers.utils import logging


logging.set_verbosity_info()

def       A__(		__lowerCAmelCase	,			__lowerCAmelCase	,			__lowerCAmelCase ):
				# Initialise PyTorch model
				_snake_case :			Optional[int]  						=   BertConfig.from_json_file(__lowerCAmelCase )
				print(F'''Building PyTorch model from configuration: {config}''' )
				_snake_case :			List[str]  						=   BertForPreTraining(__lowerCAmelCase )

				# Load weights from tf checkpoint
				load_tf_weights_in_bert(__lowerCAmelCase	,			__lowerCAmelCase	,			__lowerCAmelCase )

				# Save pytorch-model
				print(F'''Save PyTorch model to {pytorch_dump_path}''' )
				torch.save(model.state_dict()	,			__lowerCAmelCase )


if __name__ == "__main__":
		lowercase_		:				Any				=						argparse.ArgumentParser()
		# Required parameters
		parser.add_argument(
		    '''--tf_checkpoint_path''', default=None, type=str, required=True, help='''Path to the TensorFlow checkpoint path.'''
		)
		parser.add_argument(
		    '''--bert_config_file''',
		    default=None,
		    type=str,
		    required=True,
		    help=(
		        '''The config json file corresponding to the pre-trained BERT model. \n'''
		        '''This specifies the model architecture.'''
		    ),
		)
		parser.add_argument(
		    '''--pytorch_dump_path''', default=None, type=str, required=True, help='''Path to the output PyTorch model.'''
		)
		lowercase_		:				List[str]				=						parser.parse_args()
		convert_tf_checkpoint_to_pytorch(args.tf_checkpoint_path, args.bert_config_file, args.pytorch_dump_path)






