'''simple docstring'''

from ...configuration_utils import PretrainedConfig
from ...utils import logging


A_     :						List[Any]    							=logging.get_logger(__name__)

A_     :						Union[str, Any]    							={'''openai-gpt''': '''https://huggingface.co/openai-gpt/resolve/main/config.json'''}


class     __UpperCAmelCase       ( __a		):
  __A :				Dict											= 'openai-gpt'
  __A :				Optional[int]											= {
      'max_position_embeddings': 'n_positions',
      'hidden_size': 'n_embd',
      'num_attention_heads': 'n_head',
      'num_hidden_layers': 'n_layer',
  }





  def __init__(	self    ,     _lowerCamelCase=4_0478    ,     _lowerCamelCase=512    ,     _lowerCamelCase=768    ,     _lowerCamelCase=12    ,     _lowerCamelCase=12    ,     _lowerCamelCase="gelu"    ,     _lowerCamelCase=0.1    ,     _lowerCamelCase=0.1    ,     _lowerCamelCase=0.1    ,     _lowerCamelCase=1E-5    ,     _lowerCamelCase=0.02    ,     _lowerCamelCase="cls_index"    ,     _lowerCamelCase=True    ,     _lowerCamelCase=None    ,     _lowerCamelCase=True    ,     _lowerCamelCase=0.1    ,     **_lowerCamelCase    ,     ):
     lowerCAmelCase_			=      vocab_size
     lowerCAmelCase_			=      n_positions
     lowerCAmelCase_			=      n_embd
     lowerCAmelCase_			=      n_layer
     lowerCAmelCase_			=      n_head
     lowerCAmelCase_			=      afn
     lowerCAmelCase_			=      resid_pdrop
     lowerCAmelCase_			=      embd_pdrop
     lowerCAmelCase_			=      attn_pdrop
     lowerCAmelCase_			=      layer_norm_epsilon
     lowerCAmelCase_			=      initializer_range
     lowerCAmelCase_			=      summary_type
     lowerCAmelCase_			=      summary_use_proj
     lowerCAmelCase_			=      summary_activation
     lowerCAmelCase_			=      summary_first_dropout
     lowerCAmelCase_			=      summary_proj_to_labels
     super().__init__(**_lowerCamelCase )






'''simple docstring'''

from __future__ import annotations



def snake_case_      (					__snake_case  :							list[int | str])			->					None:
   create_state_space_tree(__snake_case	,   []	,   0	,   [0 for i in range(len(__snake_case))])



def snake_case_      (					__snake_case  :							list[int | str]	,   __snake_case  :							list[int | str]	,   __snake_case  :							int	,   __snake_case  :							list[int]	,   )			->					None:

   if index == len(__snake_case):
      print(__snake_case)
      return

   for i in range(len(__snake_case)):
      if not index_used[i]:
         current_sequence.append(sequence[i])
         lowerCAmelCase_			=      True
         create_state_space_tree(__snake_case	,   __snake_case	,   index + 1	,   __snake_case)
         current_sequence.pop()
         lowerCAmelCase_			=      False
A_     :						list[int | str]    							=[3, 1, 2, 4]
generate_all_permutations(sequence)

A_     :						list[int | str]    							=["A", "B", "C"]






generate_all_permutations(sequence_a)





