



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


a_						:     int	     =		logging.get_logger(__name__)

a_						:     List[Any]	     =		{
    '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    lowerCamelCase__  (						UpperCAmelCase_       ,    UpperCAmelCase_):
     """simple docstring"""



     _A       =			'nat'

     _A       =			{
         'num_attention_heads': 'num_heads',
         'num_hidden_layers': 'num_layers',
     }







     def __init__(self				,			__a=4				,			__a=3				,			__a=64				,			__a=[3, 4, 6, 5]				,			__a=[2, 4, 8, 16]				,			__a=7				,			__a=3.0				,			__a=True				,			__a=0.0				,			__a=0.0				,			__a=0.1				,			__a="gelu"				,			__a=0.02				,			__a=1E-5				,			__a=0.0				,			__a=None				,			__a=None				,			**__a				,			):






           '''simple docstring'''



           super().__init__(**__a    )

           lowerCamelCase								=		patch_size
           lowerCamelCase								=		num_channels
           lowerCamelCase								=		embed_dim
           lowerCamelCase								=		depths
           lowerCamelCase								=		len(__a    )
           lowerCamelCase								=		num_heads
           lowerCamelCase								=		kernel_size
           lowerCamelCase								=		mlp_ratio
           lowerCamelCase								=		qkv_bias
           lowerCamelCase								=		hidden_dropout_prob
           lowerCamelCase								=		attention_probs_dropout_prob
           lowerCamelCase								=		drop_path_rate
           lowerCamelCase								=		hidden_act
           lowerCamelCase								=		layer_norm_eps
           lowerCamelCase								=		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
           lowerCamelCase								=		int(embed_dim * 2 ** (len(__a    ) - 1)    )
           lowerCamelCase								=		layer_scale_init_value
           lowerCamelCase								=		["stem"] + [F"""stage{idx}""" for idx in range(1				,			len(__a    ) + 1    )]
           lowerCamelCase			,							lowerCamelCase								=		get_aligned_output_features_output_indices(
               out_features=__a				,			out_indices=__a				,			stage_names=self.stage_names    )




from math import pi

def     __lowercase(	UpperCAmelCase__   ,   UpperCAmelCase__ ):


      """simple docstring"""



      return 2 * pi * radius * (angle / 360)


if __name__ == "__main__":
     print(arc_length(9_0, 1_0))