



'''simple docstring'''



from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_tf_available,
    is_torch_available,
    is_vision_available,
)


lowerCAmelCase_  :							Optional[int]             =    {
    'configuration_convnext': ['CONVNEXT_PRETRAINED_CONFIG_ARCHIVE_MAP', 'ConvNextConfig', 'ConvNextOnnxConfig']
}

try:
							if not is_vision_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							lowerCAmelCase_  :							Union[str, Any]             =    ['ConvNextFeatureExtractor']
							lowerCAmelCase_  :							Any             =    ['ConvNextImageProcessor']

try:
							if not is_torch_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							lowerCAmelCase_  :							List[str]             =    [
							    'CONVNEXT_PRETRAINED_MODEL_ARCHIVE_LIST',
							    'ConvNextForImageClassification',
							    'ConvNextModel',
							    'ConvNextPreTrainedModel',
							    'ConvNextBackbone',
							]

try:
							if not is_tf_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							lowerCAmelCase_  :							Optional[int]             =    [
							    'TFConvNextForImageClassification',
							    'TFConvNextModel',
							    'TFConvNextPreTrainedModel',
							]

if TYPE_CHECKING:
							from .configuration_convnext import CONVNEXT_PRETRAINED_CONFIG_ARCHIVE_MAP, ConvNextConfig, ConvNextOnnxConfig

							try:
														if not is_vision_available():
																					raise OptionalDependencyNotAvailable()
							except OptionalDependencyNotAvailable:
														pass
							else:
														from .feature_extraction_convnext import ConvNextFeatureExtractor
														from .image_processing_convnext import ConvNextImageProcessor

							try:
														if not is_torch_available():
																					raise OptionalDependencyNotAvailable()
							except OptionalDependencyNotAvailable:
														pass
							else:
														from .modeling_convnext import (
														    CONVNEXT_PRETRAINED_MODEL_ARCHIVE_LIST,
														    ConvNextBackbone,
														    ConvNextForImageClassification,
														    ConvNextModel,
														    ConvNextPreTrainedModel,
														)

							try:
														if not is_tf_available():
																					raise OptionalDependencyNotAvailable()
							except OptionalDependencyNotAvailable:
														pass
							else:
														from .modeling_tf_convnext import TFConvNextForImageClassification, TFConvNextModel, TFConvNextPreTrainedModel


else:
							import sys

							lowerCAmelCase_  :							str             =    _LazyModule(__name__, globals()['__file__'], _import_structure)









'''simple docstring'''



def        UpperCAmelCase (    A	:					int					):
							if not isinstance(A       ,		A					):
														SCREAMING_SNAKE_CASE       :   List[str]         =      F"""Input value of [number={number}] must be an integer"""
														raise TypeError(A					)
							if number < 0:
														return False
							SCREAMING_SNAKE_CASE       :   List[str]         =      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()




