






'''simple docstring'''

from typing import TYPE_CHECKING

# rely on isort to merge the imports
from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


UpperCAmelCase__						:Any          =    {
    '''configuration_autoformer''': [
        '''AUTOFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP''',
        '''AutoformerConfig''',
    ],
}

try:
   if not is_torch_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   UpperCAmelCase__						:Dict          =    [
       '''AUTOFORMER_PRETRAINED_MODEL_ARCHIVE_LIST''',
       '''AutoformerForPrediction''',
       '''AutoformerModel''',
       '''AutoformerPreTrainedModel''',
   ]


if TYPE_CHECKING:
   from .configuration_autoformer import (
       AUTOFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP,
       AutoformerConfig,
   )

   try:
      if not is_torch_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .modeling_autoformer import (
          AUTOFORMER_PRETRAINED_MODEL_ARCHIVE_LIST,
          AutoformerForPrediction,
          AutoformerModel,
          AutoformerPreTrainedModel,
      )

else:
   import sys

   UpperCAmelCase__						:int          =    _LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)











'''simple docstring'''

from __future__ import annotations

import typing
from collections.abc import Iterable

import numpy as np

UpperCAmelCase__						:List[str]          =			typing.Union[Iterable[float], Iterable[int], np.ndarray]  # noqa: UP007
UpperCAmelCase__						:Optional[int]          =			typing.Union[np.floataa, int, float]  # noqa: UP007
def     __lowercase  (_lowercase,						_lowercase     )   ->     VectorOut:


     """simple docstring"""
     return np.sqrt(np.sum((np.asarray(_lowercase     ) - np.asarray(_lowercase     )) ** 2     )     )
def     __lowercase  (_lowercase,						_lowercase     )   ->     VectorOut:


     """simple docstring"""
     return sum((va - va) ** 2 for va, va in zip(_lowercase,						_lowercase     )     ) ** (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=10_000,						globals=globals(),						)     )
        print("""With Numpy"""     )
        print(
            timeit(
                """euclidean_distance([1, 2, 3], [4, 5, 6])""",						number=10_000,						globals=globals(),						)     )
   benchmark()



