"""simple docstring"""







def   __UpperCAmelCase    (   UpperCAmelCase_   :    int      ,							UpperCAmelCase_   :    Dict  )							->      List[Any]:

	'''simple docstring'''





	return (pointa[0] - pointa[0]) ** 2 + (pointa[1] - pointa[1]) ** 2
def   __UpperCAmelCase    (   UpperCAmelCase_   :    Dict      ,							UpperCAmelCase_   :    List[str]=0  )							->      Optional[int]:

	'''simple docstring'''





	return sorted(_a      ,							key=lambda UpperCAmelCase_  : x[column]  )
def   __UpperCAmelCase    (   UpperCAmelCase_   :    str      ,							UpperCAmelCase_   :    str      ,							UpperCAmelCase_   :    str=float('inf'  )  )							->      Any:

	'''simple docstring'''





	for i in range(points_counts - 1  ):
		for j in range(i + 1      ,							_a  ):
			__snake_case      :							int						=			euclidean_distance_sqr(points[i]      ,							points[j]  )
			if current_dis < min_dis:
				__snake_case      :							int						=			current_dis
	return min_dis
def   __UpperCAmelCase    (   UpperCAmelCase_   :    List[Any]      ,							UpperCAmelCase_   :    str      ,							UpperCAmelCase_   :    Dict=float('inf'  )  )							->      Optional[Any]:

	'''simple docstring'''





	for i in range(min(6      ,							points_counts - 1  )      ,							_a  ):
		for j in range(max(0      ,							i - 6  )      ,							_a  ):
			__snake_case      :							List[Any]						=			euclidean_distance_sqr(points[i]      ,							points[j]  )
			if current_dis < min_dis:
				__snake_case      :							int						=			current_dis
	return min_dis
def   __UpperCAmelCase    (   UpperCAmelCase_   :    Any      ,							UpperCAmelCase_   :    Dict      ,							UpperCAmelCase_   :    List[str]  )							->      List[str]:

	'''simple docstring'''





	if points_counts <= 3:
		return dis_between_closest_pair(_a      ,							_a  )

	# recursion
	__snake_case      :							Any						=			points_counts // 2
	__snake_case      :							Optional[Any]						=			closest_pair_of_points_sqr(
	    _a      ,							points_sorted_on_y[:mid]      ,							_a  )
	__snake_case      :							Optional[int]						=			closest_pair_of_points_sqr(
	    _a      ,							points_sorted_on_y[mid:]      ,							points_counts - mid  )
	__snake_case      :							List[Any]						=			min(_a      ,							_a  )
	__snake_case      :							Any						=			[]
	for point in points_sorted_on_x:
		if abs(point[0] - points_sorted_on_x[mid][0]  ) < closest_pair_dis:
			cross_strip.append(_a  )

	__snake_case      :							Any						=			dis_between_closest_in_strip(
	    _a      ,							len(_a  )      ,							_a  )
	return min(_a      ,							_a  )
def   __UpperCAmelCase    (   UpperCAmelCase_   :    Optional[int]      ,							UpperCAmelCase_   :    List[str]  )							->      int:

	'''simple docstring'''





	__snake_case      :							List[Any]						=			column_based_sort(_a      ,							column=0  )
	__snake_case      :							Dict						=			column_based_sort(_a      ,							column=1  )
	return (
	    closest_pair_of_points_sqr(
	        _a      ,							_a      ,							_a  )
	) ** 0.5


if __name__ == "__main__":
	_a					:					Tuple=			[(2, 3), (12, 30), (40, 50), (5, 1), (12, 10), (3, 4)]
	print("Distance:", closest_pair_of_points(points, len(points)))






"""simple docstring"""







from __future__ import annotations

import os
from typing import Any

import requests

_a					:					int=			"https://api.github.com"

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

# https://github.com/settings/tokens
_a					:					Union[str, Any]=			os.environ.get("USER_TOKEN", "")
def   __UpperCAmelCase    (   UpperCAmelCase_   :    str  )							->      dict[Any, Any]:

	'''simple docstring'''





	__snake_case      :							Tuple						=			{
	    'Authorization': F"token {auth_token}",
	    'Accept': 'application/vnd.github.v3+json',
	}
	return requests.get(UpperCAmelCase_      ,							headers=UpperCAmelCase_  ).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.")





