


'''simple docstring'''







from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tf_available, is_torch_available


A__:    Optional[Any]					    =       {
    '''configuration_transfo_xl''': ['''TRANSFO_XL_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''TransfoXLConfig'''],
    '''tokenization_transfo_xl''': ['''TransfoXLCorpus''', '''TransfoXLTokenizer'''],
}

try:
   if not is_torch_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   A__:    str					    =       [
       '''TRANSFO_XL_PRETRAINED_MODEL_ARCHIVE_LIST''',
       '''AdaptiveEmbedding''',
       '''TransfoXLForSequenceClassification''',
       '''TransfoXLLMHeadModel''',
       '''TransfoXLModel''',
       '''TransfoXLPreTrainedModel''',
       '''load_tf_weights_in_transfo_xl''',
   ]

try:
   if not is_tf_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   A__:    List[Any]					    =       [
       '''TF_TRANSFO_XL_PRETRAINED_MODEL_ARCHIVE_LIST''',
       '''TFAdaptiveEmbedding''',
       '''TFTransfoXLForSequenceClassification''',
       '''TFTransfoXLLMHeadModel''',
       '''TFTransfoXLMainLayer''',
       '''TFTransfoXLModel''',
       '''TFTransfoXLPreTrainedModel''',
   ]


if TYPE_CHECKING:
   from .configuration_transfo_xl import TRANSFO_XL_PRETRAINED_CONFIG_ARCHIVE_MAP, TransfoXLConfig
   from .tokenization_transfo_xl import TransfoXLCorpus, TransfoXLTokenizer

   try:
      if not is_torch_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .modeling_transfo_xl import (
          TRANSFO_XL_PRETRAINED_MODEL_ARCHIVE_LIST,
          AdaptiveEmbedding,
          TransfoXLForSequenceClassification,
          TransfoXLLMHeadModel,
          TransfoXLModel,
          TransfoXLPreTrainedModel,
          load_tf_weights_in_transfo_xl,
      )

   try:
      if not is_tf_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .modeling_tf_transfo_xl import (
          TF_TRANSFO_XL_PRETRAINED_MODEL_ARCHIVE_LIST,
          TFAdaptiveEmbedding,
          TFTransfoXLForSequenceClassification,
          TFTransfoXLLMHeadModel,
          TFTransfoXLMainLayer,
          TFTransfoXLModel,
          TFTransfoXLPreTrainedModel,
      )

else:
   import sys

   A__:    Optional[int]					    =       _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)






'''simple docstring'''







A__:    Optional[int]					    =       [4, 1, 7, 4, 2, 6, 4, 1, 5, 3, 7, 5]
A__:    Any					    =       [3, 7, 7, 4, 2, 6, 4, 1, 5, 3, 7, 5]
A__:    int					    =       {
    0: '''Sunday''',
    1: '''Monday''',
    2: '''Tuesday''',
    3: '''Wednesday''',
    4: '''Thursday''',
    5: '''Friday''',
    6: '''Saturday''',
}


def 	SCREAMING_SNAKE_CASE_					(  _UpperCAmelCase	:	int    ,_UpperCAmelCase	:	int    ,_UpperCAmelCase	:	int  )  ->			str:
       assert len(str(_UpperCAmelCase  )  ) > 2, "year should be in YYYY format"
       assert 1 <= month <= 12, "month should be between 1 to 12"
       assert 1 <= day <= 31, "day should be between 1 to 31"

       # Doomsday algorithm:
       _a    : List[str]     					=year // 100
       _a    : List[str]     					=(5 * (century % 4) + 2) % 7
       _a    : Optional[int]     					=year % 100
       _a    : Any     					=centurian % 12
       _a    : int     					=(
           (centurian // 12) + centurian_m + (centurian_m // 4) + century_anchor
       ) % 7
       _a    : Optional[Any]     					=(
           DOOMSDAY_NOT_LEAP[month - 1]
           if (year % 4 != 0) or (centurian == 0 and (year % 400) == 0)
           else DOOMSDAY_LEAP[month - 1]
       )
       _a    : str     					=(dooms_day + day - day_anchor) % 7
       return WEEK_DAY_NAMES[week_day]


if __name__ == "__main__":
   import doctest

   doctest.testmod()


