






from ..utils import (
    OptionalDependencyNotAvailable,
    is_flax_available,
    is_invisible_watermark_available,
    is_k_diffusion_available,
    is_librosa_available,
    is_note_seq_available,
    is_onnx_available,
    is_torch_available,
    is_transformers_available,
)


try:
  if not is_torch_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  from ..utils.dummy_pt_objects import *  # noqa F403
else:
  from .consistency_models import ConsistencyModelPipeline
  from .dance_diffusion import DanceDiffusionPipeline
  from .ddim import DDIMPipeline
  from .ddpm import DDPMPipeline
  from .dit import DiTPipeline
  from .latent_diffusion import LDMSuperResolutionPipeline
  from .latent_diffusion_uncond import LDMPipeline
  from .pipeline_utils import AudioPipelineOutput, DiffusionPipeline, ImagePipelineOutput
  from .pndm import PNDMPipeline
  from .repaint import RePaintPipeline
  from .score_sde_ve import ScoreSdeVePipeline
  from .stochastic_karras_ve import KarrasVePipeline

try:
  if not (is_torch_available() and is_librosa_available()):
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  from ..utils.dummy_torch_and_librosa_objects import *  # noqa F403
else:
  from .audio_diffusion import AudioDiffusionPipeline, Mel

try:
  if not (is_torch_available() and is_transformers_available()):
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  from ..utils.dummy_torch_and_transformers_objects import *  # noqa F403
else:
  from .alt_diffusion import AltDiffusionImgaImgPipeline, AltDiffusionPipeline
  from .audioldm import AudioLDMPipeline
  from .controlnet import (
      StableDiffusionControlNetImgaImgPipeline,
      StableDiffusionControlNetInpaintPipeline,
      StableDiffusionControlNetPipeline,
  )
  from .deepfloyd_if import (
      IFImgaImgPipeline,
      IFImgaImgSuperResolutionPipeline,
      IFInpaintingPipeline,
      IFInpaintingSuperResolutionPipeline,
      IFPipeline,
      IFSuperResolutionPipeline,
  )
  from .kandinsky import (
      KandinskyImgaImgPipeline,
      KandinskyInpaintPipeline,
      KandinskyPipeline,
      KandinskyPriorPipeline,
  )
  from .kandinskya_a import (
      KandinskyVaaControlnetImgaImgPipeline,
      KandinskyVaaControlnetPipeline,
      KandinskyVaaImgaImgPipeline,
      KandinskyVaaInpaintPipeline,
      KandinskyVaaPipeline,
      KandinskyVaaPriorEmbaEmbPipeline,
      KandinskyVaaPriorPipeline,
  )
  from .latent_diffusion import LDMTextToImagePipeline
  from .paint_by_example import PaintByExamplePipeline
  from .semantic_stable_diffusion import SemanticStableDiffusionPipeline
  from .shap_e import ShapEImgaImgPipeline, ShapEPipeline
  from .stable_diffusion import (
      CycleDiffusionPipeline,
      StableDiffusionAttendAndExcitePipeline,
      StableDiffusionDepthaImgPipeline,
      StableDiffusionDiffEditPipeline,
      StableDiffusionImageVariationPipeline,
      StableDiffusionImgaImgPipeline,
      StableDiffusionInpaintPipeline,
      StableDiffusionInpaintPipelineLegacy,
      StableDiffusionInstructPixaPixPipeline,
      StableDiffusionLatentUpscalePipeline,
      StableDiffusionLDMaDPipeline,
      StableDiffusionModelEditingPipeline,
      StableDiffusionPanoramaPipeline,
      StableDiffusionParadigmsPipeline,
      StableDiffusionPipeline,
      StableDiffusionPixaPixZeroPipeline,
      StableDiffusionSAGPipeline,
      StableDiffusionUpscalePipeline,
      StableUnCLIPImgaImgPipeline,
      StableUnCLIPPipeline,
  )
  from .stable_diffusion_safe import StableDiffusionPipelineSafe
  from .text_to_video_synthesis import TextToVideoSDPipeline, TextToVideoZeroPipeline, VideoToVideoSDPipeline
  from .unclip import UnCLIPImageVariationPipeline, UnCLIPPipeline
  from .unidiffuser import ImageTextPipelineOutput, UniDiffuserModel, UniDiffuserPipeline, UniDiffuserTextDecoder
  from .versatile_diffusion import (
      VersatileDiffusionDualGuidedPipeline,
      VersatileDiffusionImageVariationPipeline,
      VersatileDiffusionPipeline,
      VersatileDiffusionTextToImagePipeline,
  )
  from .vq_diffusion import VQDiffusionPipeline


