
"""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
from ...utils.backbone_utils import BackboneConfigMixin, get_aligned_output_features_output_indices


SCREAMING_SNAKE_CASE_  					= logging.get_logger(__name__)

SCREAMING_SNAKE_CASE_  					= {
    'facebook/convnext-tiny-224': 'https://huggingface.co/facebook/convnext-tiny-224/resolve/main/config.json',
    # See all ConvNeXT models at https://huggingface.co/models?filter=convnext
}






class      __a      (       lowerCAmelCase_					,						lowerCAmelCase_      ):
       _lowerCamelCase				:				Optional[int]   			=      'convnext'







       def __init__(       self				,lowerCamelCase_=3				,lowerCamelCase_=4				,lowerCamelCase_=4				,lowerCamelCase_=None				,lowerCamelCase_=None				,lowerCamelCase_="gelu"				,lowerCamelCase_=0.0_2				,lowerCamelCase_=1e-12				,lowerCamelCase_=1e-6				,lowerCamelCase_=0.0				,lowerCamelCase_=224				,lowerCamelCase_=None				,lowerCamelCase_=None				,**lowerCamelCase_				,):



          '''simple docstring'''

          super().__init__(**lowerCamelCase_		)

          _UpperCAmelCase 						=       num_channels
          _UpperCAmelCase 						=       patch_size
          _UpperCAmelCase 						=       num_stages
          _UpperCAmelCase 						=       [96, 192, 384, 768] if hidden_sizes is None else hidden_sizes
          _UpperCAmelCase 						=       [3, 3, 9, 3] if depths is None else depths
          _UpperCAmelCase 						=       hidden_act
          _UpperCAmelCase 						=       initializer_range
          _UpperCAmelCase 						=       layer_norm_eps
          _UpperCAmelCase 						=       layer_scale_init_value
          _UpperCAmelCase 						=       drop_path_rate
          _UpperCAmelCase 						=       image_size
          _UpperCAmelCase 						=       ["stem"] + [f'''stage{idx}''' for idx in range(1				,len(self.depths		) + 1		)]
          _UpperCAmelCase						,				_UpperCAmelCase 						=       get_aligned_output_features_output_indices(
              out_features=lowerCamelCase_				,out_indices=lowerCamelCase_				,stage_names=self.stage_names		)






class      __a      (       lowerCAmelCase_      ):
       _lowerCamelCase				:				int   			=      version.parse('1.11'      )







       @property
       def  _snake_case      (       self		):



          '''simple docstring'''

          return OrderedDict(
              [
                  ("pixel_values", {0: "batch", 1: "num_channels", 2: "height", 3: "width"}),
              ]		)







       @property
       def  _snake_case      (       self		):



          '''simple docstring'''

          return 1e-5



"""simple docstring"""







import warnings

from ...utils import logging
from .image_processing_mobilenet_va import MobileNetVaImageProcessor


SCREAMING_SNAKE_CASE_  					= logging.get_logger(__name__)






class      __a      (       lowerCAmelCase_      ):







       def __init__(       self				,*lowerCamelCase_				,**lowerCamelCase_		):



          '''simple docstring'''

          warnings.warn(
              "The class MobileNetV1FeatureExtractor is deprecated and will be removed in version 5 of Transformers."
              " Please use MobileNetV1ImageProcessor instead."				,lowerCamelCase_				,)
          super().__init__(*lowerCamelCase_				,**lowerCamelCase_		)

