'''
    #################################################################################################################################################################################################
    # This code library is an adaptation of the original Transformers and was designed, developed and programmed by Sapiens Technology®.                                                            #
    # Any alteration and/or disclosure of this code without prior authorization is strictly prohibited and is subject to legal action that will be forwarded by the Sapiens Technology® legal team. #
    # This set of algorithms aims to download, train, fine-tune and/or infer large language models from various sources and slopes.                                                                 #
    #################################################################################################################################################################################################
'''
from typing import TYPE_CHECKING
from ...utils import (DIFFUSERS_SLOW_IMPORT, OptionalDependencyNotAvailable, _LazyModule, get_objects_from_module, is_flax_available, is_k_diffusion_available, is_k_diffusion_version,
is_onnx_available, is_torch_available, is_transformers_available, is_sapiens_transformers_version)
_dummy_objects = {}
_additional_imports = {}
_import_structure = {'pipeline_output': ['StableDiffusionPipelineOutput']}
if is_transformers_available() and is_flax_available(): _import_structure['pipeline_output'].extend(['FlaxStableDiffusionPipelineOutput'])
try:
    if not (is_transformers_available() and is_torch_available()): raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from ...utils import dummy_torch_and_transformers_objects
    _dummy_objects.update(get_objects_from_module(dummy_torch_and_transformers_objects))
else:
    _import_structure['clip_image_project_model'] = ['CLIPImageProjection']
    _import_structure['pipeline_cycle_diffusion'] = ['CycleDiffusionPipeline']
    _import_structure['pipeline_stable_diffusion'] = ['StableDiffusionPipeline']
    _import_structure['pipeline_stable_diffusion_attend_and_excite'] = ['StableDiffusionAttendAndExcitePipeline']
    _import_structure['pipeline_stable_diffusion_gligen'] = ['StableDiffusionGLIGENPipeline']
    _import_structure['pipeline_stable_diffusion_gligen_text_image'] = ['StableDiffusionGLIGENTextImagePipeline']
    _import_structure['pipeline_stable_diffusion_img2img'] = ['StableDiffusionImg2ImgPipeline']
    _import_structure['pipeline_stable_diffusion_inpaint'] = ['StableDiffusionInpaintPipeline']
    _import_structure['pipeline_stable_diffusion_inpaint_legacy'] = ['StableDiffusionInpaintPipelineLegacy']
    _import_structure['pipeline_stable_diffusion_instruct_pix2pix'] = ['StableDiffusionInstructPix2PixPipeline']
    _import_structure['pipeline_stable_diffusion_latent_upscale'] = ['StableDiffusionLatentUpscalePipeline']
    _import_structure['pipeline_stable_diffusion_model_editing'] = ['StableDiffusionModelEditingPipeline']
    _import_structure['pipeline_stable_diffusion_paradigms'] = ['StableDiffusionParadigmsPipeline']
    _import_structure['pipeline_stable_diffusion_upscale'] = ['StableDiffusionUpscalePipeline']
    _import_structure['pipeline_stable_unclip'] = ['StableUnCLIPPipeline']
    _import_structure['pipeline_stable_unclip_img2img'] = ['StableUnCLIPImg2ImgPipeline']
    _import_structure['safety_checker'] = ['StableDiffusionSafetyChecker']
    _import_structure['stable_unclip_image_normalizer'] = ['StableUnCLIPImageNormalizer']
try:
    if not (is_transformers_available() and is_torch_available() and is_sapiens_transformers_version('>=', '4.25.0')): raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from ...utils.dummy_torch_and_transformers_objects import StableDiffusionImageVariationPipeline
    _dummy_objects.update({'StableDiffusionImageVariationPipeline': StableDiffusionImageVariationPipeline})
else: _import_structure['pipeline_stable_diffusion_image_variation'] = ['StableDiffusionImageVariationPipeline']
try:
    if not (is_transformers_available() and is_torch_available() and is_sapiens_transformers_version('>=', '4.26.0')): raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from ...utils.dummy_torch_and_transformers_objects import StableDiffusionDepth2ImgPipeline
    _dummy_objects.update({'StableDiffusionDepth2ImgPipeline': StableDiffusionDepth2ImgPipeline})
else: _import_structure['pipeline_stable_diffusion_depth2img'] = ['StableDiffusionDepth2ImgPipeline']
try:
    if not (is_transformers_available() and is_onnx_available()): raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from ...utils import dummy_onnx_objects
    _dummy_objects.update(get_objects_from_module(dummy_onnx_objects))
