


'''simple docstring'''





import argparse

import torch

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


logging.set_verbosity_info()


def 		lowercase_  (     _UpperCamelCase       ,			_UpperCamelCase       ,			_UpperCamelCase  ):


			'''simple docstring'''







			__lowercase 					=   RemBertConfig.from_json_file(_UpperCamelCase  )
			print('''Building PyTorch model from configuration: {}'''.format(str(_UpperCamelCase  )  )  )
			__lowercase 					=   RemBertModel(_UpperCamelCase  )

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

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


if __name__ == "__main__":
	a : Tuple		=				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.'''
	)
	a : Any		=				parser.parse_args()
	convert_rembert_tf_checkpoint_to_pytorch(args.tf_checkpoint_path, args.rembert_config_file, args.pytorch_dump_path)






from itertools import count


def 		lowercase_  (     _UpperCamelCase = 50  ):


			'''simple docstring'''







			__lowercase 					=   [1] * min_block_length

			for n in count(_UpperCamelCase  ):
						fill_count_functions.append(1  )

						for block_length in range(_UpperCamelCase       ,			n + 1  ):
									for block_start in range(n - block_length  ):
												fill_count_functions[n] += fill_count_functions[
												    n - block_start - block_length - 1
												]

									fill_count_functions[n] += 1

						if fill_count_functions[n] > 1_00_00_00:
									break

			return n


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


