'''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	:					Dict					=  logging.get_logger(__name__)

__SCREAMING_SNAKE_CASE	:					str					=  {
    """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      lowerCamelCase_     (snake_case__							,			snake_case__   ):
      '''simple docstring'''

      __UpperCamelCase:  Tuple      =						"convnext"




      def __init__(	self						:    Dict						, A						:    List[Any]=3						, A						:    Optional[Any]=4						, A						:    Union[str, Any]=4						, A						:    List[Any]=None						, A						:    str=None						, A						:    str="gelu"						, A						:    List[str]=0.02						, A						:    List[Any]=1E-12						, A						:    Optional[int]=1E-6						, A						:    Tuple=0.0						, A						:    int=224						, A						:    str=None						, A						:    Optional[Any]=None						, **A						:    Optional[Any]						, ):
             super().__init__(**A	)

             _UpperCAmelCase					:  Optional[int]											=   num_channels
             _UpperCAmelCase					:  Tuple											=   patch_size
             _UpperCAmelCase					:  Any											=   num_stages
             _UpperCAmelCase					:  Tuple											=   [96, 192, 384, 768] if hidden_sizes is None else hidden_sizes
             _UpperCAmelCase					:  Optional[Any]											=   [3, 3, 9, 3] if depths is None else depths
             _UpperCAmelCase					:  Dict											=   hidden_act
             _UpperCAmelCase					:  int											=   initializer_range
             _UpperCAmelCase					:  Optional[int]											=   layer_norm_eps
             _UpperCAmelCase					:  Tuple											=   layer_scale_init_value
             _UpperCAmelCase					:  Any											=   drop_path_rate
             _UpperCAmelCase					:  Optional[int]											=   image_size
             _UpperCAmelCase					:  Union[str, Any]											=   ["stem"] + [F"""stage{idx}""" for idx in range(1						, len(self.depths	) + 1	)]
             _UpperCAmelCase				,  _UpperCAmelCase					:  Any											=   get_aligned_output_features_output_indices(
                 out_features=A						, out_indices=A						, stage_names=self.stage_names	)

class      lowerCamelCase_     (snake_case__   ):
      '''simple docstring'''

      __UpperCamelCase:  Union[str, Any]      =						version.parse("1.11"   )




      @property
      def 					_A     (	self						:    str	):
             return OrderedDict(
                 [
                     ("pixel_values", {0: "batch", 1: "num_channels", 2: "height", 3: "width"}),
                 ]	)





      @property
      def 					_A     (	self						:    List[str]	):
             return 1E-5


'''simple docstring'''




def      UpperCamelCase_							( _UpperCAmelCase  :				int   )   ->   bool:


       """simple docstring"""







       _UpperCAmelCase					:  Optional[int]											=   9

       while num > 0:
              if num % 10 != digit:
                     return False
              num //= 100
              digit -= 1

       return True

def      UpperCamelCase_							( )   ->   int:


       """simple docstring"""







       _UpperCAmelCase					:  Optional[Any]											=   138_902_663

       while not is_square_form(num * num   ):
              if num % 10 == 3:
                     num -= 6  # (3 - 6) % 10 = 7
              else:
                     num -= 4  # (7 - 4) % 10 = 3

       return num * 10


if __name__ == "__main__":
  print(F'{solution() = }')

