
'''simple docstring'''







import random
import unittest

import torch

from diffusers import IFSuperResolutionPipeline
from diffusers.utils import floats_tensor
from diffusers.utils.import_utils import is_xformers_available
from diffusers.utils.testing_utils import skip_mps, torch_device

from ..pipeline_params import TEXT_GUIDED_IMAGE_VARIATION_BATCH_PARAMS, TEXT_GUIDED_IMAGE_VARIATION_PARAMS
from ..test_pipelines_common import PipelineTesterMixin
from . import IFPipelineTesterMixin
@skip_mps
class  SCREAMING_SNAKE_CASE__       (  __UpperCamelCase			,					__UpperCamelCase			,					unittest.TestCase   ):
	lowercase__	    =							IFSuperResolutionPipeline
	lowercase__	    =							TEXT_GUIDED_IMAGE_VARIATION_PARAMS - {"width", "height"}
	lowercase__	    =							TEXT_GUIDED_IMAGE_VARIATION_BATCH_PARAMS
	lowercase__	    =							PipelineTesterMixin.required_optional_params - {"latents"}
	def __lowerCamelCase    (				self			):



					'''simple docstring'''






					return self._get_superresolution_dummy_components()
	def __lowerCamelCase    (				self  ,    __UpperCamelCase  ,    __UpperCamelCase=0			):



					'''simple docstring'''






					if str(__UpperCamelCase			).startswith("""mps"""			):
									__a       :     int								=	torch.manual_seed(__UpperCamelCase			)
					else:
									__a       :     List[Any]								=	torch.Generator(device=__UpperCamelCase			).manual_seed(__UpperCamelCase			)

					__a       :     str								=	floats_tensor((1, 3, 32, 32)  ,    rng=random.Random(__UpperCamelCase			)			).to(__UpperCamelCase			)

					__a       :     Optional[Any]								=	{
					    """prompt""": """A painting of a squirrel eating a burger""",
					    """image""": image,
					    """generator""": generator,
					    """num_inference_steps""": 2,
					    """output_type""": """numpy""",
					}

					return inputs
	@unittest.skipIf(
	    torch_device != """cuda""" or not is_xformers_available()  ,    reason="""XFormers attention is only available with CUDA and `xformers` installed"""  ,    )
	def __lowerCamelCase    (				self			):



					'''simple docstring'''






					self._test_xformers_attention_forwardGenerator_pass(expected_max_diff=1E-3			)
	def __lowerCamelCase    (				self			):



					'''simple docstring'''






					self._test_save_load_optional_components()
	@unittest.skipIf(torch_device != """cuda"""  ,    reason="""float16 requires CUDA"""			)
	def __lowerCamelCase    (				self			):



					'''simple docstring'''






					super().test_save_load_floataa(expected_max_diff=1E-1			)
	def __lowerCamelCase    (				self			):



					'''simple docstring'''






					self._test_attention_slicing_forward_pass(expected_max_diff=1E-2			)
	def __lowerCamelCase    (				self			):



					'''simple docstring'''






					self._test_save_load_local()

	def __lowerCamelCase    (				self			):



					'''simple docstring'''






					self._test_inference_batch_single_identical(
					    expected_max_diff=1E-2  ,    )

'''simple docstring'''







def 				_snake_case (		lowercase						)       ->       Tuple:
				__a       :     Union[str, Any]								=	[7_0_1, 3_0_1, 1_3_2, 5_7, 2_3, 1_0, 4, 1]
				for gap in gaps:
								for i in range(lowercase			,    len(lowercase						)						):
												__a       :     Tuple								=	collection[i]
												__a       :     Optional[int]								=	i
												while j >= gap and collection[j - gap] > insert_value:
																__a       :     Tuple								=	collection[j - gap]
																j -= gap
												if j != i:
																__a       :     Dict								=	insert_value
				return collection


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

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