




SCREAMING_SNAKE_CASE__     :     List[Any]		    =       [4, 1, 7, 4, 2, 6, 4, 1, 5, 3, 7, 5]
SCREAMING_SNAKE_CASE__     :     Any		    =       [3, 7, 7, 4, 2, 6, 4, 1, 5, 3, 7, 5]
SCREAMING_SNAKE_CASE__     :     Union[str, Any]		    =       {
    0: "Sunday",
    1: "Monday",
    2: "Tuesday",
    3: "Wednesday",
    4: "Thursday",
    5: "Friday",
    6: "Saturday",
}

def lowercase    (  SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE )			->							str:


			'''simple docstring'''







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


if __name__ == "__main__":
				import doctest

				doctest.testmod()






def lowercase    (  SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE )			->							Dict:


			'''simple docstring'''







			if index == r:
						for j in range(SCREAMING_SNAKE_CASE ):
									print(data[j]       ,    end=' ' )
						print(' ' )
						return
			#  When no more elements are there to put in data[]
			if i >= n:
						return
			# current is included, put next at next location
			SCREAMING_SNAKE_CASE_								=						arr[i]
			combination_util(SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE       ,    index + 1       ,    SCREAMING_SNAKE_CASE       ,    i + 1 )
			# current is excluded, replace it with
			# next (Note that i+1 is passed, but
			# index is not changed)
			combination_util(SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE       ,    i + 1 )
			# The main function that prints all combinations
			# of size r in arr[] of size n. This function
			# mainly uses combinationUtil()

def lowercase    (  SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE )			->							Any:


			'''simple docstring'''







			SCREAMING_SNAKE_CASE_								=						[0] * r
			# Print all combination using temporary array 'data[]'
			combination_util(SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE       ,    SCREAMING_SNAKE_CASE       ,    0       ,    SCREAMING_SNAKE_CASE       ,    0 )


if __name__ == "__main__":
				# Driver code to check the function above
				SCREAMING_SNAKE_CASE__     :     Dict		    =       [10, 20, 30, 40, 50]
				print_combination(arr, len(arr), 3)
				# This code is contributed by Ambuj sahu
