"""`uarray` provides functions for generating multimethods that dispatch to multiple different backends This should be imported, rather than `_uarray` so that an installed version can be used instead if available. This means that users can call `uarray.set_backend` directly instead of going through SciPy. """ # Prefer an installed version of uarray if available try: import uarray as _uarray except ImportError: _has_uarray = False else: from scipy._lib._pep440 import Version _has_uarray = Version(_uarray.__version__) >= Version("0.5") del _uarray if _has_uarray: from uarray import * from uarray import _Function else: from ._uarray import * from ._uarray import _Function del _has_uarray