

'''simple docstring'''

from ...configuration_utils import PretrainedConfig
from ...utils import logging
from ...utils.backbone_utils import BackboneConfigMixin, get_aligned_output_features_output_indices


A_       						=							logging.get_logger(__name__)

A_       						=							{
    "shi-labs/nat-mini-in1k-224": "https://huggingface.co/shi-labs/nat-mini-in1k-224/resolve/main/config.json",
    # See all Nat models at https://huggingface.co/models?filter=nat
}





class 							_snake_case (       _a	,  _a						):
   _A       :     Union[str, Any]       =					'''nat'''

   _A       :     Tuple       =					{
       '''num_attention_heads''': '''num_heads''',
       '''num_hidden_layers''': '''num_layers''',
   }
   def __init__( self			:      List[Any]     ,SCREAMING_SNAKE_CASE__			:      Union[str, Any]=4     ,SCREAMING_SNAKE_CASE__			:      Tuple=3     ,SCREAMING_SNAKE_CASE__			:      int=64     ,SCREAMING_SNAKE_CASE__			:      Optional[Any]=[3, 4, 6, 5]     ,SCREAMING_SNAKE_CASE__			:      Tuple=[2, 4, 8, 16]     ,SCREAMING_SNAKE_CASE__			:      List[str]=7     ,SCREAMING_SNAKE_CASE__			:      Union[str, Any]=3.0     ,SCREAMING_SNAKE_CASE__			:      Dict=True     ,SCREAMING_SNAKE_CASE__			:      List[str]=0.0     ,SCREAMING_SNAKE_CASE__			:      str=0.0     ,SCREAMING_SNAKE_CASE__			:      Optional[Any]=0.1     ,SCREAMING_SNAKE_CASE__			:      Union[str, Any]="gelu"     ,SCREAMING_SNAKE_CASE__			:      List[str]=0.02     ,SCREAMING_SNAKE_CASE__			:      Dict=1e-5     ,SCREAMING_SNAKE_CASE__			:      List[str]=0.0     ,SCREAMING_SNAKE_CASE__			:      Dict=None     ,SCREAMING_SNAKE_CASE__			:      List[Any]=None     ,**SCREAMING_SNAKE_CASE__			:      Any     ,):
     super().__init__(**SCREAMING_SNAKE_CASE__							)

     SCREAMING_SNAKE_CASE:Optional[int]						      =					patch_size
     SCREAMING_SNAKE_CASE:List[str]						      =					num_channels
     SCREAMING_SNAKE_CASE:Union[str, Any]						      =					embed_dim
     SCREAMING_SNAKE_CASE:Union[str, Any]						      =					depths
     SCREAMING_SNAKE_CASE:str						      =					len(SCREAMING_SNAKE_CASE__							)
     SCREAMING_SNAKE_CASE:Tuple						      =					num_heads
     SCREAMING_SNAKE_CASE:Optional[int]						      =					kernel_size
     SCREAMING_SNAKE_CASE:int						      =					mlp_ratio
     SCREAMING_SNAKE_CASE:Tuple						      =					qkv_bias
     SCREAMING_SNAKE_CASE:int						      =					hidden_dropout_prob
     SCREAMING_SNAKE_CASE:Union[str, Any]						      =					attention_probs_dropout_prob
     SCREAMING_SNAKE_CASE:int						      =					drop_path_rate
     SCREAMING_SNAKE_CASE:List[str]						      =					hidden_act
     SCREAMING_SNAKE_CASE:int						      =					layer_norm_eps
     SCREAMING_SNAKE_CASE:Any						      =					initializer_range
     # we set the hidden_size attribute in order to make Nat work with VisionEncoderDecoderModel
     # this indicates the channel dimension after the last stage of the model
     SCREAMING_SNAKE_CASE:Optional[int]						      =					int(embed_dim * 2 ** (len(SCREAMING_SNAKE_CASE__							) - 1)							)
     SCREAMING_SNAKE_CASE:str						      =					layer_scale_init_value
     SCREAMING_SNAKE_CASE:Optional[int]						      =					["stem"] + [F'''stage{idx}''' for idx in range(1     ,len(SCREAMING_SNAKE_CASE__							) + 1							)]
     SCREAMING_SNAKE_CASE      ,    SCREAMING_SNAKE_CASE:List[str]						      =					get_aligned_output_features_output_indices(
         out_features=SCREAMING_SNAKE_CASE__     ,out_indices=SCREAMING_SNAKE_CASE__     ,stage_names=self.stage_names							)









'''simple docstring'''

def    A_  ( snake_case = 100 ):
  SCREAMING_SNAKE_CASE:Dict						      =					0
  SCREAMING_SNAKE_CASE:Optional[int]						      =					0
  for i in range(1      ,       n + 1 ):
    sum_of_squares += i**2
    sum_of_ints += i
  return sum_of_ints**2 - sum_of_squares


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






