

'''simple docstring'''

import argparse

import torch

from transformers import OpenAIGPTConfig, OpenAIGPTModel, load_tf_weights_in_openai_gpt
from transformers.utils import CONFIG_NAME, WEIGHTS_NAME, logging


logging.set_verbosity_info()

def 					__UpperCamelCase				(						lowercase__    :	str,       lowercase__    :	Tuple,       lowercase__    :	List[str]			):






     '''simple docstring'''





     if openai_config_file == "":
          __lowercase      		=OpenAIGPTConfig()
     else:
          __lowercase      		=OpenAIGPTConfig.from_json_file(lowercase__			)
     __lowercase      		=OpenAIGPTModel(lowercase__			)

     # Load weights from numpy
     load_tf_weights_in_openai_gpt(lowercase__,       lowercase__,       lowercase__			)

     # Save pytorch-model
     __lowercase      		=pytorch_dump_folder_path + '/' + WEIGHTS_NAME
     __lowercase      		=pytorch_dump_folder_path + '/' + CONFIG_NAME
     print(F'''Save PyTorch model to {pytorch_weights_dump_path}'''			)
     torch.save(model.state_dict(),       lowercase__			)
     print(F'''Save configuration file to {pytorch_config_dump_path}'''			)
     with open(lowercase__,       'w',       encoding='utf-8'			) as f:
          f.write(config.to_json_string()			)


if __name__ == "__main__":
       UpperCAmelCase					 =	argparse.ArgumentParser()
       # Required parameters
       parser.add_argument(
           '''--openai_checkpoint_folder_path''',
           default=None,
           type=str,
           required=True,
           help='''Path to the TensorFlow checkpoint path.''',
       )
       parser.add_argument(
           '''--pytorch_dump_folder_path''', default=None, type=str, required=True, help='''Path to the output PyTorch model.'''
       )
       parser.add_argument(
           '''--openai_config_file''',
           default='''''',
           type=str,
           help=(
               '''An optional config json file corresponding to the pre-trained OpenAI model. \n'''
               '''This specifies the model architecture.'''
           ),
       )
       UpperCAmelCase					 =	parser.parse_args()
       convert_openai_checkpoint_to_pytorch(
           args.openai_checkpoint_folder_path, args.openai_config_file, args.pytorch_dump_folder_path
       )





'''simple docstring'''

from collections import defaultdict
from math import gcd

def 					__UpperCamelCase				(						lowercase__    :	int = 1_50_00_00			):






     '''simple docstring'''





     __lowercase      		=defaultdict(lowercase__			)
     __lowercase      		=2
     while 2 * euclid_m * (euclid_m + 1) <= limit:
          for euclid_n in range((euclid_m % 2) + 1,       lowercase__,       2			):
               if gcd(lowercase__,       lowercase__			) > 1:
                    continue
               __lowercase      		=2 * euclid_m * (euclid_m + euclid_n)
               for perimeter in range(lowercase__,       limit + 1,       lowercase__			):
                    frequencies[perimeter] += 1
          euclid_m += 1
     return sum(1 for frequency in frequencies.values() if frequency == 1			)


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


