






from dataclasses import dataclass
from enum import Enum
from typing import List, Optional, Union

import numpy as np
import PIL
from PIL import Image

from ...utils import BaseOutput, is_torch_available, is_transformers_available





@dataclass
class     __a						(					A__ ):
 _lowerCAmelCase : Union[str, Any] 				=				{
     '''sld_warmup_steps''': 1_5,
     '''sld_guidance_scale''': 2_0,
     '''sld_threshold''': 0.0,
     '''sld_momentum_scale''': 0.0,
     '''sld_mom_beta''': 0.0,
 }
 _lowerCAmelCase : int 				=				{
     '''sld_warmup_steps''': 1_0,
     '''sld_guidance_scale''': 1_0_0_0,
     '''sld_threshold''': 0.0_1,
     '''sld_momentum_scale''': 0.3,
     '''sld_mom_beta''': 0.4,
 }
 _lowerCAmelCase : Any 				=				{
     '''sld_warmup_steps''': 7,
     '''sld_guidance_scale''': 2_0_0_0,
     '''sld_threshold''': 0.0_2_5,
     '''sld_momentum_scale''': 0.5,
     '''sld_mom_beta''': 0.7,
 }
 _lowerCAmelCase : int 				=				{
     '''sld_warmup_steps''': 0,
     '''sld_guidance_scale''': 5_0_0_0,
     '''sld_threshold''': 1.0,
     '''sld_momentum_scale''': 0.5,
     '''sld_mom_beta''': 0.7,
 }







@dataclass
class     __a						(					A__ ):
 _lowerCAmelCase : Union[List[PIL.Image.Image], np.ndarray]
 _lowerCAmelCase : Optional[List[bool]]
 _lowerCAmelCase : Optional[Union[List[PIL.Image.Image], np.ndarray]]
 _lowerCAmelCase : Optional[str]


if is_transformers_available() and is_torch_available():
 from .pipeline_stable_diffusion_safe import StableDiffusionPipelineSafe
 from .safety_checker import SafeStableDiffusionSafetyChecker







def 	SCREAMING_SNAKE_CASE							(      __lowerCAmelCase    )				->			str:
     return "".join(chr(ord(__lowerCAmelCase    ) + 32    ) if "A" <= char <= "Z" else char for char in word    )


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

 testmod()