try:
  if not (is_torch_available() and is_transformers_available() and is_invisible_watermark_available()):
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  from ..utils.dummy_torch_and_transformers_and_invisible_watermark_objects import *  # noqa F403
else:
  from .stable_diffusion_xl import StableDiffusionXLImgaImgPipeline, StableDiffusionXLPipeline

try:
  if not is_onnx_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  from ..utils.dummy_onnx_objects import *  # noqa F403
else:
  from .onnx_utils import OnnxRuntimeModel

try:
  if not (is_torch_available() and is_transformers_available() and is_onnx_available()):
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  from ..utils.dummy_torch_and_transformers_and_onnx_objects import *  # noqa F403
else:
  from .stable_diffusion import (
      OnnxStableDiffusionImgaImgPipeline,
      OnnxStableDiffusionInpaintPipeline,
      OnnxStableDiffusionInpaintPipelineLegacy,
      OnnxStableDiffusionPipeline,
      OnnxStableDiffusionUpscalePipeline,
      StableDiffusionOnnxPipeline,
  )

try:
  if not (is_torch_available() and is_transformers_available() and is_k_diffusion_available()):
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  from ..utils.dummy_torch_and_transformers_and_k_diffusion_objects import *  # noqa F403
else:
  from .stable_diffusion import StableDiffusionKDiffusionPipeline

try:
  if not is_flax_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  from ..utils.dummy_flax_objects import *  # noqa F403
else:
  from .pipeline_flax_utils import FlaxDiffusionPipeline


try:
  if not (is_flax_available() and is_transformers_available()):
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  from ..utils.dummy_flax_and_transformers_objects import *  # noqa F403
else:
  from .controlnet import FlaxStableDiffusionControlNetPipeline
  from .stable_diffusion import (
      FlaxStableDiffusionImgaImgPipeline,
      FlaxStableDiffusionInpaintPipeline,
      FlaxStableDiffusionPipeline,
  )
try:
  if not (is_transformers_available() and is_torch_available() and is_note_seq_available()):
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  from ..utils.dummy_transformers_and_torch_and_note_seq_objects import *  # noqa F403
else:
  from .spectrogram_diffusion import MidiProcessor, SpectrogramDiffusionPipeline












def      _SCREAMING_SNAKE_CASE  (	__lowercase				:     list[int]      )  -> list[int]:





    """simple docstring"""

    if len(__lowercase      ) > 1:
        __A             =		len(__lowercase      ) // 2  # Finds the middle of the array
        __A             =		arr[
            :middle_length
        ]  # Creates an array of the elements in the first half.
        __A             =		arr[
            middle_length:
        ]  # Creates an array of the elements in the second half.
        __A             =		len(__lowercase      )
        __A             =		len(__lowercase      )
        merge(__lowercase      )  # Starts sorting the left.
        merge(__lowercase      )  # Starts sorting the right
        __A             =		0  # Left Counter
        __A             =		0  # Right Counter
        __A             =		0  # Position Counter
        while (
            left_index < left_size and right_index < right_size
        ):  # Runs until the lowers size of the left and right are sorted.
            if left_array[left_index] < right_array[right_index]:
                __A             =		left_array[left_index]
                left_index += 1
            else:
                __A             =		right_array[right_index]
                right_index += 1
            index += 1
        while (
            left_index < left_size
        ):  # Adds the left over elements in the left half of the array
            __A             =		left_array[left_index]
            left_index += 1
            index += 1
        while (
            right_index < right_size
        ):  # Adds the left over elements in the right half of the array
            __A             =		right_array[right_index]
            right_index += 1
            index += 1
    return arr


if __name__ == "__main__":
  import doctest

  doctest.testmod()




