






import argparse
import datetime





def    __lowerCAmelCase   (    __snake_case							):
     __lowerCAmelCase             =       {
         "0": "Sunday",
         "1": "Monday",
         "2": "Tuesday",
         "3": "Wednesday",
         "4": "Thursday",
         "5": "Friday",
         "6": "Saturday",
     }

     __lowerCAmelCase             =       {0: 1, 1: 2, 2: 3, 3: 4, 4: 5, 5: 6, 6: 0}

     # Validate
     if not 0 < len(__snake_case							) < 11:
          raise ValueError("Must be 10 characters long"							)

     # Get month
     __lowerCAmelCase             =       int(date_input[0] + date_input[1]							)
     # Validate
     if not 0 < m < 13:
          raise ValueError("Month must be between 1 - 12"							)

     __lowerCAmelCase             =       date_input[2]
     # Validate
     if sep_a not in ["-", "/"]:
          raise ValueError("Date separator must be \'-\' or \'/\'"							)

     # Get day
     __lowerCAmelCase             =       int(date_input[3] + date_input[4]							)
     # Validate
     if not 0 < d < 32:
          raise ValueError("Date must be between 1 - 31"							)

     # Get second separator
     __lowerCAmelCase             =       date_input[5]
     # Validate
     if sep_a not in ["-", "/"]:
          raise ValueError("Date separator must be \'-\' or \'/\'"							)

     # Get year
     __lowerCAmelCase             =       int(date_input[6] + date_input[7] + date_input[8] + date_input[9]							)
     # Arbitrary year range
     if not 45 < y < 8500:
          raise ValueError(
              "Year out of range. There has to be some sort of limit...right?"							)

     # Get datetime obj for validation
     __lowerCAmelCase             =       datetime.date(int(__snake_case							)       ,			int(__snake_case							)       ,			int(__snake_case							)							)

     # Start math
     if m <= 2:
          __lowerCAmelCase             =       y - 1
          __lowerCAmelCase             =       m + 12
     # maths var
     __lowerCAmelCase             =       int(str(__snake_case							)[:2]							)
     __lowerCAmelCase             =       int(str(__snake_case							)[2:]							)
     __lowerCAmelCase             =       int(2.6 * m - 5.39							)
     __lowerCAmelCase             =       int(c / 4							)
     __lowerCAmelCase             =       int(k / 4							)
     __lowerCAmelCase             =       int(d + k							)
     __lowerCAmelCase             =       int(t + u + v + x							)
     __lowerCAmelCase             =       int(z - (2 * c)							)
     __lowerCAmelCase             =       round(w % 7							)
     # End math

     # Validate math
     if f != convert_datetime_days[dt_ck.weekday()]:
          raise AssertionError("The date was evaluated incorrectly. Contact developer."							)

     # Response
     __lowerCAmelCase             =       F"""Your date {date_input}, is a {days[str(__snake_case							)]}!"""
     return response


if __name__ == "__main__":
 import doctest

 doctest.testmod()
 lowerCamelCase      :       Dict    =						argparse.ArgumentParser(
     description=(
         '''Find out what day of the week nearly any date is or was. Enter '''
         '''date as a string in the mm-dd-yyyy or mm/dd/yyyy format'''
     )
 )
 parser.add_argument(
     '''date_input''', type=str, help='''Date as a string (mm-dd-yyyy or mm/dd/yyyy)'''
 )
 lowerCamelCase      :       Any    =						parser.parse_args()
 zeller(args.date_input)







'''simple docstring'''






from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_tokenizers_available,
    is_torch_available,
    is_vision_available,
)


_UpperCAmelCase    :     List[Any]         =       {
    '''configuration_layoutlmv2''': ['''LAYOUTLMV2_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''LayoutLMv2Config'''],
    '''processing_layoutlmv2''': ['''LayoutLMv2Processor'''],
    '''tokenization_layoutlmv2''': ['''LayoutLMv2Tokenizer'''],
}

try:
   if not is_tokenizers_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   _UpperCAmelCase    :     str         =       ['''LayoutLMv2TokenizerFast''']

try:
   if not is_vision_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   _UpperCAmelCase    :     int         =       ['''LayoutLMv2FeatureExtractor''']
   _UpperCAmelCase    :     str         =       ['''LayoutLMv2ImageProcessor''']

try:
   if not is_torch_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   _UpperCAmelCase    :     int         =       [
       '''LAYOUTLMV2_PRETRAINED_MODEL_ARCHIVE_LIST''',
       '''LayoutLMv2ForQuestionAnswering''',
       '''LayoutLMv2ForSequenceClassification''',
       '''LayoutLMv2ForTokenClassification''',
       '''LayoutLMv2Layer''',
       '''LayoutLMv2Model''',
       '''LayoutLMv2PreTrainedModel''',
   ]

if TYPE_CHECKING:
   from .configuration_layoutlmva import LAYOUTLMV2_PRETRAINED_CONFIG_ARCHIVE_MAP, LayoutLMvaConfig
   from .processing_layoutlmva import LayoutLMvaProcessor
   from .tokenization_layoutlmva import LayoutLMvaTokenizer

   try:
      if not is_tokenizers_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .tokenization_layoutlmva_fast import LayoutLMvaTokenizerFast

   try:
      if not is_vision_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .feature_extraction_layoutlmva import LayoutLMvaFeatureExtractor, LayoutLMvaImageProcessor

   try:
      if not is_torch_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .modeling_layoutlmva import (
          LAYOUTLMV2_PRETRAINED_MODEL_ARCHIVE_LIST,
          LayoutLMvaForQuestionAnswering,
          LayoutLMvaForSequenceClassification,
          LayoutLMvaForTokenClassification,
          LayoutLMvaLayer,
          LayoutLMvaModel,
          LayoutLMvaPreTrainedModel,
      )
else:
   import sys

   _UpperCAmelCase    :     List[Any]         =       _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)



