

import argparse

import torch

from transformers import RemBertConfig, RemBertModel, load_tf_weights_in_rembert
from transformers.utils import logging


logging.set_verbosity_info()
def  UpperCAmelCase__      ( UpperCAmelCase__,    UpperCAmelCase__,    UpperCAmelCase__			)     ->     int:
       # Initialise PyTorch model
       A_		   = RemBertConfig.from_json_file(_A			)
       print("""Building PyTorch model from configuration: {}""".format(str(_A			)			)			)
       A_		   = RemBertModel(_A			)

       # Load weights from tf checkpoint
       load_tf_weights_in_rembert(_A,    _A,    _A			)

       # Save pytorch-model
       print("""Save PyTorch model to {}""".format(_A			)			)
       torch.save(model.state_dict(),    _A			)


if __name__ == "__main__":
      __lowerCamelCase						    =      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(
          '''--rembert_config_file''',
          default=None,
          type=str,
          required=True,
          help=(
              '''The config json file corresponding to the pre-trained RemBERT 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						    =      parser.parse_args()
      convert_rembert_tf_checkpoint_to_pytorch(args.tf_checkpoint_path, args.rembert_config_file, args.pytorch_dump_path)



'''simple docstring'''







def  UpperCAmelCase__      ( UpperCAmelCase__ = 1_00			)     ->     int:
       A_		   = n * (n + 1) * (2 * n + 1) / 6
       A_		   = (n * (n + 1) / 2) ** 2
       return int(square_of_sum - sum_of_squares			)


if __name__ == "__main__":
      print(f"""{solution() = }""")
