


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      lowerCamelCase	(  SCREAMING_SNAKE_CASE     ):
       _UpperCamelCase    		=      {
           """sld_warmup_steps""": 15,
           """sld_guidance_scale""": 20,
           """sld_threshold""": 0.0,
           """sld_momentum_scale""": 0.0,
           """sld_mom_beta""": 0.0,
       }
       _UpperCamelCase    		=      {
           """sld_warmup_steps""": 10,
           """sld_guidance_scale""": 1000,
           """sld_threshold""": 0.01,
           """sld_momentum_scale""": 0.3,
           """sld_mom_beta""": 0.4,
       }
       _UpperCamelCase    		=      {
           """sld_warmup_steps""": 7,
           """sld_guidance_scale""": 2000,
           """sld_threshold""": 0.025,
           """sld_momentum_scale""": 0.5,
           """sld_mom_beta""": 0.7,
       }
       _UpperCamelCase    		=      {
           """sld_warmup_steps""": 0,
           """sld_guidance_scale""": 5000,
           """sld_threshold""": 1.0,
           """sld_momentum_scale""": 0.5,
           """sld_mom_beta""": 0.7,
       }

@dataclass
class      lowerCamelCase	(  SCREAMING_SNAKE_CASE     ):
       _UpperCamelCase    		=      42
       _UpperCamelCase    		=      42
       _UpperCamelCase    		=      42
       _UpperCamelCase    		=      42


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










from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available, is_vision_available


a				:							List[str]					=			{
    'configuration_donut_swin': ['DONUT_SWIN_PRETRAINED_CONFIG_ARCHIVE_MAP', 'DonutSwinConfig'],
    'processing_donut': ['DonutProcessor'],
}

try:
  if not is_torch_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  a				:							Dict					=			[
      'DONUT_SWIN_PRETRAINED_MODEL_ARCHIVE_LIST',
      'DonutSwinModel',
      'DonutSwinPreTrainedModel',
  ]

try:
  if not is_vision_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  a				:							Any					=			['DonutFeatureExtractor']
  a				:							Dict					=			['DonutImageProcessor']


if TYPE_CHECKING:
  from .configuration_donut_swin import DONUT_SWIN_PRETRAINED_CONFIG_ARCHIVE_MAP, DonutSwinConfig
  from .processing_donut import DonutProcessor

  try:
    if not is_torch_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_donut_swin import (
        DONUT_SWIN_PRETRAINED_MODEL_ARCHIVE_LIST,
        DonutSwinModel,
        DonutSwinPreTrainedModel,
    )

  try:
    if not is_vision_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .feature_extraction_donut import DonutFeatureExtractor
    from .image_processing_donut import DonutImageProcessor

else:
  import sys

  a				:							Union[str, Any]					=			_LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)






