
from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tf_available, is_torch_available


UpperCAmelCase     				=			{'''configuration_cvt''': ['''CVT_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''CvtConfig''']}


try:
							if not is_torch_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							UpperCAmelCase     				=			[
							    '''CVT_PRETRAINED_MODEL_ARCHIVE_LIST''',
							    '''CvtForImageClassification''',
							    '''CvtModel''',
							    '''CvtPreTrainedModel''',
							]

try:
							if not is_tf_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							UpperCAmelCase     				=			[
							    '''TF_CVT_PRETRAINED_MODEL_ARCHIVE_LIST''',
							    '''TFCvtForImageClassification''',
							    '''TFCvtModel''',
							    '''TFCvtPreTrainedModel''',
							]

if TYPE_CHECKING:
							from .configuration_cvt import CVT_PRETRAINED_CONFIG_ARCHIVE_MAP, CvtConfig

							try:
														if not is_torch_available():
																					raise OptionalDependencyNotAvailable()
							except OptionalDependencyNotAvailable:
														pass
							else:
														from .modeling_cvt import (
														    CVT_PRETRAINED_MODEL_ARCHIVE_LIST,
														    CvtForImageClassification,
														    CvtModel,
														    CvtPreTrainedModel,
														)

							try:
														if not is_tf_available():
																					raise OptionalDependencyNotAvailable()
							except OptionalDependencyNotAvailable:
														pass
							else:
														from .modeling_tf_cvt import (
														    TF_CVT_PRETRAINED_MODEL_ARCHIVE_LIST,
														    TFCvtForImageClassification,
														    TFCvtModel,
														    TFCvtPreTrainedModel,
														)


else:
							import sys

							UpperCAmelCase     				=			_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)



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


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

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

