




"""simple docstring"""




def      __UpperCAmelCase     ( __UpperCamelCase	,				__UpperCamelCase	):
			return (pointa[0] - pointa[0]) ** 2 + (pointa[1] - pointa[1]) ** 2







def      __UpperCAmelCase     ( __UpperCamelCase	,				__UpperCamelCase=0	):
			return sorted(_A	,				key=lambda __UpperCamelCase	: x[column]	)







def      __UpperCAmelCase     ( __UpperCamelCase	,				__UpperCamelCase	,				__UpperCamelCase=float('''inf'''	)	):

			for i in range(points_counts - 1	):
						for j in range(i + 1	,				_A	):
									__lowercase			:  List[Any]								=       euclidean_distance_sqr(points[i]	,				points[j]	)
									if current_dis < min_dis:
												__lowercase			:  Optional[int]								=       current_dis
			return min_dis







def      __UpperCAmelCase     ( __UpperCamelCase	,				__UpperCamelCase	,				__UpperCamelCase=float('''inf'''	)	):

			for i in range(min(6	,				points_counts - 1	)	,				_A	):
						for j in range(max(0	,				i - 6	)	,				_A	):
									__lowercase			:  List[Any]								=       euclidean_distance_sqr(points[i]	,				points[j]	)
									if current_dis < min_dis:
												__lowercase			:  Optional[int]								=       current_dis
			return min_dis







def      __UpperCAmelCase     ( __UpperCamelCase	,				__UpperCamelCase	,				__UpperCamelCase	):

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

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

			__lowercase			:  Optional[Any]								=       dis_between_closest_in_strip(
			    _A	,				len(_A	)	,				_A	)
			return min(_A	,				_A	)







def      __UpperCAmelCase     ( __UpperCamelCase	,				__UpperCamelCase	):
			__lowercase			:  List[Any]								=       column_based_sort(_A	,				column=0	)
			__lowercase			:  str								=       column_based_sort(_A	,				column=1	)
			return (
			    closest_pair_of_points_sqr(
			        _A	,				_A	,				_A	)
			) ** 0.5


if __name__ == "__main__":
			a_        =       [(2, 3), (1_2, 3_0), (4_0, 5_0), (5, 1), (1_2, 1_0), (3, 4)]
			print('Distance:', closest_pair_of_points(points, len(points)))





"""simple docstring"""



import os
from math import logaa


def 			_UpperCamelCase						(    _A = "base_exp.txt"   )     ->	int:





    """simple docstring"""

    _UpperCAmelCase        = 0
    _UpperCAmelCase        = 0
    for i, line in enumerate(open(os.path.join(os.path.dirname(_A   )       ,   _A   )   )   ):
        _UpperCAmelCase     ,_UpperCAmelCase        = list(map(_A       ,   line.split(""","""   )   )   )
        if x * logaa(_A   ) > largest:
            _UpperCAmelCase        = x * logaa(_A   )
            _UpperCAmelCase        = i + 1
    return result


if __name__ == "__main__":
 print(solution())