



"""simple docstring"""




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



def 	UpperCAmelCase__   (				A__	,    A__	,    A__   )      ->      str:




   """simple docstring"""
   assert len(str(A__   )   ) > 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:
   lowerCamelCase__						=			year // 100
   lowerCamelCase__						=			(5 * (century % 4) + 2) % 7
   lowerCamelCase__						=			year % 100
   lowerCamelCase__						=			centurian % 12
   lowerCamelCase__						=			(
       (centurian // 12) + centurian_m + (centurian_m // 4) + century_anchor
   ) % 7
   lowerCamelCase__						=			(
       DOOMSDAY_NOT_LEAP[month - 1]
       if (year % 4 != 0) or (centurian == 0 and (year % 400) == 0)
       else DOOMSDAY_LEAP[month - 1]
   )
   lowerCamelCase__						=			(dooms_day + day - day_anchor) % 7
   return WEEK_DAY_NAMES[week_day]


if __name__ == "__main__":
     import doctest

     doctest.testmod()







"""simple docstring"""




def 	UpperCAmelCase__   (				A__   )      ->      list[int]:




   """simple docstring"""

   if length <= 0 or not isinstance(A__	,    A__   ):
      raise ValueError("Length must be a positive integer."   )
   return [n * (2 * n - 1) for n in range(A__   )]


if __name__ == "__main__":
     print(hexagonal_numbers(length=5))
     print(hexagonal_numbers(length=10))




