


"""simple docstring"""



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

import numpy as np
import PIL

from ...utils import BaseOutput, OptionalDependencyNotAvailable, is_torch_available, is_transformers_available
from .timesteps import (
    fastaa_timesteps,
    smartaa_timesteps,
    smartaa_timesteps,
    smartaaa_timesteps,
    smartaaa_timesteps,
    superaa_timesteps,
    superaa_timesteps,
    superaaa_timesteps,
)







@dataclass
class    __a						( __snake_case							):
				lowerCamelCase     :       Union[List[PIL.Image.Image], np.ndarray]
				lowerCamelCase     :       Optional[List[bool]]
				lowerCamelCase     :       Optional[List[bool]]


try:
		if not (is_transformers_available() and is_torch_available()):
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		from ...utils.dummy_torch_and_transformers_objects import *  # noqa F403
else:
		from .pipeline_if import IFPipeline
		from .pipeline_if_imgaimg import IFImgaImgPipeline
		from .pipeline_if_imgaimg_superresolution import IFImgaImgSuperResolutionPipeline
		from .pipeline_if_inpainting import IFInpaintingPipeline
		from .pipeline_if_inpainting_superresolution import IFInpaintingSuperResolutionPipeline
		from .pipeline_if_superresolution import IFSuperResolutionPipeline
		from .safety_checker import IFSafetyChecker
		from .watermark import IFWatermarker



"""simple docstring"""



from collections import OrderedDict
from typing import Mapping

from packaging import version

from ...configuration_utils import PretrainedConfig
from ...onnx import OnnxConfig
from ...utils import logging


lowercase_							=							logging.get_logger(__name__)

lowercase_							=							{
    'google/mobilenet_v2_1.4_224': 'https://huggingface.co/google/mobilenet_v2_1.4_224/resolve/main/config.json',
    'google/mobilenet_v2_1.0_224': 'https://huggingface.co/google/mobilenet_v2_1.0_224/resolve/main/config.json',
    'google/mobilenet_v2_0.75_160': 'https://huggingface.co/google/mobilenet_v2_0.75_160/resolve/main/config.json',
    'google/mobilenet_v2_0.35_96': 'https://huggingface.co/google/mobilenet_v2_0.35_96/resolve/main/config.json',
    # See all MobileNetV2 models at https://huggingface.co/models?filter=mobilenet_v2
}







class    __a						( __snake_case							):
				lowerCamelCase     :       List[Any]			       ='mobilenet_v2'







				def __init__( self      ,	UpperCAmelCase=3      ,	UpperCAmelCase=224      ,	UpperCAmelCase=1.0      ,	UpperCAmelCase=8      ,	UpperCAmelCase=8      ,	UpperCAmelCase=6      ,	UpperCAmelCase=32      ,	UpperCAmelCase=True      ,	UpperCAmelCase=True      ,	UpperCAmelCase="relu6"      ,	UpperCAmelCase=True      ,	UpperCAmelCase=0.8      ,	UpperCAmelCase=0.0_2      ,	UpperCAmelCase=0.0_0_1      ,	UpperCAmelCase=255      ,	**UpperCAmelCase      ,	):

					'''simple docstring'''






					super().__init__(**UpperCAmelCase   )

					if depth_multiplier <= 0:
						raise ValueError('''depth_multiplier must be greater than zero.'''   )

					lowerCAmelCase_      							=			num_channels
					lowerCAmelCase_      							=			image_size
					lowerCAmelCase_      							=			depth_multiplier
					lowerCAmelCase_      							=			depth_divisible_by
					lowerCAmelCase_      							=			min_depth
					lowerCAmelCase_      							=			expand_ratio
					lowerCAmelCase_      							=			output_stride
					lowerCAmelCase_      							=			first_layer_is_expansion
					lowerCAmelCase_      							=			finegrained_output
					lowerCAmelCase_      							=			hidden_act
					lowerCAmelCase_      							=			tf_padding
					lowerCAmelCase_      							=			classifier_dropout_prob
					lowerCAmelCase_      							=			initializer_range
					lowerCAmelCase_      							=			layer_norm_eps
					lowerCAmelCase_      							=			semantic_loss_ignore_index







class    __a						( __snake_case							):
				lowerCamelCase     :       Optional[int]			       =version.parse('1.11'							)







				@property
				def      lowerCamelCase_     ( self   ):

					'''simple docstring'''






					return OrderedDict([('''pixel_values''', {0: '''batch'''})]   )







				@property
				def      lowerCamelCase_     ( self   ):

					'''simple docstring'''






					if self.task == "image-classification":
						return OrderedDict([('''logits''', {0: '''batch'''})]   )
					else:
						return OrderedDict([('''last_hidden_state''', {0: '''batch'''}), ('''pooler_output''', {0: '''batch'''})]   )







				@property
				def      lowerCamelCase_     ( self   ):

					'''simple docstring'''






					return 1E-4