



'''simple docstring'''


def      SCREAMING_SNAKE_CASE				(				lowercase_    :      int ,  lowercase_    :      list[int] ,  lowercase_    :      int						):

						def count_of_possible_combinations(lowercase_    :      int						) -> int:
												if target < 0:
																		return 0
												if target == 0:
																		return 1
												return sum(count_of_possible_combinations(target - item						) for item in array						)

						return count_of_possible_combinations(lowercase_						)







def      SCREAMING_SNAKE_CASE				(				lowercase_    :      int ,  lowercase_    :      list[int] ,  lowercase_    :      int						):

						def count_of_possible_combinations_with_dp_array(
						    lowercase_    :      int ,  lowercase_    :      list[int]						) -> int:
												if target < 0:
																		return 0
												if target == 0:
																		return 1
												if dp_array[target] != -1:
																		return dp_array[target]
												lowercase        =							sum(
												    count_of_possible_combinations_with_dp_array(target - item ,  lowercase_						)
												    for item in array						)
												lowercase        =							answer
												return answer

						lowercase        =							[-1] * (target + 1)
						return count_of_possible_combinations_with_dp_array(lowercase_ ,  lowercase_						)







def      SCREAMING_SNAKE_CASE				(				lowercase_    :      int ,  lowercase_    :      list[int] ,  lowercase_    :      int						):
						lowercase        =							[0] * (target + 1)
						lowercase        =							1

						for i in range(1 ,  target + 1						):
												for j in range(lowercase_						):
																		if i - array[j] >= 0:
																								dp_array[i] += dp_array[i - array[j]]

						return dp_array[target]


if __name__ == "__main__":
						import doctest

						doctest.testmod()
						lowercase_      :				Tuple   					=    3
						lowercase_      :				Any   					=    5
						lowercase_      :				Dict   					=    [1, 2, 5]
						print(combination_sum_iv(n, array, target))







'''simple docstring'''


from __future__ import annotations

import os
from typing import Any

import requests

lowercase_      :				List[str]   					=    '''https://api.github.com'''

# https://docs.github.com/en/free-pro-team@latest/rest/reference/users#get-the-authenticated-user
lowercase_      :				Any   					=    BASE_URL + '''/user'''

# https://github.com/settings/tokens
lowercase_      :				Union[str, Any]   					=    os.environ.get('''USER_TOKEN''', '''''')







def      SCREAMING_SNAKE_CASE				(				lowercase_    :      str						):
						lowercase        =							{
						    """Authorization""": F"""token {auth_token}""",
						    """Accept""": """application/vnd.github.v3+json""",
						}
						return requests.get(lowercase_ ,  headers=lowercase_						).json()


if __name__ == "__main__":  # pragma: no cover
						if USER_TOKEN:
												for key, value in fetch_github_info(USER_TOKEN).items():
																		print(f'''{key}: {value}''')
						else:
												raise ValueError('''\'USER_TOKEN\' field cannot be empty.''')


