
lowercase  :					Optional[Any]													=       "0.18.2"

from .configuration_utils import ConfigMixin
from .utils import (
    OptionalDependencyNotAvailable,
    is_flax_available,
    is_inflect_available,
    is_invisible_watermark_available,
    is_k_diffusion_available,
    is_k_diffusion_version,
    is_librosa_available,
    is_note_seq_available,
    is_onnx_available,
    is_scipy_available,
    is_torch_available,
    is_torchsde_available,
    is_transformers_available,
    is_transformers_version,
    is_unidecode_available,
    logging,
)


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

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		from .utils.dummy_pt_objects import *  # noqa F403
else:
		from .models import (
		    AutoencoderKL,
		    ControlNetModel,
		    ModelMixin,
		    PriorTransformer,
		    TaFilmDecoder,
		    TransformeraDModel,
		    UNetaDModel,
		    UNetaDConditionModel,
		    UNetaDModel,
		    UNetaDConditionModel,
		    VQModel,
		)
		from .optimization import (
		    get_constant_schedule,
		    get_constant_schedule_with_warmup,
		    get_cosine_schedule_with_warmup,
		    get_cosine_with_hard_restarts_schedule_with_warmup,
		    get_linear_schedule_with_warmup,
		    get_polynomial_decay_schedule_with_warmup,
		    get_scheduler,
		)
		from .pipelines import (
		    AudioPipelineOutput,
		    ConsistencyModelPipeline,
		    DanceDiffusionPipeline,
		    DDIMPipeline,
		    DDPMPipeline,
		    DiffusionPipeline,
		    DiTPipeline,
		    ImagePipelineOutput,
		    KarrasVePipeline,
		    LDMPipeline,
		    LDMSuperResolutionPipeline,
		    PNDMPipeline,
		    RePaintPipeline,
		    ScoreSdeVePipeline,
		)
		from .schedulers import (
		    CMStochasticIterativeScheduler,
		    DDIMInverseScheduler,
		    DDIMParallelScheduler,
		    DDIMScheduler,
		    DDPMParallelScheduler,
		    DDPMScheduler,
		    DEISMultistepScheduler,
		    DPMSolverMultistepInverseScheduler,
		    DPMSolverMultistepScheduler,
		    DPMSolverSinglestepScheduler,
		    EulerAncestralDiscreteScheduler,
		    EulerDiscreteScheduler,
		    HeunDiscreteScheduler,
		    IPNDMScheduler,
		    KarrasVeScheduler,
		    KDPMaAncestralDiscreteScheduler,
		    KDPMaDiscreteScheduler,
		    PNDMScheduler,
		    RePaintScheduler,
		    SchedulerMixin,
		    ScoreSdeVeScheduler,
		    UnCLIPScheduler,
		    UniPCMultistepScheduler,
		    VQDiffusionScheduler,
		)
		from .training_utils import EMAModel

try:
		if not (is_torch_available() and is_scipy_available()):
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		from .utils.dummy_torch_and_scipy_objects import *  # noqa F403
else:
		from .schedulers import LMSDiscreteScheduler

