
'''simple docstring'''







import os
import shutil
import unittest
from unittest.mock import patch

from transformers.testing_utils import CaptureStd, is_pt_tf_cross_test, require_torch






class 					lowerCAmelCase__  (    unittest.TestCase	):






					@patch('''sys.argv'''							,				['''fakeprogrampath''', '''env''']						)
					def       _snake_case       (  self						):


											"""simple docstring"""





											import transformers.commands.transformers_cli

											with CaptureStd() as cs:
																	transformers.commands.transformers_cli.main()
											self.assertIn('''Python version'''							,				cs.out						)
											self.assertIn('''Platform'''							,				cs.out						)
											self.assertIn('''Using distributed or parallel set-up in script?'''							,				cs.out						)






					@is_pt_tf_cross_test
					@patch(
					    '''sys.argv'''							,				['''fakeprogrampath''', '''pt-to-tf''', '''--model-name''', '''hf-internal-testing/tiny-random-gptj''', '''--no-pr''']						)
					def       _snake_case       (  self						):


											"""simple docstring"""





											import transformers.commands.transformers_cli

											shutil.rmtree('''/tmp/hf-internal-testing/tiny-random-gptj'''							,				ignore_errors=__SCREAMING_SNAKE_CASE						)  # cleans potential past runs
											transformers.commands.transformers_cli.main()

											# The original repo has no TF weights -- if they exist, they were created by the CLI
											self.assertTrue(os.path.exists('''/tmp/hf-internal-testing/tiny-random-gptj/tf_model.h5'''						)						)






					@require_torch
					@patch('''sys.argv'''							,				['''fakeprogrampath''', '''download''', '''hf-internal-testing/tiny-random-gptj''', '''--cache-dir''', '''/tmp''']						)
					def       _snake_case       (  self						):


											"""simple docstring"""





											import transformers.commands.transformers_cli

											# # remove any previously downloaded model to start clean
											shutil.rmtree('''/tmp/models--hf-internal-testing--tiny-random-gptj'''							,				ignore_errors=__SCREAMING_SNAKE_CASE						)

											# run the command
											transformers.commands.transformers_cli.main()

											# check if the model files are downloaded correctly on /tmp/models--hf-internal-testing--tiny-random-gptj
											self.assertTrue(os.path.exists('''/tmp/models--hf-internal-testing--tiny-random-gptj/blobs'''						)						)
											self.assertTrue(os.path.exists('''/tmp/models--hf-internal-testing--tiny-random-gptj/refs'''						)						)
											self.assertTrue(os.path.exists('''/tmp/models--hf-internal-testing--tiny-random-gptj/snapshots'''						)						)






					@require_torch
					@patch(
					    '''sys.argv'''							,				[
					        '''fakeprogrampath''',
					        '''download''',
					        '''hf-internal-testing/test_dynamic_model_with_tokenizer''',
					        '''--trust-remote-code''',
					        '''--cache-dir''',
					        '''/tmp''',
					    ]							,				)
					def       _snake_case       (  self						):


											"""simple docstring"""





											import transformers.commands.transformers_cli

											# # remove any previously downloaded model to start clean
											shutil.rmtree('''/tmp/models--hf-internal-testing--test_dynamic_model_with_tokenizer'''							,				ignore_errors=__SCREAMING_SNAKE_CASE						)

											# run the command
											transformers.commands.transformers_cli.main()

											# check if the model files are downloaded correctly on /tmp/models--hf-internal-testing--test_dynamic_model_with_tokenizer
											self.assertTrue(os.path.exists('''/tmp/models--hf-internal-testing--test_dynamic_model_with_tokenizer/blobs'''						)						)
											self.assertTrue(os.path.exists('''/tmp/models--hf-internal-testing--test_dynamic_model_with_tokenizer/refs'''						)						)
											self.assertTrue(
											    os.path.exists('''/tmp/models--hf-internal-testing--test_dynamic_model_with_tokenizer/snapshots'''						)						)








"""simple docstring"""







def 	lowerCAmelCase__      (  lowerCamelCase__      )			->				List[str]:
							A    =       [701, 301, 132, 57, 23, 10, 4, 1]
							for gap in gaps:
														for i in range(lowerCamelCase__					,   len(lowerCamelCase__      )      ):
																					A    =       collection[i]
																					A    =       i
																					while j >= gap and collection[j - gap] > insert_value:
																												A    =       collection[j - gap]
																												j -= gap
																					if j != i:
																												A    =       insert_value
							return collection


if __name__ == "__main__":
							from doctest import testmod

							testmod()
							A     =      input('Enter numbers separated by a comma:\n').strip()
							A     =      [int(item) for item in user_input.split(',')]
							print(shell_sort(unsorted))



