



'''simple docstring'''

import math
import unittest



def 					__lowerCamelCase					(				lowerCAmelCase_  )      ->				bool:
		assert isinstance(lowerCAmelCase_						,      lowerCAmelCase_  ) and (
		    number >= 0
		), "'number' must been an int and positive"

		if 1 < number < 4:
				# 2 and 3 are primes
				return True
		elif number < 2 or number % 2 == 0 or number % 3 == 0:
				# Negatives, 0, 1, all even numbers, all multiples of 3 are not primes
				return False

		# All primes number are in format of 6k +/- 1
		for i in range(5						,      int(math.sqrt(lowerCAmelCase_  ) + 1  )						,      6  ):
				if number % i == 0 or number % (i + 2) == 0:
						return False
		return True

class      lowerCAmelCase__						(   unittest.TestCase       ):







							def 							__lowercase      (							self :	str		):
									self.assertTrue(is_prime(2		)		)
									self.assertTrue(is_prime(3		)		)
									self.assertTrue(is_prime(5		)		)
									self.assertTrue(is_prime(7		)		)
									self.assertTrue(is_prime(11		)		)
									self.assertTrue(is_prime(13		)		)
									self.assertTrue(is_prime(17		)		)
									self.assertTrue(is_prime(19		)		)
									self.assertTrue(is_prime(23		)		)
									self.assertTrue(is_prime(29		)		)







							def 							__lowercase      (							self :	List[Any]		):
									with self.assertRaises(_UpperCAmelCase		):
											is_prime(-19		)
									self.assertFalse(
									    is_prime(0		)     ,'Zero doesn\'t have any positive factors, primes must have exactly two.'     ,)
									self.assertFalse(
									    is_prime(1		)     ,'One only has 1 positive factor, primes must have exactly two.'     ,)
									self.assertFalse(is_prime(2 * 2		)		)
									self.assertFalse(is_prime(2 * 3		)		)
									self.assertFalse(is_prime(3 * 3		)		)
									self.assertFalse(is_prime(3 * 5		)		)
									self.assertFalse(is_prime(3 * 5 * 7		)		)


if __name__ == "__main__":
							unittest.main()









'''simple docstring'''

from __future__ import annotations

import os
from typing import Any

import requests

__lowerCAmelCase						      =       '''https://api.github.com'''

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

# https://github.com/settings/tokens
__lowerCAmelCase						      =       os.environ.get('''USER_TOKEN''', '''''')



def 					__lowerCamelCase					(				lowerCAmelCase_  )      ->				dict[Any, Any]:
		_a					:				Union[str, Any]				=							{
		    'Authorization': f"""token {auth_token}""",
		    'Accept': 'application/vnd.github.v3+json',
		}
		return requests.get(lowerCAmelCase_						,      headers=lowerCAmelCase_  ).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.''')