try:
		if not (is_torch_available() and is_torchsde_available()):
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		from .utils.dummy_torch_and_torchsde_objects import *  # noqa F403
else:
		from .schedulers import DPMSolverSDEScheduler

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 .pipelines import (
		    AltDiffusionImgaImgPipeline,
		    AltDiffusionPipeline,
		    AudioLDMPipeline,
		    CycleDiffusionPipeline,
		    IFImgaImgPipeline,
		    IFImgaImgSuperResolutionPipeline,
		    IFInpaintingPipeline,
		    IFInpaintingSuperResolutionPipeline,
		    IFPipeline,
		    IFSuperResolutionPipeline,
		    ImageTextPipelineOutput,
		    KandinskyImgaImgPipeline,
		    KandinskyInpaintPipeline,
		    KandinskyPipeline,
		    KandinskyPriorPipeline,
		    KandinskyVaaControlnetImgaImgPipeline,
		    KandinskyVaaControlnetPipeline,
		    KandinskyVaaImgaImgPipeline,
		    KandinskyVaaInpaintPipeline,
		    KandinskyVaaPipeline,
		    KandinskyVaaPriorEmbaEmbPipeline,
		    KandinskyVaaPriorPipeline,
		    LDMTextToImagePipeline,
		    PaintByExamplePipeline,
		    SemanticStableDiffusionPipeline,
		    ShapEImgaImgPipeline,
		    ShapEPipeline,
		    StableDiffusionAttendAndExcitePipeline,
		    StableDiffusionControlNetImgaImgPipeline,
		    StableDiffusionControlNetInpaintPipeline,
		    StableDiffusionControlNetPipeline,
		    StableDiffusionDepthaImgPipeline,
		    StableDiffusionDiffEditPipeline,
		    StableDiffusionImageVariationPipeline,
		    StableDiffusionImgaImgPipeline,
		    StableDiffusionInpaintPipeline,
		    StableDiffusionInpaintPipelineLegacy,
		    StableDiffusionInstructPixaPixPipeline,
		    StableDiffusionLatentUpscalePipeline,
		    StableDiffusionLDMaDPipeline,
		    StableDiffusionModelEditingPipeline,
		    StableDiffusionPanoramaPipeline,
		    StableDiffusionParadigmsPipeline,
		    StableDiffusionPipeline,
		    StableDiffusionPipelineSafe,
		    StableDiffusionPixaPixZeroPipeline,
		    StableDiffusionSAGPipeline,
		    StableDiffusionUpscalePipeline,
		    StableUnCLIPImgaImgPipeline,
		    StableUnCLIPPipeline,
		    TextToVideoSDPipeline,
		    TextToVideoZeroPipeline,
		    UnCLIPImageVariationPipeline,
		    UnCLIPPipeline,
		    UniDiffuserModel,
		    UniDiffuserPipeline,
		    UniDiffuserTextDecoder,
		    VersatileDiffusionDualGuidedPipeline,
		    VersatileDiffusionImageVariationPipeline,
		    VersatileDiffusionPipeline,
		    VersatileDiffusionTextToImagePipeline,
		    VideoToVideoSDPipeline,
		    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 .pipelines import StableDiffusionXLImgaImgPipeline, StableDiffusionXLPipeline

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 .pipelines import StableDiffusionKDiffusionPipeline

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 .pipelines import (
		    OnnxStableDiffusionImgaImgPipeline,
		    OnnxStableDiffusionInpaintPipeline,
		    OnnxStableDiffusionInpaintPipelineLegacy,
		    OnnxStableDiffusionPipeline,
		    OnnxStableDiffusionUpscalePipeline,
		    StableDiffusionOnnxPipeline,
		)

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 .pipelines import AudioDiffusionPipeline, Mel

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 .pipelines import SpectrogramDiffusionPipeline

try:
		if not is_flax_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		from .utils.dummy_flax_objects import *  # noqa F403
else:
		from .models.controlnet_flax import FlaxControlNetModel
		from .models.modeling_flax_utils import FlaxModelMixin
		from .models.unet_ad_condition_flax import FlaxUNetaDConditionModel
		from .models.vae_flax import FlaxAutoencoderKL
		from .pipelines import FlaxDiffusionPipeline
		from .schedulers import (
		    FlaxDDIMScheduler,
		    FlaxDDPMScheduler,
		    FlaxDPMSolverMultistepScheduler,
		    FlaxKarrasVeScheduler,
		    FlaxLMSDiscreteScheduler,
		    FlaxPNDMScheduler,
		    FlaxSchedulerMixin,
		    FlaxScoreSdeVeScheduler,
		)


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 .pipelines import (
		    FlaxStableDiffusionControlNetPipeline,
		    FlaxStableDiffusionImgaImgPipeline,
		    FlaxStableDiffusionInpaintPipeline,
		    FlaxStableDiffusionPipeline,
		)

try:
		if not (is_note_seq_available()):
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		from .utils.dummy_note_seq_objects import *  # noqa F403
else:
		from .pipelines import MidiProcessor





from collections.abc import Callable

import numpy as np

def 			_SCREAMING_SNAKE_CASE			(							lowercase	:       Callable	,							lowercase	:       float	,							lowercase	:       float	,							lowercase	:       float	,							lowercase	:       float     ):


      '''simple docstring'''



      lowerCamelCase_		     =    int(np.ceil((x_end - xa) / step_size     )     )
      lowerCamelCase_		     =    np.zeros((n + 1,)     )
      lowerCamelCase_		     =    ya
      lowerCamelCase_		     =    xa

      for k in range(lowercase     ):
            lowerCamelCase_		     =    y[k] + step_size * ode_func(lowercase	,							y[k]     )
            lowerCamelCase_		     =    y[k] + (
                (step_size / 2) * (ode_func(lowercase	,							y[k]     ) + ode_func(x + step_size	,							lowercase     ))
            )
            x += step_size

      return y


if __name__ == "__main__":
 import doctest

 doctest.testmod()