else:
    _import_structure['pipeline_onnx_stable_diffusion'] = ['OnnxStableDiffusionPipeline', 'StableDiffusionOnnxPipeline']
    _import_structure['pipeline_onnx_stable_diffusion_img2img'] = ['OnnxStableDiffusionImg2ImgPipeline']
    _import_structure['pipeline_onnx_stable_diffusion_inpaint'] = ['OnnxStableDiffusionInpaintPipeline']
    _import_structure['pipeline_onnx_stable_diffusion_inpaint_legacy'] = ['OnnxStableDiffusionInpaintPipelineLegacy']
    _import_structure['pipeline_onnx_stable_diffusion_upscale'] = ['OnnxStableDiffusionUpscalePipeline']
if is_transformers_available() and is_flax_available():
    from ...schedulers.scheduling_pndm_flax import PNDMSchedulerState
    _additional_imports.update({'PNDMSchedulerState': PNDMSchedulerState})
    _import_structure['pipeline_flax_stable_diffusion'] = ['FlaxStableDiffusionPipeline']
    _import_structure['pipeline_flax_stable_diffusion_img2img'] = ['FlaxStableDiffusionImg2ImgPipeline']
    _import_structure['pipeline_flax_stable_diffusion_inpaint'] = ['FlaxStableDiffusionInpaintPipeline']
    _import_structure['safety_checker_flax'] = ['FlaxStableDiffusionSafetyChecker']
if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT:
    try:
        if not (is_transformers_available() and is_torch_available()): raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable: from ...utils.dummy_torch_and_transformers_objects import *
    else:
        from .clip_image_project_model import CLIPImageProjection
        from .pipeline_stable_diffusion import StableDiffusionPipeline, StableDiffusionPipelineOutput
        from .pipeline_stable_diffusion_img2img import StableDiffusionImg2ImgPipeline
        from .pipeline_stable_diffusion_inpaint import StableDiffusionInpaintPipeline
        from .pipeline_stable_diffusion_instruct_pix2pix import StableDiffusionInstructPix2PixPipeline
        from .pipeline_stable_diffusion_latent_upscale import StableDiffusionLatentUpscalePipeline
        from .pipeline_stable_diffusion_upscale import StableDiffusionUpscalePipeline
        from .pipeline_stable_unclip import StableUnCLIPPipeline
        from .pipeline_stable_unclip_img2img import StableUnCLIPImg2ImgPipeline
        from .safety_checker import StableDiffusionSafetyChecker
        from .stable_unclip_image_normalizer import StableUnCLIPImageNormalizer
    try:
        if not (is_transformers_available() and is_torch_available() and is_sapiens_transformers_version('>=', '4.25.0')): raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable: from ...utils.dummy_torch_and_transformers_objects import StableDiffusionImageVariationPipeline
    else: from .pipeline_stable_diffusion_image_variation import StableDiffusionImageVariationPipeline
    try:
        if not (is_transformers_available() and is_torch_available() and is_sapiens_transformers_version('>=', '4.26.0')): raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable: from ...utils.dummy_torch_and_transformers_objects import StableDiffusionDepth2ImgPipeline
    else: from .pipeline_stable_diffusion_depth2img import StableDiffusionDepth2ImgPipeline
    try:
        if not (is_transformers_available() and is_onnx_available()): raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable: from ...utils.dummy_onnx_objects import *
    else:
        from .pipeline_onnx_stable_diffusion import OnnxStableDiffusionPipeline, StableDiffusionOnnxPipeline
        from .pipeline_onnx_stable_diffusion_img2img import OnnxStableDiffusionImg2ImgPipeline
        from .pipeline_onnx_stable_diffusion_inpaint import OnnxStableDiffusionInpaintPipeline
        from .pipeline_onnx_stable_diffusion_upscale import OnnxStableDiffusionUpscalePipeline
    try:
        if not (is_transformers_available() and is_flax_available()): raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable: from ...utils.dummy_flax_objects import *
    else:
        from .pipeline_flax_stable_diffusion import FlaxStableDiffusionPipeline
        from .pipeline_flax_stable_diffusion_img2img import FlaxStableDiffusionImg2ImgPipeline
        from .pipeline_flax_stable_diffusion_inpaint import FlaxStableDiffusionInpaintPipeline
        from .pipeline_output import FlaxStableDiffusionPipelineOutput
        from .safety_checker_flax import FlaxStableDiffusionSafetyChecker
else:
    import sys
    sys.modules[__name__] = _LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)
    for name, value in _dummy_objects.items(): setattr(sys.modules[__name__], name, value)
    for name, value in _additional_imports.items(): setattr(sys.modules[__name__], name, value)
'''
    #################################################################################################################################################################################################
    # This code library is an adaptation of the original Transformers and was designed, developed and programmed by Sapiens Technology®.                                                            #
    # Any alteration and/or disclosure of this code without prior authorization is strictly prohibited and is subject to legal action that will be forwarded by the Sapiens Technology® legal team. #
    # This set of algorithms aims to download, train, fine-tune and/or infer large language models from various sources and slopes.                                                                 #
    #################################################################################################################################################################################################
'''
