




def       _a (		SCREAMING_SNAKE_CASE_				:							list	):
					__lowerCAmelCase							  =			len(SCREAMING_SNAKE_CASE_	)

					# Set the gap value to be decreased by a factor of 1.3
					# after each iteration
					__lowerCAmelCase							  =			1.3

					# Continue sorting until the gap is 1
					while gap > 1:
										# Decrease the gap value
										__lowerCAmelCase							  =			int(gap / shrink	)

										# Sort the elements using insertion sort
										for i in range(SCREAMING_SNAKE_CASE_ , len(SCREAMING_SNAKE_CASE_	)	):
															__lowerCAmelCase							  =			collection[i]
															__lowerCAmelCase							  =			i
															while j >= gap and collection[j - gap] > temp:
																				__lowerCAmelCase							  =			collection[j - gap]
																				j -= gap
															__lowerCAmelCase							  =			temp

					return collection


if __name__ == "__main__":
					import doctest

					doctest.testmod()










from typing import TYPE_CHECKING

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


UpperCamelCase__            =     {"""configuration_vit_hybrid""": ["""VIT_HYBRID_PRETRAINED_CONFIG_ARCHIVE_MAP""", """ViTHybridConfig"""]}

try:
					if not is_torch_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					UpperCamelCase__            =     [
					    """VIT_HYBRID_PRETRAINED_MODEL_ARCHIVE_LIST""",
					    """ViTHybridForImageClassification""",
					    """ViTHybridModel""",
					    """ViTHybridPreTrainedModel""",
					]

try:
					if not is_vision_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					UpperCamelCase__            =     ["""ViTHybridImageProcessor"""]


if TYPE_CHECKING:
					from .configuration_vit_hybrid import VIT_HYBRID_PRETRAINED_CONFIG_ARCHIVE_MAP, ViTHybridConfig

					try:
										if not is_torch_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .modeling_vit_hybrid import (
										    VIT_HYBRID_PRETRAINED_MODEL_ARCHIVE_LIST,
										    ViTHybridForImageClassification,
										    ViTHybridModel,
										    ViTHybridPreTrainedModel,
										)

					try:
										if not is_vision_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .image_processing_vit_hybrid import ViTHybridImageProcessor


else:
					import sys

					UpperCamelCase__            =     _LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)




