





"""simple docstring"""



from __future__ import annotations

import typing
from collections.abc import Iterable

import numpy as np

a_   			=      typing.Union[Iterable[float], Iterable[int], np.ndarray]  # noqa: UP007
a_   			=      typing.Union[np.floataa, int, float]  # noqa: UP007







def 		__lowercase					(       snake_case_  :  Vector    ,snake_case_  :  Vector						)       ->VectorOut:



    '''simple docstring'''







    return np.sqrt(np.sum((np.asarray(snake_case_						) - np.asarray(snake_case_						)) ** 2						)						)







def 		__lowercase					(       snake_case_  :  Vector    ,snake_case_  :  Vector						)       ->VectorOut:



    '''simple docstring'''







    return sum((va - va) ** 2 for va, va in zip(snake_case_    ,snake_case_						)						) ** (1 / 2)


if __name__ == "__main__":







       def 		__lowercase					(       )       ->None:



           '''simple docstring'''







           from timeit import timeit

           print('''Without Numpy'''						)
           print(
               timeit(
                   '''euclidean_distance_no_np([1, 2, 3], [4, 5, 6])'''    ,number=10000    ,globals=globals()    ,)						)
           print('''With Numpy'''						)
           print(
               timeit(
                   '''euclidean_distance([1, 2, 3], [4, 5, 6])'''    ,number=10000    ,globals=globals()    ,)						)




       benchmark()











"""simple docstring"""



import math
from collections.abc import Iterator
from itertools import takewhile







def 		__lowercase					(       snake_case_  :  int						)       ->bool:



    '''simple docstring'''







    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(snake_case_						) + 1						)    ,6						):
        if number % i == 0 or number % (i + 2) == 0:
            return False
    return True







def 		__lowercase					(       )       ->Iterator[int]:



    '''simple docstring'''







    __A   :						int									=					2
    while True:
        if is_prime(snake_case_						):
            yield num
        num += 1







def 		__lowercase					(       snake_case_  :  int = 2000000						)       ->int:



    '''simple docstring'''







    return sum(takewhile(lambda snake_case_						: x < n    ,prime_generator()						)						)


if __name__ == "__main__":
       print(f'''{solution() = }''')




