


'''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


lowerCAmelCase				:Optional[int]        =      logging.get_logger(__name__)

lowerCAmelCase				:Any        =      {
    '''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 _lowerCamelCase	(						lowercase__							):



		'''simple docstring'''







		lowerCAmelCase     :      Optional[Any]				   =    """mobilenet_v2"""







		def __init__( self		:						Tuple  ,					_A		:						List[Any]=3  ,					_A		:						Union[str, Any]=224  ,					_A		:						int=1.0  ,					_A		:						int=8  ,					_A		:						Optional[Any]=8  ,					_A		:						Optional[int]=6  ,					_A		:						List[str]=32  ,					_A		:						Any=True  ,					_A		:						Tuple=True  ,					_A		:						Tuple="relu6"  ,					_A		:						Optional[int]=True  ,					_A		:						List[Any]=0.8  ,					_A		:						List[Any]=0.02  ,					_A		:						List[str]=0.001  ,					_A		:						List[str]=255  ,					**_A		:						List[Any]  ,					)  ->			Tuple:
			super().__init__(**_A      )

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

			__magic_name__	:   Dict					     =					num_channels
			__magic_name__	:   List[Any]					     =					image_size
			__magic_name__	:   List[str]					     =					depth_multiplier
			__magic_name__	:   str					     =					depth_divisible_by
			__magic_name__	:   Tuple					     =					min_depth
			__magic_name__	:   str					     =					expand_ratio
			__magic_name__	:   Optional[int]					     =					output_stride
			__magic_name__	:   Optional[int]					     =					first_layer_is_expansion
			__magic_name__	:   str					     =					finegrained_output
			__magic_name__	:   Union[str, Any]					     =					hidden_act
			__magic_name__	:   List[Any]					     =					tf_padding
			__magic_name__	:   int					     =					classifier_dropout_prob
			__magic_name__	:   List[Any]					     =					initializer_range
			__magic_name__	:   int					     =					layer_norm_eps
			__magic_name__	:   int					     =					semantic_loss_ignore_index







class _lowerCamelCase	(						lowercase__							):



		'''simple docstring'''







		lowerCAmelCase     :      int				   =    version.parse("""1.11"""							)







		@property
		def        __lowerCAmelCase		( self		:						Optional[Any]      )  ->			Mapping[str, Mapping[int, str]]:
			return OrderedDict([('pixel_values', {0: 'batch'})]      )







		@property
		def        __lowerCAmelCase		( self		:						str      )  ->			Mapping[str, Mapping[int, str]]:
			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		:						Dict      )  ->			float:
			return 1E-4



'''simple docstring'''

def lowerCamelCase      (      lowerCAmelCase    :     int		):





	"""simple docstring"""







	if not isinstance(lowerCAmelCase		,		lowerCAmelCase		):
		__magic_name__	:   int					     =					f'Input value of [number={number}] must be an integer'
		raise TypeError(lowerCAmelCase		)
	if number < 0:
		return False
	__magic_name__	:   Tuple					     =					number * number
	while number > 0:
		if number % 10 != number_square % 10:
			return False
		number //= 10
		number_square //= 10
	return True


if __name__ == "__main__":
							import doctest

							doctest.testmod()