
import argparse

import torch

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


logging.set_verbosity_info()


def     UpperCAmelCase_  (						__lowerCAmelCase	,					__lowerCAmelCase	,					__lowerCAmelCase	) ->						Optional[Any]:
    # Initialise PyTorch model
    __lowercase		:			List[str]	    =       BertConfig.from_json_file(__lowerCAmelCase	)
    print(F'Building PyTorch model from configuration: {config}'	)
    __lowercase		:			Optional[int]	    =       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__":
 __lowerCAmelCase					:			str			      =		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."
 )
 __lowerCAmelCase					:			Any			      =		parser.parse_args()
 convert_tf_checkpoint_to_pytorch(args.tf_checkpoint_path, args.bert_config_file, args.pytorch_dump_path)




from __future__ import annotations


def     UpperCAmelCase_  (						__lowerCAmelCase	) ->						int:
    if not nums:
        return 0
    __lowercase		:			List[Any]	    =       nums[0]
    __lowercase		:			Union[str, Any]	    =       0
    for num in nums[1:]:
        __lowercase    ,      __lowercase		:			Dict	    =       (
            max_excluding + num,
            max(__lowerCAmelCase	,					__lowerCAmelCase	),
        )
    return max(__lowerCAmelCase	,					__lowerCAmelCase	)


if __name__ == "__main__":
 import doctest

 doctest.testmod()


