'''simple docstring'''




from collections import OrderedDict
from typing import Mapping

from ...configuration_utils import PretrainedConfig
from ...onnx import OnnxConfig
from ...utils import logging


__UpperCAmelCase												=	logging.get_logger(__name__)

__UpperCAmelCase												=	{
    'distilbert-base-uncased': 'https://huggingface.co/distilbert-base-uncased/resolve/main/config.json',
    'distilbert-base-uncased-distilled-squad': (
        'https://huggingface.co/distilbert-base-uncased-distilled-squad/resolve/main/config.json'
    ),
    'distilbert-base-cased': 'https://huggingface.co/distilbert-base-cased/resolve/main/config.json',
    'distilbert-base-cased-distilled-squad': (
        'https://huggingface.co/distilbert-base-cased-distilled-squad/resolve/main/config.json'
    ),
    'distilbert-base-german-cased': 'https://huggingface.co/distilbert-base-german-cased/resolve/main/config.json',
    'distilbert-base-multilingual-cased': (
        'https://huggingface.co/distilbert-base-multilingual-cased/resolve/main/config.json'
    ),
    'distilbert-base-uncased-finetuned-sst-2-english': (
        'https://huggingface.co/distilbert-base-uncased-finetuned-sst-2-english/resolve/main/config.json'
    ),
}




class    a__				(       UpperCamelCase__			):
     lowerCamelCase  :					Union[str, Any]							="distilbert"
     lowerCamelCase  :					Optional[Any]							={
         "hidden_size": "dim",
         "num_attention_heads": "n_heads",
         "num_hidden_layers": "n_layers",
     }






     def __init__(			self		:		Optional[int]  ,    a		:		str=3_05_22  ,    a		:		Union[str, Any]=5_12  ,    a		:		Union[str, Any]=False  ,    a		:		Tuple=6  ,    a		:		Dict=12  ,    a		:		Dict=7_68  ,    a		:		str=4 * 7_68  ,    a		:		Tuple=0.1  ,    a		:		int=0.1  ,    a		:		Any="gelu"  ,    a		:		Tuple=0.02  ,    a		:		List[str]=0.1  ,    a		:		List[Any]=0.2  ,    a		:		Dict=0  ,    **a		:		Tuple  ,    ):





         """simple docstring"""



         __lowerCamelCase          =  vocab_size
         __lowerCamelCase          =  max_position_embeddings
         __lowerCamelCase          =  sinusoidal_pos_embds
         __lowerCamelCase          =  n_layers
         __lowerCamelCase          =  n_heads
         __lowerCamelCase          =  dim
         __lowerCamelCase          =  hidden_dim
         __lowerCamelCase          =  dropout
         __lowerCamelCase          =  attention_dropout
         __lowerCamelCase          =  activation
         __lowerCamelCase          =  initializer_range
         __lowerCamelCase          =  qa_dropout
         __lowerCamelCase          =  seq_classif_dropout
         super().__init__(**__lowerCamelCase  ,    pad_token_id=__lowerCamelCase   )




class    a__				(       UpperCamelCase__			):






     @property
     def        SCREAMING_SNAKE_CASE__       (			self		:		Optional[Any]   ):





         """simple docstring"""



         if self.task == "multiple-choice":
             __lowerCamelCase          =  {0: '''batch''', 1: '''choice''', 2: '''sequence'''}
         else:
             __lowerCamelCase          =  {0: '''batch''', 1: '''sequence'''}
         return OrderedDict(
             [
                 ('''input_ids''', dynamic_axis),
                 ('''attention_mask''', dynamic_axis),
             ]   )

'''simple docstring'''




from __future__ import annotations

from typing import Any






def __lowerCAmelCase			(							UpperCamelCase__    )     ->   None:
    create_state_space_tree(UpperCamelCase__    ,  []    ,  0    )






def __lowerCAmelCase			(							UpperCamelCase__    ,  UpperCamelCase__    ,  UpperCamelCase__    )     ->   None:

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

    create_state_space_tree(UpperCamelCase__    ,  UpperCamelCase__    ,  index + 1    )
    current_subsequence.append(sequence[index]    )
    create_state_space_tree(UpperCamelCase__    ,  UpperCamelCase__    ,  index + 1    )
    current_subsequence.pop()


if __name__ == "__main__":
  __UpperCAmelCase												=[3, 1, 2, 4]
  generate_all_subsequences(seq)

  seq.clear()
  seq.extend(["A", "B", "C"])
  generate_all_subsequences(seq)
