Metadata-Version: 1.2
Name: numpy
-Version: 1.21.3
+Version: 1.21.4
Summary: NumPy is the fundamental package for array computing with Python.
Home-page: https://www.numpy.org
Author: Travis E. Oliphant et al.
--- /dev/null
+
+Contributors
+============
+
+A total of 7 people contributed to this release. People with a "+" by their
+names contributed a patch for the first time.
+
+* Bas van Beek
+* Charles Harris
+* Isuru Fernando
+* Matthew Brett
+* Sayed Adel
+* Sebastian Berg
+* 傅立业(Chris Fu) +
+
+Pull requests merged
+====================
+
+A total of 9 pull requests were merged for this release.
+
+* `#20278 <https://github.com/numpy/numpy/pull/20278>`__: BUG: Fix shadowed reference of `dtype` in type stub
+* `#20293 <https://github.com/numpy/numpy/pull/20293>`__: BUG: Fix headers for universal2 builds
+* `#20294 <https://github.com/numpy/numpy/pull/20294>`__: BUG: ``VOID_nonzero`` could sometimes mutate alignment flag
+* `#20295 <https://github.com/numpy/numpy/pull/20295>`__: BUG: Do not use nonzero fastpath on unaligned arrays
+* `#20296 <https://github.com/numpy/numpy/pull/20296>`__: BUG: Distutils patch to allow for 2 as a minor version (!)
+* `#20297 <https://github.com/numpy/numpy/pull/20297>`__: BUG, SIMD: Fix 64-bit/8-bit integer division by a scalar
+* `#20298 <https://github.com/numpy/numpy/pull/20298>`__: BUG, SIMD: Workaround broadcasting SIMD 64-bit integers on MSVC...
+* `#20300 <https://github.com/numpy/numpy/pull/20300>`__: REL: Prepare for the NumPy 1.21.4 release.
+* `#20302 <https://github.com/numpy/numpy/pull/20302>`__: TST: Fix a `Arrayterator` typing test failure
+++ /dev/null
-Corrected ``advance`` in ``PCG64DSXM`` and ``PCG64``
-----------------------------------------------------
-Fixed a bug in the ``advance`` method of ``PCG64DSXM`` and ``PCG64``. The bug only
-affects results when the step was larger than :math:`2^{64}` on platforms
-that do not support 128-bit integers(e.g., Windows and 32-bit Linux).
.. toctree::
:maxdepth: 3
+ 1.21.4 <release/1.21.4-notes>
1.21.3 <release/1.21.3-notes>
1.21.2 <release/1.21.2-notes>
1.21.1 <release/1.21.1-notes>
--- /dev/null
+.. currentmodule:: numpy
+
+==========================
+NumPy 1.21.4 Release Notes
+==========================
+
+The NumPy 1.21.4 is a maintenance release that fixes a few bugs discovered
+after 1.21.3. The most important fix here is a fix for the NumPy header files
+to make them work for both x86_64 and M1 hardware when included in the Mac
+universal2 wheels. Previously, the header files only worked for M1 and this
+caused problems for folks building x86_64 extensions. This problem was not seen
+before Python 3.10 because there were thin wheels for x86_64 that had
+precedence. This release also provides thin x86_64 Mac wheels for Python 3.10.
+
+The Python versions supported in this release are 3.7-3.10. If you want to
+compile your own version using gcc-11, you will need to use gcc-11.2+ to avoid
+problems.
+
+Contributors
+============
+
+A total of 7 people contributed to this release. People with a "+" by their
+names contributed a patch for the first time.
+
+* Bas van Beek
+* Charles Harris
+* Isuru Fernando
+* Matthew Brett
+* Sayed Adel
+* Sebastian Berg
+* 傅立业(Chris Fu) +
+
+Pull requests merged
+====================
+
+A total of 9 pull requests were merged for this release.
+
+* `#20278 <https://github.com/numpy/numpy/pull/20278>`__: BUG: Fix shadowed reference of `dtype` in type stub
+* `#20293 <https://github.com/numpy/numpy/pull/20293>`__: BUG: Fix headers for universal2 builds
+* `#20294 <https://github.com/numpy/numpy/pull/20294>`__: BUG: ``VOID_nonzero`` could sometimes mutate alignment flag
+* `#20295 <https://github.com/numpy/numpy/pull/20295>`__: BUG: Do not use nonzero fastpath on unaligned arrays
+* `#20296 <https://github.com/numpy/numpy/pull/20296>`__: BUG: Distutils patch to allow for 2 as a minor version (!)
+* `#20297 <https://github.com/numpy/numpy/pull/20297>`__: BUG, SIMD: Fix 64-bit/8-bit integer division by a scalar
+* `#20298 <https://github.com/numpy/numpy/pull/20298>`__: BUG, SIMD: Workaround broadcasting SIMD 64-bit integers on MSVC...
+* `#20300 <https://github.com/numpy/numpy/pull/20300>`__: REL: Prepare for the NumPy 1.21.4 release.
+* `#20302 <https://github.com/numpy/numpy/pull/20302>`__: TST: Fix a `Arrayterator` typing test failure
_ByteOrder = L["S", "<", ">", "=", "|", "L", "B", "N", "I"]
class dtype(Generic[_DTypeScalar_co]):
- names: Optional[Tuple[str, ...]]
+ names: Optional[Tuple[builtins.str, ...]]
# Overload for subclass of generic
@overload
def __new__(
@overload
def __new__(cls, dtype: Type[complex], align: bool = ..., copy: bool = ...) -> dtype[complex_]: ...
@overload
- def __new__(cls, dtype: Type[str], align: bool = ..., copy: bool = ...) -> dtype[str_]: ...
+ def __new__(cls, dtype: Type[builtins.str], align: bool = ..., copy: bool = ...) -> dtype[str_]: ...
@overload
def __new__(cls, dtype: Type[bytes], align: bool = ..., copy: bool = ...) -> dtype[bytes_]: ...
@overload
def __new__(
cls,
- dtype: str,
+ dtype: builtins.str,
align: bool = ...,
copy: bool = ...,
) -> dtype[Any]: ...
) -> dtype[object_]: ...
@overload
- def __getitem__(self: dtype[void], key: List[str]) -> dtype[void]: ...
+ def __getitem__(self: dtype[void], key: List[builtins.str]) -> dtype[void]: ...
@overload
- def __getitem__(self: dtype[void], key: Union[str, int]) -> dtype[Any]: ...
+ def __getitem__(self: dtype[void], key: Union[builtins.str, int]) -> dtype[Any]: ...
# NOTE: In the future 1-based multiplications will also yield `void` dtypes
@overload
@property
def base(self: _DType) -> _DType: ...
@property
- def byteorder(self) -> str: ...
+ def byteorder(self) -> builtins.str: ...
@property
- def char(self) -> str: ...
+ def char(self) -> builtins.str: ...
@property
- def descr(self) -> List[Union[Tuple[str, str], Tuple[str, str, _Shape]]]: ...
+ def descr(self) -> List[Union[Tuple[builtins.str, builtins.str], Tuple[builtins.str, builtins.str, _Shape]]]: ...
@property
def fields(
self,
- ) -> Optional[Mapping[str, Union[Tuple[dtype[Any], int], Tuple[dtype[Any], int, Any]]]]: ...
+ ) -> Optional[Mapping[builtins.str, Union[Tuple[dtype[Any], int], Tuple[dtype[Any], int, Any]]]]: ...
@property
def flags(self) -> int: ...
@property
@property
def itemsize(self) -> int: ...
@property
- def kind(self) -> str: ...
+ def kind(self) -> builtins.str: ...
@property
- def metadata(self) -> Optional[Mapping[str, Any]]: ...
+ def metadata(self) -> Optional[Mapping[builtins.str, Any]]: ...
@property
- def name(self) -> str: ...
+ def name(self) -> builtins.str: ...
@property
def names(self) -> Optional[Tuple[str, ...]]: ...
@property
@property
def subdtype(self: _DType) -> Optional[Tuple[_DType, _Shape]]: ...
def newbyteorder(self: _DType, __new_order: _ByteOrder = ...) -> _DType: ...
- # Leave str and type for end to avoid having to use `builtins.str`
- # everywhere. See https://github.com/python/mypy/issues/3775
@property
def str(self) -> builtins.str: ...
@property
_ArrayNumber_co = NDArray[Union[bool_, number[Any]]]
_ArrayTD64_co = NDArray[Union[bool_, integer[Any], timedelta64]]
+# Introduce an alias for `dtype` to avoid naming conflicts.
+_dtype = dtype
+
class _SupportsItem(Protocol[_T_co]):
def item(self, __args: Any) -> _T_co: ...
@property
def real(
self: NDArray[_SupportsReal[_ScalarType]], # type: ignore[type-var]
- ) -> ndarray[_ShapeType, dtype[_ScalarType]]: ...
+ ) -> ndarray[_ShapeType, _dtype[_ScalarType]]: ...
@real.setter
def real(self, value: ArrayLike) -> None: ...
@property
def imag(
self: NDArray[_SupportsImag[_ScalarType]], # type: ignore[type-var]
- ) -> ndarray[_ShapeType, dtype[_ScalarType]]: ...
+ ) -> ndarray[_ShapeType, _dtype[_ScalarType]]: ...
@imag.setter
def imag(self, value: ArrayLike) -> None: ...
def __new__(
# Use the same output type as that of the underlying `generic`
@overload
def item(
- self: ndarray[Any, dtype[_SupportsItem[_T]]], # type: ignore[type-var]
+ self: ndarray[Any, _dtype[_SupportsItem[_T]]], # type: ignore[type-var]
*args: SupportsIndex,
) -> _T: ...
@overload
def item(
- self: ndarray[Any, dtype[_SupportsItem[_T]]], # type: ignore[type-var]
+ self: ndarray[Any, _dtype[_SupportsItem[_T]]], # type: ignore[type-var]
__args: Tuple[SupportsIndex, ...],
) -> _T: ...
axis: Optional[SupportsIndex] = ...,
kind: _PartitionKind = ...,
order: Union[None, str, Sequence[str]] = ...,
- ) -> ndarray[Any, dtype[intp]]: ...
+ ) -> ndarray[Any, _dtype[intp]]: ...
def diagonal(
self,
def dot(self, b: ArrayLike, out: _NdArraySubClass) -> _NdArraySubClass: ...
# `nonzero()` is deprecated for 0d arrays/generics
- def nonzero(self) -> Tuple[ndarray[Any, dtype[intp]], ...]: ...
+ def nonzero(self) -> Tuple[ndarray[Any, _dtype[intp]], ...]: ...
def partition(
self,
v: ArrayLike,
side: _SortSide = ...,
sorter: Optional[_ArrayLikeInt_co] = ...,
- ) -> ndarray[Any, dtype[intp]]: ...
+ ) -> ndarray[Any, _dtype[intp]]: ...
def setfield(
self,
@overload
def take( # type: ignore[misc]
- self: ndarray[Any, dtype[_ScalarType]],
+ self: ndarray[Any, _dtype[_ScalarType]],
indices: _IntLike_co,
axis: Optional[SupportsIndex] = ...,
out: None = ...,
# Dispatch to the underlying `generic` via protocols
def __int__(
- self: ndarray[Any, dtype[SupportsInt]], # type: ignore[type-var]
+ self: ndarray[Any, _dtype[SupportsInt]], # type: ignore[type-var]
) -> int: ...
def __float__(
- self: ndarray[Any, dtype[SupportsFloat]], # type: ignore[type-var]
+ self: ndarray[Any, _dtype[SupportsFloat]], # type: ignore[type-var]
) -> float: ...
def __complex__(
- self: ndarray[Any, dtype[SupportsComplex]], # type: ignore[type-var]
+ self: ndarray[Any, _dtype[SupportsComplex]], # type: ignore[type-var]
) -> complex: ...
def __index__(
- self: ndarray[Any, dtype[SupportsIndex]], # type: ignore[type-var]
+ self: ndarray[Any, _dtype[SupportsIndex]], # type: ignore[type-var]
) -> int: ...
def __len__(self) -> int: ...
@overload
def __mod__(self: _ArrayFloat_co, other: _ArrayLikeFloat_co) -> NDArray[floating[Any]]: ... # type: ignore[misc]
@overload
- def __mod__(self: _ArrayTD64_co, other: _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> NDArray[timedelta64]: ...
+ def __mod__(self: _ArrayTD64_co, other: _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> NDArray[timedelta64]: ...
@overload
def __mod__(self: NDArray[object_], other: Any) -> Any: ...
@overload
@overload
def __rmod__(self: _ArrayFloat_co, other: _ArrayLikeFloat_co) -> NDArray[floating[Any]]: ... # type: ignore[misc]
@overload
- def __rmod__(self: _ArrayTD64_co, other: _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> NDArray[timedelta64]: ...
+ def __rmod__(self: _ArrayTD64_co, other: _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> NDArray[timedelta64]: ...
@overload
def __rmod__(self: NDArray[object_], other: Any) -> Any: ...
@overload
@overload
def __divmod__(self: _ArrayFloat_co, other: _ArrayLikeFloat_co) -> _2Tuple[NDArray[floating[Any]]]: ... # type: ignore[misc]
@overload
- def __divmod__(self: _ArrayTD64_co, other: _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> Tuple[NDArray[int64], NDArray[timedelta64]]: ...
+ def __divmod__(self: _ArrayTD64_co, other: _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> Tuple[NDArray[int64], NDArray[timedelta64]]: ...
@overload
def __divmod__(
self: NDArray[Union[bool_, integer[Any], floating[Any], timedelta64]],
@overload
def __rdivmod__(self: _ArrayFloat_co, other: _ArrayLikeFloat_co) -> _2Tuple[NDArray[floating[Any]]]: ... # type: ignore[misc]
@overload
- def __rdivmod__(self: _ArrayTD64_co, other: _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> Tuple[NDArray[int64], NDArray[timedelta64]]: ...
+ def __rdivmod__(self: _ArrayTD64_co, other: _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> Tuple[NDArray[int64], NDArray[timedelta64]]: ...
@overload
def __rdivmod__(
self: NDArray[Union[bool_, integer[Any], floating[Any], timedelta64]],
@overload
def __floordiv__(self: _ArrayComplex_co, other: _ArrayLikeComplex_co) -> NDArray[complexfloating[Any, Any]]: ... # type: ignore[misc]
@overload
- def __floordiv__(self: NDArray[timedelta64], other: _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> NDArray[int64]: ...
+ def __floordiv__(self: NDArray[timedelta64], other: _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> NDArray[int64]: ...
@overload
def __floordiv__(self: NDArray[timedelta64], other: _ArrayLikeBool_co) -> NoReturn: ...
@overload
@overload
def __rfloordiv__(self: _ArrayComplex_co, other: _ArrayLikeComplex_co) -> NDArray[complexfloating[Any, Any]]: ... # type: ignore[misc]
@overload
- def __rfloordiv__(self: NDArray[timedelta64], other: _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> NDArray[int64]: ...
+ def __rfloordiv__(self: NDArray[timedelta64], other: _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> NDArray[int64]: ...
@overload
def __rfloordiv__(self: NDArray[bool_], other: _ArrayLikeTD64_co) -> NoReturn: ...
@overload
@overload
def __truediv__(self: _ArrayComplex_co, other: _ArrayLikeComplex_co) -> NDArray[complexfloating[Any, Any]]: ... # type: ignore[misc]
@overload
- def __truediv__(self: NDArray[timedelta64], other: _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> NDArray[float64]: ...
+ def __truediv__(self: NDArray[timedelta64], other: _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> NDArray[float64]: ...
@overload
def __truediv__(self: NDArray[timedelta64], other: _ArrayLikeBool_co) -> NoReturn: ...
@overload
@overload
def __rtruediv__(self: _ArrayComplex_co, other: _ArrayLikeComplex_co) -> NDArray[complexfloating[Any, Any]]: ... # type: ignore[misc]
@overload
- def __rtruediv__(self: NDArray[timedelta64], other: _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> NDArray[float64]: ...
+ def __rtruediv__(self: NDArray[timedelta64], other: _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> NDArray[float64]: ...
@overload
def __rtruediv__(self: NDArray[bool_], other: _ArrayLikeTD64_co) -> NoReturn: ...
@overload
@overload
def __imod__(self: NDArray[floating[_NBit1]], other: _ArrayLikeFloat_co) -> NDArray[floating[_NBit1]]: ...
@overload
- def __imod__(self: NDArray[timedelta64], other: _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> NDArray[timedelta64]: ...
+ def __imod__(self: NDArray[timedelta64], other: _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> NDArray[timedelta64]: ...
@overload
def __imod__(self: NDArray[object_], other: Any) -> NDArray[object_]: ...
@overload
@abstractmethod
def __init__(self, *args: Any, **kwargs: Any) -> None: ...
@overload
- def __array__(self: _ScalarType, __dtype: None = ...) -> ndarray[Any, dtype[_ScalarType]]: ...
+ def __array__(self: _ScalarType, __dtype: None = ...) -> ndarray[Any, _dtype[_ScalarType]]: ...
@overload
def __array__(self, __dtype: _DType) -> ndarray[Any, _DType]: ...
@property
def strides(self) -> Tuple[()]: ...
def byteswap(self: _ScalarType, inplace: L[False] = ...) -> _ScalarType: ...
@property
- def flat(self: _ScalarType) -> flatiter[ndarray[Any, dtype[_ScalarType]]]: ...
+ def flat(self: _ScalarType) -> flatiter[ndarray[Any, _dtype[_ScalarType]]]: ...
@overload
def astype(
axis: Optional[SupportsIndex] = ...,
out: None = ...,
mode: _ModeKind = ...,
- ) -> ndarray[Any, dtype[_ScalarType]]: ...
+ ) -> ndarray[Any, _dtype[_ScalarType]]: ...
@overload
def take(
self,
self: _ScalarType,
repeats: _ArrayLikeInt_co,
axis: Optional[SupportsIndex] = ...,
- ) -> ndarray[Any, dtype[_ScalarType]]: ...
+ ) -> ndarray[Any, _dtype[_ScalarType]]: ...
def flatten(
self: _ScalarType,
order: _OrderKACF = ...,
- ) -> ndarray[Any, dtype[_ScalarType]]: ...
+ ) -> ndarray[Any, _dtype[_ScalarType]]: ...
def ravel(
self: _ScalarType,
order: _OrderKACF = ...,
- ) -> ndarray[Any, dtype[_ScalarType]]: ...
+ ) -> ndarray[Any, _dtype[_ScalarType]]: ...
@overload
def reshape(
self: _ScalarType, __shape: _ShapeLike, *, order: _OrderACF = ...
- ) -> ndarray[Any, dtype[_ScalarType]]: ...
+ ) -> ndarray[Any, _dtype[_ScalarType]]: ...
@overload
def reshape(
self: _ScalarType, *shape: SupportsIndex, order: _OrderACF = ...
- ) -> ndarray[Any, dtype[_ScalarType]]: ...
+ ) -> ndarray[Any, _dtype[_ScalarType]]: ...
def squeeze(
self: _ScalarType, axis: Union[L[0], Tuple[()]] = ...
def transpose(self: _ScalarType, __axes: Tuple[()] = ...) -> _ScalarType: ...
# Keep `dtype` at the bottom to avoid name conflicts with `np.dtype`
@property
- def dtype(self: _ScalarType) -> dtype[_ScalarType]: ...
+ def dtype(self: _ScalarType) -> _dtype[_ScalarType]: ...
class number(generic, Generic[_NBit1]): # type: ignore
@property
version_json = '''
{
- "date": "2021-10-19T18:45:47-0600",
+ "date": "2021-11-04T15:06:03-0600",
"dirty": false,
"error": null,
- "full-revisionid": "d4d0584ccb508cad69288b504e6c8b04aa0d5caf",
- "version": "1.21.3"
+ "full-revisionid": "c0b003e9c787ccab27f6fe57c154d7b881da5795",
+ "version": "1.21.4"
}
''' # END VERSION_JSON
#define NPY_SIZEOF_LONG 4
#define NPY_SIZEOF_PY_INTPTR_T 4
#endif
+
+ #undef NPY_SIZEOF_LONGDOUBLE
+ #undef NPY_SIZEOF_COMPLEX_LONGDOUBLE
+
+ #ifdef __x86_64
+ #define NPY_SIZEOF_LONGDOUBLE 16
+ #define NPY_SIZEOF_COMPLEX_LONGDOUBLE 32
+ #elif defined(__arm64__)
+ #define NPY_SIZEOF_LONGDOUBLE 8
+ #define NPY_SIZEOF_COMPLEX_LONGDOUBLE 16
+ #else
+ #error "unknown architecture"
+ #endif
#endif
/**
#if 0 // slower
NPY_FINLINE npyv_u64 npyv_loadn_u64(const npy_uint64 *ptr, npy_intp stride)
{
- const __m256i idx = _mm256_setr_epi64x(0, 1*stride, 2*stride, 3*stride);
+ const __m256i idx = npyv_set_s64(0, 1*stride, 2*stride, 3*stride);
return _mm256_i64gather_epi64((const void*)ptr, idx, 8);
}
NPY_FINLINE npyv_s64 npyv_loadn_s64(const npy_int64 *ptr, npy_intp stride)
NPY_FINLINE npyv_s64 npyv_load_till_s64(const npy_int64 *ptr, npy_uintp nlane, npy_int64 fill)
{
assert(nlane > 0);
- const __m256i vfill = _mm256_set1_epi64x(fill);
- const __m256i steps = _mm256_setr_epi64x(0, 1, 2, 3);
- __m256i vnlane = _mm256_set1_epi64x(nlane > 4 ? 4 : (int)nlane);
+ const __m256i vfill = npyv_setall_s64(fill);
+ const __m256i steps = npyv_set_s64(0, 1, 2, 3);
+ __m256i vnlane = npyv_setall_s64(nlane > 4 ? 4 : (int)nlane);
__m256i mask = _mm256_cmpgt_epi64(vnlane, steps);
__m256i payload = _mm256_maskload_epi64((const void*)ptr, mask);
return _mm256_blendv_epi8(vfill, payload, mask);
NPY_FINLINE npyv_s64 npyv_load_tillz_s64(const npy_int64 *ptr, npy_uintp nlane)
{
assert(nlane > 0);
- const __m256i steps = _mm256_setr_epi64x(0, 1, 2, 3);
- __m256i vnlane = _mm256_set1_epi64x(nlane > 4 ? 4 : (int)nlane);
+ const __m256i steps = npyv_set_s64(0, 1, 2, 3);
+ __m256i vnlane = npyv_setall_s64(nlane > 4 ? 4 : (int)nlane);
__m256i mask = _mm256_cmpgt_epi64(vnlane, steps);
return _mm256_maskload_epi64((const void*)ptr, mask);
}
npyv_loadn_till_s64(const npy_int64 *ptr, npy_intp stride, npy_uintp nlane, npy_int64 fill)
{
assert(nlane > 0);
- const __m256i vfill = _mm256_set1_epi64x(fill);
- const __m256i idx = _mm256_setr_epi64x(0, 1*stride, 2*stride, 3*stride);
- const __m256i steps = _mm256_setr_epi64x(0, 1, 2, 3);
- __m256i vnlane = _mm256_set1_epi64x(nlane > 4 ? 4 : (int)nlane);
+ const __m256i vfill = npyv_setall_s64(fill);
+ const __m256i idx = npyv_set_s64(0, 1*stride, 2*stride, 3*stride);
+ const __m256i steps = npyv_set_s64(0, 1, 2, 3);
+ __m256i vnlane = npyv_setall_s64(nlane > 4 ? 4 : (int)nlane);
__m256i mask = _mm256_cmpgt_epi64(vnlane, steps);
return _mm256_mask_i64gather_epi64(vfill, (const void*)ptr, idx, mask, 8);
}
NPY_FINLINE void npyv_store_till_s64(npy_int64 *ptr, npy_uintp nlane, npyv_s64 a)
{
assert(nlane > 0);
- const __m256i steps = _mm256_setr_epi64x(0, 1, 2, 3);
- __m256i vnlane = _mm256_set1_epi64x(nlane > 8 ? 8 : (int)nlane);
+ const __m256i steps = npyv_set_s64(0, 1, 2, 3);
+ __m256i vnlane = npyv_setall_s64(nlane > 8 ? 8 : (int)nlane);
__m256i mask = _mm256_cmpgt_epi64(vnlane, steps);
_mm256_maskstore_epi64((void*)ptr, mask, a);
}
#define npyv_setall_s16(VAL) _mm256_set1_epi16((short)VAL)
#define npyv_setall_u32(VAL) _mm256_set1_epi32((int)VAL)
#define npyv_setall_s32(VAL) _mm256_set1_epi32(VAL)
-#define npyv_setall_u64(VAL) _mm256_set1_epi64x(VAL)
-#define npyv_setall_s64(VAL) _mm256_set1_epi64x(VAL)
#define npyv_setall_f32(VAL) _mm256_set1_ps(VAL)
#define npyv_setall_f64(VAL) _mm256_set1_pd(VAL)
+NPY_FINLINE __m256i npyv__setr_epi64(npy_int64, npy_int64, npy_int64, npy_int64);
+NPY_FINLINE npyv_u64 npyv_setall_u64(npy_uint64 a)
+{
+ npy_int64 ai = (npy_int64)a;
+#if defined(_MSC_VER) && defined(_M_IX86)
+ return npyv__setr_epi64(ai, ai, ai, ai);
+#else
+ return _mm256_set1_epi64x(ai);
+#endif
+}
+NPY_FINLINE npyv_s64 npyv_setall_s64(npy_int64 a)
+{
+#if defined(_MSC_VER) && defined(_M_IX86)
+ return npyv__setr_epi64(a, a, a, a);
+#else
+ return _mm256_set1_epi64x(a);
+#endif
+}
/*
* vector with specific values set to each lane and
* set a specific value to all remained lanes
}
NPY_FINLINE __m256i npyv__setr_epi64(npy_int64 i0, npy_int64 i1, npy_int64 i2, npy_int64 i3)
{
+#if defined(_MSC_VER) && defined(_M_IX86)
+ return _mm256_setr_epi32(
+ (int)i0, (int)(i0 >> 32), (int)i1, (int)(i1 >> 32),
+ (int)i2, (int)(i2 >> 32), (int)i3, (int)(i3 >> 32)
+ );
+#else
return _mm256_setr_epi64x(i0, i1, i2, i3);
+#endif
}
NPY_FINLINE __m256 npyv__setr_ps(float i0, float i1, float i2, float i3, float i4, float i5,
return _mm512_range_pd(a, a, 8);
#else
return npyv_and_f64(
- a, _mm512_castsi512_pd(_mm512_set1_epi64(0x7fffffffffffffffLL))
+ a, _mm512_castsi512_pd(npyv_setall_s64(0x7fffffffffffffffLL))
);
#endif
}
//// 64
NPY_FINLINE npyv_u64 npyv_loadn_u64(const npy_uint64 *ptr, npy_intp stride)
{
- const __m512i idx = _mm512_setr_epi64(
+ const __m512i idx = npyv_set_s64(
0*stride, 1*stride, 2*stride, 3*stride,
4*stride, 5*stride, 6*stride, 7*stride
);
//// 64
NPY_FINLINE void npyv_storen_u64(npy_uint64 *ptr, npy_intp stride, npyv_u64 a)
{
- const __m512i idx = _mm512_setr_epi64(
+ const __m512i idx = npyv_set_s64(
0*stride, 1*stride, 2*stride, 3*stride,
4*stride, 5*stride, 6*stride, 7*stride
);
NPY_FINLINE npyv_s64 npyv_load_till_s64(const npy_int64 *ptr, npy_uintp nlane, npy_int64 fill)
{
assert(nlane > 0);
- const __m512i vfill = _mm512_set1_epi64(fill);
+ const __m512i vfill = npyv_setall_s64(fill);
const __mmask8 mask = nlane > 31 ? -1 : (1 << nlane) - 1;
return _mm512_mask_loadu_epi64(vfill, mask, (const __m512i*)ptr);
}
npyv_loadn_till_s64(const npy_int64 *ptr, npy_intp stride, npy_uintp nlane, npy_int64 fill)
{
assert(nlane > 0);
- const __m512i idx = _mm512_setr_epi64(
+ const __m512i idx = npyv_set_s64(
0*stride, 1*stride, 2*stride, 3*stride,
4*stride, 5*stride, 6*stride, 7*stride
);
- const __m512i vfill = _mm512_set1_epi64(fill);
+ const __m512i vfill = npyv_setall_s64(fill);
const __mmask8 mask = nlane > 31 ? -1 : (1 << nlane) - 1;
return _mm512_mask_i64gather_epi64(vfill, mask, idx, (const __m512i*)ptr, 8);
}
NPY_FINLINE void npyv_storen_till_s64(npy_int64 *ptr, npy_intp stride, npy_uintp nlane, npyv_s64 a)
{
assert(nlane > 0);
- const __m512i idx = _mm512_setr_epi64(
+ const __m512i idx = npyv_set_s64(
0*stride, 1*stride, 2*stride, 3*stride,
4*stride, 5*stride, 6*stride, 7*stride
);
#define npyv_setall_s16(VAL) _mm512_set1_epi16((short)VAL)
#define npyv_setall_u32(VAL) _mm512_set1_epi32((int)VAL)
#define npyv_setall_s32(VAL) _mm512_set1_epi32(VAL)
-#define npyv_setall_u64(VAL) _mm512_set1_epi64(VAL)
-#define npyv_setall_s64(VAL) _mm512_set1_epi64(VAL)
#define npyv_setall_f32(VAL) _mm512_set1_ps(VAL)
#define npyv_setall_f64(VAL) _mm512_set1_pd(VAL)
+NPY_FINLINE __m512i npyv__setr_epi64(
+ npy_int64, npy_int64, npy_int64, npy_int64,
+ npy_int64, npy_int64, npy_int64, npy_int64
+);
+NPY_FINLINE npyv_u64 npyv_setall_u64(npy_uint64 a)
+{
+ npy_int64 ai = (npy_int64)a;
+#if defined(_MSC_VER) && defined(_M_IX86)
+ return npyv__setr_epi64(ai, ai, ai, ai, ai, ai, ai, ai);
+#else
+ return _mm512_set1_epi64(ai);
+#endif
+}
+NPY_FINLINE npyv_s64 npyv_setall_s64(npy_int64 a)
+{
+#if defined(_MSC_VER) && defined(_M_IX86)
+ return npyv__setr_epi64(a, a, a, a, a, a, a, a);
+#else
+ return _mm512_set1_epi64(a);
+#endif
+}
/**
* vector with specific values set to each lane and
* set a specific value to all remained lanes
NPY_FINLINE __m512i npyv__setr_epi64(npy_int64 i0, npy_int64 i1, npy_int64 i2, npy_int64 i3,
npy_int64 i4, npy_int64 i5, npy_int64 i6, npy_int64 i7)
{
+#if defined(_MSC_VER) && defined(_M_IX86)
+ return _mm512_setr_epi32(
+ (int)i0, (int)(i0 >> 32), (int)i1, (int)(i1 >> 32),
+ (int)i2, (int)(i2 >> 32), (int)i3, (int)(i3 >> 32),
+ (int)i4, (int)(i4 >> 32), (int)i5, (int)(i5 >> 32),
+ (int)i6, (int)(i6 >> 32), (int)i7, (int)(i7 >> 32)
+ );
+#else
return _mm512_setr_epi64(i0, i1, i2, i3, i4, i5, i6, i7);
+#endif
}
NPY_FINLINE __m512 npyv__setr_ps(
npy_uint32 divisor_hi = divisor >> 32;
npy_uint32 divisor_lo = divisor & 0xFFFFFFFF;
// compute high quotient digit
- npy_uint32 quotient_hi = (npy_uint32)(high / divisor_hi);
+ npy_uint64 quotient_hi = high / divisor_hi;
npy_uint64 remainder = high - divisor_hi * quotient_hi;
npy_uint64 base32 = 1ULL << 32;
while (quotient_hi >= base32 || quotient_hi*divisor_lo > base32*remainder) {
- remainder += --divisor_hi;
+ --quotient_hi;
+ remainder += divisor_hi;
if (remainder >= base32) {
break;
}
default:
l = npyv__bitscan_revnz_u32(d - 1) + 1; // ceil(log2(d))
l2 = (npy_uint8)(1 << l); // 2^l, overflow to 0 if l = 8
- m = ((l2 - d) << 8) / d + 1; // multiplier
+ m = ((npy_uint16)((l2 - d) << 8)) / d + 1; // multiplier
sh1 = 1; sh2 = l - 1; // shift counts
}
npyv_u8x3 divisor;
typedef float npyv_lanetype_f32;
typedef double npyv_lanetype_f64;
+#if defined(_MSC_VER) && defined(_M_IX86)
+/*
+ * Avoid using any of the following intrinsics with MSVC 32-bit,
+ * even if they are apparently work on newer versions.
+ * They had bad impact on the generated instructions,
+ * sometimes the compiler deal with them without the respect
+ * of 32-bit mode which lead to crush due to execute 64-bit
+ * instructions and other times generate bad emulated instructions.
+ */
+ #undef _mm512_set1_epi64
+ #undef _mm256_set1_epi64x
+ #undef _mm_set1_epi64x
+ #undef _mm512_setr_epi64x
+ #undef _mm256_setr_epi64x
+ #undef _mm_setr_epi64x
+ #undef _mm512_set_epi64x
+ #undef _mm256_set_epi64x
+ #undef _mm_set_epi64x
+#endif
#if defined(NPY_HAVE_AVX512F) && !defined(NPY_SIMD_FORCE_256) && !defined(NPY_SIMD_FORCE_128)
#include "avx512/avx512.h"
#elif defined(NPY_HAVE_AVX2) && !defined(NPY_SIMD_FORCE_128)
#define npyv_setall_s16(VAL) _mm_set1_epi16((short)(VAL))
#define npyv_setall_u32(VAL) _mm_set1_epi32((int)(VAL))
#define npyv_setall_s32(VAL) _mm_set1_epi32((int)(VAL))
-#define npyv_setall_u64(VAL) _mm_set1_epi64x((npy_int64)(VAL))
-#define npyv_setall_s64(VAL) _mm_set1_epi64x((npy_int64)(VAL))
#define npyv_setall_f32 _mm_set1_ps
#define npyv_setall_f64 _mm_set1_pd
+NPY_FINLINE __m128i npyv__setr_epi64(npy_int64 i0, npy_int64 i1);
+
+NPY_FINLINE npyv_u64 npyv_setall_u64(npy_uint64 a)
+{
+#if defined(_MSC_VER) && defined(_M_IX86)
+ return npyv__setr_epi64((npy_int64)a, (npy_int64)a);
+#else
+ return _mm_set1_epi64x((npy_int64)a);
+#endif
+}
+NPY_FINLINE npyv_s64 npyv_setall_s64(npy_int64 a)
+{
+#if defined(_MSC_VER) && defined(_M_IX86)
+ return npyv__setr_epi64(a, a);
+#else
+ return _mm_set1_epi64x((npy_int64)a);
+#endif
+}
+
/**
* vector with specific values set to each lane and
* set a specific value to all remained lanes
}
NPY_FINLINE __m128i npyv__setr_epi64(npy_int64 i0, npy_int64 i1)
{
+#if defined(_MSC_VER) && defined(_M_IX86)
+ return _mm_setr_epi32((int)i0, (int)(i0 >> 32), (int)i1, (int)(i1 >> 32));
+#else
return _mm_set_epi64x(i1, i0);
+#endif
}
NPY_FINLINE __m128 npyv__setr_ps(float i0, float i1, float i2, float i3)
{
dummy_fields.descr = new;
if ((new->alignment > 1) && !__ALIGNED(ip + offset,
new->alignment)) {
- PyArray_CLEARFLAGS(ap, NPY_ARRAY_ALIGNED);
+ PyArray_CLEARFLAGS(dummy_arr, NPY_ARRAY_ALIGNED);
}
else {
- PyArray_ENABLEFLAGS(ap, NPY_ARRAY_ALIGNED);
+ PyArray_ENABLEFLAGS(dummy_arr, NPY_ARRAY_ALIGNED);
}
if (new->f->nonzero(ip+offset, dummy_arr)) {
nonz = NPY_TRUE;
npy_intp *strideptr, *innersizeptr;
NPY_BEGIN_THREADS_DEF;
- // Special low-overhead version specific to the boolean/int types
dtype = PyArray_DESCR(self);
- switch(dtype->kind) {
- case 'u':
- case 'i':
- case 'b':
- if (dtype->elsize > 8) {
- break;
- }
- return count_nonzero_int(
- PyArray_NDIM(self), PyArray_BYTES(self), PyArray_DIMS(self),
- PyArray_STRIDES(self), dtype->elsize
- );
+ /* Special low-overhead version specific to the boolean/int types */
+ if (PyArray_ISALIGNED(self) && (
+ PyDataType_ISBOOL(dtype) || PyDataType_ISINTEGER(dtype))) {
+ return count_nonzero_int(
+ PyArray_NDIM(self), PyArray_BYTES(self), PyArray_DIMS(self),
+ PyArray_STRIDES(self), dtype->elsize
+ );
}
nonzero = PyArray_DESCR(self)->f->nonzero;
--- /dev/null
+Copyright (c) 2005-2021, NumPy Developers.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+
+ * Neither the name of the NumPy Developers nor the names of any
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--- /dev/null
+Short Vector Math Library (SVML)
+
+Provides vectorized implementations of commonly used math functions (currently
+supports only x86_64 AVX-512).
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+
+ .text
+.L_2__routine_start___svml_acos8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_acos8
+
+__svml_acos8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups __svml_dacos_data_internal(%rip), %zmm7
+ vmovups 64+__svml_dacos_data_internal(%rip), %zmm8
+
+/* S ~ 2*sqrt(Y) */
+ vmovups 128+__svml_dacos_data_internal(%rip), %zmm11
+ vmovups 384+__svml_dacos_data_internal(%rip), %zmm14
+ vmovups 448+__svml_dacos_data_internal(%rip), %zmm15
+ vmovups 512+__svml_dacos_data_internal(%rip), %zmm2
+ vmovups 576+__svml_dacos_data_internal(%rip), %zmm1
+ vmovups 256+__svml_dacos_data_internal(%rip), %zmm10
+ vmovaps %zmm0, %zmm6
+
+/* x = -|arg| */
+ vorpd %zmm6, %zmm7, %zmm5
+ vandpd %zmm6, %zmm7, %zmm4
+
+/* Y = 0.5 + 0.5*(-x) */
+ vfmadd231pd {rn-sae}, %zmm5, %zmm8, %zmm8
+
+/* x^2 */
+ vmulpd {rn-sae}, %zmm5, %zmm5, %zmm9
+ vrsqrt14pd %zmm8, %zmm12
+ vcmppd $17, {sae}, %zmm11, %zmm8, %k2
+ vcmppd $17, {sae}, %zmm10, %zmm5, %k0
+ vmovups 960+__svml_dacos_data_internal(%rip), %zmm10
+ vmovups 1088+__svml_dacos_data_internal(%rip), %zmm11
+ vminpd {sae}, %zmm8, %zmm9, %zmm3
+ vmovups 832+__svml_dacos_data_internal(%rip), %zmm9
+ vxorpd %zmm12, %zmm12, %zmm12{%k2}
+ vaddpd {rn-sae}, %zmm8, %zmm8, %zmm0
+ vcmppd $21, {sae}, %zmm8, %zmm3, %k1
+
+/* X<X^2 iff X<0 */
+ vcmppd $17, {sae}, %zmm3, %zmm6, %k3
+ vmulpd {rn-sae}, %zmm12, %zmm12, %zmm13
+ vmulpd {rn-sae}, %zmm12, %zmm0, %zmm7
+ vmovups 896+__svml_dacos_data_internal(%rip), %zmm12
+
+/* polynomial */
+ vmovups 704+__svml_dacos_data_internal(%rip), %zmm8
+ vfmsub213pd {rn-sae}, %zmm14, %zmm13, %zmm0
+ vmovups 640+__svml_dacos_data_internal(%rip), %zmm13
+ vfmadd231pd {rn-sae}, %zmm3, %zmm9, %zmm12
+ vmovups 1344+__svml_dacos_data_internal(%rip), %zmm9
+ vfmadd231pd {rn-sae}, %zmm0, %zmm15, %zmm2
+ vmovups 1216+__svml_dacos_data_internal(%rip), %zmm15
+ vmulpd {rn-sae}, %zmm0, %zmm7, %zmm14
+ vfmadd213pd {rn-sae}, %zmm1, %zmm0, %zmm2
+ vmovups 768+__svml_dacos_data_internal(%rip), %zmm1
+ kmovw %k1, %eax
+ kmovw %k3, %ecx
+ kmovw %k0, %edx
+ vfmadd213pd {rn-sae}, %zmm13, %zmm0, %zmm2
+ vfmadd231pd {rn-sae}, %zmm3, %zmm8, %zmm1
+ vmovups 1280+__svml_dacos_data_internal(%rip), %zmm8
+ vmulpd {rn-sae}, %zmm3, %zmm3, %zmm0
+ vfnmadd213pd {rn-sae}, %zmm7, %zmm14, %zmm2
+ vmovups 1024+__svml_dacos_data_internal(%rip), %zmm7
+ vfmadd231pd {rn-sae}, %zmm3, %zmm15, %zmm8
+ vfmadd213pd {rn-sae}, %zmm12, %zmm0, %zmm1
+ vblendmpd %zmm2, %zmm5, %zmm2{%k1}
+ vfmadd231pd {rn-sae}, %zmm3, %zmm10, %zmm7
+ vmovups 1152+__svml_dacos_data_internal(%rip), %zmm10
+ vfmadd231pd {rn-sae}, %zmm3, %zmm11, %zmm10
+ andl %eax, %ecx
+ vmovups 1408+__svml_dacos_data_internal(%rip), %zmm11
+ kmovw %ecx, %k2
+ vfmadd213pd {rn-sae}, %zmm10, %zmm0, %zmm7
+ vfmadd231pd {rn-sae}, %zmm3, %zmm9, %zmm11
+ vmulpd {rn-sae}, %zmm0, %zmm0, %zmm10
+ vfmadd213pd {rn-sae}, %zmm7, %zmm10, %zmm1
+ vfmadd213pd {rn-sae}, %zmm8, %zmm0, %zmm1
+ vfmadd213pd {rn-sae}, %zmm11, %zmm0, %zmm1
+ vmovups 1664+__svml_dacos_data_internal(%rip), %zmm0
+ vmulpd {rn-sae}, %zmm3, %zmm1, %zmm1
+ vxorpd %zmm4, %zmm2, %zmm3
+ vxorpd %zmm0, %zmm0, %zmm0{%k1}
+ vfmadd213pd {rn-sae}, %zmm3, %zmm3, %zmm1
+ vorpd 1536+__svml_dacos_data_internal(%rip), %zmm0, %zmm0{%k2}
+ vaddpd {rn-sae}, %zmm1, %zmm0, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm6, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dacos_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_acos8,@function
+ .size __svml_acos8,.-__svml_acos8
+..LN__svml_acos8.0:
+
+.L_2__routine_start___svml_dacos_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dacos_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movzwl 6(%rdi), %edx
+ andl $32752, %edx
+ movb 7(%rdi), %cl
+ movsd (%rdi), %xmm1
+ cmpl $32752, %edx
+ je .LBL_2_20
+
+
+ movsd %xmm1, -32(%rsp)
+ andb $127, %cl
+ movb %cl, -25(%rsp)
+ movsd -32(%rsp), %xmm12
+ movsd 4168+_vmldACosHATab(%rip), %xmm0
+ comisd %xmm12, %xmm0
+ jbe .LBL_2_14
+
+
+ movsd 4176+_vmldACosHATab(%rip), %xmm1
+ comisd %xmm12, %xmm1
+ jbe .LBL_2_10
+
+
+ comisd 4128+_vmldACosHATab(%rip), %xmm12
+ jbe .LBL_2_9
+
+
+ movsd 4104+_vmldACosHATab(%rip), %xmm6
+ movaps %xmm12, %xmm8
+ mulsd %xmm12, %xmm6
+ movaps %xmm12, %xmm7
+ movsd %xmm6, -40(%rsp)
+ movsd -40(%rsp), %xmm13
+ movsd 4104+_vmldACosHATab(%rip), %xmm5
+ subsd -32(%rsp), %xmm13
+ movsd %xmm13, -48(%rsp)
+ movsd -40(%rsp), %xmm15
+ movsd -48(%rsp), %xmm14
+ subsd %xmm14, %xmm15
+ movaps %xmm12, %xmm14
+ movsd %xmm15, -40(%rsp)
+ movsd -40(%rsp), %xmm6
+ subsd %xmm6, %xmm8
+ movsd %xmm8, -48(%rsp)
+ movsd -40(%rsp), %xmm9
+ movaps %xmm9, %xmm4
+ addsd %xmm9, %xmm7
+ mulsd %xmm9, %xmm4
+ movsd -48(%rsp), %xmm10
+ movaps %xmm4, %xmm11
+ mulsd %xmm10, %xmm7
+ mulsd %xmm4, %xmm5
+ addsd %xmm7, %xmm11
+ movsd 4312+_vmldACosHATab(%rip), %xmm8
+ mulsd %xmm11, %xmm8
+ movsd %xmm5, -40(%rsp)
+ movsd -40(%rsp), %xmm1
+ movsd 4104+_vmldACosHATab(%rip), %xmm5
+ subsd %xmm4, %xmm1
+ addsd 4304+_vmldACosHATab(%rip), %xmm8
+ mulsd %xmm11, %xmm8
+ movsd %xmm1, -48(%rsp)
+ movsd -40(%rsp), %xmm0
+ movsd -48(%rsp), %xmm2
+ addsd 4296+_vmldACosHATab(%rip), %xmm8
+ subsd %xmm2, %xmm0
+ mulsd %xmm11, %xmm8
+ movsd %xmm0, -40(%rsp)
+ movsd -40(%rsp), %xmm3
+ addsd 4288+_vmldACosHATab(%rip), %xmm8
+ subsd %xmm3, %xmm4
+ mulsd %xmm11, %xmm8
+ movsd %xmm4, -48(%rsp)
+ movsd -40(%rsp), %xmm6
+ mulsd %xmm6, %xmm9
+ addsd 4280+_vmldACosHATab(%rip), %xmm8
+ mulsd %xmm6, %xmm10
+ mulsd %xmm11, %xmm8
+ mulsd %xmm9, %xmm5
+ addsd 4272+_vmldACosHATab(%rip), %xmm8
+ mulsd %xmm11, %xmm8
+ movaps %xmm9, %xmm0
+ movsd -48(%rsp), %xmm13
+ movaps %xmm6, %xmm4
+ movsd %xmm5, -40(%rsp)
+ addsd %xmm13, %xmm7
+ addsd 4264+_vmldACosHATab(%rip), %xmm8
+ mulsd %xmm7, %xmm14
+ mulsd %xmm11, %xmm8
+ addsd %xmm14, %xmm10
+ addsd 4256+_vmldACosHATab(%rip), %xmm8
+ movsd -40(%rsp), %xmm1
+ mulsd %xmm11, %xmm8
+ subsd %xmm9, %xmm1
+ addsd %xmm10, %xmm9
+ addsd 4248+_vmldACosHATab(%rip), %xmm8
+ mulsd %xmm9, %xmm7
+ mulsd %xmm11, %xmm8
+ movsd %xmm1, -48(%rsp)
+ movsd -40(%rsp), %xmm2
+ movsd -48(%rsp), %xmm15
+ subsd %xmm15, %xmm2
+ addsd 4240+_vmldACosHATab(%rip), %xmm8
+ movsd %xmm2, -40(%rsp)
+ movsd -40(%rsp), %xmm5
+ mulsd %xmm11, %xmm8
+ subsd %xmm5, %xmm0
+ movsd %xmm0, -48(%rsp)
+ movsd -40(%rsp), %xmm3
+ movsd -48(%rsp), %xmm5
+ movaps %xmm5, %xmm13
+ addsd 4232+_vmldACosHATab(%rip), %xmm8
+ mulsd %xmm3, %xmm4
+ addsd %xmm10, %xmm13
+ mulsd %xmm11, %xmm8
+ mulsd %xmm13, %xmm6
+ addsd 4224+_vmldACosHATab(%rip), %xmm8
+ addsd %xmm7, %xmm6
+ mulsd %xmm11, %xmm8
+ movsd 4104+_vmldACosHATab(%rip), %xmm7
+ movaps %xmm4, %xmm13
+ mulsd %xmm4, %xmm7
+ addsd 4216+_vmldACosHATab(%rip), %xmm8
+ movsd %xmm7, -40(%rsp)
+ movsd -40(%rsp), %xmm1
+ movsd 4200+_vmldACosHATab(%rip), %xmm11
+ subsd %xmm4, %xmm1
+ mulsd %xmm9, %xmm11
+ addsd %xmm6, %xmm4
+ movsd %xmm1, -48(%rsp)
+ movaps %xmm12, %xmm9
+ movsd -40(%rsp), %xmm0
+ movsd -48(%rsp), %xmm2
+ movsd 4192+_vmldACosHATab(%rip), %xmm1
+ subsd %xmm2, %xmm0
+ mulsd %xmm1, %xmm3
+ mulsd %xmm1, %xmm10
+ mulsd %xmm4, %xmm8
+ addsd %xmm3, %xmm9
+ mulsd %xmm1, %xmm5
+ addsd %xmm10, %xmm11
+ movsd %xmm0, -40(%rsp)
+ addsd %xmm11, %xmm8
+ movsd -40(%rsp), %xmm7
+ addsd %xmm5, %xmm8
+ subsd %xmm7, %xmm13
+ movsd %xmm13, -48(%rsp)
+ movsd -40(%rsp), %xmm0
+ movsd -48(%rsp), %xmm2
+ movsd %xmm9, -40(%rsp)
+ addsd %xmm2, %xmm6
+ movsd -40(%rsp), %xmm10
+ movsd %xmm3, -56(%rsp)
+ subsd %xmm10, %xmm12
+ movsd 4208+_vmldACosHATab(%rip), %xmm4
+ addsd %xmm12, %xmm3
+ mulsd %xmm4, %xmm0
+ mulsd %xmm4, %xmm6
+ movsd %xmm3, -48(%rsp)
+ movsd -40(%rsp), %xmm3
+ movaps %xmm3, %xmm12
+ movsd -48(%rsp), %xmm7
+ addsd %xmm0, %xmm12
+ addsd %xmm7, %xmm8
+ movsd %xmm12, -40(%rsp)
+ movsd -40(%rsp), %xmm12
+ subsd %xmm12, %xmm3
+ addsd %xmm3, %xmm0
+ movsd %xmm0, -48(%rsp)
+ movsd -40(%rsp), %xmm3
+ movsd -48(%rsp), %xmm0
+ movsd (%rdi), %xmm1
+ addsd %xmm8, %xmm0
+ comisd 4184+_vmldACosHATab(%rip), %xmm1
+ addsd %xmm0, %xmm6
+ jbe .LBL_2_7
+
+
+ movsd 4136+_vmldACosHATab(%rip), %xmm2
+ movaps %xmm2, %xmm0
+ subsd %xmm3, %xmm0
+ movsd %xmm0, -40(%rsp)
+ movsd -40(%rsp), %xmm1
+ movsd 4144+_vmldACosHATab(%rip), %xmm0
+ subsd %xmm1, %xmm2
+ subsd %xmm6, %xmm0
+ subsd %xmm3, %xmm2
+ movsd %xmm2, -48(%rsp)
+ movsd -40(%rsp), %xmm1
+ movsd -48(%rsp), %xmm3
+ addsd %xmm3, %xmm0
+ jmp .LBL_2_8
+
+.LBL_2_7:
+
+ movsd 4136+_vmldACosHATab(%rip), %xmm2
+ movaps %xmm3, %xmm0
+ addsd %xmm2, %xmm0
+ movsd %xmm0, -40(%rsp)
+ movsd -40(%rsp), %xmm1
+ subsd %xmm1, %xmm2
+ addsd %xmm2, %xmm3
+ movsd %xmm3, -48(%rsp)
+ movsd 4144+_vmldACosHATab(%rip), %xmm3
+ movsd -40(%rsp), %xmm1
+ addsd %xmm3, %xmm6
+ movsd -48(%rsp), %xmm0
+ addsd %xmm6, %xmm0
+
+.LBL_2_8:
+
+ addsd %xmm0, %xmm1
+ movsd %xmm1, (%rsi)
+ ret
+
+.LBL_2_9:
+
+ movsd 4144+_vmldACosHATab(%rip), %xmm1
+ addsd %xmm0, %xmm12
+ movsd %xmm12, -40(%rsp)
+ movsd -40(%rsp), %xmm0
+ mulsd -32(%rsp), %xmm0
+ movsd %xmm0, -56(%rsp)
+ movb -49(%rsp), %dl
+ movb 7(%rdi), %dil
+ andb $127, %dl
+ andb $-128, %dil
+ orb %dil, %dl
+ movb %dl, -49(%rsp)
+ subsd -56(%rsp), %xmm1
+ addsd 4136+_vmldACosHATab(%rip), %xmm1
+ movsd %xmm1, (%rsi)
+ ret
+
+.LBL_2_10:
+
+ movaps %xmm0, %xmm8
+ movzwl 4174+_vmldACosHATab(%rip), %r9d
+ pxor %xmm13, %xmm13
+ andl $-32753, %r9d
+ subsd %xmm12, %xmm8
+ subsd %xmm0, %xmm13
+ mulsd %xmm8, %xmm1
+ movsd %xmm1, -56(%rsp)
+ movzwl -50(%rsp), %ecx
+ andl $32752, %ecx
+ shrl $4, %ecx
+ addl $-1023, %ecx
+ movl %ecx, %r8d
+ movl %ecx, %edx
+ negl %r8d
+ addl $1023, %r8d
+ andl $2047, %r8d
+ shll $4, %r8d
+ movsd %xmm0, -32(%rsp)
+ orl %r8d, %r9d
+ movw %r9w, -26(%rsp)
+ andl $1, %edx
+ movsd -32(%rsp), %xmm4
+ lea _vmldACosHATab(%rip), %r8
+ mulsd %xmm4, %xmm1
+ movl %edx, %r10d
+ movaps %xmm1, %xmm15
+ movsd 4112+_vmldACosHATab(%rip), %xmm6
+ addsd %xmm1, %xmm15
+ jne ..L54
+ movaps %xmm1, %xmm15
+..L54:
+ mulsd %xmm15, %xmm6
+ movaps %xmm15, %xmm7
+ movaps %xmm6, %xmm9
+ subl %edx, %ecx
+ movsd 4120+_vmldACosHATab(%rip), %xmm11
+ subsd %xmm15, %xmm9
+ addsd %xmm1, %xmm11
+ movsd %xmm9, -48(%rsp)
+ movsd -48(%rsp), %xmm10
+ movsd %xmm11, -24(%rsp)
+ subsd %xmm10, %xmm6
+ movl -24(%rsp), %r11d
+ movaps %xmm6, %xmm14
+ shll $8, %r10d
+ andl $511, %r11d
+ addl %r10d, %r11d
+ subsd %xmm6, %xmm7
+ movsd (%r8,%r11,8), %xmm5
+ addsd %xmm7, %xmm14
+ mulsd %xmm5, %xmm6
+ movaps %xmm5, %xmm12
+ mulsd %xmm5, %xmm12
+ mulsd %xmm12, %xmm14
+ movsd 4512+_vmldACosHATab(%rip), %xmm4
+ addsd %xmm13, %xmm14
+ mulsd %xmm14, %xmm4
+ shrl $1, %ecx
+ addsd 4504+_vmldACosHATab(%rip), %xmm4
+ mulsd %xmm14, %xmm4
+ addl $1023, %ecx
+ andl $2047, %ecx
+ addsd 4496+_vmldACosHATab(%rip), %xmm4
+ mulsd %xmm14, %xmm4
+ movzwl 4174+_vmldACosHATab(%rip), %r9d
+ shll $4, %ecx
+ andl $-32753, %r9d
+ movsd %xmm0, -16(%rsp)
+ orl %ecx, %r9d
+ movw %r9w, -10(%rsp)
+ movsd -16(%rsp), %xmm9
+ mulsd %xmm9, %xmm6
+ addsd 4488+_vmldACosHATab(%rip), %xmm4
+ mulsd %xmm14, %xmm4
+ movsd 4104+_vmldACosHATab(%rip), %xmm3
+ mulsd %xmm6, %xmm3
+ addsd 4480+_vmldACosHATab(%rip), %xmm4
+ mulsd %xmm14, %xmm4
+ movsd %xmm3, -40(%rsp)
+ movsd -40(%rsp), %xmm1
+ movsd 4352+_vmldACosHATab(%rip), %xmm11
+ subsd %xmm6, %xmm1
+ addsd 4472+_vmldACosHATab(%rip), %xmm4
+ addsd 4360+_vmldACosHATab(%rip), %xmm11
+ mulsd %xmm14, %xmm4
+ mulsd %xmm8, %xmm11
+ addsd 4464+_vmldACosHATab(%rip), %xmm4
+ mulsd %xmm14, %xmm4
+ mulsd %xmm15, %xmm4
+ movsd %xmm1, -48(%rsp)
+ addsd %xmm4, %xmm7
+ mulsd %xmm5, %xmm7
+ movsd 4456+_vmldACosHATab(%rip), %xmm5
+ mulsd %xmm8, %xmm5
+ mulsd %xmm9, %xmm7
+ addsd 4448+_vmldACosHATab(%rip), %xmm5
+ mulsd %xmm8, %xmm5
+ movsd -40(%rsp), %xmm2
+ movsd -48(%rsp), %xmm0
+ movsd 4104+_vmldACosHATab(%rip), %xmm4
+ subsd %xmm0, %xmm2
+ mulsd %xmm8, %xmm4
+ addsd 4440+_vmldACosHATab(%rip), %xmm5
+ mulsd %xmm8, %xmm5
+ movaps %xmm8, %xmm0
+ movsd %xmm2, -40(%rsp)
+ movsd -40(%rsp), %xmm14
+ movsd 4104+_vmldACosHATab(%rip), %xmm2
+ subsd %xmm14, %xmm6
+ addsd 4432+_vmldACosHATab(%rip), %xmm5
+ mulsd %xmm8, %xmm5
+ movsd %xmm6, -48(%rsp)
+ movsd -40(%rsp), %xmm6
+ movsd -48(%rsp), %xmm10
+ movsd %xmm4, -40(%rsp)
+ addsd %xmm10, %xmm7
+ addsd 4424+_vmldACosHATab(%rip), %xmm5
+ mulsd %xmm8, %xmm5
+ movsd -40(%rsp), %xmm3
+ movsd 4336+_vmldACosHATab(%rip), %xmm12
+ subsd %xmm8, %xmm3
+ addsd 4416+_vmldACosHATab(%rip), %xmm5
+ addsd 4344+_vmldACosHATab(%rip), %xmm12
+ mulsd %xmm8, %xmm5
+ addsd %xmm11, %xmm12
+ addsd 4408+_vmldACosHATab(%rip), %xmm5
+ mulsd %xmm8, %xmm12
+ mulsd %xmm8, %xmm5
+ movsd %xmm3, -48(%rsp)
+ movsd -40(%rsp), %xmm1
+ movsd -48(%rsp), %xmm15
+ movsd 4320+_vmldACosHATab(%rip), %xmm13
+ subsd %xmm15, %xmm1
+ addsd 4400+_vmldACosHATab(%rip), %xmm5
+ addsd 4328+_vmldACosHATab(%rip), %xmm13
+ mulsd %xmm8, %xmm5
+ addsd %xmm12, %xmm13
+ addsd 4392+_vmldACosHATab(%rip), %xmm5
+ movsd %xmm1, -40(%rsp)
+ mulsd %xmm8, %xmm5
+ movsd -40(%rsp), %xmm4
+ subsd %xmm4, %xmm0
+ addsd 4384+_vmldACosHATab(%rip), %xmm5
+ movsd %xmm0, -48(%rsp)
+ movsd -40(%rsp), %xmm4
+ movaps %xmm4, %xmm14
+ mulsd %xmm4, %xmm14
+ mulsd %xmm8, %xmm5
+ mulsd %xmm14, %xmm2
+ addsd 4376+_vmldACosHATab(%rip), %xmm5
+ movsd -48(%rsp), %xmm3
+ movsd %xmm2, -40(%rsp)
+ movsd -40(%rsp), %xmm9
+ mulsd %xmm8, %xmm5
+ subsd %xmm14, %xmm9
+ movsd %xmm9, -48(%rsp)
+ movsd -40(%rsp), %xmm11
+ movsd -48(%rsp), %xmm10
+ movsd 4336+_vmldACosHATab(%rip), %xmm0
+ subsd %xmm10, %xmm11
+ mulsd %xmm4, %xmm0
+ addsd 4368+_vmldACosHATab(%rip), %xmm5
+ addsd %xmm8, %xmm4
+ mulsd %xmm8, %xmm5
+ mulsd %xmm3, %xmm4
+ mulsd %xmm8, %xmm5
+ movsd %xmm11, -40(%rsp)
+ movaps %xmm0, %xmm1
+ movsd -40(%rsp), %xmm12
+ mulsd %xmm8, %xmm5
+ subsd %xmm12, %xmm14
+ movsd %xmm14, -48(%rsp)
+ addsd %xmm5, %xmm13
+ movsd -40(%rsp), %xmm9
+ mulsd 4352+_vmldACosHATab(%rip), %xmm9
+ mulsd %xmm13, %xmm7
+ addsd %xmm9, %xmm1
+ movsd -48(%rsp), %xmm2
+ movsd %xmm1, -40(%rsp)
+ addsd %xmm2, %xmm4
+ movsd -40(%rsp), %xmm13
+ movsd %xmm9, -24(%rsp)
+ subsd %xmm13, %xmm0
+ mulsd 4352+_vmldACosHATab(%rip), %xmm4
+ addsd %xmm0, %xmm9
+ movsd %xmm9, -48(%rsp)
+ movsd -40(%rsp), %xmm12
+ movsd 4320+_vmldACosHATab(%rip), %xmm10
+ movsd -48(%rsp), %xmm1
+ addsd %xmm12, %xmm10
+ movsd %xmm10, -40(%rsp)
+ movsd -40(%rsp), %xmm15
+ movsd 4320+_vmldACosHATab(%rip), %xmm11
+ movsd 4104+_vmldACosHATab(%rip), %xmm9
+ subsd %xmm15, %xmm11
+ movsd 4336+_vmldACosHATab(%rip), %xmm2
+ addsd %xmm11, %xmm12
+ mulsd %xmm3, %xmm2
+ movsd %xmm12, -48(%rsp)
+ movsd -40(%rsp), %xmm15
+ mulsd %xmm15, %xmm9
+ movsd -48(%rsp), %xmm0
+ movsd %xmm9, -40(%rsp)
+ movsd -40(%rsp), %xmm10
+ movsd 4360+_vmldACosHATab(%rip), %xmm3
+ subsd %xmm15, %xmm10
+ mulsd %xmm8, %xmm3
+ movsd %xmm10, -48(%rsp)
+ movsd -40(%rsp), %xmm11
+ movsd -48(%rsp), %xmm13
+ subsd %xmm13, %xmm11
+ addsd 4344+_vmldACosHATab(%rip), %xmm3
+ movsd %xmm11, -40(%rsp)
+ movsd -40(%rsp), %xmm14
+ mulsd %xmm8, %xmm3
+ subsd %xmm14, %xmm15
+ movsd %xmm15, -48(%rsp)
+ movsd -40(%rsp), %xmm10
+ movsd -48(%rsp), %xmm9
+ addsd %xmm9, %xmm4
+ addsd 4328+_vmldACosHATab(%rip), %xmm3
+ addsd %xmm2, %xmm4
+ addsd %xmm5, %xmm3
+ addsd %xmm1, %xmm4
+ addsd %xmm0, %xmm4
+ addsd %xmm3, %xmm4
+ mulsd %xmm6, %xmm4
+ mulsd %xmm10, %xmm6
+ addsd %xmm7, %xmm4
+ movsd (%rdi), %xmm7
+ comisd 4184+_vmldACosHATab(%rip), %xmm7
+ ja .LBL_2_13
+
+
+ movsd 4152+_vmldACosHATab(%rip), %xmm2
+ movaps %xmm2, %xmm0
+ movsd 4160+_vmldACosHATab(%rip), %xmm5
+ subsd %xmm6, %xmm0
+ subsd %xmm4, %xmm5
+ movsd %xmm0, -40(%rsp)
+ movsd -40(%rsp), %xmm1
+ movsd %xmm6, -56(%rsp)
+ subsd %xmm1, %xmm2
+ subsd %xmm6, %xmm2
+ movsd %xmm2, -48(%rsp)
+ movsd -40(%rsp), %xmm6
+ movsd -48(%rsp), %xmm3
+ movaps %xmm3, %xmm4
+ addsd %xmm5, %xmm4
+
+.LBL_2_13:
+
+ addsd %xmm4, %xmm6
+ movsd %xmm6, (%rsi)
+ ret
+
+.LBL_2_14:
+
+ ucomisd %xmm0, %xmm1
+ jp .LBL_2_15
+ je .LBL_2_19
+
+.LBL_2_15:
+
+ xorps .L_2il0floatpacket.197(%rip), %xmm0
+ ucomisd %xmm0, %xmm1
+ jp .LBL_2_16
+ je .LBL_2_18
+
+.LBL_2_16:
+
+ movl $1, %eax
+ pxor %xmm1, %xmm1
+ pxor %xmm0, %xmm0
+ divsd %xmm0, %xmm1
+ movsd %xmm1, (%rsi)
+
+.LBL_2_17:
+
+ ret
+
+.LBL_2_18:
+
+ movsd 4152+_vmldACosHATab(%rip), %xmm0
+ addsd 4160+_vmldACosHATab(%rip), %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_19:
+
+ movq 4184+_vmldACosHATab(%rip), %rdx
+ movq %rdx, (%rsi)
+ ret
+
+.LBL_2_20:
+
+ divsd %xmm1, %xmm1
+ movsd %xmm1, (%rsi)
+ testl $1048575, 4(%rdi)
+ jne .LBL_2_17
+
+
+ cmpl $0, (%rdi)
+ sete %al
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dacos_cout_rare_internal,@function
+ .size __svml_dacos_cout_rare_internal,.-__svml_dacos_cout_rare_internal
+..LN__svml_dacos_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dacos_data_internal:
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 805306368
+ .long 0
+ .long 805306368
+ .long 0
+ .long 805306368
+ .long 0
+ .long 805306368
+ .long 0
+ .long 805306368
+ .long 0
+ .long 805306368
+ .long 0
+ .long 805306368
+ .long 0
+ .long 805306368
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 4227858432
+ .long 4294967295
+ .long 4227858432
+ .long 4294967295
+ .long 4227858432
+ .long 4294967295
+ .long 4227858432
+ .long 4294967295
+ .long 4227858432
+ .long 4294967295
+ .long 4227858432
+ .long 4294967295
+ .long 4227858432
+ .long 4294967295
+ .long 4227858432
+ .long 4294967295
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1073741824
+ .long 2570790083
+ .long 3213983744
+ .long 2570790083
+ .long 3213983744
+ .long 2570790083
+ .long 3213983744
+ .long 2570790083
+ .long 3213983744
+ .long 2570790083
+ .long 3213983744
+ .long 2570790083
+ .long 3213983744
+ .long 2570790083
+ .long 3213983744
+ .long 2570790083
+ .long 3213983744
+ .long 1869665325
+ .long 1067712512
+ .long 1869665325
+ .long 1067712512
+ .long 1869665325
+ .long 1067712512
+ .long 1869665325
+ .long 1067712512
+ .long 1869665325
+ .long 1067712512
+ .long 1869665325
+ .long 1067712512
+ .long 1869665325
+ .long 1067712512
+ .long 1869665325
+ .long 1067712512
+ .long 4294966935
+ .long 3216506879
+ .long 4294966935
+ .long 3216506879
+ .long 4294966935
+ .long 3216506879
+ .long 4294966935
+ .long 3216506879
+ .long 4294966935
+ .long 3216506879
+ .long 4294966935
+ .long 3216506879
+ .long 4294966935
+ .long 3216506879
+ .long 4294966935
+ .long 3216506879
+ .long 4294967197
+ .long 1070596095
+ .long 4294967197
+ .long 1070596095
+ .long 4294967197
+ .long 1070596095
+ .long 4294967197
+ .long 1070596095
+ .long 4294967197
+ .long 1070596095
+ .long 4294967197
+ .long 1070596095
+ .long 4294967197
+ .long 1070596095
+ .long 4294967197
+ .long 1070596095
+ .long 3339630857
+ .long 1067480352
+ .long 3339630857
+ .long 1067480352
+ .long 3339630857
+ .long 1067480352
+ .long 3339630857
+ .long 1067480352
+ .long 3339630857
+ .long 1067480352
+ .long 3339630857
+ .long 1067480352
+ .long 3339630857
+ .long 1067480352
+ .long 3339630857
+ .long 1067480352
+ .long 4158370029
+ .long 3213949719
+ .long 4158370029
+ .long 3213949719
+ .long 4158370029
+ .long 3213949719
+ .long 4158370029
+ .long 3213949719
+ .long 4158370029
+ .long 3213949719
+ .long 4158370029
+ .long 3213949719
+ .long 4158370029
+ .long 3213949719
+ .long 4158370029
+ .long 3213949719
+ .long 3216784302
+ .long 1066680132
+ .long 3216784302
+ .long 1066680132
+ .long 3216784302
+ .long 1066680132
+ .long 3216784302
+ .long 1066680132
+ .long 3216784302
+ .long 1066680132
+ .long 3216784302
+ .long 1066680132
+ .long 3216784302
+ .long 1066680132
+ .long 3216784302
+ .long 1066680132
+ .long 2513723093
+ .long 1064982579
+ .long 2513723093
+ .long 1064982579
+ .long 2513723093
+ .long 1064982579
+ .long 2513723093
+ .long 1064982579
+ .long 2513723093
+ .long 1064982579
+ .long 2513723093
+ .long 1064982579
+ .long 2513723093
+ .long 1064982579
+ .long 2513723093
+ .long 1064982579
+ .long 721210070
+ .long 1065941212
+ .long 721210070
+ .long 1065941212
+ .long 721210070
+ .long 1065941212
+ .long 721210070
+ .long 1065941212
+ .long 721210070
+ .long 1065941212
+ .long 721210070
+ .long 1065941212
+ .long 721210070
+ .long 1065941212
+ .long 721210070
+ .long 1065941212
+ .long 3414736215
+ .long 1066167739
+ .long 3414736215
+ .long 1066167739
+ .long 3414736215
+ .long 1066167739
+ .long 3414736215
+ .long 1066167739
+ .long 3414736215
+ .long 1066167739
+ .long 3414736215
+ .long 1066167739
+ .long 3414736215
+ .long 1066167739
+ .long 3414736215
+ .long 1066167739
+ .long 4114132270
+ .long 1066518236
+ .long 4114132270
+ .long 1066518236
+ .long 4114132270
+ .long 1066518236
+ .long 4114132270
+ .long 1066518236
+ .long 4114132270
+ .long 1066518236
+ .long 4114132270
+ .long 1066518236
+ .long 4114132270
+ .long 1066518236
+ .long 4114132270
+ .long 1066518236
+ .long 3957258973
+ .long 1066854556
+ .long 3957258973
+ .long 1066854556
+ .long 3957258973
+ .long 1066854556
+ .long 3957258973
+ .long 1066854556
+ .long 3957258973
+ .long 1066854556
+ .long 3957258973
+ .long 1066854556
+ .long 3957258973
+ .long 1066854556
+ .long 3957258973
+ .long 1066854556
+ .long 3778730174
+ .long 1067392114
+ .long 3778730174
+ .long 1067392114
+ .long 3778730174
+ .long 1067392114
+ .long 3778730174
+ .long 1067392114
+ .long 3778730174
+ .long 1067392114
+ .long 3778730174
+ .long 1067392114
+ .long 3778730174
+ .long 1067392114
+ .long 3778730174
+ .long 1067392114
+ .long 3014936056
+ .long 1067899757
+ .long 3014936056
+ .long 1067899757
+ .long 3014936056
+ .long 1067899757
+ .long 3014936056
+ .long 1067899757
+ .long 3014936056
+ .long 1067899757
+ .long 3014936056
+ .long 1067899757
+ .long 3014936056
+ .long 1067899757
+ .long 3014936056
+ .long 1067899757
+ .long 859300062
+ .long 1068708659
+ .long 859300062
+ .long 1068708659
+ .long 859300062
+ .long 1068708659
+ .long 859300062
+ .long 1068708659
+ .long 859300062
+ .long 1068708659
+ .long 859300062
+ .long 1068708659
+ .long 859300062
+ .long 1068708659
+ .long 859300062
+ .long 1068708659
+ .long 1431655068
+ .long 1069897045
+ .long 1431655068
+ .long 1069897045
+ .long 1431655068
+ .long 1069897045
+ .long 1431655068
+ .long 1069897045
+ .long 1431655068
+ .long 1069897045
+ .long 1431655068
+ .long 1069897045
+ .long 1431655068
+ .long 1069897045
+ .long 1431655068
+ .long 1069897045
+ .long 856972295
+ .long 1017226790
+ .long 856972295
+ .long 1017226790
+ .long 856972295
+ .long 1017226790
+ .long 856972295
+ .long 1017226790
+ .long 856972295
+ .long 1017226790
+ .long 856972295
+ .long 1017226790
+ .long 856972295
+ .long 1017226790
+ .long 856972295
+ .long 1017226790
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 4294705152
+ .long 0
+ .long 4294705152
+ .long 0
+ .long 4294705152
+ .long 0
+ .long 4294705152
+ .long 0
+ .long 4294705152
+ .long 0
+ .long 4294705152
+ .long 0
+ .long 4294705152
+ .long 0
+ .long 4294705152
+ .long 4131758366
+ .long 1067674714
+ .long 4131758366
+ .long 1067674714
+ .long 4131758366
+ .long 1067674714
+ .long 4131758366
+ .long 1067674714
+ .long 4131758366
+ .long 1067674714
+ .long 4131758366
+ .long 1067674714
+ .long 4131758366
+ .long 1067674714
+ .long 4131758366
+ .long 1067674714
+ .long 3936260738
+ .long 1066197319
+ .long 3936260738
+ .long 1066197319
+ .long 3936260738
+ .long 1066197319
+ .long 3936260738
+ .long 1066197319
+ .long 3936260738
+ .long 1066197319
+ .long 3936260738
+ .long 1066197319
+ .long 3936260738
+ .long 1066197319
+ .long 3936260738
+ .long 1066197319
+ .long 354394453
+ .long 1067472564
+ .long 354394453
+ .long 1067472564
+ .long 354394453
+ .long 1067472564
+ .long 354394453
+ .long 1067472564
+ .long 354394453
+ .long 1067472564
+ .long 354394453
+ .long 1067472564
+ .long 354394453
+ .long 1067472564
+ .long 354394453
+ .long 1067472564
+ .long 709676628
+ .long 1067895021
+ .long 709676628
+ .long 1067895021
+ .long 709676628
+ .long 1067895021
+ .long 709676628
+ .long 1067895021
+ .long 709676628
+ .long 1067895021
+ .long 709676628
+ .long 1067895021
+ .long 709676628
+ .long 1067895021
+ .long 709676628
+ .long 1067895021
+ .long 3958922090
+ .long 1068708761
+ .long 3958922090
+ .long 1068708761
+ .long 3958922090
+ .long 1068708761
+ .long 3958922090
+ .long 1068708761
+ .long 3958922090
+ .long 1068708761
+ .long 3958922090
+ .long 1068708761
+ .long 3958922090
+ .long 1068708761
+ .long 3958922090
+ .long 1068708761
+ .long 2160605765
+ .long 1069897044
+ .long 2160605765
+ .long 1069897044
+ .long 2160605765
+ .long 1069897044
+ .long 2160605765
+ .long 1069897044
+ .long 2160605765
+ .long 1069897044
+ .long 2160605765
+ .long 1069897044
+ .long 2160605765
+ .long 1069897044
+ .long 2160605765
+ .long 1069897044
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 4293918720
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 3220176896
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2147483648
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .type __svml_dacos_data_internal,@object
+ .size __svml_dacos_data_internal,2496
+ .align 32
+_vmldACosHATab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072689152
+ .long 0
+ .long 1072685056
+ .long 0
+ .long 1072680960
+ .long 0
+ .long 1072676864
+ .long 0
+ .long 1072672768
+ .long 0
+ .long 1072668672
+ .long 0
+ .long 1072665600
+ .long 0
+ .long 1072661504
+ .long 0
+ .long 1072657408
+ .long 0
+ .long 1072653312
+ .long 0
+ .long 1072649216
+ .long 0
+ .long 1072646144
+ .long 0
+ .long 1072642048
+ .long 0
+ .long 1072637952
+ .long 0
+ .long 1072634880
+ .long 0
+ .long 1072630784
+ .long 0
+ .long 1072626688
+ .long 0
+ .long 1072623616
+ .long 0
+ .long 1072619520
+ .long 0
+ .long 1072615424
+ .long 0
+ .long 1072612352
+ .long 0
+ .long 1072608256
+ .long 0
+ .long 1072605184
+ .long 0
+ .long 1072601088
+ .long 0
+ .long 1072598016
+ .long 0
+ .long 1072593920
+ .long 0
+ .long 1072590848
+ .long 0
+ .long 1072586752
+ .long 0
+ .long 1072583680
+ .long 0
+ .long 1072580608
+ .long 0
+ .long 1072576512
+ .long 0
+ .long 1072573440
+ .long 0
+ .long 1072570368
+ .long 0
+ .long 1072566272
+ .long 0
+ .long 1072563200
+ .long 0
+ .long 1072560128
+ .long 0
+ .long 1072556032
+ .long 0
+ .long 1072552960
+ .long 0
+ .long 1072549888
+ .long 0
+ .long 1072546816
+ .long 0
+ .long 1072542720
+ .long 0
+ .long 1072539648
+ .long 0
+ .long 1072536576
+ .long 0
+ .long 1072533504
+ .long 0
+ .long 1072530432
+ .long 0
+ .long 1072527360
+ .long 0
+ .long 1072523264
+ .long 0
+ .long 1072520192
+ .long 0
+ .long 1072517120
+ .long 0
+ .long 1072514048
+ .long 0
+ .long 1072510976
+ .long 0
+ .long 1072507904
+ .long 0
+ .long 1072504832
+ .long 0
+ .long 1072501760
+ .long 0
+ .long 1072498688
+ .long 0
+ .long 1072495616
+ .long 0
+ .long 1072492544
+ .long 0
+ .long 1072489472
+ .long 0
+ .long 1072486400
+ .long 0
+ .long 1072483328
+ .long 0
+ .long 1072480256
+ .long 0
+ .long 1072478208
+ .long 0
+ .long 1072475136
+ .long 0
+ .long 1072472064
+ .long 0
+ .long 1072468992
+ .long 0
+ .long 1072465920
+ .long 0
+ .long 1072462848
+ .long 0
+ .long 1072459776
+ .long 0
+ .long 1072457728
+ .long 0
+ .long 1072454656
+ .long 0
+ .long 1072451584
+ .long 0
+ .long 1072448512
+ .long 0
+ .long 1072446464
+ .long 0
+ .long 1072443392
+ .long 0
+ .long 1072440320
+ .long 0
+ .long 1072437248
+ .long 0
+ .long 1072435200
+ .long 0
+ .long 1072432128
+ .long 0
+ .long 1072429056
+ .long 0
+ .long 1072427008
+ .long 0
+ .long 1072423936
+ .long 0
+ .long 1072420864
+ .long 0
+ .long 1072418816
+ .long 0
+ .long 1072415744
+ .long 0
+ .long 1072412672
+ .long 0
+ .long 1072410624
+ .long 0
+ .long 1072407552
+ .long 0
+ .long 1072405504
+ .long 0
+ .long 1072402432
+ .long 0
+ .long 1072400384
+ .long 0
+ .long 1072397312
+ .long 0
+ .long 1072395264
+ .long 0
+ .long 1072392192
+ .long 0
+ .long 1072390144
+ .long 0
+ .long 1072387072
+ .long 0
+ .long 1072385024
+ .long 0
+ .long 1072381952
+ .long 0
+ .long 1072379904
+ .long 0
+ .long 1072376832
+ .long 0
+ .long 1072374784
+ .long 0
+ .long 1072371712
+ .long 0
+ .long 1072369664
+ .long 0
+ .long 1072366592
+ .long 0
+ .long 1072364544
+ .long 0
+ .long 1072362496
+ .long 0
+ .long 1072359424
+ .long 0
+ .long 1072357376
+ .long 0
+ .long 1072355328
+ .long 0
+ .long 1072352256
+ .long 0
+ .long 1072350208
+ .long 0
+ .long 1072347136
+ .long 0
+ .long 1072345088
+ .long 0
+ .long 1072343040
+ .long 0
+ .long 1072340992
+ .long 0
+ .long 1072337920
+ .long 0
+ .long 1072335872
+ .long 0
+ .long 1072333824
+ .long 0
+ .long 1072330752
+ .long 0
+ .long 1072328704
+ .long 0
+ .long 1072326656
+ .long 0
+ .long 1072324608
+ .long 0
+ .long 1072321536
+ .long 0
+ .long 1072319488
+ .long 0
+ .long 1072317440
+ .long 0
+ .long 1072315392
+ .long 0
+ .long 1072313344
+ .long 0
+ .long 1072310272
+ .long 0
+ .long 1072308224
+ .long 0
+ .long 1072306176
+ .long 0
+ .long 1072304128
+ .long 0
+ .long 1072302080
+ .long 0
+ .long 1072300032
+ .long 0
+ .long 1072296960
+ .long 0
+ .long 1072294912
+ .long 0
+ .long 1072292864
+ .long 0
+ .long 1072290816
+ .long 0
+ .long 1072288768
+ .long 0
+ .long 1072286720
+ .long 0
+ .long 1072284672
+ .long 0
+ .long 1072282624
+ .long 0
+ .long 1072280576
+ .long 0
+ .long 1072278528
+ .long 0
+ .long 1072275456
+ .long 0
+ .long 1072273408
+ .long 0
+ .long 1072271360
+ .long 0
+ .long 1072269312
+ .long 0
+ .long 1072267264
+ .long 0
+ .long 1072265216
+ .long 0
+ .long 1072263168
+ .long 0
+ .long 1072261120
+ .long 0
+ .long 1072259072
+ .long 0
+ .long 1072257024
+ .long 0
+ .long 1072254976
+ .long 0
+ .long 1072252928
+ .long 0
+ .long 1072250880
+ .long 0
+ .long 1072248832
+ .long 0
+ .long 1072246784
+ .long 0
+ .long 1072244736
+ .long 0
+ .long 1072243712
+ .long 0
+ .long 1072241664
+ .long 0
+ .long 1072239616
+ .long 0
+ .long 1072237568
+ .long 0
+ .long 1072235520
+ .long 0
+ .long 1072233472
+ .long 0
+ .long 1072231424
+ .long 0
+ .long 1072229376
+ .long 0
+ .long 1072227328
+ .long 0
+ .long 1072225280
+ .long 0
+ .long 1072223232
+ .long 0
+ .long 1072222208
+ .long 0
+ .long 1072220160
+ .long 0
+ .long 1072218112
+ .long 0
+ .long 1072216064
+ .long 0
+ .long 1072214016
+ .long 0
+ .long 1072211968
+ .long 0
+ .long 1072210944
+ .long 0
+ .long 1072208896
+ .long 0
+ .long 1072206848
+ .long 0
+ .long 1072204800
+ .long 0
+ .long 1072202752
+ .long 0
+ .long 1072201728
+ .long 0
+ .long 1072199680
+ .long 0
+ .long 1072197632
+ .long 0
+ .long 1072195584
+ .long 0
+ .long 1072193536
+ .long 0
+ .long 1072192512
+ .long 0
+ .long 1072190464
+ .long 0
+ .long 1072188416
+ .long 0
+ .long 1072186368
+ .long 0
+ .long 1072185344
+ .long 0
+ .long 1072183296
+ .long 0
+ .long 1072181248
+ .long 0
+ .long 1072179200
+ .long 0
+ .long 1072178176
+ .long 0
+ .long 1072176128
+ .long 0
+ .long 1072174080
+ .long 0
+ .long 1072173056
+ .long 0
+ .long 1072171008
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072167936
+ .long 0
+ .long 1072165888
+ .long 0
+ .long 1072163840
+ .long 0
+ .long 1072161792
+ .long 0
+ .long 1072160768
+ .long 0
+ .long 1072158720
+ .long 0
+ .long 1072157696
+ .long 0
+ .long 1072155648
+ .long 0
+ .long 1072153600
+ .long 0
+ .long 1072152576
+ .long 0
+ .long 1072150528
+ .long 0
+ .long 1072148480
+ .long 0
+ .long 1072147456
+ .long 0
+ .long 1072145408
+ .long 0
+ .long 1072143360
+ .long 0
+ .long 1072142336
+ .long 0
+ .long 1072140288
+ .long 0
+ .long 1072139264
+ .long 0
+ .long 1072137216
+ .long 0
+ .long 1072135168
+ .long 0
+ .long 1072134144
+ .long 0
+ .long 1072132096
+ .long 0
+ .long 1072131072
+ .long 0
+ .long 1072129024
+ .long 0
+ .long 1072128000
+ .long 0
+ .long 1072125952
+ .long 0
+ .long 1072124928
+ .long 0
+ .long 1072122880
+ .long 0
+ .long 1072120832
+ .long 0
+ .long 1072119808
+ .long 0
+ .long 1072117760
+ .long 0
+ .long 1072116736
+ .long 0
+ .long 1072114688
+ .long 0
+ .long 1072113664
+ .long 0
+ .long 1072111616
+ .long 0
+ .long 1072110592
+ .long 0
+ .long 1072108544
+ .long 0
+ .long 1072107520
+ .long 0
+ .long 1072105472
+ .long 0
+ .long 1072104448
+ .long 0
+ .long 1072102400
+ .long 0
+ .long 1072101376
+ .long 0
+ .long 1072099328
+ .long 0
+ .long 1072098304
+ .long 0
+ .long 1072096256
+ .long 0
+ .long 1072095232
+ .long 0
+ .long 1072094208
+ .long 0
+ .long 1072092160
+ .long 0
+ .long 1072091136
+ .long 0
+ .long 1072089088
+ .long 0
+ .long 1072088064
+ .long 0
+ .long 1072086016
+ .long 0
+ .long 1072084992
+ .long 0
+ .long 1072082944
+ .long 0
+ .long 1072081920
+ .long 0
+ .long 1072080896
+ .long 0
+ .long 1072078848
+ .long 0
+ .long 1072075776
+ .long 0
+ .long 1072073728
+ .long 0
+ .long 1072070656
+ .long 0
+ .long 1072067584
+ .long 0
+ .long 1072064512
+ .long 0
+ .long 1072061440
+ .long 0
+ .long 1072059392
+ .long 0
+ .long 1072056320
+ .long 0
+ .long 1072053248
+ .long 0
+ .long 1072051200
+ .long 0
+ .long 1072048128
+ .long 0
+ .long 1072045056
+ .long 0
+ .long 1072043008
+ .long 0
+ .long 1072039936
+ .long 0
+ .long 1072037888
+ .long 0
+ .long 1072034816
+ .long 0
+ .long 1072031744
+ .long 0
+ .long 1072029696
+ .long 0
+ .long 1072026624
+ .long 0
+ .long 1072024576
+ .long 0
+ .long 1072021504
+ .long 0
+ .long 1072019456
+ .long 0
+ .long 1072016384
+ .long 0
+ .long 1072014336
+ .long 0
+ .long 1072011264
+ .long 0
+ .long 1072009216
+ .long 0
+ .long 1072006144
+ .long 0
+ .long 1072004096
+ .long 0
+ .long 1072002048
+ .long 0
+ .long 1071998976
+ .long 0
+ .long 1071996928
+ .long 0
+ .long 1071993856
+ .long 0
+ .long 1071991808
+ .long 0
+ .long 1071989760
+ .long 0
+ .long 1071986688
+ .long 0
+ .long 1071984640
+ .long 0
+ .long 1071982592
+ .long 0
+ .long 1071979520
+ .long 0
+ .long 1071977472
+ .long 0
+ .long 1071975424
+ .long 0
+ .long 1071972352
+ .long 0
+ .long 1071970304
+ .long 0
+ .long 1071968256
+ .long 0
+ .long 1071966208
+ .long 0
+ .long 1071964160
+ .long 0
+ .long 1071961088
+ .long 0
+ .long 1071959040
+ .long 0
+ .long 1071956992
+ .long 0
+ .long 1071954944
+ .long 0
+ .long 1071952896
+ .long 0
+ .long 1071949824
+ .long 0
+ .long 1071947776
+ .long 0
+ .long 1071945728
+ .long 0
+ .long 1071943680
+ .long 0
+ .long 1071941632
+ .long 0
+ .long 1071939584
+ .long 0
+ .long 1071937536
+ .long 0
+ .long 1071935488
+ .long 0
+ .long 1071933440
+ .long 0
+ .long 1071930368
+ .long 0
+ .long 1071928320
+ .long 0
+ .long 1071926272
+ .long 0
+ .long 1071924224
+ .long 0
+ .long 1071922176
+ .long 0
+ .long 1071920128
+ .long 0
+ .long 1071918080
+ .long 0
+ .long 1071916032
+ .long 0
+ .long 1071913984
+ .long 0
+ .long 1071911936
+ .long 0
+ .long 1071909888
+ .long 0
+ .long 1071907840
+ .long 0
+ .long 1071905792
+ .long 0
+ .long 1071903744
+ .long 0
+ .long 1071901696
+ .long 0
+ .long 1071900672
+ .long 0
+ .long 1071898624
+ .long 0
+ .long 1071896576
+ .long 0
+ .long 1071894528
+ .long 0
+ .long 1071892480
+ .long 0
+ .long 1071890432
+ .long 0
+ .long 1071888384
+ .long 0
+ .long 1071886336
+ .long 0
+ .long 1071884288
+ .long 0
+ .long 1071883264
+ .long 0
+ .long 1071881216
+ .long 0
+ .long 1071879168
+ .long 0
+ .long 1071877120
+ .long 0
+ .long 1071875072
+ .long 0
+ .long 1071873024
+ .long 0
+ .long 1071872000
+ .long 0
+ .long 1071869952
+ .long 0
+ .long 1071867904
+ .long 0
+ .long 1071865856
+ .long 0
+ .long 1071864832
+ .long 0
+ .long 1071862784
+ .long 0
+ .long 1071860736
+ .long 0
+ .long 1071858688
+ .long 0
+ .long 1071856640
+ .long 0
+ .long 1071855616
+ .long 0
+ .long 1071853568
+ .long 0
+ .long 1071851520
+ .long 0
+ .long 1071850496
+ .long 0
+ .long 1071848448
+ .long 0
+ .long 1071846400
+ .long 0
+ .long 1071844352
+ .long 0
+ .long 1071843328
+ .long 0
+ .long 1071841280
+ .long 0
+ .long 1071839232
+ .long 0
+ .long 1071838208
+ .long 0
+ .long 1071836160
+ .long 0
+ .long 1071834112
+ .long 0
+ .long 1071833088
+ .long 0
+ .long 1071831040
+ .long 0
+ .long 1071830016
+ .long 0
+ .long 1071827968
+ .long 0
+ .long 1071825920
+ .long 0
+ .long 1071824896
+ .long 0
+ .long 1071822848
+ .long 0
+ .long 1071821824
+ .long 0
+ .long 1071819776
+ .long 0
+ .long 1071817728
+ .long 0
+ .long 1071816704
+ .long 0
+ .long 1071814656
+ .long 0
+ .long 1071813632
+ .long 0
+ .long 1071811584
+ .long 0
+ .long 1071810560
+ .long 0
+ .long 1071808512
+ .long 0
+ .long 1071806464
+ .long 0
+ .long 1071805440
+ .long 0
+ .long 1071803392
+ .long 0
+ .long 1071802368
+ .long 0
+ .long 1071800320
+ .long 0
+ .long 1071799296
+ .long 0
+ .long 1071797248
+ .long 0
+ .long 1071796224
+ .long 0
+ .long 1071794176
+ .long 0
+ .long 1071793152
+ .long 0
+ .long 1071791104
+ .long 0
+ .long 1071790080
+ .long 0
+ .long 1071788032
+ .long 0
+ .long 1071787008
+ .long 0
+ .long 1071784960
+ .long 0
+ .long 1071783936
+ .long 0
+ .long 1071782912
+ .long 0
+ .long 1071780864
+ .long 0
+ .long 1071779840
+ .long 0
+ .long 1071777792
+ .long 0
+ .long 1071776768
+ .long 0
+ .long 1071774720
+ .long 0
+ .long 1071773696
+ .long 0
+ .long 1071772672
+ .long 0
+ .long 1071770624
+ .long 0
+ .long 1071769600
+ .long 0
+ .long 1071767552
+ .long 0
+ .long 1071766528
+ .long 0
+ .long 1071765504
+ .long 0
+ .long 1071763456
+ .long 0
+ .long 1071762432
+ .long 0
+ .long 1071760384
+ .long 0
+ .long 1071759360
+ .long 0
+ .long 1071758336
+ .long 0
+ .long 1071756288
+ .long 0
+ .long 1071755264
+ .long 0
+ .long 1071754240
+ .long 0
+ .long 1071752192
+ .long 0
+ .long 1071751168
+ .long 0
+ .long 1071750144
+ .long 0
+ .long 1071748096
+ .long 0
+ .long 1071747072
+ .long 0
+ .long 1071746048
+ .long 0
+ .long 1071744000
+ .long 0
+ .long 1071742976
+ .long 0
+ .long 1071741952
+ .long 0
+ .long 1071739904
+ .long 0
+ .long 1071738880
+ .long 0
+ .long 1071737856
+ .long 0
+ .long 1071736832
+ .long 0
+ .long 1071734784
+ .long 0
+ .long 1071733760
+ .long 0
+ .long 1071732736
+ .long 0
+ .long 1071730688
+ .long 0
+ .long 1071729664
+ .long 0
+ .long 1071728640
+ .long 0
+ .long 1071727616
+ .long 0
+ .long 1071725568
+ .long 0
+ .long 1071724544
+ .long 0
+ .long 1071723520
+ .long 0
+ .long 1071722496
+ .long 0
+ .long 1071720448
+ .long 0
+ .long 1071719424
+ .long 0
+ .long 1071718400
+ .long 0
+ .long 1071717376
+ .long 0
+ .long 1071715328
+ .long 0
+ .long 1071714304
+ .long 0
+ .long 1071713280
+ .long 0
+ .long 1071712256
+ .long 0
+ .long 1071711232
+ .long 0
+ .long 1071709184
+ .long 0
+ .long 1071708160
+ .long 0
+ .long 1071707136
+ .long 0
+ .long 1071706112
+ .long 0
+ .long 1071705088
+ .long 0
+ .long 1071704064
+ .long 0
+ .long 1071702016
+ .long 0
+ .long 1071700992
+ .long 0
+ .long 1071699968
+ .long 0
+ .long 1071698944
+ .long 0
+ .long 1071697920
+ .long 0
+ .long 1071696896
+ .long 0
+ .long 1071694848
+ .long 0
+ .long 1071693824
+ .long 0
+ .long 1071692800
+ .long 0
+ .long 1071691776
+ .long 0
+ .long 1071690752
+ .long 0
+ .long 1071689728
+ .long 0
+ .long 1071688704
+ .long 0
+ .long 1071686656
+ .long 0
+ .long 1071685632
+ .long 0
+ .long 1071684608
+ .long 0
+ .long 1071683584
+ .long 0
+ .long 1071682560
+ .long 0
+ .long 1071681536
+ .long 0
+ .long 1071680512
+ .long 0
+ .long 1071679488
+ .long 0
+ .long 1071677440
+ .long 0
+ .long 1071676416
+ .long 0
+ .long 1071675392
+ .long 0
+ .long 1071674368
+ .long 0
+ .long 1071673344
+ .long 0
+ .long 1071672320
+ .long 0
+ .long 1071671296
+ .long 0
+ .long 1071670272
+ .long 0
+ .long 1071669248
+ .long 0
+ .long 1071668224
+ .long 0
+ .long 1071667200
+ .long 0
+ .long 1071666176
+ .long 0
+ .long 1071665152
+ .long 0
+ .long 1071663104
+ .long 0
+ .long 1071662080
+ .long 0
+ .long 1071661056
+ .long 0
+ .long 1071660032
+ .long 0
+ .long 1071659008
+ .long 0
+ .long 1071657984
+ .long 0
+ .long 1071656960
+ .long 0
+ .long 1071655936
+ .long 0
+ .long 1071654912
+ .long 0
+ .long 1071653888
+ .long 0
+ .long 1071652864
+ .long 0
+ .long 1071651840
+ .long 0
+ .long 1071650816
+ .long 0
+ .long 1071649792
+ .long 0
+ .long 1071648768
+ .long 0
+ .long 1071647744
+ .long 0
+ .long 1071646720
+ .long 0
+ .long 1071645696
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1101004800
+ .long 1073741824
+ .long 1095761920
+ .long 256
+ .long 1118830592
+ .long 0
+ .long 1017118720
+ .long 1413754136
+ .long 1073291771
+ .long 856972295
+ .long 1016178214
+ .long 1413754136
+ .long 1074340347
+ .long 856972295
+ .long 1017226790
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 0
+ .long 1476395008
+ .long 1069897045
+ .long 1768958041
+ .long 3189069141
+ .long 805306368
+ .long 1068708659
+ .long 3580333578
+ .long 1040816593
+ .long 3067382784
+ .long 1067899757
+ .long 3397590151
+ .long 1067392113
+ .long 2939529726
+ .long 1066854585
+ .long 1423429166
+ .long 1066517752
+ .long 1775218934
+ .long 1066178574
+ .long 1185392460
+ .long 1065859647
+ .long 289998670
+ .long 1065577550
+ .long 3179807072
+ .long 1065648121
+ .long 3781007284
+ .long 1061576176
+ .long 2482106687
+ .long 1067019199
+ .long 763519713
+ .long 3214591591
+ .long 3695107454
+ .long 1067530646
+ .long 0
+ .long 1073741824
+ .long 1124791109
+ .long 1006764147
+ .long 1476395008
+ .long 1069897045
+ .long 1953913876
+ .long 3189069141
+ .long 805306368
+ .long 1067660083
+ .long 165110192
+ .long 1039768033
+ .long 3067304082
+ .long 1065802605
+ .long 3404727379
+ .long 1064246385
+ .long 2737480376
+ .long 1062660281
+ .long 933797922
+ .long 1061274873
+ .long 1475716730
+ .long 1059887095
+ .long 1511619763
+ .long 1058519827
+ .long 556024211
+ .long 1057187555
+ .long 3482101045
+ .long 1056217350
+ .long 1174622859
+ .long 1050762633
+ .long 899668651
+ .long 1055506366
+ .long 1081094694
+ .long 3202035365
+ .long 2559814773
+ .long 1053906576
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 3218341888
+ .long 0
+ .long 1070694400
+ .long 0
+ .long 3218046976
+ .long 0
+ .long 1070391296
+ .long 0
+ .long 3217739776
+ .type _vmldACosHATab,@object
+ .size _vmldACosHATab,4520
+ .space 88, 0x00
+ .align 16
+.L_2il0floatpacket.197:
+ .long 0x00000000,0x80000000,0x00000000,0x00000000
+ .type .L_2il0floatpacket.197,@object
+ .size .L_2il0floatpacket.197,16
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+
+ .text
+.L_2__routine_start___svml_acosf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_acosf16
+
+__svml_acosf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups __svml_sacos_data_internal(%rip), %zmm5
+ vmovups 64+__svml_sacos_data_internal(%rip), %zmm6
+
+/* SQ ~ 2*sqrt(Y) */
+ vmovups 192+__svml_sacos_data_internal(%rip), %zmm9
+ vmovups 256+__svml_sacos_data_internal(%rip), %zmm8
+ vmovups 448+__svml_sacos_data_internal(%rip), %zmm12
+ vmovups 512+__svml_sacos_data_internal(%rip), %zmm13
+ vmovaps %zmm0, %zmm4
+
+/* x = -|arg| */
+ vorps %zmm4, %zmm5, %zmm3
+ vandps %zmm4, %zmm5, %zmm2
+ vmovups 576+__svml_sacos_data_internal(%rip), %zmm0
+
+/* Y = 0.5 + 0.5*(-x) */
+ vfmadd231ps {rn-sae}, %zmm3, %zmm6, %zmm6
+
+/* x^2 */
+ vmulps {rn-sae}, %zmm3, %zmm3, %zmm7
+ vrsqrt14ps %zmm6, %zmm10
+ vcmpps $17, {sae}, %zmm9, %zmm6, %k2
+ vcmpps $22, {sae}, %zmm3, %zmm8, %k0
+ vmovups 832+__svml_sacos_data_internal(%rip), %zmm9
+ vminps {sae}, %zmm6, %zmm7, %zmm1
+ vmovups 768+__svml_sacos_data_internal(%rip), %zmm7
+ vxorps %zmm10, %zmm10, %zmm10{%k2}
+ vaddps {rn-sae}, %zmm6, %zmm6, %zmm14
+ vmulps {rn-sae}, %zmm1, %zmm1, %zmm8
+ vmulps {rn-sae}, %zmm10, %zmm10, %zmm11
+ vmulps {rn-sae}, %zmm10, %zmm14, %zmm5
+ vcmpps $21, {sae}, %zmm6, %zmm1, %k1
+
+/* X<X^2 iff X<0 */
+ vcmpps $17, {sae}, %zmm1, %zmm4, %k3
+
+/* polynomial */
+ vmovups 640+__svml_sacos_data_internal(%rip), %zmm6
+ vfmsub213ps {rn-sae}, %zmm12, %zmm11, %zmm14
+ vmovups 704+__svml_sacos_data_internal(%rip), %zmm11
+ vfmadd231ps {rn-sae}, %zmm1, %zmm7, %zmm9
+ vmovups 896+__svml_sacos_data_internal(%rip), %zmm10
+ vmovups 960+__svml_sacos_data_internal(%rip), %zmm12
+ vfmadd231ps {rn-sae}, %zmm14, %zmm13, %zmm0
+ vfmadd231ps {rn-sae}, %zmm1, %zmm6, %zmm11
+ vmulps {rn-sae}, %zmm14, %zmm5, %zmm15
+ vfmadd213ps {rn-sae}, %zmm9, %zmm8, %zmm11
+ vxorps %zmm12, %zmm12, %zmm12{%k1}
+ vfnmadd213ps {rn-sae}, %zmm5, %zmm15, %zmm0
+ vfmadd213ps {rn-sae}, %zmm10, %zmm1, %zmm11
+ kmovw %k1, %eax
+ kmovw %k3, %ecx
+ kmovw %k0, %edx
+ vmulps {rn-sae}, %zmm1, %zmm11, %zmm13
+ vblendmps %zmm0, %zmm3, %zmm0{%k1}
+ vxorps %zmm2, %zmm0, %zmm1
+ andl %eax, %ecx
+ kmovw %ecx, %k2
+ vfmadd213ps {rn-sae}, %zmm1, %zmm1, %zmm13
+ vorps 1088+__svml_sacos_data_internal(%rip), %zmm12, %zmm12{%k2}
+ vaddps {rn-sae}, %zmm13, %zmm12, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm4, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_sacos_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_acosf16,@function
+ .size __svml_acosf16,.-__svml_acosf16
+..LN__svml_acosf16.0:
+
+.L_2__routine_start___svml_sacos_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_sacos_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movzwl 2(%rdi), %edx
+ andl $32640, %edx
+ movss (%rdi), %xmm1
+ cmpl $32640, %edx
+ je .LBL_2_20
+
+
+ cvtss2sd %xmm1, %xmm1
+ movsd %xmm1, -32(%rsp)
+ andb $127, -25(%rsp)
+ movsd -32(%rsp), %xmm12
+ movsd 4168+_vmldACosHATab(%rip), %xmm0
+ comisd %xmm12, %xmm0
+ jbe .LBL_2_14
+
+
+ movsd 4176+_vmldACosHATab(%rip), %xmm1
+ comisd %xmm12, %xmm1
+ jbe .LBL_2_10
+
+
+ comisd 4128+_vmldACosHATab(%rip), %xmm12
+ jbe .LBL_2_9
+
+
+ movsd 4104+_vmldACosHATab(%rip), %xmm6
+ movaps %xmm12, %xmm8
+ mulsd %xmm12, %xmm6
+ movaps %xmm12, %xmm7
+ movsd %xmm6, -40(%rsp)
+ movsd -40(%rsp), %xmm13
+ movsd 4104+_vmldACosHATab(%rip), %xmm5
+ subsd -32(%rsp), %xmm13
+ movsd %xmm13, -48(%rsp)
+ movsd -40(%rsp), %xmm15
+ movsd -48(%rsp), %xmm14
+ subsd %xmm14, %xmm15
+ movaps %xmm12, %xmm14
+ movsd %xmm15, -40(%rsp)
+ movsd -40(%rsp), %xmm6
+ subsd %xmm6, %xmm8
+ movsd %xmm8, -48(%rsp)
+ movsd -40(%rsp), %xmm9
+ movaps %xmm9, %xmm4
+ addsd %xmm9, %xmm7
+ mulsd %xmm9, %xmm4
+ movsd -48(%rsp), %xmm10
+ movaps %xmm4, %xmm11
+ mulsd %xmm10, %xmm7
+ mulsd %xmm4, %xmm5
+ addsd %xmm7, %xmm11
+ movsd 4312+_vmldACosHATab(%rip), %xmm8
+ mulsd %xmm11, %xmm8
+ movsd %xmm5, -40(%rsp)
+ movsd -40(%rsp), %xmm1
+ movsd 4104+_vmldACosHATab(%rip), %xmm5
+ subsd %xmm4, %xmm1
+ addsd 4304+_vmldACosHATab(%rip), %xmm8
+ mulsd %xmm11, %xmm8
+ movsd %xmm1, -48(%rsp)
+ movsd -40(%rsp), %xmm0
+ movsd -48(%rsp), %xmm2
+ addsd 4296+_vmldACosHATab(%rip), %xmm8
+ subsd %xmm2, %xmm0
+ mulsd %xmm11, %xmm8
+ movsd %xmm0, -40(%rsp)
+ movsd -40(%rsp), %xmm3
+ addsd 4288+_vmldACosHATab(%rip), %xmm8
+ subsd %xmm3, %xmm4
+ mulsd %xmm11, %xmm8
+ movsd %xmm4, -48(%rsp)
+ movsd -40(%rsp), %xmm6
+ mulsd %xmm6, %xmm9
+ addsd 4280+_vmldACosHATab(%rip), %xmm8
+ mulsd %xmm6, %xmm10
+ mulsd %xmm11, %xmm8
+ mulsd %xmm9, %xmm5
+ addsd 4272+_vmldACosHATab(%rip), %xmm8
+ mulsd %xmm11, %xmm8
+ movaps %xmm9, %xmm0
+ movsd -48(%rsp), %xmm13
+ movaps %xmm6, %xmm4
+ movsd %xmm5, -40(%rsp)
+ addsd %xmm13, %xmm7
+ addsd 4264+_vmldACosHATab(%rip), %xmm8
+ mulsd %xmm7, %xmm14
+ mulsd %xmm11, %xmm8
+ addsd %xmm14, %xmm10
+ addsd 4256+_vmldACosHATab(%rip), %xmm8
+ movsd -40(%rsp), %xmm1
+ mulsd %xmm11, %xmm8
+ subsd %xmm9, %xmm1
+ addsd %xmm10, %xmm9
+ addsd 4248+_vmldACosHATab(%rip), %xmm8
+ mulsd %xmm9, %xmm7
+ mulsd %xmm11, %xmm8
+ movsd %xmm1, -48(%rsp)
+ movsd -40(%rsp), %xmm2
+ movsd -48(%rsp), %xmm15
+ subsd %xmm15, %xmm2
+ addsd 4240+_vmldACosHATab(%rip), %xmm8
+ movsd %xmm2, -40(%rsp)
+ movsd -40(%rsp), %xmm5
+ mulsd %xmm11, %xmm8
+ subsd %xmm5, %xmm0
+ movsd %xmm0, -48(%rsp)
+ movsd -40(%rsp), %xmm3
+ movsd -48(%rsp), %xmm5
+ movaps %xmm5, %xmm13
+ addsd 4232+_vmldACosHATab(%rip), %xmm8
+ mulsd %xmm3, %xmm4
+ addsd %xmm10, %xmm13
+ mulsd %xmm11, %xmm8
+ mulsd %xmm13, %xmm6
+ addsd 4224+_vmldACosHATab(%rip), %xmm8
+ addsd %xmm7, %xmm6
+ mulsd %xmm11, %xmm8
+ movsd 4104+_vmldACosHATab(%rip), %xmm7
+ movaps %xmm4, %xmm13
+ mulsd %xmm4, %xmm7
+ addsd 4216+_vmldACosHATab(%rip), %xmm8
+ movsd %xmm7, -40(%rsp)
+ movsd -40(%rsp), %xmm1
+ movsd 4200+_vmldACosHATab(%rip), %xmm11
+ subsd %xmm4, %xmm1
+ mulsd %xmm9, %xmm11
+ addsd %xmm6, %xmm4
+ movsd %xmm1, -48(%rsp)
+ movaps %xmm12, %xmm9
+ movsd -40(%rsp), %xmm0
+ movsd -48(%rsp), %xmm2
+ movsd 4192+_vmldACosHATab(%rip), %xmm1
+ subsd %xmm2, %xmm0
+ mulsd %xmm1, %xmm3
+ mulsd %xmm1, %xmm10
+ mulsd %xmm4, %xmm8
+ addsd %xmm3, %xmm9
+ mulsd %xmm1, %xmm5
+ addsd %xmm10, %xmm11
+ movsd %xmm0, -40(%rsp)
+ pxor %xmm1, %xmm1
+ movsd -40(%rsp), %xmm7
+ addsd %xmm11, %xmm8
+ subsd %xmm7, %xmm13
+ addsd %xmm5, %xmm8
+ movsd %xmm13, -48(%rsp)
+ movsd -40(%rsp), %xmm0
+ movsd -48(%rsp), %xmm2
+ movsd %xmm9, -40(%rsp)
+ addsd %xmm2, %xmm6
+ movsd -40(%rsp), %xmm10
+ movsd %xmm3, -56(%rsp)
+ subsd %xmm10, %xmm12
+ movsd 4208+_vmldACosHATab(%rip), %xmm4
+ addsd %xmm12, %xmm3
+ mulsd %xmm4, %xmm0
+ mulsd %xmm4, %xmm6
+ movsd %xmm3, -48(%rsp)
+ movsd -40(%rsp), %xmm3
+ movaps %xmm3, %xmm12
+ movsd -48(%rsp), %xmm7
+ addsd %xmm0, %xmm12
+ addsd %xmm7, %xmm8
+ movsd %xmm12, -40(%rsp)
+ movsd -40(%rsp), %xmm12
+ subsd %xmm12, %xmm3
+ addsd %xmm3, %xmm0
+ movsd %xmm0, -48(%rsp)
+ movsd -40(%rsp), %xmm3
+ movsd -48(%rsp), %xmm0
+ cvtss2sd (%rdi), %xmm1
+ addsd %xmm8, %xmm0
+ comisd 4184+_vmldACosHATab(%rip), %xmm1
+ addsd %xmm0, %xmm6
+ jbe .LBL_2_7
+
+
+ movsd 4136+_vmldACosHATab(%rip), %xmm2
+ movaps %xmm2, %xmm0
+ subsd %xmm3, %xmm0
+ movsd %xmm0, -40(%rsp)
+ movsd -40(%rsp), %xmm1
+ movsd 4144+_vmldACosHATab(%rip), %xmm0
+ subsd %xmm1, %xmm2
+ subsd %xmm6, %xmm0
+ subsd %xmm3, %xmm2
+ movsd %xmm2, -48(%rsp)
+ movsd -40(%rsp), %xmm1
+ movsd -48(%rsp), %xmm3
+ addsd %xmm3, %xmm0
+ jmp .LBL_2_8
+
+.LBL_2_7:
+
+ movsd 4136+_vmldACosHATab(%rip), %xmm2
+ movaps %xmm3, %xmm0
+ addsd %xmm2, %xmm0
+ movsd %xmm0, -40(%rsp)
+ movsd -40(%rsp), %xmm1
+ subsd %xmm1, %xmm2
+ addsd %xmm2, %xmm3
+ movsd %xmm3, -48(%rsp)
+ movsd 4144+_vmldACosHATab(%rip), %xmm3
+ movsd -40(%rsp), %xmm1
+ addsd %xmm3, %xmm6
+ movsd -48(%rsp), %xmm0
+ addsd %xmm6, %xmm0
+
+.LBL_2_8:
+
+ addsd %xmm0, %xmm1
+ cvtsd2ss %xmm1, %xmm1
+ movss %xmm1, (%rsi)
+ ret
+
+.LBL_2_9:
+
+ movsd 4144+_vmldACosHATab(%rip), %xmm1
+ addsd %xmm0, %xmm12
+ movsd %xmm12, -40(%rsp)
+ movsd -40(%rsp), %xmm0
+ mulsd -32(%rsp), %xmm0
+ movsd %xmm0, -56(%rsp)
+ movb -49(%rsp), %dl
+ movb 3(%rdi), %dil
+ andb $127, %dl
+ andb $-128, %dil
+ orb %dil, %dl
+ movb %dl, -49(%rsp)
+ subsd -56(%rsp), %xmm1
+ addsd 4136+_vmldACosHATab(%rip), %xmm1
+ cvtsd2ss %xmm1, %xmm1
+ movss %xmm1, (%rsi)
+ ret
+
+.LBL_2_10:
+
+ movaps %xmm0, %xmm8
+ movzwl 4174+_vmldACosHATab(%rip), %r9d
+ pxor %xmm13, %xmm13
+ andl $-32753, %r9d
+ subsd %xmm12, %xmm8
+ subsd %xmm0, %xmm13
+ mulsd %xmm8, %xmm1
+ movsd %xmm1, -56(%rsp)
+ movzwl -50(%rsp), %ecx
+ andl $32752, %ecx
+ shrl $4, %ecx
+ addl $-1023, %ecx
+ movl %ecx, %r8d
+ movl %ecx, %edx
+ negl %r8d
+ addl $1023, %r8d
+ andl $2047, %r8d
+ shll $4, %r8d
+ movsd %xmm0, -32(%rsp)
+ orl %r8d, %r9d
+ movw %r9w, -26(%rsp)
+ andl $1, %edx
+ movsd -32(%rsp), %xmm4
+ lea _vmldACosHATab(%rip), %r8
+ mulsd %xmm4, %xmm1
+ movl %edx, %r10d
+ movaps %xmm1, %xmm15
+ movsd 4112+_vmldACosHATab(%rip), %xmm6
+ addsd %xmm1, %xmm15
+ jne ..L54
+ movaps %xmm1, %xmm15
+..L54:
+ mulsd %xmm15, %xmm6
+ movaps %xmm15, %xmm7
+ movaps %xmm6, %xmm9
+ subl %edx, %ecx
+ movsd 4120+_vmldACosHATab(%rip), %xmm11
+ subsd %xmm15, %xmm9
+ addsd %xmm1, %xmm11
+ movsd %xmm9, -48(%rsp)
+ movsd -48(%rsp), %xmm10
+ movsd %xmm11, -24(%rsp)
+ subsd %xmm10, %xmm6
+ movl -24(%rsp), %r11d
+ movaps %xmm6, %xmm14
+ shll $8, %r10d
+ andl $511, %r11d
+ addl %r10d, %r11d
+ subsd %xmm6, %xmm7
+ movsd (%r8,%r11,8), %xmm5
+ addsd %xmm7, %xmm14
+ mulsd %xmm5, %xmm6
+ movaps %xmm5, %xmm12
+ mulsd %xmm5, %xmm12
+ mulsd %xmm12, %xmm14
+ movsd 4512+_vmldACosHATab(%rip), %xmm4
+ addsd %xmm13, %xmm14
+ mulsd %xmm14, %xmm4
+ shrl $1, %ecx
+ addsd 4504+_vmldACosHATab(%rip), %xmm4
+ mulsd %xmm14, %xmm4
+ addl $1023, %ecx
+ andl $2047, %ecx
+ addsd 4496+_vmldACosHATab(%rip), %xmm4
+ mulsd %xmm14, %xmm4
+ movzwl 4174+_vmldACosHATab(%rip), %r9d
+ shll $4, %ecx
+ andl $-32753, %r9d
+ movsd %xmm0, -16(%rsp)
+ orl %ecx, %r9d
+ movw %r9w, -10(%rsp)
+ movsd -16(%rsp), %xmm9
+ mulsd %xmm9, %xmm6
+ addsd 4488+_vmldACosHATab(%rip), %xmm4
+ mulsd %xmm14, %xmm4
+ movsd 4104+_vmldACosHATab(%rip), %xmm3
+ mulsd %xmm6, %xmm3
+ addsd 4480+_vmldACosHATab(%rip), %xmm4
+ mulsd %xmm14, %xmm4
+ movsd %xmm3, -40(%rsp)
+ movsd -40(%rsp), %xmm1
+ movsd 4352+_vmldACosHATab(%rip), %xmm11
+ subsd %xmm6, %xmm1
+ addsd 4472+_vmldACosHATab(%rip), %xmm4
+ addsd 4360+_vmldACosHATab(%rip), %xmm11
+ mulsd %xmm14, %xmm4
+ mulsd %xmm8, %xmm11
+ addsd 4464+_vmldACosHATab(%rip), %xmm4
+ mulsd %xmm14, %xmm4
+ mulsd %xmm15, %xmm4
+ movsd %xmm1, -48(%rsp)
+ addsd %xmm4, %xmm7
+ mulsd %xmm5, %xmm7
+ movsd 4456+_vmldACosHATab(%rip), %xmm5
+ mulsd %xmm8, %xmm5
+ mulsd %xmm9, %xmm7
+ addsd 4448+_vmldACosHATab(%rip), %xmm5
+ mulsd %xmm8, %xmm5
+ movsd -40(%rsp), %xmm2
+ movsd -48(%rsp), %xmm0
+ movsd 4104+_vmldACosHATab(%rip), %xmm4
+ subsd %xmm0, %xmm2
+ mulsd %xmm8, %xmm4
+ addsd 4440+_vmldACosHATab(%rip), %xmm5
+ mulsd %xmm8, %xmm5
+ movaps %xmm8, %xmm0
+ movsd %xmm2, -40(%rsp)
+ movsd -40(%rsp), %xmm14
+ movsd 4104+_vmldACosHATab(%rip), %xmm2
+ subsd %xmm14, %xmm6
+ addsd 4432+_vmldACosHATab(%rip), %xmm5
+ mulsd %xmm8, %xmm5
+ movsd %xmm6, -48(%rsp)
+ movsd -40(%rsp), %xmm6
+ movsd -48(%rsp), %xmm10
+ movsd %xmm4, -40(%rsp)
+ addsd %xmm10, %xmm7
+ addsd 4424+_vmldACosHATab(%rip), %xmm5
+ mulsd %xmm8, %xmm5
+ movsd -40(%rsp), %xmm3
+ movsd 4336+_vmldACosHATab(%rip), %xmm12
+ subsd %xmm8, %xmm3
+ addsd 4416+_vmldACosHATab(%rip), %xmm5
+ addsd 4344+_vmldACosHATab(%rip), %xmm12
+ mulsd %xmm8, %xmm5
+ addsd %xmm11, %xmm12
+ addsd 4408+_vmldACosHATab(%rip), %xmm5
+ mulsd %xmm8, %xmm12
+ mulsd %xmm8, %xmm5
+ movsd %xmm3, -48(%rsp)
+ movsd -40(%rsp), %xmm1
+ movsd -48(%rsp), %xmm15
+ movsd 4320+_vmldACosHATab(%rip), %xmm13
+ subsd %xmm15, %xmm1
+ addsd 4400+_vmldACosHATab(%rip), %xmm5
+ addsd 4328+_vmldACosHATab(%rip), %xmm13
+ mulsd %xmm8, %xmm5
+ addsd %xmm12, %xmm13
+ addsd 4392+_vmldACosHATab(%rip), %xmm5
+ movsd %xmm1, -40(%rsp)
+ mulsd %xmm8, %xmm5
+ movsd -40(%rsp), %xmm4
+ subsd %xmm4, %xmm0
+ addsd 4384+_vmldACosHATab(%rip), %xmm5
+ movsd %xmm0, -48(%rsp)
+ movsd -40(%rsp), %xmm4
+ movaps %xmm4, %xmm14
+ mulsd %xmm4, %xmm14
+ mulsd %xmm8, %xmm5
+ mulsd %xmm14, %xmm2
+ addsd 4376+_vmldACosHATab(%rip), %xmm5
+ movsd -48(%rsp), %xmm3
+ movsd %xmm2, -40(%rsp)
+ movsd -40(%rsp), %xmm9
+ mulsd %xmm8, %xmm5
+ subsd %xmm14, %xmm9
+ movsd %xmm9, -48(%rsp)
+ movsd -40(%rsp), %xmm11
+ movsd -48(%rsp), %xmm10
+ movsd 4336+_vmldACosHATab(%rip), %xmm0
+ subsd %xmm10, %xmm11
+ mulsd %xmm4, %xmm0
+ addsd 4368+_vmldACosHATab(%rip), %xmm5
+ addsd %xmm8, %xmm4
+ mulsd %xmm8, %xmm5
+ mulsd %xmm3, %xmm4
+ mulsd %xmm8, %xmm5
+ movsd %xmm11, -40(%rsp)
+ movaps %xmm0, %xmm1
+ movsd -40(%rsp), %xmm12
+ mulsd %xmm8, %xmm5
+ subsd %xmm12, %xmm14
+ movsd %xmm14, -48(%rsp)
+ addsd %xmm5, %xmm13
+ movsd -40(%rsp), %xmm9
+ mulsd 4352+_vmldACosHATab(%rip), %xmm9
+ mulsd %xmm13, %xmm7
+ addsd %xmm9, %xmm1
+ movsd -48(%rsp), %xmm2
+ movsd %xmm1, -40(%rsp)
+ addsd %xmm2, %xmm4
+ movsd -40(%rsp), %xmm13
+ movsd %xmm9, -24(%rsp)
+ subsd %xmm13, %xmm0
+ mulsd 4352+_vmldACosHATab(%rip), %xmm4
+ addsd %xmm0, %xmm9
+ movsd %xmm9, -48(%rsp)
+ movsd -40(%rsp), %xmm12
+ movsd 4320+_vmldACosHATab(%rip), %xmm10
+ movsd -48(%rsp), %xmm1
+ addsd %xmm12, %xmm10
+ movsd %xmm10, -40(%rsp)
+ movsd -40(%rsp), %xmm15
+ movsd 4320+_vmldACosHATab(%rip), %xmm11
+ movsd 4104+_vmldACosHATab(%rip), %xmm9
+ subsd %xmm15, %xmm11
+ movsd 4336+_vmldACosHATab(%rip), %xmm2
+ addsd %xmm11, %xmm12
+ mulsd %xmm3, %xmm2
+ movsd %xmm12, -48(%rsp)
+ movsd -40(%rsp), %xmm15
+ mulsd %xmm15, %xmm9
+ movsd -48(%rsp), %xmm0
+ movsd %xmm9, -40(%rsp)
+ movsd -40(%rsp), %xmm10
+ movsd 4360+_vmldACosHATab(%rip), %xmm3
+ subsd %xmm15, %xmm10
+ mulsd %xmm8, %xmm3
+ movsd %xmm10, -48(%rsp)
+ movsd -40(%rsp), %xmm11
+ movsd -48(%rsp), %xmm13
+ subsd %xmm13, %xmm11
+ addsd 4344+_vmldACosHATab(%rip), %xmm3
+ movsd %xmm11, -40(%rsp)
+ movsd -40(%rsp), %xmm14
+ mulsd %xmm8, %xmm3
+ subsd %xmm14, %xmm15
+ movsd %xmm15, -48(%rsp)
+ movsd -40(%rsp), %xmm10
+ movsd -48(%rsp), %xmm9
+ addsd %xmm9, %xmm4
+ addsd 4328+_vmldACosHATab(%rip), %xmm3
+ addsd %xmm2, %xmm4
+ addsd %xmm5, %xmm3
+ addsd %xmm1, %xmm4
+ addsd %xmm0, %xmm4
+ addsd %xmm3, %xmm4
+ mulsd %xmm6, %xmm4
+ mulsd %xmm10, %xmm6
+ addsd %xmm7, %xmm4
+ pxor %xmm7, %xmm7
+ cvtss2sd (%rdi), %xmm7
+ comisd 4184+_vmldACosHATab(%rip), %xmm7
+ ja .LBL_2_13
+
+
+ movsd 4152+_vmldACosHATab(%rip), %xmm2
+ movaps %xmm2, %xmm0
+ movsd 4160+_vmldACosHATab(%rip), %xmm5
+ subsd %xmm6, %xmm0
+ subsd %xmm4, %xmm5
+ movsd %xmm0, -40(%rsp)
+ movsd -40(%rsp), %xmm1
+ movsd %xmm6, -56(%rsp)
+ subsd %xmm1, %xmm2
+ subsd %xmm6, %xmm2
+ movsd %xmm2, -48(%rsp)
+ movsd -40(%rsp), %xmm6
+ movsd -48(%rsp), %xmm3
+ movaps %xmm3, %xmm4
+ addsd %xmm5, %xmm4
+
+.LBL_2_13:
+
+ addsd %xmm4, %xmm6
+ cvtsd2ss %xmm6, %xmm6
+ movss %xmm6, (%rsi)
+ ret
+
+.LBL_2_14:
+
+ ucomisd %xmm0, %xmm1
+ jp .LBL_2_15
+ je .LBL_2_19
+
+.LBL_2_15:
+
+ xorps .L_2il0floatpacket.199(%rip), %xmm0
+ ucomisd %xmm0, %xmm1
+ jp .LBL_2_16
+ je .LBL_2_18
+
+.LBL_2_16:
+
+ movl $1, %eax
+ pxor %xmm1, %xmm1
+ pxor %xmm0, %xmm0
+ divss %xmm0, %xmm1
+ movss %xmm1, (%rsi)
+
+
+ ret
+
+.LBL_2_18:
+
+ movsd 4152+_vmldACosHATab(%rip), %xmm0
+ addsd 4160+_vmldACosHATab(%rip), %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ movss %xmm0, (%rsi)
+ ret
+
+.LBL_2_19:
+
+ movsd 4184+_vmldACosHATab(%rip), %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ movss %xmm0, (%rsi)
+ ret
+
+.LBL_2_20:
+
+ divss %xmm1, %xmm1
+ testl $8388607, (%rdi)
+ movss %xmm1, (%rsi)
+ sete %al
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_sacos_cout_rare_internal,@function
+ .size __svml_sacos_cout_rare_internal,.-__svml_sacos_cout_rare_internal
+..LN__svml_sacos_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_sacos_data_internal:
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .type __svml_sacos_data_internal,@object
+ .size __svml_sacos_data_internal,1600
+ .align 32
+_vmldACosHATab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072689152
+ .long 0
+ .long 1072685056
+ .long 0
+ .long 1072680960
+ .long 0
+ .long 1072676864
+ .long 0
+ .long 1072672768
+ .long 0
+ .long 1072668672
+ .long 0
+ .long 1072665600
+ .long 0
+ .long 1072661504
+ .long 0
+ .long 1072657408
+ .long 0
+ .long 1072653312
+ .long 0
+ .long 1072649216
+ .long 0
+ .long 1072646144
+ .long 0
+ .long 1072642048
+ .long 0
+ .long 1072637952
+ .long 0
+ .long 1072634880
+ .long 0
+ .long 1072630784
+ .long 0
+ .long 1072626688
+ .long 0
+ .long 1072623616
+ .long 0
+ .long 1072619520
+ .long 0
+ .long 1072615424
+ .long 0
+ .long 1072612352
+ .long 0
+ .long 1072608256
+ .long 0
+ .long 1072605184
+ .long 0
+ .long 1072601088
+ .long 0
+ .long 1072598016
+ .long 0
+ .long 1072593920
+ .long 0
+ .long 1072590848
+ .long 0
+ .long 1072586752
+ .long 0
+ .long 1072583680
+ .long 0
+ .long 1072580608
+ .long 0
+ .long 1072576512
+ .long 0
+ .long 1072573440
+ .long 0
+ .long 1072570368
+ .long 0
+ .long 1072566272
+ .long 0
+ .long 1072563200
+ .long 0
+ .long 1072560128
+ .long 0
+ .long 1072556032
+ .long 0
+ .long 1072552960
+ .long 0
+ .long 1072549888
+ .long 0
+ .long 1072546816
+ .long 0
+ .long 1072542720
+ .long 0
+ .long 1072539648
+ .long 0
+ .long 1072536576
+ .long 0
+ .long 1072533504
+ .long 0
+ .long 1072530432
+ .long 0
+ .long 1072527360
+ .long 0
+ .long 1072523264
+ .long 0
+ .long 1072520192
+ .long 0
+ .long 1072517120
+ .long 0
+ .long 1072514048
+ .long 0
+ .long 1072510976
+ .long 0
+ .long 1072507904
+ .long 0
+ .long 1072504832
+ .long 0
+ .long 1072501760
+ .long 0
+ .long 1072498688
+ .long 0
+ .long 1072495616
+ .long 0
+ .long 1072492544
+ .long 0
+ .long 1072489472
+ .long 0
+ .long 1072486400
+ .long 0
+ .long 1072483328
+ .long 0
+ .long 1072480256
+ .long 0
+ .long 1072478208
+ .long 0
+ .long 1072475136
+ .long 0
+ .long 1072472064
+ .long 0
+ .long 1072468992
+ .long 0
+ .long 1072465920
+ .long 0
+ .long 1072462848
+ .long 0
+ .long 1072459776
+ .long 0
+ .long 1072457728
+ .long 0
+ .long 1072454656
+ .long 0
+ .long 1072451584
+ .long 0
+ .long 1072448512
+ .long 0
+ .long 1072446464
+ .long 0
+ .long 1072443392
+ .long 0
+ .long 1072440320
+ .long 0
+ .long 1072437248
+ .long 0
+ .long 1072435200
+ .long 0
+ .long 1072432128
+ .long 0
+ .long 1072429056
+ .long 0
+ .long 1072427008
+ .long 0
+ .long 1072423936
+ .long 0
+ .long 1072420864
+ .long 0
+ .long 1072418816
+ .long 0
+ .long 1072415744
+ .long 0
+ .long 1072412672
+ .long 0
+ .long 1072410624
+ .long 0
+ .long 1072407552
+ .long 0
+ .long 1072405504
+ .long 0
+ .long 1072402432
+ .long 0
+ .long 1072400384
+ .long 0
+ .long 1072397312
+ .long 0
+ .long 1072395264
+ .long 0
+ .long 1072392192
+ .long 0
+ .long 1072390144
+ .long 0
+ .long 1072387072
+ .long 0
+ .long 1072385024
+ .long 0
+ .long 1072381952
+ .long 0
+ .long 1072379904
+ .long 0
+ .long 1072376832
+ .long 0
+ .long 1072374784
+ .long 0
+ .long 1072371712
+ .long 0
+ .long 1072369664
+ .long 0
+ .long 1072366592
+ .long 0
+ .long 1072364544
+ .long 0
+ .long 1072362496
+ .long 0
+ .long 1072359424
+ .long 0
+ .long 1072357376
+ .long 0
+ .long 1072355328
+ .long 0
+ .long 1072352256
+ .long 0
+ .long 1072350208
+ .long 0
+ .long 1072347136
+ .long 0
+ .long 1072345088
+ .long 0
+ .long 1072343040
+ .long 0
+ .long 1072340992
+ .long 0
+ .long 1072337920
+ .long 0
+ .long 1072335872
+ .long 0
+ .long 1072333824
+ .long 0
+ .long 1072330752
+ .long 0
+ .long 1072328704
+ .long 0
+ .long 1072326656
+ .long 0
+ .long 1072324608
+ .long 0
+ .long 1072321536
+ .long 0
+ .long 1072319488
+ .long 0
+ .long 1072317440
+ .long 0
+ .long 1072315392
+ .long 0
+ .long 1072313344
+ .long 0
+ .long 1072310272
+ .long 0
+ .long 1072308224
+ .long 0
+ .long 1072306176
+ .long 0
+ .long 1072304128
+ .long 0
+ .long 1072302080
+ .long 0
+ .long 1072300032
+ .long 0
+ .long 1072296960
+ .long 0
+ .long 1072294912
+ .long 0
+ .long 1072292864
+ .long 0
+ .long 1072290816
+ .long 0
+ .long 1072288768
+ .long 0
+ .long 1072286720
+ .long 0
+ .long 1072284672
+ .long 0
+ .long 1072282624
+ .long 0
+ .long 1072280576
+ .long 0
+ .long 1072278528
+ .long 0
+ .long 1072275456
+ .long 0
+ .long 1072273408
+ .long 0
+ .long 1072271360
+ .long 0
+ .long 1072269312
+ .long 0
+ .long 1072267264
+ .long 0
+ .long 1072265216
+ .long 0
+ .long 1072263168
+ .long 0
+ .long 1072261120
+ .long 0
+ .long 1072259072
+ .long 0
+ .long 1072257024
+ .long 0
+ .long 1072254976
+ .long 0
+ .long 1072252928
+ .long 0
+ .long 1072250880
+ .long 0
+ .long 1072248832
+ .long 0
+ .long 1072246784
+ .long 0
+ .long 1072244736
+ .long 0
+ .long 1072243712
+ .long 0
+ .long 1072241664
+ .long 0
+ .long 1072239616
+ .long 0
+ .long 1072237568
+ .long 0
+ .long 1072235520
+ .long 0
+ .long 1072233472
+ .long 0
+ .long 1072231424
+ .long 0
+ .long 1072229376
+ .long 0
+ .long 1072227328
+ .long 0
+ .long 1072225280
+ .long 0
+ .long 1072223232
+ .long 0
+ .long 1072222208
+ .long 0
+ .long 1072220160
+ .long 0
+ .long 1072218112
+ .long 0
+ .long 1072216064
+ .long 0
+ .long 1072214016
+ .long 0
+ .long 1072211968
+ .long 0
+ .long 1072210944
+ .long 0
+ .long 1072208896
+ .long 0
+ .long 1072206848
+ .long 0
+ .long 1072204800
+ .long 0
+ .long 1072202752
+ .long 0
+ .long 1072201728
+ .long 0
+ .long 1072199680
+ .long 0
+ .long 1072197632
+ .long 0
+ .long 1072195584
+ .long 0
+ .long 1072193536
+ .long 0
+ .long 1072192512
+ .long 0
+ .long 1072190464
+ .long 0
+ .long 1072188416
+ .long 0
+ .long 1072186368
+ .long 0
+ .long 1072185344
+ .long 0
+ .long 1072183296
+ .long 0
+ .long 1072181248
+ .long 0
+ .long 1072179200
+ .long 0
+ .long 1072178176
+ .long 0
+ .long 1072176128
+ .long 0
+ .long 1072174080
+ .long 0
+ .long 1072173056
+ .long 0
+ .long 1072171008
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072167936
+ .long 0
+ .long 1072165888
+ .long 0
+ .long 1072163840
+ .long 0
+ .long 1072161792
+ .long 0
+ .long 1072160768
+ .long 0
+ .long 1072158720
+ .long 0
+ .long 1072157696
+ .long 0
+ .long 1072155648
+ .long 0
+ .long 1072153600
+ .long 0
+ .long 1072152576
+ .long 0
+ .long 1072150528
+ .long 0
+ .long 1072148480
+ .long 0
+ .long 1072147456
+ .long 0
+ .long 1072145408
+ .long 0
+ .long 1072143360
+ .long 0
+ .long 1072142336
+ .long 0
+ .long 1072140288
+ .long 0
+ .long 1072139264
+ .long 0
+ .long 1072137216
+ .long 0
+ .long 1072135168
+ .long 0
+ .long 1072134144
+ .long 0
+ .long 1072132096
+ .long 0
+ .long 1072131072
+ .long 0
+ .long 1072129024
+ .long 0
+ .long 1072128000
+ .long 0
+ .long 1072125952
+ .long 0
+ .long 1072124928
+ .long 0
+ .long 1072122880
+ .long 0
+ .long 1072120832
+ .long 0
+ .long 1072119808
+ .long 0
+ .long 1072117760
+ .long 0
+ .long 1072116736
+ .long 0
+ .long 1072114688
+ .long 0
+ .long 1072113664
+ .long 0
+ .long 1072111616
+ .long 0
+ .long 1072110592
+ .long 0
+ .long 1072108544
+ .long 0
+ .long 1072107520
+ .long 0
+ .long 1072105472
+ .long 0
+ .long 1072104448
+ .long 0
+ .long 1072102400
+ .long 0
+ .long 1072101376
+ .long 0
+ .long 1072099328
+ .long 0
+ .long 1072098304
+ .long 0
+ .long 1072096256
+ .long 0
+ .long 1072095232
+ .long 0
+ .long 1072094208
+ .long 0
+ .long 1072092160
+ .long 0
+ .long 1072091136
+ .long 0
+ .long 1072089088
+ .long 0
+ .long 1072088064
+ .long 0
+ .long 1072086016
+ .long 0
+ .long 1072084992
+ .long 0
+ .long 1072082944
+ .long 0
+ .long 1072081920
+ .long 0
+ .long 1072080896
+ .long 0
+ .long 1072078848
+ .long 0
+ .long 1072075776
+ .long 0
+ .long 1072073728
+ .long 0
+ .long 1072070656
+ .long 0
+ .long 1072067584
+ .long 0
+ .long 1072064512
+ .long 0
+ .long 1072061440
+ .long 0
+ .long 1072059392
+ .long 0
+ .long 1072056320
+ .long 0
+ .long 1072053248
+ .long 0
+ .long 1072051200
+ .long 0
+ .long 1072048128
+ .long 0
+ .long 1072045056
+ .long 0
+ .long 1072043008
+ .long 0
+ .long 1072039936
+ .long 0
+ .long 1072037888
+ .long 0
+ .long 1072034816
+ .long 0
+ .long 1072031744
+ .long 0
+ .long 1072029696
+ .long 0
+ .long 1072026624
+ .long 0
+ .long 1072024576
+ .long 0
+ .long 1072021504
+ .long 0
+ .long 1072019456
+ .long 0
+ .long 1072016384
+ .long 0
+ .long 1072014336
+ .long 0
+ .long 1072011264
+ .long 0
+ .long 1072009216
+ .long 0
+ .long 1072006144
+ .long 0
+ .long 1072004096
+ .long 0
+ .long 1072002048
+ .long 0
+ .long 1071998976
+ .long 0
+ .long 1071996928
+ .long 0
+ .long 1071993856
+ .long 0
+ .long 1071991808
+ .long 0
+ .long 1071989760
+ .long 0
+ .long 1071986688
+ .long 0
+ .long 1071984640
+ .long 0
+ .long 1071982592
+ .long 0
+ .long 1071979520
+ .long 0
+ .long 1071977472
+ .long 0
+ .long 1071975424
+ .long 0
+ .long 1071972352
+ .long 0
+ .long 1071970304
+ .long 0
+ .long 1071968256
+ .long 0
+ .long 1071966208
+ .long 0
+ .long 1071964160
+ .long 0
+ .long 1071961088
+ .long 0
+ .long 1071959040
+ .long 0
+ .long 1071956992
+ .long 0
+ .long 1071954944
+ .long 0
+ .long 1071952896
+ .long 0
+ .long 1071949824
+ .long 0
+ .long 1071947776
+ .long 0
+ .long 1071945728
+ .long 0
+ .long 1071943680
+ .long 0
+ .long 1071941632
+ .long 0
+ .long 1071939584
+ .long 0
+ .long 1071937536
+ .long 0
+ .long 1071935488
+ .long 0
+ .long 1071933440
+ .long 0
+ .long 1071930368
+ .long 0
+ .long 1071928320
+ .long 0
+ .long 1071926272
+ .long 0
+ .long 1071924224
+ .long 0
+ .long 1071922176
+ .long 0
+ .long 1071920128
+ .long 0
+ .long 1071918080
+ .long 0
+ .long 1071916032
+ .long 0
+ .long 1071913984
+ .long 0
+ .long 1071911936
+ .long 0
+ .long 1071909888
+ .long 0
+ .long 1071907840
+ .long 0
+ .long 1071905792
+ .long 0
+ .long 1071903744
+ .long 0
+ .long 1071901696
+ .long 0
+ .long 1071900672
+ .long 0
+ .long 1071898624
+ .long 0
+ .long 1071896576
+ .long 0
+ .long 1071894528
+ .long 0
+ .long 1071892480
+ .long 0
+ .long 1071890432
+ .long 0
+ .long 1071888384
+ .long 0
+ .long 1071886336
+ .long 0
+ .long 1071884288
+ .long 0
+ .long 1071883264
+ .long 0
+ .long 1071881216
+ .long 0
+ .long 1071879168
+ .long 0
+ .long 1071877120
+ .long 0
+ .long 1071875072
+ .long 0
+ .long 1071873024
+ .long 0
+ .long 1071872000
+ .long 0
+ .long 1071869952
+ .long 0
+ .long 1071867904
+ .long 0
+ .long 1071865856
+ .long 0
+ .long 1071864832
+ .long 0
+ .long 1071862784
+ .long 0
+ .long 1071860736
+ .long 0
+ .long 1071858688
+ .long 0
+ .long 1071856640
+ .long 0
+ .long 1071855616
+ .long 0
+ .long 1071853568
+ .long 0
+ .long 1071851520
+ .long 0
+ .long 1071850496
+ .long 0
+ .long 1071848448
+ .long 0
+ .long 1071846400
+ .long 0
+ .long 1071844352
+ .long 0
+ .long 1071843328
+ .long 0
+ .long 1071841280
+ .long 0
+ .long 1071839232
+ .long 0
+ .long 1071838208
+ .long 0
+ .long 1071836160
+ .long 0
+ .long 1071834112
+ .long 0
+ .long 1071833088
+ .long 0
+ .long 1071831040
+ .long 0
+ .long 1071830016
+ .long 0
+ .long 1071827968
+ .long 0
+ .long 1071825920
+ .long 0
+ .long 1071824896
+ .long 0
+ .long 1071822848
+ .long 0
+ .long 1071821824
+ .long 0
+ .long 1071819776
+ .long 0
+ .long 1071817728
+ .long 0
+ .long 1071816704
+ .long 0
+ .long 1071814656
+ .long 0
+ .long 1071813632
+ .long 0
+ .long 1071811584
+ .long 0
+ .long 1071810560
+ .long 0
+ .long 1071808512
+ .long 0
+ .long 1071806464
+ .long 0
+ .long 1071805440
+ .long 0
+ .long 1071803392
+ .long 0
+ .long 1071802368
+ .long 0
+ .long 1071800320
+ .long 0
+ .long 1071799296
+ .long 0
+ .long 1071797248
+ .long 0
+ .long 1071796224
+ .long 0
+ .long 1071794176
+ .long 0
+ .long 1071793152
+ .long 0
+ .long 1071791104
+ .long 0
+ .long 1071790080
+ .long 0
+ .long 1071788032
+ .long 0
+ .long 1071787008
+ .long 0
+ .long 1071784960
+ .long 0
+ .long 1071783936
+ .long 0
+ .long 1071782912
+ .long 0
+ .long 1071780864
+ .long 0
+ .long 1071779840
+ .long 0
+ .long 1071777792
+ .long 0
+ .long 1071776768
+ .long 0
+ .long 1071774720
+ .long 0
+ .long 1071773696
+ .long 0
+ .long 1071772672
+ .long 0
+ .long 1071770624
+ .long 0
+ .long 1071769600
+ .long 0
+ .long 1071767552
+ .long 0
+ .long 1071766528
+ .long 0
+ .long 1071765504
+ .long 0
+ .long 1071763456
+ .long 0
+ .long 1071762432
+ .long 0
+ .long 1071760384
+ .long 0
+ .long 1071759360
+ .long 0
+ .long 1071758336
+ .long 0
+ .long 1071756288
+ .long 0
+ .long 1071755264
+ .long 0
+ .long 1071754240
+ .long 0
+ .long 1071752192
+ .long 0
+ .long 1071751168
+ .long 0
+ .long 1071750144
+ .long 0
+ .long 1071748096
+ .long 0
+ .long 1071747072
+ .long 0
+ .long 1071746048
+ .long 0
+ .long 1071744000
+ .long 0
+ .long 1071742976
+ .long 0
+ .long 1071741952
+ .long 0
+ .long 1071739904
+ .long 0
+ .long 1071738880
+ .long 0
+ .long 1071737856
+ .long 0
+ .long 1071736832
+ .long 0
+ .long 1071734784
+ .long 0
+ .long 1071733760
+ .long 0
+ .long 1071732736
+ .long 0
+ .long 1071730688
+ .long 0
+ .long 1071729664
+ .long 0
+ .long 1071728640
+ .long 0
+ .long 1071727616
+ .long 0
+ .long 1071725568
+ .long 0
+ .long 1071724544
+ .long 0
+ .long 1071723520
+ .long 0
+ .long 1071722496
+ .long 0
+ .long 1071720448
+ .long 0
+ .long 1071719424
+ .long 0
+ .long 1071718400
+ .long 0
+ .long 1071717376
+ .long 0
+ .long 1071715328
+ .long 0
+ .long 1071714304
+ .long 0
+ .long 1071713280
+ .long 0
+ .long 1071712256
+ .long 0
+ .long 1071711232
+ .long 0
+ .long 1071709184
+ .long 0
+ .long 1071708160
+ .long 0
+ .long 1071707136
+ .long 0
+ .long 1071706112
+ .long 0
+ .long 1071705088
+ .long 0
+ .long 1071704064
+ .long 0
+ .long 1071702016
+ .long 0
+ .long 1071700992
+ .long 0
+ .long 1071699968
+ .long 0
+ .long 1071698944
+ .long 0
+ .long 1071697920
+ .long 0
+ .long 1071696896
+ .long 0
+ .long 1071694848
+ .long 0
+ .long 1071693824
+ .long 0
+ .long 1071692800
+ .long 0
+ .long 1071691776
+ .long 0
+ .long 1071690752
+ .long 0
+ .long 1071689728
+ .long 0
+ .long 1071688704
+ .long 0
+ .long 1071686656
+ .long 0
+ .long 1071685632
+ .long 0
+ .long 1071684608
+ .long 0
+ .long 1071683584
+ .long 0
+ .long 1071682560
+ .long 0
+ .long 1071681536
+ .long 0
+ .long 1071680512
+ .long 0
+ .long 1071679488
+ .long 0
+ .long 1071677440
+ .long 0
+ .long 1071676416
+ .long 0
+ .long 1071675392
+ .long 0
+ .long 1071674368
+ .long 0
+ .long 1071673344
+ .long 0
+ .long 1071672320
+ .long 0
+ .long 1071671296
+ .long 0
+ .long 1071670272
+ .long 0
+ .long 1071669248
+ .long 0
+ .long 1071668224
+ .long 0
+ .long 1071667200
+ .long 0
+ .long 1071666176
+ .long 0
+ .long 1071665152
+ .long 0
+ .long 1071663104
+ .long 0
+ .long 1071662080
+ .long 0
+ .long 1071661056
+ .long 0
+ .long 1071660032
+ .long 0
+ .long 1071659008
+ .long 0
+ .long 1071657984
+ .long 0
+ .long 1071656960
+ .long 0
+ .long 1071655936
+ .long 0
+ .long 1071654912
+ .long 0
+ .long 1071653888
+ .long 0
+ .long 1071652864
+ .long 0
+ .long 1071651840
+ .long 0
+ .long 1071650816
+ .long 0
+ .long 1071649792
+ .long 0
+ .long 1071648768
+ .long 0
+ .long 1071647744
+ .long 0
+ .long 1071646720
+ .long 0
+ .long 1071645696
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1101004800
+ .long 1073741824
+ .long 1095761920
+ .long 256
+ .long 1118830592
+ .long 0
+ .long 1017118720
+ .long 1413754136
+ .long 1073291771
+ .long 856972295
+ .long 1016178214
+ .long 1413754136
+ .long 1074340347
+ .long 856972295
+ .long 1017226790
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 0
+ .long 1476395008
+ .long 1069897045
+ .long 1768958041
+ .long 3189069141
+ .long 805306368
+ .long 1068708659
+ .long 3580333578
+ .long 1040816593
+ .long 3067382784
+ .long 1067899757
+ .long 3397590151
+ .long 1067392113
+ .long 2939529726
+ .long 1066854585
+ .long 1423429166
+ .long 1066517752
+ .long 1775218934
+ .long 1066178574
+ .long 1185392460
+ .long 1065859647
+ .long 289998670
+ .long 1065577550
+ .long 3179807072
+ .long 1065648121
+ .long 3781007284
+ .long 1061576176
+ .long 2482106687
+ .long 1067019199
+ .long 763519713
+ .long 3214591591
+ .long 3695107454
+ .long 1067530646
+ .long 0
+ .long 1073741824
+ .long 1124791109
+ .long 1006764147
+ .long 1476395008
+ .long 1069897045
+ .long 1953913876
+ .long 3189069141
+ .long 805306368
+ .long 1067660083
+ .long 165110192
+ .long 1039768033
+ .long 3067304082
+ .long 1065802605
+ .long 3404727379
+ .long 1064246385
+ .long 2737480376
+ .long 1062660281
+ .long 933797922
+ .long 1061274873
+ .long 1475716730
+ .long 1059887095
+ .long 1511619763
+ .long 1058519827
+ .long 556024211
+ .long 1057187555
+ .long 3482101045
+ .long 1056217350
+ .long 1174622859
+ .long 1050762633
+ .long 899668651
+ .long 1055506366
+ .long 1081094694
+ .long 3202035365
+ .long 2559814773
+ .long 1053906576
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 3218341888
+ .long 0
+ .long 1070694400
+ .long 0
+ .long 3218046976
+ .long 0
+ .long 1070391296
+ .long 0
+ .long 3217739776
+ .type _vmldACosHATab,@object
+ .size _vmldACosHATab,4520
+ .space 88, 0x00
+ .align 16
+.L_2il0floatpacket.199:
+ .long 0x00000000,0x80000000,0x00000000,0x00000000
+ .type .L_2il0floatpacket.199,@object
+ .size .L_2il0floatpacket.199,16
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * *
+ * * Compute log(x+sqrt(x*x-1)) using RSQRT14/RSQRT28 for starting the
+ * * square root approximation, and small table lookups for log (mapping to
+ * * AVX3 permute instructions).
+ * *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_acosh8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_acosh8
+
+__svml_acosh8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 256+__svml_dacosh_data_internal_avx512(%rip), %zmm5
+
+/* polynomial computation for small inputs */
+ vmovups 576+__svml_dacosh_data_internal_avx512(%rip), %zmm13
+ vmovups 640+__svml_dacosh_data_internal_avx512(%rip), %zmm14
+
+/*
+ * sqrt(1+x^2) ~ Sh + Sl + Sh*Eh*poly_s
+ * poly_s = c1+c2*Eh+c3*Eh^2
+ */
+ vmovups 704+__svml_dacosh_data_internal_avx512(%rip), %zmm1
+ vmovups 832+__svml_dacosh_data_internal_avx512(%rip), %zmm2
+ vmovups 896+__svml_dacosh_data_internal_avx512(%rip), %zmm6
+
+/* very large inputs ? */
+ vmovups 448+__svml_dacosh_data_internal_avx512(%rip), %zmm15
+
+/* out of range inputs? */
+ vmovups 512+__svml_dacosh_data_internal_avx512(%rip), %zmm3
+
+/* not a very small input ? */
+ vmovups 384+__svml_dacosh_data_internal_avx512(%rip), %zmm10
+ vmovaps %zmm0, %zmm12
+
+/* x^2 - 1 */
+ vmovaps %zmm5, %zmm11
+ vfmsub231pd {rn-sae}, %zmm12, %zmm12, %zmm11
+ vcmppd $21, {sae}, %zmm15, %zmm12, %k2
+ vcmppd $22, {sae}, %zmm3, %zmm12, %k0
+ vcmppd $18, {sae}, %zmm5, %zmm12, %k1
+ vrsqrt14pd %zmm11, %zmm4
+ vcmppd $21, {sae}, %zmm10, %zmm11, %k3
+ vfmadd231pd {rn-sae}, %zmm11, %zmm13, %zmm14
+ vmovups 768+__svml_dacosh_data_internal_avx512(%rip), %zmm13
+
+/* Sh ~sqrt(-1+x^2) */
+ vmulpd {rn-sae}, %zmm4, %zmm11, %zmm9
+ vmulpd {rn-sae}, %zmm11, %zmm14, %zmm8
+
+/* Sh+x */
+ vaddpd {rn-sae}, %zmm12, %zmm9, %zmm15
+ kmovw %k0, %edx
+ kmovw %k1, %eax
+
+/* Shh */
+ vsubpd {rn-sae}, %zmm12, %zmm15, %zmm14
+
+/* (Yh*R0)_low */
+ vmovaps %zmm11, %zmm0
+ orl %eax, %edx
+
+/* rel. error term: Eh=1-Sh*R0 */
+ vmovaps %zmm5, %zmm7
+ vfmsub213pd {rn-sae}, %zmm9, %zmm4, %zmm0
+ vfnmadd231pd {rn-sae}, %zmm9, %zmm4, %zmm7
+
+/* rel. error term: Eh=(1-Sh*R0)-Sl*R0 */
+ vfnmadd231pd {rn-sae}, %zmm0, %zmm4, %zmm7
+
+/* Shl */
+ vsubpd {rn-sae}, %zmm14, %zmm9, %zmm4
+ vmovups 1472+__svml_dacosh_data_internal_avx512(%rip), %zmm14
+ vfmadd231pd {rn-sae}, %zmm7, %zmm1, %zmm13
+ vfmadd213pd {rn-sae}, %zmm2, %zmm7, %zmm13
+ vfmadd213pd {rn-sae}, %zmm6, %zmm7, %zmm13
+
+/* Sh*Eh */
+ vmulpd {rn-sae}, %zmm7, %zmm9, %zmm7
+
+/* Sl + Sh*Eh*poly_s */
+ vfmadd213pd {rn-sae}, %zmm0, %zmm13, %zmm7
+
+/* polynomials */
+ vmovups 1344+__svml_dacosh_data_internal_avx512(%rip), %zmm13
+
+/* polynomial computation for small inputs */
+ vaddpd {rn-sae}, %zmm7, %zmm9, %zmm0
+
+/* Xin0+Sl+Sh*Eh*poly_s ~ x+sqrt(1+x^2) */
+ vaddpd {rn-sae}, %zmm7, %zmm15, %zmm6
+ vfmadd231pd {rn-sae}, %zmm0, %zmm8, %zmm0
+
+/* fixup for very large inputs */
+ vmovups 1216+__svml_dacosh_data_internal_avx512(%rip), %zmm8
+
+/* Sl_high */
+ vsubpd {rn-sae}, %zmm15, %zmm6, %zmm9
+ vmovups 1536+__svml_dacosh_data_internal_avx512(%rip), %zmm15
+ vmulpd {rn-sae}, %zmm8, %zmm12, %zmm6{%k2}
+
+/* Sl_l */
+ vsubpd {rn-sae}, %zmm9, %zmm7, %zmm3
+ vrcp14pd %zmm6, %zmm1
+
+/* Xin_low */
+ vaddpd {rn-sae}, %zmm4, %zmm3, %zmm7
+
+/* Table lookups */
+ vmovups __svml_dacosh_data_internal_avx512(%rip), %zmm3
+
+/* round reciprocal to 1+4b mantissas */
+ vpaddq 1088+__svml_dacosh_data_internal_avx512(%rip), %zmm1, %zmm2
+
+/* fixup for very large inputs */
+ vxorpd %zmm7, %zmm7, %zmm7{%k2}
+ vmovups 1408+__svml_dacosh_data_internal_avx512(%rip), %zmm1
+ vandpd 1152+__svml_dacosh_data_internal_avx512(%rip), %zmm2, %zmm8
+ vmovups 128+__svml_dacosh_data_internal_avx512(%rip), %zmm2
+
+/* Prepare table index */
+ vpsrlq $48, %zmm8, %zmm9
+
+/* reduced argument for log(): (Rcp*Xin-1)+Rcp*Xin_low */
+ vfmsub231pd {rn-sae}, %zmm8, %zmm6, %zmm5
+
+/* exponents */
+ vgetexppd {sae}, %zmm8, %zmm4
+ vmovups 1280+__svml_dacosh_data_internal_avx512(%rip), %zmm6
+ vpermt2pd 64+__svml_dacosh_data_internal_avx512(%rip), %zmm9, %zmm3
+ vpermt2pd 192+__svml_dacosh_data_internal_avx512(%rip), %zmm9, %zmm2
+ vsubpd {rn-sae}, %zmm6, %zmm4, %zmm4{%k2}
+ vfmadd231pd {rn-sae}, %zmm8, %zmm7, %zmm5
+ vmovups 1600+__svml_dacosh_data_internal_avx512(%rip), %zmm6
+ vmovups 1664+__svml_dacosh_data_internal_avx512(%rip), %zmm7
+
+/* -K*L2H + Th */
+ vmovups 1920+__svml_dacosh_data_internal_avx512(%rip), %zmm8
+
+/* -K*L2L + Tl */
+ vmovups 1984+__svml_dacosh_data_internal_avx512(%rip), %zmm9
+ vfmadd231pd {rn-sae}, %zmm5, %zmm13, %zmm1
+ vmovups 1792+__svml_dacosh_data_internal_avx512(%rip), %zmm13
+ vfnmadd231pd {rn-sae}, %zmm4, %zmm8, %zmm3
+ vfnmadd213pd {rn-sae}, %zmm2, %zmm9, %zmm4
+ vfmadd213pd {rn-sae}, %zmm14, %zmm5, %zmm1
+ vmovups 1728+__svml_dacosh_data_internal_avx512(%rip), %zmm2
+ vmovups 1856+__svml_dacosh_data_internal_avx512(%rip), %zmm14
+ vfmadd213pd {rn-sae}, %zmm15, %zmm5, %zmm1
+
+/* R^2 */
+ vmulpd {rn-sae}, %zmm5, %zmm5, %zmm15
+ vfmadd213pd {rn-sae}, %zmm6, %zmm5, %zmm1
+ vfmadd213pd {rn-sae}, %zmm7, %zmm5, %zmm1
+ vfmadd213pd {rn-sae}, %zmm2, %zmm5, %zmm1
+ vfmadd213pd {rn-sae}, %zmm13, %zmm5, %zmm1
+ vfmadd213pd {rn-sae}, %zmm14, %zmm5, %zmm1
+
+/* Tl + R^2*Poly */
+ vfmadd213pd {rn-sae}, %zmm4, %zmm15, %zmm1
+
+/* R+Tl + R^2*Poly */
+ vaddpd {rn-sae}, %zmm5, %zmm1, %zmm5
+ vaddpd {rn-sae}, %zmm5, %zmm3, %zmm0{%k3}
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm12, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dacosh_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_acosh8,@function
+ .size __svml_acosh8,.-__svml_acosh8
+..LN__svml_acosh8.0:
+
+.L_2__routine_start___svml_dacosh_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dacosh_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ movzwl 6(%rdi), %eax
+ andl $32752, %eax
+ movsd (%rdi), %xmm0
+ cmpl $32752, %eax
+ je .LBL_2_9
+
+.LBL_2_2:
+
+ movsd %xmm0, -8(%rsp)
+
+
+ cmpl $0, -8(%rsp)
+ jne .LBL_2_8
+
+
+ cmpl $1072693248, -4(%rsp)
+ je .LBL_2_7
+
+
+ cmpl $2146435072, -4(%rsp)
+ jne .LBL_2_8
+
+
+ movsd %xmm0, (%rsi)
+ xorl %eax, %eax
+ ret
+
+.LBL_2_7:
+
+ movq 8+__dacosh_la_CoutTab(%rip), %rax
+ movq %rax, (%rsi)
+ xorl %eax, %eax
+ ret
+
+.LBL_2_8:
+
+ movsd 16+__dacosh_la_CoutTab(%rip), %xmm0
+ movl $1, %eax
+ mulsd 8+__dacosh_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_9:
+
+ testl $1048575, 4(%rdi)
+ jne .LBL_2_12
+
+
+ cmpl $0, (%rdi)
+ je .LBL_2_2
+
+.LBL_2_12:
+
+ mulsd %xmm0, %xmm0
+ xorl %eax, %eax
+ movsd %xmm0, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dacosh_cout_rare_internal,@function
+ .size __svml_dacosh_cout_rare_internal,.-__svml_dacosh_cout_rare_internal
+..LN__svml_dacosh_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dacosh_data_internal_avx512:
+ .long 0
+ .long 0
+ .long 3222405120
+ .long 3215919664
+ .long 1848311808
+ .long 3216910087
+ .long 1890025472
+ .long 3217424176
+ .long 3348791296
+ .long 3217854455
+ .long 2880159744
+ .long 3218171740
+ .long 3256631296
+ .long 3218366859
+ .long 4139499520
+ .long 3218553303
+ .long 3971973120
+ .long 3218731811
+ .long 3348791296
+ .long 3218903031
+ .long 1605304320
+ .long 3219067535
+ .long 3827638272
+ .long 3219177074
+ .long 1584414720
+ .long 3219253343
+ .long 860823552
+ .long 3219326935
+ .long 3896934400
+ .long 3219398031
+ .long 643547136
+ .long 3219466797
+ .long 0
+ .long 0
+ .long 3496399314
+ .long 1028893491
+ .long 720371772
+ .long 1026176044
+ .long 1944193543
+ .long 3175338952
+ .long 634920691
+ .long 3175752108
+ .long 1664625295
+ .long 1029304828
+ .long 192624563
+ .long 3177103997
+ .long 3796653051
+ .long 3176138396
+ .long 3062724207
+ .long 3176680434
+ .long 634920691
+ .long 3176800684
+ .long 1913570380
+ .long 3174806221
+ .long 825194088
+ .long 3176465773
+ .long 2335489660
+ .long 3172599741
+ .long 2497625109
+ .long 1029604288
+ .long 914782743
+ .long 1029350199
+ .long 3743595607
+ .long 3175525305
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 0
+ .long 1055916032
+ .long 0
+ .long 1055916032
+ .long 0
+ .long 1055916032
+ .long 0
+ .long 1055916032
+ .long 0
+ .long 1055916032
+ .long 0
+ .long 1055916032
+ .long 0
+ .long 1055916032
+ .long 0
+ .long 1055916032
+ .long 0
+ .long 1608515584
+ .long 0
+ .long 1608515584
+ .long 0
+ .long 1608515584
+ .long 0
+ .long 1608515584
+ .long 0
+ .long 1608515584
+ .long 0
+ .long 1608515584
+ .long 0
+ .long 1608515584
+ .long 0
+ .long 1608515584
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 246350567
+ .long 1068708642
+ .long 246350567
+ .long 1068708642
+ .long 246350567
+ .long 1068708642
+ .long 246350567
+ .long 1068708642
+ .long 246350567
+ .long 1068708642
+ .long 246350567
+ .long 1068708642
+ .long 246350567
+ .long 1068708642
+ .long 246350567
+ .long 1068708642
+ .long 1431445118
+ .long 3217380693
+ .long 1431445118
+ .long 3217380693
+ .long 1431445118
+ .long 3217380693
+ .long 1431445118
+ .long 3217380693
+ .long 1431445118
+ .long 3217380693
+ .long 1431445118
+ .long 3217380693
+ .long 1431445118
+ .long 3217380693
+ .long 1431445118
+ .long 3217380693
+ .long 26490386
+ .long 1070694400
+ .long 26490386
+ .long 1070694400
+ .long 26490386
+ .long 1070694400
+ .long 26490386
+ .long 1070694400
+ .long 26490386
+ .long 1070694400
+ .long 26490386
+ .long 1070694400
+ .long 26490386
+ .long 1070694400
+ .long 26490386
+ .long 1070694400
+ .long 20643840
+ .long 1070858240
+ .long 20643840
+ .long 1070858240
+ .long 20643840
+ .long 1070858240
+ .long 20643840
+ .long 1070858240
+ .long 20643840
+ .long 1070858240
+ .long 20643840
+ .long 1070858240
+ .long 20643840
+ .long 1070858240
+ .long 20643840
+ .long 1070858240
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1074790400
+ .long 0
+ .long 1074790400
+ .long 0
+ .long 1074790400
+ .long 0
+ .long 1074790400
+ .long 0
+ .long 1074790400
+ .long 0
+ .long 1074790400
+ .long 0
+ .long 1074790400
+ .long 0
+ .long 1074790400
+ .long 1075921768
+ .long 3216615856
+ .long 1075921768
+ .long 3216615856
+ .long 1075921768
+ .long 3216615856
+ .long 1075921768
+ .long 3216615856
+ .long 1075921768
+ .long 3216615856
+ .long 1075921768
+ .long 3216615856
+ .long 1075921768
+ .long 3216615856
+ .long 1075921768
+ .long 3216615856
+ .long 1847891832
+ .long 1069318246
+ .long 1847891832
+ .long 1069318246
+ .long 1847891832
+ .long 1069318246
+ .long 1847891832
+ .long 1069318246
+ .long 1847891832
+ .long 1069318246
+ .long 1847891832
+ .long 1069318246
+ .long 1847891832
+ .long 1069318246
+ .long 1847891832
+ .long 1069318246
+ .long 2315602889
+ .long 3217031163
+ .long 2315602889
+ .long 3217031163
+ .long 2315602889
+ .long 3217031163
+ .long 2315602889
+ .long 3217031163
+ .long 2315602889
+ .long 3217031163
+ .long 2315602889
+ .long 3217031163
+ .long 2315602889
+ .long 3217031163
+ .long 2315602889
+ .long 3217031163
+ .long 4145174257
+ .long 1069697314
+ .long 4145174257
+ .long 1069697314
+ .long 4145174257
+ .long 1069697314
+ .long 4145174257
+ .long 1069697314
+ .long 4145174257
+ .long 1069697314
+ .long 4145174257
+ .long 1069697314
+ .long 4145174257
+ .long 1069697314
+ .long 4145174257
+ .long 1069697314
+ .long 1436264246
+ .long 3217380693
+ .long 1436264246
+ .long 3217380693
+ .long 1436264246
+ .long 3217380693
+ .long 1436264246
+ .long 3217380693
+ .long 1436264246
+ .long 3217380693
+ .long 1436264246
+ .long 3217380693
+ .long 1436264246
+ .long 3217380693
+ .long 1436264246
+ .long 3217380693
+ .long 2579396527
+ .long 1070176665
+ .long 2579396527
+ .long 1070176665
+ .long 2579396527
+ .long 1070176665
+ .long 2579396527
+ .long 1070176665
+ .long 2579396527
+ .long 1070176665
+ .long 2579396527
+ .long 1070176665
+ .long 2579396527
+ .long 1070176665
+ .long 2579396527
+ .long 1070176665
+ .long 4294966373
+ .long 3218079743
+ .long 4294966373
+ .long 3218079743
+ .long 4294966373
+ .long 3218079743
+ .long 4294966373
+ .long 3218079743
+ .long 4294966373
+ .long 3218079743
+ .long 4294966373
+ .long 3218079743
+ .long 4294966373
+ .long 3218079743
+ .long 4294966373
+ .long 3218079743
+ .long 1431655617
+ .long 1070945621
+ .long 1431655617
+ .long 1070945621
+ .long 1431655617
+ .long 1070945621
+ .long 1431655617
+ .long 1070945621
+ .long 1431655617
+ .long 1070945621
+ .long 1431655617
+ .long 1070945621
+ .long 1431655617
+ .long 1070945621
+ .long 1431655617
+ .long 1070945621
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .type __svml_dacosh_data_internal_avx512,@object
+ .size __svml_dacosh_data_internal_avx512,2048
+ .align 8
+__dacosh_la_CoutTab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 4293918720
+ .type __dacosh_la_CoutTab,@object
+ .size __dacosh_la_CoutTab,32
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * *
+ * * Compute log(x+sqrt(x*x-1)) using RSQRT14/RSQRT28 for starting the
+ * * square root approximation, and small table lookups for log (mapping to
+ * * AVX3 permute instructions).
+ * *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_acoshf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_acoshf16
+
+__svml_acoshf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 256+__svml_sacosh_data_internal_avx512(%rip), %zmm1
+
+/*
+ * sqrt(1+x^2) ~ Sh + Sl + Sh*Eh*poly_s
+ * poly_s = c1+c2*Eh
+ */
+ vmovups 640+__svml_sacosh_data_internal_avx512(%rip), %zmm13
+ vmovups 704+__svml_sacosh_data_internal_avx512(%rip), %zmm15
+
+/* polynomial computation for small inputs */
+ vmovups 576+__svml_sacosh_data_internal_avx512(%rip), %zmm9
+
+/* very large inputs ? */
+ vmovups 448+__svml_sacosh_data_internal_avx512(%rip), %zmm10
+
+/* out of range inputs? */
+ vmovups 512+__svml_sacosh_data_internal_avx512(%rip), %zmm11
+
+/* not a very small input ? */
+ vmovups 384+__svml_sacosh_data_internal_avx512(%rip), %zmm6
+ vmovaps %zmm0, %zmm8
+
+/* x^2 - 1 */
+ vmovaps %zmm1, %zmm7
+ vfmsub231ps {rn-sae}, %zmm8, %zmm8, %zmm7
+ vcmpps $21, {sae}, %zmm10, %zmm8, %k2
+ vcmpps $22, {sae}, %zmm11, %zmm8, %k0
+ vcmpps $18, {sae}, %zmm1, %zmm8, %k1
+ vrsqrt14ps %zmm7, %zmm12
+ vcmpps $21, {sae}, %zmm6, %zmm7, %k3
+ vmulps {rn-sae}, %zmm9, %zmm7, %zmm4
+
+/* Sh ~sqrt(-1+x^2) */
+ vmulps {rn-sae}, %zmm12, %zmm7, %zmm5
+ kmovw %k0, %edx
+ kmovw %k1, %eax
+
+/* Sh+x */
+ vaddps {rn-sae}, %zmm8, %zmm5, %zmm9
+
+/* (Yh*R0)_low */
+ vmovaps %zmm7, %zmm0
+ orl %eax, %edx
+
+/* rel. error term: Eh=1-Sh*R0 */
+ vmovaps %zmm1, %zmm14
+ vfmsub213ps {rn-sae}, %zmm5, %zmm12, %zmm0
+ vfnmadd231ps {rn-sae}, %zmm5, %zmm12, %zmm14
+
+/* rel. error term: Eh=(1-Sh*R0)-Sl*R0 */
+ vfnmadd231ps {rn-sae}, %zmm0, %zmm12, %zmm14
+
+/* Sh*Eh */
+ vmulps {rn-sae}, %zmm14, %zmm5, %zmm3
+ vfmadd231ps {rn-sae}, %zmm14, %zmm13, %zmm15
+
+/* Sl + Sh*Eh*poly_s */
+ vfmadd213ps {rn-sae}, %zmm0, %zmm15, %zmm3
+
+/* Shh */
+ vsubps {rn-sae}, %zmm8, %zmm9, %zmm15
+
+/* polynomial computation for small inputs */
+ vaddps {rn-sae}, %zmm3, %zmm5, %zmm0
+
+/* Xin0+Sl+Sh*Eh*poly_s ~ x+sqrt(1+x^2) */
+ vaddps {rn-sae}, %zmm3, %zmm9, %zmm2
+
+/* Shl */
+ vsubps {rn-sae}, %zmm15, %zmm5, %zmm10
+ vfmadd231ps {rn-sae}, %zmm0, %zmm4, %zmm0
+
+/* fixup for very large inputs */
+ vmovups 896+__svml_sacosh_data_internal_avx512(%rip), %zmm4
+
+/* Sl_high */
+ vsubps {rn-sae}, %zmm9, %zmm2, %zmm5
+
+/* polynomial */
+ vmovups 1024+__svml_sacosh_data_internal_avx512(%rip), %zmm9
+ vmulps {rn-sae}, %zmm4, %zmm8, %zmm2{%k2}
+
+/* -K*L2L + Tl */
+ vmovups 1280+__svml_sacosh_data_internal_avx512(%rip), %zmm4
+
+/* Sl_l */
+ vsubps {rn-sae}, %zmm5, %zmm3, %zmm3
+ vrcp14ps %zmm2, %zmm11
+ vmovups 128+__svml_sacosh_data_internal_avx512(%rip), %zmm5
+
+/* Xin_low */
+ vaddps {rn-sae}, %zmm10, %zmm3, %zmm13
+
+/* round reciprocal to 1+4b mantissas */
+ vpaddd 768+__svml_sacosh_data_internal_avx512(%rip), %zmm11, %zmm12
+ vmovups 1152+__svml_sacosh_data_internal_avx512(%rip), %zmm10
+ vandps 832+__svml_sacosh_data_internal_avx512(%rip), %zmm12, %zmm14
+
+/* fixup for very large inputs */
+ vxorps %zmm13, %zmm13, %zmm13{%k2}
+
+/* reduced argument for log(): (Rcp*Xin-1)+Rcp*Xin_low */
+ vfmsub231ps {rn-sae}, %zmm14, %zmm2, %zmm1
+
+/* exponents */
+ vgetexpps {sae}, %zmm14, %zmm12
+ vmovups 960+__svml_sacosh_data_internal_avx512(%rip), %zmm2
+
+/* Prepare table index */
+ vpsrld $18, %zmm14, %zmm3
+ vfmadd231ps {rn-sae}, %zmm14, %zmm13, %zmm1
+ vmovups 1088+__svml_sacosh_data_internal_avx512(%rip), %zmm13
+
+/* Table lookups */
+ vmovups __svml_sacosh_data_internal_avx512(%rip), %zmm14
+ vsubps {rn-sae}, %zmm2, %zmm12, %zmm12{%k2}
+ vpermt2ps 192+__svml_sacosh_data_internal_avx512(%rip), %zmm3, %zmm5
+ vpermt2ps 64+__svml_sacosh_data_internal_avx512(%rip), %zmm3, %zmm14
+
+/* R^2 */
+ vmulps {rn-sae}, %zmm1, %zmm1, %zmm11
+
+/* -K*L2H + Th */
+ vmovups 1216+__svml_sacosh_data_internal_avx512(%rip), %zmm2
+ vfmadd231ps {rn-sae}, %zmm1, %zmm9, %zmm13
+ vfnmadd231ps {rn-sae}, %zmm12, %zmm2, %zmm14
+ vfnmadd213ps {rn-sae}, %zmm5, %zmm4, %zmm12
+ vfmadd213ps {rn-sae}, %zmm10, %zmm1, %zmm13
+
+/* Tl + R^2*Poly */
+ vfmadd213ps {rn-sae}, %zmm12, %zmm11, %zmm13
+
+/* R+Tl + R^2*Poly */
+ vaddps {rn-sae}, %zmm1, %zmm13, %zmm1
+ vaddps {rn-sae}, %zmm1, %zmm14, %zmm0{%k3}
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm8, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_sacosh_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_acoshf16,@function
+ .size __svml_acoshf16,.-__svml_acoshf16
+..LN__svml_acoshf16.0:
+
+.L_2__routine_start___svml_sacosh_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_sacosh_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ movl (%rdi), %eax
+ movl %eax, -8(%rsp)
+ andl $2139095040, %eax
+ cmpl $2139095040, %eax
+ je .LBL_2_8
+
+.LBL_2_2:
+
+ movl -8(%rsp), %eax
+ cmpl $1065353216, %eax
+ je .LBL_2_7
+
+
+ cmpl $2139095040, %eax
+ jne .LBL_2_5
+
+
+ movl 8+__sacosh_la__iml_sacosh_cout_tab(%rip), %eax
+ movl %eax, (%rsi)
+ xorl %eax, %eax
+ ret
+
+.LBL_2_5:
+
+ movss 8+__sacosh_la__iml_sacosh_cout_tab(%rip), %xmm0
+ movl $1, %eax
+ mulss 4+__sacosh_la__iml_sacosh_cout_tab(%rip), %xmm0
+ movss %xmm0, (%rsi)
+
+
+ ret
+
+.LBL_2_7:
+
+ movl 4+__sacosh_la__iml_sacosh_cout_tab(%rip), %eax
+ movl %eax, (%rsi)
+ xorl %eax, %eax
+ ret
+
+.LBL_2_8:
+
+ testl $8388607, -8(%rsp)
+ je .LBL_2_2
+
+
+ movss -8(%rsp), %xmm0
+ xorl %eax, %eax
+ mulss -8(%rsp), %xmm0
+ movss %xmm0, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_sacosh_cout_rare_internal,@function
+ .size __svml_sacosh_cout_rare_internal,.-__svml_sacosh_cout_rare_internal
+..LN__svml_sacosh_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_sacosh_data_internal_avx512:
+ .long 0
+ .long 3170631680
+ .long 3178790912
+ .long 3182919680
+ .long 3186704384
+ .long 3189022720
+ .long 3190816768
+ .long 3192561664
+ .long 3194257408
+ .long 3195912192
+ .long 3196796928
+ .long 3197583360
+ .long 3198357504
+ .long 3199111168
+ .long 3199848448
+ .long 3200569344
+ .long 3201277952
+ .long 3201966080
+ .long 3202646016
+ .long 3203309568
+ .long 3203960832
+ .long 3204524032
+ .long 3204837376
+ .long 3205146624
+ .long 3205447680
+ .long 3205744640
+ .long 3206037504
+ .long 3206324224
+ .long 3206606848
+ .long 3206883328
+ .long 3207155712
+ .long 3207424000
+ .long 2147483648
+ .long 3072770974
+ .long 943319038
+ .long 3075640037
+ .long 930648533
+ .long 3089726480
+ .long 936349528
+ .long 944943494
+ .long 897812054
+ .long 3087808175
+ .long 941839444
+ .long 3093478113
+ .long 937982919
+ .long 931430736
+ .long 924853521
+ .long 3075349253
+ .long 945558336
+ .long 3094838221
+ .long 906200662
+ .long 3084126596
+ .long 3088015279
+ .long 3089451852
+ .long 3093678154
+ .long 938521645
+ .long 3091119329
+ .long 3090949395
+ .long 933442244
+ .long 930702671
+ .long 945827699
+ .long 913590776
+ .long 3082066287
+ .long 3087046763
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .type __svml_sacosh_data_internal_avx512,@object
+ .size __svml_sacosh_data_internal_avx512,1344
+ .align 4
+__sacosh_la__iml_sacosh_cout_tab:
+ .long 1065353216
+ .long 0
+ .long 2139095040
+ .type __sacosh_la__iml_sacosh_cout_tab,@object
+ .size __sacosh_la__iml_sacosh_cout_tab,12
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+
+ .text
+.L_2__routine_start___svml_asin8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_asin8
+
+__svml_asin8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 64+__svml_dasin_data_internal(%rip), %zmm8
+
+/* S ~ -2*sqrt(Y) */
+ vmovups 128+__svml_dasin_data_internal(%rip), %zmm10
+ vmovups 384+__svml_dasin_data_internal(%rip), %zmm14
+ vmovups 448+__svml_dasin_data_internal(%rip), %zmm15
+ vmovups 512+__svml_dasin_data_internal(%rip), %zmm2
+ vmovups 576+__svml_dasin_data_internal(%rip), %zmm1
+ vmovups 256+__svml_dasin_data_internal(%rip), %zmm9
+ vmovaps %zmm0, %zmm6
+
+/* x = |arg| */
+ vandpd __svml_dasin_data_internal(%rip), %zmm6, %zmm4
+
+/* Y = 0.5 - 0.5*x */
+ vmovaps %zmm8, %zmm11
+ vfnmadd231pd {rn-sae}, %zmm4, %zmm8, %zmm11
+
+/* x^2 */
+ vmulpd {rn-sae}, %zmm4, %zmm4, %zmm7
+ vrsqrt14pd %zmm11, %zmm12
+ vcmppd $17, {sae}, %zmm10, %zmm11, %k1
+ vcmppd $21, {sae}, %zmm8, %zmm4, %k2
+ vcmppd $17, {sae}, %zmm4, %zmm9, %k0
+ vmovups 960+__svml_dasin_data_internal(%rip), %zmm10
+
+/* polynomial */
+ vmovups 704+__svml_dasin_data_internal(%rip), %zmm8
+ vmovups 832+__svml_dasin_data_internal(%rip), %zmm9
+ vminpd {sae}, %zmm11, %zmm7, %zmm3
+ vxorpd %zmm12, %zmm12, %zmm12{%k1}
+ vaddpd {rn-sae}, %zmm11, %zmm11, %zmm0
+ vxorpd %zmm6, %zmm4, %zmm5
+ vmulpd {rn-sae}, %zmm12, %zmm12, %zmm13
+ vmulpd {rn-sae}, %zmm12, %zmm0, %zmm7
+ vmovups 1088+__svml_dasin_data_internal(%rip), %zmm11
+ vmovups 896+__svml_dasin_data_internal(%rip), %zmm12
+ vfmsub213pd {rn-sae}, %zmm14, %zmm13, %zmm0
+ vmovups 640+__svml_dasin_data_internal(%rip), %zmm13
+ vfmadd231pd {rn-sae}, %zmm3, %zmm9, %zmm12
+ vmovups 1344+__svml_dasin_data_internal(%rip), %zmm9
+ vfmadd231pd {rn-sae}, %zmm0, %zmm15, %zmm2
+ vmovups 1216+__svml_dasin_data_internal(%rip), %zmm15
+ vmulpd {rn-sae}, %zmm0, %zmm7, %zmm14
+ vfmadd213pd {rn-sae}, %zmm1, %zmm0, %zmm2
+ vmovups 768+__svml_dasin_data_internal(%rip), %zmm1
+ kmovw %k0, %edx
+ vfmadd213pd {rn-sae}, %zmm13, %zmm0, %zmm2
+ vfmadd231pd {rn-sae}, %zmm3, %zmm8, %zmm1
+ vmovups 1280+__svml_dasin_data_internal(%rip), %zmm8
+ vmulpd {rn-sae}, %zmm3, %zmm3, %zmm0
+ vfmsub213pd {rn-sae}, %zmm7, %zmm14, %zmm2
+ vmovups 1024+__svml_dasin_data_internal(%rip), %zmm7
+ vfmadd231pd {rn-sae}, %zmm3, %zmm15, %zmm8
+ vfmadd213pd {rn-sae}, %zmm12, %zmm0, %zmm1
+ vblendmpd %zmm2, %zmm4, %zmm2{%k2}
+ vfmadd231pd {rn-sae}, %zmm3, %zmm10, %zmm7
+ vmovups 1152+__svml_dasin_data_internal(%rip), %zmm10
+ vmovups 1472+__svml_dasin_data_internal(%rip), %zmm4
+ vfmadd231pd {rn-sae}, %zmm3, %zmm11, %zmm10
+ vmovups 1408+__svml_dasin_data_internal(%rip), %zmm11
+ vfmadd213pd {rn-sae}, %zmm10, %zmm0, %zmm7
+ vfmadd231pd {rn-sae}, %zmm3, %zmm9, %zmm11
+ vmulpd {rn-sae}, %zmm0, %zmm0, %zmm10
+ vfmadd213pd {rn-sae}, %zmm7, %zmm10, %zmm1
+ vfmadd213pd {rn-sae}, %zmm8, %zmm0, %zmm1
+ vfmadd213pd {rn-sae}, %zmm11, %zmm0, %zmm1
+ vmulpd {rn-sae}, %zmm3, %zmm1, %zmm3
+ vfmadd213pd {rn-sae}, %zmm2, %zmm2, %zmm3
+ vaddpd {rn-sae}, %zmm4, %zmm3, %zmm3{%k2}
+ vxorpd %zmm5, %zmm3, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm6, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dasin_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_asin8,@function
+ .size __svml_asin8,.-__svml_asin8
+..LN__svml_asin8.0:
+
+.L_2__routine_start___svml_dasin_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dasin_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movzwl 6(%rdi), %edx
+ andl $32752, %edx
+ cmpl $32752, %edx
+ je .LBL_2_12
+
+
+ movq (%rdi), %rdx
+ movq %rdx, -32(%rsp)
+ shrq $56, %rdx
+ movsd 4160+_vmldASinHATab(%rip), %xmm0
+ andl $127, %edx
+ movb %dl, -25(%rsp)
+ movsd -32(%rsp), %xmm12
+ comisd %xmm12, %xmm0
+ jb .LBL_2_10
+
+
+ movsd 4168+_vmldASinHATab(%rip), %xmm1
+ comisd %xmm12, %xmm1
+ jbe .LBL_2_9
+
+
+ comisd 4136+_vmldASinHATab(%rip), %xmm12
+ jbe .LBL_2_6
+
+
+ movsd 4104+_vmldASinHATab(%rip), %xmm13
+ movaps %xmm12, %xmm5
+ mulsd %xmm12, %xmm13
+ movaps %xmm12, %xmm7
+ movsd %xmm13, -48(%rsp)
+ movsd -48(%rsp), %xmm14
+ movsd 4104+_vmldASinHATab(%rip), %xmm1
+ subsd -32(%rsp), %xmm14
+ movsd %xmm14, -56(%rsp)
+ movsd -48(%rsp), %xmm8
+ movsd -56(%rsp), %xmm15
+ subsd %xmm15, %xmm8
+ movsd %xmm8, -48(%rsp)
+ movsd -48(%rsp), %xmm6
+ movsd 4296+_vmldASinHATab(%rip), %xmm8
+ subsd %xmm6, %xmm5
+ movsd %xmm5, -56(%rsp)
+ movaps %xmm12, %xmm5
+ movsd -48(%rsp), %xmm9
+ movaps %xmm9, %xmm13
+ addsd %xmm9, %xmm7
+ mulsd %xmm9, %xmm13
+ movsd -56(%rsp), %xmm11
+ movaps %xmm13, %xmm10
+ mulsd %xmm11, %xmm7
+ mulsd %xmm13, %xmm1
+ addsd %xmm7, %xmm10
+ mulsd %xmm10, %xmm8
+ movsd %xmm1, -48(%rsp)
+ movsd -48(%rsp), %xmm2
+ movsd 4104+_vmldASinHATab(%rip), %xmm1
+ subsd %xmm13, %xmm2
+ addsd 4288+_vmldASinHATab(%rip), %xmm8
+ mulsd %xmm10, %xmm8
+ movsd %xmm2, -56(%rsp)
+ movsd -48(%rsp), %xmm3
+ movsd -56(%rsp), %xmm0
+ addsd 4280+_vmldASinHATab(%rip), %xmm8
+ subsd %xmm0, %xmm3
+ mulsd %xmm10, %xmm8
+ movsd %xmm3, -48(%rsp)
+ movsd -48(%rsp), %xmm4
+ addsd 4272+_vmldASinHATab(%rip), %xmm8
+ subsd %xmm4, %xmm13
+ mulsd %xmm10, %xmm8
+ movsd %xmm13, -56(%rsp)
+ movsd -48(%rsp), %xmm6
+ mulsd %xmm6, %xmm9
+ addsd 4264+_vmldASinHATab(%rip), %xmm8
+ mulsd %xmm6, %xmm11
+ mulsd %xmm10, %xmm8
+ mulsd %xmm9, %xmm1
+ addsd 4256+_vmldASinHATab(%rip), %xmm8
+ mulsd %xmm10, %xmm8
+ movaps %xmm9, %xmm3
+ movsd -56(%rsp), %xmm14
+ movaps %xmm6, %xmm4
+ movsd %xmm1, -48(%rsp)
+ addsd %xmm14, %xmm7
+ addsd 4248+_vmldASinHATab(%rip), %xmm8
+ mulsd %xmm7, %xmm5
+ mulsd %xmm10, %xmm8
+ addsd %xmm5, %xmm11
+ addsd 4240+_vmldASinHATab(%rip), %xmm8
+ movsd -48(%rsp), %xmm2
+ mulsd %xmm10, %xmm8
+ subsd %xmm9, %xmm2
+ addsd %xmm11, %xmm9
+ addsd 4232+_vmldASinHATab(%rip), %xmm8
+ mulsd %xmm9, %xmm7
+ mulsd %xmm10, %xmm8
+ movsd %xmm2, -56(%rsp)
+ movsd -48(%rsp), %xmm0
+ movsd -56(%rsp), %xmm15
+ subsd %xmm15, %xmm0
+ addsd 4224+_vmldASinHATab(%rip), %xmm8
+ movsd %xmm0, -48(%rsp)
+ movsd -48(%rsp), %xmm5
+ mulsd %xmm10, %xmm8
+ subsd %xmm5, %xmm3
+ movsd %xmm3, -56(%rsp)
+ movsd -48(%rsp), %xmm3
+ movsd -56(%rsp), %xmm5
+ movaps %xmm5, %xmm13
+ addsd 4216+_vmldASinHATab(%rip), %xmm8
+ mulsd %xmm3, %xmm4
+ addsd %xmm11, %xmm13
+ mulsd %xmm10, %xmm8
+ mulsd %xmm13, %xmm6
+ addsd 4208+_vmldASinHATab(%rip), %xmm8
+ addsd %xmm7, %xmm6
+ mulsd %xmm10, %xmm8
+ movsd 4104+_vmldASinHATab(%rip), %xmm7
+ movaps %xmm4, %xmm13
+ mulsd %xmm4, %xmm7
+ addsd 4200+_vmldASinHATab(%rip), %xmm8
+ movsd %xmm7, -48(%rsp)
+ movsd -48(%rsp), %xmm1
+ movsd 4184+_vmldASinHATab(%rip), %xmm10
+ subsd %xmm4, %xmm1
+ mulsd %xmm9, %xmm10
+ addsd %xmm6, %xmm4
+ movsd %xmm1, -56(%rsp)
+ movaps %xmm12, %xmm9
+ movsd -48(%rsp), %xmm0
+ movsd -56(%rsp), %xmm2
+ movsd 4176+_vmldASinHATab(%rip), %xmm1
+ subsd %xmm2, %xmm0
+ mulsd %xmm1, %xmm3
+ mulsd %xmm1, %xmm11
+ mulsd %xmm4, %xmm8
+ addsd %xmm3, %xmm9
+ mulsd %xmm1, %xmm5
+ addsd %xmm11, %xmm10
+ movsd %xmm0, -48(%rsp)
+ addsd %xmm10, %xmm8
+ movsd -48(%rsp), %xmm7
+ addsd %xmm5, %xmm8
+ subsd %xmm7, %xmm13
+ movsd %xmm13, -56(%rsp)
+ movsd -48(%rsp), %xmm0
+ movsd -56(%rsp), %xmm2
+ movsd %xmm9, -48(%rsp)
+ addsd %xmm2, %xmm6
+ movsd -48(%rsp), %xmm11
+ movsd 4192+_vmldASinHATab(%rip), %xmm4
+ subsd %xmm11, %xmm12
+ mulsd %xmm4, %xmm0
+ mulsd %xmm4, %xmm6
+ addsd %xmm12, %xmm3
+ movsd %xmm3, -56(%rsp)
+ movsd -48(%rsp), %xmm3
+ movaps %xmm3, %xmm12
+ movsd -56(%rsp), %xmm7
+ addsd %xmm0, %xmm12
+ addsd %xmm7, %xmm8
+ movsd %xmm12, -48(%rsp)
+ movsd -48(%rsp), %xmm12
+ subsd %xmm12, %xmm3
+ addsd %xmm3, %xmm0
+ movsd %xmm0, -56(%rsp)
+ movsd -48(%rsp), %xmm9
+ movsd -56(%rsp), %xmm0
+ movb 7(%rdi), %dil
+ addsd %xmm0, %xmm8
+ andb $-128, %dil
+ addsd %xmm8, %xmm9
+ addsd %xmm9, %xmm6
+ movsd %xmm6, -40(%rsp)
+ movb -33(%rsp), %dl
+ andb $127, %dl
+ orb %dil, %dl
+ movb %dl, -33(%rsp)
+ movq -40(%rsp), %rcx
+ movq %rcx, (%rsi)
+ ret
+
+.LBL_2_6:
+
+ comisd 4128+_vmldASinHATab(%rip), %xmm12
+ jb .LBL_2_8
+
+
+ addsd %xmm0, %xmm12
+ movsd %xmm12, -48(%rsp)
+ movsd -48(%rsp), %xmm0
+ mulsd -32(%rsp), %xmm0
+ movsd %xmm0, -40(%rsp)
+ movb -33(%rsp), %dl
+ movb 7(%rdi), %dil
+ andb $127, %dl
+ andb $-128, %dil
+ orb %dil, %dl
+ movb %dl, -33(%rsp)
+ movq -40(%rsp), %rcx
+ movq %rcx, (%rsi)
+ ret
+
+.LBL_2_8:
+
+ mulsd %xmm12, %xmm12
+ movsd %xmm12, -48(%rsp)
+ movsd -48(%rsp), %xmm0
+ movb 7(%rdi), %dil
+ andb $-128, %dil
+ addsd -32(%rsp), %xmm0
+ movsd %xmm0, -40(%rsp)
+ movb -33(%rsp), %dl
+ andb $127, %dl
+ orb %dil, %dl
+ movb %dl, -33(%rsp)
+ movq -40(%rsp), %rcx
+ movq %rcx, (%rsi)
+ ret
+
+.LBL_2_9:
+
+ movaps %xmm0, %xmm9
+ movzwl 4166+_vmldASinHATab(%rip), %r9d
+ pxor %xmm15, %xmm15
+ andl $-32753, %r9d
+ subsd %xmm12, %xmm9
+ subsd %xmm0, %xmm15
+ mulsd %xmm9, %xmm1
+ movsd %xmm1, -32(%rsp)
+ movzwl -26(%rsp), %ecx
+ andl $32752, %ecx
+ shrl $4, %ecx
+ addl $-1023, %ecx
+ movl %ecx, %r8d
+ movl %ecx, %edx
+ negl %r8d
+ addl $1023, %r8d
+ andl $2047, %r8d
+ shll $4, %r8d
+ movsd %xmm0, -24(%rsp)
+ orl %r8d, %r9d
+ movw %r9w, -18(%rsp)
+ andl $1, %edx
+ movsd -24(%rsp), %xmm10
+ movl %edx, %r10d
+ mulsd %xmm10, %xmm1
+ lea _vmldASinHATab(%rip), %r8
+ movaps %xmm1, %xmm6
+ movsd 4112+_vmldASinHATab(%rip), %xmm7
+ addsd %xmm1, %xmm6
+ jne ..L54
+ movaps %xmm1, %xmm6
+..L54:
+ mulsd %xmm6, %xmm7
+ movaps %xmm6, %xmm8
+ movaps %xmm7, %xmm11
+ subl %edx, %ecx
+ movsd 4120+_vmldASinHATab(%rip), %xmm13
+ subsd %xmm6, %xmm11
+ addsd %xmm1, %xmm13
+ movsd %xmm11, -56(%rsp)
+ movsd -56(%rsp), %xmm12
+ movsd %xmm13, -16(%rsp)
+ subsd %xmm12, %xmm7
+ movl -16(%rsp), %r11d
+ movaps %xmm7, %xmm4
+ shll $8, %r10d
+ andl $511, %r11d
+ addl %r10d, %r11d
+ subsd %xmm7, %xmm8
+ movsd (%r8,%r11,8), %xmm3
+ addsd %xmm8, %xmm4
+ mulsd %xmm3, %xmm7
+ movaps %xmm3, %xmm14
+ mulsd %xmm3, %xmm14
+ mulsd %xmm14, %xmm4
+ movsd 4496+_vmldASinHATab(%rip), %xmm5
+ addsd %xmm15, %xmm4
+ mulsd %xmm4, %xmm5
+ shrl $1, %ecx
+ addsd 4488+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ addl $1023, %ecx
+ andl $2047, %ecx
+ addsd 4480+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ movzwl 4166+_vmldASinHATab(%rip), %r9d
+ shll $4, %ecx
+ andl $-32753, %r9d
+ movsd %xmm0, -8(%rsp)
+ orl %ecx, %r9d
+ movw %r9w, -2(%rsp)
+ movsd -8(%rsp), %xmm12
+ mulsd %xmm12, %xmm7
+ addsd 4472+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ movsd 4104+_vmldASinHATab(%rip), %xmm1
+ mulsd %xmm7, %xmm1
+ addsd 4464+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ movsd %xmm1, -48(%rsp)
+ movsd -48(%rsp), %xmm0
+ movsd 4336+_vmldASinHATab(%rip), %xmm13
+ subsd %xmm7, %xmm0
+ addsd 4456+_vmldASinHATab(%rip), %xmm5
+ addsd 4344+_vmldASinHATab(%rip), %xmm13
+ mulsd %xmm4, %xmm5
+ mulsd %xmm9, %xmm13
+ addsd 4448+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ mulsd %xmm6, %xmm5
+ movsd %xmm0, -56(%rsp)
+ addsd %xmm5, %xmm8
+ movsd 4440+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm5
+ mulsd %xmm3, %xmm8
+ addsd 4432+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm12, %xmm8
+ mulsd %xmm9, %xmm5
+ movsd -48(%rsp), %xmm10
+ movsd -56(%rsp), %xmm2
+ movsd 4320+_vmldASinHATab(%rip), %xmm14
+ subsd %xmm2, %xmm10
+ addsd 4424+_vmldASinHATab(%rip), %xmm5
+ addsd 4328+_vmldASinHATab(%rip), %xmm14
+ mulsd %xmm9, %xmm5
+ addsd %xmm13, %xmm14
+ addsd 4416+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm14
+ mulsd %xmm9, %xmm5
+ movsd %xmm10, -48(%rsp)
+ movaps %xmm9, %xmm2
+ movsd -48(%rsp), %xmm11
+ movsd 4104+_vmldASinHATab(%rip), %xmm3
+ subsd %xmm11, %xmm7
+ mulsd %xmm9, %xmm3
+ addsd 4408+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm5
+ movsd 4304+_vmldASinHATab(%rip), %xmm4
+ movsd %xmm7, -56(%rsp)
+ movsd -48(%rsp), %xmm6
+ movsd -56(%rsp), %xmm7
+ movsd %xmm3, -48(%rsp)
+ addsd %xmm7, %xmm8
+ addsd 4400+_vmldASinHATab(%rip), %xmm5
+ addsd 4312+_vmldASinHATab(%rip), %xmm4
+ mulsd %xmm9, %xmm5
+ addsd %xmm14, %xmm4
+ addsd 4392+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm5
+ movsd -48(%rsp), %xmm1
+ movsd 4104+_vmldASinHATab(%rip), %xmm7
+ subsd %xmm9, %xmm1
+ addsd 4384+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm5
+ movsd %xmm1, -56(%rsp)
+ movsd -48(%rsp), %xmm0
+ movsd -56(%rsp), %xmm15
+ addsd 4376+_vmldASinHATab(%rip), %xmm5
+ subsd %xmm15, %xmm0
+ mulsd %xmm9, %xmm5
+ movsd %xmm0, -48(%rsp)
+ movsd 4320+_vmldASinHATab(%rip), %xmm0
+ addsd 4368+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm5
+ addsd 4360+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm5
+ addsd 4352+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm5
+ mulsd %xmm9, %xmm5
+ mulsd %xmm9, %xmm5
+ addsd %xmm5, %xmm4
+ mulsd %xmm4, %xmm8
+ movsd -48(%rsp), %xmm4
+ subsd %xmm4, %xmm2
+ movsd %xmm2, -56(%rsp)
+ movsd -48(%rsp), %xmm4
+ movaps %xmm4, %xmm13
+ mulsd %xmm4, %xmm13
+ mulsd %xmm4, %xmm0
+ addsd %xmm9, %xmm4
+ mulsd %xmm13, %xmm7
+ movsd -56(%rsp), %xmm3
+ movsd %xmm7, -48(%rsp)
+ movsd -48(%rsp), %xmm10
+ mulsd %xmm3, %xmm4
+ subsd %xmm13, %xmm10
+ movsd %xmm10, -56(%rsp)
+ movsd -48(%rsp), %xmm11
+ movsd -56(%rsp), %xmm1
+ movsd 4304+_vmldASinHATab(%rip), %xmm10
+ subsd %xmm1, %xmm11
+ movsd %xmm11, -48(%rsp)
+ movaps %xmm0, %xmm1
+ movsd -48(%rsp), %xmm12
+ movsd 4304+_vmldASinHATab(%rip), %xmm11
+ subsd %xmm12, %xmm13
+ movsd %xmm13, -56(%rsp)
+ movsd -48(%rsp), %xmm7
+ mulsd 4336+_vmldASinHATab(%rip), %xmm7
+ movsd -56(%rsp), %xmm2
+ addsd %xmm7, %xmm1
+ addsd %xmm2, %xmm4
+ movsd %xmm1, -48(%rsp)
+ movsd -48(%rsp), %xmm14
+ movsd %xmm7, -16(%rsp)
+ subsd %xmm14, %xmm0
+ mulsd 4336+_vmldASinHATab(%rip), %xmm4
+ addsd %xmm0, %xmm7
+ movsd %xmm7, -56(%rsp)
+ movsd -48(%rsp), %xmm12
+ movsd -56(%rsp), %xmm1
+ addsd %xmm12, %xmm10
+ movsd %xmm10, -48(%rsp)
+ movsd -48(%rsp), %xmm15
+ movsd 4104+_vmldASinHATab(%rip), %xmm7
+ subsd %xmm15, %xmm11
+ movsd 4320+_vmldASinHATab(%rip), %xmm2
+ addsd %xmm11, %xmm12
+ mulsd %xmm3, %xmm2
+ movsd %xmm12, -56(%rsp)
+ movsd -48(%rsp), %xmm15
+ mulsd %xmm15, %xmm7
+ movsd -56(%rsp), %xmm0
+ movsd %xmm7, -48(%rsp)
+ movsd -48(%rsp), %xmm10
+ movsd 4344+_vmldASinHATab(%rip), %xmm3
+ subsd %xmm15, %xmm10
+ mulsd %xmm9, %xmm3
+ movsd %xmm10, -56(%rsp)
+ movsd -48(%rsp), %xmm11
+ movsd -56(%rsp), %xmm13
+ subsd %xmm13, %xmm11
+ addsd 4328+_vmldASinHATab(%rip), %xmm3
+ movsd %xmm11, -48(%rsp)
+ movsd -48(%rsp), %xmm14
+ mulsd %xmm9, %xmm3
+ subsd %xmm14, %xmm15
+ movsd %xmm15, -56(%rsp)
+ movsd -48(%rsp), %xmm10
+ movsd -56(%rsp), %xmm7
+ addsd %xmm7, %xmm4
+ addsd 4312+_vmldASinHATab(%rip), %xmm3
+ addsd %xmm2, %xmm4
+ addsd %xmm5, %xmm3
+ addsd %xmm1, %xmm4
+ addsd %xmm0, %xmm4
+ movsd 4144+_vmldASinHATab(%rip), %xmm0
+ addsd %xmm3, %xmm4
+ mulsd %xmm6, %xmm4
+ mulsd %xmm10, %xmm6
+ addsd %xmm8, %xmm4
+ movaps %xmm0, %xmm8
+ subsd %xmm6, %xmm8
+ movsd %xmm8, -48(%rsp)
+ movsd -48(%rsp), %xmm9
+ subsd %xmm9, %xmm0
+ subsd %xmm6, %xmm0
+ movsd %xmm0, -56(%rsp)
+ movsd -48(%rsp), %xmm2
+ movsd -56(%rsp), %xmm1
+ movb 7(%rdi), %dil
+ andb $-128, %dil
+ addsd 4152+_vmldASinHATab(%rip), %xmm1
+ subsd %xmm4, %xmm1
+ addsd %xmm1, %xmm2
+ movsd %xmm2, -40(%rsp)
+ movb -33(%rsp), %dl
+ andb $127, %dl
+ orb %dil, %dl
+ movb %dl, -33(%rsp)
+ movq -40(%rsp), %rcx
+ movq %rcx, (%rsi)
+ ret
+
+.LBL_2_10:
+
+ movl $1, %eax
+ pxor %xmm1, %xmm1
+ pxor %xmm0, %xmm0
+ divsd %xmm0, %xmm1
+ movsd %xmm1, (%rsi)
+
+.LBL_2_11:
+
+ ret
+
+.LBL_2_12:
+
+ movsd (%rdi), %xmm0
+ divsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ testl $1048575, 4(%rdi)
+ jne .LBL_2_11
+
+
+ cmpl $0, (%rdi)
+ sete %al
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dasin_cout_rare_internal,@function
+ .size __svml_dasin_cout_rare_internal,.-__svml_dasin_cout_rare_internal
+..LN__svml_dasin_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dasin_data_internal:
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 805306368
+ .long 0
+ .long 805306368
+ .long 0
+ .long 805306368
+ .long 0
+ .long 805306368
+ .long 0
+ .long 805306368
+ .long 0
+ .long 805306368
+ .long 0
+ .long 805306368
+ .long 0
+ .long 805306368
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 4294967040
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 4227858432
+ .long 4294967295
+ .long 4227858432
+ .long 4294967295
+ .long 4227858432
+ .long 4294967295
+ .long 4227858432
+ .long 4294967295
+ .long 4227858432
+ .long 4294967295
+ .long 4227858432
+ .long 4294967295
+ .long 4227858432
+ .long 4294967295
+ .long 4227858432
+ .long 4294967295
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1073741824
+ .long 2570790083
+ .long 3213983744
+ .long 2570790083
+ .long 3213983744
+ .long 2570790083
+ .long 3213983744
+ .long 2570790083
+ .long 3213983744
+ .long 2570790083
+ .long 3213983744
+ .long 2570790083
+ .long 3213983744
+ .long 2570790083
+ .long 3213983744
+ .long 2570790083
+ .long 3213983744
+ .long 1869665325
+ .long 1067712512
+ .long 1869665325
+ .long 1067712512
+ .long 1869665325
+ .long 1067712512
+ .long 1869665325
+ .long 1067712512
+ .long 1869665325
+ .long 1067712512
+ .long 1869665325
+ .long 1067712512
+ .long 1869665325
+ .long 1067712512
+ .long 1869665325
+ .long 1067712512
+ .long 4294966935
+ .long 3216506879
+ .long 4294966935
+ .long 3216506879
+ .long 4294966935
+ .long 3216506879
+ .long 4294966935
+ .long 3216506879
+ .long 4294966935
+ .long 3216506879
+ .long 4294966935
+ .long 3216506879
+ .long 4294966935
+ .long 3216506879
+ .long 4294966935
+ .long 3216506879
+ .long 4294967197
+ .long 1070596095
+ .long 4294967197
+ .long 1070596095
+ .long 4294967197
+ .long 1070596095
+ .long 4294967197
+ .long 1070596095
+ .long 4294967197
+ .long 1070596095
+ .long 4294967197
+ .long 1070596095
+ .long 4294967197
+ .long 1070596095
+ .long 4294967197
+ .long 1070596095
+ .long 3339630857
+ .long 1067480352
+ .long 3339630857
+ .long 1067480352
+ .long 3339630857
+ .long 1067480352
+ .long 3339630857
+ .long 1067480352
+ .long 3339630857
+ .long 1067480352
+ .long 3339630857
+ .long 1067480352
+ .long 3339630857
+ .long 1067480352
+ .long 3339630857
+ .long 1067480352
+ .long 4158370029
+ .long 3213949719
+ .long 4158370029
+ .long 3213949719
+ .long 4158370029
+ .long 3213949719
+ .long 4158370029
+ .long 3213949719
+ .long 4158370029
+ .long 3213949719
+ .long 4158370029
+ .long 3213949719
+ .long 4158370029
+ .long 3213949719
+ .long 4158370029
+ .long 3213949719
+ .long 3216784302
+ .long 1066680132
+ .long 3216784302
+ .long 1066680132
+ .long 3216784302
+ .long 1066680132
+ .long 3216784302
+ .long 1066680132
+ .long 3216784302
+ .long 1066680132
+ .long 3216784302
+ .long 1066680132
+ .long 3216784302
+ .long 1066680132
+ .long 3216784302
+ .long 1066680132
+ .long 2513723093
+ .long 1064982579
+ .long 2513723093
+ .long 1064982579
+ .long 2513723093
+ .long 1064982579
+ .long 2513723093
+ .long 1064982579
+ .long 2513723093
+ .long 1064982579
+ .long 2513723093
+ .long 1064982579
+ .long 2513723093
+ .long 1064982579
+ .long 2513723093
+ .long 1064982579
+ .long 721210070
+ .long 1065941212
+ .long 721210070
+ .long 1065941212
+ .long 721210070
+ .long 1065941212
+ .long 721210070
+ .long 1065941212
+ .long 721210070
+ .long 1065941212
+ .long 721210070
+ .long 1065941212
+ .long 721210070
+ .long 1065941212
+ .long 721210070
+ .long 1065941212
+ .long 3414736215
+ .long 1066167739
+ .long 3414736215
+ .long 1066167739
+ .long 3414736215
+ .long 1066167739
+ .long 3414736215
+ .long 1066167739
+ .long 3414736215
+ .long 1066167739
+ .long 3414736215
+ .long 1066167739
+ .long 3414736215
+ .long 1066167739
+ .long 3414736215
+ .long 1066167739
+ .long 4114132270
+ .long 1066518236
+ .long 4114132270
+ .long 1066518236
+ .long 4114132270
+ .long 1066518236
+ .long 4114132270
+ .long 1066518236
+ .long 4114132270
+ .long 1066518236
+ .long 4114132270
+ .long 1066518236
+ .long 4114132270
+ .long 1066518236
+ .long 4114132270
+ .long 1066518236
+ .long 3957258973
+ .long 1066854556
+ .long 3957258973
+ .long 1066854556
+ .long 3957258973
+ .long 1066854556
+ .long 3957258973
+ .long 1066854556
+ .long 3957258973
+ .long 1066854556
+ .long 3957258973
+ .long 1066854556
+ .long 3957258973
+ .long 1066854556
+ .long 3957258973
+ .long 1066854556
+ .long 3778730174
+ .long 1067392114
+ .long 3778730174
+ .long 1067392114
+ .long 3778730174
+ .long 1067392114
+ .long 3778730174
+ .long 1067392114
+ .long 3778730174
+ .long 1067392114
+ .long 3778730174
+ .long 1067392114
+ .long 3778730174
+ .long 1067392114
+ .long 3778730174
+ .long 1067392114
+ .long 3014936056
+ .long 1067899757
+ .long 3014936056
+ .long 1067899757
+ .long 3014936056
+ .long 1067899757
+ .long 3014936056
+ .long 1067899757
+ .long 3014936056
+ .long 1067899757
+ .long 3014936056
+ .long 1067899757
+ .long 3014936056
+ .long 1067899757
+ .long 3014936056
+ .long 1067899757
+ .long 859300062
+ .long 1068708659
+ .long 859300062
+ .long 1068708659
+ .long 859300062
+ .long 1068708659
+ .long 859300062
+ .long 1068708659
+ .long 859300062
+ .long 1068708659
+ .long 859300062
+ .long 1068708659
+ .long 859300062
+ .long 1068708659
+ .long 859300062
+ .long 1068708659
+ .long 1431655068
+ .long 1069897045
+ .long 1431655068
+ .long 1069897045
+ .long 1431655068
+ .long 1069897045
+ .long 1431655068
+ .long 1069897045
+ .long 1431655068
+ .long 1069897045
+ .long 1431655068
+ .long 1069897045
+ .long 1431655068
+ .long 1069897045
+ .long 1431655068
+ .long 1069897045
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 4294705152
+ .long 0
+ .long 4294705152
+ .long 0
+ .long 4294705152
+ .long 0
+ .long 4294705152
+ .long 0
+ .long 4294705152
+ .long 0
+ .long 4294705152
+ .long 0
+ .long 4294705152
+ .long 0
+ .long 4294705152
+ .long 4131758366
+ .long 1067674714
+ .long 4131758366
+ .long 1067674714
+ .long 4131758366
+ .long 1067674714
+ .long 4131758366
+ .long 1067674714
+ .long 4131758366
+ .long 1067674714
+ .long 4131758366
+ .long 1067674714
+ .long 4131758366
+ .long 1067674714
+ .long 4131758366
+ .long 1067674714
+ .long 3936260738
+ .long 1066197319
+ .long 3936260738
+ .long 1066197319
+ .long 3936260738
+ .long 1066197319
+ .long 3936260738
+ .long 1066197319
+ .long 3936260738
+ .long 1066197319
+ .long 3936260738
+ .long 1066197319
+ .long 3936260738
+ .long 1066197319
+ .long 3936260738
+ .long 1066197319
+ .long 354394453
+ .long 1067472564
+ .long 354394453
+ .long 1067472564
+ .long 354394453
+ .long 1067472564
+ .long 354394453
+ .long 1067472564
+ .long 354394453
+ .long 1067472564
+ .long 354394453
+ .long 1067472564
+ .long 354394453
+ .long 1067472564
+ .long 354394453
+ .long 1067472564
+ .long 709676628
+ .long 1067895021
+ .long 709676628
+ .long 1067895021
+ .long 709676628
+ .long 1067895021
+ .long 709676628
+ .long 1067895021
+ .long 709676628
+ .long 1067895021
+ .long 709676628
+ .long 1067895021
+ .long 709676628
+ .long 1067895021
+ .long 709676628
+ .long 1067895021
+ .long 3958922090
+ .long 1068708761
+ .long 3958922090
+ .long 1068708761
+ .long 3958922090
+ .long 1068708761
+ .long 3958922090
+ .long 1068708761
+ .long 3958922090
+ .long 1068708761
+ .long 3958922090
+ .long 1068708761
+ .long 3958922090
+ .long 1068708761
+ .long 3958922090
+ .long 1068708761
+ .long 2160605765
+ .long 1069897044
+ .long 2160605765
+ .long 1069897044
+ .long 2160605765
+ .long 1069897044
+ .long 2160605765
+ .long 1069897044
+ .long 2160605765
+ .long 1069897044
+ .long 2160605765
+ .long 1069897044
+ .long 2160605765
+ .long 1069897044
+ .long 2160605765
+ .long 1069897044
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 4293918720
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 3220176896
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2147483648
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .type __svml_dasin_data_internal,@object
+ .size __svml_dasin_data_internal,2368
+ .align 32
+_vmldASinHATab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072689152
+ .long 0
+ .long 1072685056
+ .long 0
+ .long 1072680960
+ .long 0
+ .long 1072676864
+ .long 0
+ .long 1072672768
+ .long 0
+ .long 1072668672
+ .long 0
+ .long 1072665600
+ .long 0
+ .long 1072661504
+ .long 0
+ .long 1072657408
+ .long 0
+ .long 1072653312
+ .long 0
+ .long 1072649216
+ .long 0
+ .long 1072646144
+ .long 0
+ .long 1072642048
+ .long 0
+ .long 1072637952
+ .long 0
+ .long 1072634880
+ .long 0
+ .long 1072630784
+ .long 0
+ .long 1072626688
+ .long 0
+ .long 1072623616
+ .long 0
+ .long 1072619520
+ .long 0
+ .long 1072615424
+ .long 0
+ .long 1072612352
+ .long 0
+ .long 1072608256
+ .long 0
+ .long 1072605184
+ .long 0
+ .long 1072601088
+ .long 0
+ .long 1072598016
+ .long 0
+ .long 1072593920
+ .long 0
+ .long 1072590848
+ .long 0
+ .long 1072586752
+ .long 0
+ .long 1072583680
+ .long 0
+ .long 1072580608
+ .long 0
+ .long 1072576512
+ .long 0
+ .long 1072573440
+ .long 0
+ .long 1072570368
+ .long 0
+ .long 1072566272
+ .long 0
+ .long 1072563200
+ .long 0
+ .long 1072560128
+ .long 0
+ .long 1072556032
+ .long 0
+ .long 1072552960
+ .long 0
+ .long 1072549888
+ .long 0
+ .long 1072546816
+ .long 0
+ .long 1072542720
+ .long 0
+ .long 1072539648
+ .long 0
+ .long 1072536576
+ .long 0
+ .long 1072533504
+ .long 0
+ .long 1072530432
+ .long 0
+ .long 1072527360
+ .long 0
+ .long 1072523264
+ .long 0
+ .long 1072520192
+ .long 0
+ .long 1072517120
+ .long 0
+ .long 1072514048
+ .long 0
+ .long 1072510976
+ .long 0
+ .long 1072507904
+ .long 0
+ .long 1072504832
+ .long 0
+ .long 1072501760
+ .long 0
+ .long 1072498688
+ .long 0
+ .long 1072495616
+ .long 0
+ .long 1072492544
+ .long 0
+ .long 1072489472
+ .long 0
+ .long 1072486400
+ .long 0
+ .long 1072483328
+ .long 0
+ .long 1072480256
+ .long 0
+ .long 1072478208
+ .long 0
+ .long 1072475136
+ .long 0
+ .long 1072472064
+ .long 0
+ .long 1072468992
+ .long 0
+ .long 1072465920
+ .long 0
+ .long 1072462848
+ .long 0
+ .long 1072459776
+ .long 0
+ .long 1072457728
+ .long 0
+ .long 1072454656
+ .long 0
+ .long 1072451584
+ .long 0
+ .long 1072448512
+ .long 0
+ .long 1072446464
+ .long 0
+ .long 1072443392
+ .long 0
+ .long 1072440320
+ .long 0
+ .long 1072437248
+ .long 0
+ .long 1072435200
+ .long 0
+ .long 1072432128
+ .long 0
+ .long 1072429056
+ .long 0
+ .long 1072427008
+ .long 0
+ .long 1072423936
+ .long 0
+ .long 1072420864
+ .long 0
+ .long 1072418816
+ .long 0
+ .long 1072415744
+ .long 0
+ .long 1072412672
+ .long 0
+ .long 1072410624
+ .long 0
+ .long 1072407552
+ .long 0
+ .long 1072405504
+ .long 0
+ .long 1072402432
+ .long 0
+ .long 1072400384
+ .long 0
+ .long 1072397312
+ .long 0
+ .long 1072395264
+ .long 0
+ .long 1072392192
+ .long 0
+ .long 1072390144
+ .long 0
+ .long 1072387072
+ .long 0
+ .long 1072385024
+ .long 0
+ .long 1072381952
+ .long 0
+ .long 1072379904
+ .long 0
+ .long 1072376832
+ .long 0
+ .long 1072374784
+ .long 0
+ .long 1072371712
+ .long 0
+ .long 1072369664
+ .long 0
+ .long 1072366592
+ .long 0
+ .long 1072364544
+ .long 0
+ .long 1072362496
+ .long 0
+ .long 1072359424
+ .long 0
+ .long 1072357376
+ .long 0
+ .long 1072355328
+ .long 0
+ .long 1072352256
+ .long 0
+ .long 1072350208
+ .long 0
+ .long 1072347136
+ .long 0
+ .long 1072345088
+ .long 0
+ .long 1072343040
+ .long 0
+ .long 1072340992
+ .long 0
+ .long 1072337920
+ .long 0
+ .long 1072335872
+ .long 0
+ .long 1072333824
+ .long 0
+ .long 1072330752
+ .long 0
+ .long 1072328704
+ .long 0
+ .long 1072326656
+ .long 0
+ .long 1072324608
+ .long 0
+ .long 1072321536
+ .long 0
+ .long 1072319488
+ .long 0
+ .long 1072317440
+ .long 0
+ .long 1072315392
+ .long 0
+ .long 1072313344
+ .long 0
+ .long 1072310272
+ .long 0
+ .long 1072308224
+ .long 0
+ .long 1072306176
+ .long 0
+ .long 1072304128
+ .long 0
+ .long 1072302080
+ .long 0
+ .long 1072300032
+ .long 0
+ .long 1072296960
+ .long 0
+ .long 1072294912
+ .long 0
+ .long 1072292864
+ .long 0
+ .long 1072290816
+ .long 0
+ .long 1072288768
+ .long 0
+ .long 1072286720
+ .long 0
+ .long 1072284672
+ .long 0
+ .long 1072282624
+ .long 0
+ .long 1072280576
+ .long 0
+ .long 1072278528
+ .long 0
+ .long 1072275456
+ .long 0
+ .long 1072273408
+ .long 0
+ .long 1072271360
+ .long 0
+ .long 1072269312
+ .long 0
+ .long 1072267264
+ .long 0
+ .long 1072265216
+ .long 0
+ .long 1072263168
+ .long 0
+ .long 1072261120
+ .long 0
+ .long 1072259072
+ .long 0
+ .long 1072257024
+ .long 0
+ .long 1072254976
+ .long 0
+ .long 1072252928
+ .long 0
+ .long 1072250880
+ .long 0
+ .long 1072248832
+ .long 0
+ .long 1072246784
+ .long 0
+ .long 1072244736
+ .long 0
+ .long 1072243712
+ .long 0
+ .long 1072241664
+ .long 0
+ .long 1072239616
+ .long 0
+ .long 1072237568
+ .long 0
+ .long 1072235520
+ .long 0
+ .long 1072233472
+ .long 0
+ .long 1072231424
+ .long 0
+ .long 1072229376
+ .long 0
+ .long 1072227328
+ .long 0
+ .long 1072225280
+ .long 0
+ .long 1072223232
+ .long 0
+ .long 1072222208
+ .long 0
+ .long 1072220160
+ .long 0
+ .long 1072218112
+ .long 0
+ .long 1072216064
+ .long 0
+ .long 1072214016
+ .long 0
+ .long 1072211968
+ .long 0
+ .long 1072210944
+ .long 0
+ .long 1072208896
+ .long 0
+ .long 1072206848
+ .long 0
+ .long 1072204800
+ .long 0
+ .long 1072202752
+ .long 0
+ .long 1072201728
+ .long 0
+ .long 1072199680
+ .long 0
+ .long 1072197632
+ .long 0
+ .long 1072195584
+ .long 0
+ .long 1072193536
+ .long 0
+ .long 1072192512
+ .long 0
+ .long 1072190464
+ .long 0
+ .long 1072188416
+ .long 0
+ .long 1072186368
+ .long 0
+ .long 1072185344
+ .long 0
+ .long 1072183296
+ .long 0
+ .long 1072181248
+ .long 0
+ .long 1072179200
+ .long 0
+ .long 1072178176
+ .long 0
+ .long 1072176128
+ .long 0
+ .long 1072174080
+ .long 0
+ .long 1072173056
+ .long 0
+ .long 1072171008
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072167936
+ .long 0
+ .long 1072165888
+ .long 0
+ .long 1072163840
+ .long 0
+ .long 1072161792
+ .long 0
+ .long 1072160768
+ .long 0
+ .long 1072158720
+ .long 0
+ .long 1072157696
+ .long 0
+ .long 1072155648
+ .long 0
+ .long 1072153600
+ .long 0
+ .long 1072152576
+ .long 0
+ .long 1072150528
+ .long 0
+ .long 1072148480
+ .long 0
+ .long 1072147456
+ .long 0
+ .long 1072145408
+ .long 0
+ .long 1072143360
+ .long 0
+ .long 1072142336
+ .long 0
+ .long 1072140288
+ .long 0
+ .long 1072139264
+ .long 0
+ .long 1072137216
+ .long 0
+ .long 1072135168
+ .long 0
+ .long 1072134144
+ .long 0
+ .long 1072132096
+ .long 0
+ .long 1072131072
+ .long 0
+ .long 1072129024
+ .long 0
+ .long 1072128000
+ .long 0
+ .long 1072125952
+ .long 0
+ .long 1072124928
+ .long 0
+ .long 1072122880
+ .long 0
+ .long 1072120832
+ .long 0
+ .long 1072119808
+ .long 0
+ .long 1072117760
+ .long 0
+ .long 1072116736
+ .long 0
+ .long 1072114688
+ .long 0
+ .long 1072113664
+ .long 0
+ .long 1072111616
+ .long 0
+ .long 1072110592
+ .long 0
+ .long 1072108544
+ .long 0
+ .long 1072107520
+ .long 0
+ .long 1072105472
+ .long 0
+ .long 1072104448
+ .long 0
+ .long 1072102400
+ .long 0
+ .long 1072101376
+ .long 0
+ .long 1072099328
+ .long 0
+ .long 1072098304
+ .long 0
+ .long 1072096256
+ .long 0
+ .long 1072095232
+ .long 0
+ .long 1072094208
+ .long 0
+ .long 1072092160
+ .long 0
+ .long 1072091136
+ .long 0
+ .long 1072089088
+ .long 0
+ .long 1072088064
+ .long 0
+ .long 1072086016
+ .long 0
+ .long 1072084992
+ .long 0
+ .long 1072082944
+ .long 0
+ .long 1072081920
+ .long 0
+ .long 1072080896
+ .long 0
+ .long 1072078848
+ .long 0
+ .long 1072075776
+ .long 0
+ .long 1072073728
+ .long 0
+ .long 1072070656
+ .long 0
+ .long 1072067584
+ .long 0
+ .long 1072064512
+ .long 0
+ .long 1072061440
+ .long 0
+ .long 1072059392
+ .long 0
+ .long 1072056320
+ .long 0
+ .long 1072053248
+ .long 0
+ .long 1072051200
+ .long 0
+ .long 1072048128
+ .long 0
+ .long 1072045056
+ .long 0
+ .long 1072043008
+ .long 0
+ .long 1072039936
+ .long 0
+ .long 1072037888
+ .long 0
+ .long 1072034816
+ .long 0
+ .long 1072031744
+ .long 0
+ .long 1072029696
+ .long 0
+ .long 1072026624
+ .long 0
+ .long 1072024576
+ .long 0
+ .long 1072021504
+ .long 0
+ .long 1072019456
+ .long 0
+ .long 1072016384
+ .long 0
+ .long 1072014336
+ .long 0
+ .long 1072011264
+ .long 0
+ .long 1072009216
+ .long 0
+ .long 1072006144
+ .long 0
+ .long 1072004096
+ .long 0
+ .long 1072002048
+ .long 0
+ .long 1071998976
+ .long 0
+ .long 1071996928
+ .long 0
+ .long 1071993856
+ .long 0
+ .long 1071991808
+ .long 0
+ .long 1071989760
+ .long 0
+ .long 1071986688
+ .long 0
+ .long 1071984640
+ .long 0
+ .long 1071982592
+ .long 0
+ .long 1071979520
+ .long 0
+ .long 1071977472
+ .long 0
+ .long 1071975424
+ .long 0
+ .long 1071972352
+ .long 0
+ .long 1071970304
+ .long 0
+ .long 1071968256
+ .long 0
+ .long 1071966208
+ .long 0
+ .long 1071964160
+ .long 0
+ .long 1071961088
+ .long 0
+ .long 1071959040
+ .long 0
+ .long 1071956992
+ .long 0
+ .long 1071954944
+ .long 0
+ .long 1071952896
+ .long 0
+ .long 1071949824
+ .long 0
+ .long 1071947776
+ .long 0
+ .long 1071945728
+ .long 0
+ .long 1071943680
+ .long 0
+ .long 1071941632
+ .long 0
+ .long 1071939584
+ .long 0
+ .long 1071937536
+ .long 0
+ .long 1071935488
+ .long 0
+ .long 1071933440
+ .long 0
+ .long 1071930368
+ .long 0
+ .long 1071928320
+ .long 0
+ .long 1071926272
+ .long 0
+ .long 1071924224
+ .long 0
+ .long 1071922176
+ .long 0
+ .long 1071920128
+ .long 0
+ .long 1071918080
+ .long 0
+ .long 1071916032
+ .long 0
+ .long 1071913984
+ .long 0
+ .long 1071911936
+ .long 0
+ .long 1071909888
+ .long 0
+ .long 1071907840
+ .long 0
+ .long 1071905792
+ .long 0
+ .long 1071903744
+ .long 0
+ .long 1071901696
+ .long 0
+ .long 1071900672
+ .long 0
+ .long 1071898624
+ .long 0
+ .long 1071896576
+ .long 0
+ .long 1071894528
+ .long 0
+ .long 1071892480
+ .long 0
+ .long 1071890432
+ .long 0
+ .long 1071888384
+ .long 0
+ .long 1071886336
+ .long 0
+ .long 1071884288
+ .long 0
+ .long 1071883264
+ .long 0
+ .long 1071881216
+ .long 0
+ .long 1071879168
+ .long 0
+ .long 1071877120
+ .long 0
+ .long 1071875072
+ .long 0
+ .long 1071873024
+ .long 0
+ .long 1071872000
+ .long 0
+ .long 1071869952
+ .long 0
+ .long 1071867904
+ .long 0
+ .long 1071865856
+ .long 0
+ .long 1071864832
+ .long 0
+ .long 1071862784
+ .long 0
+ .long 1071860736
+ .long 0
+ .long 1071858688
+ .long 0
+ .long 1071856640
+ .long 0
+ .long 1071855616
+ .long 0
+ .long 1071853568
+ .long 0
+ .long 1071851520
+ .long 0
+ .long 1071850496
+ .long 0
+ .long 1071848448
+ .long 0
+ .long 1071846400
+ .long 0
+ .long 1071844352
+ .long 0
+ .long 1071843328
+ .long 0
+ .long 1071841280
+ .long 0
+ .long 1071839232
+ .long 0
+ .long 1071838208
+ .long 0
+ .long 1071836160
+ .long 0
+ .long 1071834112
+ .long 0
+ .long 1071833088
+ .long 0
+ .long 1071831040
+ .long 0
+ .long 1071830016
+ .long 0
+ .long 1071827968
+ .long 0
+ .long 1071825920
+ .long 0
+ .long 1071824896
+ .long 0
+ .long 1071822848
+ .long 0
+ .long 1071821824
+ .long 0
+ .long 1071819776
+ .long 0
+ .long 1071817728
+ .long 0
+ .long 1071816704
+ .long 0
+ .long 1071814656
+ .long 0
+ .long 1071813632
+ .long 0
+ .long 1071811584
+ .long 0
+ .long 1071810560
+ .long 0
+ .long 1071808512
+ .long 0
+ .long 1071806464
+ .long 0
+ .long 1071805440
+ .long 0
+ .long 1071803392
+ .long 0
+ .long 1071802368
+ .long 0
+ .long 1071800320
+ .long 0
+ .long 1071799296
+ .long 0
+ .long 1071797248
+ .long 0
+ .long 1071796224
+ .long 0
+ .long 1071794176
+ .long 0
+ .long 1071793152
+ .long 0
+ .long 1071791104
+ .long 0
+ .long 1071790080
+ .long 0
+ .long 1071788032
+ .long 0
+ .long 1071787008
+ .long 0
+ .long 1071784960
+ .long 0
+ .long 1071783936
+ .long 0
+ .long 1071782912
+ .long 0
+ .long 1071780864
+ .long 0
+ .long 1071779840
+ .long 0
+ .long 1071777792
+ .long 0
+ .long 1071776768
+ .long 0
+ .long 1071774720
+ .long 0
+ .long 1071773696
+ .long 0
+ .long 1071772672
+ .long 0
+ .long 1071770624
+ .long 0
+ .long 1071769600
+ .long 0
+ .long 1071767552
+ .long 0
+ .long 1071766528
+ .long 0
+ .long 1071765504
+ .long 0
+ .long 1071763456
+ .long 0
+ .long 1071762432
+ .long 0
+ .long 1071760384
+ .long 0
+ .long 1071759360
+ .long 0
+ .long 1071758336
+ .long 0
+ .long 1071756288
+ .long 0
+ .long 1071755264
+ .long 0
+ .long 1071754240
+ .long 0
+ .long 1071752192
+ .long 0
+ .long 1071751168
+ .long 0
+ .long 1071750144
+ .long 0
+ .long 1071748096
+ .long 0
+ .long 1071747072
+ .long 0
+ .long 1071746048
+ .long 0
+ .long 1071744000
+ .long 0
+ .long 1071742976
+ .long 0
+ .long 1071741952
+ .long 0
+ .long 1071739904
+ .long 0
+ .long 1071738880
+ .long 0
+ .long 1071737856
+ .long 0
+ .long 1071736832
+ .long 0
+ .long 1071734784
+ .long 0
+ .long 1071733760
+ .long 0
+ .long 1071732736
+ .long 0
+ .long 1071730688
+ .long 0
+ .long 1071729664
+ .long 0
+ .long 1071728640
+ .long 0
+ .long 1071727616
+ .long 0
+ .long 1071725568
+ .long 0
+ .long 1071724544
+ .long 0
+ .long 1071723520
+ .long 0
+ .long 1071722496
+ .long 0
+ .long 1071720448
+ .long 0
+ .long 1071719424
+ .long 0
+ .long 1071718400
+ .long 0
+ .long 1071717376
+ .long 0
+ .long 1071715328
+ .long 0
+ .long 1071714304
+ .long 0
+ .long 1071713280
+ .long 0
+ .long 1071712256
+ .long 0
+ .long 1071711232
+ .long 0
+ .long 1071709184
+ .long 0
+ .long 1071708160
+ .long 0
+ .long 1071707136
+ .long 0
+ .long 1071706112
+ .long 0
+ .long 1071705088
+ .long 0
+ .long 1071704064
+ .long 0
+ .long 1071702016
+ .long 0
+ .long 1071700992
+ .long 0
+ .long 1071699968
+ .long 0
+ .long 1071698944
+ .long 0
+ .long 1071697920
+ .long 0
+ .long 1071696896
+ .long 0
+ .long 1071694848
+ .long 0
+ .long 1071693824
+ .long 0
+ .long 1071692800
+ .long 0
+ .long 1071691776
+ .long 0
+ .long 1071690752
+ .long 0
+ .long 1071689728
+ .long 0
+ .long 1071688704
+ .long 0
+ .long 1071686656
+ .long 0
+ .long 1071685632
+ .long 0
+ .long 1071684608
+ .long 0
+ .long 1071683584
+ .long 0
+ .long 1071682560
+ .long 0
+ .long 1071681536
+ .long 0
+ .long 1071680512
+ .long 0
+ .long 1071679488
+ .long 0
+ .long 1071677440
+ .long 0
+ .long 1071676416
+ .long 0
+ .long 1071675392
+ .long 0
+ .long 1071674368
+ .long 0
+ .long 1071673344
+ .long 0
+ .long 1071672320
+ .long 0
+ .long 1071671296
+ .long 0
+ .long 1071670272
+ .long 0
+ .long 1071669248
+ .long 0
+ .long 1071668224
+ .long 0
+ .long 1071667200
+ .long 0
+ .long 1071666176
+ .long 0
+ .long 1071665152
+ .long 0
+ .long 1071663104
+ .long 0
+ .long 1071662080
+ .long 0
+ .long 1071661056
+ .long 0
+ .long 1071660032
+ .long 0
+ .long 1071659008
+ .long 0
+ .long 1071657984
+ .long 0
+ .long 1071656960
+ .long 0
+ .long 1071655936
+ .long 0
+ .long 1071654912
+ .long 0
+ .long 1071653888
+ .long 0
+ .long 1071652864
+ .long 0
+ .long 1071651840
+ .long 0
+ .long 1071650816
+ .long 0
+ .long 1071649792
+ .long 0
+ .long 1071648768
+ .long 0
+ .long 1071647744
+ .long 0
+ .long 1071646720
+ .long 0
+ .long 1071645696
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1101004800
+ .long 1073741824
+ .long 1095761920
+ .long 256
+ .long 1118830592
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1017118720
+ .long 1413754136
+ .long 1073291771
+ .long 856972295
+ .long 1016178214
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1071644672
+ .long 1476395008
+ .long 1069897045
+ .long 1768958041
+ .long 3189069141
+ .long 805306368
+ .long 1068708659
+ .long 3580333578
+ .long 1040816593
+ .long 3067382784
+ .long 1067899757
+ .long 3397590151
+ .long 1067392113
+ .long 2939529726
+ .long 1066854585
+ .long 1423429166
+ .long 1066517752
+ .long 1775218934
+ .long 1066178574
+ .long 1185392460
+ .long 1065859647
+ .long 289998670
+ .long 1065577550
+ .long 3179807072
+ .long 1065648121
+ .long 3781007284
+ .long 1061576176
+ .long 2482106687
+ .long 1067019199
+ .long 763519713
+ .long 3214591591
+ .long 3695107454
+ .long 1067530646
+ .long 0
+ .long 1073741824
+ .long 1124791109
+ .long 1006764147
+ .long 1476395008
+ .long 1069897045
+ .long 1953913876
+ .long 3189069141
+ .long 805306368
+ .long 1067660083
+ .long 165110192
+ .long 1039768033
+ .long 3067304082
+ .long 1065802605
+ .long 3404727379
+ .long 1064246385
+ .long 2737480376
+ .long 1062660281
+ .long 933797922
+ .long 1061274873
+ .long 1475716730
+ .long 1059887095
+ .long 1511619763
+ .long 1058519827
+ .long 556024211
+ .long 1057187555
+ .long 3482101045
+ .long 1056217350
+ .long 1174622859
+ .long 1050762633
+ .long 899668651
+ .long 1055506366
+ .long 1081094694
+ .long 3202035365
+ .long 2559814773
+ .long 1053906576
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 3218341888
+ .long 0
+ .long 1070694400
+ .long 0
+ .long 3218046976
+ .long 0
+ .long 1070391296
+ .long 0
+ .long 3217739776
+ .type _vmldASinHATab,@object
+ .size _vmldASinHATab,4504
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+
+ .text
+.L_2__routine_start___svml_asinf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_asinf16
+
+__svml_asinf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups __svml_sasin_data_internal(%rip), %zmm4
+ vmovups 64+__svml_sasin_data_internal(%rip), %zmm6
+
+/* SQ ~ -2*sqrt(Y) */
+ vmovups 192+__svml_sasin_data_internal(%rip), %zmm8
+ vmovups 448+__svml_sasin_data_internal(%rip), %zmm12
+ vmovups 512+__svml_sasin_data_internal(%rip), %zmm13
+ vmovups 256+__svml_sasin_data_internal(%rip), %zmm7
+ vmovaps %zmm0, %zmm3
+
+/* x = |arg| */
+ vandps %zmm3, %zmm4, %zmm2
+ vandnps %zmm3, %zmm4, %zmm1
+
+/* x^2 */
+ vmulps {rn-sae}, %zmm2, %zmm2, %zmm5
+ vcmpps $17, {sae}, %zmm2, %zmm7, %k0
+ vcmpps $21, {sae}, %zmm6, %zmm2, %k2
+ vmovups 704+__svml_sasin_data_internal(%rip), %zmm7
+ kmovw %k0, %edx
+
+/* Y = 0.5 - 0.5*x */
+ vmovaps %zmm6, %zmm9
+ vfnmadd231ps {rn-sae}, %zmm2, %zmm6, %zmm9
+ vmovups 896+__svml_sasin_data_internal(%rip), %zmm6
+ vrsqrt14ps %zmm9, %zmm10
+ vcmpps $17, {sae}, %zmm8, %zmm9, %k1
+ vminps {sae}, %zmm9, %zmm5, %zmm0
+ vmovups 576+__svml_sasin_data_internal(%rip), %zmm8
+ vmovups 832+__svml_sasin_data_internal(%rip), %zmm5
+ vxorps %zmm10, %zmm10, %zmm10{%k1}
+ vaddps {rn-sae}, %zmm9, %zmm9, %zmm14
+ vmulps {rn-sae}, %zmm10, %zmm10, %zmm11
+ vmulps {rn-sae}, %zmm10, %zmm14, %zmm4
+ vfmsub213ps {rn-sae}, %zmm12, %zmm11, %zmm14
+ vmulps {rn-sae}, %zmm14, %zmm4, %zmm15
+ vfmadd231ps {rn-sae}, %zmm14, %zmm13, %zmm8
+ vmovups 768+__svml_sasin_data_internal(%rip), %zmm14
+
+/* polynomial */
+ vmovups 640+__svml_sasin_data_internal(%rip), %zmm13
+ vfmsub213ps {rn-sae}, %zmm4, %zmm15, %zmm8
+ vfmadd231ps {rn-sae}, %zmm0, %zmm14, %zmm5
+ vfmadd231ps {rn-sae}, %zmm0, %zmm13, %zmm7
+ vmulps {rn-sae}, %zmm0, %zmm0, %zmm15
+ vblendmps %zmm8, %zmm2, %zmm2{%k2}
+ vfmadd213ps {rn-sae}, %zmm5, %zmm15, %zmm7
+ vfmadd213ps {rn-sae}, %zmm6, %zmm0, %zmm7
+ vmulps {rn-sae}, %zmm0, %zmm7, %zmm9
+ vmovups 960+__svml_sasin_data_internal(%rip), %zmm0
+ vfmadd213ps {rn-sae}, %zmm2, %zmm2, %zmm9
+ vaddps {rn-sae}, %zmm0, %zmm9, %zmm9{%k2}
+ vxorps %zmm1, %zmm9, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm3, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_sasin_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_asinf16,@function
+ .size __svml_asinf16,.-__svml_asinf16
+..LN__svml_asinf16.0:
+
+.L_2__routine_start___svml_sasin_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_sasin_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movzwl 2(%rdi), %edx
+ andl $32640, %edx
+ cmpl $32640, %edx
+ je .LBL_2_12
+
+
+ pxor %xmm0, %xmm0
+ cvtss2sd (%rdi), %xmm0
+ movsd %xmm0, -32(%rsp)
+ andb $127, -25(%rsp)
+ movsd -32(%rsp), %xmm12
+ movsd 4160+_vmldASinHATab(%rip), %xmm0
+ comisd %xmm12, %xmm0
+ jb .LBL_2_10
+
+
+ movsd 4168+_vmldASinHATab(%rip), %xmm1
+ comisd %xmm12, %xmm1
+ jbe .LBL_2_9
+
+
+ comisd 4136+_vmldASinHATab(%rip), %xmm12
+ jbe .LBL_2_6
+
+
+ movsd 4104+_vmldASinHATab(%rip), %xmm13
+ movaps %xmm12, %xmm5
+ mulsd %xmm12, %xmm13
+ movaps %xmm12, %xmm7
+ movsd %xmm13, -48(%rsp)
+ movsd -48(%rsp), %xmm14
+ movsd 4104+_vmldASinHATab(%rip), %xmm1
+ subsd -32(%rsp), %xmm14
+ movsd %xmm14, -56(%rsp)
+ movsd -48(%rsp), %xmm8
+ movsd -56(%rsp), %xmm15
+ subsd %xmm15, %xmm8
+ movsd %xmm8, -48(%rsp)
+ movsd -48(%rsp), %xmm6
+ movsd 4296+_vmldASinHATab(%rip), %xmm8
+ subsd %xmm6, %xmm5
+ movsd %xmm5, -56(%rsp)
+ movaps %xmm12, %xmm5
+ movsd -48(%rsp), %xmm9
+ movaps %xmm9, %xmm13
+ addsd %xmm9, %xmm7
+ mulsd %xmm9, %xmm13
+ movsd -56(%rsp), %xmm11
+ movaps %xmm13, %xmm10
+ mulsd %xmm11, %xmm7
+ mulsd %xmm13, %xmm1
+ addsd %xmm7, %xmm10
+ mulsd %xmm10, %xmm8
+ movsd %xmm1, -48(%rsp)
+ movsd -48(%rsp), %xmm2
+ movsd 4104+_vmldASinHATab(%rip), %xmm1
+ subsd %xmm13, %xmm2
+ addsd 4288+_vmldASinHATab(%rip), %xmm8
+ mulsd %xmm10, %xmm8
+ movsd %xmm2, -56(%rsp)
+ movsd -48(%rsp), %xmm3
+ movsd -56(%rsp), %xmm0
+ addsd 4280+_vmldASinHATab(%rip), %xmm8
+ subsd %xmm0, %xmm3
+ mulsd %xmm10, %xmm8
+ movsd %xmm3, -48(%rsp)
+ movsd -48(%rsp), %xmm4
+ addsd 4272+_vmldASinHATab(%rip), %xmm8
+ subsd %xmm4, %xmm13
+ mulsd %xmm10, %xmm8
+ movsd %xmm13, -56(%rsp)
+ movsd -48(%rsp), %xmm6
+ mulsd %xmm6, %xmm9
+ addsd 4264+_vmldASinHATab(%rip), %xmm8
+ mulsd %xmm6, %xmm11
+ mulsd %xmm10, %xmm8
+ mulsd %xmm9, %xmm1
+ addsd 4256+_vmldASinHATab(%rip), %xmm8
+ mulsd %xmm10, %xmm8
+ movaps %xmm9, %xmm3
+ movsd -56(%rsp), %xmm14
+ movaps %xmm6, %xmm4
+ movsd %xmm1, -48(%rsp)
+ addsd %xmm14, %xmm7
+ addsd 4248+_vmldASinHATab(%rip), %xmm8
+ mulsd %xmm7, %xmm5
+ mulsd %xmm10, %xmm8
+ addsd %xmm5, %xmm11
+ addsd 4240+_vmldASinHATab(%rip), %xmm8
+ movsd -48(%rsp), %xmm2
+ mulsd %xmm10, %xmm8
+ subsd %xmm9, %xmm2
+ addsd %xmm11, %xmm9
+ addsd 4232+_vmldASinHATab(%rip), %xmm8
+ mulsd %xmm9, %xmm7
+ mulsd %xmm10, %xmm8
+ movsd %xmm2, -56(%rsp)
+ movsd -48(%rsp), %xmm0
+ movsd -56(%rsp), %xmm15
+ subsd %xmm15, %xmm0
+ addsd 4224+_vmldASinHATab(%rip), %xmm8
+ movsd %xmm0, -48(%rsp)
+ movsd -48(%rsp), %xmm5
+ mulsd %xmm10, %xmm8
+ subsd %xmm5, %xmm3
+ movsd %xmm3, -56(%rsp)
+ movsd -48(%rsp), %xmm3
+ movsd -56(%rsp), %xmm5
+ movaps %xmm5, %xmm13
+ addsd 4216+_vmldASinHATab(%rip), %xmm8
+ mulsd %xmm3, %xmm4
+ addsd %xmm11, %xmm13
+ mulsd %xmm10, %xmm8
+ mulsd %xmm13, %xmm6
+ addsd 4208+_vmldASinHATab(%rip), %xmm8
+ addsd %xmm7, %xmm6
+ mulsd %xmm10, %xmm8
+ movsd 4104+_vmldASinHATab(%rip), %xmm7
+ movaps %xmm4, %xmm13
+ mulsd %xmm4, %xmm7
+ addsd 4200+_vmldASinHATab(%rip), %xmm8
+ movsd %xmm7, -48(%rsp)
+ movsd -48(%rsp), %xmm1
+ movsd 4184+_vmldASinHATab(%rip), %xmm10
+ subsd %xmm4, %xmm1
+ mulsd %xmm9, %xmm10
+ addsd %xmm6, %xmm4
+ movsd %xmm1, -56(%rsp)
+ movaps %xmm12, %xmm9
+ movsd -48(%rsp), %xmm0
+ movsd -56(%rsp), %xmm2
+ movsd 4176+_vmldASinHATab(%rip), %xmm1
+ subsd %xmm2, %xmm0
+ mulsd %xmm1, %xmm3
+ mulsd %xmm1, %xmm11
+ mulsd %xmm4, %xmm8
+ addsd %xmm3, %xmm9
+ mulsd %xmm1, %xmm5
+ addsd %xmm11, %xmm10
+ movsd %xmm0, -48(%rsp)
+ addsd %xmm10, %xmm8
+ movsd -48(%rsp), %xmm7
+ addsd %xmm5, %xmm8
+ subsd %xmm7, %xmm13
+ movsd %xmm13, -56(%rsp)
+ movsd -48(%rsp), %xmm0
+ movsd -56(%rsp), %xmm2
+ movsd %xmm9, -48(%rsp)
+ addsd %xmm2, %xmm6
+ movsd -48(%rsp), %xmm11
+ movsd 4192+_vmldASinHATab(%rip), %xmm4
+ subsd %xmm11, %xmm12
+ mulsd %xmm4, %xmm0
+ mulsd %xmm4, %xmm6
+ addsd %xmm12, %xmm3
+ movsd %xmm3, -56(%rsp)
+ movsd -48(%rsp), %xmm3
+ movaps %xmm3, %xmm12
+ movsd -56(%rsp), %xmm7
+ addsd %xmm0, %xmm12
+ addsd %xmm7, %xmm8
+ movsd %xmm12, -48(%rsp)
+ movsd -48(%rsp), %xmm12
+ subsd %xmm12, %xmm3
+ addsd %xmm3, %xmm0
+ movsd %xmm0, -56(%rsp)
+ movsd -48(%rsp), %xmm9
+ movsd -56(%rsp), %xmm0
+ movb 3(%rdi), %dil
+ addsd %xmm0, %xmm8
+ andb $-128, %dil
+ addsd %xmm8, %xmm9
+ addsd %xmm9, %xmm6
+ movsd %xmm6, -40(%rsp)
+ movb -33(%rsp), %dl
+ andb $127, %dl
+ orb %dil, %dl
+ movb %dl, -33(%rsp)
+ movsd -40(%rsp), %xmm1
+ cvtsd2ss %xmm1, %xmm1
+ movss %xmm1, (%rsi)
+ ret
+
+.LBL_2_6:
+
+ comisd 4128+_vmldASinHATab(%rip), %xmm12
+ jb .LBL_2_8
+
+
+ addsd %xmm0, %xmm12
+ movsd %xmm12, -48(%rsp)
+ movsd -48(%rsp), %xmm0
+ mulsd -32(%rsp), %xmm0
+ movsd %xmm0, -40(%rsp)
+ movb -33(%rsp), %dl
+ movb 3(%rdi), %dil
+ andb $127, %dl
+ andb $-128, %dil
+ orb %dil, %dl
+ movb %dl, -33(%rsp)
+ movsd -40(%rsp), %xmm1
+ cvtsd2ss %xmm1, %xmm1
+ movss %xmm1, (%rsi)
+ ret
+
+.LBL_2_8:
+
+ mulsd %xmm12, %xmm12
+ movsd %xmm12, -48(%rsp)
+ movsd -48(%rsp), %xmm0
+ movb 3(%rdi), %dil
+ andb $-128, %dil
+ addsd -32(%rsp), %xmm0
+ movsd %xmm0, -40(%rsp)
+ movb -33(%rsp), %dl
+ andb $127, %dl
+ orb %dil, %dl
+ movb %dl, -33(%rsp)
+ movsd -40(%rsp), %xmm1
+ cvtsd2ss %xmm1, %xmm1
+ movss %xmm1, (%rsi)
+ ret
+
+.LBL_2_9:
+
+ movaps %xmm0, %xmm9
+ movzwl 4166+_vmldASinHATab(%rip), %r9d
+ pxor %xmm15, %xmm15
+ andl $-32753, %r9d
+ subsd %xmm12, %xmm9
+ subsd %xmm0, %xmm15
+ mulsd %xmm9, %xmm1
+ movsd %xmm1, -32(%rsp)
+ movzwl -26(%rsp), %ecx
+ andl $32752, %ecx
+ shrl $4, %ecx
+ addl $-1023, %ecx
+ movl %ecx, %r8d
+ movl %ecx, %edx
+ negl %r8d
+ addl $1023, %r8d
+ andl $2047, %r8d
+ shll $4, %r8d
+ movsd %xmm0, -24(%rsp)
+ orl %r8d, %r9d
+ movw %r9w, -18(%rsp)
+ andl $1, %edx
+ movsd -24(%rsp), %xmm10
+ movl %edx, %r10d
+ mulsd %xmm10, %xmm1
+ lea _vmldASinHATab(%rip), %r8
+ movaps %xmm1, %xmm6
+ movsd 4112+_vmldASinHATab(%rip), %xmm7
+ addsd %xmm1, %xmm6
+ jne ..L54
+ movaps %xmm1, %xmm6
+..L54:
+ mulsd %xmm6, %xmm7
+ movaps %xmm6, %xmm8
+ movaps %xmm7, %xmm11
+ subl %edx, %ecx
+ movsd 4120+_vmldASinHATab(%rip), %xmm13
+ subsd %xmm6, %xmm11
+ addsd %xmm1, %xmm13
+ movsd %xmm11, -56(%rsp)
+ movsd -56(%rsp), %xmm12
+ movsd %xmm13, -16(%rsp)
+ subsd %xmm12, %xmm7
+ movl -16(%rsp), %r11d
+ movaps %xmm7, %xmm4
+ shll $8, %r10d
+ andl $511, %r11d
+ addl %r10d, %r11d
+ subsd %xmm7, %xmm8
+ movsd (%r8,%r11,8), %xmm3
+ addsd %xmm8, %xmm4
+ mulsd %xmm3, %xmm7
+ movaps %xmm3, %xmm14
+ mulsd %xmm3, %xmm14
+ mulsd %xmm14, %xmm4
+ movsd 4496+_vmldASinHATab(%rip), %xmm5
+ addsd %xmm15, %xmm4
+ mulsd %xmm4, %xmm5
+ shrl $1, %ecx
+ addsd 4488+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ addl $1023, %ecx
+ andl $2047, %ecx
+ addsd 4480+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ movzwl 4166+_vmldASinHATab(%rip), %r9d
+ shll $4, %ecx
+ andl $-32753, %r9d
+ movsd %xmm0, -8(%rsp)
+ orl %ecx, %r9d
+ movw %r9w, -2(%rsp)
+ movsd -8(%rsp), %xmm12
+ mulsd %xmm12, %xmm7
+ addsd 4472+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ movsd 4104+_vmldASinHATab(%rip), %xmm1
+ mulsd %xmm7, %xmm1
+ addsd 4464+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ movsd %xmm1, -48(%rsp)
+ movsd -48(%rsp), %xmm0
+ movsd 4336+_vmldASinHATab(%rip), %xmm13
+ subsd %xmm7, %xmm0
+ addsd 4456+_vmldASinHATab(%rip), %xmm5
+ addsd 4344+_vmldASinHATab(%rip), %xmm13
+ mulsd %xmm4, %xmm5
+ mulsd %xmm9, %xmm13
+ addsd 4448+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ mulsd %xmm6, %xmm5
+ movsd %xmm0, -56(%rsp)
+ addsd %xmm5, %xmm8
+ movsd 4440+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm5
+ mulsd %xmm3, %xmm8
+ addsd 4432+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm12, %xmm8
+ mulsd %xmm9, %xmm5
+ movsd -48(%rsp), %xmm10
+ movsd -56(%rsp), %xmm2
+ movsd 4320+_vmldASinHATab(%rip), %xmm14
+ subsd %xmm2, %xmm10
+ addsd 4424+_vmldASinHATab(%rip), %xmm5
+ addsd 4328+_vmldASinHATab(%rip), %xmm14
+ mulsd %xmm9, %xmm5
+ addsd %xmm13, %xmm14
+ addsd 4416+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm14
+ mulsd %xmm9, %xmm5
+ movsd %xmm10, -48(%rsp)
+ movaps %xmm9, %xmm2
+ movsd -48(%rsp), %xmm11
+ movsd 4104+_vmldASinHATab(%rip), %xmm3
+ subsd %xmm11, %xmm7
+ mulsd %xmm9, %xmm3
+ addsd 4408+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm5
+ movsd 4304+_vmldASinHATab(%rip), %xmm4
+ movsd %xmm7, -56(%rsp)
+ movsd -48(%rsp), %xmm6
+ movsd -56(%rsp), %xmm7
+ movsd %xmm3, -48(%rsp)
+ addsd %xmm7, %xmm8
+ addsd 4400+_vmldASinHATab(%rip), %xmm5
+ addsd 4312+_vmldASinHATab(%rip), %xmm4
+ mulsd %xmm9, %xmm5
+ addsd %xmm14, %xmm4
+ addsd 4392+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm5
+ movsd -48(%rsp), %xmm1
+ movsd 4104+_vmldASinHATab(%rip), %xmm7
+ subsd %xmm9, %xmm1
+ addsd 4384+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm5
+ movsd %xmm1, -56(%rsp)
+ movsd -48(%rsp), %xmm0
+ movsd -56(%rsp), %xmm15
+ addsd 4376+_vmldASinHATab(%rip), %xmm5
+ subsd %xmm15, %xmm0
+ mulsd %xmm9, %xmm5
+ movsd %xmm0, -48(%rsp)
+ movsd 4320+_vmldASinHATab(%rip), %xmm0
+ addsd 4368+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm5
+ addsd 4360+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm5
+ addsd 4352+_vmldASinHATab(%rip), %xmm5
+ mulsd %xmm9, %xmm5
+ mulsd %xmm9, %xmm5
+ mulsd %xmm9, %xmm5
+ addsd %xmm5, %xmm4
+ mulsd %xmm4, %xmm8
+ movsd -48(%rsp), %xmm4
+ subsd %xmm4, %xmm2
+ movsd %xmm2, -56(%rsp)
+ movsd -48(%rsp), %xmm4
+ movaps %xmm4, %xmm13
+ mulsd %xmm4, %xmm13
+ mulsd %xmm4, %xmm0
+ addsd %xmm9, %xmm4
+ mulsd %xmm13, %xmm7
+ movsd -56(%rsp), %xmm3
+ movsd %xmm7, -48(%rsp)
+ movsd -48(%rsp), %xmm10
+ mulsd %xmm3, %xmm4
+ subsd %xmm13, %xmm10
+ movsd %xmm10, -56(%rsp)
+ movsd -48(%rsp), %xmm11
+ movsd -56(%rsp), %xmm1
+ movsd 4304+_vmldASinHATab(%rip), %xmm10
+ subsd %xmm1, %xmm11
+ movsd %xmm11, -48(%rsp)
+ movaps %xmm0, %xmm1
+ movsd -48(%rsp), %xmm12
+ movsd 4304+_vmldASinHATab(%rip), %xmm11
+ subsd %xmm12, %xmm13
+ movsd %xmm13, -56(%rsp)
+ movsd -48(%rsp), %xmm7
+ mulsd 4336+_vmldASinHATab(%rip), %xmm7
+ movsd -56(%rsp), %xmm2
+ addsd %xmm7, %xmm1
+ addsd %xmm2, %xmm4
+ movsd %xmm1, -48(%rsp)
+ movsd -48(%rsp), %xmm14
+ movsd %xmm7, -16(%rsp)
+ subsd %xmm14, %xmm0
+ mulsd 4336+_vmldASinHATab(%rip), %xmm4
+ addsd %xmm0, %xmm7
+ movsd %xmm7, -56(%rsp)
+ movsd -48(%rsp), %xmm12
+ movsd -56(%rsp), %xmm1
+ addsd %xmm12, %xmm10
+ movsd %xmm10, -48(%rsp)
+ movsd -48(%rsp), %xmm15
+ movsd 4104+_vmldASinHATab(%rip), %xmm7
+ subsd %xmm15, %xmm11
+ movsd 4320+_vmldASinHATab(%rip), %xmm2
+ addsd %xmm11, %xmm12
+ mulsd %xmm3, %xmm2
+ movsd %xmm12, -56(%rsp)
+ movsd -48(%rsp), %xmm15
+ mulsd %xmm15, %xmm7
+ movsd -56(%rsp), %xmm0
+ movsd %xmm7, -48(%rsp)
+ movsd -48(%rsp), %xmm10
+ movsd 4344+_vmldASinHATab(%rip), %xmm3
+ subsd %xmm15, %xmm10
+ mulsd %xmm9, %xmm3
+ movsd %xmm10, -56(%rsp)
+ movsd -48(%rsp), %xmm11
+ movsd -56(%rsp), %xmm13
+ subsd %xmm13, %xmm11
+ addsd 4328+_vmldASinHATab(%rip), %xmm3
+ movsd %xmm11, -48(%rsp)
+ movsd -48(%rsp), %xmm14
+ mulsd %xmm9, %xmm3
+ subsd %xmm14, %xmm15
+ movsd %xmm15, -56(%rsp)
+ movsd -48(%rsp), %xmm10
+ movsd -56(%rsp), %xmm7
+ addsd %xmm7, %xmm4
+ addsd 4312+_vmldASinHATab(%rip), %xmm3
+ addsd %xmm2, %xmm4
+ addsd %xmm5, %xmm3
+ addsd %xmm1, %xmm4
+ addsd %xmm0, %xmm4
+ movsd 4144+_vmldASinHATab(%rip), %xmm0
+ addsd %xmm3, %xmm4
+ mulsd %xmm6, %xmm4
+ mulsd %xmm10, %xmm6
+ addsd %xmm8, %xmm4
+ movaps %xmm0, %xmm8
+ subsd %xmm6, %xmm8
+ movsd %xmm8, -48(%rsp)
+ movsd -48(%rsp), %xmm9
+ subsd %xmm9, %xmm0
+ subsd %xmm6, %xmm0
+ movsd %xmm0, -56(%rsp)
+ movsd -48(%rsp), %xmm2
+ movsd -56(%rsp), %xmm1
+ movb 3(%rdi), %dil
+ andb $-128, %dil
+ addsd 4152+_vmldASinHATab(%rip), %xmm1
+ subsd %xmm4, %xmm1
+ addsd %xmm1, %xmm2
+ movsd %xmm2, -40(%rsp)
+ movb -33(%rsp), %dl
+ andb $127, %dl
+ orb %dil, %dl
+ movb %dl, -33(%rsp)
+ movsd -40(%rsp), %xmm3
+ cvtsd2ss %xmm3, %xmm3
+ movss %xmm3, (%rsi)
+ ret
+
+.LBL_2_10:
+
+ movl $1, %eax
+ pxor %xmm1, %xmm1
+ pxor %xmm0, %xmm0
+ divss %xmm0, %xmm1
+ movss %xmm1, (%rsi)
+
+
+ ret
+
+.LBL_2_12:
+
+ movss (%rdi), %xmm0
+ divss %xmm0, %xmm0
+ testl $8388607, (%rdi)
+ movss %xmm0, (%rsi)
+ sete %al
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_sasin_cout_rare_internal,@function
+ .size __svml_sasin_cout_rare_internal,.-__svml_sasin_cout_rare_internal
+..LN__svml_sasin_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_sasin_data_internal:
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 4294963200
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294959104
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 4294965248
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 3183476740
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1048576001
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1026481159
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1019423339
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1027250868
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1033468946
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1042983679
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 4290772992
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1036306094
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 1042839218
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .long 939876771
+ .type __svml_sasin_data_internal,@object
+ .size __svml_sasin_data_internal,1472
+ .align 32
+_vmldASinHATab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072689152
+ .long 0
+ .long 1072685056
+ .long 0
+ .long 1072680960
+ .long 0
+ .long 1072676864
+ .long 0
+ .long 1072672768
+ .long 0
+ .long 1072668672
+ .long 0
+ .long 1072665600
+ .long 0
+ .long 1072661504
+ .long 0
+ .long 1072657408
+ .long 0
+ .long 1072653312
+ .long 0
+ .long 1072649216
+ .long 0
+ .long 1072646144
+ .long 0
+ .long 1072642048
+ .long 0
+ .long 1072637952
+ .long 0
+ .long 1072634880
+ .long 0
+ .long 1072630784
+ .long 0
+ .long 1072626688
+ .long 0
+ .long 1072623616
+ .long 0
+ .long 1072619520
+ .long 0
+ .long 1072615424
+ .long 0
+ .long 1072612352
+ .long 0
+ .long 1072608256
+ .long 0
+ .long 1072605184
+ .long 0
+ .long 1072601088
+ .long 0
+ .long 1072598016
+ .long 0
+ .long 1072593920
+ .long 0
+ .long 1072590848
+ .long 0
+ .long 1072586752
+ .long 0
+ .long 1072583680
+ .long 0
+ .long 1072580608
+ .long 0
+ .long 1072576512
+ .long 0
+ .long 1072573440
+ .long 0
+ .long 1072570368
+ .long 0
+ .long 1072566272
+ .long 0
+ .long 1072563200
+ .long 0
+ .long 1072560128
+ .long 0
+ .long 1072556032
+ .long 0
+ .long 1072552960
+ .long 0
+ .long 1072549888
+ .long 0
+ .long 1072546816
+ .long 0
+ .long 1072542720
+ .long 0
+ .long 1072539648
+ .long 0
+ .long 1072536576
+ .long 0
+ .long 1072533504
+ .long 0
+ .long 1072530432
+ .long 0
+ .long 1072527360
+ .long 0
+ .long 1072523264
+ .long 0
+ .long 1072520192
+ .long 0
+ .long 1072517120
+ .long 0
+ .long 1072514048
+ .long 0
+ .long 1072510976
+ .long 0
+ .long 1072507904
+ .long 0
+ .long 1072504832
+ .long 0
+ .long 1072501760
+ .long 0
+ .long 1072498688
+ .long 0
+ .long 1072495616
+ .long 0
+ .long 1072492544
+ .long 0
+ .long 1072489472
+ .long 0
+ .long 1072486400
+ .long 0
+ .long 1072483328
+ .long 0
+ .long 1072480256
+ .long 0
+ .long 1072478208
+ .long 0
+ .long 1072475136
+ .long 0
+ .long 1072472064
+ .long 0
+ .long 1072468992
+ .long 0
+ .long 1072465920
+ .long 0
+ .long 1072462848
+ .long 0
+ .long 1072459776
+ .long 0
+ .long 1072457728
+ .long 0
+ .long 1072454656
+ .long 0
+ .long 1072451584
+ .long 0
+ .long 1072448512
+ .long 0
+ .long 1072446464
+ .long 0
+ .long 1072443392
+ .long 0
+ .long 1072440320
+ .long 0
+ .long 1072437248
+ .long 0
+ .long 1072435200
+ .long 0
+ .long 1072432128
+ .long 0
+ .long 1072429056
+ .long 0
+ .long 1072427008
+ .long 0
+ .long 1072423936
+ .long 0
+ .long 1072420864
+ .long 0
+ .long 1072418816
+ .long 0
+ .long 1072415744
+ .long 0
+ .long 1072412672
+ .long 0
+ .long 1072410624
+ .long 0
+ .long 1072407552
+ .long 0
+ .long 1072405504
+ .long 0
+ .long 1072402432
+ .long 0
+ .long 1072400384
+ .long 0
+ .long 1072397312
+ .long 0
+ .long 1072395264
+ .long 0
+ .long 1072392192
+ .long 0
+ .long 1072390144
+ .long 0
+ .long 1072387072
+ .long 0
+ .long 1072385024
+ .long 0
+ .long 1072381952
+ .long 0
+ .long 1072379904
+ .long 0
+ .long 1072376832
+ .long 0
+ .long 1072374784
+ .long 0
+ .long 1072371712
+ .long 0
+ .long 1072369664
+ .long 0
+ .long 1072366592
+ .long 0
+ .long 1072364544
+ .long 0
+ .long 1072362496
+ .long 0
+ .long 1072359424
+ .long 0
+ .long 1072357376
+ .long 0
+ .long 1072355328
+ .long 0
+ .long 1072352256
+ .long 0
+ .long 1072350208
+ .long 0
+ .long 1072347136
+ .long 0
+ .long 1072345088
+ .long 0
+ .long 1072343040
+ .long 0
+ .long 1072340992
+ .long 0
+ .long 1072337920
+ .long 0
+ .long 1072335872
+ .long 0
+ .long 1072333824
+ .long 0
+ .long 1072330752
+ .long 0
+ .long 1072328704
+ .long 0
+ .long 1072326656
+ .long 0
+ .long 1072324608
+ .long 0
+ .long 1072321536
+ .long 0
+ .long 1072319488
+ .long 0
+ .long 1072317440
+ .long 0
+ .long 1072315392
+ .long 0
+ .long 1072313344
+ .long 0
+ .long 1072310272
+ .long 0
+ .long 1072308224
+ .long 0
+ .long 1072306176
+ .long 0
+ .long 1072304128
+ .long 0
+ .long 1072302080
+ .long 0
+ .long 1072300032
+ .long 0
+ .long 1072296960
+ .long 0
+ .long 1072294912
+ .long 0
+ .long 1072292864
+ .long 0
+ .long 1072290816
+ .long 0
+ .long 1072288768
+ .long 0
+ .long 1072286720
+ .long 0
+ .long 1072284672
+ .long 0
+ .long 1072282624
+ .long 0
+ .long 1072280576
+ .long 0
+ .long 1072278528
+ .long 0
+ .long 1072275456
+ .long 0
+ .long 1072273408
+ .long 0
+ .long 1072271360
+ .long 0
+ .long 1072269312
+ .long 0
+ .long 1072267264
+ .long 0
+ .long 1072265216
+ .long 0
+ .long 1072263168
+ .long 0
+ .long 1072261120
+ .long 0
+ .long 1072259072
+ .long 0
+ .long 1072257024
+ .long 0
+ .long 1072254976
+ .long 0
+ .long 1072252928
+ .long 0
+ .long 1072250880
+ .long 0
+ .long 1072248832
+ .long 0
+ .long 1072246784
+ .long 0
+ .long 1072244736
+ .long 0
+ .long 1072243712
+ .long 0
+ .long 1072241664
+ .long 0
+ .long 1072239616
+ .long 0
+ .long 1072237568
+ .long 0
+ .long 1072235520
+ .long 0
+ .long 1072233472
+ .long 0
+ .long 1072231424
+ .long 0
+ .long 1072229376
+ .long 0
+ .long 1072227328
+ .long 0
+ .long 1072225280
+ .long 0
+ .long 1072223232
+ .long 0
+ .long 1072222208
+ .long 0
+ .long 1072220160
+ .long 0
+ .long 1072218112
+ .long 0
+ .long 1072216064
+ .long 0
+ .long 1072214016
+ .long 0
+ .long 1072211968
+ .long 0
+ .long 1072210944
+ .long 0
+ .long 1072208896
+ .long 0
+ .long 1072206848
+ .long 0
+ .long 1072204800
+ .long 0
+ .long 1072202752
+ .long 0
+ .long 1072201728
+ .long 0
+ .long 1072199680
+ .long 0
+ .long 1072197632
+ .long 0
+ .long 1072195584
+ .long 0
+ .long 1072193536
+ .long 0
+ .long 1072192512
+ .long 0
+ .long 1072190464
+ .long 0
+ .long 1072188416
+ .long 0
+ .long 1072186368
+ .long 0
+ .long 1072185344
+ .long 0
+ .long 1072183296
+ .long 0
+ .long 1072181248
+ .long 0
+ .long 1072179200
+ .long 0
+ .long 1072178176
+ .long 0
+ .long 1072176128
+ .long 0
+ .long 1072174080
+ .long 0
+ .long 1072173056
+ .long 0
+ .long 1072171008
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072167936
+ .long 0
+ .long 1072165888
+ .long 0
+ .long 1072163840
+ .long 0
+ .long 1072161792
+ .long 0
+ .long 1072160768
+ .long 0
+ .long 1072158720
+ .long 0
+ .long 1072157696
+ .long 0
+ .long 1072155648
+ .long 0
+ .long 1072153600
+ .long 0
+ .long 1072152576
+ .long 0
+ .long 1072150528
+ .long 0
+ .long 1072148480
+ .long 0
+ .long 1072147456
+ .long 0
+ .long 1072145408
+ .long 0
+ .long 1072143360
+ .long 0
+ .long 1072142336
+ .long 0
+ .long 1072140288
+ .long 0
+ .long 1072139264
+ .long 0
+ .long 1072137216
+ .long 0
+ .long 1072135168
+ .long 0
+ .long 1072134144
+ .long 0
+ .long 1072132096
+ .long 0
+ .long 1072131072
+ .long 0
+ .long 1072129024
+ .long 0
+ .long 1072128000
+ .long 0
+ .long 1072125952
+ .long 0
+ .long 1072124928
+ .long 0
+ .long 1072122880
+ .long 0
+ .long 1072120832
+ .long 0
+ .long 1072119808
+ .long 0
+ .long 1072117760
+ .long 0
+ .long 1072116736
+ .long 0
+ .long 1072114688
+ .long 0
+ .long 1072113664
+ .long 0
+ .long 1072111616
+ .long 0
+ .long 1072110592
+ .long 0
+ .long 1072108544
+ .long 0
+ .long 1072107520
+ .long 0
+ .long 1072105472
+ .long 0
+ .long 1072104448
+ .long 0
+ .long 1072102400
+ .long 0
+ .long 1072101376
+ .long 0
+ .long 1072099328
+ .long 0
+ .long 1072098304
+ .long 0
+ .long 1072096256
+ .long 0
+ .long 1072095232
+ .long 0
+ .long 1072094208
+ .long 0
+ .long 1072092160
+ .long 0
+ .long 1072091136
+ .long 0
+ .long 1072089088
+ .long 0
+ .long 1072088064
+ .long 0
+ .long 1072086016
+ .long 0
+ .long 1072084992
+ .long 0
+ .long 1072082944
+ .long 0
+ .long 1072081920
+ .long 0
+ .long 1072080896
+ .long 0
+ .long 1072078848
+ .long 0
+ .long 1072075776
+ .long 0
+ .long 1072073728
+ .long 0
+ .long 1072070656
+ .long 0
+ .long 1072067584
+ .long 0
+ .long 1072064512
+ .long 0
+ .long 1072061440
+ .long 0
+ .long 1072059392
+ .long 0
+ .long 1072056320
+ .long 0
+ .long 1072053248
+ .long 0
+ .long 1072051200
+ .long 0
+ .long 1072048128
+ .long 0
+ .long 1072045056
+ .long 0
+ .long 1072043008
+ .long 0
+ .long 1072039936
+ .long 0
+ .long 1072037888
+ .long 0
+ .long 1072034816
+ .long 0
+ .long 1072031744
+ .long 0
+ .long 1072029696
+ .long 0
+ .long 1072026624
+ .long 0
+ .long 1072024576
+ .long 0
+ .long 1072021504
+ .long 0
+ .long 1072019456
+ .long 0
+ .long 1072016384
+ .long 0
+ .long 1072014336
+ .long 0
+ .long 1072011264
+ .long 0
+ .long 1072009216
+ .long 0
+ .long 1072006144
+ .long 0
+ .long 1072004096
+ .long 0
+ .long 1072002048
+ .long 0
+ .long 1071998976
+ .long 0
+ .long 1071996928
+ .long 0
+ .long 1071993856
+ .long 0
+ .long 1071991808
+ .long 0
+ .long 1071989760
+ .long 0
+ .long 1071986688
+ .long 0
+ .long 1071984640
+ .long 0
+ .long 1071982592
+ .long 0
+ .long 1071979520
+ .long 0
+ .long 1071977472
+ .long 0
+ .long 1071975424
+ .long 0
+ .long 1071972352
+ .long 0
+ .long 1071970304
+ .long 0
+ .long 1071968256
+ .long 0
+ .long 1071966208
+ .long 0
+ .long 1071964160
+ .long 0
+ .long 1071961088
+ .long 0
+ .long 1071959040
+ .long 0
+ .long 1071956992
+ .long 0
+ .long 1071954944
+ .long 0
+ .long 1071952896
+ .long 0
+ .long 1071949824
+ .long 0
+ .long 1071947776
+ .long 0
+ .long 1071945728
+ .long 0
+ .long 1071943680
+ .long 0
+ .long 1071941632
+ .long 0
+ .long 1071939584
+ .long 0
+ .long 1071937536
+ .long 0
+ .long 1071935488
+ .long 0
+ .long 1071933440
+ .long 0
+ .long 1071930368
+ .long 0
+ .long 1071928320
+ .long 0
+ .long 1071926272
+ .long 0
+ .long 1071924224
+ .long 0
+ .long 1071922176
+ .long 0
+ .long 1071920128
+ .long 0
+ .long 1071918080
+ .long 0
+ .long 1071916032
+ .long 0
+ .long 1071913984
+ .long 0
+ .long 1071911936
+ .long 0
+ .long 1071909888
+ .long 0
+ .long 1071907840
+ .long 0
+ .long 1071905792
+ .long 0
+ .long 1071903744
+ .long 0
+ .long 1071901696
+ .long 0
+ .long 1071900672
+ .long 0
+ .long 1071898624
+ .long 0
+ .long 1071896576
+ .long 0
+ .long 1071894528
+ .long 0
+ .long 1071892480
+ .long 0
+ .long 1071890432
+ .long 0
+ .long 1071888384
+ .long 0
+ .long 1071886336
+ .long 0
+ .long 1071884288
+ .long 0
+ .long 1071883264
+ .long 0
+ .long 1071881216
+ .long 0
+ .long 1071879168
+ .long 0
+ .long 1071877120
+ .long 0
+ .long 1071875072
+ .long 0
+ .long 1071873024
+ .long 0
+ .long 1071872000
+ .long 0
+ .long 1071869952
+ .long 0
+ .long 1071867904
+ .long 0
+ .long 1071865856
+ .long 0
+ .long 1071864832
+ .long 0
+ .long 1071862784
+ .long 0
+ .long 1071860736
+ .long 0
+ .long 1071858688
+ .long 0
+ .long 1071856640
+ .long 0
+ .long 1071855616
+ .long 0
+ .long 1071853568
+ .long 0
+ .long 1071851520
+ .long 0
+ .long 1071850496
+ .long 0
+ .long 1071848448
+ .long 0
+ .long 1071846400
+ .long 0
+ .long 1071844352
+ .long 0
+ .long 1071843328
+ .long 0
+ .long 1071841280
+ .long 0
+ .long 1071839232
+ .long 0
+ .long 1071838208
+ .long 0
+ .long 1071836160
+ .long 0
+ .long 1071834112
+ .long 0
+ .long 1071833088
+ .long 0
+ .long 1071831040
+ .long 0
+ .long 1071830016
+ .long 0
+ .long 1071827968
+ .long 0
+ .long 1071825920
+ .long 0
+ .long 1071824896
+ .long 0
+ .long 1071822848
+ .long 0
+ .long 1071821824
+ .long 0
+ .long 1071819776
+ .long 0
+ .long 1071817728
+ .long 0
+ .long 1071816704
+ .long 0
+ .long 1071814656
+ .long 0
+ .long 1071813632
+ .long 0
+ .long 1071811584
+ .long 0
+ .long 1071810560
+ .long 0
+ .long 1071808512
+ .long 0
+ .long 1071806464
+ .long 0
+ .long 1071805440
+ .long 0
+ .long 1071803392
+ .long 0
+ .long 1071802368
+ .long 0
+ .long 1071800320
+ .long 0
+ .long 1071799296
+ .long 0
+ .long 1071797248
+ .long 0
+ .long 1071796224
+ .long 0
+ .long 1071794176
+ .long 0
+ .long 1071793152
+ .long 0
+ .long 1071791104
+ .long 0
+ .long 1071790080
+ .long 0
+ .long 1071788032
+ .long 0
+ .long 1071787008
+ .long 0
+ .long 1071784960
+ .long 0
+ .long 1071783936
+ .long 0
+ .long 1071782912
+ .long 0
+ .long 1071780864
+ .long 0
+ .long 1071779840
+ .long 0
+ .long 1071777792
+ .long 0
+ .long 1071776768
+ .long 0
+ .long 1071774720
+ .long 0
+ .long 1071773696
+ .long 0
+ .long 1071772672
+ .long 0
+ .long 1071770624
+ .long 0
+ .long 1071769600
+ .long 0
+ .long 1071767552
+ .long 0
+ .long 1071766528
+ .long 0
+ .long 1071765504
+ .long 0
+ .long 1071763456
+ .long 0
+ .long 1071762432
+ .long 0
+ .long 1071760384
+ .long 0
+ .long 1071759360
+ .long 0
+ .long 1071758336
+ .long 0
+ .long 1071756288
+ .long 0
+ .long 1071755264
+ .long 0
+ .long 1071754240
+ .long 0
+ .long 1071752192
+ .long 0
+ .long 1071751168
+ .long 0
+ .long 1071750144
+ .long 0
+ .long 1071748096
+ .long 0
+ .long 1071747072
+ .long 0
+ .long 1071746048
+ .long 0
+ .long 1071744000
+ .long 0
+ .long 1071742976
+ .long 0
+ .long 1071741952
+ .long 0
+ .long 1071739904
+ .long 0
+ .long 1071738880
+ .long 0
+ .long 1071737856
+ .long 0
+ .long 1071736832
+ .long 0
+ .long 1071734784
+ .long 0
+ .long 1071733760
+ .long 0
+ .long 1071732736
+ .long 0
+ .long 1071730688
+ .long 0
+ .long 1071729664
+ .long 0
+ .long 1071728640
+ .long 0
+ .long 1071727616
+ .long 0
+ .long 1071725568
+ .long 0
+ .long 1071724544
+ .long 0
+ .long 1071723520
+ .long 0
+ .long 1071722496
+ .long 0
+ .long 1071720448
+ .long 0
+ .long 1071719424
+ .long 0
+ .long 1071718400
+ .long 0
+ .long 1071717376
+ .long 0
+ .long 1071715328
+ .long 0
+ .long 1071714304
+ .long 0
+ .long 1071713280
+ .long 0
+ .long 1071712256
+ .long 0
+ .long 1071711232
+ .long 0
+ .long 1071709184
+ .long 0
+ .long 1071708160
+ .long 0
+ .long 1071707136
+ .long 0
+ .long 1071706112
+ .long 0
+ .long 1071705088
+ .long 0
+ .long 1071704064
+ .long 0
+ .long 1071702016
+ .long 0
+ .long 1071700992
+ .long 0
+ .long 1071699968
+ .long 0
+ .long 1071698944
+ .long 0
+ .long 1071697920
+ .long 0
+ .long 1071696896
+ .long 0
+ .long 1071694848
+ .long 0
+ .long 1071693824
+ .long 0
+ .long 1071692800
+ .long 0
+ .long 1071691776
+ .long 0
+ .long 1071690752
+ .long 0
+ .long 1071689728
+ .long 0
+ .long 1071688704
+ .long 0
+ .long 1071686656
+ .long 0
+ .long 1071685632
+ .long 0
+ .long 1071684608
+ .long 0
+ .long 1071683584
+ .long 0
+ .long 1071682560
+ .long 0
+ .long 1071681536
+ .long 0
+ .long 1071680512
+ .long 0
+ .long 1071679488
+ .long 0
+ .long 1071677440
+ .long 0
+ .long 1071676416
+ .long 0
+ .long 1071675392
+ .long 0
+ .long 1071674368
+ .long 0
+ .long 1071673344
+ .long 0
+ .long 1071672320
+ .long 0
+ .long 1071671296
+ .long 0
+ .long 1071670272
+ .long 0
+ .long 1071669248
+ .long 0
+ .long 1071668224
+ .long 0
+ .long 1071667200
+ .long 0
+ .long 1071666176
+ .long 0
+ .long 1071665152
+ .long 0
+ .long 1071663104
+ .long 0
+ .long 1071662080
+ .long 0
+ .long 1071661056
+ .long 0
+ .long 1071660032
+ .long 0
+ .long 1071659008
+ .long 0
+ .long 1071657984
+ .long 0
+ .long 1071656960
+ .long 0
+ .long 1071655936
+ .long 0
+ .long 1071654912
+ .long 0
+ .long 1071653888
+ .long 0
+ .long 1071652864
+ .long 0
+ .long 1071651840
+ .long 0
+ .long 1071650816
+ .long 0
+ .long 1071649792
+ .long 0
+ .long 1071648768
+ .long 0
+ .long 1071647744
+ .long 0
+ .long 1071646720
+ .long 0
+ .long 1071645696
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1101004800
+ .long 1073741824
+ .long 1095761920
+ .long 256
+ .long 1118830592
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1017118720
+ .long 1413754136
+ .long 1073291771
+ .long 856972295
+ .long 1016178214
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1071644672
+ .long 1476395008
+ .long 1069897045
+ .long 1768958041
+ .long 3189069141
+ .long 805306368
+ .long 1068708659
+ .long 3580333578
+ .long 1040816593
+ .long 3067382784
+ .long 1067899757
+ .long 3397590151
+ .long 1067392113
+ .long 2939529726
+ .long 1066854585
+ .long 1423429166
+ .long 1066517752
+ .long 1775218934
+ .long 1066178574
+ .long 1185392460
+ .long 1065859647
+ .long 289998670
+ .long 1065577550
+ .long 3179807072
+ .long 1065648121
+ .long 3781007284
+ .long 1061576176
+ .long 2482106687
+ .long 1067019199
+ .long 763519713
+ .long 3214591591
+ .long 3695107454
+ .long 1067530646
+ .long 0
+ .long 1073741824
+ .long 1124791109
+ .long 1006764147
+ .long 1476395008
+ .long 1069897045
+ .long 1953913876
+ .long 3189069141
+ .long 805306368
+ .long 1067660083
+ .long 165110192
+ .long 1039768033
+ .long 3067304082
+ .long 1065802605
+ .long 3404727379
+ .long 1064246385
+ .long 2737480376
+ .long 1062660281
+ .long 933797922
+ .long 1061274873
+ .long 1475716730
+ .long 1059887095
+ .long 1511619763
+ .long 1058519827
+ .long 556024211
+ .long 1057187555
+ .long 3482101045
+ .long 1056217350
+ .long 1174622859
+ .long 1050762633
+ .long 899668651
+ .long 1055506366
+ .long 1081094694
+ .long 3202035365
+ .long 2559814773
+ .long 1053906576
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 3218341888
+ .long 0
+ .long 1070694400
+ .long 0
+ .long 3218046976
+ .long 0
+ .long 1070391296
+ .long 0
+ .long 3217739776
+ .type _vmldASinHATab,@object
+ .size _vmldASinHATab,4504
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * *
+ * * Compute log(x+sqrt(x*x+1)) using RSQRT14/RSQRT28 for starting the
+ * * square root approximation, and small table lookups for log (mapping to
+ * * AVX3 permute instructions).
+ * *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_asinh8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_asinh8
+
+__svml_asinh8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovaps %zmm0, %zmm3
+
+/* x^2 */
+ vmulpd {rn-sae}, %zmm3, %zmm3, %zmm14
+ vmovups 256+__svml_dasinh_data_internal_avx512(%rip), %zmm9
+
+/* polynomial computation for small inputs */
+ vmovups 576+__svml_dasinh_data_internal_avx512(%rip), %zmm10
+ vmovups 640+__svml_dasinh_data_internal_avx512(%rip), %zmm11
+
+/* not a very small input ? */
+ vmovups 384+__svml_dasinh_data_internal_avx512(%rip), %zmm0
+
+/* A=max(x^2, 1); */
+ vmaxpd {sae}, %zmm14, %zmm9, %zmm4
+
+/* B=min(x^2, 1); */
+ vminpd {sae}, %zmm14, %zmm9, %zmm5
+ vfmadd231pd {rn-sae}, %zmm14, %zmm10, %zmm11
+
+/* 1+x^2 */
+ vaddpd {rn-sae}, %zmm9, %zmm14, %zmm8
+
+/* |input| */
+ vandpd 320+__svml_dasinh_data_internal_avx512(%rip), %zmm3, %zmm1
+ vrsqrt14pd %zmm8, %zmm6
+ vcmppd $21, {sae}, %zmm0, %zmm1, %k2
+
+/* B_high */
+ vsubpd {rn-sae}, %zmm4, %zmm8, %zmm7
+
+/* sign bit */
+ vxorpd %zmm3, %zmm1, %zmm2
+ vmulpd {rn-sae}, %zmm14, %zmm11, %zmm4
+
+/* B_low */
+ vsubpd {rn-sae}, %zmm7, %zmm5, %zmm13
+ vmovups 832+__svml_dasinh_data_internal_avx512(%rip), %zmm5
+ vmovups 896+__svml_dasinh_data_internal_avx512(%rip), %zmm7
+
+/* polynomial computation for small inputs */
+ vfmadd213pd {rn-sae}, %zmm1, %zmm1, %zmm4
+
+/* (x^2)_low */
+ vmovaps %zmm3, %zmm15
+ vfmsub213pd {rn-sae}, %zmm14, %zmm3, %zmm15
+
+/* Sh ~sqrt(1+x^2) */
+ vmulpd {rn-sae}, %zmm6, %zmm8, %zmm14
+
+/* Yl = (x^2)_low + B_low */
+ vaddpd {rn-sae}, %zmm15, %zmm13, %zmm13
+
+/* very large inputs ? */
+ vmovups 448+__svml_dasinh_data_internal_avx512(%rip), %zmm15
+
+/* (Yh*R0)_low */
+ vfmsub213pd {rn-sae}, %zmm14, %zmm6, %zmm8
+ vcmppd $21, {sae}, %zmm15, %zmm1, %k1
+
+/* Sl = (Yh*R0)_low+(R0*Yl) */
+ vfmadd213pd {rn-sae}, %zmm8, %zmm6, %zmm13
+ vmovups 512+__svml_dasinh_data_internal_avx512(%rip), %zmm8
+
+/* rel. error term: Eh=1-Sh*R0 */
+ vmovaps %zmm9, %zmm12
+ vfnmadd231pd {rn-sae}, %zmm14, %zmm6, %zmm12
+ vcmppd $22, {sae}, %zmm8, %zmm1, %k0
+
+/* rel. error term: Eh=(1-Sh*R0)-Sl*R0 */
+ vfnmadd231pd {rn-sae}, %zmm13, %zmm6, %zmm12
+
+/*
+ * sqrt(1+x^2) ~ Sh + Sl + Sh*Eh*poly_s
+ * poly_s = c1+c2*Eh+c3*Eh^2
+ */
+ vmovups 704+__svml_dasinh_data_internal_avx512(%rip), %zmm6
+ vmovups 768+__svml_dasinh_data_internal_avx512(%rip), %zmm8
+
+/* Sh*Eh */
+ vmulpd {rn-sae}, %zmm12, %zmm14, %zmm11
+ vfmadd231pd {rn-sae}, %zmm12, %zmm6, %zmm8
+
+/* Sh+x */
+ vaddpd {rn-sae}, %zmm1, %zmm14, %zmm6
+ kmovw %k0, %edx
+ vfmadd213pd {rn-sae}, %zmm5, %zmm12, %zmm8
+ vfmadd213pd {rn-sae}, %zmm7, %zmm12, %zmm8
+
+/* Xh */
+ vsubpd {rn-sae}, %zmm14, %zmm6, %zmm12
+
+/* Sl + Sh*Eh*poly_s */
+ vfmadd213pd {rn-sae}, %zmm13, %zmm8, %zmm11
+
+/* fixup for very large inputs */
+ vmovups 1216+__svml_dasinh_data_internal_avx512(%rip), %zmm8
+
+/* Xl */
+ vsubpd {rn-sae}, %zmm12, %zmm1, %zmm12
+
+/* Xin0+Sl+Sh*Eh*poly_s ~ x+sqrt(1+x^2) */
+ vaddpd {rn-sae}, %zmm11, %zmm6, %zmm10
+
+/* Sl_high */
+ vsubpd {rn-sae}, %zmm6, %zmm10, %zmm5
+ vmulpd {rn-sae}, %zmm8, %zmm1, %zmm10{%k1}
+
+/* Table lookups */
+ vmovups __svml_dasinh_data_internal_avx512(%rip), %zmm6
+
+/* Sl_l */
+ vsubpd {rn-sae}, %zmm5, %zmm11, %zmm7
+ vrcp14pd %zmm10, %zmm13
+
+/* Xin_low */
+ vaddpd {rn-sae}, %zmm12, %zmm7, %zmm14
+ vmovups 128+__svml_dasinh_data_internal_avx512(%rip), %zmm7
+ vmovups 1536+__svml_dasinh_data_internal_avx512(%rip), %zmm12
+
+/* round reciprocal to 1+4b mantissas */
+ vpaddq 1088+__svml_dasinh_data_internal_avx512(%rip), %zmm13, %zmm11
+
+/* fixup for very large inputs */
+ vxorpd %zmm14, %zmm14, %zmm14{%k1}
+ vmovups 1600+__svml_dasinh_data_internal_avx512(%rip), %zmm13
+ vandpd 1152+__svml_dasinh_data_internal_avx512(%rip), %zmm11, %zmm15
+ vmovups 1472+__svml_dasinh_data_internal_avx512(%rip), %zmm11
+
+/* Prepare table index */
+ vpsrlq $48, %zmm15, %zmm5
+
+/* reduced argument for log(): (Rcp*Xin-1)+Rcp*Xin_low */
+ vfmsub231pd {rn-sae}, %zmm15, %zmm10, %zmm9
+
+/* exponents */
+ vgetexppd {sae}, %zmm15, %zmm8
+ vmovups 1280+__svml_dasinh_data_internal_avx512(%rip), %zmm10
+ vpermt2pd 64+__svml_dasinh_data_internal_avx512(%rip), %zmm5, %zmm6
+ vpermt2pd 192+__svml_dasinh_data_internal_avx512(%rip), %zmm5, %zmm7
+ vsubpd {rn-sae}, %zmm10, %zmm8, %zmm8{%k1}
+ vfmadd231pd {rn-sae}, %zmm15, %zmm14, %zmm9
+
+/* polynomials */
+ vmovups 1344+__svml_dasinh_data_internal_avx512(%rip), %zmm10
+ vmovups 1408+__svml_dasinh_data_internal_avx512(%rip), %zmm5
+ vmovups 1664+__svml_dasinh_data_internal_avx512(%rip), %zmm14
+
+/* -K*L2H + Th */
+ vmovups 1920+__svml_dasinh_data_internal_avx512(%rip), %zmm15
+ vfmadd231pd {rn-sae}, %zmm9, %zmm10, %zmm5
+
+/* -K*L2L + Tl */
+ vmovups 1984+__svml_dasinh_data_internal_avx512(%rip), %zmm10
+ vfnmadd231pd {rn-sae}, %zmm8, %zmm15, %zmm6
+ vfmadd213pd {rn-sae}, %zmm11, %zmm9, %zmm5
+ vfnmadd213pd {rn-sae}, %zmm7, %zmm10, %zmm8
+ vmovups 1728+__svml_dasinh_data_internal_avx512(%rip), %zmm7
+ vmovups 1856+__svml_dasinh_data_internal_avx512(%rip), %zmm10
+
+/* R^2 */
+ vmulpd {rn-sae}, %zmm9, %zmm9, %zmm11
+ vfmadd213pd {rn-sae}, %zmm12, %zmm9, %zmm5
+ vfmadd213pd {rn-sae}, %zmm13, %zmm9, %zmm5
+ vfmadd213pd {rn-sae}, %zmm14, %zmm9, %zmm5
+ vfmadd213pd {rn-sae}, %zmm7, %zmm9, %zmm5
+ vmovups 1792+__svml_dasinh_data_internal_avx512(%rip), %zmm7
+ vfmadd213pd {rn-sae}, %zmm7, %zmm9, %zmm5
+ vfmadd213pd {rn-sae}, %zmm10, %zmm9, %zmm5
+
+/* Tl + R^2*Poly */
+ vfmadd213pd {rn-sae}, %zmm8, %zmm11, %zmm5
+
+/* R+Tl + R^2*Poly */
+ vaddpd {rn-sae}, %zmm9, %zmm5, %zmm9
+ vaddpd {rn-sae}, %zmm9, %zmm6, %zmm4{%k2}
+ vxorpd %zmm2, %zmm4, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm3, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dasinh_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_asinh8,@function
+ .size __svml_asinh8,.-__svml_asinh8
+..LN__svml_asinh8.0:
+
+.L_2__routine_start___svml_dasinh_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dasinh_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ movzwl 6(%rdi), %eax
+ andl $32752, %eax
+ movq (%rdi), %rdx
+ cmpl $32752, %eax
+ jne .LBL_2_5
+
+
+ testl $1048575, 4(%rdi)
+ jne .LBL_2_4
+
+
+ cmpl $0, (%rdi)
+ je .LBL_2_5
+
+.LBL_2_4:
+
+ movsd (%rdi), %xmm0
+ xorl %eax, %eax
+ mulsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_5:
+
+ movq %rdx, (%rsi)
+ xorl %eax, %eax
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dasinh_cout_rare_internal,@function
+ .size __svml_dasinh_cout_rare_internal,.-__svml_dasinh_cout_rare_internal
+..LN__svml_dasinh_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dasinh_data_internal_avx512:
+ .long 0
+ .long 0
+ .long 3222405120
+ .long 3215919664
+ .long 1848311808
+ .long 3216910087
+ .long 1890025472
+ .long 3217424176
+ .long 3348791296
+ .long 3217854455
+ .long 2880159744
+ .long 3218171740
+ .long 3256631296
+ .long 3218366859
+ .long 4139499520
+ .long 3218553303
+ .long 3971973120
+ .long 3218731811
+ .long 3348791296
+ .long 3218903031
+ .long 1605304320
+ .long 3219067535
+ .long 3827638272
+ .long 3219177074
+ .long 1584414720
+ .long 3219253343
+ .long 860823552
+ .long 3219326935
+ .long 3896934400
+ .long 3219398031
+ .long 643547136
+ .long 3219466797
+ .long 0
+ .long 0
+ .long 3496399314
+ .long 1028893491
+ .long 720371772
+ .long 1026176044
+ .long 1944193543
+ .long 3175338952
+ .long 634920691
+ .long 3175752108
+ .long 1664625295
+ .long 1029304828
+ .long 192624563
+ .long 3177103997
+ .long 3796653051
+ .long 3176138396
+ .long 3062724207
+ .long 3176680434
+ .long 634920691
+ .long 3176800684
+ .long 1913570380
+ .long 3174806221
+ .long 825194088
+ .long 3176465773
+ .long 2335489660
+ .long 3172599741
+ .long 2497625109
+ .long 1029604288
+ .long 914782743
+ .long 1029350199
+ .long 3743595607
+ .long 3175525305
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 0
+ .long 1064304640
+ .long 0
+ .long 1064304640
+ .long 0
+ .long 1064304640
+ .long 0
+ .long 1064304640
+ .long 0
+ .long 1064304640
+ .long 0
+ .long 1064304640
+ .long 0
+ .long 1064304640
+ .long 0
+ .long 1064304640
+ .long 0
+ .long 1608515584
+ .long 0
+ .long 1608515584
+ .long 0
+ .long 1608515584
+ .long 0
+ .long 1608515584
+ .long 0
+ .long 1608515584
+ .long 0
+ .long 1608515584
+ .long 0
+ .long 1608515584
+ .long 0
+ .long 1608515584
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 246350567
+ .long 1068708642
+ .long 246350567
+ .long 1068708642
+ .long 246350567
+ .long 1068708642
+ .long 246350567
+ .long 1068708642
+ .long 246350567
+ .long 1068708642
+ .long 246350567
+ .long 1068708642
+ .long 246350567
+ .long 1068708642
+ .long 246350567
+ .long 1068708642
+ .long 1431445118
+ .long 3217380693
+ .long 1431445118
+ .long 3217380693
+ .long 1431445118
+ .long 3217380693
+ .long 1431445118
+ .long 3217380693
+ .long 1431445118
+ .long 3217380693
+ .long 1431445118
+ .long 3217380693
+ .long 1431445118
+ .long 3217380693
+ .long 1431445118
+ .long 3217380693
+ .long 26490386
+ .long 1070694400
+ .long 26490386
+ .long 1070694400
+ .long 26490386
+ .long 1070694400
+ .long 26490386
+ .long 1070694400
+ .long 26490386
+ .long 1070694400
+ .long 26490386
+ .long 1070694400
+ .long 26490386
+ .long 1070694400
+ .long 26490386
+ .long 1070694400
+ .long 20643840
+ .long 1070858240
+ .long 20643840
+ .long 1070858240
+ .long 20643840
+ .long 1070858240
+ .long 20643840
+ .long 1070858240
+ .long 20643840
+ .long 1070858240
+ .long 20643840
+ .long 1070858240
+ .long 20643840
+ .long 1070858240
+ .long 20643840
+ .long 1070858240
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071120384
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1074790400
+ .long 0
+ .long 1074790400
+ .long 0
+ .long 1074790400
+ .long 0
+ .long 1074790400
+ .long 0
+ .long 1074790400
+ .long 0
+ .long 1074790400
+ .long 0
+ .long 1074790400
+ .long 0
+ .long 1074790400
+ .long 1075921768
+ .long 3216615856
+ .long 1075921768
+ .long 3216615856
+ .long 1075921768
+ .long 3216615856
+ .long 1075921768
+ .long 3216615856
+ .long 1075921768
+ .long 3216615856
+ .long 1075921768
+ .long 3216615856
+ .long 1075921768
+ .long 3216615856
+ .long 1075921768
+ .long 3216615856
+ .long 1847891832
+ .long 1069318246
+ .long 1847891832
+ .long 1069318246
+ .long 1847891832
+ .long 1069318246
+ .long 1847891832
+ .long 1069318246
+ .long 1847891832
+ .long 1069318246
+ .long 1847891832
+ .long 1069318246
+ .long 1847891832
+ .long 1069318246
+ .long 1847891832
+ .long 1069318246
+ .long 2315602889
+ .long 3217031163
+ .long 2315602889
+ .long 3217031163
+ .long 2315602889
+ .long 3217031163
+ .long 2315602889
+ .long 3217031163
+ .long 2315602889
+ .long 3217031163
+ .long 2315602889
+ .long 3217031163
+ .long 2315602889
+ .long 3217031163
+ .long 2315602889
+ .long 3217031163
+ .long 4145174257
+ .long 1069697314
+ .long 4145174257
+ .long 1069697314
+ .long 4145174257
+ .long 1069697314
+ .long 4145174257
+ .long 1069697314
+ .long 4145174257
+ .long 1069697314
+ .long 4145174257
+ .long 1069697314
+ .long 4145174257
+ .long 1069697314
+ .long 4145174257
+ .long 1069697314
+ .long 1436264246
+ .long 3217380693
+ .long 1436264246
+ .long 3217380693
+ .long 1436264246
+ .long 3217380693
+ .long 1436264246
+ .long 3217380693
+ .long 1436264246
+ .long 3217380693
+ .long 1436264246
+ .long 3217380693
+ .long 1436264246
+ .long 3217380693
+ .long 1436264246
+ .long 3217380693
+ .long 2579396527
+ .long 1070176665
+ .long 2579396527
+ .long 1070176665
+ .long 2579396527
+ .long 1070176665
+ .long 2579396527
+ .long 1070176665
+ .long 2579396527
+ .long 1070176665
+ .long 2579396527
+ .long 1070176665
+ .long 2579396527
+ .long 1070176665
+ .long 2579396527
+ .long 1070176665
+ .long 4294966373
+ .long 3218079743
+ .long 4294966373
+ .long 3218079743
+ .long 4294966373
+ .long 3218079743
+ .long 4294966373
+ .long 3218079743
+ .long 4294966373
+ .long 3218079743
+ .long 4294966373
+ .long 3218079743
+ .long 4294966373
+ .long 3218079743
+ .long 4294966373
+ .long 3218079743
+ .long 1431655617
+ .long 1070945621
+ .long 1431655617
+ .long 1070945621
+ .long 1431655617
+ .long 1070945621
+ .long 1431655617
+ .long 1070945621
+ .long 1431655617
+ .long 1070945621
+ .long 1431655617
+ .long 1070945621
+ .long 1431655617
+ .long 1070945621
+ .long 1431655617
+ .long 1070945621
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .type __svml_dasinh_data_internal_avx512,@object
+ .size __svml_dasinh_data_internal_avx512,2048
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * *
+ * * Compute log(x+sqrt(x*x+1)) using RSQRT14/RSQRT28 for starting the
+ * * square root approximation, and small table lookups for log (mapping to
+ * * AVX3 permute instructions).
+ * *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_asinhf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_asinhf16
+
+__svml_asinhf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovaps %zmm0, %zmm10
+
+/* x^2 */
+ vmulps {rn-sae}, %zmm10, %zmm10, %zmm0
+ vmovups 256+__svml_sasinh_data_internal_avx512(%rip), %zmm2
+
+/* polynomial computation for small inputs */
+ vmovups 576+__svml_sasinh_data_internal_avx512(%rip), %zmm1
+
+/* not a very small input ? */
+ vmovups 384+__svml_sasinh_data_internal_avx512(%rip), %zmm11
+
+/* 1+x^2 */
+ vaddps {rn-sae}, %zmm2, %zmm0, %zmm7
+
+/* |input| */
+ vandps 320+__svml_sasinh_data_internal_avx512(%rip), %zmm10, %zmm12
+
+/* A=max(x^2, 1); */
+ vmaxps {sae}, %zmm0, %zmm2, %zmm14
+ vrsqrt14ps %zmm7, %zmm8
+
+/* B=min(x^2, 1); */
+ vminps {sae}, %zmm0, %zmm2, %zmm15
+ vcmpps $21, {sae}, %zmm11, %zmm12, %k2
+
+/* B_high */
+ vsubps {rn-sae}, %zmm14, %zmm7, %zmm9
+
+/* sign bit */
+ vxorps %zmm10, %zmm12, %zmm13
+
+/* Sh ~sqrt(1+x^2) */
+ vmulps {rn-sae}, %zmm8, %zmm7, %zmm6
+ vmovups 512+__svml_sasinh_data_internal_avx512(%rip), %zmm14
+
+/* B_low */
+ vsubps {rn-sae}, %zmm9, %zmm15, %zmm3
+
+/* Sh+x */
+ vaddps {rn-sae}, %zmm12, %zmm6, %zmm15
+
+/* (Yh*R0)_low */
+ vfmsub213ps {rn-sae}, %zmm6, %zmm8, %zmm7
+ vmulps {rn-sae}, %zmm1, %zmm0, %zmm9
+ vcmpps $22, {sae}, %zmm14, %zmm12, %k0
+ vmovups 704+__svml_sasinh_data_internal_avx512(%rip), %zmm1
+
+/* polynomial computation for small inputs */
+ vfmadd213ps {rn-sae}, %zmm12, %zmm12, %zmm9
+ kmovw %k0, %edx
+
+/* (x^2)_low */
+ vmovaps %zmm10, %zmm4
+ vfmsub213ps {rn-sae}, %zmm0, %zmm10, %zmm4
+
+/* Yl = (x^2)_low + B_low */
+ vaddps {rn-sae}, %zmm4, %zmm3, %zmm5
+
+/* rel. error term: Eh=1-Sh*R0 */
+ vmovaps %zmm2, %zmm0
+ vfnmadd231ps {rn-sae}, %zmm6, %zmm8, %zmm0
+
+/* Sl = (Yh*R0)_low+(R0*Yl) */
+ vfmadd213ps {rn-sae}, %zmm7, %zmm8, %zmm5
+
+/* very large inputs ? */
+ vmovups 448+__svml_sasinh_data_internal_avx512(%rip), %zmm7
+
+/* rel. error term: Eh=(1-Sh*R0)-Sl*R0 */
+ vfnmadd231ps {rn-sae}, %zmm5, %zmm8, %zmm0
+
+/* sqrt(1+x^2) ~ Sh + Sl + Sh*Eh*poly_s */
+ vmovups 640+__svml_sasinh_data_internal_avx512(%rip), %zmm8
+ vcmpps $21, {sae}, %zmm7, %zmm12, %k1
+
+/* Sh*Eh */
+ vmulps {rn-sae}, %zmm0, %zmm6, %zmm4
+ vfmadd231ps {rn-sae}, %zmm0, %zmm8, %zmm1
+
+/* Sl + Sh*Eh*poly_s */
+ vfmadd213ps {rn-sae}, %zmm5, %zmm1, %zmm4
+
+/* Xh */
+ vsubps {rn-sae}, %zmm6, %zmm15, %zmm5
+
+/* fixup for very large inputs */
+ vmovups 896+__svml_sasinh_data_internal_avx512(%rip), %zmm6
+
+/* Xin0+Sl+Sh*Eh*poly_s ~ x+sqrt(1+x^2) */
+ vaddps {rn-sae}, %zmm4, %zmm15, %zmm3
+
+/* Xl */
+ vsubps {rn-sae}, %zmm5, %zmm12, %zmm5
+
+/* Sl_high */
+ vsubps {rn-sae}, %zmm15, %zmm3, %zmm0
+ vmulps {rn-sae}, %zmm6, %zmm12, %zmm3{%k1}
+
+/* -K*L2H + Th */
+ vmovups 1216+__svml_sasinh_data_internal_avx512(%rip), %zmm15
+
+/* Sl_l */
+ vsubps {rn-sae}, %zmm0, %zmm4, %zmm1
+ vrcp14ps %zmm3, %zmm6
+
+/* Table lookups */
+ vmovups __svml_sasinh_data_internal_avx512(%rip), %zmm0
+
+/* Xin_low */
+ vaddps {rn-sae}, %zmm5, %zmm1, %zmm7
+
+/* round reciprocal to 1+4b mantissas */
+ vpaddd 768+__svml_sasinh_data_internal_avx512(%rip), %zmm6, %zmm4
+ vmovups 1152+__svml_sasinh_data_internal_avx512(%rip), %zmm5
+ vandps 832+__svml_sasinh_data_internal_avx512(%rip), %zmm4, %zmm8
+
+/* fixup for very large inputs */
+ vxorps %zmm7, %zmm7, %zmm7{%k1}
+
+/* polynomial */
+ vmovups 1024+__svml_sasinh_data_internal_avx512(%rip), %zmm4
+
+/* reduced argument for log(): (Rcp*Xin-1)+Rcp*Xin_low */
+ vfmsub231ps {rn-sae}, %zmm8, %zmm3, %zmm2
+ vmovups 960+__svml_sasinh_data_internal_avx512(%rip), %zmm3
+
+/* exponents */
+ vgetexpps {sae}, %zmm8, %zmm1
+
+/* Prepare table index */
+ vpsrld $18, %zmm8, %zmm14
+ vfmadd231ps {rn-sae}, %zmm8, %zmm7, %zmm2
+ vmovups 1088+__svml_sasinh_data_internal_avx512(%rip), %zmm7
+ vsubps {rn-sae}, %zmm3, %zmm1, %zmm1{%k1}
+ vpermt2ps 64+__svml_sasinh_data_internal_avx512(%rip), %zmm14, %zmm0
+ vmovups 128+__svml_sasinh_data_internal_avx512(%rip), %zmm3
+ vfmadd231ps {rn-sae}, %zmm2, %zmm4, %zmm7
+ vfnmadd231ps {rn-sae}, %zmm1, %zmm15, %zmm0
+
+/* R^2 */
+ vmulps {rn-sae}, %zmm2, %zmm2, %zmm6
+ vfmadd213ps {rn-sae}, %zmm5, %zmm2, %zmm7
+ vpermt2ps 192+__svml_sasinh_data_internal_avx512(%rip), %zmm14, %zmm3
+
+/* -K*L2L + Tl */
+ vmovups 1280+__svml_sasinh_data_internal_avx512(%rip), %zmm14
+ vfnmadd213ps {rn-sae}, %zmm3, %zmm14, %zmm1
+
+/* Tl + R^2*Poly */
+ vfmadd213ps {rn-sae}, %zmm1, %zmm6, %zmm7
+
+/* R+Tl + R^2*Poly */
+ vaddps {rn-sae}, %zmm2, %zmm7, %zmm2
+ vaddps {rn-sae}, %zmm2, %zmm0, %zmm9{%k2}
+ vxorps %zmm13, %zmm9, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm10, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_sasinh_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_asinhf16,@function
+ .size __svml_asinhf16,.-__svml_asinhf16
+..LN__svml_asinhf16.0:
+
+.L_2__routine_start___svml_sasinh_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_sasinh_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ movl (%rdi), %eax
+ movl %eax, -8(%rsp)
+ andl $2139095040, %eax
+ cmpl $2139095040, %eax
+ jne .LBL_2_4
+
+
+ testl $8388607, -8(%rsp)
+ je .LBL_2_4
+
+
+ movss -8(%rsp), %xmm0
+ xorl %eax, %eax
+ mulss -8(%rsp), %xmm0
+ movss %xmm0, (%rsi)
+ ret
+
+.LBL_2_4:
+
+ movl -8(%rsp), %eax
+ movl %eax, (%rsi)
+ xorl %eax, %eax
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_sasinh_cout_rare_internal,@function
+ .size __svml_sasinh_cout_rare_internal,.-__svml_sasinh_cout_rare_internal
+..LN__svml_sasinh_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_sasinh_data_internal_avx512:
+ .long 0
+ .long 3170631680
+ .long 3178790912
+ .long 3182919680
+ .long 3186704384
+ .long 3189022720
+ .long 3190816768
+ .long 3192561664
+ .long 3194257408
+ .long 3195912192
+ .long 3196796928
+ .long 3197583360
+ .long 3198357504
+ .long 3199111168
+ .long 3199848448
+ .long 3200569344
+ .long 3201277952
+ .long 3201966080
+ .long 3202646016
+ .long 3203309568
+ .long 3203960832
+ .long 3204524032
+ .long 3204837376
+ .long 3205146624
+ .long 3205447680
+ .long 3205744640
+ .long 3206037504
+ .long 3206324224
+ .long 3206606848
+ .long 3206883328
+ .long 3207155712
+ .long 3207424000
+ .long 2147483648
+ .long 3072770974
+ .long 943319038
+ .long 3075640037
+ .long 930648533
+ .long 3089726480
+ .long 936349528
+ .long 944943494
+ .long 897812054
+ .long 3087808175
+ .long 941839444
+ .long 3093478113
+ .long 937982919
+ .long 931430736
+ .long 924853521
+ .long 3075349253
+ .long 945558336
+ .long 3094838221
+ .long 906200662
+ .long 3084126596
+ .long 3088015279
+ .long 3089451852
+ .long 3093678154
+ .long 938521645
+ .long 3091119329
+ .long 3090949395
+ .long 933442244
+ .long 930702671
+ .long 945827699
+ .long 913590776
+ .long 3082066287
+ .long 3087046763
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 1015021568
+ .long 1015021568
+ .long 1015021568
+ .long 1015021568
+ .long 1015021568
+ .long 1015021568
+ .long 1015021568
+ .long 1015021568
+ .long 1015021568
+ .long 1015021568
+ .long 1015021568
+ .long 1015021568
+ .long 1015021568
+ .long 1015021568
+ .long 1015021568
+ .long 1015021568
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 1593835520
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 3190466014
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1052770304
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1040187392
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 1082130432
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .type __svml_sasinh_data_internal_avx512,@object
+ .size __svml_sasinh_data_internal_avx512,1344
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * For 0.0 <= x <= 7.0/16.0: atan(x) = atan(0.0) + atan(s), where s=(x-0.0)/(1.0+0.0*x)
+ * For 7.0/16.0 <= x <= 11.0/16.0: atan(x) = atan(0.5) + atan(s), where s=(x-0.5)/(1.0+0.5*x)
+ * For 11.0/16.0 <= x <= 19.0/16.0: atan(x) = atan(1.0) + atan(s), where s=(x-1.0)/(1.0+1.0*x)
+ * For 19.0/16.0 <= x <= 39.0/16.0: atan(x) = atan(1.5) + atan(s), where s=(x-1.5)/(1.0+1.5*x)
+ * For 39.0/16.0 <= x <= inf : atan(x) = atan(inf) + atan(s), where s=-1.0/x
+ * Where atan(s) ~= s+s^3*Poly11(s^2) on interval |s|<7.0/0.16.
+ * --
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_atan28_z0_0:
+
+ .align 16,0x90
+ .globl __svml_atan28
+
+__svml_atan28:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $256, %rsp
+ xorl %edx, %edx
+
+
+ vmovups 1728+__svml_datan2_data_internal(%rip), %zmm4
+
+/* Argument signs */
+ vmovups 1536+__svml_datan2_data_internal(%rip), %zmm6
+
+/*
+ * 1) If y<x then a= y, b=x, PIO2=0
+ * 2) If y>x then a=-x, b=y, PIO2=Pi/2
+ */
+ vmovups 64+__svml_datan2_data_internal(%rip), %zmm3
+ vandpd %zmm4, %zmm0, %zmm11
+ vmovaps %zmm1, %zmm7
+ vandpd %zmm4, %zmm7, %zmm2
+ vandpd %zmm6, %zmm7, %zmm5
+ vandpd %zmm6, %zmm0, %zmm4
+ vorpd %zmm6, %zmm2, %zmm12
+ vcmppd $17, {sae}, %zmm2, %zmm11, %k1
+ vmovdqu 1664+__svml_datan2_data_internal(%rip), %ymm6
+ vmovups %zmm11, 64(%rsp)
+
+/* Check if y and x are on main path. */
+ vpsrlq $32, %zmm2, %zmm9
+ vblendmpd %zmm11, %zmm12, %zmm13{%k1}
+ vblendmpd %zmm2, %zmm11, %zmm15{%k1}
+ vpsrlq $32, %zmm11, %zmm8
+ vmovdqu 1600+__svml_datan2_data_internal(%rip), %ymm12
+ vdivpd {rn-sae}, %zmm15, %zmm13, %zmm1
+ vmovups %zmm15, (%rsp)
+ vpmovqd %zmm9, %ymm14
+ vpmovqd %zmm8, %ymm10
+ vxorpd %zmm3, %zmm3, %zmm3{%k1}
+ vpsubd %ymm12, %ymm14, %ymm13
+ vpsubd %ymm12, %ymm10, %ymm9
+
+/* Polynomial. */
+ vmulpd {rn-sae}, %zmm1, %zmm1, %zmm12
+ vpcmpgtd %ymm6, %ymm13, %ymm15
+ vpcmpeqd %ymm6, %ymm13, %ymm11
+ vmulpd {rn-sae}, %zmm12, %zmm12, %zmm13
+ vpor %ymm11, %ymm15, %ymm8
+ vmovups 256+__svml_datan2_data_internal(%rip), %zmm11
+ vmovups 512+__svml_datan2_data_internal(%rip), %zmm15
+ vpcmpgtd %ymm6, %ymm9, %ymm14
+ vpcmpeqd %ymm6, %ymm9, %ymm6
+ vpor %ymm6, %ymm14, %ymm10
+ vmulpd {rn-sae}, %zmm13, %zmm13, %zmm14
+ vmovups 320+__svml_datan2_data_internal(%rip), %zmm9
+ vpor %ymm10, %ymm8, %ymm6
+ vmovups 384+__svml_datan2_data_internal(%rip), %zmm10
+ vfmadd231pd {rn-sae}, %zmm14, %zmm11, %zmm15
+ vmovups 576+__svml_datan2_data_internal(%rip), %zmm11
+ vmovups 704+__svml_datan2_data_internal(%rip), %zmm8
+ vfmadd231pd {rn-sae}, %zmm14, %zmm9, %zmm11
+ vmovups 640+__svml_datan2_data_internal(%rip), %zmm9
+ vfmadd231pd {rn-sae}, %zmm14, %zmm10, %zmm9
+ vmovups 448+__svml_datan2_data_internal(%rip), %zmm10
+ vfmadd231pd {rn-sae}, %zmm14, %zmm10, %zmm8
+ vmovups 768+__svml_datan2_data_internal(%rip), %zmm10
+ vfmadd213pd {rn-sae}, %zmm10, %zmm14, %zmm15
+ vmovups 832+__svml_datan2_data_internal(%rip), %zmm10
+ vfmadd213pd {rn-sae}, %zmm10, %zmm14, %zmm11
+ vmovups 896+__svml_datan2_data_internal(%rip), %zmm10
+ vfmadd213pd {rn-sae}, %zmm10, %zmm14, %zmm9
+ vmovups 960+__svml_datan2_data_internal(%rip), %zmm10
+ vfmadd213pd {rn-sae}, %zmm10, %zmm14, %zmm8
+ vmovups 1024+__svml_datan2_data_internal(%rip), %zmm10
+ vfmadd213pd {rn-sae}, %zmm10, %zmm14, %zmm15
+ vmovups 1088+__svml_datan2_data_internal(%rip), %zmm10
+ vfmadd213pd {rn-sae}, %zmm10, %zmm14, %zmm11
+ vmovups 1152+__svml_datan2_data_internal(%rip), %zmm10
+ vfmadd213pd {rn-sae}, %zmm10, %zmm14, %zmm9
+ vmovups 1216+__svml_datan2_data_internal(%rip), %zmm10
+ vfmadd213pd {rn-sae}, %zmm10, %zmm14, %zmm8
+ vmovups 1280+__svml_datan2_data_internal(%rip), %zmm10
+
+/* A00=1.0, account for it later VQFMA(D, dP4, dP4, dR8, dA00); */
+ vmulpd {rn-sae}, %zmm14, %zmm8, %zmm8
+ vfmadd213pd {rn-sae}, %zmm10, %zmm14, %zmm15
+ vmovups 1344+__svml_datan2_data_internal(%rip), %zmm10
+ vfmadd213pd {rn-sae}, %zmm10, %zmm14, %zmm11
+ vmovups 1408+__svml_datan2_data_internal(%rip), %zmm10
+ vfmadd213pd {rn-sae}, %zmm11, %zmm12, %zmm15
+ vfmadd213pd {rn-sae}, %zmm10, %zmm14, %zmm9
+ vfmadd213pd {rn-sae}, %zmm8, %zmm12, %zmm9
+ vmovups __svml_datan2_data_internal(%rip), %zmm8
+ vfmadd213pd {rn-sae}, %zmm9, %zmm13, %zmm15
+
+/*
+ * Reconstruction.
+ * dP=(R+R*dP) + dPIO2
+ */
+ vfmadd213pd {rn-sae}, %zmm1, %zmm1, %zmm15
+ vaddpd {rn-sae}, %zmm3, %zmm15, %zmm1
+ vorpd %zmm5, %zmm1, %zmm9
+
+/* if x<0, dPI = Pi, else dPI =0 */
+ vmovups 1792+__svml_datan2_data_internal(%rip), %zmm1
+ vcmppd $18, {sae}, %zmm1, %zmm7, %k2
+ vaddpd {rn-sae}, %zmm8, %zmm9, %zmm9{%k2}
+ vmovmskps %ymm6, %eax
+ vorpd %zmm4, %zmm9, %zmm11
+
+/* =========== Special branch for fast (vector) processing of zero arguments ================ */
+ vmovups 64(%rsp), %zmm9
+ testl %eax, %eax
+ jne .LBL_1_12
+
+.LBL_1_2:
+
+
+/*
+ * =========== Special branch for fast (vector) processing of zero arguments ================
+ * -------------- The end of implementation ----------------
+ */
+ testl %edx, %edx
+ jne .LBL_1_4
+
+.LBL_1_3:
+
+
+/* no invcbrt in libm, so taking it out here */
+ vmovaps %zmm11, %zmm0
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_4:
+
+ vmovups %zmm0, 64(%rsp)
+ vmovups %zmm7, 128(%rsp)
+ vmovups %zmm11, 192(%rsp)
+ je .LBL_1_3
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x28, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x38, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x18, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x08, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_8:
+
+ btl %r12d, %r13d
+ jc .LBL_1_11
+
+.LBL_1_9:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_8
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 192(%rsp), %zmm11
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_3
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x28, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x38, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x18, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x08, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_11:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+ lea 192(%rsp,%r12,8), %rdx
+
+ call __svml_datan2_cout_rare_internal
+ jmp .LBL_1_9
+ .cfi_restore 4
+ .cfi_restore 5
+ .cfi_restore 12
+ .cfi_restore 13
+ .cfi_restore 122
+ .cfi_restore 123
+ .cfi_restore 124
+ .cfi_restore 125
+
+.LBL_1_12:
+
+
+/* Check if both X & Y are not NaNs: iXYnotNAN */
+ vcmppd $3, {sae}, %zmm7, %zmm7, %k1
+ vcmppd $3, {sae}, %zmm0, %zmm0, %k2
+
+/* Check if at least on of Y or Y is zero: iAXAYZERO */
+ vmovups 1792+__svml_datan2_data_internal(%rip), %zmm8
+ vpbroadcastq .L_2il0floatpacket.31(%rip), %zmm10
+ vcmppd $4, {sae}, %zmm8, %zmm2, %k3
+ vmovaps %zmm10, %zmm12
+ vmovaps %zmm10, %zmm15
+ vmovaps %zmm10, %zmm13
+ vpandnq %zmm7, %zmm7, %zmm12{%k1}
+ vcmppd $4, {sae}, %zmm8, %zmm9, %k1
+ vpandnq %zmm2, %zmm2, %zmm15{%k3}
+ vmovaps %zmm10, %zmm2
+
+/* Res = sign(Y)*(X<0)?(PIO2+PI):PIO2 */
+ vpcmpgtq %zmm7, %zmm8, %k3
+ vpandnq %zmm0, %zmm0, %zmm13{%k2}
+ vpandnq %zmm9, %zmm9, %zmm2{%k1}
+ vandpd %zmm13, %zmm12, %zmm14
+ vorpd %zmm2, %zmm15, %zmm9
+ vpsrlq $32, %zmm14, %zmm1
+ vpsrlq $32, %zmm9, %zmm2
+ vpmovqd %zmm1, %ymm1
+ vpmovqd %zmm2, %ymm9
+
+/* Check if at least on of Y or Y is zero and not NaN: iAXAYZEROnotNAN */
+ vpand %ymm1, %ymm9, %ymm2
+
+/*
+ * -------- Path for zero arguments (at least one of both) --------------
+ * Check if both args are zeros (den. is zero)
+ */
+ vmovups (%rsp), %zmm1
+
+/* Exclude from previous callout mask zero (and not NaN) arguments */
+ vpandn %ymm6, %ymm2, %ymm6
+ vcmppd $4, {sae}, %zmm8, %zmm1, %k2
+
+/* Go to callout */
+ vmovmskps %ymm6, %edx
+ vpandnq %zmm1, %zmm1, %zmm10{%k2}
+
+/* Set sPIO2 to zero if den. is zero */
+ vpandnq %zmm3, %zmm10, %zmm3
+ vpandq %zmm10, %zmm8, %zmm1
+ vporq %zmm1, %zmm3, %zmm3
+ vorpd %zmm5, %zmm3, %zmm1
+ vmovups __svml_datan2_data_internal(%rip), %zmm5
+ vaddpd {rn-sae}, %zmm5, %zmm1, %zmm1{%k3}
+ vorpd %zmm4, %zmm1, %zmm1
+
+/* Merge results from main and spec path */
+ vpmovzxdq %ymm2, %zmm4
+ vpsllq $32, %zmm4, %zmm2
+ vpord %zmm2, %zmm4, %zmm3
+ vpandnq %zmm11, %zmm3, %zmm11
+ vpandq %zmm3, %zmm1, %zmm1
+ vporq %zmm1, %zmm11, %zmm11
+ jmp .LBL_1_2
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_atan28,@function
+ .size __svml_atan28,.-__svml_atan28
+..LN__svml_atan28.0:
+
+.L_2__routine_start___svml_datan2_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_datan2_cout_rare_internal:
+
+
+ .cfi_startproc
+..L65:
+
+ movq %rdx, %rcx
+ movsd 1888+__datan2_la_CoutTab(%rip), %xmm1
+ movsd (%rdi), %xmm2
+ movsd (%rsi), %xmm0
+ mulsd %xmm1, %xmm2
+ mulsd %xmm0, %xmm1
+ movsd %xmm2, -48(%rsp)
+ movsd %xmm1, -40(%rsp)
+ movzwl -42(%rsp), %r9d
+ andl $32752, %r9d
+ movb -33(%rsp), %al
+ movzwl -34(%rsp), %r8d
+ andb $-128, %al
+ andl $32752, %r8d
+ shrl $4, %r9d
+ movb -41(%rsp), %dl
+ shrb $7, %dl
+ shrb $7, %al
+ shrl $4, %r8d
+ cmpl $2047, %r9d
+ je .LBL_2_49
+
+
+ cmpl $2047, %r8d
+ je .LBL_2_38
+
+
+ testl %r9d, %r9d
+ jne .LBL_2_6
+
+
+ testl $1048575, -44(%rsp)
+ jne .LBL_2_6
+
+
+ cmpl $0, -48(%rsp)
+ je .LBL_2_31
+
+.LBL_2_6:
+
+ testl %r8d, %r8d
+ jne .LBL_2_9
+
+
+ testl $1048575, -36(%rsp)
+ jne .LBL_2_9
+
+
+ cmpl $0, -40(%rsp)
+ je .LBL_2_29
+
+.LBL_2_9:
+
+ negl %r8d
+ movsd %xmm2, -48(%rsp)
+ addl %r9d, %r8d
+ movsd %xmm1, -40(%rsp)
+ movb -41(%rsp), %dil
+ movb -33(%rsp), %sil
+ andb $127, %dil
+ andb $127, %sil
+ cmpl $-54, %r8d
+ jle .LBL_2_24
+
+
+ cmpl $54, %r8d
+ jge .LBL_2_21
+
+
+ movb %sil, -33(%rsp)
+ movb %dil, -41(%rsp)
+ testb %al, %al
+ jne .LBL_2_13
+
+
+ movsd 1976+__datan2_la_CoutTab(%rip), %xmm1
+ movaps %xmm1, %xmm0
+ jmp .LBL_2_14
+
+.LBL_2_13:
+
+ movsd 1936+__datan2_la_CoutTab(%rip), %xmm1
+ movsd 1944+__datan2_la_CoutTab(%rip), %xmm0
+
+.LBL_2_14:
+
+ movsd -48(%rsp), %xmm4
+ movsd -40(%rsp), %xmm2
+ movaps %xmm4, %xmm5
+ divsd %xmm2, %xmm5
+ movzwl -42(%rsp), %esi
+ movsd %xmm5, -16(%rsp)
+ testl %r9d, %r9d
+ jle .LBL_2_37
+
+
+ cmpl $2046, %r9d
+ jge .LBL_2_17
+
+
+ andl $-32753, %esi
+ addl $-1023, %r9d
+ movsd %xmm4, -48(%rsp)
+ addl $16368, %esi
+ movw %si, -42(%rsp)
+ jmp .LBL_2_18
+
+.LBL_2_17:
+
+ movsd 1992+__datan2_la_CoutTab(%rip), %xmm3
+ movl $1022, %r9d
+ mulsd %xmm3, %xmm4
+ movsd %xmm4, -48(%rsp)
+
+.LBL_2_18:
+
+ negl %r9d
+ addl $1023, %r9d
+ andl $2047, %r9d
+ movzwl 1894+__datan2_la_CoutTab(%rip), %esi
+ movsd 1888+__datan2_la_CoutTab(%rip), %xmm3
+ andl $-32753, %esi
+ shll $4, %r9d
+ movsd %xmm3, -40(%rsp)
+ orl %r9d, %esi
+ movw %si, -34(%rsp)
+ movsd -40(%rsp), %xmm4
+ mulsd %xmm4, %xmm2
+ comisd 1880+__datan2_la_CoutTab(%rip), %xmm5
+ jb .LBL_2_20
+
+
+ movsd 2000+__datan2_la_CoutTab(%rip), %xmm12
+ movaps %xmm2, %xmm3
+ mulsd %xmm2, %xmm12
+ movsd %xmm12, -72(%rsp)
+ movsd -72(%rsp), %xmm13
+ movsd %xmm5, -24(%rsp)
+ subsd %xmm2, %xmm13
+ movsd %xmm13, -64(%rsp)
+ movsd -72(%rsp), %xmm15
+ movsd -64(%rsp), %xmm14
+ movl -20(%rsp), %r8d
+ movl %r8d, %r9d
+ andl $-524288, %r8d
+ andl $-1048576, %r9d
+ addl $262144, %r8d
+ subsd %xmm14, %xmm15
+ movsd %xmm15, -72(%rsp)
+ andl $1048575, %r8d
+ movsd -72(%rsp), %xmm4
+ orl %r8d, %r9d
+ movl $0, -24(%rsp)
+ subsd %xmm4, %xmm3
+ movl %r9d, -20(%rsp)
+ movsd %xmm3, -64(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd -24(%rsp), %xmm11
+ movsd -64(%rsp), %xmm9
+ mulsd %xmm11, %xmm5
+ mulsd %xmm11, %xmm9
+ movsd 1968+__datan2_la_CoutTab(%rip), %xmm8
+ mulsd %xmm8, %xmm5
+ mulsd %xmm8, %xmm9
+ movaps %xmm5, %xmm7
+ movzwl -10(%rsp), %edi
+ addsd %xmm9, %xmm7
+ movsd %xmm7, -72(%rsp)
+ andl $32752, %edi
+ movsd -72(%rsp), %xmm6
+ shrl $4, %edi
+ subsd %xmm6, %xmm5
+ movl -12(%rsp), %esi
+ addsd %xmm5, %xmm9
+ movsd %xmm9, -64(%rsp)
+ andl $1048575, %esi
+ movsd -48(%rsp), %xmm9
+ movsd -72(%rsp), %xmm3
+ movaps %xmm9, %xmm12
+ movsd -64(%rsp), %xmm10
+ movaps %xmm9, %xmm14
+ movaps %xmm9, %xmm6
+ addsd %xmm3, %xmm12
+ movsd %xmm12, -72(%rsp)
+ movsd -72(%rsp), %xmm13
+ shll $20, %edi
+ subsd %xmm13, %xmm14
+ movsd %xmm14, -64(%rsp)
+ orl %esi, %edi
+ movsd -72(%rsp), %xmm4
+ addl $-1069547520, %edi
+ movsd -64(%rsp), %xmm15
+ movl $113, %esi
+ movsd 2000+__datan2_la_CoutTab(%rip), %xmm13
+ addsd %xmm15, %xmm4
+ movsd %xmm4, -56(%rsp)
+ movsd -64(%rsp), %xmm8
+ sarl $19, %edi
+ addsd %xmm3, %xmm8
+ movsd %xmm8, -64(%rsp)
+ cmpl $113, %edi
+ movsd -56(%rsp), %xmm7
+ cmovl %edi, %esi
+ subsd %xmm7, %xmm6
+ movsd %xmm6, -56(%rsp)
+ addl %esi, %esi
+ movsd -64(%rsp), %xmm12
+ lea __datan2_la_CoutTab(%rip), %rdi
+ movsd -56(%rsp), %xmm5
+ movslq %esi, %rsi
+ addsd %xmm5, %xmm12
+ movsd %xmm12, -56(%rsp)
+ movsd -72(%rsp), %xmm7
+ mulsd %xmm7, %xmm13
+ movsd -56(%rsp), %xmm8
+ movsd %xmm13, -72(%rsp)
+ addsd %xmm10, %xmm8
+ movsd -72(%rsp), %xmm4
+ movaps %xmm9, %xmm10
+ mulsd 2000+__datan2_la_CoutTab(%rip), %xmm10
+ subsd %xmm7, %xmm4
+ movsd %xmm4, -64(%rsp)
+ movsd -72(%rsp), %xmm3
+ movsd -64(%rsp), %xmm14
+ subsd %xmm14, %xmm3
+ movsd %xmm3, -72(%rsp)
+ movsd -72(%rsp), %xmm15
+ subsd %xmm15, %xmm7
+ movsd %xmm7, -64(%rsp)
+ movsd -72(%rsp), %xmm7
+ movsd -64(%rsp), %xmm4
+ movsd %xmm10, -72(%rsp)
+ movaps %xmm2, %xmm10
+ addsd %xmm4, %xmm8
+ movsd -72(%rsp), %xmm4
+ subsd -48(%rsp), %xmm4
+ movsd %xmm4, -64(%rsp)
+ movsd -72(%rsp), %xmm6
+ movsd -64(%rsp), %xmm3
+ subsd %xmm3, %xmm6
+ movaps %xmm2, %xmm3
+ movsd %xmm6, -72(%rsp)
+ movsd -72(%rsp), %xmm5
+ subsd %xmm5, %xmm9
+ movsd %xmm9, -64(%rsp)
+ movsd -72(%rsp), %xmm12
+ movsd -64(%rsp), %xmm9
+ mulsd %xmm11, %xmm12
+ mulsd %xmm11, %xmm9
+ movaps %xmm12, %xmm11
+ addsd %xmm9, %xmm11
+ movsd %xmm11, -72(%rsp)
+ movsd -72(%rsp), %xmm4
+ subsd %xmm4, %xmm12
+ addsd %xmm9, %xmm12
+ movsd %xmm12, -64(%rsp)
+ movsd -72(%rsp), %xmm15
+ movsd -64(%rsp), %xmm6
+ addsd %xmm15, %xmm3
+ movsd %xmm3, -72(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd 2000+__datan2_la_CoutTab(%rip), %xmm3
+ subsd %xmm5, %xmm10
+ movsd %xmm10, -64(%rsp)
+ movsd -72(%rsp), %xmm13
+ movsd -64(%rsp), %xmm11
+ addsd %xmm11, %xmm13
+ movsd %xmm13, -56(%rsp)
+ movsd -64(%rsp), %xmm14
+ movsd 2000+__datan2_la_CoutTab(%rip), %xmm13
+ addsd %xmm14, %xmm15
+ movsd %xmm15, -64(%rsp)
+ movsd -56(%rsp), %xmm4
+ movsd 1888+__datan2_la_CoutTab(%rip), %xmm14
+ subsd %xmm4, %xmm2
+ movsd %xmm2, -56(%rsp)
+ movsd -64(%rsp), %xmm4
+ movsd -56(%rsp), %xmm2
+ addsd %xmm2, %xmm4
+ movsd %xmm4, -56(%rsp)
+ movsd -72(%rsp), %xmm12
+ mulsd %xmm12, %xmm3
+ movsd -56(%rsp), %xmm5
+ movsd %xmm3, -72(%rsp)
+ addsd %xmm6, %xmm5
+ movsd -72(%rsp), %xmm9
+ subsd %xmm12, %xmm9
+ movsd %xmm9, -64(%rsp)
+ movsd -72(%rsp), %xmm10
+ movsd -64(%rsp), %xmm2
+ subsd %xmm2, %xmm10
+ movsd %xmm10, -72(%rsp)
+ movsd -72(%rsp), %xmm11
+ subsd %xmm11, %xmm12
+ movsd %xmm12, -64(%rsp)
+ movsd -72(%rsp), %xmm9
+ divsd %xmm9, %xmm14
+ mulsd %xmm14, %xmm13
+ movsd -64(%rsp), %xmm10
+ movsd %xmm13, -64(%rsp)
+ addsd %xmm10, %xmm5
+ movsd -64(%rsp), %xmm15
+ movsd 1888+__datan2_la_CoutTab(%rip), %xmm12
+ subsd %xmm14, %xmm15
+ movsd %xmm15, -56(%rsp)
+ movsd -64(%rsp), %xmm2
+ movsd -56(%rsp), %xmm4
+ movsd 2000+__datan2_la_CoutTab(%rip), %xmm13
+ subsd %xmm4, %xmm2
+ movsd %xmm2, -56(%rsp)
+ movsd -56(%rsp), %xmm3
+ mulsd %xmm3, %xmm9
+ movsd -56(%rsp), %xmm11
+ subsd %xmm9, %xmm12
+ mulsd %xmm11, %xmm5
+ movsd %xmm5, -64(%rsp)
+ movsd -64(%rsp), %xmm5
+ subsd %xmm5, %xmm12
+ movsd %xmm12, -64(%rsp)
+ movsd -64(%rsp), %xmm2
+ movq -56(%rsp), %r10
+ movsd -64(%rsp), %xmm6
+ movsd -56(%rsp), %xmm4
+ movq %r10, -40(%rsp)
+ movsd -40(%rsp), %xmm3
+ movaps %xmm3, %xmm5
+ addsd 1888+__datan2_la_CoutTab(%rip), %xmm2
+ mulsd %xmm7, %xmm5
+ mulsd %xmm6, %xmm2
+ mulsd %xmm4, %xmm2
+ mulsd %xmm2, %xmm7
+ mulsd %xmm8, %xmm2
+ mulsd %xmm3, %xmm8
+ addsd %xmm2, %xmm7
+ movsd 1872+__datan2_la_CoutTab(%rip), %xmm3
+ addsd %xmm8, %xmm7
+ movsd %xmm7, -72(%rsp)
+ movaps %xmm5, %xmm7
+ movsd -72(%rsp), %xmm4
+ movsd 2000+__datan2_la_CoutTab(%rip), %xmm6
+ addsd %xmm4, %xmm7
+ movsd %xmm7, -72(%rsp)
+ movsd -72(%rsp), %xmm8
+ subsd %xmm8, %xmm5
+ addsd %xmm4, %xmm5
+ movsd %xmm5, -64(%rsp)
+ movsd -72(%rsp), %xmm11
+ movaps %xmm11, %xmm2
+ mulsd %xmm11, %xmm2
+ mulsd %xmm11, %xmm6
+ mulsd %xmm2, %xmm3
+ movsd -64(%rsp), %xmm4
+ movsd %xmm6, -72(%rsp)
+ movsd -72(%rsp), %xmm7
+ addsd 1864+__datan2_la_CoutTab(%rip), %xmm3
+ subsd %xmm11, %xmm7
+ mulsd %xmm2, %xmm3
+ movsd %xmm7, -64(%rsp)
+ movsd -72(%rsp), %xmm9
+ movsd -64(%rsp), %xmm8
+ addsd 1856+__datan2_la_CoutTab(%rip), %xmm3
+ subsd %xmm8, %xmm9
+ mulsd %xmm2, %xmm3
+ movsd %xmm9, -72(%rsp)
+ movsd -72(%rsp), %xmm10
+ addsd 1848+__datan2_la_CoutTab(%rip), %xmm3
+ subsd %xmm10, %xmm11
+ mulsd %xmm2, %xmm3
+ movsd %xmm11, -64(%rsp)
+ addsd 1840+__datan2_la_CoutTab(%rip), %xmm3
+ mulsd %xmm2, %xmm3
+ addsd 1832+__datan2_la_CoutTab(%rip), %xmm3
+ mulsd %xmm2, %xmm3
+ addsd 1824+__datan2_la_CoutTab(%rip), %xmm3
+ mulsd %xmm2, %xmm3
+ mulsd %xmm3, %xmm13
+ movsd -72(%rsp), %xmm2
+ movsd -64(%rsp), %xmm12
+ movsd %xmm13, -72(%rsp)
+ addsd %xmm12, %xmm4
+ movsd -72(%rsp), %xmm14
+ subsd %xmm3, %xmm14
+ movsd %xmm14, -64(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd -64(%rsp), %xmm15
+ subsd %xmm15, %xmm5
+ movsd %xmm5, -72(%rsp)
+ movsd -72(%rsp), %xmm6
+ subsd %xmm6, %xmm3
+ movsd %xmm3, -64(%rsp)
+ movsd -72(%rsp), %xmm6
+ movsd -64(%rsp), %xmm5
+ movaps %xmm6, %xmm12
+ movaps %xmm5, %xmm3
+ mulsd %xmm4, %xmm6
+ mulsd %xmm4, %xmm3
+ mulsd %xmm2, %xmm5
+ mulsd %xmm2, %xmm12
+ addsd %xmm3, %xmm6
+ movaps %xmm12, %xmm7
+ movaps %xmm12, %xmm8
+ addsd %xmm5, %xmm6
+ addsd %xmm2, %xmm7
+ movsd %xmm6, -72(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd %xmm7, -72(%rsp)
+ movsd -72(%rsp), %xmm3
+ subsd %xmm3, %xmm8
+ movsd %xmm8, -64(%rsp)
+ movsd -72(%rsp), %xmm10
+ movsd -64(%rsp), %xmm9
+ addsd %xmm9, %xmm10
+ movsd %xmm10, -56(%rsp)
+ movsd -64(%rsp), %xmm11
+ addsd %xmm11, %xmm2
+ movsd %xmm2, -64(%rsp)
+ movsd -56(%rsp), %xmm2
+ subsd %xmm2, %xmm12
+ movsd %xmm12, -56(%rsp)
+ movsd -64(%rsp), %xmm14
+ movsd -56(%rsp), %xmm13
+ addsd %xmm13, %xmm14
+ movsd %xmm14, -56(%rsp)
+ movq -72(%rsp), %r11
+ movsd -56(%rsp), %xmm15
+ movq %r11, -40(%rsp)
+ addsd %xmm15, %xmm4
+ movsd -40(%rsp), %xmm8
+ addsd %xmm5, %xmm4
+ movsd %xmm4, -32(%rsp)
+ movaps %xmm8, %xmm4
+ movaps %xmm8, %xmm2
+ addsd (%rdi,%rsi,8), %xmm4
+ movsd %xmm4, -72(%rsp)
+ movsd -72(%rsp), %xmm4
+ subsd %xmm4, %xmm2
+ movsd %xmm2, -64(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd -64(%rsp), %xmm3
+ addsd %xmm3, %xmm5
+ movsd %xmm5, -56(%rsp)
+ movsd -64(%rsp), %xmm6
+ addsd (%rdi,%rsi,8), %xmm6
+ movsd %xmm6, -64(%rsp)
+ movsd -56(%rsp), %xmm7
+ subsd %xmm7, %xmm8
+ movsd %xmm8, -56(%rsp)
+ movsd -64(%rsp), %xmm10
+ movsd -56(%rsp), %xmm9
+ addsd %xmm9, %xmm10
+ movsd %xmm10, -56(%rsp)
+ movq -72(%rsp), %r8
+ movq %r8, -40(%rsp)
+
+
+ movsd -56(%rsp), %xmm2
+ movaps %xmm1, %xmm3
+ shrq $56, %r8
+ addsd -32(%rsp), %xmm2
+ shlb $7, %dl
+ addsd 8(%rdi,%rsi,8), %xmm2
+ movb %al, %sil
+ andb $127, %r8b
+ shlb $7, %sil
+ movsd %xmm2, -32(%rsp)
+ orb %sil, %r8b
+ movb %r8b, -33(%rsp)
+ movsd -40(%rsp), %xmm9
+ movaps %xmm9, %xmm5
+ addsd %xmm9, %xmm3
+ movsd %xmm3, -72(%rsp)
+ movsd -72(%rsp), %xmm4
+ movb -25(%rsp), %dil
+ movb %dil, %r9b
+ shrb $7, %dil
+ subsd %xmm4, %xmm5
+ movsd %xmm5, -64(%rsp)
+ movsd -72(%rsp), %xmm7
+ movsd -64(%rsp), %xmm6
+ xorb %dil, %al
+ andb $127, %r9b
+ shlb $7, %al
+ addsd %xmm6, %xmm7
+ movsd %xmm7, -56(%rsp)
+ movsd -64(%rsp), %xmm8
+ addsd %xmm8, %xmm1
+ movsd %xmm1, -64(%rsp)
+ orb %al, %r9b
+ movsd -56(%rsp), %xmm1
+ movb %r9b, -25(%rsp)
+ subsd %xmm1, %xmm9
+ movsd %xmm9, -56(%rsp)
+ movsd -64(%rsp), %xmm11
+ movsd -56(%rsp), %xmm10
+ addsd %xmm10, %xmm11
+ movsd %xmm11, -56(%rsp)
+ movq -72(%rsp), %rax
+ movsd -56(%rsp), %xmm12
+ movq %rax, -40(%rsp)
+ addsd %xmm12, %xmm0
+ movsd -40(%rsp), %xmm13
+ addsd -32(%rsp), %xmm0
+ movsd %xmm0, -32(%rsp)
+ addsd %xmm0, %xmm13
+ movsd %xmm13, -24(%rsp)
+ movb -17(%rsp), %r10b
+ andb $127, %r10b
+ orb %dl, %r10b
+ movb %r10b, -17(%rsp)
+ movq -24(%rsp), %rdx
+ movq %rdx, (%rcx)
+ jmp .LBL_2_36
+
+.LBL_2_20:
+
+ movsd -48(%rsp), %xmm12
+ movb %al, %r8b
+ movaps %xmm12, %xmm7
+ mulsd 2000+__datan2_la_CoutTab(%rip), %xmm7
+ shlb $7, %r8b
+ shlb $7, %dl
+ movsd %xmm7, -72(%rsp)
+ movsd -72(%rsp), %xmm8
+ movsd 2000+__datan2_la_CoutTab(%rip), %xmm13
+ movsd 1888+__datan2_la_CoutTab(%rip), %xmm7
+ mulsd %xmm2, %xmm13
+ subsd -48(%rsp), %xmm8
+ movsd %xmm8, -64(%rsp)
+ movsd -72(%rsp), %xmm10
+ movsd -64(%rsp), %xmm9
+ subsd %xmm9, %xmm10
+ movsd %xmm10, -72(%rsp)
+ movsd -72(%rsp), %xmm11
+ subsd %xmm11, %xmm12
+ movsd %xmm12, -64(%rsp)
+ movsd -72(%rsp), %xmm6
+ movsd -64(%rsp), %xmm5
+ movsd %xmm13, -72(%rsp)
+ movsd -72(%rsp), %xmm14
+ subsd %xmm2, %xmm14
+ movsd %xmm14, -64(%rsp)
+ movsd -72(%rsp), %xmm4
+ movsd -64(%rsp), %xmm15
+ subsd %xmm15, %xmm4
+ movsd %xmm4, -72(%rsp)
+ movsd -72(%rsp), %xmm3
+ movsd 1888+__datan2_la_CoutTab(%rip), %xmm4
+ subsd %xmm3, %xmm2
+ movsd %xmm2, -64(%rsp)
+ movsd -72(%rsp), %xmm12
+ divsd %xmm12, %xmm7
+ movsd 2000+__datan2_la_CoutTab(%rip), %xmm2
+ mulsd %xmm7, %xmm2
+ movsd -64(%rsp), %xmm14
+ movsd %xmm2, -64(%rsp)
+ movsd -64(%rsp), %xmm8
+ subsd %xmm7, %xmm8
+ movsd %xmm8, -56(%rsp)
+ movsd -64(%rsp), %xmm10
+ movsd -56(%rsp), %xmm9
+ subsd %xmm9, %xmm10
+ movsd %xmm10, -56(%rsp)
+ movsd -56(%rsp), %xmm11
+ mulsd %xmm11, %xmm12
+ movsd -56(%rsp), %xmm13
+ subsd %xmm12, %xmm4
+ mulsd %xmm13, %xmm14
+ movsd %xmm14, -64(%rsp)
+ movsd -64(%rsp), %xmm15
+ movsd 2000+__datan2_la_CoutTab(%rip), %xmm13
+ subsd %xmm15, %xmm4
+ movsd %xmm4, -64(%rsp)
+ movsd -64(%rsp), %xmm7
+ movq -56(%rsp), %rsi
+ movsd -64(%rsp), %xmm2
+ movsd -56(%rsp), %xmm3
+ movq %rsi, -40(%rsp)
+ movsd -40(%rsp), %xmm8
+ movaps %xmm8, %xmm9
+ addsd 1888+__datan2_la_CoutTab(%rip), %xmm7
+ mulsd %xmm6, %xmm9
+ mulsd %xmm5, %xmm8
+ mulsd %xmm2, %xmm7
+ movsd -16(%rsp), %xmm2
+ mulsd %xmm2, %xmm2
+ mulsd %xmm3, %xmm7
+ movsd 1872+__datan2_la_CoutTab(%rip), %xmm3
+ mulsd %xmm2, %xmm3
+ mulsd %xmm7, %xmm6
+ mulsd %xmm5, %xmm7
+ addsd 1864+__datan2_la_CoutTab(%rip), %xmm3
+ addsd %xmm7, %xmm6
+ mulsd %xmm2, %xmm3
+ addsd %xmm8, %xmm6
+ addsd 1856+__datan2_la_CoutTab(%rip), %xmm3
+ mulsd %xmm2, %xmm3
+ movaps %xmm9, %xmm5
+ movsd %xmm6, -72(%rsp)
+ movsd -72(%rsp), %xmm4
+ addsd 1848+__datan2_la_CoutTab(%rip), %xmm3
+ addsd %xmm4, %xmm5
+ mulsd %xmm2, %xmm3
+ movsd %xmm5, -72(%rsp)
+ movsd -72(%rsp), %xmm6
+ movsd 2000+__datan2_la_CoutTab(%rip), %xmm5
+ subsd %xmm6, %xmm9
+ addsd 1840+__datan2_la_CoutTab(%rip), %xmm3
+ addsd %xmm4, %xmm9
+ mulsd %xmm2, %xmm3
+ movsd %xmm9, -64(%rsp)
+ movsd -72(%rsp), %xmm11
+ mulsd %xmm11, %xmm5
+ addsd 1832+__datan2_la_CoutTab(%rip), %xmm3
+ movsd -64(%rsp), %xmm4
+ movsd %xmm5, -72(%rsp)
+ movsd -72(%rsp), %xmm7
+ mulsd %xmm2, %xmm3
+ subsd %xmm11, %xmm7
+ movsd %xmm7, -64(%rsp)
+ movsd -72(%rsp), %xmm8
+ movsd -64(%rsp), %xmm6
+ addsd 1824+__datan2_la_CoutTab(%rip), %xmm3
+ subsd %xmm6, %xmm8
+ mulsd %xmm2, %xmm3
+ movsd %xmm8, -72(%rsp)
+ movsd -72(%rsp), %xmm10
+ mulsd %xmm3, %xmm13
+ subsd %xmm10, %xmm11
+ movsd %xmm11, -64(%rsp)
+ movsd -72(%rsp), %xmm2
+ movsd -64(%rsp), %xmm12
+ movsd %xmm13, -72(%rsp)
+ addsd %xmm12, %xmm4
+ movsd -72(%rsp), %xmm14
+ subsd %xmm3, %xmm14
+ movsd %xmm14, -64(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd -64(%rsp), %xmm15
+ subsd %xmm15, %xmm5
+ movsd %xmm5, -72(%rsp)
+ movsd -72(%rsp), %xmm6
+ subsd %xmm6, %xmm3
+ movsd %xmm3, -64(%rsp)
+ movsd -72(%rsp), %xmm6
+ movsd -64(%rsp), %xmm5
+ movaps %xmm6, %xmm12
+ movaps %xmm5, %xmm3
+ mulsd %xmm4, %xmm6
+ mulsd %xmm4, %xmm3
+ mulsd %xmm2, %xmm5
+ mulsd %xmm2, %xmm12
+ addsd %xmm3, %xmm6
+ movaps %xmm12, %xmm7
+ movaps %xmm12, %xmm8
+ addsd %xmm5, %xmm6
+ addsd %xmm2, %xmm7
+ movsd %xmm6, -72(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd %xmm7, -72(%rsp)
+ movsd -72(%rsp), %xmm3
+ subsd %xmm3, %xmm8
+ movsd %xmm8, -64(%rsp)
+ movsd -72(%rsp), %xmm10
+ movsd -64(%rsp), %xmm9
+ addsd %xmm9, %xmm10
+ movsd %xmm10, -56(%rsp)
+ movsd -64(%rsp), %xmm11
+ addsd %xmm11, %xmm2
+ movsd %xmm2, -64(%rsp)
+ movsd -56(%rsp), %xmm2
+ subsd %xmm2, %xmm12
+ movsd %xmm12, -56(%rsp)
+ movsd -64(%rsp), %xmm14
+ movsd -56(%rsp), %xmm13
+ addsd %xmm13, %xmm14
+ movsd %xmm14, -56(%rsp)
+ movq -72(%rsp), %rdi
+ movsd -56(%rsp), %xmm15
+ movq %rdi, -40(%rsp)
+ addsd %xmm15, %xmm4
+ shrq $56, %rdi
+ addsd %xmm5, %xmm4
+ andb $127, %dil
+ orb %r8b, %dil
+ movb %dil, -33(%rsp)
+ movsd %xmm4, -32(%rsp)
+ movaps %xmm1, %xmm4
+ movsd -40(%rsp), %xmm7
+ movaps %xmm7, %xmm2
+ addsd %xmm7, %xmm4
+ movsd %xmm4, -72(%rsp)
+ movsd -72(%rsp), %xmm4
+ movb -25(%rsp), %r9b
+ movb %r9b, %r10b
+ shrb $7, %r9b
+ subsd %xmm4, %xmm2
+ movsd %xmm2, -64(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd -64(%rsp), %xmm3
+ xorb %r9b, %al
+ andb $127, %r10b
+ shlb $7, %al
+ addsd %xmm3, %xmm5
+ movsd %xmm5, -56(%rsp)
+ movsd -64(%rsp), %xmm6
+ addsd %xmm6, %xmm1
+ movsd %xmm1, -64(%rsp)
+ orb %al, %r10b
+ movsd -56(%rsp), %xmm1
+ movb %r10b, -25(%rsp)
+ subsd %xmm1, %xmm7
+ movsd %xmm7, -56(%rsp)
+ movsd -64(%rsp), %xmm2
+ movsd -56(%rsp), %xmm1
+ addsd %xmm1, %xmm2
+ movsd %xmm2, -56(%rsp)
+ movq -72(%rsp), %rax
+ movsd -56(%rsp), %xmm3
+ movq %rax, -40(%rsp)
+ addsd %xmm3, %xmm0
+ movsd -40(%rsp), %xmm4
+ addsd -32(%rsp), %xmm0
+ movsd %xmm0, -32(%rsp)
+ addsd %xmm0, %xmm4
+ movsd %xmm4, -24(%rsp)
+ movb -17(%rsp), %r11b
+ andb $127, %r11b
+ orb %dl, %r11b
+ movb %r11b, -17(%rsp)
+ movq -24(%rsp), %rdx
+ movq %rdx, (%rcx)
+ jmp .LBL_2_36
+
+.LBL_2_21:
+
+ cmpl $74, %r8d
+ jge .LBL_2_53
+
+
+ movb %dil, -41(%rsp)
+ divsd -48(%rsp), %xmm1
+ movsd 1928+__datan2_la_CoutTab(%rip), %xmm0
+ shlb $7, %dl
+ subsd %xmm1, %xmm0
+ addsd 1920+__datan2_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %al
+ andb $127, %al
+ orb %dl, %al
+ movb %al, -17(%rsp)
+ movq -24(%rsp), %rdx
+ movq %rdx, (%rcx)
+ jmp .LBL_2_36
+
+.LBL_2_24:
+
+ testb %al, %al
+ jne .LBL_2_35
+
+
+ movb %dil, -41(%rsp)
+ movb %sil, -33(%rsp)
+ movsd -48(%rsp), %xmm2
+ divsd -40(%rsp), %xmm2
+ movsd %xmm2, -24(%rsp)
+ movzwl -18(%rsp), %eax
+ testl $32752, %eax
+ je .LBL_2_27
+
+
+ movsd 1888+__datan2_la_CoutTab(%rip), %xmm0
+ shlb $7, %dl
+ addsd %xmm2, %xmm0
+ movsd %xmm0, -72(%rsp)
+ movsd -72(%rsp), %xmm1
+ mulsd %xmm1, %xmm2
+ movsd %xmm2, -24(%rsp)
+ movb -17(%rsp), %al
+ andb $127, %al
+ orb %dl, %al
+ movb %al, -17(%rsp)
+ movq -24(%rsp), %rdx
+ movq %rdx, (%rcx)
+ jmp .LBL_2_36
+
+.LBL_2_27:
+
+ mulsd %xmm2, %xmm2
+ shlb $7, %dl
+ movsd %xmm2, -72(%rsp)
+ movsd -72(%rsp), %xmm0
+ addsd -24(%rsp), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %al
+ andb $127, %al
+ orb %dl, %al
+ movb %al, -17(%rsp)
+ movq -24(%rsp), %rdx
+ movq %rdx, (%rcx)
+ jmp .LBL_2_36
+
+.LBL_2_29:
+
+ testl %r9d, %r9d
+ jne .LBL_2_53
+
+
+ testl $1048575, -44(%rsp)
+ jne .LBL_2_53
+ jmp .LBL_2_57
+
+.LBL_2_31:
+
+ jne .LBL_2_53
+
+.LBL_2_33:
+
+ testb %al, %al
+ jne .LBL_2_35
+
+.LBL_2_34:
+
+ shlb $7, %dl
+ movq 1976+__datan2_la_CoutTab(%rip), %rax
+ movq %rax, -24(%rsp)
+ shrq $56, %rax
+ andb $127, %al
+ orb %dl, %al
+ movb %al, -17(%rsp)
+ movq -24(%rsp), %rdx
+ movq %rdx, (%rcx)
+ jmp .LBL_2_36
+
+.LBL_2_35:
+
+ movsd 1936+__datan2_la_CoutTab(%rip), %xmm0
+ shlb $7, %dl
+ addsd 1944+__datan2_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %al
+ andb $127, %al
+ orb %dl, %al
+ movb %al, -17(%rsp)
+ movq -24(%rsp), %rdx
+ movq %rdx, (%rcx)
+
+.LBL_2_36:
+
+ xorl %eax, %eax
+ ret
+
+.LBL_2_37:
+
+ movsd 1984+__datan2_la_CoutTab(%rip), %xmm3
+ movl $-1022, %r9d
+ mulsd %xmm3, %xmm4
+ movsd %xmm4, -48(%rsp)
+ jmp .LBL_2_18
+
+.LBL_2_38:
+
+ cmpl $2047, %r9d
+ je .LBL_2_49
+
+.LBL_2_39:
+
+ testl $1048575, -36(%rsp)
+ jne .LBL_2_41
+
+
+ cmpl $0, -40(%rsp)
+ je .LBL_2_42
+
+.LBL_2_41:
+
+ addsd %xmm1, %xmm2
+ movsd %xmm2, (%rcx)
+ jmp .LBL_2_36
+
+.LBL_2_42:
+
+ cmpl $2047, %r9d
+ je .LBL_2_46
+
+
+ testb %al, %al
+ je .LBL_2_34
+ jmp .LBL_2_35
+
+.LBL_2_46:
+
+ testb %al, %al
+ jne .LBL_2_48
+
+
+ movsd 1904+__datan2_la_CoutTab(%rip), %xmm0
+ shlb $7, %dl
+ addsd 1912+__datan2_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %al
+ andb $127, %al
+ orb %dl, %al
+ movb %al, -17(%rsp)
+ movq -24(%rsp), %rdx
+ movq %rdx, (%rcx)
+ jmp .LBL_2_36
+
+.LBL_2_48:
+
+ movsd 1952+__datan2_la_CoutTab(%rip), %xmm0
+ shlb $7, %dl
+ addsd 1960+__datan2_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %al
+ andb $127, %al
+ orb %dl, %al
+ movb %al, -17(%rsp)
+ movq -24(%rsp), %rdx
+ movq %rdx, (%rcx)
+ jmp .LBL_2_36
+
+.LBL_2_49:
+
+ testl $1048575, -44(%rsp)
+ jne .LBL_2_41
+
+
+ cmpl $0, -48(%rsp)
+ jne .LBL_2_41
+
+
+ cmpl $2047, %r8d
+ je .LBL_2_39
+
+.LBL_2_53:
+
+ movsd 1920+__datan2_la_CoutTab(%rip), %xmm0
+ shlb $7, %dl
+ addsd 1928+__datan2_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %al
+ andb $127, %al
+ orb %dl, %al
+ movb %al, -17(%rsp)
+ movq -24(%rsp), %rdx
+ movq %rdx, (%rcx)
+ jmp .LBL_2_36
+
+.LBL_2_57:
+
+ cmpl $0, -48(%rsp)
+ jne .LBL_2_53
+ jmp .LBL_2_33
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_datan2_cout_rare_internal,@function
+ .size __svml_datan2_cout_rare_internal,.-__svml_datan2_cout_rare_internal
+..LN__svml_datan2_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_datan2_data_internal:
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 17919630
+ .long 3202334474
+ .long 17919630
+ .long 3202334474
+ .long 17919630
+ .long 3202334474
+ .long 17919630
+ .long 3202334474
+ .long 17919630
+ .long 3202334474
+ .long 17919630
+ .long 3202334474
+ .long 17919630
+ .long 3202334474
+ .long 17919630
+ .long 3202334474
+ .long 350522012
+ .long 1058555694
+ .long 350522012
+ .long 1058555694
+ .long 350522012
+ .long 1058555694
+ .long 350522012
+ .long 1058555694
+ .long 350522012
+ .long 1058555694
+ .long 350522012
+ .long 1058555694
+ .long 350522012
+ .long 1058555694
+ .long 350522012
+ .long 1058555694
+ .long 934004643
+ .long 3203726773
+ .long 934004643
+ .long 3203726773
+ .long 934004643
+ .long 3203726773
+ .long 934004643
+ .long 3203726773
+ .long 934004643
+ .long 3203726773
+ .long 934004643
+ .long 3203726773
+ .long 934004643
+ .long 3203726773
+ .long 934004643
+ .long 3203726773
+ .long 912675337
+ .long 1059908874
+ .long 912675337
+ .long 1059908874
+ .long 912675337
+ .long 1059908874
+ .long 912675337
+ .long 1059908874
+ .long 912675337
+ .long 1059908874
+ .long 912675337
+ .long 1059908874
+ .long 912675337
+ .long 1059908874
+ .long 912675337
+ .long 1059908874
+ .long 2476035107
+ .long 3209881212
+ .long 2476035107
+ .long 3209881212
+ .long 2476035107
+ .long 3209881212
+ .long 2476035107
+ .long 3209881212
+ .long 2476035107
+ .long 3209881212
+ .long 2476035107
+ .long 3209881212
+ .long 2476035107
+ .long 3209881212
+ .long 2476035107
+ .long 3209881212
+ .long 2927800243
+ .long 1064262173
+ .long 2927800243
+ .long 1064262173
+ .long 2927800243
+ .long 1064262173
+ .long 2927800243
+ .long 1064262173
+ .long 2927800243
+ .long 1064262173
+ .long 2927800243
+ .long 1064262173
+ .long 2927800243
+ .long 1064262173
+ .long 2927800243
+ .long 1064262173
+ .long 1636715437
+ .long 3213013740
+ .long 1636715437
+ .long 3213013740
+ .long 1636715437
+ .long 3213013740
+ .long 1636715437
+ .long 3213013740
+ .long 1636715437
+ .long 3213013740
+ .long 1636715437
+ .long 3213013740
+ .long 1636715437
+ .long 3213013740
+ .long 1636715437
+ .long 3213013740
+ .long 1712395941
+ .long 1066487628
+ .long 1712395941
+ .long 1066487628
+ .long 1712395941
+ .long 1066487628
+ .long 1712395941
+ .long 1066487628
+ .long 1712395941
+ .long 1066487628
+ .long 1712395941
+ .long 1066487628
+ .long 1712395941
+ .long 1066487628
+ .long 1712395941
+ .long 1066487628
+ .long 2961307292
+ .long 3214564995
+ .long 2961307292
+ .long 3214564995
+ .long 2961307292
+ .long 3214564995
+ .long 2961307292
+ .long 3214564995
+ .long 2961307292
+ .long 3214564995
+ .long 2961307292
+ .long 3214564995
+ .long 2961307292
+ .long 3214564995
+ .long 2961307292
+ .long 3214564995
+ .long 213298511
+ .long 1067542936
+ .long 213298511
+ .long 1067542936
+ .long 213298511
+ .long 1067542936
+ .long 213298511
+ .long 1067542936
+ .long 213298511
+ .long 1067542936
+ .long 213298511
+ .long 1067542936
+ .long 213298511
+ .long 1067542936
+ .long 213298511
+ .long 1067542936
+ .long 3848520124
+ .long 3215257506
+ .long 3848520124
+ .long 3215257506
+ .long 3848520124
+ .long 3215257506
+ .long 3848520124
+ .long 3215257506
+ .long 3848520124
+ .long 3215257506
+ .long 3848520124
+ .long 3215257506
+ .long 3848520124
+ .long 3215257506
+ .long 3848520124
+ .long 3215257506
+ .long 3159386171
+ .long 1067969551
+ .long 3159386171
+ .long 1067969551
+ .long 3159386171
+ .long 1067969551
+ .long 3159386171
+ .long 1067969551
+ .long 3159386171
+ .long 1067969551
+ .long 3159386171
+ .long 1067969551
+ .long 3159386171
+ .long 1067969551
+ .long 3159386171
+ .long 1067969551
+ .long 3936393556
+ .long 3215643233
+ .long 3936393556
+ .long 3215643233
+ .long 3936393556
+ .long 3215643233
+ .long 3936393556
+ .long 3215643233
+ .long 3936393556
+ .long 3215643233
+ .long 3936393556
+ .long 3215643233
+ .long 3936393556
+ .long 3215643233
+ .long 3936393556
+ .long 3215643233
+ .long 3177262543
+ .long 1068373833
+ .long 3177262543
+ .long 1068373833
+ .long 3177262543
+ .long 1068373833
+ .long 3177262543
+ .long 1068373833
+ .long 3177262543
+ .long 1068373833
+ .long 3177262543
+ .long 1068373833
+ .long 3177262543
+ .long 1068373833
+ .long 3177262543
+ .long 1068373833
+ .long 9713120
+ .long 3216052356
+ .long 9713120
+ .long 3216052356
+ .long 9713120
+ .long 3216052356
+ .long 9713120
+ .long 3216052356
+ .long 9713120
+ .long 3216052356
+ .long 9713120
+ .long 3216052356
+ .long 9713120
+ .long 3216052356
+ .long 9713120
+ .long 3216052356
+ .long 1227445841
+ .long 1068740906
+ .long 1227445841
+ .long 1068740906
+ .long 1227445841
+ .long 1068740906
+ .long 1227445841
+ .long 1068740906
+ .long 1227445841
+ .long 1068740906
+ .long 1227445841
+ .long 1068740906
+ .long 1227445841
+ .long 1068740906
+ .long 1227445841
+ .long 1068740906
+ .long 163240596
+ .long 3216459216
+ .long 163240596
+ .long 3216459216
+ .long 163240596
+ .long 3216459216
+ .long 163240596
+ .long 3216459216
+ .long 163240596
+ .long 3216459216
+ .long 163240596
+ .long 3216459216
+ .long 163240596
+ .long 3216459216
+ .long 163240596
+ .long 3216459216
+ .long 133682613
+ .long 1069314503
+ .long 133682613
+ .long 1069314503
+ .long 133682613
+ .long 1069314503
+ .long 133682613
+ .long 1069314503
+ .long 133682613
+ .long 1069314503
+ .long 133682613
+ .long 1069314503
+ .long 133682613
+ .long 1069314503
+ .long 133682613
+ .long 1069314503
+ .long 2448315847
+ .long 3217180964
+ .long 2448315847
+ .long 3217180964
+ .long 2448315847
+ .long 3217180964
+ .long 2448315847
+ .long 3217180964
+ .long 2448315847
+ .long 3217180964
+ .long 2448315847
+ .long 3217180964
+ .long 2448315847
+ .long 3217180964
+ .long 2448315847
+ .long 3217180964
+ .long 2576870964
+ .long 1070176665
+ .long 2576870964
+ .long 1070176665
+ .long 2576870964
+ .long 1070176665
+ .long 2576870964
+ .long 1070176665
+ .long 2576870964
+ .long 1070176665
+ .long 2576870964
+ .long 1070176665
+ .long 2576870964
+ .long 1070176665
+ .long 2576870964
+ .long 1070176665
+ .long 1431655365
+ .long 3218429269
+ .long 1431655365
+ .long 3218429269
+ .long 1431655365
+ .long 3218429269
+ .long 1431655365
+ .long 3218429269
+ .long 1431655365
+ .long 3218429269
+ .long 1431655365
+ .long 3218429269
+ .long 1431655365
+ .long 3218429269
+ .long 1431655365
+ .long 3218429269
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 2150629376
+ .long 2150629376
+ .long 2150629376
+ .long 2150629376
+ .long 2150629376
+ .long 2150629376
+ .long 2150629376
+ .long 2150629376
+ .long 2150629376
+ .long 2150629376
+ .long 2150629376
+ .long 2150629376
+ .long 2150629376
+ .long 2150629376
+ .long 2150629376
+ .long 2150629376
+ .long 4258267136
+ .long 4258267136
+ .long 4258267136
+ .long 4258267136
+ .long 4258267136
+ .long 4258267136
+ .long 4258267136
+ .long 4258267136
+ .long 4258267136
+ .long 4258267136
+ .long 4258267136
+ .long 4258267136
+ .long 4258267136
+ .long 4258267136
+ .long 4258267136
+ .long 4258267136
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 4293918720
+ .long 4293918720
+ .long 4293918720
+ .long 4293918720
+ .long 4293918720
+ .long 4293918720
+ .long 4293918720
+ .long 4293918720
+ .long 4293918720
+ .long 4293918720
+ .long 4293918720
+ .long 4293918720
+ .long 4293918720
+ .long 4293918720
+ .long 4293918720
+ .long 4293918720
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 133169152
+ .long 133169152
+ .long 133169152
+ .long 133169152
+ .long 133169152
+ .long 133169152
+ .long 133169152
+ .long 133169152
+ .long 133169152
+ .long 133169152
+ .long 133169152
+ .long 133169152
+ .long 133169152
+ .long 133169152
+ .long 133169152
+ .long 133169152
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .type __svml_datan2_data_internal,@object
+ .size __svml_datan2_data_internal,2304
+ .align 32
+__datan2_la_CoutTab:
+ .long 3892314112
+ .long 1069799150
+ .long 2332892550
+ .long 1039715405
+ .long 1342177280
+ .long 1070305495
+ .long 270726690
+ .long 1041535749
+ .long 939524096
+ .long 1070817911
+ .long 2253973841
+ .long 3188654726
+ .long 3221225472
+ .long 1071277294
+ .long 3853927037
+ .long 1043226911
+ .long 2818572288
+ .long 1071767563
+ .long 2677759107
+ .long 1044314101
+ .long 3355443200
+ .long 1072103591
+ .long 1636578514
+ .long 3191094734
+ .long 1476395008
+ .long 1072475260
+ .long 1864703685
+ .long 3188646936
+ .long 805306368
+ .long 1072747407
+ .long 192551812
+ .long 3192726267
+ .long 2013265920
+ .long 1072892781
+ .long 2240369452
+ .long 1043768538
+ .long 0
+ .long 1072999953
+ .long 3665168337
+ .long 3192705970
+ .long 402653184
+ .long 1073084787
+ .long 1227953434
+ .long 3192313277
+ .long 2013265920
+ .long 1073142981
+ .long 3853283127
+ .long 1045277487
+ .long 805306368
+ .long 1073187261
+ .long 1676192264
+ .long 3192868861
+ .long 134217728
+ .long 1073217000
+ .long 4290763938
+ .long 1042034855
+ .long 671088640
+ .long 1073239386
+ .long 994303084
+ .long 3189643768
+ .long 402653184
+ .long 1073254338
+ .long 1878067156
+ .long 1042652475
+ .long 1610612736
+ .long 1073265562
+ .long 670314820
+ .long 1045138554
+ .long 3221225472
+ .long 1073273048
+ .long 691126919
+ .long 3189987794
+ .long 3489660928
+ .long 1073278664
+ .long 1618990832
+ .long 3188194509
+ .long 1207959552
+ .long 1073282409
+ .long 2198872939
+ .long 1044806069
+ .long 3489660928
+ .long 1073285217
+ .long 2633982383
+ .long 1042307894
+ .long 939524096
+ .long 1073287090
+ .long 1059367786
+ .long 3189114230
+ .long 2281701376
+ .long 1073288494
+ .long 3158525533
+ .long 1044484961
+ .long 3221225472
+ .long 1073289430
+ .long 286581777
+ .long 1044893263
+ .long 4026531840
+ .long 1073290132
+ .long 2000245215
+ .long 3191647611
+ .long 134217728
+ .long 1073290601
+ .long 4205071590
+ .long 1045035927
+ .long 536870912
+ .long 1073290952
+ .long 2334392229
+ .long 1043447393
+ .long 805306368
+ .long 1073291186
+ .long 2281458177
+ .long 3188885569
+ .long 3087007744
+ .long 1073291361
+ .long 691611507
+ .long 1044733832
+ .long 3221225472
+ .long 1073291478
+ .long 1816229550
+ .long 1044363390
+ .long 2281701376
+ .long 1073291566
+ .long 1993843750
+ .long 3189837440
+ .long 134217728
+ .long 1073291625
+ .long 3654754496
+ .long 1044970837
+ .long 4026531840
+ .long 1073291668
+ .long 3224300229
+ .long 3191935390
+ .long 805306368
+ .long 1073291698
+ .long 2988777976
+ .long 3188950659
+ .long 536870912
+ .long 1073291720
+ .long 1030371341
+ .long 1043402665
+ .long 3221225472
+ .long 1073291734
+ .long 1524463765
+ .long 1044361356
+ .long 3087007744
+ .long 1073291745
+ .long 2754295320
+ .long 1044731036
+ .long 134217728
+ .long 1073291753
+ .long 3099629057
+ .long 1044970710
+ .long 2281701376
+ .long 1073291758
+ .long 962914160
+ .long 3189838838
+ .long 805306368
+ .long 1073291762
+ .long 3543908206
+ .long 3188950786
+ .long 4026531840
+ .long 1073291764
+ .long 1849909620
+ .long 3191935434
+ .long 3221225472
+ .long 1073291766
+ .long 1641333636
+ .long 1044361352
+ .long 536870912
+ .long 1073291768
+ .long 1373968792
+ .long 1043402654
+ .long 134217728
+ .long 1073291769
+ .long 2033191599
+ .long 1044970710
+ .long 3087007744
+ .long 1073291769
+ .long 4117947437
+ .long 1044731035
+ .long 805306368
+ .long 1073291770
+ .long 315378368
+ .long 3188950787
+ .long 2281701376
+ .long 1073291770
+ .long 2428571750
+ .long 3189838838
+ .long 3221225472
+ .long 1073291770
+ .long 1608007466
+ .long 1044361352
+ .long 4026531840
+ .long 1073291770
+ .long 1895711420
+ .long 3191935434
+ .long 134217728
+ .long 1073291771
+ .long 2031108713
+ .long 1044970710
+ .long 536870912
+ .long 1073291771
+ .long 1362518342
+ .long 1043402654
+ .long 805306368
+ .long 1073291771
+ .long 317461253
+ .long 3188950787
+ .long 939524096
+ .long 1073291771
+ .long 4117231784
+ .long 1044731035
+ .long 1073741824
+ .long 1073291771
+ .long 1607942376
+ .long 1044361352
+ .long 1207959552
+ .long 1073291771
+ .long 2428929577
+ .long 3189838838
+ .long 1207959552
+ .long 1073291771
+ .long 2031104645
+ .long 1044970710
+ .long 1342177280
+ .long 1073291771
+ .long 1895722602
+ .long 3191935434
+ .long 1342177280
+ .long 1073291771
+ .long 317465322
+ .long 3188950787
+ .long 1342177280
+ .long 1073291771
+ .long 1362515546
+ .long 1043402654
+ .long 1342177280
+ .long 1073291771
+ .long 1607942248
+ .long 1044361352
+ .long 1342177280
+ .long 1073291771
+ .long 4117231610
+ .long 1044731035
+ .long 1342177280
+ .long 1073291771
+ .long 2031104637
+ .long 1044970710
+ .long 1342177280
+ .long 1073291771
+ .long 1540251232
+ .long 1045150466
+ .long 1342177280
+ .long 1073291771
+ .long 2644671394
+ .long 1045270303
+ .long 1342177280
+ .long 1073291771
+ .long 2399244691
+ .long 1045360181
+ .long 1342177280
+ .long 1073291771
+ .long 803971124
+ .long 1045420100
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192879152
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192849193
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192826724
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192811744
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192800509
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192793019
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192787402
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192783657
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192780848
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192778976
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192777572
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192776635
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192775933
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192775465
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192775114
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774880
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192774704
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192774587
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192774500
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192774441
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192774397
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774368
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192774346
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192774331
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192774320
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192774313
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192774308
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774304
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192774301
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192774299
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192774298
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192774297
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192774296
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774296
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192774296
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1466225875
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1343512524
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1251477510
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1190120835
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1144103328
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1113424990
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1090416237
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1075077068
+ .long 3192774295
+ .long 1431655765
+ .long 3218429269
+ .long 2576978363
+ .long 1070176665
+ .long 2453154343
+ .long 3217180964
+ .long 4189149139
+ .long 1069314502
+ .long 1775019125
+ .long 3216459198
+ .long 273199057
+ .long 1068739452
+ .long 874748308
+ .long 3215993277
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1073741824
+ .long 1413754136
+ .long 1072243195
+ .long 856972295
+ .long 1015129638
+ .long 1413754136
+ .long 1073291771
+ .long 856972295
+ .long 1016178214
+ .long 1413754136
+ .long 1074340347
+ .long 856972295
+ .long 1017226790
+ .long 2134057426
+ .long 1073928572
+ .long 1285458442
+ .long 1016756537
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 0
+ .long 0
+ .long 2144337920
+ .long 0
+ .long 1048576
+ .long 33554432
+ .long 1101004800
+ .type __datan2_la_CoutTab,@object
+ .size __datan2_la_CoutTab,2008
+ .align 8
+.L_2il0floatpacket.31:
+ .long 0xffffffff,0xffffffff
+ .type .L_2il0floatpacket.31,@object
+ .size .L_2il0floatpacket.31,8
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * For 0.0 <= x <= 7.0/16.0: atan(x) = atan(0.0) + atan(s), where s=(x-0.0)/(1.0+0.0*x)
+ * For 7.0/16.0 <= x <= 11.0/16.0: atan(x) = atan(0.5) + atan(s), where s=(x-0.5)/(1.0+0.5*x)
+ * For 11.0/16.0 <= x <= 19.0/16.0: atan(x) = atan(1.0) + atan(s), where s=(x-1.0)/(1.0+1.0*x)
+ * For 19.0/16.0 <= x <= 39.0/16.0: atan(x) = atan(1.5) + atan(s), where s=(x-1.5)/(1.0+1.5*x)
+ * For 39.0/16.0 <= x <= inf : atan(x) = atan(inf) + atan(s), where s=-1.0/x
+ * Where atan(s) ~= s+s^3*Poly11(s^2) on interval |s|<7.0/0.16.
+ * --
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_atan2f16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_atan2f16
+
+__svml_atan2f16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $256, %rsp
+ xorl %edx, %edx
+
+
+ vmovups 256+__svml_satan2_data_internal(%rip), %zmm6
+ vmovups 64+__svml_satan2_data_internal(%rip), %zmm3
+
+/* Testing on working interval. */
+ vmovups 1024+__svml_satan2_data_internal(%rip), %zmm9
+ vmovups 1088+__svml_satan2_data_internal(%rip), %zmm14
+
+/*
+ * 1) If y<x then a= y, b=x, PIO2=0
+ * 2) If y>x then a=-x, b=y, PIO2=Pi/2
+ */
+ vmovups 320+__svml_satan2_data_internal(%rip), %zmm4
+ vpternlogd $255, %zmm13, %zmm13, %zmm13
+ vmovaps %zmm1, %zmm8
+ vandps %zmm6, %zmm8, %zmm2
+ vandps %zmm6, %zmm0, %zmm1
+ vorps 192+__svml_satan2_data_internal(%rip), %zmm2, %zmm5
+ vpsubd %zmm9, %zmm2, %zmm10
+ vpsubd %zmm9, %zmm1, %zmm12
+ vxorps %zmm2, %zmm8, %zmm7
+ vxorps %zmm1, %zmm0, %zmm6
+ vcmpps $17, {sae}, %zmm2, %zmm1, %k1
+ vpcmpgtd %zmm10, %zmm14, %k2
+ vpcmpgtd %zmm12, %zmm14, %k3
+ vmovups 576+__svml_satan2_data_internal(%rip), %zmm14
+ vblendmps %zmm1, %zmm5, %zmm11{%k1}
+ vblendmps %zmm2, %zmm1, %zmm5{%k1}
+ vxorps %zmm4, %zmm4, %zmm4{%k1}
+
+/*
+ * Division a/b.
+ * Enabled when FMA is available and
+ * performance is better with NR iteration
+ */
+ vrcp14ps %zmm5, %zmm15
+ vfnmadd231ps {rn-sae}, %zmm5, %zmm15, %zmm3
+ vfmadd213ps {rn-sae}, %zmm15, %zmm3, %zmm15
+ vmulps {rn-sae}, %zmm15, %zmm11, %zmm3
+ vfnmadd231ps {rn-sae}, %zmm5, %zmm3, %zmm11
+ vfmadd213ps {rn-sae}, %zmm3, %zmm11, %zmm15
+ vmovups 448+__svml_satan2_data_internal(%rip), %zmm11
+ vpternlogd $255, %zmm3, %zmm3, %zmm3
+
+/* Polynomial. */
+ vmulps {rn-sae}, %zmm15, %zmm15, %zmm9
+ vpandnd %zmm10, %zmm10, %zmm13{%k2}
+ vmulps {rn-sae}, %zmm9, %zmm9, %zmm10
+ vfmadd231ps {rn-sae}, %zmm10, %zmm11, %zmm14
+ vmovups 640+__svml_satan2_data_internal(%rip), %zmm11
+ vpandnd %zmm12, %zmm12, %zmm3{%k3}
+ vpord %zmm3, %zmm13, %zmm3
+ vmovups 704+__svml_satan2_data_internal(%rip), %zmm13
+ vmovups 512+__svml_satan2_data_internal(%rip), %zmm12
+ vptestmd %zmm3, %zmm3, %k0
+ vfmadd213ps {rn-sae}, %zmm13, %zmm10, %zmm14
+ vfmadd231ps {rn-sae}, %zmm10, %zmm12, %zmm11
+ vmovups 768+__svml_satan2_data_internal(%rip), %zmm12
+ vmovups 832+__svml_satan2_data_internal(%rip), %zmm13
+
+/* =========== Special branch for fast (vector) processing of zero arguments ================ */
+ kortestw %k0, %k0
+ vfmadd213ps {rn-sae}, %zmm12, %zmm10, %zmm11
+ vmovups 896+__svml_satan2_data_internal(%rip), %zmm12
+ vfmadd213ps {rn-sae}, %zmm13, %zmm10, %zmm14
+ vmovups 960+__svml_satan2_data_internal(%rip), %zmm13
+ vfmadd213ps {rn-sae}, %zmm12, %zmm10, %zmm11
+ vfmadd213ps {rn-sae}, %zmm13, %zmm10, %zmm14
+ vfmadd213ps {rn-sae}, %zmm14, %zmm9, %zmm11
+
+/* Reconstruction. */
+ vfmadd213ps {rn-sae}, %zmm4, %zmm15, %zmm11
+
+/* if x<0, sPI = Pi, else sPI =0 */
+ vmovups __svml_satan2_data_internal(%rip), %zmm15
+ vorps %zmm7, %zmm11, %zmm9
+ vcmpps $18, {sae}, %zmm15, %zmm8, %k1
+ vmovups 384+__svml_satan2_data_internal(%rip), %zmm11
+ vaddps {rn-sae}, %zmm11, %zmm9, %zmm9{%k1}
+ vorps %zmm6, %zmm9, %zmm10
+ jne .LBL_1_12
+
+.LBL_1_2:
+
+
+/*
+ * =========== Special branch for fast (vector) processing of zero arguments ================
+ * -------------- The end of implementation ----------------
+ */
+ testl %edx, %edx
+ jne .LBL_1_4
+
+.LBL_1_3:
+
+
+/* no invcbrt in libm, so taking it out here */
+ vmovaps %zmm10, %zmm0
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_4:
+
+ vmovups %zmm0, 64(%rsp)
+ vmovups %zmm8, 128(%rsp)
+ vmovups %zmm10, 192(%rsp)
+ je .LBL_1_3
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x28, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x38, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x18, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x08, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_8:
+
+ btl %r12d, %r13d
+ jc .LBL_1_11
+
+.LBL_1_9:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_8
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 192(%rsp), %zmm10
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_3
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x28, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x38, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x18, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x08, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_11:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+ lea 192(%rsp,%r12,4), %rdx
+
+ call __svml_satan2_cout_rare_internal
+ jmp .LBL_1_9
+ .cfi_restore 4
+ .cfi_restore 5
+ .cfi_restore 12
+ .cfi_restore 13
+ .cfi_restore 122
+ .cfi_restore 123
+ .cfi_restore 124
+ .cfi_restore 125
+
+.LBL_1_12:
+
+
+/* Check if at least on of Y or Y is zero: iAXAYZERO */
+ vmovups __svml_satan2_data_internal(%rip), %zmm9
+
+/* Check if both X & Y are not NaNs: iXYnotNAN */
+ vcmpps $3, {sae}, %zmm8, %zmm8, %k1
+ vcmpps $3, {sae}, %zmm0, %zmm0, %k2
+ vpcmpd $4, %zmm9, %zmm2, %k3
+ vpternlogd $255, %zmm12, %zmm12, %zmm12
+ vpternlogd $255, %zmm13, %zmm13, %zmm13
+ vpternlogd $255, %zmm14, %zmm14, %zmm14
+ vpandnd %zmm8, %zmm8, %zmm12{%k1}
+ vpcmpd $4, %zmm9, %zmm1, %k1
+ vpandnd %zmm0, %zmm0, %zmm13{%k2}
+
+/*
+ * -------- Path for zero arguments (at least one of both) --------------
+ * Check if both args are zeros (den. is zero)
+ */
+ vcmpps $4, {sae}, %zmm9, %zmm5, %k2
+ vandps %zmm13, %zmm12, %zmm12
+ vpandnd %zmm2, %zmm2, %zmm14{%k3}
+ vpternlogd $255, %zmm2, %zmm2, %zmm2
+
+/* Res = sign(Y)*(X<0)?(PIO2+PI):PIO2 */
+ vpcmpgtd %zmm8, %zmm9, %k3
+ vpandnd %zmm1, %zmm1, %zmm2{%k1}
+ vpord %zmm2, %zmm14, %zmm15
+ vpternlogd $255, %zmm2, %zmm2, %zmm2
+ vpandnd %zmm5, %zmm5, %zmm2{%k2}
+
+/* Set sPIO2 to zero if den. is zero */
+ vpandnd %zmm4, %zmm2, %zmm4
+ vpandd %zmm2, %zmm9, %zmm5
+ vpord %zmm5, %zmm4, %zmm2
+ vorps %zmm7, %zmm2, %zmm7
+ vaddps {rn-sae}, %zmm11, %zmm7, %zmm7{%k3}
+ vorps %zmm6, %zmm7, %zmm6
+
+/* Check if at least on of Y or Y is zero and not NaN: iAXAYZEROnotNAN */
+ vpandd %zmm12, %zmm15, %zmm1
+
+/* Exclude from previous callout mask zero (and not NaN) arguments */
+ vpandnd %zmm3, %zmm1, %zmm3
+
+/* Go to callout */
+ vptestmd %zmm3, %zmm3, %k0
+ kmovw %k0, %edx
+
+/* Merge results from main and spec path */
+ vpandnd %zmm10, %zmm1, %zmm10
+ vpandd %zmm1, %zmm6, %zmm11
+ vpord %zmm11, %zmm10, %zmm10
+ jmp .LBL_1_2
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_atan2f16,@function
+ .size __svml_atan2f16,.-__svml_atan2f16
+..LN__svml_atan2f16.0:
+
+.L_2__routine_start___svml_satan2_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_satan2_cout_rare_internal:
+
+
+ .cfi_startproc
+..L61:
+
+ pxor %xmm0, %xmm0
+ movss (%rdi), %xmm3
+ pxor %xmm1, %xmm1
+ movss (%rsi), %xmm2
+ movq %rdx, %r8
+ cvtss2sd %xmm3, %xmm0
+ cvtss2sd %xmm2, %xmm1
+ movss %xmm3, -32(%rsp)
+ movss %xmm2, -28(%rsp)
+ movsd %xmm0, -48(%rsp)
+ movsd %xmm1, -40(%rsp)
+ movzwl -30(%rsp), %edi
+ andl $32640, %edi
+ movb -25(%rsp), %dl
+ movzwl -42(%rsp), %eax
+ andb $-128, %dl
+ movzwl -34(%rsp), %r9d
+ andl $32752, %eax
+ andl $32752, %r9d
+ shrl $7, %edi
+ movb -29(%rsp), %cl
+ shrb $7, %cl
+ shrb $7, %dl
+ shrl $4, %eax
+ shrl $4, %r9d
+ cmpl $255, %edi
+ je .LBL_2_35
+
+
+ movzwl -26(%rsp), %esi
+ andl $32640, %esi
+ cmpl $32640, %esi
+ je .LBL_2_35
+
+
+ testl %eax, %eax
+ jne .LBL_2_5
+
+
+ testl $8388607, -32(%rsp)
+ je .LBL_2_30
+
+.LBL_2_5:
+
+ testl %r9d, %r9d
+ jne .LBL_2_7
+
+
+ testl $8388607, -28(%rsp)
+ je .LBL_2_27
+
+.LBL_2_7:
+
+ negl %r9d
+ movsd %xmm0, -48(%rsp)
+ addl %eax, %r9d
+ movsd %xmm1, -40(%rsp)
+ movb -41(%rsp), %dil
+ movb -33(%rsp), %sil
+ andb $127, %dil
+ andb $127, %sil
+ cmpl $-54, %r9d
+ jle .LBL_2_22
+
+
+ cmpl $54, %r9d
+ jge .LBL_2_19
+
+
+ movb %sil, -33(%rsp)
+ movb %dil, -41(%rsp)
+ testb %dl, %dl
+ jne .LBL_2_11
+
+
+ movsd 1976+__satan2_la_CoutTab(%rip), %xmm1
+ movaps %xmm1, %xmm0
+ jmp .LBL_2_12
+
+.LBL_2_11:
+
+ movsd 1936+__satan2_la_CoutTab(%rip), %xmm1
+ movsd 1944+__satan2_la_CoutTab(%rip), %xmm0
+
+.LBL_2_12:
+
+ movsd -48(%rsp), %xmm4
+ movsd -40(%rsp), %xmm2
+ movaps %xmm4, %xmm5
+ divsd %xmm2, %xmm5
+ movzwl -42(%rsp), %esi
+ movsd %xmm5, -16(%rsp)
+ testl %eax, %eax
+ jle .LBL_2_34
+
+
+ cmpl $2046, %eax
+ jge .LBL_2_15
+
+
+ andl $-32753, %esi
+ addl $-1023, %eax
+ movsd %xmm4, -48(%rsp)
+ addl $16368, %esi
+ movw %si, -42(%rsp)
+ jmp .LBL_2_16
+
+.LBL_2_15:
+
+ movsd 1992+__satan2_la_CoutTab(%rip), %xmm3
+ movl $1022, %eax
+ mulsd %xmm3, %xmm4
+ movsd %xmm4, -48(%rsp)
+
+.LBL_2_16:
+
+ negl %eax
+ movq 1888+__satan2_la_CoutTab(%rip), %rsi
+ addl $1023, %eax
+ movq %rsi, -40(%rsp)
+ andl $2047, %eax
+ shrq $48, %rsi
+ shll $4, %eax
+ andl $-32753, %esi
+ orl %eax, %esi
+ movw %si, -34(%rsp)
+ movsd -40(%rsp), %xmm3
+ mulsd %xmm3, %xmm2
+ comisd 1880+__satan2_la_CoutTab(%rip), %xmm5
+ jb .LBL_2_18
+
+
+ movsd 2000+__satan2_la_CoutTab(%rip), %xmm12
+ movaps %xmm2, %xmm3
+ mulsd %xmm2, %xmm12
+ movsd %xmm12, -72(%rsp)
+ movsd -72(%rsp), %xmm13
+ movsd %xmm5, -24(%rsp)
+ subsd %xmm2, %xmm13
+ movsd %xmm13, -64(%rsp)
+ movsd -72(%rsp), %xmm15
+ movsd -64(%rsp), %xmm14
+ movl -20(%rsp), %edi
+ movl %edi, %r9d
+ andl $-524288, %edi
+ andl $-1048576, %r9d
+ addl $262144, %edi
+ subsd %xmm14, %xmm15
+ movsd %xmm15, -72(%rsp)
+ andl $1048575, %edi
+ movsd -72(%rsp), %xmm4
+ orl %edi, %r9d
+ movl $0, -24(%rsp)
+ subsd %xmm4, %xmm3
+ movl %r9d, -20(%rsp)
+ movsd %xmm3, -64(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd -24(%rsp), %xmm11
+ movsd -64(%rsp), %xmm9
+ mulsd %xmm11, %xmm5
+ mulsd %xmm11, %xmm9
+ movsd 1968+__satan2_la_CoutTab(%rip), %xmm8
+ mulsd %xmm8, %xmm5
+ mulsd %xmm8, %xmm9
+ movaps %xmm5, %xmm7
+ movzwl -10(%rsp), %esi
+ addsd %xmm9, %xmm7
+ movsd %xmm7, -72(%rsp)
+ andl $32752, %esi
+ movsd -72(%rsp), %xmm6
+ shrl $4, %esi
+ subsd %xmm6, %xmm5
+ movl -12(%rsp), %eax
+ addsd %xmm5, %xmm9
+ movsd %xmm9, -64(%rsp)
+ andl $1048575, %eax
+ movsd -48(%rsp), %xmm9
+ movsd -72(%rsp), %xmm3
+ movaps %xmm9, %xmm12
+ movsd -64(%rsp), %xmm10
+ movaps %xmm9, %xmm14
+ movaps %xmm9, %xmm6
+ addsd %xmm3, %xmm12
+ movsd %xmm12, -72(%rsp)
+ movsd -72(%rsp), %xmm13
+ shll $20, %esi
+ subsd %xmm13, %xmm14
+ movsd %xmm14, -64(%rsp)
+ orl %eax, %esi
+ movsd -72(%rsp), %xmm4
+ addl $-1069547520, %esi
+ movsd -64(%rsp), %xmm15
+ movl $113, %eax
+ movsd 2000+__satan2_la_CoutTab(%rip), %xmm13
+ addsd %xmm15, %xmm4
+ movsd %xmm4, -56(%rsp)
+ movsd -64(%rsp), %xmm8
+ sarl $19, %esi
+ addsd %xmm3, %xmm8
+ movsd %xmm8, -64(%rsp)
+ cmpl $113, %esi
+ movsd -56(%rsp), %xmm7
+ cmovl %esi, %eax
+ subsd %xmm7, %xmm6
+ movsd %xmm6, -56(%rsp)
+ addl %eax, %eax
+ movsd -64(%rsp), %xmm12
+ lea __satan2_la_CoutTab(%rip), %rsi
+ movsd -56(%rsp), %xmm5
+ movslq %eax, %rax
+ addsd %xmm5, %xmm12
+ movsd %xmm12, -56(%rsp)
+ movsd -72(%rsp), %xmm7
+ mulsd %xmm7, %xmm13
+ movsd -56(%rsp), %xmm8
+ movsd %xmm13, -72(%rsp)
+ addsd %xmm10, %xmm8
+ movsd -72(%rsp), %xmm4
+ movaps %xmm9, %xmm10
+ mulsd 2000+__satan2_la_CoutTab(%rip), %xmm10
+ subsd %xmm7, %xmm4
+ movsd %xmm4, -64(%rsp)
+ movsd -72(%rsp), %xmm3
+ movsd -64(%rsp), %xmm14
+ subsd %xmm14, %xmm3
+ movsd %xmm3, -72(%rsp)
+ movsd -72(%rsp), %xmm15
+ subsd %xmm15, %xmm7
+ movsd %xmm7, -64(%rsp)
+ movsd -72(%rsp), %xmm7
+ movsd -64(%rsp), %xmm4
+ movsd %xmm10, -72(%rsp)
+ movaps %xmm2, %xmm10
+ addsd %xmm4, %xmm8
+ movsd -72(%rsp), %xmm4
+ subsd -48(%rsp), %xmm4
+ movsd %xmm4, -64(%rsp)
+ movsd -72(%rsp), %xmm6
+ movsd -64(%rsp), %xmm3
+ subsd %xmm3, %xmm6
+ movaps %xmm2, %xmm3
+ movsd %xmm6, -72(%rsp)
+ movsd -72(%rsp), %xmm5
+ subsd %xmm5, %xmm9
+ movsd %xmm9, -64(%rsp)
+ movsd -72(%rsp), %xmm12
+ movsd -64(%rsp), %xmm9
+ mulsd %xmm11, %xmm12
+ mulsd %xmm11, %xmm9
+ movaps %xmm12, %xmm11
+ addsd %xmm9, %xmm11
+ movsd %xmm11, -72(%rsp)
+ movsd -72(%rsp), %xmm4
+ subsd %xmm4, %xmm12
+ addsd %xmm9, %xmm12
+ movsd %xmm12, -64(%rsp)
+ movsd -72(%rsp), %xmm15
+ movsd -64(%rsp), %xmm6
+ addsd %xmm15, %xmm3
+ movsd %xmm3, -72(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd 2000+__satan2_la_CoutTab(%rip), %xmm3
+ subsd %xmm5, %xmm10
+ movsd %xmm10, -64(%rsp)
+ movsd -72(%rsp), %xmm13
+ movsd -64(%rsp), %xmm11
+ addsd %xmm11, %xmm13
+ movsd %xmm13, -56(%rsp)
+ movsd -64(%rsp), %xmm14
+ movsd 2000+__satan2_la_CoutTab(%rip), %xmm13
+ addsd %xmm14, %xmm15
+ movsd %xmm15, -64(%rsp)
+ movsd -56(%rsp), %xmm4
+ movsd 1888+__satan2_la_CoutTab(%rip), %xmm14
+ subsd %xmm4, %xmm2
+ movsd %xmm2, -56(%rsp)
+ movsd -64(%rsp), %xmm4
+ movsd -56(%rsp), %xmm2
+ addsd %xmm2, %xmm4
+ movsd %xmm4, -56(%rsp)
+ movsd -72(%rsp), %xmm12
+ mulsd %xmm12, %xmm3
+ movsd -56(%rsp), %xmm5
+ movsd %xmm3, -72(%rsp)
+ addsd %xmm6, %xmm5
+ movsd -72(%rsp), %xmm9
+ subsd %xmm12, %xmm9
+ movsd %xmm9, -64(%rsp)
+ movsd -72(%rsp), %xmm10
+ movsd -64(%rsp), %xmm2
+ subsd %xmm2, %xmm10
+ movsd %xmm10, -72(%rsp)
+ movsd -72(%rsp), %xmm11
+ subsd %xmm11, %xmm12
+ movsd %xmm12, -64(%rsp)
+ movsd -72(%rsp), %xmm9
+ divsd %xmm9, %xmm14
+ mulsd %xmm14, %xmm13
+ movsd -64(%rsp), %xmm10
+ movsd %xmm13, -64(%rsp)
+ addsd %xmm10, %xmm5
+ movsd -64(%rsp), %xmm15
+ movsd 1888+__satan2_la_CoutTab(%rip), %xmm12
+ subsd %xmm14, %xmm15
+ movsd %xmm15, -56(%rsp)
+ movsd -64(%rsp), %xmm2
+ movsd -56(%rsp), %xmm4
+ movsd 2000+__satan2_la_CoutTab(%rip), %xmm13
+ subsd %xmm4, %xmm2
+ movsd %xmm2, -56(%rsp)
+ movsd -56(%rsp), %xmm3
+ mulsd %xmm3, %xmm9
+ movsd -56(%rsp), %xmm11
+ subsd %xmm9, %xmm12
+ mulsd %xmm11, %xmm5
+ movsd %xmm5, -64(%rsp)
+ movsd -64(%rsp), %xmm5
+ subsd %xmm5, %xmm12
+ movsd %xmm12, -64(%rsp)
+ movsd -64(%rsp), %xmm2
+ movq -56(%rsp), %r10
+ movsd -64(%rsp), %xmm6
+ movsd -56(%rsp), %xmm4
+ movq %r10, -40(%rsp)
+ movsd -40(%rsp), %xmm3
+ movaps %xmm3, %xmm5
+ addsd 1888+__satan2_la_CoutTab(%rip), %xmm2
+ mulsd %xmm7, %xmm5
+ mulsd %xmm6, %xmm2
+ mulsd %xmm4, %xmm2
+ mulsd %xmm2, %xmm7
+ mulsd %xmm8, %xmm2
+ mulsd %xmm3, %xmm8
+ addsd %xmm2, %xmm7
+ movsd 1872+__satan2_la_CoutTab(%rip), %xmm3
+ addsd %xmm8, %xmm7
+ movsd %xmm7, -72(%rsp)
+ movaps %xmm5, %xmm7
+ movsd -72(%rsp), %xmm4
+ movsd 2000+__satan2_la_CoutTab(%rip), %xmm6
+ addsd %xmm4, %xmm7
+ movsd %xmm7, -72(%rsp)
+ movsd -72(%rsp), %xmm8
+ subsd %xmm8, %xmm5
+ addsd %xmm4, %xmm5
+ movsd %xmm5, -64(%rsp)
+ movsd -72(%rsp), %xmm11
+ movaps %xmm11, %xmm2
+ mulsd %xmm11, %xmm2
+ mulsd %xmm11, %xmm6
+ mulsd %xmm2, %xmm3
+ movsd -64(%rsp), %xmm4
+ movsd %xmm6, -72(%rsp)
+ movsd -72(%rsp), %xmm7
+ addsd 1864+__satan2_la_CoutTab(%rip), %xmm3
+ subsd %xmm11, %xmm7
+ mulsd %xmm2, %xmm3
+ movsd %xmm7, -64(%rsp)
+ movsd -72(%rsp), %xmm9
+ movsd -64(%rsp), %xmm8
+ addsd 1856+__satan2_la_CoutTab(%rip), %xmm3
+ subsd %xmm8, %xmm9
+ mulsd %xmm2, %xmm3
+ movsd %xmm9, -72(%rsp)
+ movsd -72(%rsp), %xmm10
+ addsd 1848+__satan2_la_CoutTab(%rip), %xmm3
+ subsd %xmm10, %xmm11
+ mulsd %xmm2, %xmm3
+ movsd %xmm11, -64(%rsp)
+ addsd 1840+__satan2_la_CoutTab(%rip), %xmm3
+ mulsd %xmm2, %xmm3
+ addsd 1832+__satan2_la_CoutTab(%rip), %xmm3
+ mulsd %xmm2, %xmm3
+ addsd 1824+__satan2_la_CoutTab(%rip), %xmm3
+ mulsd %xmm2, %xmm3
+ mulsd %xmm3, %xmm13
+ movsd -72(%rsp), %xmm2
+ movsd -64(%rsp), %xmm12
+ movsd %xmm13, -72(%rsp)
+ addsd %xmm12, %xmm4
+ movsd -72(%rsp), %xmm14
+ subsd %xmm3, %xmm14
+ movsd %xmm14, -64(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd -64(%rsp), %xmm15
+ subsd %xmm15, %xmm5
+ movsd %xmm5, -72(%rsp)
+ movsd -72(%rsp), %xmm6
+ subsd %xmm6, %xmm3
+ movsd %xmm3, -64(%rsp)
+ movsd -72(%rsp), %xmm6
+ movsd -64(%rsp), %xmm5
+ movaps %xmm6, %xmm12
+ movaps %xmm5, %xmm3
+ mulsd %xmm4, %xmm6
+ mulsd %xmm4, %xmm3
+ mulsd %xmm2, %xmm5
+ mulsd %xmm2, %xmm12
+ addsd %xmm3, %xmm6
+ movaps %xmm12, %xmm7
+ movaps %xmm12, %xmm8
+ addsd %xmm5, %xmm6
+ addsd %xmm2, %xmm7
+ movsd %xmm6, -72(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd %xmm7, -72(%rsp)
+ movsd -72(%rsp), %xmm3
+ subsd %xmm3, %xmm8
+ movsd %xmm8, -64(%rsp)
+ movsd -72(%rsp), %xmm10
+ movsd -64(%rsp), %xmm9
+ addsd %xmm9, %xmm10
+ movsd %xmm10, -56(%rsp)
+ movsd -64(%rsp), %xmm11
+ addsd %xmm11, %xmm2
+ movsd %xmm2, -64(%rsp)
+ movsd -56(%rsp), %xmm2
+ subsd %xmm2, %xmm12
+ movsd %xmm12, -56(%rsp)
+ movsd -64(%rsp), %xmm14
+ movsd -56(%rsp), %xmm13
+ addsd %xmm13, %xmm14
+ movsd %xmm14, -56(%rsp)
+ movq -72(%rsp), %r11
+ movsd -56(%rsp), %xmm15
+ movq %r11, -40(%rsp)
+ addsd %xmm15, %xmm4
+ movsd -40(%rsp), %xmm8
+ addsd %xmm5, %xmm4
+ movsd %xmm4, -32(%rsp)
+ movaps %xmm8, %xmm4
+ movaps %xmm8, %xmm2
+ addsd (%rsi,%rax,8), %xmm4
+ movsd %xmm4, -72(%rsp)
+ movsd -72(%rsp), %xmm4
+ subsd %xmm4, %xmm2
+ movsd %xmm2, -64(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd -64(%rsp), %xmm3
+ addsd %xmm3, %xmm5
+ movsd %xmm5, -56(%rsp)
+ movsd -64(%rsp), %xmm6
+ addsd (%rsi,%rax,8), %xmm6
+ movsd %xmm6, -64(%rsp)
+ movsd -56(%rsp), %xmm7
+ subsd %xmm7, %xmm8
+ movsd %xmm8, -56(%rsp)
+ movsd -64(%rsp), %xmm10
+ movsd -56(%rsp), %xmm9
+ addsd %xmm9, %xmm10
+ movsd %xmm10, -56(%rsp)
+ movq -72(%rsp), %rdi
+ movq %rdi, -40(%rsp)
+
+
+ movsd -56(%rsp), %xmm2
+ movaps %xmm1, %xmm3
+ shrq $56, %rdi
+ addsd -32(%rsp), %xmm2
+ shlb $7, %cl
+ addsd 8(%rsi,%rax,8), %xmm2
+ movb %dl, %al
+ andb $127, %dil
+ shlb $7, %al
+ movsd %xmm2, -32(%rsp)
+ orb %al, %dil
+ movb %dil, -33(%rsp)
+ movsd -40(%rsp), %xmm9
+ movaps %xmm9, %xmm5
+ addsd %xmm9, %xmm3
+ movsd %xmm3, -72(%rsp)
+ movsd -72(%rsp), %xmm4
+ movb -25(%rsp), %sil
+ movb %sil, %r9b
+ shrb $7, %sil
+ subsd %xmm4, %xmm5
+ movsd %xmm5, -64(%rsp)
+ movsd -72(%rsp), %xmm7
+ movsd -64(%rsp), %xmm6
+ xorb %sil, %dl
+ andb $127, %r9b
+ shlb $7, %dl
+ addsd %xmm6, %xmm7
+ movsd %xmm7, -56(%rsp)
+ movsd -64(%rsp), %xmm8
+ addsd %xmm8, %xmm1
+ movsd %xmm1, -64(%rsp)
+ orb %dl, %r9b
+ movsd -56(%rsp), %xmm1
+ movb %r9b, -25(%rsp)
+ subsd %xmm1, %xmm9
+ movsd %xmm9, -56(%rsp)
+ movsd -64(%rsp), %xmm11
+ movsd -56(%rsp), %xmm10
+ addsd %xmm10, %xmm11
+ movsd %xmm11, -56(%rsp)
+ movq -72(%rsp), %rdx
+ movsd -56(%rsp), %xmm12
+ movq %rdx, -40(%rsp)
+ addsd %xmm12, %xmm0
+ movsd -40(%rsp), %xmm13
+ addsd -32(%rsp), %xmm0
+ movsd %xmm0, -32(%rsp)
+ addsd %xmm0, %xmm13
+ movsd %xmm13, -24(%rsp)
+ movb -17(%rsp), %r10b
+ andb $127, %r10b
+ orb %cl, %r10b
+ movb %r10b, -17(%rsp)
+ movsd -24(%rsp), %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ movss %xmm0, (%r8)
+ jmp .LBL_2_33
+
+.LBL_2_18:
+
+ movsd -48(%rsp), %xmm12
+ movb %dl, %dil
+ movaps %xmm12, %xmm7
+ mulsd 2000+__satan2_la_CoutTab(%rip), %xmm7
+ shlb $7, %dil
+ shlb $7, %cl
+ movsd %xmm7, -72(%rsp)
+ movsd -72(%rsp), %xmm8
+ movsd 2000+__satan2_la_CoutTab(%rip), %xmm13
+ movsd 1888+__satan2_la_CoutTab(%rip), %xmm7
+ mulsd %xmm2, %xmm13
+ subsd -48(%rsp), %xmm8
+ movsd %xmm8, -64(%rsp)
+ movsd -72(%rsp), %xmm10
+ movsd -64(%rsp), %xmm9
+ subsd %xmm9, %xmm10
+ movsd %xmm10, -72(%rsp)
+ movsd -72(%rsp), %xmm11
+ subsd %xmm11, %xmm12
+ movsd %xmm12, -64(%rsp)
+ movsd -72(%rsp), %xmm6
+ movsd -64(%rsp), %xmm5
+ movsd %xmm13, -72(%rsp)
+ movsd -72(%rsp), %xmm14
+ subsd %xmm2, %xmm14
+ movsd %xmm14, -64(%rsp)
+ movsd -72(%rsp), %xmm4
+ movsd -64(%rsp), %xmm15
+ subsd %xmm15, %xmm4
+ movsd %xmm4, -72(%rsp)
+ movsd -72(%rsp), %xmm3
+ movsd 1888+__satan2_la_CoutTab(%rip), %xmm4
+ subsd %xmm3, %xmm2
+ movsd %xmm2, -64(%rsp)
+ movsd -72(%rsp), %xmm12
+ divsd %xmm12, %xmm7
+ movsd 2000+__satan2_la_CoutTab(%rip), %xmm2
+ mulsd %xmm7, %xmm2
+ movsd -64(%rsp), %xmm14
+ movsd %xmm2, -64(%rsp)
+ movsd -64(%rsp), %xmm8
+ subsd %xmm7, %xmm8
+ movsd %xmm8, -56(%rsp)
+ movsd -64(%rsp), %xmm10
+ movsd -56(%rsp), %xmm9
+ subsd %xmm9, %xmm10
+ movsd %xmm10, -56(%rsp)
+ movsd -56(%rsp), %xmm11
+ mulsd %xmm11, %xmm12
+ movsd -56(%rsp), %xmm13
+ subsd %xmm12, %xmm4
+ mulsd %xmm13, %xmm14
+ movsd %xmm14, -64(%rsp)
+ movsd -64(%rsp), %xmm15
+ movsd 2000+__satan2_la_CoutTab(%rip), %xmm13
+ subsd %xmm15, %xmm4
+ movsd %xmm4, -64(%rsp)
+ movsd -64(%rsp), %xmm7
+ movq -56(%rsp), %rax
+ movsd -64(%rsp), %xmm2
+ movsd -56(%rsp), %xmm3
+ movq %rax, -40(%rsp)
+ movsd -40(%rsp), %xmm8
+ movaps %xmm8, %xmm9
+ addsd 1888+__satan2_la_CoutTab(%rip), %xmm7
+ mulsd %xmm6, %xmm9
+ mulsd %xmm5, %xmm8
+ mulsd %xmm2, %xmm7
+ movsd -16(%rsp), %xmm2
+ mulsd %xmm2, %xmm2
+ mulsd %xmm3, %xmm7
+ movsd 1872+__satan2_la_CoutTab(%rip), %xmm3
+ mulsd %xmm2, %xmm3
+ mulsd %xmm7, %xmm6
+ mulsd %xmm5, %xmm7
+ addsd 1864+__satan2_la_CoutTab(%rip), %xmm3
+ addsd %xmm7, %xmm6
+ mulsd %xmm2, %xmm3
+ addsd %xmm8, %xmm6
+ addsd 1856+__satan2_la_CoutTab(%rip), %xmm3
+ mulsd %xmm2, %xmm3
+ movaps %xmm9, %xmm5
+ movsd %xmm6, -72(%rsp)
+ movsd -72(%rsp), %xmm4
+ addsd 1848+__satan2_la_CoutTab(%rip), %xmm3
+ addsd %xmm4, %xmm5
+ mulsd %xmm2, %xmm3
+ movsd %xmm5, -72(%rsp)
+ movsd -72(%rsp), %xmm6
+ movsd 2000+__satan2_la_CoutTab(%rip), %xmm5
+ subsd %xmm6, %xmm9
+ addsd 1840+__satan2_la_CoutTab(%rip), %xmm3
+ addsd %xmm4, %xmm9
+ mulsd %xmm2, %xmm3
+ movsd %xmm9, -64(%rsp)
+ movsd -72(%rsp), %xmm11
+ mulsd %xmm11, %xmm5
+ addsd 1832+__satan2_la_CoutTab(%rip), %xmm3
+ movsd -64(%rsp), %xmm4
+ movsd %xmm5, -72(%rsp)
+ movsd -72(%rsp), %xmm7
+ mulsd %xmm2, %xmm3
+ subsd %xmm11, %xmm7
+ movsd %xmm7, -64(%rsp)
+ movsd -72(%rsp), %xmm8
+ movsd -64(%rsp), %xmm6
+ addsd 1824+__satan2_la_CoutTab(%rip), %xmm3
+ subsd %xmm6, %xmm8
+ mulsd %xmm2, %xmm3
+ movsd %xmm8, -72(%rsp)
+ movsd -72(%rsp), %xmm10
+ mulsd %xmm3, %xmm13
+ subsd %xmm10, %xmm11
+ movsd %xmm11, -64(%rsp)
+ movsd -72(%rsp), %xmm2
+ movsd -64(%rsp), %xmm12
+ movsd %xmm13, -72(%rsp)
+ addsd %xmm12, %xmm4
+ movsd -72(%rsp), %xmm14
+ subsd %xmm3, %xmm14
+ movsd %xmm14, -64(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd -64(%rsp), %xmm15
+ subsd %xmm15, %xmm5
+ movsd %xmm5, -72(%rsp)
+ movsd -72(%rsp), %xmm6
+ subsd %xmm6, %xmm3
+ movsd %xmm3, -64(%rsp)
+ movsd -72(%rsp), %xmm6
+ movsd -64(%rsp), %xmm5
+ movaps %xmm6, %xmm12
+ movaps %xmm5, %xmm3
+ mulsd %xmm4, %xmm6
+ mulsd %xmm4, %xmm3
+ mulsd %xmm2, %xmm5
+ mulsd %xmm2, %xmm12
+ addsd %xmm3, %xmm6
+ movaps %xmm12, %xmm7
+ movaps %xmm12, %xmm8
+ addsd %xmm5, %xmm6
+ addsd %xmm2, %xmm7
+ movsd %xmm6, -72(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd %xmm7, -72(%rsp)
+ movsd -72(%rsp), %xmm3
+ subsd %xmm3, %xmm8
+ movsd %xmm8, -64(%rsp)
+ movsd -72(%rsp), %xmm10
+ movsd -64(%rsp), %xmm9
+ addsd %xmm9, %xmm10
+ movsd %xmm10, -56(%rsp)
+ movsd -64(%rsp), %xmm11
+ addsd %xmm11, %xmm2
+ movsd %xmm2, -64(%rsp)
+ movsd -56(%rsp), %xmm2
+ subsd %xmm2, %xmm12
+ movsd %xmm12, -56(%rsp)
+ movsd -64(%rsp), %xmm14
+ movsd -56(%rsp), %xmm13
+ addsd %xmm13, %xmm14
+ movsd %xmm14, -56(%rsp)
+ movq -72(%rsp), %rsi
+ movsd -56(%rsp), %xmm15
+ movq %rsi, -40(%rsp)
+ addsd %xmm15, %xmm4
+ shrq $56, %rsi
+ addsd %xmm5, %xmm4
+ andb $127, %sil
+ orb %dil, %sil
+ movb %sil, -33(%rsp)
+ movsd %xmm4, -32(%rsp)
+ movaps %xmm1, %xmm4
+ movsd -40(%rsp), %xmm7
+ movaps %xmm7, %xmm2
+ addsd %xmm7, %xmm4
+ movsd %xmm4, -72(%rsp)
+ movsd -72(%rsp), %xmm4
+ movb -25(%rsp), %r9b
+ movb %r9b, %r10b
+ shrb $7, %r9b
+ subsd %xmm4, %xmm2
+ movsd %xmm2, -64(%rsp)
+ movsd -72(%rsp), %xmm5
+ movsd -64(%rsp), %xmm3
+ xorb %r9b, %dl
+ andb $127, %r10b
+ shlb $7, %dl
+ addsd %xmm3, %xmm5
+ movsd %xmm5, -56(%rsp)
+ movsd -64(%rsp), %xmm6
+ addsd %xmm6, %xmm1
+ movsd %xmm1, -64(%rsp)
+ orb %dl, %r10b
+ movsd -56(%rsp), %xmm1
+ movb %r10b, -25(%rsp)
+ subsd %xmm1, %xmm7
+ movsd %xmm7, -56(%rsp)
+ movsd -64(%rsp), %xmm2
+ movsd -56(%rsp), %xmm1
+ addsd %xmm1, %xmm2
+ movsd %xmm2, -56(%rsp)
+ movq -72(%rsp), %rdx
+ movsd -56(%rsp), %xmm3
+ movq %rdx, -40(%rsp)
+ addsd %xmm3, %xmm0
+ movsd -40(%rsp), %xmm4
+ addsd -32(%rsp), %xmm0
+ movsd %xmm0, -32(%rsp)
+ addsd %xmm0, %xmm4
+ movsd %xmm4, -24(%rsp)
+ movb -17(%rsp), %r11b
+ andb $127, %r11b
+ orb %cl, %r11b
+ movb %r11b, -17(%rsp)
+ movsd -24(%rsp), %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ movss %xmm0, (%r8)
+ jmp .LBL_2_33
+
+.LBL_2_19:
+
+ cmpl $74, %r9d
+ jge .LBL_2_21
+
+
+ movb %dil, -41(%rsp)
+ divsd -48(%rsp), %xmm1
+ movsd 1928+__satan2_la_CoutTab(%rip), %xmm0
+ shlb $7, %cl
+ subsd %xmm1, %xmm0
+ addsd 1920+__satan2_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %al
+ andb $127, %al
+ orb %cl, %al
+ movb %al, -17(%rsp)
+ movsd -24(%rsp), %xmm1
+ cvtsd2ss %xmm1, %xmm1
+ movss %xmm1, (%r8)
+ jmp .LBL_2_33
+
+.LBL_2_21:
+
+ movsd 1920+__satan2_la_CoutTab(%rip), %xmm0
+ shlb $7, %cl
+ addsd 1928+__satan2_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %al
+ andb $127, %al
+ orb %cl, %al
+ movb %al, -17(%rsp)
+ movsd -24(%rsp), %xmm1
+ cvtsd2ss %xmm1, %xmm1
+ movss %xmm1, (%r8)
+ jmp .LBL_2_33
+
+.LBL_2_22:
+
+ testb %dl, %dl
+ jne .LBL_2_32
+
+
+ movb %dil, -41(%rsp)
+ pxor %xmm0, %xmm0
+ movb %sil, -33(%rsp)
+ movsd -48(%rsp), %xmm2
+ divsd -40(%rsp), %xmm2
+ cvtsd2ss %xmm2, %xmm0
+ movss %xmm0, -8(%rsp)
+ movzwl -6(%rsp), %eax
+ movsd %xmm2, -24(%rsp)
+ testl $32640, %eax
+ je .LBL_2_25
+
+
+ movsd 1888+__satan2_la_CoutTab(%rip), %xmm0
+ shlb $7, %cl
+ addsd %xmm2, %xmm0
+ movsd %xmm0, -72(%rsp)
+ movsd -72(%rsp), %xmm1
+ mulsd %xmm1, %xmm2
+ movsd %xmm2, -24(%rsp)
+ movb -17(%rsp), %al
+ andb $127, %al
+ orb %cl, %al
+ movb %al, -17(%rsp)
+ movsd -24(%rsp), %xmm2
+ cvtsd2ss %xmm2, %xmm2
+ movss %xmm2, (%r8)
+ jmp .LBL_2_33
+
+.LBL_2_25:
+
+ movsd -24(%rsp), %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ shlb $7, %cl
+ movss %xmm0, -8(%rsp)
+ movss -8(%rsp), %xmm2
+ movss -8(%rsp), %xmm1
+ mulss %xmm1, %xmm2
+ movss %xmm2, -8(%rsp)
+ movss -8(%rsp), %xmm3
+ cvtss2sd %xmm3, %xmm3
+ addsd -24(%rsp), %xmm3
+ movsd %xmm3, -24(%rsp)
+ movb -17(%rsp), %al
+ andb $127, %al
+ orb %cl, %al
+ movb %al, -17(%rsp)
+ movsd -24(%rsp), %xmm4
+ cvtsd2ss %xmm4, %xmm4
+ movss %xmm4, (%r8)
+ jmp .LBL_2_33
+
+.LBL_2_27:
+
+ testl %eax, %eax
+ jne .LBL_2_21
+
+
+ testl $8388607, -32(%rsp)
+ jne .LBL_2_21
+
+.LBL_2_30:
+
+ testb %dl, %dl
+ jne .LBL_2_32
+
+.LBL_2_31:
+
+ shlb $7, %cl
+ movq 1976+__satan2_la_CoutTab(%rip), %rax
+ movq %rax, -24(%rsp)
+ shrq $56, %rax
+ andb $127, %al
+ orb %cl, %al
+ movb %al, -17(%rsp)
+ movsd -24(%rsp), %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ movss %xmm0, (%r8)
+ jmp .LBL_2_33
+
+.LBL_2_32:
+
+ movsd 1936+__satan2_la_CoutTab(%rip), %xmm0
+ shlb $7, %cl
+ addsd 1944+__satan2_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %al
+ andb $127, %al
+ orb %cl, %al
+ movb %al, -17(%rsp)
+ movsd -24(%rsp), %xmm1
+ cvtsd2ss %xmm1, %xmm1
+ movss %xmm1, (%r8)
+
+.LBL_2_33:
+
+ xorl %eax, %eax
+ ret
+
+.LBL_2_34:
+
+ movsd 1984+__satan2_la_CoutTab(%rip), %xmm3
+ movl $-1022, %eax
+ mulsd %xmm3, %xmm4
+ movsd %xmm4, -48(%rsp)
+ jmp .LBL_2_16
+
+.LBL_2_35:
+
+ cmpl $2047, %eax
+ je .LBL_2_48
+
+.LBL_2_36:
+
+ cmpl $2047, %r9d
+ je .LBL_2_46
+
+.LBL_2_37:
+
+ movzwl -26(%rsp), %eax
+ andl $32640, %eax
+ cmpl $32640, %eax
+ jne .LBL_2_21
+
+
+ cmpl $255, %edi
+ je .LBL_2_43
+
+
+ testb %dl, %dl
+ je .LBL_2_31
+ jmp .LBL_2_32
+
+.LBL_2_43:
+
+ testb %dl, %dl
+ jne .LBL_2_45
+
+
+ movsd 1904+__satan2_la_CoutTab(%rip), %xmm0
+ shlb $7, %cl
+ addsd 1912+__satan2_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %al
+ andb $127, %al
+ orb %cl, %al
+ movb %al, -17(%rsp)
+ movsd -24(%rsp), %xmm1
+ cvtsd2ss %xmm1, %xmm1
+ movss %xmm1, (%r8)
+ jmp .LBL_2_33
+
+.LBL_2_45:
+
+ movsd 1952+__satan2_la_CoutTab(%rip), %xmm0
+ shlb $7, %cl
+ addsd 1960+__satan2_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %al
+ andb $127, %al
+ orb %cl, %al
+ movb %al, -17(%rsp)
+ movsd -24(%rsp), %xmm1
+ cvtsd2ss %xmm1, %xmm1
+ movss %xmm1, (%r8)
+ jmp .LBL_2_33
+
+.LBL_2_46:
+
+ testl $8388607, -28(%rsp)
+ je .LBL_2_37
+
+.LBL_2_47:
+
+ addss %xmm2, %xmm3
+ movss %xmm3, (%r8)
+ jmp .LBL_2_33
+
+.LBL_2_48:
+
+ testl $8388607, -32(%rsp)
+ jne .LBL_2_47
+ jmp .LBL_2_36
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_satan2_cout_rare_internal,@function
+ .size __svml_satan2_cout_rare_internal,.-__svml_satan2_cout_rare_internal
+..LN__svml_satan2_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_satan2_data_internal:
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 993144000
+ .long 993144000
+ .long 993144000
+ .long 993144000
+ .long 993144000
+ .long 993144000
+ .long 993144000
+ .long 993144000
+ .long 993144000
+ .long 993144000
+ .long 993144000
+ .long 993144000
+ .long 993144000
+ .long 993144000
+ .long 993144000
+ .long 993144000
+ .long 3162449457
+ .long 3162449457
+ .long 3162449457
+ .long 3162449457
+ .long 3162449457
+ .long 3162449457
+ .long 3162449457
+ .long 3162449457
+ .long 3162449457
+ .long 3162449457
+ .long 3162449457
+ .long 3162449457
+ .long 3162449457
+ .long 3162449457
+ .long 3162449457
+ .long 3162449457
+ .long 1026278276
+ .long 1026278276
+ .long 1026278276
+ .long 1026278276
+ .long 1026278276
+ .long 1026278276
+ .long 1026278276
+ .long 1026278276
+ .long 1026278276
+ .long 1026278276
+ .long 1026278276
+ .long 1026278276
+ .long 1026278276
+ .long 1026278276
+ .long 1026278276
+ .long 1026278276
+ .long 3180885545
+ .long 3180885545
+ .long 3180885545
+ .long 3180885545
+ .long 3180885545
+ .long 3180885545
+ .long 3180885545
+ .long 3180885545
+ .long 3180885545
+ .long 3180885545
+ .long 3180885545
+ .long 3180885545
+ .long 3180885545
+ .long 3180885545
+ .long 3180885545
+ .long 3180885545
+ .long 1037657204
+ .long 1037657204
+ .long 1037657204
+ .long 1037657204
+ .long 1037657204
+ .long 1037657204
+ .long 1037657204
+ .long 1037657204
+ .long 1037657204
+ .long 1037657204
+ .long 1037657204
+ .long 1037657204
+ .long 1037657204
+ .long 1037657204
+ .long 1037657204
+ .long 1037657204
+ .long 3188810232
+ .long 3188810232
+ .long 3188810232
+ .long 3188810232
+ .long 3188810232
+ .long 3188810232
+ .long 3188810232
+ .long 3188810232
+ .long 3188810232
+ .long 3188810232
+ .long 3188810232
+ .long 3188810232
+ .long 3188810232
+ .long 3188810232
+ .long 3188810232
+ .long 3188810232
+ .long 1045215135
+ .long 1045215135
+ .long 1045215135
+ .long 1045215135
+ .long 1045215135
+ .long 1045215135
+ .long 1045215135
+ .long 1045215135
+ .long 1045215135
+ .long 1045215135
+ .long 1045215135
+ .long 1045215135
+ .long 1045215135
+ .long 1045215135
+ .long 1045215135
+ .long 1045215135
+ .long 3198855753
+ .long 3198855753
+ .long 3198855753
+ .long 3198855753
+ .long 3198855753
+ .long 3198855753
+ .long 3198855753
+ .long 3198855753
+ .long 3198855753
+ .long 3198855753
+ .long 3198855753
+ .long 3198855753
+ .long 3198855753
+ .long 3198855753
+ .long 3198855753
+ .long 3198855753
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 2164260864
+ .long 2164260864
+ .long 2164260864
+ .long 2164260864
+ .long 2164260864
+ .long 2164260864
+ .long 2164260864
+ .long 2164260864
+ .long 2164260864
+ .long 2164260864
+ .long 2164260864
+ .long 2164260864
+ .long 2164260864
+ .long 2164260864
+ .long 2164260864
+ .long 2164260864
+ .long 4227858432
+ .long 4227858432
+ .long 4227858432
+ .long 4227858432
+ .long 4227858432
+ .long 4227858432
+ .long 4227858432
+ .long 4227858432
+ .long 4227858432
+ .long 4227858432
+ .long 4227858432
+ .long 4227858432
+ .long 4227858432
+ .long 4227858432
+ .long 4227858432
+ .long 4227858432
+ .type __svml_satan2_data_internal,@object
+ .size __svml_satan2_data_internal,1152
+ .align 32
+__satan2_la_CoutTab:
+ .long 3892314112
+ .long 1069799150
+ .long 2332892550
+ .long 1039715405
+ .long 1342177280
+ .long 1070305495
+ .long 270726690
+ .long 1041535749
+ .long 939524096
+ .long 1070817911
+ .long 2253973841
+ .long 3188654726
+ .long 3221225472
+ .long 1071277294
+ .long 3853927037
+ .long 1043226911
+ .long 2818572288
+ .long 1071767563
+ .long 2677759107
+ .long 1044314101
+ .long 3355443200
+ .long 1072103591
+ .long 1636578514
+ .long 3191094734
+ .long 1476395008
+ .long 1072475260
+ .long 1864703685
+ .long 3188646936
+ .long 805306368
+ .long 1072747407
+ .long 192551812
+ .long 3192726267
+ .long 2013265920
+ .long 1072892781
+ .long 2240369452
+ .long 1043768538
+ .long 0
+ .long 1072999953
+ .long 3665168337
+ .long 3192705970
+ .long 402653184
+ .long 1073084787
+ .long 1227953434
+ .long 3192313277
+ .long 2013265920
+ .long 1073142981
+ .long 3853283127
+ .long 1045277487
+ .long 805306368
+ .long 1073187261
+ .long 1676192264
+ .long 3192868861
+ .long 134217728
+ .long 1073217000
+ .long 4290763938
+ .long 1042034855
+ .long 671088640
+ .long 1073239386
+ .long 994303084
+ .long 3189643768
+ .long 402653184
+ .long 1073254338
+ .long 1878067156
+ .long 1042652475
+ .long 1610612736
+ .long 1073265562
+ .long 670314820
+ .long 1045138554
+ .long 3221225472
+ .long 1073273048
+ .long 691126919
+ .long 3189987794
+ .long 3489660928
+ .long 1073278664
+ .long 1618990832
+ .long 3188194509
+ .long 1207959552
+ .long 1073282409
+ .long 2198872939
+ .long 1044806069
+ .long 3489660928
+ .long 1073285217
+ .long 2633982383
+ .long 1042307894
+ .long 939524096
+ .long 1073287090
+ .long 1059367786
+ .long 3189114230
+ .long 2281701376
+ .long 1073288494
+ .long 3158525533
+ .long 1044484961
+ .long 3221225472
+ .long 1073289430
+ .long 286581777
+ .long 1044893263
+ .long 4026531840
+ .long 1073290132
+ .long 2000245215
+ .long 3191647611
+ .long 134217728
+ .long 1073290601
+ .long 4205071590
+ .long 1045035927
+ .long 536870912
+ .long 1073290952
+ .long 2334392229
+ .long 1043447393
+ .long 805306368
+ .long 1073291186
+ .long 2281458177
+ .long 3188885569
+ .long 3087007744
+ .long 1073291361
+ .long 691611507
+ .long 1044733832
+ .long 3221225472
+ .long 1073291478
+ .long 1816229550
+ .long 1044363390
+ .long 2281701376
+ .long 1073291566
+ .long 1993843750
+ .long 3189837440
+ .long 134217728
+ .long 1073291625
+ .long 3654754496
+ .long 1044970837
+ .long 4026531840
+ .long 1073291668
+ .long 3224300229
+ .long 3191935390
+ .long 805306368
+ .long 1073291698
+ .long 2988777976
+ .long 3188950659
+ .long 536870912
+ .long 1073291720
+ .long 1030371341
+ .long 1043402665
+ .long 3221225472
+ .long 1073291734
+ .long 1524463765
+ .long 1044361356
+ .long 3087007744
+ .long 1073291745
+ .long 2754295320
+ .long 1044731036
+ .long 134217728
+ .long 1073291753
+ .long 3099629057
+ .long 1044970710
+ .long 2281701376
+ .long 1073291758
+ .long 962914160
+ .long 3189838838
+ .long 805306368
+ .long 1073291762
+ .long 3543908206
+ .long 3188950786
+ .long 4026531840
+ .long 1073291764
+ .long 1849909620
+ .long 3191935434
+ .long 3221225472
+ .long 1073291766
+ .long 1641333636
+ .long 1044361352
+ .long 536870912
+ .long 1073291768
+ .long 1373968792
+ .long 1043402654
+ .long 134217728
+ .long 1073291769
+ .long 2033191599
+ .long 1044970710
+ .long 3087007744
+ .long 1073291769
+ .long 4117947437
+ .long 1044731035
+ .long 805306368
+ .long 1073291770
+ .long 315378368
+ .long 3188950787
+ .long 2281701376
+ .long 1073291770
+ .long 2428571750
+ .long 3189838838
+ .long 3221225472
+ .long 1073291770
+ .long 1608007466
+ .long 1044361352
+ .long 4026531840
+ .long 1073291770
+ .long 1895711420
+ .long 3191935434
+ .long 134217728
+ .long 1073291771
+ .long 2031108713
+ .long 1044970710
+ .long 536870912
+ .long 1073291771
+ .long 1362518342
+ .long 1043402654
+ .long 805306368
+ .long 1073291771
+ .long 317461253
+ .long 3188950787
+ .long 939524096
+ .long 1073291771
+ .long 4117231784
+ .long 1044731035
+ .long 1073741824
+ .long 1073291771
+ .long 1607942376
+ .long 1044361352
+ .long 1207959552
+ .long 1073291771
+ .long 2428929577
+ .long 3189838838
+ .long 1207959552
+ .long 1073291771
+ .long 2031104645
+ .long 1044970710
+ .long 1342177280
+ .long 1073291771
+ .long 1895722602
+ .long 3191935434
+ .long 1342177280
+ .long 1073291771
+ .long 317465322
+ .long 3188950787
+ .long 1342177280
+ .long 1073291771
+ .long 1362515546
+ .long 1043402654
+ .long 1342177280
+ .long 1073291771
+ .long 1607942248
+ .long 1044361352
+ .long 1342177280
+ .long 1073291771
+ .long 4117231610
+ .long 1044731035
+ .long 1342177280
+ .long 1073291771
+ .long 2031104637
+ .long 1044970710
+ .long 1342177280
+ .long 1073291771
+ .long 1540251232
+ .long 1045150466
+ .long 1342177280
+ .long 1073291771
+ .long 2644671394
+ .long 1045270303
+ .long 1342177280
+ .long 1073291771
+ .long 2399244691
+ .long 1045360181
+ .long 1342177280
+ .long 1073291771
+ .long 803971124
+ .long 1045420100
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192879152
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192849193
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192826724
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192811744
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192800509
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192793019
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192787402
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192783657
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192780848
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192778976
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192777572
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192776635
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192775933
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192775465
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192775114
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774880
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192774704
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192774587
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192774500
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192774441
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192774397
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774368
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192774346
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192774331
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192774320
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192774313
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192774308
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774304
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192774301
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192774299
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192774298
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192774297
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192774296
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774296
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192774296
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1466225875
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1343512524
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1251477510
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1190120835
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1144103328
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1113424990
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1090416237
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1075077068
+ .long 3192774295
+ .long 1431655765
+ .long 3218429269
+ .long 2576978363
+ .long 1070176665
+ .long 2453154343
+ .long 3217180964
+ .long 4189149139
+ .long 1069314502
+ .long 1775019125
+ .long 3216459198
+ .long 273199057
+ .long 1068739452
+ .long 874748308
+ .long 3215993277
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1073741824
+ .long 1413754136
+ .long 1072243195
+ .long 856972295
+ .long 1015129638
+ .long 1413754136
+ .long 1073291771
+ .long 856972295
+ .long 1016178214
+ .long 1413754136
+ .long 1074340347
+ .long 856972295
+ .long 1017226790
+ .long 2134057426
+ .long 1073928572
+ .long 1285458442
+ .long 1016756537
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 0
+ .long 0
+ .long 2144337920
+ .long 0
+ .long 1048576
+ .long 33554432
+ .long 1101004800
+ .type __satan2_la_CoutTab,@object
+ .size __satan2_la_CoutTab,2008
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * For 0.0 <= x <= 7.0/16.0: atan(x) = atan(0.0) + atan(s), where s=(x-0.0)/(1.0+0.0*x)
+ * For 7.0/16.0 <= x <= 11.0/16.0: atan(x) = atan(0.5) + atan(s), where s=(x-0.5)/(1.0+0.5*x)
+ * For 11.0/16.0 <= x <= 19.0/16.0: atan(x) = atan(1.0) + atan(s), where s=(x-1.0)/(1.0+1.0*x)
+ * For 19.0/16.0 <= x <= 39.0/16.0: atan(x) = atan(1.5) + atan(s), where s=(x-1.5)/(1.0+1.5*x)
+ * For 39.0/16.0 <= x <= inf : atan(x) = atan(inf) + atan(s), where s=-1.0/x
+ * Where atan(s) ~= s+s^3*Poly11(s^2) on interval |s|<7.0/0.16.
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_atan8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_atan8
+
+__svml_atan8:
+
+
+ .cfi_startproc
+..L2:
+
+ vmovups 64+__svml_datan_data_internal_avx512(%rip), %zmm4
+ vmovups 128+__svml_datan_data_internal_avx512(%rip), %zmm3
+ vmovups 256+__svml_datan_data_internal_avx512(%rip), %zmm9
+
+/* saturate X range */
+ vmovups 320+__svml_datan_data_internal_avx512(%rip), %zmm7
+
+ vandpd __svml_datan_data_internal_avx512(%rip), %zmm0, %zmm8
+
+/* R+Rl = DiffX/Y */
+ vbroadcastsd .L_2il0floatpacket.14(%rip), %zmm15
+ vaddpd {rn-sae}, %zmm4, %zmm8, %zmm2
+ vxorpd %zmm0, %zmm8, %zmm1
+ vcmppd $29, {sae}, %zmm3, %zmm8, %k2
+
+/* round to 2 bits after binary point */
+ vreducepd $40, {sae}, %zmm8, %zmm6
+ vsubpd {rn-sae}, %zmm4, %zmm2, %zmm5
+
+/*
+ * if|X|>=MaxThreshold, set DiffX=-1
+ * VMSUB(D, DiffX, LargeMask, Zero, One);
+ */
+ vblendmpd 192+__svml_datan_data_internal_avx512(%rip), %zmm6, %zmm10{%k2}
+ vfmadd231pd {rn-sae}, %zmm8, %zmm5, %zmm9
+ vmovups 960+__svml_datan_data_internal_avx512(%rip), %zmm5
+
+/* table lookup sequence */
+ vmovups 448+__svml_datan_data_internal_avx512(%rip), %zmm6
+ vgetmantpd $0, {sae}, %zmm10, %zmm14
+ vgetexppd {sae}, %zmm10, %zmm11
+ vmovups 1408+__svml_datan_data_internal_avx512(%rip), %zmm10
+
+/*
+ * if|X|>=MaxThreshold, set Y=X
+ * VMADD(D, Y, LargeMask, X, Zero);
+ */
+ vminpd {sae}, %zmm8, %zmm7, %zmm9{%k2}
+ vcmppd $29, {sae}, %zmm5, %zmm2, %k1
+ vmovups 576+__svml_datan_data_internal_avx512(%rip), %zmm7
+ vmovups 1152+__svml_datan_data_internal_avx512(%rip), %zmm8
+ vgetmantpd $0, {sae}, %zmm9, %zmm3
+ vgetexppd {sae}, %zmm9, %zmm12
+ vmovups 1280+__svml_datan_data_internal_avx512(%rip), %zmm9
+ vpermt2pd 512+__svml_datan_data_internal_avx512(%rip), %zmm2, %zmm6
+ vsubpd {rn-sae}, %zmm12, %zmm11, %zmm4
+ vpermt2pd 640+__svml_datan_data_internal_avx512(%rip), %zmm2, %zmm7
+ vrcp14pd %zmm3, %zmm13
+ vmovups 1344+__svml_datan_data_internal_avx512(%rip), %zmm12
+ vmovups 1472+__svml_datan_data_internal_avx512(%rip), %zmm11
+ vblendmpd %zmm7, %zmm6, %zmm2{%k1}
+ vmulpd {rn-sae}, %zmm13, %zmm14, %zmm0
+ vfnmadd231pd {rn-sae}, %zmm3, %zmm13, %zmm15
+ vfnmadd213pd {rn-sae}, %zmm14, %zmm0, %zmm3
+ vfmadd213pd {rn-sae}, %zmm15, %zmm15, %zmm15
+ vfmadd213pd {rn-sae}, %zmm13, %zmm13, %zmm15
+ vfmadd213pd {rn-sae}, %zmm0, %zmm15, %zmm3
+ vscalefpd {rn-sae}, %zmm4, %zmm3, %zmm0
+
+/* set table value to Pi/2 for large X */
+ vblendmpd 1024+__svml_datan_data_internal_avx512(%rip), %zmm2, %zmm3{%k2}
+ vmovups 1216+__svml_datan_data_internal_avx512(%rip), %zmm2
+
+/* polynomial evaluation */
+ vmulpd {rn-sae}, %zmm0, %zmm0, %zmm14
+ vmulpd {rn-sae}, %zmm14, %zmm14, %zmm13
+ vmulpd {rn-sae}, %zmm0, %zmm14, %zmm15
+ vfmadd231pd {rn-sae}, %zmm14, %zmm8, %zmm2
+ vfmadd231pd {rn-sae}, %zmm14, %zmm9, %zmm12
+ vfmadd213pd {rn-sae}, %zmm11, %zmm10, %zmm14
+ vfmadd213pd {rn-sae}, %zmm12, %zmm13, %zmm2
+ vfmadd213pd {rn-sae}, %zmm14, %zmm13, %zmm2
+ vfmadd213pd {rn-sae}, %zmm0, %zmm15, %zmm2
+ vaddpd {rn-sae}, %zmm3, %zmm2, %zmm0
+ vxorpd %zmm1, %zmm0, %zmm0
+
+/* no invcbrt in libm, so taking it out here */
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_atan8,@function
+ .size __svml_atan8,.-__svml_atan8
+..LN__svml_atan8.0:
+
+.L_2__routine_start___svml_datan_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_datan_cout_rare_internal:
+
+
+ .cfi_startproc
+..L5:
+
+ movzwl 6(%rdi), %r8d
+ andl $32752, %r8d
+ shrl $4, %r8d
+ cmpl $2047, %r8d
+ je .LBL_2_12
+
+
+ movq (%rdi), %rdx
+ movq %rdx, -16(%rsp)
+ shrq $56, %rdx
+ movb 7(%rdi), %al
+ andl $127, %edx
+ movb %dl, -9(%rsp)
+ movsd -16(%rsp), %xmm0
+ shrb $7, %al
+ comisd 1888+__datan_la_CoutTab(%rip), %xmm0
+ movl -12(%rsp), %ecx
+ jb .LBL_2_6
+
+
+ movsd 1896+__datan_la_CoutTab(%rip), %xmm1
+ comisd %xmm0, %xmm1
+ jbe .LBL_2_5
+
+
+ movl 4(%rdi), %edx
+ movl %ecx, %edi
+ andl $-524288, %ecx
+ andl $-1048576, %edi
+ addl $262144, %ecx
+ movaps %xmm0, %xmm9
+ andl $1048575, %ecx
+ movaps %xmm0, %xmm10
+ movsd %xmm0, -56(%rsp)
+ orl %ecx, %edi
+ movl $0, -56(%rsp)
+ andl $1048575, %edx
+ movl %edi, -52(%rsp)
+ lea __datan_la_CoutTab(%rip), %rcx
+ movsd 1928+__datan_la_CoutTab(%rip), %xmm4
+ movsd -56(%rsp), %xmm15
+ shll $20, %r8d
+ subsd -56(%rsp), %xmm9
+ mulsd 1928+__datan_la_CoutTab(%rip), %xmm10
+ shlb $7, %al
+ mulsd %xmm9, %xmm4
+ movsd %xmm4, -48(%rsp)
+ orl %edx, %r8d
+ movsd -48(%rsp), %xmm5
+ addl $-1069547520, %r8d
+ sarl $18, %r8d
+ subsd %xmm9, %xmm5
+ movsd %xmm5, -40(%rsp)
+ andl $-2, %r8d
+ movsd -48(%rsp), %xmm7
+ movsd -40(%rsp), %xmm6
+ movslq %r8d, %r8
+ subsd %xmm6, %xmm7
+ movsd %xmm7, -48(%rsp)
+ movsd -48(%rsp), %xmm8
+ movsd 1904+__datan_la_CoutTab(%rip), %xmm6
+ subsd %xmm8, %xmm9
+ movsd %xmm9, -40(%rsp)
+ movsd -48(%rsp), %xmm2
+ movsd -40(%rsp), %xmm3
+ movsd %xmm10, -48(%rsp)
+ movsd -48(%rsp), %xmm11
+ movsd 1904+__datan_la_CoutTab(%rip), %xmm8
+ subsd -16(%rsp), %xmm11
+ movsd %xmm11, -40(%rsp)
+ movsd -48(%rsp), %xmm13
+ movsd -40(%rsp), %xmm12
+ subsd %xmm12, %xmm13
+ movsd %xmm13, -48(%rsp)
+ movsd -48(%rsp), %xmm14
+ subsd %xmm14, %xmm0
+ movsd 1904+__datan_la_CoutTab(%rip), %xmm14
+ movsd %xmm0, -40(%rsp)
+ movsd -48(%rsp), %xmm5
+ movsd -40(%rsp), %xmm4
+ mulsd %xmm15, %xmm5
+ mulsd %xmm15, %xmm4
+ movaps %xmm5, %xmm1
+ addsd %xmm4, %xmm1
+ movsd %xmm1, -48(%rsp)
+ movsd -48(%rsp), %xmm0
+ subsd %xmm0, %xmm5
+ addsd %xmm4, %xmm5
+ movsd 1928+__datan_la_CoutTab(%rip), %xmm4
+ movsd %xmm5, -40(%rsp)
+ movsd -48(%rsp), %xmm11
+ movsd -40(%rsp), %xmm1
+ addsd %xmm11, %xmm6
+ movsd %xmm6, -48(%rsp)
+ movsd -48(%rsp), %xmm7
+ subsd %xmm7, %xmm8
+ movsd %xmm8, -40(%rsp)
+ movsd -48(%rsp), %xmm10
+ movsd -40(%rsp), %xmm9
+ addsd %xmm9, %xmm10
+ movsd %xmm10, -32(%rsp)
+ movsd -40(%rsp), %xmm12
+ movsd 1928+__datan_la_CoutTab(%rip), %xmm10
+ addsd %xmm11, %xmm12
+ movsd %xmm12, -40(%rsp)
+ movsd -32(%rsp), %xmm13
+ movsd 1904+__datan_la_CoutTab(%rip), %xmm11
+ subsd %xmm13, %xmm14
+ movsd %xmm14, -32(%rsp)
+ movsd -40(%rsp), %xmm0
+ movsd -32(%rsp), %xmm15
+ addsd %xmm15, %xmm0
+ movsd %xmm0, -32(%rsp)
+ movsd -48(%rsp), %xmm9
+ mulsd %xmm9, %xmm4
+ movsd -32(%rsp), %xmm0
+ movsd %xmm4, -48(%rsp)
+ addsd %xmm1, %xmm0
+ movsd -48(%rsp), %xmm5
+ subsd %xmm9, %xmm5
+ movsd %xmm5, -40(%rsp)
+ movsd -48(%rsp), %xmm7
+ movsd -40(%rsp), %xmm6
+ subsd %xmm6, %xmm7
+ movsd 1904+__datan_la_CoutTab(%rip), %xmm6
+ movsd %xmm7, -48(%rsp)
+ movsd -48(%rsp), %xmm8
+ subsd %xmm8, %xmm9
+ movsd %xmm9, -40(%rsp)
+ movsd -48(%rsp), %xmm4
+ divsd %xmm4, %xmm11
+ mulsd %xmm11, %xmm10
+ movsd -40(%rsp), %xmm5
+ movsd %xmm10, -40(%rsp)
+ addsd %xmm0, %xmm5
+ movsd -40(%rsp), %xmm12
+ subsd %xmm11, %xmm12
+ movsd %xmm12, -32(%rsp)
+ movsd -40(%rsp), %xmm10
+ movsd -32(%rsp), %xmm13
+ subsd %xmm13, %xmm10
+ movsd %xmm10, -32(%rsp)
+ movsd -32(%rsp), %xmm14
+ mulsd %xmm14, %xmm4
+ movsd -32(%rsp), %xmm15
+ subsd %xmm4, %xmm6
+ mulsd %xmm15, %xmm5
+ movsd %xmm5, -40(%rsp)
+ movsd -40(%rsp), %xmm1
+ subsd %xmm1, %xmm6
+ movsd %xmm6, -40(%rsp)
+ movsd -40(%rsp), %xmm4
+ movsd -32(%rsp), %xmm5
+ movsd -40(%rsp), %xmm0
+ movaps %xmm5, %xmm7
+ movsd -32(%rsp), %xmm1
+ mulsd %xmm3, %xmm5
+ addsd 1904+__datan_la_CoutTab(%rip), %xmm4
+ mulsd %xmm2, %xmm7
+ mulsd %xmm0, %xmm4
+ mulsd %xmm1, %xmm4
+ mulsd %xmm4, %xmm3
+ mulsd %xmm4, %xmm2
+ addsd %xmm3, %xmm5
+ movsd 1872+__datan_la_CoutTab(%rip), %xmm6
+ addsd %xmm2, %xmm5
+ movsd %xmm5, -48(%rsp)
+ movaps %xmm7, %xmm2
+ movsd -48(%rsp), %xmm4
+ addsd %xmm4, %xmm2
+ movsd %xmm2, -48(%rsp)
+ movsd -48(%rsp), %xmm3
+ movsd (%rcx,%r8,8), %xmm2
+ subsd %xmm3, %xmm7
+ addsd %xmm4, %xmm7
+ movsd %xmm7, -40(%rsp)
+ movsd -48(%rsp), %xmm3
+ movaps %xmm3, %xmm5
+ movaps %xmm3, %xmm0
+ mulsd %xmm3, %xmm5
+ addsd %xmm2, %xmm0
+ mulsd %xmm5, %xmm6
+ movsd -40(%rsp), %xmm10
+ movsd %xmm0, -48(%rsp)
+ movsd -48(%rsp), %xmm1
+ addsd 1864+__datan_la_CoutTab(%rip), %xmm6
+ subsd %xmm1, %xmm2
+ mulsd %xmm5, %xmm6
+ addsd %xmm3, %xmm2
+ addsd 1856+__datan_la_CoutTab(%rip), %xmm6
+ mulsd %xmm5, %xmm6
+ movsd %xmm2, -40(%rsp)
+ movsd -48(%rsp), %xmm9
+ movsd -40(%rsp), %xmm8
+ addsd 1848+__datan_la_CoutTab(%rip), %xmm6
+ mulsd %xmm5, %xmm6
+ addsd 1840+__datan_la_CoutTab(%rip), %xmm6
+ mulsd %xmm5, %xmm6
+ addsd 1832+__datan_la_CoutTab(%rip), %xmm6
+ mulsd %xmm5, %xmm6
+ addsd 1824+__datan_la_CoutTab(%rip), %xmm6
+ mulsd %xmm5, %xmm6
+ mulsd %xmm3, %xmm6
+ addsd %xmm6, %xmm10
+ addsd 8(%rcx,%r8,8), %xmm10
+ addsd %xmm8, %xmm10
+ addsd %xmm9, %xmm10
+ movsd %xmm10, -24(%rsp)
+ movb -17(%rsp), %r9b
+ andb $127, %r9b
+ orb %al, %r9b
+ movb %r9b, -17(%rsp)
+ movq -24(%rsp), %rax
+ movq %rax, (%rsi)
+ jmp .LBL_2_11
+
+.LBL_2_5:
+
+ movsd 1912+__datan_la_CoutTab(%rip), %xmm0
+ shlb $7, %al
+ addsd 1920+__datan_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %dl
+ andb $127, %dl
+ orb %al, %dl
+ movb %dl, -17(%rsp)
+ movq -24(%rsp), %rax
+ movq %rax, (%rsi)
+ jmp .LBL_2_11
+
+.LBL_2_6:
+
+ comisd 1880+__datan_la_CoutTab(%rip), %xmm0
+ jb .LBL_2_8
+
+
+ movaps %xmm0, %xmm1
+ mulsd %xmm0, %xmm1
+ shlb $7, %al
+ movsd 1872+__datan_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1864+__datan_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1856+__datan_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1848+__datan_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1840+__datan_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1832+__datan_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1824+__datan_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ mulsd %xmm0, %xmm2
+ addsd %xmm0, %xmm2
+ movsd %xmm2, -24(%rsp)
+ movb -17(%rsp), %dl
+ andb $127, %dl
+ orb %al, %dl
+ movb %dl, -17(%rsp)
+ movq -24(%rsp), %rax
+ movq %rax, (%rsi)
+ jmp .LBL_2_11
+
+.LBL_2_8:
+
+ movzwl -10(%rsp), %edx
+ testl $32752, %edx
+ je .LBL_2_10
+
+
+ movsd 1904+__datan_la_CoutTab(%rip), %xmm1
+ shlb $7, %al
+ addsd %xmm0, %xmm1
+ movsd %xmm1, -48(%rsp)
+ movsd -48(%rsp), %xmm0
+ mulsd -16(%rsp), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %dl
+ andb $127, %dl
+ orb %al, %dl
+ movb %dl, -17(%rsp)
+ movq -24(%rsp), %rax
+ movq %rax, (%rsi)
+ jmp .LBL_2_11
+
+.LBL_2_10:
+
+ mulsd %xmm0, %xmm0
+ shlb $7, %al
+ movsd %xmm0, -48(%rsp)
+ movsd -48(%rsp), %xmm0
+ addsd -16(%rsp), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %dl
+ andb $127, %dl
+ orb %al, %dl
+ movb %dl, -17(%rsp)
+ movq -24(%rsp), %rax
+ movq %rax, (%rsi)
+
+.LBL_2_11:
+
+ xorl %eax, %eax
+ ret
+
+.LBL_2_12:
+
+ testl $1048575, 4(%rdi)
+ jne .LBL_2_15
+
+
+ cmpl $0, (%rdi)
+ jne .LBL_2_15
+
+
+ movsd 1912+__datan_la_CoutTab(%rip), %xmm0
+ movb 7(%rdi), %al
+ andb $-128, %al
+ addsd 1920+__datan_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, -24(%rsp)
+ movb -17(%rsp), %dl
+ andb $127, %dl
+ orb %al, %dl
+ movb %dl, -17(%rsp)
+ movq -24(%rsp), %rcx
+ movq %rcx, (%rsi)
+ jmp .LBL_2_11
+
+.LBL_2_15:
+
+ movsd (%rdi), %xmm0
+ addsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ jmp .LBL_2_11
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_datan_cout_rare_internal,@function
+ .size __svml_datan_cout_rare_internal,.-__svml_datan_cout_rare_internal
+..LN__svml_datan_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_datan_data_internal_avx512:
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 0
+ .long 1125646336
+ .long 0
+ .long 1125646336
+ .long 0
+ .long 1125646336
+ .long 0
+ .long 1125646336
+ .long 0
+ .long 1125646336
+ .long 0
+ .long 1125646336
+ .long 0
+ .long 1125646336
+ .long 0
+ .long 1125646336
+ .long 0
+ .long 1075806208
+ .long 0
+ .long 1075806208
+ .long 0
+ .long 1075806208
+ .long 0
+ .long 1075806208
+ .long 0
+ .long 1075806208
+ .long 0
+ .long 1075806208
+ .long 0
+ .long 1075806208
+ .long 0
+ .long 1075806208
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1206910976
+ .long 0
+ .long 1206910976
+ .long 0
+ .long 1206910976
+ .long 0
+ .long 1206910976
+ .long 0
+ .long 1206910976
+ .long 0
+ .long 1206910976
+ .long 0
+ .long 1206910976
+ .long 0
+ .long 1206910976
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 4180443357
+ .long 1070553973
+ .long 90291023
+ .long 1071492199
+ .long 2737217249
+ .long 1071945615
+ .long 1413754136
+ .long 1072243195
+ .long 1468297118
+ .long 1072475260
+ .long 3531732635
+ .long 1072657163
+ .long 744202399
+ .long 1072747407
+ .long 2464923204
+ .long 1072805601
+ .long 1436891685
+ .long 1072853231
+ .long 2037009832
+ .long 1072892781
+ .long 1826698067
+ .long 1072926058
+ .long 1803191648
+ .long 1072954391
+ .long 2205372832
+ .long 1072978772
+ .long 4234512805
+ .long 1072999952
+ .long 3932628503
+ .long 1073018509
+ .long 2501811453
+ .long 1073034892
+ .long 866379431
+ .long 1073049455
+ .long 1376865888
+ .long 1073062480
+ .long 3290094269
+ .long 1073074195
+ .long 354764887
+ .long 1073084787
+ .long 3332975497
+ .long 1073094406
+ .long 1141460092
+ .long 1073103181
+ .long 745761286
+ .long 1073111216
+ .long 1673304509
+ .long 1073118600
+ .long 983388243
+ .long 1073125409
+ .long 3895509104
+ .long 1073131706
+ .long 2128523669
+ .long 1073137548
+ .long 2075485693
+ .long 1073142981
+ .long 121855980
+ .long 1073148047
+ .long 4181733783
+ .long 1073152780
+ .long 2887813284
+ .long 1073157214
+ .long 0
+ .long 0
+ .long 1022865341
+ .long 1013492590
+ .long 573531618
+ .long 1014639487
+ .long 2280825944
+ .long 1014120858
+ .long 856972295
+ .long 1015129638
+ .long 986810987
+ .long 1015077601
+ .long 2062601149
+ .long 1013974920
+ .long 589036912
+ .long 3164328156
+ .long 1787331214
+ .long 1016798022
+ .long 2942272763
+ .long 3164235441
+ .long 2956702105
+ .long 1016472908
+ .long 3903328092
+ .long 3162582135
+ .long 3175026820
+ .long 3158589859
+ .long 787328196
+ .long 1014621351
+ .long 2317874517
+ .long 3163795518
+ .long 4071621134
+ .long 1016673529
+ .long 2492111345
+ .long 3164172103
+ .long 3606178875
+ .long 3162371821
+ .long 3365790232
+ .long 1014547152
+ .long 2710887773
+ .long 1017086651
+ .long 2755350986
+ .long 3162706257
+ .long 198095269
+ .long 3162802133
+ .long 2791076759
+ .long 3164364640
+ .long 4214434319
+ .long 3162164074
+ .long 773754012
+ .long 3164190653
+ .long 139561443
+ .long 3164313657
+ .long 2197796619
+ .long 3164066219
+ .long 3592486882
+ .long 1016669082
+ .long 1148791015
+ .long 3163724934
+ .long 386789398
+ .long 3163117479
+ .long 2518816264
+ .long 3162291736
+ .long 2545101323
+ .long 3164592727
+ .long 16
+ .long 1125646336
+ .long 16
+ .long 1125646336
+ .long 16
+ .long 1125646336
+ .long 16
+ .long 1125646336
+ .long 16
+ .long 1125646336
+ .long 16
+ .long 1125646336
+ .long 16
+ .long 1125646336
+ .long 16
+ .long 1125646336
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 856972295
+ .long 1016178214
+ .long 4123328151
+ .long 1068689849
+ .long 4123328151
+ .long 1068689849
+ .long 4123328151
+ .long 1068689849
+ .long 4123328151
+ .long 1068689849
+ .long 4123328151
+ .long 1068689849
+ .long 4123328151
+ .long 1068689849
+ .long 4123328151
+ .long 1068689849
+ .long 4123328151
+ .long 1068689849
+ .long 3295121612
+ .long 3216458327
+ .long 3295121612
+ .long 3216458327
+ .long 3295121612
+ .long 3216458327
+ .long 3295121612
+ .long 3216458327
+ .long 3295121612
+ .long 3216458327
+ .long 3295121612
+ .long 3216458327
+ .long 3295121612
+ .long 3216458327
+ .long 3295121612
+ .long 3216458327
+ .long 4026078880
+ .long 1069314495
+ .long 4026078880
+ .long 1069314495
+ .long 4026078880
+ .long 1069314495
+ .long 4026078880
+ .long 1069314495
+ .long 4026078880
+ .long 1069314495
+ .long 4026078880
+ .long 1069314495
+ .long 4026078880
+ .long 1069314495
+ .long 4026078880
+ .long 1069314495
+ .long 2398029018
+ .long 3217180964
+ .long 2398029018
+ .long 3217180964
+ .long 2398029018
+ .long 3217180964
+ .long 2398029018
+ .long 3217180964
+ .long 2398029018
+ .long 3217180964
+ .long 2398029018
+ .long 3217180964
+ .long 2398029018
+ .long 3217180964
+ .long 2398029018
+ .long 3217180964
+ .long 2576905246
+ .long 1070176665
+ .long 2576905246
+ .long 1070176665
+ .long 2576905246
+ .long 1070176665
+ .long 2576905246
+ .long 1070176665
+ .long 2576905246
+ .long 1070176665
+ .long 2576905246
+ .long 1070176665
+ .long 2576905246
+ .long 1070176665
+ .long 2576905246
+ .long 1070176665
+ .long 1431655757
+ .long 3218429269
+ .long 1431655757
+ .long 3218429269
+ .long 1431655757
+ .long 3218429269
+ .long 1431655757
+ .long 3218429269
+ .long 1431655757
+ .long 3218429269
+ .long 1431655757
+ .long 3218429269
+ .long 1431655757
+ .long 3218429269
+ .long 1431655757
+ .long 3218429269
+ .type __svml_datan_data_internal_avx512,@object
+ .size __svml_datan_data_internal_avx512,1536
+ .align 32
+__datan_la_CoutTab:
+ .long 3892314112
+ .long 1069799150
+ .long 2332892550
+ .long 1039715405
+ .long 1342177280
+ .long 1070305495
+ .long 270726690
+ .long 1041535749
+ .long 939524096
+ .long 1070817911
+ .long 2253973841
+ .long 3188654726
+ .long 3221225472
+ .long 1071277294
+ .long 3853927037
+ .long 1043226911
+ .long 2818572288
+ .long 1071767563
+ .long 2677759107
+ .long 1044314101
+ .long 3355443200
+ .long 1072103591
+ .long 1636578514
+ .long 3191094734
+ .long 1476395008
+ .long 1072475260
+ .long 1864703685
+ .long 3188646936
+ .long 805306368
+ .long 1072747407
+ .long 192551812
+ .long 3192726267
+ .long 2013265920
+ .long 1072892781
+ .long 2240369452
+ .long 1043768538
+ .long 0
+ .long 1072999953
+ .long 3665168337
+ .long 3192705970
+ .long 402653184
+ .long 1073084787
+ .long 1227953434
+ .long 3192313277
+ .long 2013265920
+ .long 1073142981
+ .long 3853283127
+ .long 1045277487
+ .long 805306368
+ .long 1073187261
+ .long 1676192264
+ .long 3192868861
+ .long 134217728
+ .long 1073217000
+ .long 4290763938
+ .long 1042034855
+ .long 671088640
+ .long 1073239386
+ .long 994303084
+ .long 3189643768
+ .long 402653184
+ .long 1073254338
+ .long 1878067156
+ .long 1042652475
+ .long 1610612736
+ .long 1073265562
+ .long 670314820
+ .long 1045138554
+ .long 3221225472
+ .long 1073273048
+ .long 691126919
+ .long 3189987794
+ .long 3489660928
+ .long 1073278664
+ .long 1618990832
+ .long 3188194509
+ .long 1207959552
+ .long 1073282409
+ .long 2198872939
+ .long 1044806069
+ .long 3489660928
+ .long 1073285217
+ .long 2633982383
+ .long 1042307894
+ .long 939524096
+ .long 1073287090
+ .long 1059367786
+ .long 3189114230
+ .long 2281701376
+ .long 1073288494
+ .long 3158525533
+ .long 1044484961
+ .long 3221225472
+ .long 1073289430
+ .long 286581777
+ .long 1044893263
+ .long 4026531840
+ .long 1073290132
+ .long 2000245215
+ .long 3191647611
+ .long 134217728
+ .long 1073290601
+ .long 4205071590
+ .long 1045035927
+ .long 536870912
+ .long 1073290952
+ .long 2334392229
+ .long 1043447393
+ .long 805306368
+ .long 1073291186
+ .long 2281458177
+ .long 3188885569
+ .long 3087007744
+ .long 1073291361
+ .long 691611507
+ .long 1044733832
+ .long 3221225472
+ .long 1073291478
+ .long 1816229550
+ .long 1044363390
+ .long 2281701376
+ .long 1073291566
+ .long 1993843750
+ .long 3189837440
+ .long 134217728
+ .long 1073291625
+ .long 3654754496
+ .long 1044970837
+ .long 4026531840
+ .long 1073291668
+ .long 3224300229
+ .long 3191935390
+ .long 805306368
+ .long 1073291698
+ .long 2988777976
+ .long 3188950659
+ .long 536870912
+ .long 1073291720
+ .long 1030371341
+ .long 1043402665
+ .long 3221225472
+ .long 1073291734
+ .long 1524463765
+ .long 1044361356
+ .long 3087007744
+ .long 1073291745
+ .long 2754295320
+ .long 1044731036
+ .long 134217728
+ .long 1073291753
+ .long 3099629057
+ .long 1044970710
+ .long 2281701376
+ .long 1073291758
+ .long 962914160
+ .long 3189838838
+ .long 805306368
+ .long 1073291762
+ .long 3543908206
+ .long 3188950786
+ .long 4026531840
+ .long 1073291764
+ .long 1849909620
+ .long 3191935434
+ .long 3221225472
+ .long 1073291766
+ .long 1641333636
+ .long 1044361352
+ .long 536870912
+ .long 1073291768
+ .long 1373968792
+ .long 1043402654
+ .long 134217728
+ .long 1073291769
+ .long 2033191599
+ .long 1044970710
+ .long 3087007744
+ .long 1073291769
+ .long 4117947437
+ .long 1044731035
+ .long 805306368
+ .long 1073291770
+ .long 315378368
+ .long 3188950787
+ .long 2281701376
+ .long 1073291770
+ .long 2428571750
+ .long 3189838838
+ .long 3221225472
+ .long 1073291770
+ .long 1608007466
+ .long 1044361352
+ .long 4026531840
+ .long 1073291770
+ .long 1895711420
+ .long 3191935434
+ .long 134217728
+ .long 1073291771
+ .long 2031108713
+ .long 1044970710
+ .long 536870912
+ .long 1073291771
+ .long 1362518342
+ .long 1043402654
+ .long 805306368
+ .long 1073291771
+ .long 317461253
+ .long 3188950787
+ .long 939524096
+ .long 1073291771
+ .long 4117231784
+ .long 1044731035
+ .long 1073741824
+ .long 1073291771
+ .long 1607942376
+ .long 1044361352
+ .long 1207959552
+ .long 1073291771
+ .long 2428929577
+ .long 3189838838
+ .long 1207959552
+ .long 1073291771
+ .long 2031104645
+ .long 1044970710
+ .long 1342177280
+ .long 1073291771
+ .long 1895722602
+ .long 3191935434
+ .long 1342177280
+ .long 1073291771
+ .long 317465322
+ .long 3188950787
+ .long 1342177280
+ .long 1073291771
+ .long 1362515546
+ .long 1043402654
+ .long 1342177280
+ .long 1073291771
+ .long 1607942248
+ .long 1044361352
+ .long 1342177280
+ .long 1073291771
+ .long 4117231610
+ .long 1044731035
+ .long 1342177280
+ .long 1073291771
+ .long 2031104637
+ .long 1044970710
+ .long 1342177280
+ .long 1073291771
+ .long 1540251232
+ .long 1045150466
+ .long 1342177280
+ .long 1073291771
+ .long 2644671394
+ .long 1045270303
+ .long 1342177280
+ .long 1073291771
+ .long 2399244691
+ .long 1045360181
+ .long 1342177280
+ .long 1073291771
+ .long 803971124
+ .long 1045420100
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192879152
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192849193
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192826724
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192811744
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192800509
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192793019
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192787402
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192783657
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192780848
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192778976
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192777572
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192776635
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192775933
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192775465
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192775114
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774880
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192774704
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192774587
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192774500
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192774441
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192774397
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774368
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192774346
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192774331
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192774320
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192774313
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192774308
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774304
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192774301
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192774299
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192774298
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192774297
+ .long 1476395008
+ .long 1073291771
+ .long 3613709523
+ .long 3192774296
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774296
+ .long 1476395008
+ .long 1073291771
+ .long 177735686
+ .long 3192774296
+ .long 1476395008
+ .long 1073291771
+ .long 3490996172
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 2754716064
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 2263862659
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1895722605
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1650295902
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1466225875
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1343512524
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1251477510
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1190120835
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1144103328
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1113424990
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1090416237
+ .long 3192774295
+ .long 1476395008
+ .long 1073291771
+ .long 1075077068
+ .long 3192774295
+ .long 1431655765
+ .long 3218429269
+ .long 2576978363
+ .long 1070176665
+ .long 2453154343
+ .long 3217180964
+ .long 4189149139
+ .long 1069314502
+ .long 1775019125
+ .long 3216459198
+ .long 273199057
+ .long 1068739452
+ .long 874748308
+ .long 3215993277
+ .long 0
+ .long 1017118720
+ .long 0
+ .long 1069547520
+ .long 0
+ .long 1129316352
+ .long 0
+ .long 1072693248
+ .long 1413754136
+ .long 1073291771
+ .long 856972295
+ .long 1016178214
+ .long 33554432
+ .long 1101004800
+ .type __datan_la_CoutTab,@object
+ .size __datan_la_CoutTab,1936
+ .align 8
+.L_2il0floatpacket.14:
+ .long 0x00000000,0x3ff00000
+ .type .L_2il0floatpacket.14,@object
+ .size .L_2il0floatpacket.14,8
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * For 0.0 <= x <= 7.0/16.0: atan(x) = atan(0.0) + atan(s), where s=(x-0.0)/(1.0+0.0*x)
+ * For 7.0/16.0 <= x <= 11.0/16.0: atan(x) = atan(0.5) + atan(s), where s=(x-0.5)/(1.0+0.5*x)
+ * For 11.0/16.0 <= x <= 19.0/16.0: atan(x) = atan(1.0) + atan(s), where s=(x-1.0)/(1.0+1.0*x)
+ * For 19.0/16.0 <= x <= 39.0/16.0: atan(x) = atan(1.5) + atan(s), where s=(x-1.5)/(1.0+1.5*x)
+ * For 39.0/16.0 <= x <= inf : atan(x) = atan(inf) + atan(s), where s=-1.0/x
+ * Where atan(s) ~= s+s^3*Poly11(s^2) on interval |s|<7.0/0.16.
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_atanf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_atanf16
+
+__svml_atanf16:
+
+
+ .cfi_startproc
+..L2:
+
+ vandps __svml_satan_data_internal_avx512(%rip), %zmm0, %zmm7
+ vmovups 128+__svml_satan_data_internal_avx512(%rip), %zmm3
+ vmovups 256+__svml_satan_data_internal_avx512(%rip), %zmm8
+
+/* round to 2 bits after binary point */
+ vreduceps $40, {sae}, %zmm7, %zmm5
+
+/* saturate X range */
+ vmovups 320+__svml_satan_data_internal_avx512(%rip), %zmm6
+ vmovups 64+__svml_satan_data_internal_avx512(%rip), %zmm2
+ vcmpps $29, {sae}, %zmm3, %zmm7, %k1
+
+/* table lookup sequence */
+ vmovups 448+__svml_satan_data_internal_avx512(%rip), %zmm3
+ vsubps {rn-sae}, %zmm5, %zmm7, %zmm4
+ vaddps {rn-sae}, %zmm2, %zmm7, %zmm1
+ vxorps %zmm0, %zmm7, %zmm0
+ vfmadd231ps {rn-sae}, %zmm7, %zmm4, %zmm8
+ vmovups 896+__svml_satan_data_internal_avx512(%rip), %zmm4
+
+/* if|X|>=MaxThreshold, set DiffX=-1 */
+ vblendmps 192+__svml_satan_data_internal_avx512(%rip), %zmm5, %zmm9{%k1}
+ vmovups 960+__svml_satan_data_internal_avx512(%rip), %zmm5
+
+/* if|X|>=MaxThreshold, set Y=X */
+ vminps {sae}, %zmm7, %zmm6, %zmm8{%k1}
+
+/* R+Rl = DiffX/Y */
+ vgetmantps $0, {sae}, %zmm9, %zmm12
+ vgetexpps {sae}, %zmm9, %zmm10
+ vpermt2ps 512+__svml_satan_data_internal_avx512(%rip), %zmm1, %zmm3
+ vgetmantps $0, {sae}, %zmm8, %zmm15
+ vgetexpps {sae}, %zmm8, %zmm11
+ vmovups 832+__svml_satan_data_internal_avx512(%rip), %zmm1
+
+/* set table value to Pi/2 for large X */
+ vblendmps 704+__svml_satan_data_internal_avx512(%rip), %zmm3, %zmm9{%k1}
+ vrcp14ps %zmm15, %zmm13
+ vsubps {rn-sae}, %zmm11, %zmm10, %zmm2
+ vmulps {rn-sae}, %zmm13, %zmm12, %zmm14
+ vfnmadd213ps {rn-sae}, %zmm12, %zmm14, %zmm15
+ vfmadd213ps {rn-sae}, %zmm14, %zmm13, %zmm15
+ vscalefps {rn-sae}, %zmm2, %zmm15, %zmm7
+
+/* polynomial evaluation */
+ vmulps {rn-sae}, %zmm7, %zmm7, %zmm8
+ vmulps {rn-sae}, %zmm7, %zmm8, %zmm6
+ vfmadd231ps {rn-sae}, %zmm8, %zmm1, %zmm4
+ vfmadd213ps {rn-sae}, %zmm5, %zmm4, %zmm8
+ vfmadd213ps {rn-sae}, %zmm7, %zmm6, %zmm8
+ vaddps {rn-sae}, %zmm9, %zmm8, %zmm10
+ vxorps %zmm0, %zmm10, %zmm0
+
+/* no invcbrt in libm, so taking it out here */
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_atanf16,@function
+ .size __svml_atanf16,.-__svml_atanf16
+..LN__svml_atanf16.0:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_satan_data_internal_avx512:
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 1241513984
+ .long 1241513984
+ .long 1241513984
+ .long 1241513984
+ .long 1241513984
+ .long 1241513984
+ .long 1241513984
+ .long 1241513984
+ .long 1241513984
+ .long 1241513984
+ .long 1241513984
+ .long 1241513984
+ .long 1241513984
+ .long 1241513984
+ .long 1241513984
+ .long 1241513984
+ .long 1089994752
+ .long 1089994752
+ .long 1089994752
+ .long 1089994752
+ .long 1089994752
+ .long 1089994752
+ .long 1089994752
+ .long 1089994752
+ .long 1089994752
+ .long 1089994752
+ .long 1089994752
+ .long 1089994752
+ .long 1089994752
+ .long 1089994752
+ .long 1089994752
+ .long 1089994752
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1333788672
+ .long 1333788672
+ .long 1333788672
+ .long 1333788672
+ .long 1333788672
+ .long 1333788672
+ .long 1333788672
+ .long 1333788672
+ .long 1333788672
+ .long 1333788672
+ .long 1333788672
+ .long 1333788672
+ .long 1333788672
+ .long 1333788672
+ .long 1333788672
+ .long 1333788672
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1048239024
+ .long 1055744824
+ .long 1059372157
+ .long 1061752795
+ .long 1063609315
+ .long 1065064543
+ .long 1065786489
+ .long 1066252045
+ .long 1066633083
+ .long 1066949484
+ .long 1067215699
+ .long 1067442363
+ .long 1067637412
+ .long 1067806856
+ .long 1067955311
+ .long 1068086373
+ .long 1068202874
+ .long 1068307075
+ .long 1068400798
+ .long 1068485529
+ .long 1068562486
+ .long 1068632682
+ .long 1068696961
+ .long 1068756035
+ .long 1068810506
+ .long 1068860887
+ .long 1068907620
+ .long 1068951084
+ .long 1068991608
+ .long 1069029480
+ .long 1069064949
+ .long 0
+ .long 2975494116
+ .long 833369962
+ .long 835299256
+ .long 2998648110
+ .long 2995239174
+ .long 3000492182
+ .long 860207626
+ .long 3008447516
+ .long 3005590622
+ .long 3000153675
+ .long 860754741
+ .long 859285590
+ .long 844944488
+ .long 2993069463
+ .long 858157665
+ .long 3006142000
+ .long 3007693206
+ .long 3009342234
+ .long 847469400
+ .long 3006114683
+ .long 852829553
+ .long 847325583
+ .long 860305056
+ .long 846145135
+ .long 2997638646
+ .long 855837703
+ .long 2979047222
+ .long 2995344192
+ .long 854092798
+ .long 3000498637
+ .long 859965578
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3188697310
+ .long 3188697310
+ .long 3188697310
+ .long 3188697310
+ .long 3188697310
+ .long 3188697310
+ .long 3188697310
+ .long 3188697310
+ .long 3188697310
+ .long 3188697310
+ .long 3188697310
+ .long 3188697310
+ .long 3188697310
+ .long 3188697310
+ .long 3188697310
+ .long 3188697310
+ .long 1045219554
+ .long 1045219554
+ .long 1045219554
+ .long 1045219554
+ .long 1045219554
+ .long 1045219554
+ .long 1045219554
+ .long 1045219554
+ .long 1045219554
+ .long 1045219554
+ .long 1045219554
+ .long 1045219554
+ .long 1045219554
+ .long 1045219554
+ .long 1045219554
+ .long 1045219554
+ .long 3198855850
+ .long 3198855850
+ .long 3198855850
+ .long 3198855850
+ .long 3198855850
+ .long 3198855850
+ .long 3198855850
+ .long 3198855850
+ .long 3198855850
+ .long 3198855850
+ .long 3198855850
+ .long 3198855850
+ .long 3198855850
+ .long 3198855850
+ .long 3198855850
+ .long 3198855850
+ .type __svml_satan_data_internal_avx512,@object
+ .size __svml_satan_data_internal_avx512,1024
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * *
+ * * Compute 0.5*[log(1+x)-log(1-x)], using small table
+ * * lookups that map to AVX3 permute instructions
+ * *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_atanh8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_atanh8
+
+__svml_atanh8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 256+__svml_datanh_data_internal_avx512(%rip), %zmm15
+
+/* round reciprocals to 1+4b mantissas */
+ vmovups 384+__svml_datanh_data_internal_avx512(%rip), %zmm6
+ vmovups 448+__svml_datanh_data_internal_avx512(%rip), %zmm9
+ vmovaps %zmm0, %zmm2
+ vandpd 320+__svml_datanh_data_internal_avx512(%rip), %zmm2, %zmm13
+
+/* 1+y */
+ vaddpd {rn-sae}, %zmm15, %zmm13, %zmm0
+
+/* 1-y */
+ vsubpd {rn-sae}, %zmm13, %zmm15, %zmm4
+ vxorpd %zmm13, %zmm2, %zmm1
+
+/* Yp_high */
+ vsubpd {rn-sae}, %zmm15, %zmm0, %zmm7
+
+/* -Ym_high */
+ vsubpd {rn-sae}, %zmm15, %zmm4, %zmm12
+
+/* RcpP ~ 1/Yp */
+ vrcp14pd %zmm0, %zmm3
+
+/* RcpM ~ 1/Ym */
+ vrcp14pd %zmm4, %zmm5
+
+/* input outside (-1, 1) ? */
+ vcmppd $21, {sae}, %zmm15, %zmm13, %k0
+ vpaddq %zmm6, %zmm3, %zmm11
+ vpaddq %zmm6, %zmm5, %zmm10
+
+/* Yp_low */
+ vsubpd {rn-sae}, %zmm7, %zmm13, %zmm8
+ vandpd %zmm9, %zmm11, %zmm14
+ vandpd %zmm9, %zmm10, %zmm3
+
+/* Ym_low */
+ vaddpd {rn-sae}, %zmm12, %zmm13, %zmm12
+
+/* Reduced argument: Rp = (RcpP*Yp - 1)+RcpP*Yp_low */
+ vfmsub213pd {rn-sae}, %zmm15, %zmm14, %zmm0
+
+/* Reduced argument: Rm = (RcpM*Ym - 1)+RcpM*Ym_low */
+ vfmsub231pd {rn-sae}, %zmm3, %zmm4, %zmm15
+
+/* exponents */
+ vgetexppd {sae}, %zmm14, %zmm5
+ vgetexppd {sae}, %zmm3, %zmm4
+
+/* Table lookups */
+ vmovups __svml_datanh_data_internal_avx512(%rip), %zmm9
+ vmovups 64+__svml_datanh_data_internal_avx512(%rip), %zmm13
+ vmovups 128+__svml_datanh_data_internal_avx512(%rip), %zmm7
+ vfmadd231pd {rn-sae}, %zmm14, %zmm8, %zmm0
+ vfnmadd231pd {rn-sae}, %zmm3, %zmm12, %zmm15
+
+/* Prepare table index */
+ vpsrlq $48, %zmm14, %zmm11
+ vpsrlq $48, %zmm3, %zmm8
+ vmovups 192+__svml_datanh_data_internal_avx512(%rip), %zmm14
+
+/* polynomials */
+ vmovups 512+__svml_datanh_data_internal_avx512(%rip), %zmm3
+
+/* Km-Kp */
+ vsubpd {rn-sae}, %zmm5, %zmm4, %zmm5
+ vmovups 576+__svml_datanh_data_internal_avx512(%rip), %zmm4
+ kmovw %k0, %edx
+ vmovaps %zmm11, %zmm10
+ vmovaps %zmm4, %zmm6
+ vpermi2pd %zmm13, %zmm9, %zmm10
+ vpermi2pd %zmm14, %zmm7, %zmm11
+ vpermt2pd %zmm13, %zmm8, %zmm9
+ vpermt2pd %zmm14, %zmm8, %zmm7
+ vmovups 640+__svml_datanh_data_internal_avx512(%rip), %zmm8
+ vfmadd231pd {rn-sae}, %zmm0, %zmm3, %zmm6
+ vfmadd231pd {rn-sae}, %zmm15, %zmm3, %zmm4
+ vmovups 832+__svml_datanh_data_internal_avx512(%rip), %zmm13
+ vmovups 896+__svml_datanh_data_internal_avx512(%rip), %zmm14
+ vfmadd213pd {rn-sae}, %zmm8, %zmm0, %zmm6
+ vfmadd213pd {rn-sae}, %zmm8, %zmm15, %zmm4
+ vmovups 1024+__svml_datanh_data_internal_avx512(%rip), %zmm8
+ vsubpd {rn-sae}, %zmm11, %zmm7, %zmm12
+
+/* table values */
+ vsubpd {rn-sae}, %zmm10, %zmm9, %zmm3
+ vmovups 704+__svml_datanh_data_internal_avx512(%rip), %zmm7
+ vmovups 768+__svml_datanh_data_internal_avx512(%rip), %zmm9
+
+/* K*L2H + Th */
+ vmovups 1152+__svml_datanh_data_internal_avx512(%rip), %zmm10
+
+/* K*L2L + Tl */
+ vmovups 1216+__svml_datanh_data_internal_avx512(%rip), %zmm11
+ vfmadd213pd {rn-sae}, %zmm7, %zmm0, %zmm6
+ vfmadd213pd {rn-sae}, %zmm7, %zmm15, %zmm4
+ vmovups 960+__svml_datanh_data_internal_avx512(%rip), %zmm7
+ vfmadd231pd {rn-sae}, %zmm5, %zmm10, %zmm3
+ vfmadd213pd {rn-sae}, %zmm12, %zmm11, %zmm5
+ vfmadd213pd {rn-sae}, %zmm9, %zmm0, %zmm6
+ vfmadd213pd {rn-sae}, %zmm9, %zmm15, %zmm4
+ vfmadd213pd {rn-sae}, %zmm13, %zmm0, %zmm6
+ vfmadd213pd {rn-sae}, %zmm13, %zmm15, %zmm4
+ vfmadd213pd {rn-sae}, %zmm14, %zmm0, %zmm6
+ vfmadd213pd {rn-sae}, %zmm14, %zmm15, %zmm4
+ vfmadd213pd {rn-sae}, %zmm7, %zmm0, %zmm6
+ vfmadd213pd {rn-sae}, %zmm7, %zmm15, %zmm4
+ vfmadd213pd {rn-sae}, %zmm8, %zmm0, %zmm6
+ vfmadd213pd {rn-sae}, %zmm8, %zmm15, %zmm4
+
+/* (K*L2L + Tl) + Rp*PolyP */
+ vfmadd213pd {rn-sae}, %zmm5, %zmm0, %zmm6
+ vorpd 1088+__svml_datanh_data_internal_avx512(%rip), %zmm1, %zmm0
+
+/* (K*L2L + Tl) + Rp*PolyP -Rm*PolyM */
+ vfnmadd213pd {rn-sae}, %zmm6, %zmm15, %zmm4
+ vaddpd {rn-sae}, %zmm4, %zmm3, %zmm1
+ vmulpd {rn-sae}, %zmm0, %zmm1, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm2, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_datanh_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_atanh8,@function
+ .size __svml_atanh8,.-__svml_atanh8
+..LN__svml_atanh8.0:
+
+.L_2__routine_start___svml_datanh_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_datanh_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ movzwl 6(%rdi), %eax
+ andl $32752, %eax
+ movsd (%rdi), %xmm0
+ movb 7(%rdi), %dl
+ andb $127, %dl
+ movsd %xmm0, -8(%rsp)
+ cmpl $32752, %eax
+ je .LBL_2_6
+
+.LBL_2_2:
+
+ cmpl $0, -8(%rsp)
+ jne .LBL_2_5
+
+
+ movb %dl, -1(%rsp)
+ cmpl $1072693248, -4(%rsp)
+ jne .LBL_2_5
+
+
+ divsd 8+__datanh_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, (%rsi)
+ movl $2, %eax
+ ret
+
+.LBL_2_5:
+
+ movsd 8+__datanh_la_CoutTab(%rip), %xmm0
+ movl $1, %eax
+ mulsd 16+__datanh_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_6:
+
+ testl $1048575, 4(%rdi)
+ jne .LBL_2_8
+
+
+ cmpl $0, (%rdi)
+ je .LBL_2_2
+
+.LBL_2_8:
+
+ mulsd %xmm0, %xmm0
+ xorl %eax, %eax
+ movsd %xmm0, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_datanh_cout_rare_internal,@function
+ .size __svml_datanh_cout_rare_internal,.-__svml_datanh_cout_rare_internal
+..LN__svml_datanh_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_datanh_data_internal_avx512:
+ .long 0
+ .long 0
+ .long 3222274048
+ .long 1068436016
+ .long 1848246272
+ .long 1069426439
+ .long 1890058240
+ .long 1069940528
+ .long 3348824064
+ .long 1070370807
+ .long 2880143360
+ .long 1070688092
+ .long 3256647680
+ .long 1070883211
+ .long 4139515904
+ .long 1071069655
+ .long 3971973120
+ .long 1071248163
+ .long 3348791296
+ .long 1071419383
+ .long 1605304320
+ .long 1071583887
+ .long 3827646464
+ .long 1071693426
+ .long 1584414720
+ .long 1071769695
+ .long 860815360
+ .long 1071843287
+ .long 3896934400
+ .long 1071914383
+ .long 643547136
+ .long 1071983149
+ .long 0
+ .long 0
+ .long 399283991
+ .long 1030105702
+ .long 1028718588
+ .long 1030642877
+ .long 3808918910
+ .long 3177909005
+ .long 4136237123
+ .long 3177805716
+ .long 3462654649
+ .long 1029900033
+ .long 2051171366
+ .long 3177225921
+ .long 2396640771
+ .long 3177708721
+ .long 3062724207
+ .long 1029196786
+ .long 634920691
+ .long 1029317036
+ .long 1913570380
+ .long 1027322573
+ .long 1734886604
+ .long 3177545033
+ .long 2335489660
+ .long 1025116093
+ .long 3046154741
+ .long 1029750303
+ .long 914782743
+ .long 3176833847
+ .long 3743595607
+ .long 1028041657
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 32768
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 0
+ .long 4294901760
+ .long 1087603010
+ .long 1069318621
+ .long 1087603010
+ .long 1069318621
+ .long 1087603010
+ .long 1069318621
+ .long 1087603010
+ .long 1069318621
+ .long 1087603010
+ .long 1069318621
+ .long 1087603010
+ .long 1069318621
+ .long 1087603010
+ .long 1069318621
+ .long 1087603010
+ .long 1069318621
+ .long 3090058096
+ .long 3217033020
+ .long 3090058096
+ .long 3217033020
+ .long 3090058096
+ .long 3217033020
+ .long 3090058096
+ .long 3217033020
+ .long 3090058096
+ .long 3217033020
+ .long 3090058096
+ .long 3217033020
+ .long 3090058096
+ .long 3217033020
+ .long 3090058096
+ .long 3217033020
+ .long 2566904552
+ .long 1069697314
+ .long 2566904552
+ .long 1069697314
+ .long 2566904552
+ .long 1069697314
+ .long 2566904552
+ .long 1069697314
+ .long 2566904552
+ .long 1069697314
+ .long 2566904552
+ .long 1069697314
+ .long 2566904552
+ .long 1069697314
+ .long 2566904552
+ .long 1069697314
+ .long 4168213957
+ .long 3217380691
+ .long 4168213957
+ .long 3217380691
+ .long 4168213957
+ .long 3217380691
+ .long 4168213957
+ .long 3217380691
+ .long 4168213957
+ .long 3217380691
+ .long 4168213957
+ .long 3217380691
+ .long 4168213957
+ .long 3217380691
+ .long 4168213957
+ .long 3217380691
+ .long 2580363594
+ .long 1070176665
+ .long 2580363594
+ .long 1070176665
+ .long 2580363594
+ .long 1070176665
+ .long 2580363594
+ .long 1070176665
+ .long 2580363594
+ .long 1070176665
+ .long 2580363594
+ .long 1070176665
+ .long 2580363594
+ .long 1070176665
+ .long 2580363594
+ .long 1070176665
+ .long 797185
+ .long 3218079744
+ .long 797185
+ .long 3218079744
+ .long 797185
+ .long 3218079744
+ .long 797185
+ .long 3218079744
+ .long 797185
+ .long 3218079744
+ .long 797185
+ .long 3218079744
+ .long 797185
+ .long 3218079744
+ .long 797185
+ .long 3218079744
+ .long 1431655522
+ .long 1070945621
+ .long 1431655522
+ .long 1070945621
+ .long 1431655522
+ .long 1070945621
+ .long 1431655522
+ .long 1070945621
+ .long 1431655522
+ .long 1070945621
+ .long 1431655522
+ .long 1070945621
+ .long 1431655522
+ .long 1070945621
+ .long 1431655522
+ .long 1070945621
+ .long 4294967237
+ .long 3219128319
+ .long 4294967237
+ .long 3219128319
+ .long 4294967237
+ .long 3219128319
+ .long 4294967237
+ .long 3219128319
+ .long 4294967237
+ .long 3219128319
+ .long 4294967237
+ .long 3219128319
+ .long 4294967237
+ .long 3219128319
+ .long 4294967237
+ .long 3219128319
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .long 3164471296
+ .long 1031600026
+ .type __svml_datanh_data_internal_avx512,@object
+ .size __svml_datanh_data_internal_avx512,1280
+ .align 8
+__datanh_la_CoutTab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 4293918720
+ .type __datanh_la_CoutTab,@object
+ .size __datanh_la_CoutTab,32
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * *
+ * * Compute 0.5*[log(1+x)-log(1-x)], using small table
+ * * lookups that map to AVX3 permute instructions
+ * *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_atanhf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_atanhf16
+
+__svml_atanhf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 256+__svml_satanh_data_internal_avx512(%rip), %zmm4
+
+/* round reciprocals to 1+5b mantissas */
+ vmovups 384+__svml_satanh_data_internal_avx512(%rip), %zmm14
+ vmovups 448+__svml_satanh_data_internal_avx512(%rip), %zmm1
+ vmovaps %zmm0, %zmm11
+ vandps 320+__svml_satanh_data_internal_avx512(%rip), %zmm11, %zmm6
+
+/* 1+y */
+ vaddps {rn-sae}, %zmm4, %zmm6, %zmm9
+
+/* 1-y */
+ vsubps {rn-sae}, %zmm6, %zmm4, %zmm8
+ vxorps %zmm6, %zmm11, %zmm10
+
+/* Yp_high */
+ vsubps {rn-sae}, %zmm4, %zmm9, %zmm2
+
+/* -Ym_high */
+ vsubps {rn-sae}, %zmm4, %zmm8, %zmm5
+
+/* RcpP ~ 1/Yp */
+ vrcp14ps %zmm9, %zmm12
+
+/* RcpM ~ 1/Ym */
+ vrcp14ps %zmm8, %zmm13
+
+/* input outside (-1, 1) ? */
+ vcmpps $21, {sae}, %zmm4, %zmm6, %k0
+ vpaddd %zmm14, %zmm12, %zmm15
+ vpaddd %zmm14, %zmm13, %zmm0
+
+/* Yp_low */
+ vsubps {rn-sae}, %zmm2, %zmm6, %zmm3
+ vandps %zmm1, %zmm15, %zmm7
+ vandps %zmm1, %zmm0, %zmm12
+
+/* Ym_low */
+ vaddps {rn-sae}, %zmm5, %zmm6, %zmm5
+
+/* Reduced argument: Rp = (RcpP*Yp - 1)+RcpP*Yp_low */
+ vfmsub213ps {rn-sae}, %zmm4, %zmm7, %zmm9
+
+/* Reduced argument: Rm = (RcpM*Ym - 1)+RcpM*Ym_low */
+ vfmsub231ps {rn-sae}, %zmm12, %zmm8, %zmm4
+ vmovups 128+__svml_satanh_data_internal_avx512(%rip), %zmm8
+ vmovups 192+__svml_satanh_data_internal_avx512(%rip), %zmm13
+
+/* exponents */
+ vgetexpps {sae}, %zmm7, %zmm15
+ vfmadd231ps {rn-sae}, %zmm7, %zmm3, %zmm9
+
+/* Table lookups */
+ vmovups __svml_satanh_data_internal_avx512(%rip), %zmm6
+ vgetexpps {sae}, %zmm12, %zmm14
+ vfnmadd231ps {rn-sae}, %zmm12, %zmm5, %zmm4
+
+/* Prepare table index */
+ vpsrld $18, %zmm7, %zmm3
+ vpsrld $18, %zmm12, %zmm2
+ vmovups 64+__svml_satanh_data_internal_avx512(%rip), %zmm7
+ vmovups 640+__svml_satanh_data_internal_avx512(%rip), %zmm12
+
+/* Km-Kp */
+ vsubps {rn-sae}, %zmm15, %zmm14, %zmm1
+ kmovw %k0, %edx
+ vmovaps %zmm3, %zmm0
+ vpermi2ps %zmm13, %zmm8, %zmm3
+ vpermt2ps %zmm13, %zmm2, %zmm8
+ vpermi2ps %zmm7, %zmm6, %zmm0
+ vpermt2ps %zmm7, %zmm2, %zmm6
+ vsubps {rn-sae}, %zmm3, %zmm8, %zmm5
+
+/* K*L2H + Th */
+ vmovups 832+__svml_satanh_data_internal_avx512(%rip), %zmm2
+
+/* K*L2L + Tl */
+ vmovups 896+__svml_satanh_data_internal_avx512(%rip), %zmm3
+
+/* polynomials */
+ vmovups 512+__svml_satanh_data_internal_avx512(%rip), %zmm7
+ vmovups 704+__svml_satanh_data_internal_avx512(%rip), %zmm13
+
+/* table values */
+ vsubps {rn-sae}, %zmm0, %zmm6, %zmm0
+ vfmadd231ps {rn-sae}, %zmm1, %zmm2, %zmm0
+ vfmadd213ps {rn-sae}, %zmm5, %zmm3, %zmm1
+ vmovups 576+__svml_satanh_data_internal_avx512(%rip), %zmm3
+ vmovaps %zmm3, %zmm2
+ vfmadd231ps {rn-sae}, %zmm9, %zmm7, %zmm2
+ vfmadd231ps {rn-sae}, %zmm4, %zmm7, %zmm3
+ vfmadd213ps {rn-sae}, %zmm12, %zmm9, %zmm2
+ vfmadd213ps {rn-sae}, %zmm12, %zmm4, %zmm3
+ vfmadd213ps {rn-sae}, %zmm13, %zmm9, %zmm2
+ vfmadd213ps {rn-sae}, %zmm13, %zmm4, %zmm3
+
+/* (K*L2L + Tl) + Rp*PolyP */
+ vfmadd213ps {rn-sae}, %zmm1, %zmm9, %zmm2
+ vorps 768+__svml_satanh_data_internal_avx512(%rip), %zmm10, %zmm9
+
+/* (K*L2L + Tl) + Rp*PolyP -Rm*PolyM */
+ vfnmadd213ps {rn-sae}, %zmm2, %zmm4, %zmm3
+ vaddps {rn-sae}, %zmm3, %zmm0, %zmm4
+ vmulps {rn-sae}, %zmm9, %zmm4, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm11, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_satanh_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_atanhf16,@function
+ .size __svml_atanhf16,.-__svml_atanhf16
+..LN__svml_atanhf16.0:
+
+.L_2__routine_start___svml_satanh_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_satanh_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ movzwl 2(%rdi), %edx
+ movss (%rdi), %xmm1
+ andl $32640, %edx
+ movb 3(%rdi), %al
+ andb $127, %al
+ movss %xmm1, -8(%rsp)
+ movb %al, -5(%rsp)
+ cmpl $32640, %edx
+ je .LBL_2_6
+
+
+ cmpl $1065353216, -8(%rsp)
+ jne .LBL_2_4
+
+
+ divss 4+__satanh_la__imlsAtanhTab(%rip), %xmm1
+ movss %xmm1, (%rsi)
+ movl $2, %eax
+ ret
+
+.LBL_2_4:
+
+ movss 8+__satanh_la__imlsAtanhTab(%rip), %xmm0
+ movl $1, %eax
+ mulss 4+__satanh_la__imlsAtanhTab(%rip), %xmm0
+ movss %xmm0, (%rsi)
+
+
+ ret
+
+.LBL_2_6:
+
+ cmpl $2139095040, -8(%rsp)
+ jne .LBL_2_8
+
+
+ movss 4+__satanh_la__imlsAtanhTab(%rip), %xmm0
+ movl $1, %eax
+ mulss %xmm0, %xmm1
+ movss %xmm1, (%rsi)
+ ret
+
+.LBL_2_8:
+
+ mulss (%rdi), %xmm1
+ xorl %eax, %eax
+ movss %xmm1, (%rsi)
+
+
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_satanh_cout_rare_internal,@function
+ .size __svml_satanh_cout_rare_internal,.-__svml_satanh_cout_rare_internal
+..LN__svml_satanh_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_satanh_data_internal_avx512:
+ .long 0
+ .long 1023148032
+ .long 1031274496
+ .long 1035436032
+ .long 1039204352
+ .long 1041547264
+ .long 1043333120
+ .long 1045069824
+ .long 1046773760
+ .long 1048428544
+ .long 1049313280
+ .long 1050099712
+ .long 1050869760
+ .long 1051623424
+ .long 1052360704
+ .long 1053089792
+ .long 1053794304
+ .long 1054482432
+ .long 1055162368
+ .long 1055825920
+ .long 1056481280
+ .long 1057042432
+ .long 1057353728
+ .long 1057660928
+ .long 1057964032
+ .long 1058263040
+ .long 1058553856
+ .long 1058840576
+ .long 1059123200
+ .long 1059397632
+ .long 1059672064
+ .long 1059942400
+ .long 0
+ .long 925287326
+ .long 950209537
+ .long 928156389
+ .long 954265029
+ .long 3098231288
+ .long 3083833176
+ .long 949397309
+ .long 3045295702
+ .long 940324527
+ .long 3089323092
+ .long 945994465
+ .long 952492302
+ .long 954130348
+ .long 954989406
+ .long 3102096543
+ .long 3093041984
+ .long 947354573
+ .long 3053684310
+ .long 936642948
+ .long 3099086888
+ .long 3098368602
+ .long 946194506
+ .long 952357621
+ .long 943635681
+ .long 3097619830
+ .long 3080925892
+ .long 3078186319
+ .long 3093311347
+ .long 955801008
+ .long 934582639
+ .long 3099571146
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 131072
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 4294705152
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 3196061712
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 1051373854
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .type __svml_satanh_data_internal_avx512,@object
+ .size __svml_satanh_data_internal_avx512,960
+ .align 4
+__satanh_la__imlsAtanhTab:
+ .long 1065353216
+ .long 0
+ .long 2139095040
+ .type __satanh_la__imlsAtanhTab,@object
+ .size __satanh_la__imlsAtanhTab,12
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * x=2^{3*k+j} * 1.b1 b2 ... b5 b6 ... b52
+ * Let r=(x*2^{-3k-j} - 1.b1 b2 ... b5 1)* rcp[b1 b2 ..b5],
+ * where rcp[b1 b2 .. b5]=1/(1.b1 b2 b3 b4 b5 1) in double precision
+ * cbrt(2^j * 1. b1 b2 .. b5 1) is approximated as T[j][b1..b5]+D[j][b1..b5]
+ * (T stores the high 53 bits, D stores the low order bits)
+ * Result=2^k*T+(2^k*T*r)*P+2^k*D
+ * where P=p1+p2*r+..+p8*r^7
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_cbrt8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_cbrt8
+
+__svml_cbrt8:
+
+
+ .cfi_startproc
+..L2:
+
+ vgetmantpd $0, {sae}, %zmm0, %zmm14
+
+/* GetExp(x) */
+ vgetexppd {sae}, %zmm0, %zmm7
+ vmovups 384+__svml_dcbrt_data_internal_avx512(%rip), %zmm8
+
+/* exponent/3 */
+ vmovups 512+__svml_dcbrt_data_internal_avx512(%rip), %zmm9
+ vmovups 576+__svml_dcbrt_data_internal_avx512(%rip), %zmm10
+
+/* Reduced argument: R = DblRcp*Mantissa - 1 */
+ vmovups 704+__svml_dcbrt_data_internal_avx512(%rip), %zmm2
+
+/* exponent%3 (to be used as index) */
+ vmovups 640+__svml_dcbrt_data_internal_avx512(%rip), %zmm11
+
+/* DblRcp ~ 1/Mantissa */
+ vrcp14pd %zmm14, %zmm13
+ vaddpd {rn-sae}, %zmm8, %zmm7, %zmm12
+ vandpd 448+__svml_dcbrt_data_internal_avx512(%rip), %zmm0, %zmm6
+
+/* round DblRcp to 3 fractional bits (RN mode, no Precision exception) */
+ vrndscalepd $72, {sae}, %zmm13, %zmm15
+ vfmsub231pd {rn-sae}, %zmm12, %zmm9, %zmm10
+
+/* polynomial */
+ vmovups 768+__svml_dcbrt_data_internal_avx512(%rip), %zmm0
+ vmovups 896+__svml_dcbrt_data_internal_avx512(%rip), %zmm7
+ vmovups 960+__svml_dcbrt_data_internal_avx512(%rip), %zmm9
+ vfmsub231pd {rn-sae}, %zmm15, %zmm14, %zmm2
+ vrndscalepd $9, {sae}, %zmm10, %zmm5
+
+/* Table lookup */
+ vmovups 128+__svml_dcbrt_data_internal_avx512(%rip), %zmm10
+ vmovups 1024+__svml_dcbrt_data_internal_avx512(%rip), %zmm8
+ vmovups 1216+__svml_dcbrt_data_internal_avx512(%rip), %zmm13
+ vfmadd231pd {rn-sae}, %zmm2, %zmm7, %zmm9
+ vfnmadd231pd {rn-sae}, %zmm5, %zmm11, %zmm12
+ vmovups 1088+__svml_dcbrt_data_internal_avx512(%rip), %zmm11
+ vmovups 1344+__svml_dcbrt_data_internal_avx512(%rip), %zmm14
+
+/* Prepare table index */
+ vpsrlq $49, %zmm15, %zmm1
+
+/* Table lookup: 2^(exponent%3) */
+ vpermpd __svml_dcbrt_data_internal_avx512(%rip), %zmm12, %zmm4
+ vpermpd 64+__svml_dcbrt_data_internal_avx512(%rip), %zmm12, %zmm3
+ vpermt2pd 192+__svml_dcbrt_data_internal_avx512(%rip), %zmm1, %zmm10
+ vmovups 832+__svml_dcbrt_data_internal_avx512(%rip), %zmm1
+ vfmadd231pd {rn-sae}, %zmm2, %zmm8, %zmm11
+ vmovups 1280+__svml_dcbrt_data_internal_avx512(%rip), %zmm12
+ vscalefpd {rn-sae}, %zmm5, %zmm10, %zmm15
+ vfmadd231pd {rn-sae}, %zmm2, %zmm0, %zmm1
+ vmovups 1152+__svml_dcbrt_data_internal_avx512(%rip), %zmm5
+ vfmadd231pd {rn-sae}, %zmm2, %zmm12, %zmm14
+ vmulpd {rn-sae}, %zmm2, %zmm2, %zmm0
+ vfmadd231pd {rn-sae}, %zmm2, %zmm5, %zmm13
+
+/* Sh*R */
+ vmulpd {rn-sae}, %zmm2, %zmm4, %zmm2
+ vfmadd213pd {rn-sae}, %zmm9, %zmm0, %zmm1
+ vfmadd213pd {rn-sae}, %zmm11, %zmm0, %zmm1
+ vfmadd213pd {rn-sae}, %zmm13, %zmm0, %zmm1
+ vfmadd213pd {rn-sae}, %zmm14, %zmm0, %zmm1
+
+/* Sl + (Sh*R)*Poly */
+ vfmadd213pd {rn-sae}, %zmm3, %zmm1, %zmm2
+
+/*
+ * branch-free
+ * scaled_Th*(Sh+Sl+Sh*R*Poly)
+ */
+ vaddpd {rn-sae}, %zmm4, %zmm2, %zmm3
+ vmulpd {rn-sae}, %zmm15, %zmm3, %zmm4
+ vorpd %zmm6, %zmm4, %zmm0
+
+/* no invcbrt in libm, so taking it out here */
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_cbrt8,@function
+ .size __svml_cbrt8,.-__svml_cbrt8
+..LN__svml_cbrt8.0:
+
+.L_2__routine_start___svml_dcbrt_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dcbrt_cout_rare_internal:
+
+
+ .cfi_startproc
+..L5:
+
+ movq %rsi, %r8
+ movzwl 6(%rdi), %r9d
+ andl $32752, %r9d
+ shrl $4, %r9d
+ movb 7(%rdi), %sil
+ movsd (%rdi), %xmm1
+ cmpl $2047, %r9d
+ je .LBL_2_9
+
+
+ ucomisd 432+__dcbrt_la__vmldCbrtTab(%rip), %xmm1
+ jp .LBL_2_3
+ je .LBL_2_8
+
+.LBL_2_3:
+
+ movb %sil, %al
+ lea 440+__dcbrt_la__vmldCbrtTab(%rip), %rdx
+ andb $-128, %al
+ andb $127, %sil
+ shrb $7, %al
+ xorl %edi, %edi
+ movsd %xmm1, -56(%rsp)
+ movzbl %al, %ecx
+ movb %sil, -49(%rsp)
+ movsd (%rdx,%rcx,8), %xmm5
+ testl %r9d, %r9d
+ jne .LBL_2_5
+
+
+ movsd -56(%rsp), %xmm0
+ movl $100, %edi
+ mulsd 360+__dcbrt_la__vmldCbrtTab(%rip), %xmm0
+ movsd %xmm0, -56(%rsp)
+ jmp .LBL_2_6
+
+.LBL_2_5:
+
+ movsd -56(%rsp), %xmm0
+
+.LBL_2_6:
+
+ movzwl -50(%rsp), %esi
+ movl $1431655766, %eax
+ andl $32752, %esi
+ lea __dcbrt_la__vmldCbrtTab(%rip), %r11
+ shrl $4, %esi
+ movsd %xmm0, -40(%rsp)
+ movsd 368+__dcbrt_la__vmldCbrtTab(%rip), %xmm14
+ imull %esi
+ movl $1431655766, %eax
+ lea (%rdx,%rdx,2), %ecx
+ negl %ecx
+ addl %esi, %ecx
+ subl %ecx, %esi
+ addl %ecx, %ecx
+ addl $-1023, %esi
+ imull %esi
+ sarl $31, %esi
+ subl %esi, %edx
+ addl $1023, %edx
+ subl %edi, %edx
+ movzwl -34(%rsp), %edi
+ andl $2047, %edx
+ andl $-32753, %edi
+ addl $16368, %edi
+ movw %di, -34(%rsp)
+ movsd -40(%rsp), %xmm11
+ movaps %xmm11, %xmm6
+ mulsd 376+__dcbrt_la__vmldCbrtTab(%rip), %xmm6
+ movsd %xmm6, -32(%rsp)
+ movsd -32(%rsp), %xmm7
+ movl -36(%rsp), %r10d
+ andl $1048575, %r10d
+ subsd -40(%rsp), %xmm7
+ movsd %xmm7, -24(%rsp)
+ movsd -32(%rsp), %xmm9
+ movsd -24(%rsp), %xmm8
+ shrl $15, %r10d
+ subsd %xmm8, %xmm9
+ movsd %xmm9, -32(%rsp)
+ movsd -32(%rsp), %xmm10
+ movsd (%r11,%r10,8), %xmm4
+ subsd %xmm10, %xmm11
+ movaps %xmm4, %xmm12
+ movaps %xmm4, %xmm13
+ mulsd %xmm4, %xmm12
+ movsd %xmm11, -24(%rsp)
+ movsd -32(%rsp), %xmm2
+ mulsd %xmm12, %xmm2
+ mulsd %xmm2, %xmm13
+ movsd 440+__dcbrt_la__vmldCbrtTab(%rip), %xmm6
+ movsd -24(%rsp), %xmm3
+ subsd %xmm13, %xmm6
+ mulsd %xmm12, %xmm3
+ mulsd %xmm6, %xmm14
+ mulsd %xmm3, %xmm4
+ movsd %xmm14, -32(%rsp)
+ movsd -32(%rsp), %xmm15
+ xorps .L_2il0floatpacket.81(%rip), %xmm4
+ subsd %xmm6, %xmm15
+ movsd %xmm15, -24(%rsp)
+ movsd -32(%rsp), %xmm1
+ movsd -24(%rsp), %xmm0
+ movsd 256+__dcbrt_la__vmldCbrtTab(%rip), %xmm9
+ subsd %xmm0, %xmm1
+ movsd %xmm1, -32(%rsp)
+ movsd -32(%rsp), %xmm13
+ movsd 352+__dcbrt_la__vmldCbrtTab(%rip), %xmm0
+ subsd %xmm13, %xmm6
+ movsd %xmm6, -24(%rsp)
+ movsd -32(%rsp), %xmm1
+ movsd -24(%rsp), %xmm7
+ movaps %xmm1, %xmm8
+ movsd 256+__dcbrt_la__vmldCbrtTab(%rip), %xmm11
+ addsd %xmm7, %xmm4
+ movsd 256+__dcbrt_la__vmldCbrtTab(%rip), %xmm7
+ addsd %xmm4, %xmm8
+ mulsd %xmm8, %xmm0
+ movslq %ecx, %rcx
+ addsd 344+__dcbrt_la__vmldCbrtTab(%rip), %xmm0
+ mulsd %xmm8, %xmm0
+ movq 440+__dcbrt_la__vmldCbrtTab(%rip), %r9
+ movq %r9, -48(%rsp)
+ shrq $48, %r9
+ addsd 336+__dcbrt_la__vmldCbrtTab(%rip), %xmm0
+ mulsd %xmm8, %xmm0
+ andl $-32753, %r9d
+ shll $4, %edx
+ addsd 328+__dcbrt_la__vmldCbrtTab(%rip), %xmm0
+ mulsd %xmm8, %xmm0
+ orl %edx, %r9d
+ movw %r9w, -42(%rsp)
+ addsd 320+__dcbrt_la__vmldCbrtTab(%rip), %xmm0
+ mulsd %xmm8, %xmm0
+ addsd 312+__dcbrt_la__vmldCbrtTab(%rip), %xmm0
+ mulsd %xmm8, %xmm0
+ addsd 304+__dcbrt_la__vmldCbrtTab(%rip), %xmm0
+ mulsd %xmm8, %xmm0
+ addsd 296+__dcbrt_la__vmldCbrtTab(%rip), %xmm0
+ mulsd %xmm8, %xmm0
+ addsd 288+__dcbrt_la__vmldCbrtTab(%rip), %xmm0
+ mulsd %xmm8, %xmm0
+ addsd 280+__dcbrt_la__vmldCbrtTab(%rip), %xmm0
+ mulsd %xmm8, %xmm0
+ addsd 272+__dcbrt_la__vmldCbrtTab(%rip), %xmm0
+ mulsd %xmm8, %xmm0
+ addsd %xmm0, %xmm9
+ movsd %xmm9, -32(%rsp)
+ movsd -32(%rsp), %xmm10
+ movsd 368+__dcbrt_la__vmldCbrtTab(%rip), %xmm9
+ subsd %xmm10, %xmm11
+ movsd %xmm11, -24(%rsp)
+ movsd -32(%rsp), %xmm14
+ movsd -24(%rsp), %xmm12
+ addsd %xmm12, %xmm14
+ movsd %xmm14, -16(%rsp)
+ movaps %xmm2, %xmm14
+ movsd -24(%rsp), %xmm6
+ addsd %xmm0, %xmm6
+ movsd %xmm6, -24(%rsp)
+ movsd -16(%rsp), %xmm15
+ subsd %xmm15, %xmm7
+ movsd %xmm7, -16(%rsp)
+ movsd -24(%rsp), %xmm8
+ movsd -16(%rsp), %xmm0
+ addsd %xmm0, %xmm8
+ movsd %xmm8, -16(%rsp)
+ movaps %xmm1, %xmm8
+ movsd -32(%rsp), %xmm13
+ mulsd %xmm13, %xmm9
+ movsd -16(%rsp), %xmm0
+ movsd %xmm9, -32(%rsp)
+ movsd -32(%rsp), %xmm10
+ subsd %xmm13, %xmm10
+ addsd 264+__dcbrt_la__vmldCbrtTab(%rip), %xmm0
+ movsd %xmm10, -24(%rsp)
+ movsd -32(%rsp), %xmm11
+ movsd -24(%rsp), %xmm6
+ subsd %xmm6, %xmm11
+ movsd %xmm11, -32(%rsp)
+ movsd -32(%rsp), %xmm12
+ subsd %xmm12, %xmm13
+ movsd %xmm13, -24(%rsp)
+ movsd -32(%rsp), %xmm7
+ movsd -24(%rsp), %xmm6
+ mulsd %xmm7, %xmm8
+ addsd %xmm0, %xmm6
+ mulsd %xmm4, %xmm7
+ mulsd %xmm6, %xmm4
+ mulsd %xmm6, %xmm1
+ addsd %xmm4, %xmm7
+ movsd 368+__dcbrt_la__vmldCbrtTab(%rip), %xmm4
+ addsd %xmm1, %xmm7
+ mulsd %xmm8, %xmm4
+ movsd %xmm7, -32(%rsp)
+ movsd -32(%rsp), %xmm10
+ movsd %xmm4, -32(%rsp)
+ movsd -32(%rsp), %xmm0
+ subsd %xmm8, %xmm0
+ movsd %xmm0, -24(%rsp)
+ movsd -32(%rsp), %xmm1
+ movsd -24(%rsp), %xmm4
+ subsd %xmm4, %xmm1
+ movsd %xmm1, -32(%rsp)
+ movsd -32(%rsp), %xmm6
+ subsd %xmm6, %xmm8
+ movsd %xmm8, -24(%rsp)
+ movsd -32(%rsp), %xmm9
+ movsd -24(%rsp), %xmm7
+ movaps %xmm9, %xmm1
+ mulsd %xmm3, %xmm9
+ addsd %xmm7, %xmm10
+ mulsd %xmm2, %xmm1
+ movaps %xmm10, %xmm11
+ movaps %xmm1, %xmm12
+ mulsd %xmm3, %xmm10
+ addsd %xmm2, %xmm12
+ mulsd %xmm2, %xmm11
+ addsd %xmm9, %xmm10
+ addsd %xmm10, %xmm11
+ movsd %xmm11, -32(%rsp)
+ movsd -32(%rsp), %xmm0
+ movsd %xmm12, -32(%rsp)
+ movsd -32(%rsp), %xmm13
+ subsd %xmm13, %xmm14
+ movsd %xmm14, -24(%rsp)
+ movsd -32(%rsp), %xmm9
+ movsd -24(%rsp), %xmm15
+ addsd %xmm15, %xmm9
+ movsd %xmm9, -16(%rsp)
+ movsd -24(%rsp), %xmm10
+ addsd %xmm10, %xmm1
+ movsd %xmm1, -24(%rsp)
+ movsd -16(%rsp), %xmm4
+ subsd %xmm4, %xmm2
+ movsd 368+__dcbrt_la__vmldCbrtTab(%rip), %xmm4
+ movsd %xmm2, -16(%rsp)
+ movsd -24(%rsp), %xmm1
+ movsd -16(%rsp), %xmm2
+ addsd %xmm2, %xmm1
+ movsd %xmm1, -16(%rsp)
+ movsd -32(%rsp), %xmm9
+ mulsd %xmm9, %xmm4
+ movsd -16(%rsp), %xmm11
+ movsd %xmm4, -32(%rsp)
+ movsd -32(%rsp), %xmm6
+ subsd %xmm9, %xmm6
+ movsd %xmm6, -24(%rsp)
+ movsd -32(%rsp), %xmm7
+ movsd -24(%rsp), %xmm2
+ subsd %xmm2, %xmm7
+ movsd %xmm7, -32(%rsp)
+ movsd -32(%rsp), %xmm8
+ subsd %xmm8, %xmm9
+ movsd %xmm9, -24(%rsp)
+ movsd -32(%rsp), %xmm12
+ movsd -24(%rsp), %xmm10
+ addsd %xmm0, %xmm10
+ addsd %xmm3, %xmm10
+ movsd 392(%r11,%rcx,8), %xmm3
+ movaps %xmm3, %xmm0
+ addsd %xmm10, %xmm11
+ mulsd %xmm12, %xmm3
+ mulsd %xmm11, %xmm0
+ movsd 384(%r11,%rcx,8), %xmm10
+ addsd %xmm3, %xmm0
+ mulsd %xmm10, %xmm11
+ mulsd %xmm10, %xmm12
+ addsd %xmm11, %xmm0
+ movsd %xmm0, -32(%rsp)
+ movsd -32(%rsp), %xmm3
+ addsd %xmm3, %xmm12
+ mulsd -48(%rsp), %xmm12
+ mulsd %xmm12, %xmm5
+ movsd %xmm5, (%r8)
+
+.LBL_2_7:
+
+ xorl %eax, %eax
+ ret
+
+.LBL_2_8:
+
+ movsd 440+__dcbrt_la__vmldCbrtTab(%rip), %xmm0
+ mulsd %xmm0, %xmm1
+ movsd %xmm1, (%r8)
+ jmp .LBL_2_7
+
+.LBL_2_9:
+
+ addsd %xmm1, %xmm1
+ movsd %xmm1, (%r8)
+ jmp .LBL_2_7
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dcbrt_cout_rare_internal,@function
+ .size __svml_dcbrt_cout_rare_internal,.-__svml_dcbrt_cout_rare_internal
+..LN__svml_dcbrt_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dcbrt_data_internal_avx512:
+ .long 0
+ .long 1072693248
+ .long 4186796683
+ .long 1072965794
+ .long 2772266557
+ .long 1073309182
+ .long 0
+ .long 0
+ .long 0
+ .long 3220176896
+ .long 4186796683
+ .long 3220449442
+ .long 2772266557
+ .long 3220792830
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1418634270
+ .long 3162364962
+ .long 2576690953
+ .long 3164558313
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1418634270
+ .long 1014881314
+ .long 2576690953
+ .long 1017074665
+ .long 0
+ .long 0
+ .long 4186796683
+ .long 1072965794
+ .long 1554061055
+ .long 1072914931
+ .long 3992368458
+ .long 1072871093
+ .long 3714535808
+ .long 1072832742
+ .long 954824104
+ .long 1072798779
+ .long 3256858690
+ .long 1072768393
+ .long 3858344660
+ .long 1072740974
+ .long 1027250248
+ .long 1072716050
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1418634270
+ .long 3162364962
+ .long 629721892
+ .long 1016287007
+ .long 1776620500
+ .long 3163956186
+ .long 648592220
+ .long 1016269578
+ .long 1295766103
+ .long 3161896715
+ .long 1348094586
+ .long 3164476360
+ .long 2407028709
+ .long 1015925873
+ .long 497428409
+ .long 1014435402
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 1431655766
+ .long 1070945621
+ .long 1431655766
+ .long 1070945621
+ .long 1431655766
+ .long 1070945621
+ .long 1431655766
+ .long 1070945621
+ .long 1431655766
+ .long 1070945621
+ .long 1431655766
+ .long 1070945621
+ .long 1431655766
+ .long 1070945621
+ .long 1431655766
+ .long 1070945621
+ .long 0
+ .long 1126170624
+ .long 0
+ .long 1126170624
+ .long 0
+ .long 1126170624
+ .long 0
+ .long 1126170624
+ .long 0
+ .long 1126170624
+ .long 0
+ .long 1126170624
+ .long 0
+ .long 1126170624
+ .long 0
+ .long 1126170624
+ .long 0
+ .long 1074266112
+ .long 0
+ .long 1074266112
+ .long 0
+ .long 1074266112
+ .long 0
+ .long 1074266112
+ .long 0
+ .long 1074266112
+ .long 0
+ .long 1074266112
+ .long 0
+ .long 1074266112
+ .long 0
+ .long 1074266112
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 1792985698
+ .long 3213372987
+ .long 1792985698
+ .long 3213372987
+ .long 1792985698
+ .long 3213372987
+ .long 1792985698
+ .long 3213372987
+ .long 1792985698
+ .long 3213372987
+ .long 1792985698
+ .long 3213372987
+ .long 1792985698
+ .long 3213372987
+ .long 1792985698
+ .long 3213372987
+ .long 3135539317
+ .long 1066129956
+ .long 3135539317
+ .long 1066129956
+ .long 3135539317
+ .long 1066129956
+ .long 3135539317
+ .long 1066129956
+ .long 3135539317
+ .long 1066129956
+ .long 3135539317
+ .long 1066129956
+ .long 3135539317
+ .long 1066129956
+ .long 3135539317
+ .long 1066129956
+ .long 2087834975
+ .long 3213899448
+ .long 2087834975
+ .long 3213899448
+ .long 2087834975
+ .long 3213899448
+ .long 2087834975
+ .long 3213899448
+ .long 2087834975
+ .long 3213899448
+ .long 2087834975
+ .long 3213899448
+ .long 2087834975
+ .long 3213899448
+ .long 2087834975
+ .long 3213899448
+ .long 2476259604
+ .long 1066628333
+ .long 2476259604
+ .long 1066628333
+ .long 2476259604
+ .long 1066628333
+ .long 2476259604
+ .long 1066628333
+ .long 2476259604
+ .long 1066628333
+ .long 2476259604
+ .long 1066628333
+ .long 2476259604
+ .long 1066628333
+ .long 2476259604
+ .long 1066628333
+ .long 2012366478
+ .long 3214412045
+ .long 2012366478
+ .long 3214412045
+ .long 2012366478
+ .long 3214412045
+ .long 2012366478
+ .long 3214412045
+ .long 2012366478
+ .long 3214412045
+ .long 2012366478
+ .long 3214412045
+ .long 2012366478
+ .long 3214412045
+ .long 2012366478
+ .long 3214412045
+ .long 1104999785
+ .long 1067378449
+ .long 1104999785
+ .long 1067378449
+ .long 1104999785
+ .long 1067378449
+ .long 1104999785
+ .long 1067378449
+ .long 1104999785
+ .long 1067378449
+ .long 1104999785
+ .long 1067378449
+ .long 1104999785
+ .long 1067378449
+ .long 1104999785
+ .long 1067378449
+ .long 3534763582
+ .long 3215266280
+ .long 3534763582
+ .long 3215266280
+ .long 3534763582
+ .long 3215266280
+ .long 3534763582
+ .long 3215266280
+ .long 3534763582
+ .long 3215266280
+ .long 3534763582
+ .long 3215266280
+ .long 3534763582
+ .long 3215266280
+ .long 3534763582
+ .long 3215266280
+ .long 1007386161
+ .long 1068473053
+ .long 1007386161
+ .long 1068473053
+ .long 1007386161
+ .long 1068473053
+ .long 1007386161
+ .long 1068473053
+ .long 1007386161
+ .long 1068473053
+ .long 1007386161
+ .long 1068473053
+ .long 1007386161
+ .long 1068473053
+ .long 1007386161
+ .long 1068473053
+ .long 477218625
+ .long 3216798151
+ .long 477218625
+ .long 3216798151
+ .long 477218625
+ .long 3216798151
+ .long 477218625
+ .long 3216798151
+ .long 477218625
+ .long 3216798151
+ .long 477218625
+ .long 3216798151
+ .long 477218625
+ .long 3216798151
+ .long 477218625
+ .long 3216798151
+ .long 1431655767
+ .long 1070945621
+ .long 1431655767
+ .long 1070945621
+ .long 1431655767
+ .long 1070945621
+ .long 1431655767
+ .long 1070945621
+ .long 1431655767
+ .long 1070945621
+ .long 1431655767
+ .long 1070945621
+ .long 1431655767
+ .long 1070945621
+ .long 1431655767
+ .long 1070945621
+ .type __svml_dcbrt_data_internal_avx512,@object
+ .size __svml_dcbrt_data_internal_avx512,1408
+ .align 32
+__dcbrt_la__vmldCbrtTab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072668672
+ .long 0
+ .long 1072644096
+ .long 0
+ .long 1072627712
+ .long 0
+ .long 1072611328
+ .long 0
+ .long 1072586752
+ .long 0
+ .long 1072570368
+ .long 0
+ .long 1072553984
+ .long 0
+ .long 1072537600
+ .long 0
+ .long 1072521216
+ .long 0
+ .long 1072504832
+ .long 0
+ .long 1072488448
+ .long 0
+ .long 1072480256
+ .long 0
+ .long 1072463872
+ .long 0
+ .long 1072447488
+ .long 0
+ .long 1072439296
+ .long 0
+ .long 1072422912
+ .long 0
+ .long 1072414720
+ .long 0
+ .long 1072398336
+ .long 0
+ .long 1072390144
+ .long 0
+ .long 1072373760
+ .long 0
+ .long 1072365568
+ .long 0
+ .long 1072357376
+ .long 0
+ .long 1072340992
+ .long 0
+ .long 1072332800
+ .long 0
+ .long 1072324608
+ .long 0
+ .long 1072308224
+ .long 0
+ .long 1072300032
+ .long 0
+ .long 1072291840
+ .long 0
+ .long 1072283648
+ .long 0
+ .long 1072275456
+ .long 0
+ .long 1072267264
+ .long 1431655765
+ .long 1071994197
+ .long 1431655765
+ .long 1015371093
+ .long 1908874354
+ .long 1071761180
+ .long 1007461464
+ .long 1071618781
+ .long 565592401
+ .long 1071446176
+ .long 241555088
+ .long 1071319599
+ .long 943963244
+ .long 1071221150
+ .long 2330668378
+ .long 1071141453
+ .long 2770428108
+ .long 1071075039
+ .long 3622256836
+ .long 1071018464
+ .long 1497196870
+ .long 1070969433
+ .long 280472551
+ .long 1070926345
+ .long 1585032765
+ .long 1070888044
+ .long 0
+ .long 1387266048
+ .long 33554432
+ .long 1101004800
+ .long 512
+ .long 1117782016
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 4160749568
+ .long 1072965794
+ .long 2921479643
+ .long 1043912488
+ .long 2684354560
+ .long 1073309182
+ .long 4060791142
+ .long 1045755320
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 3220176896
+ .type __dcbrt_la__vmldCbrtTab,@object
+ .size __dcbrt_la__vmldCbrtTab,456
+ .space 8, 0x00
+ .align 16
+.L_2il0floatpacket.81:
+ .long 0x00000000,0x80000000,0x00000000,0x00000000
+ .type .L_2il0floatpacket.81,@object
+ .size .L_2il0floatpacket.81,16
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * x=2^{3*k+j} * 1.b1 b2 ... b5 b6 ... b52
+ * Let r=(x*2^{-3k-j} - 1.b1 b2 ... b5 1)* rcp[b1 b2 ..b5],
+ * where rcp[b1 b2 .. b5]=1/(1.b1 b2 b3 b4 b5 1) in single precision
+ * cbrtf(2^j * 1. b1 b2 .. b5 1) is approximated as T[j][b1..b5]+D[j][b1..b5]
+ * (T stores the high 24 bits, D stores the low order bits)
+ * Result=2^k*T+(2^k*T*r)*P+2^k*D
+ * where P=p1+p2*r+..
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_cbrtf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_cbrtf16
+
+__svml_cbrtf16:
+
+
+ .cfi_startproc
+..L2:
+
+ vgetmantps $0, {sae}, %zmm0, %zmm8
+
+/* GetExp(x) */
+ vgetexpps {sae}, %zmm0, %zmm1
+ vmovups 384+__svml_scbrt_data_internal_avx512(%rip), %zmm2
+
+/* exponent/3 */
+ vmovups 512+__svml_scbrt_data_internal_avx512(%rip), %zmm3
+ vmovups 576+__svml_scbrt_data_internal_avx512(%rip), %zmm4
+ vmovups 704+__svml_scbrt_data_internal_avx512(%rip), %zmm15
+
+/* exponent%3 (to be used as index) */
+ vmovups 640+__svml_scbrt_data_internal_avx512(%rip), %zmm5
+
+/* polynomial */
+ vmovups 768+__svml_scbrt_data_internal_avx512(%rip), %zmm11
+ vmovups 896+__svml_scbrt_data_internal_avx512(%rip), %zmm14
+
+/* Table lookup */
+ vmovups 128+__svml_scbrt_data_internal_avx512(%rip), %zmm12
+
+/* DblRcp ~ 1/Mantissa */
+ vrcp14ps %zmm8, %zmm7
+ vaddps {rn-sae}, %zmm2, %zmm1, %zmm6
+ vandps 448+__svml_scbrt_data_internal_avx512(%rip), %zmm0, %zmm0
+
+/* round DblRcp to 3 fractional bits (RN mode, no Precision exception) */
+ vrndscaleps $88, {sae}, %zmm7, %zmm9
+ vfmsub231ps {rn-sae}, %zmm6, %zmm3, %zmm4
+ vmovups 832+__svml_scbrt_data_internal_avx512(%rip), %zmm7
+
+/* Reduced argument: R = DblRcp*Mantissa - 1 */
+ vfmsub231ps {rn-sae}, %zmm9, %zmm8, %zmm15
+ vrndscaleps $9, {sae}, %zmm4, %zmm13
+
+/* Prepare table index */
+ vpsrld $19, %zmm9, %zmm10
+ vfmadd231ps {rn-sae}, %zmm15, %zmm11, %zmm7
+ vfnmadd231ps {rn-sae}, %zmm13, %zmm5, %zmm6
+ vpermt2ps 192+__svml_scbrt_data_internal_avx512(%rip), %zmm10, %zmm12
+ vfmadd213ps {rn-sae}, %zmm14, %zmm15, %zmm7
+ vscalefps {rn-sae}, %zmm13, %zmm12, %zmm2
+
+/* Table lookup: 2^(exponent%3) */
+ vpermps __svml_scbrt_data_internal_avx512(%rip), %zmm6, %zmm1
+ vpermps 64+__svml_scbrt_data_internal_avx512(%rip), %zmm6, %zmm6
+
+/* Sh*R */
+ vmulps {rn-sae}, %zmm15, %zmm1, %zmm14
+
+/* Sl + (Sh*R)*Poly */
+ vfmadd213ps {rn-sae}, %zmm6, %zmm7, %zmm14
+
+/*
+ * branch-free
+ * scaled_Th*(Sh+Sl+Sh*R*Poly)
+ */
+ vaddps {rn-sae}, %zmm1, %zmm14, %zmm15
+ vmulps {rn-sae}, %zmm2, %zmm15, %zmm3
+ vorps %zmm0, %zmm3, %zmm0
+
+/* no invcbrt in libm, so taking it out here */
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_cbrtf16,@function
+ .size __svml_cbrtf16,.-__svml_cbrtf16
+..LN__svml_cbrtf16.0:
+
+.L_2__routine_start___svml_scbrt_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_scbrt_cout_rare_internal:
+
+
+ .cfi_startproc
+..L5:
+
+ movq %rsi, %r9
+ movl $1065353216, -24(%rsp)
+ movss (%rdi), %xmm0
+ movss -24(%rsp), %xmm1
+ mulss %xmm0, %xmm1
+ movss %xmm1, -4(%rsp)
+ movzwl -2(%rsp), %eax
+ andl $32640, %eax
+ shrl $7, %eax
+ cmpl $255, %eax
+ je .LBL_2_9
+
+
+ pxor %xmm0, %xmm0
+ ucomiss %xmm0, %xmm1
+ jp .LBL_2_3
+ je .LBL_2_8
+
+.LBL_2_3:
+
+ testl %eax, %eax
+ jne .LBL_2_5
+
+
+ movl $2122317824, -24(%rsp)
+ movl $713031680, -20(%rsp)
+ jmp .LBL_2_6
+
+.LBL_2_5:
+
+ movl $1065353216, %eax
+ movl %eax, -24(%rsp)
+ movl %eax, -20(%rsp)
+
+.LBL_2_6:
+
+ movss -24(%rsp), %xmm0
+ lea __scbrt_la_vscbrt_ha_cout_data(%rip), %rsi
+ mulss %xmm0, %xmm1
+ movd %xmm1, %ecx
+ movss %xmm1, -4(%rsp)
+ movl %ecx, %r10d
+ movl %ecx, %edi
+ andl $8388607, %r10d
+ movl %ecx, %r11d
+ shrl $23, %edi
+ andl $8257536, %r11d
+ orl $-1082130432, %r10d
+ orl $-1081999360, %r11d
+ movl %r10d, -16(%rsp)
+ movl %ecx, %edx
+ movzbl %dil, %r8d
+ andl $2147483647, %ecx
+ movl %r11d, -12(%rsp)
+ andl $-256, %edi
+ movss -16(%rsp), %xmm1
+ addl $2139095040, %ecx
+ shrl $16, %edx
+ subss -12(%rsp), %xmm1
+ andl $124, %edx
+ lea (%r8,%r8,4), %r10d
+ mulss (%rsi,%rdx), %xmm1
+ lea (%r10,%r10), %r11d
+ movss .L_2il0floatpacket.35(%rip), %xmm4
+ lea (%r11,%r11), %eax
+ addl %eax, %eax
+ lea (%r10,%r11,8), %r10d
+ addl %eax, %eax
+ decl %r8d
+ mulss %xmm1, %xmm4
+ shll $7, %r8d
+ lea (%r10,%rax,8), %r11d
+ lea (%r11,%rax,8), %r10d
+ shrl $12, %r10d
+ addss .L_2il0floatpacket.34(%rip), %xmm4
+ mulss %xmm1, %xmm4
+ lea 85(%r10), %eax
+ orl %edi, %eax
+ xorl %edi, %edi
+ cmpl $-16777217, %ecx
+ addss .L_2il0floatpacket.33(%rip), %xmm4
+ setg %dil
+ shll $7, %r10d
+ negl %edi
+ subl %r10d, %r8d
+ addl %r10d, %r10d
+ subl %r10d, %r8d
+ notl %edi
+ addl %r8d, %edx
+ andl %edx, %edi
+ shll $23, %eax
+ addl %edi, %edi
+ movl %eax, -8(%rsp)
+ movss 128(%rdi,%rsi), %xmm5
+ movss -8(%rsp), %xmm2
+ mulss %xmm1, %xmm4
+ mulss %xmm2, %xmm5
+ addss .L_2il0floatpacket.32(%rip), %xmm4
+ mulss %xmm5, %xmm1
+ movss 132(%rsi,%rdi), %xmm3
+ mulss %xmm1, %xmm4
+ mulss %xmm2, %xmm3
+ addss %xmm3, %xmm4
+ addss %xmm4, %xmm5
+ mulss -20(%rsp), %xmm5
+ movss %xmm5, (%r9)
+
+.LBL_2_7:
+
+ xorl %eax, %eax
+ ret
+
+.LBL_2_8:
+
+ movss %xmm1, (%r9)
+ jmp .LBL_2_7
+
+.LBL_2_9:
+
+ addss %xmm0, %xmm0
+ movss %xmm0, (%r9)
+ jmp .LBL_2_7
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_scbrt_cout_rare_internal,@function
+ .size __svml_scbrt_cout_rare_internal,.-__svml_scbrt_cout_rare_internal
+..LN__svml_scbrt_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_scbrt_data_internal_avx512:
+ .long 1065353216
+ .long 1067533592
+ .long 1070280693
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2999865775
+ .long 849849800
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1067533592
+ .long 1067322155
+ .long 1067126683
+ .long 1066945178
+ .long 1066775983
+ .long 1066617708
+ .long 1066469175
+ .long 1066329382
+ .long 1066197466
+ .long 1066072682
+ .long 1065954382
+ .long 1065841998
+ .long 1065735031
+ .long 1065633040
+ .long 1065535634
+ .long 1065442463
+ .long 1065353216
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2999865775
+ .long 849353281
+ .long 2992093760
+ .long 858369405
+ .long 861891413
+ .long 3001900484
+ .long 2988845984
+ .long 3009185201
+ .long 3001209163
+ .long 847824101
+ .long 839380496
+ .long 845124191
+ .long 851391835
+ .long 856440803
+ .long 2989578734
+ .long 852890174
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1249902592
+ .long 1249902592
+ .long 1249902592
+ .long 1249902592
+ .long 1249902592
+ .long 1249902592
+ .long 1249902592
+ .long 1249902592
+ .long 1249902592
+ .long 1249902592
+ .long 1249902592
+ .long 1249902592
+ .long 1249902592
+ .long 1249902592
+ .long 1249902592
+ .long 1249902592
+ .long 1077936128
+ .long 1077936128
+ .long 1077936128
+ .long 1077936128
+ .long 1077936128
+ .long 1077936128
+ .long 1077936128
+ .long 1077936128
+ .long 1077936128
+ .long 1077936128
+ .long 1077936128
+ .long 1077936128
+ .long 1077936128
+ .long 1077936128
+ .long 1077936128
+ .long 1077936128
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1031603580
+ .long 1031603580
+ .long 1031603580
+ .long 1031603580
+ .long 1031603580
+ .long 1031603580
+ .long 1031603580
+ .long 1031603580
+ .long 1031603580
+ .long 1031603580
+ .long 1031603580
+ .long 1031603580
+ .long 1031603580
+ .long 1031603580
+ .long 1031603580
+ .long 1031603580
+ .long 3185812323
+ .long 3185812323
+ .long 3185812323
+ .long 3185812323
+ .long 3185812323
+ .long 3185812323
+ .long 3185812323
+ .long 3185812323
+ .long 3185812323
+ .long 3185812323
+ .long 3185812323
+ .long 3185812323
+ .long 3185812323
+ .long 3185812323
+ .long 3185812323
+ .long 3185812323
+ .long 1051372202
+ .long 1051372202
+ .long 1051372202
+ .long 1051372202
+ .long 1051372202
+ .long 1051372202
+ .long 1051372202
+ .long 1051372202
+ .long 1051372202
+ .long 1051372202
+ .long 1051372202
+ .long 1051372202
+ .long 1051372202
+ .long 1051372202
+ .long 1051372202
+ .long 1051372202
+ .type __svml_scbrt_data_internal_avx512,@object
+ .size __svml_scbrt_data_internal_avx512,960
+ .align 64
+__scbrt_la_vscbrt_ha_cout_data:
+ .long 3212578753
+ .long 3212085645
+ .long 3211621124
+ .long 3211182772
+ .long 3210768440
+ .long 3210376206
+ .long 3210004347
+ .long 3209651317
+ .long 3209315720
+ .long 3208996296
+ .long 3208691905
+ .long 3208401508
+ .long 3208124163
+ .long 3207859009
+ .long 3207605259
+ .long 3207362194
+ .long 3207129151
+ .long 3206905525
+ .long 3206690755
+ .long 3206484326
+ .long 3206285761
+ .long 3206094618
+ .long 3205910490
+ .long 3205732998
+ .long 3205561788
+ .long 3205396533
+ .long 3205236929
+ .long 3205082689
+ .long 3204933547
+ .long 3204789256
+ .long 3204649583
+ .long 3204514308
+ .long 1065396681
+ .long 839340838
+ .long 1065482291
+ .long 867750258
+ .long 1065566215
+ .long 851786446
+ .long 1065648532
+ .long 853949398
+ .long 1065729317
+ .long 864938789
+ .long 1065808640
+ .long 864102364
+ .long 1065886565
+ .long 864209792
+ .long 1065963152
+ .long 865422805
+ .long 1066038457
+ .long 867593594
+ .long 1066112533
+ .long 854482593
+ .long 1066185428
+ .long 848298042
+ .long 1066257188
+ .long 860064854
+ .long 1066327857
+ .long 844792593
+ .long 1066397474
+ .long 870701309
+ .long 1066466079
+ .long 872023170
+ .long 1066533708
+ .long 860255342
+ .long 1066600394
+ .long 849966899
+ .long 1066666169
+ .long 863561479
+ .long 1066731064
+ .long 869115319
+ .long 1066795108
+ .long 871961375
+ .long 1066858329
+ .long 859537336
+ .long 1066920751
+ .long 871954398
+ .long 1066982401
+ .long 863817578
+ .long 1067043301
+ .long 861687921
+ .long 1067103474
+ .long 849594757
+ .long 1067162941
+ .long 816486846
+ .long 1067221722
+ .long 858183533
+ .long 1067279837
+ .long 864500406
+ .long 1067337305
+ .long 850523240
+ .long 1067394143
+ .long 808125243
+ .long 1067450368
+ .long 0
+ .long 1067505996
+ .long 861173761
+ .long 1067588354
+ .long 859000219
+ .long 1067696217
+ .long 823158129
+ .long 1067801953
+ .long 871826232
+ .long 1067905666
+ .long 871183196
+ .long 1068007450
+ .long 839030530
+ .long 1068107390
+ .long 867690638
+ .long 1068205570
+ .long 840440923
+ .long 1068302063
+ .long 868033274
+ .long 1068396942
+ .long 855856030
+ .long 1068490271
+ .long 865094453
+ .long 1068582113
+ .long 860418487
+ .long 1068672525
+ .long 866225006
+ .long 1068761562
+ .long 866458226
+ .long 1068849275
+ .long 865124659
+ .long 1068935712
+ .long 864837702
+ .long 1069020919
+ .long 811742505
+ .long 1069104937
+ .long 869432099
+ .long 1069187809
+ .long 864584201
+ .long 1069269572
+ .long 864183978
+ .long 1069350263
+ .long 844810573
+ .long 1069429915
+ .long 869245699
+ .long 1069508563
+ .long 859556409
+ .long 1069586236
+ .long 870675446
+ .long 1069662966
+ .long 814190139
+ .long 1069738778
+ .long 870686941
+ .long 1069813702
+ .long 861800510
+ .long 1069887762
+ .long 855649163
+ .long 1069960982
+ .long 869347119
+ .long 1070033387
+ .long 864252033
+ .long 1070104998
+ .long 867276215
+ .long 1070175837
+ .long 868189817
+ .long 1070245925
+ .long 849541095
+ .long 1070349689
+ .long 866633177
+ .long 1070485588
+ .long 843967686
+ .long 1070618808
+ .long 857522493
+ .long 1070749478
+ .long 862339487
+ .long 1070877717
+ .long 850054662
+ .long 1071003634
+ .long 864048556
+ .long 1071127332
+ .long 868027089
+ .long 1071248907
+ .long 848093931
+ .long 1071368446
+ .long 865355299
+ .long 1071486034
+ .long 848111485
+ .long 1071601747
+ .long 865557362
+ .long 1071715659
+ .long 870297525
+ .long 1071827839
+ .long 863416216
+ .long 1071938350
+ .long 869675693
+ .long 1072047254
+ .long 865888071
+ .long 1072154608
+ .long 825332584
+ .long 1072260465
+ .long 843309506
+ .long 1072364876
+ .long 870885636
+ .long 1072467891
+ .long 869119784
+ .long 1072569555
+ .long 865466648
+ .long 1072669911
+ .long 867459244
+ .long 1072769001
+ .long 861192764
+ .long 1072866863
+ .long 871247716
+ .long 1072963536
+ .long 864927982
+ .long 1073059054
+ .long 869195129
+ .long 1073153452
+ .long 864849564
+ .long 1073246762
+ .long 840005936
+ .long 1073339014
+ .long 852579258
+ .long 1073430238
+ .long 860852782
+ .long 1073520462
+ .long 869711141
+ .long 1073609714
+ .long 862506141
+ .long 1073698019
+ .long 837959274
+ .long 3173551943
+ .long 3173551943
+ .long 3173551943
+ .long 3173551943
+ .long 3173551943
+ .long 3173551943
+ .long 3173551943
+ .long 3173551943
+ .long 3173551943
+ .long 3173551943
+ .long 3173551943
+ .long 3173551943
+ .long 3173551943
+ .long 3173551943
+ .long 3173551943
+ .long 3173551943
+ .long 1031591658
+ .long 1031591658
+ .long 1031591658
+ .long 1031591658
+ .long 1031591658
+ .long 1031591658
+ .long 1031591658
+ .long 1031591658
+ .long 1031591658
+ .long 1031591658
+ .long 1031591658
+ .long 1031591658
+ .long 1031591658
+ .long 1031591658
+ .long 1031591658
+ .long 1031591658
+ .long 3185806905
+ .long 3185806905
+ .long 3185806905
+ .long 3185806905
+ .long 3185806905
+ .long 3185806905
+ .long 3185806905
+ .long 3185806905
+ .long 3185806905
+ .long 3185806905
+ .long 3185806905
+ .long 3185806905
+ .long 3185806905
+ .long 3185806905
+ .long 3185806905
+ .long 3185806905
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 1051372203
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8257536
+ .long 8257536
+ .long 8257536
+ .long 8257536
+ .long 8257536
+ .long 8257536
+ .long 8257536
+ .long 8257536
+ .long 8257536
+ .long 8257536
+ .long 8257536
+ .long 8257536
+ .long 8257536
+ .long 8257536
+ .long 8257536
+ .long 8257536
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212967936
+ .long 3212967936
+ .long 3212967936
+ .long 3212967936
+ .long 3212967936
+ .long 3212967936
+ .long 3212967936
+ .long 3212967936
+ .long 3212967936
+ .long 3212967936
+ .long 3212967936
+ .long 3212967936
+ .long 3212967936
+ .long 3212967936
+ .long 3212967936
+ .long 3212967936
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 85
+ .long 85
+ .long 85
+ .long 85
+ .long 85
+ .long 85
+ .long 85
+ .long 85
+ .long 85
+ .long 85
+ .long 85
+ .long 85
+ .long 85
+ .long 85
+ .long 85
+ .long 85
+ .long 1
+ .long 1
+ .long 1
+ .long 1
+ .long 1
+ .long 1
+ .long 1
+ .long 1
+ .long 1
+ .long 1
+ .long 1
+ .long 1
+ .long 1
+ .long 1
+ .long 1
+ .long 1
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2155872256
+ .long 2155872256
+ .long 2155872256
+ .long 2155872256
+ .long 2155872256
+ .long 2155872256
+ .long 2155872256
+ .long 2155872256
+ .long 2155872256
+ .long 2155872256
+ .long 2155872256
+ .long 2155872256
+ .long 2155872256
+ .long 2155872256
+ .long 2155872256
+ .long 2155872256
+ .long 4278190079
+ .long 4278190079
+ .long 4278190079
+ .long 4278190079
+ .long 4278190079
+ .long 4278190079
+ .long 4278190079
+ .long 4278190079
+ .long 4278190079
+ .long 4278190079
+ .long 4278190079
+ .long 4278190079
+ .long 4278190079
+ .long 4278190079
+ .long 4278190079
+ .long 4278190079
+ .type __scbrt_la_vscbrt_ha_cout_data,@object
+ .size __scbrt_la_vscbrt_ha_cout_data,1920
+ .align 4
+.L_2il0floatpacket.28:
+ .long 0x007fffff
+ .type .L_2il0floatpacket.28,@object
+ .size .L_2il0floatpacket.28,4
+ .align 4
+.L_2il0floatpacket.29:
+ .long 0x007e0000
+ .type .L_2il0floatpacket.29,@object
+ .size .L_2il0floatpacket.29,4
+ .align 4
+.L_2il0floatpacket.30:
+ .long 0xbf800000
+ .type .L_2il0floatpacket.30,@object
+ .size .L_2il0floatpacket.30,4
+ .align 4
+.L_2il0floatpacket.31:
+ .long 0xbf820000
+ .type .L_2il0floatpacket.31,@object
+ .size .L_2il0floatpacket.31,4
+ .align 4
+.L_2il0floatpacket.32:
+ .long 0x3eaaaaab
+ .type .L_2il0floatpacket.32,@object
+ .size .L_2il0floatpacket.32,4
+ .align 4
+.L_2il0floatpacket.33:
+ .long 0xbde38e39
+ .type .L_2il0floatpacket.33,@object
+ .size .L_2il0floatpacket.33,4
+ .align 4
+.L_2il0floatpacket.34:
+ .long 0x3d7cd6ea
+ .type .L_2il0floatpacket.34,@object
+ .size .L_2il0floatpacket.34,4
+ .align 4
+.L_2il0floatpacket.35:
+ .long 0xbd288f47
+ .type .L_2il0floatpacket.35,@object
+ .size .L_2il0floatpacket.35,4
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * ( low accuracy ( < 4ulp ) or enhanced performance ( half of correct mantissa ) implementation )
+ *
+ * Argument representation:
+ * arg + Pi/2 = (N*Pi + R)
+ *
+ * Result calculation:
+ * cos(arg) = sin(arg+Pi/2) = sin(N*Pi + R) = (-1)^N * sin(R)
+ * sin(R) is approximated by corresponding polynomial
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_cos8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_cos8
+
+__svml_cos8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ xorl %edx, %edx
+ vmovups 1472+__svml_dcos_data_internal(%rip), %zmm2
+ vmovups 1536+__svml_dcos_data_internal(%rip), %zmm5
+
+/* dN + .5 */
+ vmovups 1600+__svml_dcos_data_internal(%rip), %zmm3
+
+/* mask will be used to decide whether long arg. reduction is needed */
+ vmovups 640+__svml_dcos_data_internal(%rip), %zmm8
+ vmovups 704+__svml_dcos_data_internal(%rip), %zmm6
+
+/* ............... Polynomial approximation ................... */
+ vmovups 1280+__svml_dcos_data_internal(%rip), %zmm9
+ vmovups 1152+__svml_dcos_data_internal(%rip), %zmm10
+ vmovups 1088+__svml_dcos_data_internal(%rip), %zmm12
+ vmovups 768+__svml_dcos_data_internal(%rip), %zmm7
+ vmovups 1024+__svml_dcos_data_internal(%rip), %zmm13
+
+/* large arg. condition mask */
+ vmovups 1664+__svml_dcos_data_internal(%rip), %zmm4
+ vmovaps %zmm0, %zmm11
+ vandpd 1408+__svml_dcos_data_internal(%rip), %zmm11, %zmm1
+ vmovups 1728+__svml_dcos_data_internal(%rip), %zmm0
+ vfmadd231pd {rz-sae}, %zmm1, %zmm2, %zmm5
+ vcmppd $17, {sae}, %zmm0, %zmm1, %k2
+ vcmppd $22, {sae}, %zmm4, %zmm5, %k1
+ vpsllq $63, %zmm5, %zmm15
+ vsubpd {rn-sae}, %zmm3, %zmm5, %zmm14
+ vmovups 1216+__svml_dcos_data_internal(%rip), %zmm3
+ vfmsub213pd {rn-sae}, %zmm1, %zmm14, %zmm8
+
+/* will branch if long arg. reduction needed */
+ kortestw %k1, %k1
+ vfmadd231pd {rn-sae}, %zmm14, %zmm6, %zmm8
+ vmulpd {rn-sae}, %zmm8, %zmm8, %zmm2
+ vfmadd213pd {rn-sae}, %zmm8, %zmm7, %zmm14
+ vfmadd231pd {rn-sae}, %zmm2, %zmm9, %zmm3
+ vmovups 960+__svml_dcos_data_internal(%rip), %zmm9
+ vfmadd213pd {rn-sae}, %zmm10, %zmm2, %zmm3
+ vmovups 832+__svml_dcos_data_internal(%rip), %zmm10
+ vfmadd213pd {rn-sae}, %zmm12, %zmm2, %zmm3
+ vfmadd213pd {rn-sae}, %zmm13, %zmm2, %zmm3
+ vxorpd %zmm15, %zmm14, %zmm13
+ vfmadd213pd {rn-sae}, %zmm9, %zmm2, %zmm3
+ vmulpd {rn-sae}, %zmm2, %zmm13, %zmm12
+ vfmadd213pd {rn-sae}, %zmm10, %zmm2, %zmm3
+ vfmadd213pd {rn-sae}, %zmm13, %zmm12, %zmm3
+
+/* result = minabs(result, 1.0) with sign of result preserved */
+ vblendmpd 1344+__svml_dcos_data_internal(%rip), %zmm3, %zmm0{%k2}
+ jne .LBL_1_12
+
+.LBL_1_2:
+
+ testl %edx, %edx
+ jne .LBL_1_4
+
+.LBL_1_3:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_4:
+
+ vmovups %zmm11, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_3
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_8:
+
+ btl %r12d, %r13d
+ jc .LBL_1_11
+
+.LBL_1_9:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_8
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_3
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_11:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dcos_cout_rare_internal
+ jmp .LBL_1_9
+ .cfi_restore 4
+ .cfi_restore 5
+ .cfi_restore 12
+ .cfi_restore 13
+ .cfi_restore 122
+ .cfi_restore 123
+ .cfi_restore 124
+ .cfi_restore 125
+
+.LBL_1_12:
+
+
+/* ............Check for Inf and NaNs................. */
+ vmovups 16512+__svml_dcos_data_internal_ha(%rip), %zmm7
+
+/*
+ * Get the (2^a / 2pi) mod 1 values from the table.
+ * Because VLANG doesn't have L-type gather, we need a trivial cast
+ */
+ lea __svml_dcos_reduction_data_internal(%rip), %rax
+ vpbroadcastq .L_2il0floatpacket.28(%rip), %zmm9
+ vmovups %zmm0, (%rsp)
+ vandpd %zmm11, %zmm7, %zmm8
+ vcmppd $4, {sae}, %zmm7, %zmm8, %k2
+
+/*
+ * The output is _VRES_Z (high) + _VRES_E (low), and the integer part is _VRES_IND
+ * Now resume the original code.
+ * ..................... Table look-up ........................
+ */
+ lea __svml_dcos_data_internal_ha(%rip), %rcx
+ vmovaps %zmm9, %zmm6
+ vpandq .L_2il0floatpacket.29(%rip){1to8}, %zmm11, %zmm3
+ vpsrlq $52, %zmm3, %zmm12
+ vpsllq $1, %zmm12, %zmm1
+ vpaddq %zmm12, %zmm1, %zmm10
+ vpsllq $3, %zmm10, %zmm4
+ vpmovqd %zmm4, %ymm0
+ vpandnq %zmm8, %zmm8, %zmm6{%k2}
+ vcmppd $3, {sae}, %zmm6, %zmm6, %k0
+
+/*
+ * Break the P_xxx and m into 32-bit chunks ready for
+ * the long multiplication via 32x32->64 multiplications
+ */
+ vpbroadcastq .L_2il0floatpacket.32(%rip), %zmm6
+ kxnorw %k0, %k0, %k3
+ kxnorw %k0, %k0, %k2
+ kmovw %k0, %edx
+ vpxord %zmm7, %zmm7, %zmm7
+ vgatherdpd (%rax,%ymm0), %zmm7{%k3}
+ kxnorw %k0, %k0, %k3
+ vpxord %zmm8, %zmm8, %zmm8
+ vpxord %zmm2, %zmm2, %zmm2
+ vgatherdpd 8(%rax,%ymm0), %zmm8{%k2}
+ vgatherdpd 16(%rax,%ymm0), %zmm2{%k3}
+ vpsrlq $32, %zmm7, %zmm0
+ vpsrlq $32, %zmm8, %zmm15
+ vpsrlq $32, %zmm2, %zmm13
+
+/*
+ * Also get the significand as an integer
+ * NB: adding in the integer bit is wrong for denorms!
+ * To make this work for denorms we should do something slightly different
+ */
+ vpandq .L_2il0floatpacket.30(%rip){1to8}, %zmm11, %zmm5
+ vpaddq .L_2il0floatpacket.31(%rip){1to8}, %zmm5, %zmm3
+ vpsrlq $32, %zmm3, %zmm10
+ vpmullq %zmm13, %zmm10, %zmm1
+ vpandq %zmm6, %zmm7, %zmm5
+ vpandq %zmm6, %zmm8, %zmm12
+ vpandq %zmm6, %zmm2, %zmm7
+ vpandq %zmm6, %zmm3, %zmm14
+
+/* Now do the big multiplication and carry propagation */
+ vpmullq %zmm5, %zmm10, %zmm4
+ vpmullq %zmm15, %zmm10, %zmm3
+ vpmullq %zmm12, %zmm10, %zmm2
+ vpmullq %zmm7, %zmm10, %zmm8
+ vpmullq %zmm15, %zmm14, %zmm10
+ vpmullq %zmm13, %zmm14, %zmm15
+ vpmullq %zmm0, %zmm14, %zmm7
+ vpmullq %zmm12, %zmm14, %zmm0
+ vpmullq %zmm5, %zmm14, %zmm5
+ vpsrlq $32, %zmm15, %zmm13
+ vpsrlq $32, %zmm0, %zmm14
+ vpsrlq $32, %zmm5, %zmm12
+ vpsrlq $32, %zmm10, %zmm15
+ vpaddq %zmm13, %zmm1, %zmm1
+ vpaddq %zmm14, %zmm2, %zmm13
+ vpaddq %zmm12, %zmm4, %zmm4
+ vpaddq %zmm15, %zmm3, %zmm2
+ vpandq %zmm6, %zmm0, %zmm14
+ vpandq %zmm6, %zmm10, %zmm12
+ vpandq %zmm6, %zmm5, %zmm10
+ vpaddq %zmm1, %zmm14, %zmm5
+ vpaddq %zmm2, %zmm10, %zmm2
+ vpsrlq $32, %zmm8, %zmm1
+ vpaddq %zmm5, %zmm1, %zmm8
+ vpsrlq $32, %zmm8, %zmm10
+ vpandq %zmm6, %zmm7, %zmm0
+ vpaddq %zmm13, %zmm12, %zmm7
+ vpaddq %zmm4, %zmm0, %zmm3
+ vpaddq %zmm7, %zmm10, %zmm14
+
+/*
+ * Now round at the 2^-9 bit position for reduction mod pi/2^8
+ * instead of the original 2pi (but still with the same 2pi scaling).
+ * Use a shifter of 2^43 + 2^42.
+ * The N we get is our final version; it has an offset of
+ * 2^9 because of the implicit integer bit, and anyway for negative
+ * starting value it's a 2s complement thing. But we need to mask
+ * off the exponent part anyway so it's fine.
+ */
+ vpbroadcastq .L_2il0floatpacket.35(%rip), %zmm7
+ vpsrlq $32, %zmm14, %zmm4
+ vpaddq %zmm2, %zmm4, %zmm15
+ vpsllq $32, %zmm14, %zmm4
+ vpsrlq $32, %zmm15, %zmm0
+ vpaddq %zmm3, %zmm0, %zmm13
+
+/* Assemble reduced argument from the pieces */
+ vpandq %zmm6, %zmm8, %zmm1
+ vpandq %zmm6, %zmm15, %zmm10
+ vpsllq $32, %zmm13, %zmm6
+ vpaddq %zmm1, %zmm4, %zmm13
+ vpaddq %zmm10, %zmm6, %zmm10
+ vpsrlq $12, %zmm10, %zmm0
+ vpandq .L_2il0floatpacket.38(%rip){1to8}, %zmm13, %zmm3
+ vpsllq $28, %zmm3, %zmm12
+ vpsrlq $24, %zmm13, %zmm13
+
+/*
+ * We want to incorporate the original sign now too.
+ * Do it here for convenience in getting the right N value,
+ * though we could wait right to the end if we were prepared
+ * to modify the sign of N later too.
+ * So get the appropriate sign mask now (or sooner).
+ */
+ vpandq .L_2il0floatpacket.33(%rip){1to8}, %zmm11, %zmm14
+
+/*
+ * Create floating-point high part, implicitly adding integer bit 1
+ * Incorporate overall sign at this stage too.
+ */
+ vpxorq .L_2il0floatpacket.34(%rip){1to8}, %zmm14, %zmm5
+ vporq %zmm5, %zmm0, %zmm8
+ vaddpd {rn-sae}, %zmm8, %zmm7, %zmm2
+ vsubpd {rn-sae}, %zmm7, %zmm2, %zmm6
+ vsubpd {rn-sae}, %zmm6, %zmm8, %zmm15
+
+/*
+ * If the magnitude of the input is <= 2^-20, then
+ * just pass through the input, since no reduction will be needed and
+ * the main path will only work accurately if the reduced argument is
+ * about >= 2^-70 (which it is for all large pi multiples)
+ */
+ vpbroadcastq .L_2il0floatpacket.44(%rip), %zmm8
+ vandpd .L_2il0floatpacket.43(%rip){1to8}, %zmm11, %zmm6
+ vcmppd $26, {sae}, %zmm8, %zmm6, %k2
+ vcmppd $22, {sae}, %zmm8, %zmm6, %k3
+
+/*
+ * Create floating-point low and medium parts, respectively
+ * lo_23, ... lo_0, 0, ..., 0
+ * hi_11, ... hi_0, lo_63, ..., lo_24
+ * then subtract off the implicitly added integer bits,
+ * 2^-104 and 2^-52, respectively.
+ * Put the original sign into all of them at this stage.
+ */
+ vpxorq .L_2il0floatpacket.37(%rip){1to8}, %zmm14, %zmm0
+ vporq %zmm0, %zmm12, %zmm4
+ vsubpd {rn-sae}, %zmm0, %zmm4, %zmm3
+ vpxorq .L_2il0floatpacket.39(%rip){1to8}, %zmm14, %zmm0
+ vpandq .L_2il0floatpacket.40(%rip){1to8}, %zmm10, %zmm14
+ vpsllq $40, %zmm14, %zmm10
+ vmovups 17152+__svml_dcos_data_internal_ha(%rip), %zmm14
+ vporq %zmm13, %zmm10, %zmm10
+ vporq %zmm0, %zmm10, %zmm4
+ vsubpd {rn-sae}, %zmm0, %zmm4, %zmm5
+ vpbroadcastq .L_2il0floatpacket.42(%rip), %zmm4
+
+/* Now add them up into 2 reasonably aligned pieces */
+ vaddpd {rn-sae}, %zmm5, %zmm15, %zmm7
+ vsubpd {rn-sae}, %zmm7, %zmm15, %zmm15
+ vaddpd {rn-sae}, %zmm15, %zmm5, %zmm10
+
+/*
+ * Now multiply those numbers all by 2 pi, reasonably accurately.
+ * (RHi + RLo) * (pi_lead + pi_trail) ~=
+ * RHi * pi_lead + (RHi * pi_trail + RLo * pi_lead)
+ */
+ vpbroadcastq .L_2il0floatpacket.41(%rip), %zmm5
+ vaddpd {rn-sae}, %zmm3, %zmm10, %zmm12
+ vmulpd {rn-sae}, %zmm5, %zmm7, %zmm1
+ vmovaps %zmm5, %zmm0
+ vfmsub213pd {rn-sae}, %zmm1, %zmm7, %zmm0
+ vfmadd213pd {rn-sae}, %zmm0, %zmm4, %zmm7
+ vfmadd213pd {rn-sae}, %zmm7, %zmm5, %zmm12
+ vmovaps %zmm9, %zmm3
+
+/* Grab our final N value as an integer, appropriately masked mod 2^9 */
+ vpandq .L_2il0floatpacket.36(%rip){1to8}, %zmm2, %zmm2
+ vpsllq $5, %zmm2, %zmm5
+ vpmovqd %zmm5, %ymm5
+ vpandnq %zmm6, %zmm6, %zmm3{%k2}
+ kxnorw %k0, %k0, %k2
+ vandpd %zmm1, %zmm3, %zmm4
+ vandpd %zmm12, %zmm3, %zmm0
+ vmovups 16960+__svml_dcos_data_internal_ha(%rip), %zmm3
+ vpandnq %zmm6, %zmm6, %zmm9{%k3}
+ vandpd %zmm11, %zmm9, %zmm10
+ kxnorw %k0, %k0, %k3
+ vorpd %zmm4, %zmm10, %zmm4
+
+/* ................. Reconstruction: res_hi ................... */
+ vmovaps %zmm4, %zmm2
+ vmovaps %zmm4, %zmm10
+ vpxord %zmm9, %zmm9, %zmm9
+ vgatherdpd (%rcx,%ymm5), %zmm9{%k2}
+
+/* VGATHER_TABLE( L2D, dSLo, TAB_HA._dT, lIndex, 0, T_ITEM_SIZE, T_ITEM_GRAN, 3 ); */
+ kxnorw %k0, %k0, %k2
+ vpxord %zmm7, %zmm7, %zmm7
+ vpxord %zmm6, %zmm6, %zmm6
+ vgatherdpd 16(%rcx,%ymm5), %zmm7{%k3}
+ vgatherdpd 8(%rcx,%ymm5), %zmm6{%k2}
+ kxnorw %k0, %k0, %k3
+ vfmadd213pd {rn-sae}, %zmm7, %zmm6, %zmm2
+ vfmadd132pd {rn-sae}, %zmm9, %zmm2, %zmm10
+
+/* ................. Reconstruction: res_lo ................... */
+ vsubpd {rn-sae}, %zmm2, %zmm7, %zmm1
+ vsubpd {rn-sae}, %zmm10, %zmm2, %zmm8
+ vfmadd231pd {rn-sae}, %zmm4, %zmm6, %zmm1
+ vmovups 17024+__svml_dcos_data_internal_ha(%rip), %zmm2
+ vfmadd231pd {rn-sae}, %zmm9, %zmm4, %zmm8
+ vaddpd {rn-sae}, %zmm1, %zmm8, %zmm13
+ vaddpd {rn-sae}, %zmm6, %zmm9, %zmm1
+
+/* ............... Polynomial approximation ................... */
+ vmulpd {rn-sae}, %zmm4, %zmm4, %zmm8
+ vmovups 17216+__svml_dcos_data_internal_ha(%rip), %zmm6
+ vmovups 17088+__svml_dcos_data_internal_ha(%rip), %zmm9
+ vfmadd231pd {rn-sae}, %zmm8, %zmm2, %zmm3
+ vfmadd231pd {rn-sae}, %zmm8, %zmm6, %zmm14
+ vmulpd {rn-sae}, %zmm8, %zmm3, %zmm12
+ vfmadd213pd {rn-sae}, %zmm9, %zmm8, %zmm14
+ vmulpd {rn-sae}, %zmm4, %zmm12, %zmm15
+ vmulpd {rn-sae}, %zmm8, %zmm14, %zmm2
+
+/* ................. Reconstruction: res_lo+corr ................... */
+ vfnmadd213pd {rn-sae}, %zmm1, %zmm7, %zmm4
+ vfmadd213pd {rn-sae}, %zmm13, %zmm1, %zmm15
+ vfmadd213pd {rn-sae}, %zmm15, %zmm7, %zmm2
+ vpxord %zmm7, %zmm7, %zmm7
+ vgatherdpd 24(%rcx,%ymm5), %zmm7{%k3}
+ vfmadd213pd {rn-sae}, %zmm7, %zmm4, %zmm0
+ vaddpd {rn-sae}, %zmm0, %zmm2, %zmm1
+
+/* .................. Final reconstruction ................... */
+ vmovups (%rsp), %zmm0
+ vaddpd {rn-sae}, %zmm1, %zmm10, %zmm0{%k1}
+ jmp .LBL_1_2
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_cos8,@function
+ .size __svml_cos8,.-__svml_cos8
+..LN__svml_cos8.0:
+
+.L_2__routine_start___svml_dcos_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dcos_cout_rare_internal:
+
+
+ .cfi_startproc
+..L63:
+
+ movzwl 6(%rdi), %eax
+ andl $32752, %eax
+ movsd (%rdi), %xmm1
+ movb 7(%rdi), %dl
+ andb $127, %dl
+ movsd %xmm1, -8(%rsp)
+ cmpl $32752, %eax
+ jne .LBL_2_6
+
+
+ cmpl $0, -8(%rsp)
+ jne .LBL_2_5
+
+
+ movb %dl, -1(%rsp)
+ cmpl $2146435072, -4(%rsp)
+ jne .LBL_2_5
+
+
+ movsd __dcos_la_CoutTab(%rip), %xmm0
+ movl $1, %eax
+ mulsd %xmm0, %xmm1
+ movsd %xmm1, (%rsi)
+ ret
+
+.LBL_2_5:
+
+ mulsd %xmm1, %xmm1
+ xorl %eax, %eax
+ movsd %xmm1, (%rsi)
+ ret
+
+.LBL_2_6:
+
+ xorl %eax, %eax
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dcos_cout_rare_internal,@function
+ .size __svml_dcos_cout_rare_internal,.-__svml_dcos_cout_rare_internal
+..LN__svml_dcos_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dcos_data_internal:
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 0
+ .long 1096810496
+ .long 0
+ .long 1096810496
+ .long 0
+ .long 1096810496
+ .long 0
+ .long 1096810496
+ .long 0
+ .long 1096810496
+ .long 0
+ .long 1096810496
+ .long 0
+ .long 1096810496
+ .long 0
+ .long 1096810496
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 1073741824
+ .long 1074340347
+ .long 1073741824
+ .long 1074340347
+ .long 1073741824
+ .long 1074340347
+ .long 1073741824
+ .long 1074340347
+ .long 1073741824
+ .long 1074340347
+ .long 1073741824
+ .long 1074340347
+ .long 1073741824
+ .long 1074340347
+ .long 1073741824
+ .long 1074340347
+ .long 0
+ .long 1048855597
+ .long 0
+ .long 1048855597
+ .long 0
+ .long 1048855597
+ .long 0
+ .long 1048855597
+ .long 0
+ .long 1048855597
+ .long 0
+ .long 1048855597
+ .long 0
+ .long 1048855597
+ .long 0
+ .long 1048855597
+ .long 2147483648
+ .long 1023952536
+ .long 2147483648
+ .long 1023952536
+ .long 2147483648
+ .long 1023952536
+ .long 2147483648
+ .long 1023952536
+ .long 2147483648
+ .long 1023952536
+ .long 2147483648
+ .long 1023952536
+ .long 2147483648
+ .long 1023952536
+ .long 2147483648
+ .long 1023952536
+ .long 1880851354
+ .long 998820945
+ .long 1880851354
+ .long 998820945
+ .long 1880851354
+ .long 998820945
+ .long 1880851354
+ .long 998820945
+ .long 1880851354
+ .long 998820945
+ .long 1880851354
+ .long 998820945
+ .long 1880851354
+ .long 998820945
+ .long 1880851354
+ .long 998820945
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 856972294
+ .long 1017226790
+ .long 856972294
+ .long 1017226790
+ .long 856972294
+ .long 1017226790
+ .long 856972294
+ .long 1017226790
+ .long 856972294
+ .long 1017226790
+ .long 856972294
+ .long 1017226790
+ .long 856972294
+ .long 1017226790
+ .long 856972294
+ .long 1017226790
+ .long 688016905
+ .long 962338001
+ .long 688016905
+ .long 962338001
+ .long 688016905
+ .long 962338001
+ .long 688016905
+ .long 962338001
+ .long 688016905
+ .long 962338001
+ .long 688016905
+ .long 962338001
+ .long 688016905
+ .long 962338001
+ .long 688016905
+ .long 962338001
+ .long 1431655591
+ .long 3217380693
+ .long 1431655591
+ .long 3217380693
+ .long 1431655591
+ .long 3217380693
+ .long 1431655591
+ .long 3217380693
+ .long 1431655591
+ .long 3217380693
+ .long 1431655591
+ .long 3217380693
+ .long 1431655591
+ .long 3217380693
+ .long 1431655591
+ .long 3217380693
+ .long 286303399
+ .long 1065423121
+ .long 286303399
+ .long 1065423121
+ .long 286303399
+ .long 1065423121
+ .long 286303399
+ .long 1065423121
+ .long 286303399
+ .long 1065423121
+ .long 286303399
+ .long 1065423121
+ .long 286303399
+ .long 1065423121
+ .long 286303399
+ .long 1065423121
+ .long 286303400
+ .long 1065423121
+ .long 286303400
+ .long 1065423121
+ .long 286303400
+ .long 1065423121
+ .long 286303400
+ .long 1065423121
+ .long 286303400
+ .long 1065423121
+ .long 286303400
+ .long 1065423121
+ .long 286303400
+ .long 1065423121
+ .long 286303400
+ .long 1065423121
+ .long 430291067
+ .long 3207201184
+ .long 430291067
+ .long 3207201184
+ .long 430291067
+ .long 3207201184
+ .long 430291067
+ .long 3207201184
+ .long 430291067
+ .long 3207201184
+ .long 430291067
+ .long 3207201184
+ .long 430291067
+ .long 3207201184
+ .long 430291067
+ .long 3207201184
+ .long 2150694560
+ .long 1053236707
+ .long 2150694560
+ .long 1053236707
+ .long 2150694560
+ .long 1053236707
+ .long 2150694560
+ .long 1053236707
+ .long 2150694560
+ .long 1053236707
+ .long 2150694560
+ .long 1053236707
+ .long 2150694560
+ .long 1053236707
+ .long 2150694560
+ .long 1053236707
+ .long 1174413873
+ .long 3193628213
+ .long 1174413873
+ .long 3193628213
+ .long 1174413873
+ .long 3193628213
+ .long 1174413873
+ .long 3193628213
+ .long 1174413873
+ .long 3193628213
+ .long 1174413873
+ .long 3193628213
+ .long 1174413873
+ .long 3193628213
+ .long 1174413873
+ .long 3193628213
+ .long 1470296608
+ .long 1038487144
+ .long 1470296608
+ .long 1038487144
+ .long 1470296608
+ .long 1038487144
+ .long 1470296608
+ .long 1038487144
+ .long 1470296608
+ .long 1038487144
+ .long 1470296608
+ .long 1038487144
+ .long 1470296608
+ .long 1038487144
+ .long 1470296608
+ .long 1038487144
+ .long 135375560
+ .long 3177836758
+ .long 135375560
+ .long 3177836758
+ .long 135375560
+ .long 3177836758
+ .long 135375560
+ .long 3177836758
+ .long 135375560
+ .long 3177836758
+ .long 135375560
+ .long 3177836758
+ .long 135375560
+ .long 3177836758
+ .long 135375560
+ .long 3177836758
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 0
+ .long 1127219200
+ .long 0
+ .long 1127219200
+ .long 0
+ .long 1127219200
+ .long 0
+ .long 1127219200
+ .long 0
+ .long 1127219200
+ .long 0
+ .long 1127219200
+ .long 0
+ .long 1127219200
+ .long 0
+ .long 1127219200
+ .long 4294967295
+ .long 1127219199
+ .long 4294967295
+ .long 1127219199
+ .long 4294967295
+ .long 1127219199
+ .long 4294967295
+ .long 1127219199
+ .long 4294967295
+ .long 1127219199
+ .long 4294967295
+ .long 1127219199
+ .long 4294967295
+ .long 1127219199
+ .long 4294967295
+ .long 1127219199
+ .long 8388606
+ .long 1127219200
+ .long 8388606
+ .long 1127219200
+ .long 8388606
+ .long 1127219200
+ .long 8388606
+ .long 1127219200
+ .long 8388606
+ .long 1127219200
+ .long 8388606
+ .long 1127219200
+ .long 8388606
+ .long 1127219200
+ .long 8388606
+ .long 1127219200
+ .long 0
+ .long 1044381696
+ .long 0
+ .long 1044381696
+ .long 0
+ .long 1044381696
+ .long 0
+ .long 1044381696
+ .long 0
+ .long 1044381696
+ .long 0
+ .long 1044381696
+ .long 0
+ .long 1044381696
+ .long 0
+ .long 1044381696
+ .type __svml_dcos_data_internal,@object
+ .size __svml_dcos_data_internal,1792
+ .align 64
+__svml_dcos_data_internal_ha:
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 210035182
+ .long 1064007864
+ .long 0
+ .long 3213885440
+ .long 379294427
+ .long 1072693090
+ .long 3221225472
+ .long 1015405987
+ .long 561145352
+ .long 1065056936
+ .long 0
+ .long 3214934016
+ .long 1619315981
+ .long 1072692616
+ .long 1073741824
+ .long 3162584397
+ .long 2896342633
+ .long 3212231467
+ .long 0
+ .long 3214934016
+ .long 4026464093
+ .long 1072691826
+ .long 3221225472
+ .long 3163075789
+ .long 1003003824
+ .long 1066107496
+ .long 0
+ .long 3215982592
+ .long 3816385918
+ .long 1072690721
+ .long 536870912
+ .long 3161216956
+ .long 3237733378
+ .long 1062425136
+ .long 0
+ .long 3215982592
+ .long 1703834029
+ .long 1072689301
+ .long 3758096384
+ .long 1015028364
+ .long 2523975598
+ .long 3213273348
+ .long 0
+ .long 3215982592
+ .long 2902558778
+ .long 1072687565
+ .long 3221225472
+ .long 1013260780
+ .long 711626851
+ .long 3214400320
+ .long 0
+ .long 3215982592
+ .long 4240268041
+ .long 1072685514
+ .long 536870912
+ .long 1013588963
+ .long 257503056
+ .long 1067164005
+ .long 0
+ .long 3217031168
+ .long 2748392742
+ .long 1072683149
+ .long 536870912
+ .long 3163061750
+ .long 3272206680
+ .long 1066288081
+ .long 0
+ .long 3217031168
+ .long 4251821691
+ .long 1072680469
+ .long 2147483648
+ .long 3161841007
+ .long 718380601
+ .long 1063597621
+ .long 0
+ .long 3217031168
+ .long 1893834707
+ .long 1072677476
+ .long 1610612736
+ .long 1015147654
+ .long 3987691371
+ .long 3213074188
+ .long 0
+ .long 3217031168
+ .long 1905645377
+ .long 1072674169
+ .long 1610612736
+ .long 1014087596
+ .long 1953696209
+ .long 3214295171
+ .long 0
+ .long 3217031168
+ .long 2131272983
+ .long 1072670549
+ .long 3221225472
+ .long 3163005096
+ .long 3299146087
+ .long 3215021530
+ .long 0
+ .long 3217031168
+ .long 617154971
+ .long 1072666617
+ .long 3758096384
+ .long 3163433696
+ .long 304938777
+ .long 3215427665
+ .long 0
+ .long 3217031168
+ .long 4201728937
+ .long 1072662372
+ .long 1610612736
+ .long 1014674006
+ .long 2034433221
+ .long 3215832935
+ .long 0
+ .long 3217031168
+ .long 2745245815
+ .long 1072657817
+ .long 3221225472
+ .long 1015566129
+ .long 240740309
+ .long 1068244255
+ .long 0
+ .long 3218079744
+ .long 3489094832
+ .long 1072652951
+ .long 536870912
+ .long 1014325783
+ .long 1765797566
+ .long 1067840895
+ .long 0
+ .long 3218079744
+ .long 990588717
+ .long 1072647776
+ .long 3758096384
+ .long 3162041857
+ .long 2886567144
+ .long 1067426796
+ .long 0
+ .long 3218079744
+ .long 2892293513
+ .long 1072642291
+ .long 2684354560
+ .long 3162340271
+ .long 3587565429
+ .long 1066624384
+ .long 0
+ .long 3218079744
+ .long 4151720666
+ .long 1072636498
+ .long 0
+ .long 3162639544
+ .long 2614369450
+ .long 1065140432
+ .long 0
+ .long 3218079744
+ .long 4220661975
+ .long 1072630398
+ .long 3221225472
+ .long 1014312058
+ .long 2382326656
+ .long 3212045827
+ .long 0
+ .long 3218079744
+ .long 2749658050
+ .long 1072623992
+ .long 1610612736
+ .long 1015427338
+ .long 723478390
+ .long 3213958438
+ .long 0
+ .long 3218079744
+ .long 3882371427
+ .long 1072617280
+ .long 2147483648
+ .long 1014923975
+ .long 4107121629
+ .long 3214750787
+ .long 0
+ .long 3218079744
+ .long 3370060660
+ .long 1072610264
+ .long 1610612736
+ .long 1014787212
+ .long 1991047213
+ .long 3215237169
+ .long 0
+ .long 3218079744
+ .long 1455828442
+ .long 1072602945
+ .long 3758096384
+ .long 1015505073
+ .long 386665102
+ .long 3215630470
+ .long 0
+ .long 3218079744
+ .long 2873938189
+ .long 1072595323
+ .long 1610612736
+ .long 3162311422
+ .long 1348311045
+ .long 3216002418
+ .long 0
+ .long 3218079744
+ .long 3964199186
+ .long 1072587400
+ .long 3758096384
+ .long 3160501078
+ .long 165911977
+ .long 3216197513
+ .long 0
+ .long 3218079744
+ .long 1261158782
+ .long 1072579178
+ .long 2147483648
+ .long 1015711544
+ .long 3601629044
+ .long 3216391785
+ .long 0
+ .long 3218079744
+ .long 83265253
+ .long 1072570657
+ .long 1610612736
+ .long 3162510535
+ .long 1962712856
+ .long 3216585207
+ .long 0
+ .long 3218079744
+ .long 1647164971
+ .long 1072561838
+ .long 2147483648
+ .long 3162838250
+ .long 3286832763
+ .long 3216777748
+ .long 0
+ .long 3218079744
+ .long 3066872380
+ .long 1072552723
+ .long 3221225472
+ .long 1015561271
+ .long 3296146332
+ .long 3216969380
+ .long 0
+ .long 3218079744
+ .long 1647878299
+ .long 1072543314
+ .long 3758096384
+ .long 3162169063
+ .long 1699043957
+ .long 1069418613
+ .long 0
+ .long 3219128320
+ .long 3476196678
+ .long 1072533611
+ .long 0
+ .long 1014257638
+ .long 1896722595
+ .long 1069228886
+ .long 0
+ .long 3219128320
+ .long 1942611595
+ .long 1072523617
+ .long 3221225472
+ .long 3162410081
+ .long 4049357271
+ .long 1069040154
+ .long 0
+ .long 3219128320
+ .long 3511535930
+ .long 1072513332
+ .long 2147483648
+ .long 3162828626
+ .long 1380647130
+ .long 1068852447
+ .long 0
+ .long 3219128320
+ .long 1950234076
+ .long 1072502759
+ .long 536870912
+ .long 3159425498
+ .long 3631910143
+ .long 1068665791
+ .long 0
+ .long 3219128320
+ .long 4097623923
+ .long 1072491898
+ .long 2684354560
+ .long 3160308587
+ .long 1073154251
+ .long 1068461489
+ .long 0
+ .long 3219128320
+ .long 4093443164
+ .long 1072480752
+ .long 536870912
+ .long 1014912865
+ .long 913431823
+ .long 1068092555
+ .long 0
+ .long 3219128320
+ .long 557060597
+ .long 1072469323
+ .long 0
+ .long 3159554934
+ .long 600368053
+ .long 1067725893
+ .long 0
+ .long 3219128320
+ .long 881357723
+ .long 1072457611
+ .long 3221225472
+ .long 1013810890
+ .long 2140183630
+ .long 1067272748
+ .long 0
+ .long 3219128320
+ .long 4051746225
+ .long 1072445618
+ .long 1610612736
+ .long 3161907377
+ .long 3506991783
+ .long 1066548842
+ .long 0
+ .long 3219128320
+ .long 645027145
+ .long 1072433348
+ .long 3221225472
+ .long 1012602239
+ .long 31019393
+ .long 1065162441
+ .long 0
+ .long 3219128320
+ .long 2892993834
+ .long 1072420800
+ .long 536870912
+ .long 3163039143
+ .long 1279178457
+ .long 3211590791
+ .long 0
+ .long 3219128320
+ .long 1731563730
+ .long 1072407978
+ .long 536870912
+ .long 1015540302
+ .long 1220541286
+ .long 3213681126
+ .long 0
+ .long 3219128320
+ .long 1159294526
+ .long 1072394883
+ .long 536870912
+ .long 3163276959
+ .long 2880516564
+ .long 3214487049
+ .long 0
+ .long 3219128320
+ .long 1056266002
+ .long 1072381517
+ .long 2684354560
+ .long 3163469496
+ .long 1102361128
+ .long 3215059765
+ .long 0
+ .long 3219128320
+ .long 1477771776
+ .long 1072367882
+ .long 536870912
+ .long 3163104986
+ .long 1038988426
+ .long 3215406294
+ .long 0
+ .long 3219128320
+ .long 2653017361
+ .long 1072353980
+ .long 0
+ .long 3162800062
+ .long 2598800519
+ .long 3215750067
+ .long 0
+ .long 3219128320
+ .long 688824739
+ .long 1072339814
+ .long 3758096384
+ .long 1010431536
+ .long 3382663878
+ .long 3216036812
+ .long 0
+ .long 3219128320
+ .long 453180130
+ .long 1072325385
+ .long 1073741824
+ .long 3162411281
+ .long 1726519029
+ .long 3216205866
+ .long 0
+ .long 3219128320
+ .long 2688952194
+ .long 1072310695
+ .long 0
+ .long 3161532603
+ .long 802660176
+ .long 3216373465
+ .long 0
+ .long 3219128320
+ .long 4012486548
+ .long 1072295747
+ .long 2684354560
+ .long 1014701564
+ .long 3876290983
+ .long 3216539583
+ .long 0
+ .long 3219128320
+ .long 1207142209
+ .long 1072280544
+ .long 2147483648
+ .long 3162705634
+ .long 2285031318
+ .long 3216704197
+ .long 0
+ .long 3219128320
+ .long 4106737474
+ .long 1072265086
+ .long 2684354560
+ .long 3162592377
+ .long 1224902090
+ .long 3216867281
+ .long 0
+ .long 3219128320
+ .long 1234330619
+ .long 1072249378
+ .long 2684354560
+ .long 1015272473
+ .long 2586490530
+ .long 3217028810
+ .long 0
+ .long 3219128320
+ .long 2750387213
+ .long 1072233420
+ .long 2147483648
+ .long 3160858537
+ .long 2485417816
+ .long 3217109964
+ .long 0
+ .long 3219128320
+ .long 1796544321
+ .long 1072217216
+ .long 536870912
+ .long 3162686945
+ .long 1852581091
+ .long 3217189138
+ .long 0
+ .long 3219128320
+ .long 263859903
+ .long 1072200768
+ .long 0
+ .long 3162692284
+ .long 4019165092
+ .long 3217267498
+ .long 0
+ .long 3219128320
+ .long 201299822
+ .long 1072184078
+ .long 3758096384
+ .long 3161912352
+ .long 1250776663
+ .long 3217345034
+ .long 0
+ .long 3219128320
+ .long 3814135665
+ .long 1072167148
+ .long 3221225472
+ .long 3163146456
+ .long 3526603391
+ .long 3217421732
+ .long 0
+ .long 3219128320
+ .long 577417135
+ .long 1072149983
+ .long 2684354560
+ .long 3161519415
+ .long 4187227697
+ .long 3217497582
+ .long 0
+ .long 3219128320
+ .long 1594061409
+ .long 1072132583
+ .long 2147483648
+ .long 1014353870
+ .long 1416934267
+ .long 3217572573
+ .long 0
+ .long 3219128320
+ .long 938475414
+ .long 1072114952
+ .long 0
+ .long 1015076079
+ .long 2546065654
+ .long 3217646692
+ .long 0
+ .long 3219128320
+ .long 1424664751
+ .long 1072097092
+ .long 3221225472
+ .long 3163405315
+ .long 2583490354
+ .long 3217719929
+ .long 0
+ .long 3219128320
+ .long 1719614413
+ .long 1072079006
+ .long 0
+ .long 3163282740
+ .long 1403691706
+ .long 3217792273
+ .long 0
+ .long 3219128320
+ .long 636516413
+ .long 1072060697
+ .long 3758096384
+ .long 1015823716
+ .long 3753901657
+ .long 3217863712
+ .long 0
+ .long 3219128320
+ .long 1427975391
+ .long 1072042167
+ .long 1073741824
+ .long 3161608627
+ .long 2081278341
+ .long 3217934237
+ .long 0
+ .long 3219128320
+ .long 3194290572
+ .long 1072023419
+ .long 2147483648
+ .long 1015048682
+ .long 2309668539
+ .long 3218003836
+ .long 0
+ .long 3219128320
+ .long 881650848
+ .long 1072004457
+ .long 2147483648
+ .long 3162986272
+ .long 2371640770
+ .long 3218072499
+ .long 0
+ .long 3219128320
+ .long 2460177814
+ .long 1071985282
+ .long 2147483648
+ .long 3162116843
+ .long 3489768009
+ .long 1070535623
+ .long 0
+ .long 3220176896
+ .long 3152274921
+ .long 1071965898
+ .long 3758096384
+ .long 1013170835
+ .long 3239527685
+ .long 1070468863
+ .long 0
+ .long 3220176896
+ .long 2610628921
+ .long 1071946308
+ .long 1610612736
+ .long 3162668769
+ .long 1403757309
+ .long 1070403070
+ .long 0
+ .long 3220176896
+ .long 621354454
+ .long 1071926515
+ .long 536870912
+ .long 1013450602
+ .long 1883353036
+ .long 1070338253
+ .long 0
+ .long 3220176896
+ .long 1397053140
+ .long 1071906521
+ .long 1610612736
+ .long 1015245078
+ .long 3652612115
+ .long 1070274422
+ .long 0
+ .long 3220176896
+ .long 689983673
+ .long 1071886330
+ .long 3758096384
+ .long 1014906405
+ .long 752919289
+ .long 1070211588
+ .long 0
+ .long 3220176896
+ .long 2969983475
+ .long 1071865944
+ .long 2684354560
+ .long 3162635443
+ .long 3761365757
+ .long 1070149758
+ .long 0
+ .long 3220176896
+ .long 4242632757
+ .long 1071845367
+ .long 536870912
+ .long 3161390278
+ .long 1129922991
+ .long 1070088944
+ .long 0
+ .long 3220176896
+ .long 637203434
+ .long 1071824603
+ .long 3221225472
+ .long 3159443841
+ .long 2129093113
+ .long 1070029153
+ .long 0
+ .long 3220176896
+ .long 1289556703
+ .long 1071803653
+ .long 536870912
+ .long 3162888820
+ .long 2482246777
+ .long 1069970395
+ .long 0
+ .long 3220176896
+ .long 2570316633
+ .long 1071782521
+ .long 1610612736
+ .long 3162744753
+ .long 1539668340
+ .long 1069912679
+ .long 0
+ .long 3220176896
+ .long 967731400
+ .long 1071761211
+ .long 536870912
+ .long 1015752157
+ .long 2272832445
+ .long 1069856013
+ .long 0
+ .long 3220176896
+ .long 1675549513
+ .long 1071739725
+ .long 3221225472
+ .long 3163025138
+ .long 2678847490
+ .long 1069800406
+ .long 0
+ .long 3220176896
+ .long 1411074851
+ .long 1071718067
+ .long 1610612736
+ .long 3163484731
+ .long 69903290
+ .long 1069745867
+ .long 0
+ .long 3220176896
+ .long 1297975695
+ .long 1071696240
+ .long 3221225472
+ .long 3163083735
+ .long 3952756490
+ .long 1069692402
+ .long 0
+ .long 3220176896
+ .long 2569207790
+ .long 1071674247
+ .long 1073741824
+ .long 3163183617
+ .long 1663679671
+ .long 1069640022
+ .long 0
+ .long 3220176896
+ .long 2269920951
+ .long 1071652092
+ .long 3758096384
+ .long 3161672245
+ .long 1312926554
+ .long 1069588733
+ .long 0
+ .long 3220176896
+ .long 3690502842
+ .long 1071614884
+ .long 3221225472
+ .long 3157453855
+ .long 3429717432
+ .long 1069529566
+ .long 0
+ .long 3220176896
+ .long 1391425750
+ .long 1071569945
+ .long 3221225472
+ .long 3162362103
+ .long 1945768569
+ .long 1069431400
+ .long 0
+ .long 3220176896
+ .long 939980347
+ .long 1071524701
+ .long 0
+ .long 1012796809
+ .long 1539072807
+ .long 1069335462
+ .long 0
+ .long 3220176896
+ .long 1535566729
+ .long 1071479159
+ .long 2147483648
+ .long 1014321388
+ .long 4133449816
+ .long 1069241766
+ .long 0
+ .long 3220176896
+ .long 2570175582
+ .long 1071433326
+ .long 1073741824
+ .long 1012303118
+ .long 1612193054
+ .long 1069150328
+ .long 0
+ .long 3220176896
+ .long 3623952103
+ .long 1071387209
+ .long 2684354560
+ .long 3161985962
+ .long 1578746984
+ .long 1069061160
+ .long 0
+ .long 3220176896
+ .long 165764288
+ .long 1071340816
+ .long 3221225472
+ .long 1013298018
+ .long 1577996576
+ .long 1068974276
+ .long 0
+ .long 3220176896
+ .long 728580042
+ .long 1071294152
+ .long 1610612736
+ .long 3162332944
+ .long 1972483635
+ .long 1068889689
+ .long 0
+ .long 3220176896
+ .long 1135144330
+ .long 1071247225
+ .long 536870912
+ .long 1013373569
+ .long 1638976426
+ .long 1068807412
+ .long 0
+ .long 3220176896
+ .long 1673302999
+ .long 1071200042
+ .long 2147483648
+ .long 1013351473
+ .long 2255197647
+ .long 1068727457
+ .long 0
+ .long 3220176896
+ .long 2796464483
+ .long 1071152610
+ .long 3221225472
+ .long 3160878317
+ .long 3996842794
+ .long 1068649836
+ .long 0
+ .long 3220176896
+ .long 824036583
+ .long 1071104937
+ .long 0
+ .long 1008313330
+ .long 1234824733
+ .long 1068574562
+ .long 0
+ .long 3220176896
+ .long 821708191
+ .long 1071057029
+ .long 3758096384
+ .long 3161738009
+ .long 4002549419
+ .long 1068501644
+ .long 0
+ .long 3220176896
+ .long 3711903686
+ .long 1071008893
+ .long 1073741824
+ .long 1011944747
+ .long 2962723252
+ .long 1068363247
+ .long 0
+ .long 3220176896
+ .long 1974149085
+ .long 1070960538
+ .long 3221225472
+ .long 3156147648
+ .long 1296295961
+ .long 1068226907
+ .long 0
+ .long 3220176896
+ .long 1115219818
+ .long 1070911970
+ .long 0
+ .long 1013072242
+ .long 997322465
+ .long 1068095345
+ .long 0
+ .long 3220176896
+ .long 2484561409
+ .long 1070863196
+ .long 1073741824
+ .long 1014024572
+ .long 1261629236
+ .long 1067968581
+ .long 0
+ .long 3220176896
+ .long 3269558610
+ .long 1070814224
+ .long 536870912
+ .long 3161705216
+ .long 2476548698
+ .long 1067846634
+ .long 0
+ .long 3220176896
+ .long 785751814
+ .long 1070765062
+ .long 2684354560
+ .long 3161838221
+ .long 1913604284
+ .long 1067729523
+ .long 0
+ .long 3220176896
+ .long 1062001470
+ .long 1070715716
+ .long 0
+ .long 3160875220
+ .long 2306566604
+ .long 1067617265
+ .long 0
+ .long 3220176896
+ .long 1655830135
+ .long 1070666194
+ .long 0
+ .long 1014506690
+ .long 3250111450
+ .long 1067509877
+ .long 0
+ .long 3220176896
+ .long 238550446
+ .long 1070616504
+ .long 2684354560
+ .long 3154383565
+ .long 2377770267
+ .long 1067364384
+ .long 0
+ .long 3220176896
+ .long 2065784603
+ .long 1070537209
+ .long 3758096384
+ .long 3160681966
+ .long 288924873
+ .long 1067169185
+ .long 0
+ .long 3220176896
+ .long 3846521617
+ .long 1070437199
+ .long 536870912
+ .long 1013406610
+ .long 1935888103
+ .long 1066983818
+ .long 0
+ .long 3220176896
+ .long 1786662755
+ .long 1070336898
+ .long 2147483648
+ .long 3155882307
+ .long 2660899430
+ .long 1066808312
+ .long 0
+ .long 3220176896
+ .long 632292433
+ .long 1070236320
+ .long 3758096384
+ .long 3160963333
+ .long 18115067
+ .long 1066642694
+ .long 0
+ .long 3220176896
+ .long 1013556747
+ .long 1070135480
+ .long 2684354560
+ .long 3160567065
+ .long 2346447124
+ .long 1066486987
+ .long 0
+ .long 3220176896
+ .long 3729833777
+ .long 1070034393
+ .long 3758096384
+ .long 1013044718
+ .long 1672287667
+ .long 1066280641
+ .long 0
+ .long 3220176896
+ .long 1149976518
+ .long 1069933076
+ .long 1610612736
+ .long 1013264895
+ .long 3451754846
+ .long 1066009014
+ .long 0
+ .long 3220176896
+ .long 2972270170
+ .long 1069831542
+ .long 1073741824
+ .long 3159524770
+ .long 1037482584
+ .long 1065757344
+ .long 0
+ .long 3220176896
+ .long 1854824762
+ .long 1069729808
+ .long 2684354560
+ .long 1011953664
+ .long 2592747447
+ .long 1065525667
+ .long 0
+ .long 3220176896
+ .long 3470456183
+ .long 1069627888
+ .long 1073741824
+ .long 3160744771
+ .long 2402293340
+ .long 1065274823
+ .long 0
+ .long 3220176896
+ .long 1453945614
+ .long 1069504078
+ .long 1610612736
+ .long 1011492612
+ .long 1227670166
+ .long 1064891649
+ .long 0
+ .long 3220176896
+ .long 3349070549
+ .long 1069299589
+ .long 3758096384
+ .long 3156538269
+ .long 393047345
+ .long 1064548654
+ .long 0
+ .long 3220176896
+ .long 3156849708
+ .long 1069094822
+ .long 3221225472
+ .long 3158189848
+ .long 1118107366
+ .long 1064187139
+ .long 0
+ .long 3220176896
+ .long 177906713
+ .long 1068889808
+ .long 3221225472
+ .long 3159310370
+ .long 4269262315
+ .long 1063662162
+ .long 0
+ .long 3220176896
+ .long 2462980598
+ .long 1068684576
+ .long 2684354560
+ .long 3158941832
+ .long 3810305407
+ .long 1063179572
+ .long 0
+ .long 3220176896
+ .long 2046304480
+ .long 1068459374
+ .long 3758096384
+ .long 3156402667
+ .long 220529721
+ .long 1062452281
+ .long 0
+ .long 3220176896
+ .long 4044216340
+ .long 1068048229
+ .long 0
+ .long 3156808381
+ .long 69373323
+ .long 1061565504
+ .long 0
+ .long 3220176896
+ .long 1972655565
+ .long 1067636837
+ .long 1073741824
+ .long 1009157878
+ .long 3650591271
+ .long 1060355323
+ .long 0
+ .long 3220176896
+ .long 4154680958
+ .long 1067000149
+ .long 0
+ .long 3153796451
+ .long 2376373521
+ .long 1058258220
+ .long 0
+ .long 3220176896
+ .long 4242458500
+ .long 1065951697
+ .long 2684354560
+ .long 1009354638
+ .long 0
+ .long 0
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2376373521
+ .long 1058258220
+ .long 0
+ .long 3220176896
+ .long 4242458500
+ .long 3213435345
+ .long 2684354560
+ .long 3156838286
+ .long 3650591271
+ .long 1060355323
+ .long 0
+ .long 3220176896
+ .long 4154680958
+ .long 3214483797
+ .long 0
+ .long 1006312803
+ .long 69373323
+ .long 1061565504
+ .long 0
+ .long 3220176896
+ .long 1972655565
+ .long 3215120485
+ .long 1073741824
+ .long 3156641526
+ .long 220529721
+ .long 1062452281
+ .long 0
+ .long 3220176896
+ .long 4044216340
+ .long 3215531877
+ .long 0
+ .long 1009324733
+ .long 3810305407
+ .long 1063179572
+ .long 0
+ .long 3220176896
+ .long 2046304480
+ .long 3215943022
+ .long 3758096384
+ .long 1008919019
+ .long 4269262315
+ .long 1063662162
+ .long 0
+ .long 3220176896
+ .long 2462980598
+ .long 3216168224
+ .long 2684354560
+ .long 1011458184
+ .long 1118107366
+ .long 1064187139
+ .long 0
+ .long 3220176896
+ .long 177906713
+ .long 3216373456
+ .long 3221225472
+ .long 1011826722
+ .long 393047345
+ .long 1064548654
+ .long 0
+ .long 3220176896
+ .long 3156849708
+ .long 3216578470
+ .long 3221225472
+ .long 1010706200
+ .long 1227670166
+ .long 1064891649
+ .long 0
+ .long 3220176896
+ .long 3349070549
+ .long 3216783237
+ .long 3758096384
+ .long 1009054621
+ .long 2402293340
+ .long 1065274823
+ .long 0
+ .long 3220176896
+ .long 1453945614
+ .long 3216987726
+ .long 1610612736
+ .long 3158976260
+ .long 2592747447
+ .long 1065525667
+ .long 0
+ .long 3220176896
+ .long 3470456183
+ .long 3217111536
+ .long 1073741824
+ .long 1013261123
+ .long 1037482584
+ .long 1065757344
+ .long 0
+ .long 3220176896
+ .long 1854824762
+ .long 3217213456
+ .long 2684354560
+ .long 3159437312
+ .long 3451754846
+ .long 1066009014
+ .long 0
+ .long 3220176896
+ .long 2972270170
+ .long 3217315190
+ .long 1073741824
+ .long 1012041122
+ .long 1672287667
+ .long 1066280641
+ .long 0
+ .long 3220176896
+ .long 1149976518
+ .long 3217416724
+ .long 1610612736
+ .long 3160748543
+ .long 2346447124
+ .long 1066486987
+ .long 0
+ .long 3220176896
+ .long 3729833777
+ .long 3217518041
+ .long 3758096384
+ .long 3160528366
+ .long 18115067
+ .long 1066642694
+ .long 0
+ .long 3220176896
+ .long 1013556747
+ .long 3217619128
+ .long 2684354560
+ .long 1013083417
+ .long 2660899430
+ .long 1066808312
+ .long 0
+ .long 3220176896
+ .long 632292433
+ .long 3217719968
+ .long 3758096384
+ .long 1013479685
+ .long 1935888103
+ .long 1066983818
+ .long 0
+ .long 3220176896
+ .long 1786662755
+ .long 3217820546
+ .long 2147483648
+ .long 1008398659
+ .long 288924873
+ .long 1067169185
+ .long 0
+ .long 3220176896
+ .long 3846521617
+ .long 3217920847
+ .long 536870912
+ .long 3160890258
+ .long 2377770267
+ .long 1067364384
+ .long 0
+ .long 3220176896
+ .long 2065784603
+ .long 3218020857
+ .long 3758096384
+ .long 1013198318
+ .long 3250111450
+ .long 1067509877
+ .long 0
+ .long 3220176896
+ .long 238550446
+ .long 3218100152
+ .long 2684354560
+ .long 1006899917
+ .long 2306566604
+ .long 1067617265
+ .long 0
+ .long 3220176896
+ .long 1655830135
+ .long 3218149842
+ .long 0
+ .long 3161990338
+ .long 1913604284
+ .long 1067729523
+ .long 0
+ .long 3220176896
+ .long 1062001470
+ .long 3218199364
+ .long 0
+ .long 1013391572
+ .long 2476548698
+ .long 1067846634
+ .long 0
+ .long 3220176896
+ .long 785751814
+ .long 3218248710
+ .long 2684354560
+ .long 1014354573
+ .long 1261629236
+ .long 1067968581
+ .long 0
+ .long 3220176896
+ .long 3269558610
+ .long 3218297872
+ .long 536870912
+ .long 1014221568
+ .long 997322465
+ .long 1068095345
+ .long 0
+ .long 3220176896
+ .long 2484561409
+ .long 3218346844
+ .long 1073741824
+ .long 3161508220
+ .long 1296295961
+ .long 1068226907
+ .long 0
+ .long 3220176896
+ .long 1115219818
+ .long 3218395618
+ .long 0
+ .long 3160555890
+ .long 2962723252
+ .long 1068363247
+ .long 0
+ .long 3220176896
+ .long 1974149085
+ .long 3218444186
+ .long 3221225472
+ .long 1008664000
+ .long 4002549419
+ .long 1068501644
+ .long 0
+ .long 3220176896
+ .long 3711903686
+ .long 3218492541
+ .long 1073741824
+ .long 3159428395
+ .long 1234824733
+ .long 1068574562
+ .long 0
+ .long 3220176896
+ .long 821708191
+ .long 3218540677
+ .long 3758096384
+ .long 1014254361
+ .long 3996842794
+ .long 1068649836
+ .long 0
+ .long 3220176896
+ .long 824036583
+ .long 3218588585
+ .long 0
+ .long 3155796978
+ .long 2255197647
+ .long 1068727457
+ .long 0
+ .long 3220176896
+ .long 2796464483
+ .long 3218636258
+ .long 3221225472
+ .long 1013394669
+ .long 1638976426
+ .long 1068807412
+ .long 0
+ .long 3220176896
+ .long 1673302999
+ .long 3218683690
+ .long 2147483648
+ .long 3160835121
+ .long 1972483635
+ .long 1068889689
+ .long 0
+ .long 3220176896
+ .long 1135144330
+ .long 3218730873
+ .long 536870912
+ .long 3160857217
+ .long 1577996576
+ .long 1068974276
+ .long 0
+ .long 3220176896
+ .long 728580042
+ .long 3218777800
+ .long 1610612736
+ .long 1014849296
+ .long 1578746984
+ .long 1069061160
+ .long 0
+ .long 3220176896
+ .long 165764288
+ .long 3218824464
+ .long 3221225472
+ .long 3160781666
+ .long 1612193054
+ .long 1069150328
+ .long 0
+ .long 3220176896
+ .long 3623952103
+ .long 3218870857
+ .long 2684354560
+ .long 1014502314
+ .long 4133449816
+ .long 1069241766
+ .long 0
+ .long 3220176896
+ .long 2570175582
+ .long 3218916974
+ .long 1073741824
+ .long 3159786766
+ .long 1539072807
+ .long 1069335462
+ .long 0
+ .long 3220176896
+ .long 1535566729
+ .long 3218962807
+ .long 2147483648
+ .long 3161805036
+ .long 1945768569
+ .long 1069431400
+ .long 0
+ .long 3220176896
+ .long 939980347
+ .long 3219008349
+ .long 0
+ .long 3160280457
+ .long 3429717432
+ .long 1069529566
+ .long 0
+ .long 3220176896
+ .long 1391425750
+ .long 3219053593
+ .long 3221225472
+ .long 1014878455
+ .long 1312926554
+ .long 1069588733
+ .long 0
+ .long 3220176896
+ .long 3690502842
+ .long 3219098532
+ .long 3221225472
+ .long 1009970207
+ .long 1663679671
+ .long 1069640022
+ .long 0
+ .long 3220176896
+ .long 2269920951
+ .long 3219135740
+ .long 3758096384
+ .long 1014188597
+ .long 3952756490
+ .long 1069692402
+ .long 0
+ .long 3220176896
+ .long 2569207790
+ .long 3219157895
+ .long 1073741824
+ .long 1015699969
+ .long 69903290
+ .long 1069745867
+ .long 0
+ .long 3220176896
+ .long 1297975695
+ .long 3219179888
+ .long 3221225472
+ .long 1015600087
+ .long 2678847490
+ .long 1069800406
+ .long 0
+ .long 3220176896
+ .long 1411074851
+ .long 3219201715
+ .long 1610612736
+ .long 1016001083
+ .long 2272832445
+ .long 1069856013
+ .long 0
+ .long 3220176896
+ .long 1675549513
+ .long 3219223373
+ .long 3221225472
+ .long 1015541490
+ .long 1539668340
+ .long 1069912679
+ .long 0
+ .long 3220176896
+ .long 967731400
+ .long 3219244859
+ .long 536870912
+ .long 3163235805
+ .long 2482246777
+ .long 1069970395
+ .long 0
+ .long 3220176896
+ .long 2570316633
+ .long 3219266169
+ .long 1610612736
+ .long 1015261105
+ .long 2129093113
+ .long 1070029153
+ .long 0
+ .long 3220176896
+ .long 1289556703
+ .long 3219287301
+ .long 536870912
+ .long 1015405172
+ .long 1129922991
+ .long 1070088944
+ .long 0
+ .long 3220176896
+ .long 637203434
+ .long 3219308251
+ .long 3221225472
+ .long 1011960193
+ .long 3761365757
+ .long 1070149758
+ .long 0
+ .long 3220176896
+ .long 4242632757
+ .long 3219329015
+ .long 536870912
+ .long 1013906630
+ .long 752919289
+ .long 1070211588
+ .long 0
+ .long 3220176896
+ .long 2969983475
+ .long 3219349592
+ .long 2684354560
+ .long 1015151795
+ .long 3652612115
+ .long 1070274422
+ .long 0
+ .long 3220176896
+ .long 689983673
+ .long 3219369978
+ .long 3758096384
+ .long 3162390053
+ .long 1883353036
+ .long 1070338253
+ .long 0
+ .long 3220176896
+ .long 1397053140
+ .long 3219390169
+ .long 1610612736
+ .long 3162728726
+ .long 1403757309
+ .long 1070403070
+ .long 0
+ .long 3220176896
+ .long 621354454
+ .long 3219410163
+ .long 536870912
+ .long 3160934250
+ .long 3239527685
+ .long 1070468863
+ .long 0
+ .long 3220176896
+ .long 2610628921
+ .long 3219429956
+ .long 1610612736
+ .long 1015185121
+ .long 3489768009
+ .long 1070535623
+ .long 0
+ .long 3220176896
+ .long 3152274921
+ .long 3219449546
+ .long 3758096384
+ .long 3160654483
+ .long 2371640770
+ .long 3218072499
+ .long 0
+ .long 3219128320
+ .long 2460177814
+ .long 3219468930
+ .long 2147483648
+ .long 1014633195
+ .long 2309668539
+ .long 3218003836
+ .long 0
+ .long 3219128320
+ .long 881650848
+ .long 3219488105
+ .long 2147483648
+ .long 1015502624
+ .long 2081278341
+ .long 3217934237
+ .long 0
+ .long 3219128320
+ .long 3194290572
+ .long 3219507067
+ .long 2147483648
+ .long 3162532330
+ .long 3753901657
+ .long 3217863712
+ .long 0
+ .long 3219128320
+ .long 1427975391
+ .long 3219525815
+ .long 1073741824
+ .long 1014124979
+ .long 1403691706
+ .long 3217792273
+ .long 0
+ .long 3219128320
+ .long 636516413
+ .long 3219544345
+ .long 3758096384
+ .long 3163307364
+ .long 2583490354
+ .long 3217719929
+ .long 0
+ .long 3219128320
+ .long 1719614413
+ .long 3219562654
+ .long 0
+ .long 1015799092
+ .long 2546065654
+ .long 3217646692
+ .long 0
+ .long 3219128320
+ .long 1424664751
+ .long 3219580740
+ .long 3221225472
+ .long 1015921667
+ .long 1416934267
+ .long 3217572573
+ .long 0
+ .long 3219128320
+ .long 938475414
+ .long 3219598600
+ .long 0
+ .long 3162559727
+ .long 4187227697
+ .long 3217497582
+ .long 0
+ .long 3219128320
+ .long 1594061409
+ .long 3219616231
+ .long 2147483648
+ .long 3161837518
+ .long 3526603391
+ .long 3217421732
+ .long 0
+ .long 3219128320
+ .long 577417135
+ .long 3219633631
+ .long 2684354560
+ .long 1014035767
+ .long 1250776663
+ .long 3217345034
+ .long 0
+ .long 3219128320
+ .long 3814135665
+ .long 3219650796
+ .long 3221225472
+ .long 1015662808
+ .long 4019165092
+ .long 3217267498
+ .long 0
+ .long 3219128320
+ .long 201299822
+ .long 3219667726
+ .long 3758096384
+ .long 1014428704
+ .long 1852581091
+ .long 3217189138
+ .long 0
+ .long 3219128320
+ .long 263859903
+ .long 3219684416
+ .long 0
+ .long 1015208636
+ .long 2485417816
+ .long 3217109964
+ .long 0
+ .long 3219128320
+ .long 1796544321
+ .long 3219700864
+ .long 536870912
+ .long 1015203297
+ .long 2586490530
+ .long 3217028810
+ .long 0
+ .long 3219128320
+ .long 2750387213
+ .long 3219717068
+ .long 2147483648
+ .long 1013374889
+ .long 1224902090
+ .long 3216867281
+ .long 0
+ .long 3219128320
+ .long 1234330619
+ .long 3219733026
+ .long 2684354560
+ .long 3162756121
+ .long 2285031318
+ .long 3216704197
+ .long 0
+ .long 3219128320
+ .long 4106737474
+ .long 3219748734
+ .long 2684354560
+ .long 1015108729
+ .long 3876290983
+ .long 3216539583
+ .long 0
+ .long 3219128320
+ .long 1207142209
+ .long 3219764192
+ .long 2147483648
+ .long 1015221986
+ .long 802660176
+ .long 3216373465
+ .long 0
+ .long 3219128320
+ .long 4012486548
+ .long 3219779395
+ .long 2684354560
+ .long 3162185212
+ .long 1726519029
+ .long 3216205866
+ .long 0
+ .long 3219128320
+ .long 2688952194
+ .long 3219794343
+ .long 0
+ .long 1014048955
+ .long 3382663878
+ .long 3216036812
+ .long 0
+ .long 3219128320
+ .long 453180130
+ .long 3219809033
+ .long 1073741824
+ .long 1014927633
+ .long 2598800519
+ .long 3215750067
+ .long 0
+ .long 3219128320
+ .long 688824739
+ .long 3219823462
+ .long 3758096384
+ .long 3157915184
+ .long 1038988426
+ .long 3215406294
+ .long 0
+ .long 3219128320
+ .long 2653017361
+ .long 3219837628
+ .long 0
+ .long 1015316414
+ .long 1102361128
+ .long 3215059765
+ .long 0
+ .long 3219128320
+ .long 1477771776
+ .long 3219851530
+ .long 536870912
+ .long 1015621338
+ .long 2880516564
+ .long 3214487049
+ .long 0
+ .long 3219128320
+ .long 1056266002
+ .long 3219865165
+ .long 2684354560
+ .long 1015985848
+ .long 1220541286
+ .long 3213681126
+ .long 0
+ .long 3219128320
+ .long 1159294526
+ .long 3219878531
+ .long 536870912
+ .long 1015793311
+ .long 1279178457
+ .long 3211590791
+ .long 0
+ .long 3219128320
+ .long 1731563730
+ .long 3219891626
+ .long 536870912
+ .long 3163023950
+ .long 31019393
+ .long 1065162441
+ .long 0
+ .long 3219128320
+ .long 2892993834
+ .long 3219904448
+ .long 536870912
+ .long 1015555495
+ .long 3506991783
+ .long 1066548842
+ .long 0
+ .long 3219128320
+ .long 645027145
+ .long 3219916996
+ .long 3221225472
+ .long 3160085887
+ .long 2140183630
+ .long 1067272748
+ .long 0
+ .long 3219128320
+ .long 4051746225
+ .long 3219929266
+ .long 1610612736
+ .long 1014423729
+ .long 600368053
+ .long 1067725893
+ .long 0
+ .long 3219128320
+ .long 881357723
+ .long 3219941259
+ .long 3221225472
+ .long 3161294538
+ .long 913431823
+ .long 1068092555
+ .long 0
+ .long 3219128320
+ .long 557060597
+ .long 3219952971
+ .long 0
+ .long 1012071286
+ .long 1073154251
+ .long 1068461489
+ .long 0
+ .long 3219128320
+ .long 4093443164
+ .long 3219964400
+ .long 536870912
+ .long 3162396513
+ .long 3631910143
+ .long 1068665791
+ .long 0
+ .long 3219128320
+ .long 4097623923
+ .long 3219975546
+ .long 2684354560
+ .long 1012824939
+ .long 1380647130
+ .long 1068852447
+ .long 0
+ .long 3219128320
+ .long 1950234076
+ .long 3219986407
+ .long 536870912
+ .long 1011941850
+ .long 4049357271
+ .long 1069040154
+ .long 0
+ .long 3219128320
+ .long 3511535930
+ .long 3219996980
+ .long 2147483648
+ .long 1015344978
+ .long 1896722595
+ .long 1069228886
+ .long 0
+ .long 3219128320
+ .long 1942611595
+ .long 3220007265
+ .long 3221225472
+ .long 1014926433
+ .long 1699043957
+ .long 1069418613
+ .long 0
+ .long 3219128320
+ .long 3476196678
+ .long 3220017259
+ .long 0
+ .long 3161741286
+ .long 3296146332
+ .long 3216969380
+ .long 0
+ .long 3218079744
+ .long 1647878299
+ .long 3220026962
+ .long 3758096384
+ .long 1014685415
+ .long 3286832763
+ .long 3216777748
+ .long 0
+ .long 3218079744
+ .long 3066872380
+ .long 3220036371
+ .long 3221225472
+ .long 3163044919
+ .long 1962712856
+ .long 3216585207
+ .long 0
+ .long 3218079744
+ .long 1647164971
+ .long 3220045486
+ .long 2147483648
+ .long 1015354602
+ .long 3601629044
+ .long 3216391785
+ .long 0
+ .long 3218079744
+ .long 83265253
+ .long 3220054305
+ .long 1610612736
+ .long 1015026887
+ .long 165911977
+ .long 3216197513
+ .long 0
+ .long 3218079744
+ .long 1261158782
+ .long 3220062826
+ .long 2147483648
+ .long 3163195192
+ .long 1348311045
+ .long 3216002418
+ .long 0
+ .long 3218079744
+ .long 3964199186
+ .long 3220071048
+ .long 3758096384
+ .long 1013017430
+ .long 386665102
+ .long 3215630470
+ .long 0
+ .long 3218079744
+ .long 2873938189
+ .long 3220078971
+ .long 1610612736
+ .long 1014827774
+ .long 1991047213
+ .long 3215237169
+ .long 0
+ .long 3218079744
+ .long 1455828442
+ .long 3220086593
+ .long 3758096384
+ .long 3162988721
+ .long 4107121629
+ .long 3214750787
+ .long 0
+ .long 3218079744
+ .long 3370060660
+ .long 3220093912
+ .long 1610612736
+ .long 3162270860
+ .long 723478390
+ .long 3213958438
+ .long 0
+ .long 3218079744
+ .long 3882371427
+ .long 3220100928
+ .long 2147483648
+ .long 3162407623
+ .long 2382326656
+ .long 3212045827
+ .long 0
+ .long 3218079744
+ .long 2749658050
+ .long 3220107640
+ .long 1610612736
+ .long 3162910986
+ .long 2614369450
+ .long 1065140432
+ .long 0
+ .long 3218079744
+ .long 4220661975
+ .long 3220114046
+ .long 3221225472
+ .long 3161795706
+ .long 3587565429
+ .long 1066624384
+ .long 0
+ .long 3218079744
+ .long 4151720666
+ .long 3220120146
+ .long 0
+ .long 1015155896
+ .long 2886567144
+ .long 1067426796
+ .long 0
+ .long 3218079744
+ .long 2892293513
+ .long 3220125939
+ .long 2684354560
+ .long 1014856623
+ .long 1765797566
+ .long 1067840895
+ .long 0
+ .long 3218079744
+ .long 990588717
+ .long 3220131424
+ .long 3758096384
+ .long 1014558209
+ .long 240740309
+ .long 1068244255
+ .long 0
+ .long 3218079744
+ .long 3489094832
+ .long 3220136599
+ .long 536870912
+ .long 3161809431
+ .long 2034433221
+ .long 3215832935
+ .long 0
+ .long 3217031168
+ .long 2745245815
+ .long 3220141465
+ .long 3221225472
+ .long 3163049777
+ .long 304938777
+ .long 3215427665
+ .long 0
+ .long 3217031168
+ .long 4201728937
+ .long 3220146020
+ .long 1610612736
+ .long 3162157654
+ .long 3299146087
+ .long 3215021530
+ .long 0
+ .long 3217031168
+ .long 617154971
+ .long 3220150265
+ .long 3758096384
+ .long 1015950048
+ .long 1953696209
+ .long 3214295171
+ .long 0
+ .long 3217031168
+ .long 2131272983
+ .long 3220154197
+ .long 3221225472
+ .long 1015521448
+ .long 3987691371
+ .long 3213074188
+ .long 0
+ .long 3217031168
+ .long 1905645377
+ .long 3220157817
+ .long 1610612736
+ .long 3161571244
+ .long 718380601
+ .long 1063597621
+ .long 0
+ .long 3217031168
+ .long 1893834707
+ .long 3220161124
+ .long 1610612736
+ .long 3162631302
+ .long 3272206680
+ .long 1066288081
+ .long 0
+ .long 3217031168
+ .long 4251821691
+ .long 3220164117
+ .long 2147483648
+ .long 1014357359
+ .long 257503056
+ .long 1067164005
+ .long 0
+ .long 3217031168
+ .long 2748392742
+ .long 3220166797
+ .long 536870912
+ .long 1015578102
+ .long 711626851
+ .long 3214400320
+ .long 0
+ .long 3215982592
+ .long 4240268041
+ .long 3220169162
+ .long 536870912
+ .long 3161072611
+ .long 2523975598
+ .long 3213273348
+ .long 0
+ .long 3215982592
+ .long 2902558778
+ .long 3220171213
+ .long 3221225472
+ .long 3160744428
+ .long 3237733378
+ .long 1062425136
+ .long 0
+ .long 3215982592
+ .long 1703834029
+ .long 3220172949
+ .long 3758096384
+ .long 3162512012
+ .long 1003003824
+ .long 1066107496
+ .long 0
+ .long 3215982592
+ .long 3816385918
+ .long 3220174369
+ .long 536870912
+ .long 1013733308
+ .long 2896342633
+ .long 3212231467
+ .long 0
+ .long 3214934016
+ .long 4026464093
+ .long 3220175474
+ .long 3221225472
+ .long 1015592141
+ .long 561145352
+ .long 1065056936
+ .long 0
+ .long 3214934016
+ .long 1619315981
+ .long 3220176264
+ .long 1073741824
+ .long 1015100749
+ .long 210035182
+ .long 1064007864
+ .long 0
+ .long 3213885440
+ .long 379294427
+ .long 3220176738
+ .long 3221225472
+ .long 3162889635
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 0
+ .long 210035182
+ .long 3211491512
+ .long 0
+ .long 1066401792
+ .long 379294427
+ .long 3220176738
+ .long 3221225472
+ .long 3162889635
+ .long 561145352
+ .long 3212540584
+ .long 0
+ .long 1067450368
+ .long 1619315981
+ .long 3220176264
+ .long 1073741824
+ .long 1015100749
+ .long 2896342633
+ .long 1064747819
+ .long 0
+ .long 1067450368
+ .long 4026464093
+ .long 3220175474
+ .long 3221225472
+ .long 1015592141
+ .long 1003003824
+ .long 3213591144
+ .long 0
+ .long 1068498944
+ .long 3816385918
+ .long 3220174369
+ .long 536870912
+ .long 1013733308
+ .long 3237733378
+ .long 3209908784
+ .long 0
+ .long 1068498944
+ .long 1703834029
+ .long 3220172949
+ .long 3758096384
+ .long 3162512012
+ .long 2523975598
+ .long 1065789700
+ .long 0
+ .long 1068498944
+ .long 2902558778
+ .long 3220171213
+ .long 3221225472
+ .long 3160744428
+ .long 711626851
+ .long 1066916672
+ .long 0
+ .long 1068498944
+ .long 4240268041
+ .long 3220169162
+ .long 536870912
+ .long 3161072611
+ .long 257503056
+ .long 3214647653
+ .long 0
+ .long 1069547520
+ .long 2748392742
+ .long 3220166797
+ .long 536870912
+ .long 1015578102
+ .long 3272206680
+ .long 3213771729
+ .long 0
+ .long 1069547520
+ .long 4251821691
+ .long 3220164117
+ .long 2147483648
+ .long 1014357359
+ .long 718380601
+ .long 3211081269
+ .long 0
+ .long 1069547520
+ .long 1893834707
+ .long 3220161124
+ .long 1610612736
+ .long 3162631302
+ .long 3987691371
+ .long 1065590540
+ .long 0
+ .long 1069547520
+ .long 1905645377
+ .long 3220157817
+ .long 1610612736
+ .long 3161571244
+ .long 1953696209
+ .long 1066811523
+ .long 0
+ .long 1069547520
+ .long 2131272983
+ .long 3220154197
+ .long 3221225472
+ .long 1015521448
+ .long 3299146087
+ .long 1067537882
+ .long 0
+ .long 1069547520
+ .long 617154971
+ .long 3220150265
+ .long 3758096384
+ .long 1015950048
+ .long 304938777
+ .long 1067944017
+ .long 0
+ .long 1069547520
+ .long 4201728937
+ .long 3220146020
+ .long 1610612736
+ .long 3162157654
+ .long 2034433221
+ .long 1068349287
+ .long 0
+ .long 1069547520
+ .long 2745245815
+ .long 3220141465
+ .long 3221225472
+ .long 3163049777
+ .long 240740309
+ .long 3215727903
+ .long 0
+ .long 1070596096
+ .long 3489094832
+ .long 3220136599
+ .long 536870912
+ .long 3161809431
+ .long 1765797566
+ .long 3215324543
+ .long 0
+ .long 1070596096
+ .long 990588717
+ .long 3220131424
+ .long 3758096384
+ .long 1014558209
+ .long 2886567144
+ .long 3214910444
+ .long 0
+ .long 1070596096
+ .long 2892293513
+ .long 3220125939
+ .long 2684354560
+ .long 1014856623
+ .long 3587565429
+ .long 3214108032
+ .long 0
+ .long 1070596096
+ .long 4151720666
+ .long 3220120146
+ .long 0
+ .long 1015155896
+ .long 2614369450
+ .long 3212624080
+ .long 0
+ .long 1070596096
+ .long 4220661975
+ .long 3220114046
+ .long 3221225472
+ .long 3161795706
+ .long 2382326656
+ .long 1064562179
+ .long 0
+ .long 1070596096
+ .long 2749658050
+ .long 3220107640
+ .long 1610612736
+ .long 3162910986
+ .long 723478390
+ .long 1066474790
+ .long 0
+ .long 1070596096
+ .long 3882371427
+ .long 3220100928
+ .long 2147483648
+ .long 3162407623
+ .long 4107121629
+ .long 1067267139
+ .long 0
+ .long 1070596096
+ .long 3370060660
+ .long 3220093912
+ .long 1610612736
+ .long 3162270860
+ .long 1991047213
+ .long 1067753521
+ .long 0
+ .long 1070596096
+ .long 1455828442
+ .long 3220086593
+ .long 3758096384
+ .long 3162988721
+ .long 386665102
+ .long 1068146822
+ .long 0
+ .long 1070596096
+ .long 2873938189
+ .long 3220078971
+ .long 1610612736
+ .long 1014827774
+ .long 1348311045
+ .long 1068518770
+ .long 0
+ .long 1070596096
+ .long 3964199186
+ .long 3220071048
+ .long 3758096384
+ .long 1013017430
+ .long 165911977
+ .long 1068713865
+ .long 0
+ .long 1070596096
+ .long 1261158782
+ .long 3220062826
+ .long 2147483648
+ .long 3163195192
+ .long 3601629044
+ .long 1068908137
+ .long 0
+ .long 1070596096
+ .long 83265253
+ .long 3220054305
+ .long 1610612736
+ .long 1015026887
+ .long 1962712856
+ .long 1069101559
+ .long 0
+ .long 1070596096
+ .long 1647164971
+ .long 3220045486
+ .long 2147483648
+ .long 1015354602
+ .long 3286832763
+ .long 1069294100
+ .long 0
+ .long 1070596096
+ .long 3066872380
+ .long 3220036371
+ .long 3221225472
+ .long 3163044919
+ .long 3296146332
+ .long 1069485732
+ .long 0
+ .long 1070596096
+ .long 1647878299
+ .long 3220026962
+ .long 3758096384
+ .long 1014685415
+ .long 1699043957
+ .long 3216902261
+ .long 0
+ .long 1071644672
+ .long 3476196678
+ .long 3220017259
+ .long 0
+ .long 3161741286
+ .long 1896722595
+ .long 3216712534
+ .long 0
+ .long 1071644672
+ .long 1942611595
+ .long 3220007265
+ .long 3221225472
+ .long 1014926433
+ .long 4049357271
+ .long 3216523802
+ .long 0
+ .long 1071644672
+ .long 3511535930
+ .long 3219996980
+ .long 2147483648
+ .long 1015344978
+ .long 1380647130
+ .long 3216336095
+ .long 0
+ .long 1071644672
+ .long 1950234076
+ .long 3219986407
+ .long 536870912
+ .long 1011941850
+ .long 3631910143
+ .long 3216149439
+ .long 0
+ .long 1071644672
+ .long 4097623923
+ .long 3219975546
+ .long 2684354560
+ .long 1012824939
+ .long 1073154251
+ .long 3215945137
+ .long 0
+ .long 1071644672
+ .long 4093443164
+ .long 3219964400
+ .long 536870912
+ .long 3162396513
+ .long 913431823
+ .long 3215576203
+ .long 0
+ .long 1071644672
+ .long 557060597
+ .long 3219952971
+ .long 0
+ .long 1012071286
+ .long 600368053
+ .long 3215209541
+ .long 0
+ .long 1071644672
+ .long 881357723
+ .long 3219941259
+ .long 3221225472
+ .long 3161294538
+ .long 2140183630
+ .long 3214756396
+ .long 0
+ .long 1071644672
+ .long 4051746225
+ .long 3219929266
+ .long 1610612736
+ .long 1014423729
+ .long 3506991783
+ .long 3214032490
+ .long 0
+ .long 1071644672
+ .long 645027145
+ .long 3219916996
+ .long 3221225472
+ .long 3160085887
+ .long 31019393
+ .long 3212646089
+ .long 0
+ .long 1071644672
+ .long 2892993834
+ .long 3219904448
+ .long 536870912
+ .long 1015555495
+ .long 1279178457
+ .long 1064107143
+ .long 0
+ .long 1071644672
+ .long 1731563730
+ .long 3219891626
+ .long 536870912
+ .long 3163023950
+ .long 1220541286
+ .long 1066197478
+ .long 0
+ .long 1071644672
+ .long 1159294526
+ .long 3219878531
+ .long 536870912
+ .long 1015793311
+ .long 2880516564
+ .long 1067003401
+ .long 0
+ .long 1071644672
+ .long 1056266002
+ .long 3219865165
+ .long 2684354560
+ .long 1015985848
+ .long 1102361128
+ .long 1067576117
+ .long 0
+ .long 1071644672
+ .long 1477771776
+ .long 3219851530
+ .long 536870912
+ .long 1015621338
+ .long 1038988426
+ .long 1067922646
+ .long 0
+ .long 1071644672
+ .long 2653017361
+ .long 3219837628
+ .long 0
+ .long 1015316414
+ .long 2598800519
+ .long 1068266419
+ .long 0
+ .long 1071644672
+ .long 688824739
+ .long 3219823462
+ .long 3758096384
+ .long 3157915184
+ .long 3382663878
+ .long 1068553164
+ .long 0
+ .long 1071644672
+ .long 453180130
+ .long 3219809033
+ .long 1073741824
+ .long 1014927633
+ .long 1726519029
+ .long 1068722218
+ .long 0
+ .long 1071644672
+ .long 2688952194
+ .long 3219794343
+ .long 0
+ .long 1014048955
+ .long 802660176
+ .long 1068889817
+ .long 0
+ .long 1071644672
+ .long 4012486548
+ .long 3219779395
+ .long 2684354560
+ .long 3162185212
+ .long 3876290983
+ .long 1069055935
+ .long 0
+ .long 1071644672
+ .long 1207142209
+ .long 3219764192
+ .long 2147483648
+ .long 1015221986
+ .long 2285031318
+ .long 1069220549
+ .long 0
+ .long 1071644672
+ .long 4106737474
+ .long 3219748734
+ .long 2684354560
+ .long 1015108729
+ .long 1224902090
+ .long 1069383633
+ .long 0
+ .long 1071644672
+ .long 1234330619
+ .long 3219733026
+ .long 2684354560
+ .long 3162756121
+ .long 2586490530
+ .long 1069545162
+ .long 0
+ .long 1071644672
+ .long 2750387213
+ .long 3219717068
+ .long 2147483648
+ .long 1013374889
+ .long 2485417816
+ .long 1069626316
+ .long 0
+ .long 1071644672
+ .long 1796544321
+ .long 3219700864
+ .long 536870912
+ .long 1015203297
+ .long 1852581091
+ .long 1069705490
+ .long 0
+ .long 1071644672
+ .long 263859903
+ .long 3219684416
+ .long 0
+ .long 1015208636
+ .long 4019165092
+ .long 1069783850
+ .long 0
+ .long 1071644672
+ .long 201299822
+ .long 3219667726
+ .long 3758096384
+ .long 1014428704
+ .long 1250776663
+ .long 1069861386
+ .long 0
+ .long 1071644672
+ .long 3814135665
+ .long 3219650796
+ .long 3221225472
+ .long 1015662808
+ .long 3526603391
+ .long 1069938084
+ .long 0
+ .long 1071644672
+ .long 577417135
+ .long 3219633631
+ .long 2684354560
+ .long 1014035767
+ .long 4187227697
+ .long 1070013934
+ .long 0
+ .long 1071644672
+ .long 1594061409
+ .long 3219616231
+ .long 2147483648
+ .long 3161837518
+ .long 1416934267
+ .long 1070088925
+ .long 0
+ .long 1071644672
+ .long 938475414
+ .long 3219598600
+ .long 0
+ .long 3162559727
+ .long 2546065654
+ .long 1070163044
+ .long 0
+ .long 1071644672
+ .long 1424664751
+ .long 3219580740
+ .long 3221225472
+ .long 1015921667
+ .long 2583490354
+ .long 1070236281
+ .long 0
+ .long 1071644672
+ .long 1719614413
+ .long 3219562654
+ .long 0
+ .long 1015799092
+ .long 1403691706
+ .long 1070308625
+ .long 0
+ .long 1071644672
+ .long 636516413
+ .long 3219544345
+ .long 3758096384
+ .long 3163307364
+ .long 3753901657
+ .long 1070380064
+ .long 0
+ .long 1071644672
+ .long 1427975391
+ .long 3219525815
+ .long 1073741824
+ .long 1014124979
+ .long 2081278341
+ .long 1070450589
+ .long 0
+ .long 1071644672
+ .long 3194290572
+ .long 3219507067
+ .long 2147483648
+ .long 3162532330
+ .long 2309668539
+ .long 1070520188
+ .long 0
+ .long 1071644672
+ .long 881650848
+ .long 3219488105
+ .long 2147483648
+ .long 1015502624
+ .long 2371640770
+ .long 1070588851
+ .long 0
+ .long 1071644672
+ .long 2460177814
+ .long 3219468930
+ .long 2147483648
+ .long 1014633195
+ .long 3489768009
+ .long 3218019271
+ .long 0
+ .long 1072693248
+ .long 3152274921
+ .long 3219449546
+ .long 3758096384
+ .long 3160654483
+ .long 3239527685
+ .long 3217952511
+ .long 0
+ .long 1072693248
+ .long 2610628921
+ .long 3219429956
+ .long 1610612736
+ .long 1015185121
+ .long 1403757309
+ .long 3217886718
+ .long 0
+ .long 1072693248
+ .long 621354454
+ .long 3219410163
+ .long 536870912
+ .long 3160934250
+ .long 1883353036
+ .long 3217821901
+ .long 0
+ .long 1072693248
+ .long 1397053140
+ .long 3219390169
+ .long 1610612736
+ .long 3162728726
+ .long 3652612115
+ .long 3217758070
+ .long 0
+ .long 1072693248
+ .long 689983673
+ .long 3219369978
+ .long 3758096384
+ .long 3162390053
+ .long 752919289
+ .long 3217695236
+ .long 0
+ .long 1072693248
+ .long 2969983475
+ .long 3219349592
+ .long 2684354560
+ .long 1015151795
+ .long 3761365757
+ .long 3217633406
+ .long 0
+ .long 1072693248
+ .long 4242632757
+ .long 3219329015
+ .long 536870912
+ .long 1013906630
+ .long 1129922991
+ .long 3217572592
+ .long 0
+ .long 1072693248
+ .long 637203434
+ .long 3219308251
+ .long 3221225472
+ .long 1011960193
+ .long 2129093113
+ .long 3217512801
+ .long 0
+ .long 1072693248
+ .long 1289556703
+ .long 3219287301
+ .long 536870912
+ .long 1015405172
+ .long 2482246777
+ .long 3217454043
+ .long 0
+ .long 1072693248
+ .long 2570316633
+ .long 3219266169
+ .long 1610612736
+ .long 1015261105
+ .long 1539668340
+ .long 3217396327
+ .long 0
+ .long 1072693248
+ .long 967731400
+ .long 3219244859
+ .long 536870912
+ .long 3163235805
+ .long 2272832445
+ .long 3217339661
+ .long 0
+ .long 1072693248
+ .long 1675549513
+ .long 3219223373
+ .long 3221225472
+ .long 1015541490
+ .long 2678847490
+ .long 3217284054
+ .long 0
+ .long 1072693248
+ .long 1411074851
+ .long 3219201715
+ .long 1610612736
+ .long 1016001083
+ .long 69903290
+ .long 3217229515
+ .long 0
+ .long 1072693248
+ .long 1297975695
+ .long 3219179888
+ .long 3221225472
+ .long 1015600087
+ .long 3952756490
+ .long 3217176050
+ .long 0
+ .long 1072693248
+ .long 2569207790
+ .long 3219157895
+ .long 1073741824
+ .long 1015699969
+ .long 1663679671
+ .long 3217123670
+ .long 0
+ .long 1072693248
+ .long 2269920951
+ .long 3219135740
+ .long 3758096384
+ .long 1014188597
+ .long 1312926554
+ .long 3217072381
+ .long 0
+ .long 1072693248
+ .long 3690502842
+ .long 3219098532
+ .long 3221225472
+ .long 1009970207
+ .long 3429717432
+ .long 3217013214
+ .long 0
+ .long 1072693248
+ .long 1391425750
+ .long 3219053593
+ .long 3221225472
+ .long 1014878455
+ .long 1945768569
+ .long 3216915048
+ .long 0
+ .long 1072693248
+ .long 939980347
+ .long 3219008349
+ .long 0
+ .long 3160280457
+ .long 1539072807
+ .long 3216819110
+ .long 0
+ .long 1072693248
+ .long 1535566729
+ .long 3218962807
+ .long 2147483648
+ .long 3161805036
+ .long 4133449816
+ .long 3216725414
+ .long 0
+ .long 1072693248
+ .long 2570175582
+ .long 3218916974
+ .long 1073741824
+ .long 3159786766
+ .long 1612193054
+ .long 3216633976
+ .long 0
+ .long 1072693248
+ .long 3623952103
+ .long 3218870857
+ .long 2684354560
+ .long 1014502314
+ .long 1578746984
+ .long 3216544808
+ .long 0
+ .long 1072693248
+ .long 165764288
+ .long 3218824464
+ .long 3221225472
+ .long 3160781666
+ .long 1577996576
+ .long 3216457924
+ .long 0
+ .long 1072693248
+ .long 728580042
+ .long 3218777800
+ .long 1610612736
+ .long 1014849296
+ .long 1972483635
+ .long 3216373337
+ .long 0
+ .long 1072693248
+ .long 1135144330
+ .long 3218730873
+ .long 536870912
+ .long 3160857217
+ .long 1638976426
+ .long 3216291060
+ .long 0
+ .long 1072693248
+ .long 1673302999
+ .long 3218683690
+ .long 2147483648
+ .long 3160835121
+ .long 2255197647
+ .long 3216211105
+ .long 0
+ .long 1072693248
+ .long 2796464483
+ .long 3218636258
+ .long 3221225472
+ .long 1013394669
+ .long 3996842794
+ .long 3216133484
+ .long 0
+ .long 1072693248
+ .long 824036583
+ .long 3218588585
+ .long 0
+ .long 3155796978
+ .long 1234824733
+ .long 3216058210
+ .long 0
+ .long 1072693248
+ .long 821708191
+ .long 3218540677
+ .long 3758096384
+ .long 1014254361
+ .long 4002549419
+ .long 3215985292
+ .long 0
+ .long 1072693248
+ .long 3711903686
+ .long 3218492541
+ .long 1073741824
+ .long 3159428395
+ .long 2962723252
+ .long 3215846895
+ .long 0
+ .long 1072693248
+ .long 1974149085
+ .long 3218444186
+ .long 3221225472
+ .long 1008664000
+ .long 1296295961
+ .long 3215710555
+ .long 0
+ .long 1072693248
+ .long 1115219818
+ .long 3218395618
+ .long 0
+ .long 3160555890
+ .long 997322465
+ .long 3215578993
+ .long 0
+ .long 1072693248
+ .long 2484561409
+ .long 3218346844
+ .long 1073741824
+ .long 3161508220
+ .long 1261629236
+ .long 3215452229
+ .long 0
+ .long 1072693248
+ .long 3269558610
+ .long 3218297872
+ .long 536870912
+ .long 1014221568
+ .long 2476548698
+ .long 3215330282
+ .long 0
+ .long 1072693248
+ .long 785751814
+ .long 3218248710
+ .long 2684354560
+ .long 1014354573
+ .long 1913604284
+ .long 3215213171
+ .long 0
+ .long 1072693248
+ .long 1062001470
+ .long 3218199364
+ .long 0
+ .long 1013391572
+ .long 2306566604
+ .long 3215100913
+ .long 0
+ .long 1072693248
+ .long 1655830135
+ .long 3218149842
+ .long 0
+ .long 3161990338
+ .long 3250111450
+ .long 3214993525
+ .long 0
+ .long 1072693248
+ .long 238550446
+ .long 3218100152
+ .long 2684354560
+ .long 1006899917
+ .long 2377770267
+ .long 3214848032
+ .long 0
+ .long 1072693248
+ .long 2065784603
+ .long 3218020857
+ .long 3758096384
+ .long 1013198318
+ .long 288924873
+ .long 3214652833
+ .long 0
+ .long 1072693248
+ .long 3846521617
+ .long 3217920847
+ .long 536870912
+ .long 3160890258
+ .long 1935888103
+ .long 3214467466
+ .long 0
+ .long 1072693248
+ .long 1786662755
+ .long 3217820546
+ .long 2147483648
+ .long 1008398659
+ .long 2660899430
+ .long 3214291960
+ .long 0
+ .long 1072693248
+ .long 632292433
+ .long 3217719968
+ .long 3758096384
+ .long 1013479685
+ .long 18115067
+ .long 3214126342
+ .long 0
+ .long 1072693248
+ .long 1013556747
+ .long 3217619128
+ .long 2684354560
+ .long 1013083417
+ .long 2346447124
+ .long 3213970635
+ .long 0
+ .long 1072693248
+ .long 3729833777
+ .long 3217518041
+ .long 3758096384
+ .long 3160528366
+ .long 1672287667
+ .long 3213764289
+ .long 0
+ .long 1072693248
+ .long 1149976518
+ .long 3217416724
+ .long 1610612736
+ .long 3160748543
+ .long 3451754846
+ .long 3213492662
+ .long 0
+ .long 1072693248
+ .long 2972270170
+ .long 3217315190
+ .long 1073741824
+ .long 1012041122
+ .long 1037482584
+ .long 3213240992
+ .long 0
+ .long 1072693248
+ .long 1854824762
+ .long 3217213456
+ .long 2684354560
+ .long 3159437312
+ .long 2592747447
+ .long 3213009315
+ .long 0
+ .long 1072693248
+ .long 3470456183
+ .long 3217111536
+ .long 1073741824
+ .long 1013261123
+ .long 2402293340
+ .long 3212758471
+ .long 0
+ .long 1072693248
+ .long 1453945614
+ .long 3216987726
+ .long 1610612736
+ .long 3158976260
+ .long 1227670166
+ .long 3212375297
+ .long 0
+ .long 1072693248
+ .long 3349070549
+ .long 3216783237
+ .long 3758096384
+ .long 1009054621
+ .long 393047345
+ .long 3212032302
+ .long 0
+ .long 1072693248
+ .long 3156849708
+ .long 3216578470
+ .long 3221225472
+ .long 1010706200
+ .long 1118107366
+ .long 3211670787
+ .long 0
+ .long 1072693248
+ .long 177906713
+ .long 3216373456
+ .long 3221225472
+ .long 1011826722
+ .long 4269262315
+ .long 3211145810
+ .long 0
+ .long 1072693248
+ .long 2462980598
+ .long 3216168224
+ .long 2684354560
+ .long 1011458184
+ .long 3810305407
+ .long 3210663220
+ .long 0
+ .long 1072693248
+ .long 2046304480
+ .long 3215943022
+ .long 3758096384
+ .long 1008919019
+ .long 220529721
+ .long 3209935929
+ .long 0
+ .long 1072693248
+ .long 4044216340
+ .long 3215531877
+ .long 0
+ .long 1009324733
+ .long 69373323
+ .long 3209049152
+ .long 0
+ .long 1072693248
+ .long 1972655565
+ .long 3215120485
+ .long 1073741824
+ .long 3156641526
+ .long 3650591271
+ .long 3207838971
+ .long 0
+ .long 1072693248
+ .long 4154680958
+ .long 3214483797
+ .long 0
+ .long 1006312803
+ .long 2376373521
+ .long 3205741868
+ .long 0
+ .long 1072693248
+ .long 4242458500
+ .long 3213435345
+ .long 2684354560
+ .long 3156838286
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2376373521
+ .long 3205741868
+ .long 0
+ .long 1072693248
+ .long 4242458500
+ .long 1065951697
+ .long 2684354560
+ .long 1009354638
+ .long 3650591271
+ .long 3207838971
+ .long 0
+ .long 1072693248
+ .long 4154680958
+ .long 1067000149
+ .long 0
+ .long 3153796451
+ .long 69373323
+ .long 3209049152
+ .long 0
+ .long 1072693248
+ .long 1972655565
+ .long 1067636837
+ .long 1073741824
+ .long 1009157878
+ .long 220529721
+ .long 3209935929
+ .long 0
+ .long 1072693248
+ .long 4044216340
+ .long 1068048229
+ .long 0
+ .long 3156808381
+ .long 3810305407
+ .long 3210663220
+ .long 0
+ .long 1072693248
+ .long 2046304480
+ .long 1068459374
+ .long 3758096384
+ .long 3156402667
+ .long 4269262315
+ .long 3211145810
+ .long 0
+ .long 1072693248
+ .long 2462980598
+ .long 1068684576
+ .long 2684354560
+ .long 3158941832
+ .long 1118107366
+ .long 3211670787
+ .long 0
+ .long 1072693248
+ .long 177906713
+ .long 1068889808
+ .long 3221225472
+ .long 3159310370
+ .long 393047345
+ .long 3212032302
+ .long 0
+ .long 1072693248
+ .long 3156849708
+ .long 1069094822
+ .long 3221225472
+ .long 3158189848
+ .long 1227670166
+ .long 3212375297
+ .long 0
+ .long 1072693248
+ .long 3349070549
+ .long 1069299589
+ .long 3758096384
+ .long 3156538269
+ .long 2402293340
+ .long 3212758471
+ .long 0
+ .long 1072693248
+ .long 1453945614
+ .long 1069504078
+ .long 1610612736
+ .long 1011492612
+ .long 2592747447
+ .long 3213009315
+ .long 0
+ .long 1072693248
+ .long 3470456183
+ .long 1069627888
+ .long 1073741824
+ .long 3160744771
+ .long 1037482584
+ .long 3213240992
+ .long 0
+ .long 1072693248
+ .long 1854824762
+ .long 1069729808
+ .long 2684354560
+ .long 1011953664
+ .long 3451754846
+ .long 3213492662
+ .long 0
+ .long 1072693248
+ .long 2972270170
+ .long 1069831542
+ .long 1073741824
+ .long 3159524770
+ .long 1672287667
+ .long 3213764289
+ .long 0
+ .long 1072693248
+ .long 1149976518
+ .long 1069933076
+ .long 1610612736
+ .long 1013264895
+ .long 2346447124
+ .long 3213970635
+ .long 0
+ .long 1072693248
+ .long 3729833777
+ .long 1070034393
+ .long 3758096384
+ .long 1013044718
+ .long 18115067
+ .long 3214126342
+ .long 0
+ .long 1072693248
+ .long 1013556747
+ .long 1070135480
+ .long 2684354560
+ .long 3160567065
+ .long 2660899430
+ .long 3214291960
+ .long 0
+ .long 1072693248
+ .long 632292433
+ .long 1070236320
+ .long 3758096384
+ .long 3160963333
+ .long 1935888103
+ .long 3214467466
+ .long 0
+ .long 1072693248
+ .long 1786662755
+ .long 1070336898
+ .long 2147483648
+ .long 3155882307
+ .long 288924873
+ .long 3214652833
+ .long 0
+ .long 1072693248
+ .long 3846521617
+ .long 1070437199
+ .long 536870912
+ .long 1013406610
+ .long 2377770267
+ .long 3214848032
+ .long 0
+ .long 1072693248
+ .long 2065784603
+ .long 1070537209
+ .long 3758096384
+ .long 3160681966
+ .long 3250111450
+ .long 3214993525
+ .long 0
+ .long 1072693248
+ .long 238550446
+ .long 1070616504
+ .long 2684354560
+ .long 3154383565
+ .long 2306566604
+ .long 3215100913
+ .long 0
+ .long 1072693248
+ .long 1655830135
+ .long 1070666194
+ .long 0
+ .long 1014506690
+ .long 1913604284
+ .long 3215213171
+ .long 0
+ .long 1072693248
+ .long 1062001470
+ .long 1070715716
+ .long 0
+ .long 3160875220
+ .long 2476548698
+ .long 3215330282
+ .long 0
+ .long 1072693248
+ .long 785751814
+ .long 1070765062
+ .long 2684354560
+ .long 3161838221
+ .long 1261629236
+ .long 3215452229
+ .long 0
+ .long 1072693248
+ .long 3269558610
+ .long 1070814224
+ .long 536870912
+ .long 3161705216
+ .long 997322465
+ .long 3215578993
+ .long 0
+ .long 1072693248
+ .long 2484561409
+ .long 1070863196
+ .long 1073741824
+ .long 1014024572
+ .long 1296295961
+ .long 3215710555
+ .long 0
+ .long 1072693248
+ .long 1115219818
+ .long 1070911970
+ .long 0
+ .long 1013072242
+ .long 2962723252
+ .long 3215846895
+ .long 0
+ .long 1072693248
+ .long 1974149085
+ .long 1070960538
+ .long 3221225472
+ .long 3156147648
+ .long 4002549419
+ .long 3215985292
+ .long 0
+ .long 1072693248
+ .long 3711903686
+ .long 1071008893
+ .long 1073741824
+ .long 1011944747
+ .long 1234824733
+ .long 3216058210
+ .long 0
+ .long 1072693248
+ .long 821708191
+ .long 1071057029
+ .long 3758096384
+ .long 3161738009
+ .long 3996842794
+ .long 3216133484
+ .long 0
+ .long 1072693248
+ .long 824036583
+ .long 1071104937
+ .long 0
+ .long 1008313330
+ .long 2255197647
+ .long 3216211105
+ .long 0
+ .long 1072693248
+ .long 2796464483
+ .long 1071152610
+ .long 3221225472
+ .long 3160878317
+ .long 1638976426
+ .long 3216291060
+ .long 0
+ .long 1072693248
+ .long 1673302999
+ .long 1071200042
+ .long 2147483648
+ .long 1013351473
+ .long 1972483635
+ .long 3216373337
+ .long 0
+ .long 1072693248
+ .long 1135144330
+ .long 1071247225
+ .long 536870912
+ .long 1013373569
+ .long 1577996576
+ .long 3216457924
+ .long 0
+ .long 1072693248
+ .long 728580042
+ .long 1071294152
+ .long 1610612736
+ .long 3162332944
+ .long 1578746984
+ .long 3216544808
+ .long 0
+ .long 1072693248
+ .long 165764288
+ .long 1071340816
+ .long 3221225472
+ .long 1013298018
+ .long 1612193054
+ .long 3216633976
+ .long 0
+ .long 1072693248
+ .long 3623952103
+ .long 1071387209
+ .long 2684354560
+ .long 3161985962
+ .long 4133449816
+ .long 3216725414
+ .long 0
+ .long 1072693248
+ .long 2570175582
+ .long 1071433326
+ .long 1073741824
+ .long 1012303118
+ .long 1539072807
+ .long 3216819110
+ .long 0
+ .long 1072693248
+ .long 1535566729
+ .long 1071479159
+ .long 2147483648
+ .long 1014321388
+ .long 1945768569
+ .long 3216915048
+ .long 0
+ .long 1072693248
+ .long 939980347
+ .long 1071524701
+ .long 0
+ .long 1012796809
+ .long 3429717432
+ .long 3217013214
+ .long 0
+ .long 1072693248
+ .long 1391425750
+ .long 1071569945
+ .long 3221225472
+ .long 3162362103
+ .long 1312926554
+ .long 3217072381
+ .long 0
+ .long 1072693248
+ .long 3690502842
+ .long 1071614884
+ .long 3221225472
+ .long 3157453855
+ .long 1663679671
+ .long 3217123670
+ .long 0
+ .long 1072693248
+ .long 2269920951
+ .long 1071652092
+ .long 3758096384
+ .long 3161672245
+ .long 3952756490
+ .long 3217176050
+ .long 0
+ .long 1072693248
+ .long 2569207790
+ .long 1071674247
+ .long 1073741824
+ .long 3163183617
+ .long 69903290
+ .long 3217229515
+ .long 0
+ .long 1072693248
+ .long 1297975695
+ .long 1071696240
+ .long 3221225472
+ .long 3163083735
+ .long 2678847490
+ .long 3217284054
+ .long 0
+ .long 1072693248
+ .long 1411074851
+ .long 1071718067
+ .long 1610612736
+ .long 3163484731
+ .long 2272832445
+ .long 3217339661
+ .long 0
+ .long 1072693248
+ .long 1675549513
+ .long 1071739725
+ .long 3221225472
+ .long 3163025138
+ .long 1539668340
+ .long 3217396327
+ .long 0
+ .long 1072693248
+ .long 967731400
+ .long 1071761211
+ .long 536870912
+ .long 1015752157
+ .long 2482246777
+ .long 3217454043
+ .long 0
+ .long 1072693248
+ .long 2570316633
+ .long 1071782521
+ .long 1610612736
+ .long 3162744753
+ .long 2129093113
+ .long 3217512801
+ .long 0
+ .long 1072693248
+ .long 1289556703
+ .long 1071803653
+ .long 536870912
+ .long 3162888820
+ .long 1129922991
+ .long 3217572592
+ .long 0
+ .long 1072693248
+ .long 637203434
+ .long 1071824603
+ .long 3221225472
+ .long 3159443841
+ .long 3761365757
+ .long 3217633406
+ .long 0
+ .long 1072693248
+ .long 4242632757
+ .long 1071845367
+ .long 536870912
+ .long 3161390278
+ .long 752919289
+ .long 3217695236
+ .long 0
+ .long 1072693248
+ .long 2969983475
+ .long 1071865944
+ .long 2684354560
+ .long 3162635443
+ .long 3652612115
+ .long 3217758070
+ .long 0
+ .long 1072693248
+ .long 689983673
+ .long 1071886330
+ .long 3758096384
+ .long 1014906405
+ .long 1883353036
+ .long 3217821901
+ .long 0
+ .long 1072693248
+ .long 1397053140
+ .long 1071906521
+ .long 1610612736
+ .long 1015245078
+ .long 1403757309
+ .long 3217886718
+ .long 0
+ .long 1072693248
+ .long 621354454
+ .long 1071926515
+ .long 536870912
+ .long 1013450602
+ .long 3239527685
+ .long 3217952511
+ .long 0
+ .long 1072693248
+ .long 2610628921
+ .long 1071946308
+ .long 1610612736
+ .long 3162668769
+ .long 3489768009
+ .long 3218019271
+ .long 0
+ .long 1072693248
+ .long 3152274921
+ .long 1071965898
+ .long 3758096384
+ .long 1013170835
+ .long 2371640770
+ .long 1070588851
+ .long 0
+ .long 1071644672
+ .long 2460177814
+ .long 1071985282
+ .long 2147483648
+ .long 3162116843
+ .long 2309668539
+ .long 1070520188
+ .long 0
+ .long 1071644672
+ .long 881650848
+ .long 1072004457
+ .long 2147483648
+ .long 3162986272
+ .long 2081278341
+ .long 1070450589
+ .long 0
+ .long 1071644672
+ .long 3194290572
+ .long 1072023419
+ .long 2147483648
+ .long 1015048682
+ .long 3753901657
+ .long 1070380064
+ .long 0
+ .long 1071644672
+ .long 1427975391
+ .long 1072042167
+ .long 1073741824
+ .long 3161608627
+ .long 1403691706
+ .long 1070308625
+ .long 0
+ .long 1071644672
+ .long 636516413
+ .long 1072060697
+ .long 3758096384
+ .long 1015823716
+ .long 2583490354
+ .long 1070236281
+ .long 0
+ .long 1071644672
+ .long 1719614413
+ .long 1072079006
+ .long 0
+ .long 3163282740
+ .long 2546065654
+ .long 1070163044
+ .long 0
+ .long 1071644672
+ .long 1424664751
+ .long 1072097092
+ .long 3221225472
+ .long 3163405315
+ .long 1416934267
+ .long 1070088925
+ .long 0
+ .long 1071644672
+ .long 938475414
+ .long 1072114952
+ .long 0
+ .long 1015076079
+ .long 4187227697
+ .long 1070013934
+ .long 0
+ .long 1071644672
+ .long 1594061409
+ .long 1072132583
+ .long 2147483648
+ .long 1014353870
+ .long 3526603391
+ .long 1069938084
+ .long 0
+ .long 1071644672
+ .long 577417135
+ .long 1072149983
+ .long 2684354560
+ .long 3161519415
+ .long 1250776663
+ .long 1069861386
+ .long 0
+ .long 1071644672
+ .long 3814135665
+ .long 1072167148
+ .long 3221225472
+ .long 3163146456
+ .long 4019165092
+ .long 1069783850
+ .long 0
+ .long 1071644672
+ .long 201299822
+ .long 1072184078
+ .long 3758096384
+ .long 3161912352
+ .long 1852581091
+ .long 1069705490
+ .long 0
+ .long 1071644672
+ .long 263859903
+ .long 1072200768
+ .long 0
+ .long 3162692284
+ .long 2485417816
+ .long 1069626316
+ .long 0
+ .long 1071644672
+ .long 1796544321
+ .long 1072217216
+ .long 536870912
+ .long 3162686945
+ .long 2586490530
+ .long 1069545162
+ .long 0
+ .long 1071644672
+ .long 2750387213
+ .long 1072233420
+ .long 2147483648
+ .long 3160858537
+ .long 1224902090
+ .long 1069383633
+ .long 0
+ .long 1071644672
+ .long 1234330619
+ .long 1072249378
+ .long 2684354560
+ .long 1015272473
+ .long 2285031318
+ .long 1069220549
+ .long 0
+ .long 1071644672
+ .long 4106737474
+ .long 1072265086
+ .long 2684354560
+ .long 3162592377
+ .long 3876290983
+ .long 1069055935
+ .long 0
+ .long 1071644672
+ .long 1207142209
+ .long 1072280544
+ .long 2147483648
+ .long 3162705634
+ .long 802660176
+ .long 1068889817
+ .long 0
+ .long 1071644672
+ .long 4012486548
+ .long 1072295747
+ .long 2684354560
+ .long 1014701564
+ .long 1726519029
+ .long 1068722218
+ .long 0
+ .long 1071644672
+ .long 2688952194
+ .long 1072310695
+ .long 0
+ .long 3161532603
+ .long 3382663878
+ .long 1068553164
+ .long 0
+ .long 1071644672
+ .long 453180130
+ .long 1072325385
+ .long 1073741824
+ .long 3162411281
+ .long 2598800519
+ .long 1068266419
+ .long 0
+ .long 1071644672
+ .long 688824739
+ .long 1072339814
+ .long 3758096384
+ .long 1010431536
+ .long 1038988426
+ .long 1067922646
+ .long 0
+ .long 1071644672
+ .long 2653017361
+ .long 1072353980
+ .long 0
+ .long 3162800062
+ .long 1102361128
+ .long 1067576117
+ .long 0
+ .long 1071644672
+ .long 1477771776
+ .long 1072367882
+ .long 536870912
+ .long 3163104986
+ .long 2880516564
+ .long 1067003401
+ .long 0
+ .long 1071644672
+ .long 1056266002
+ .long 1072381517
+ .long 2684354560
+ .long 3163469496
+ .long 1220541286
+ .long 1066197478
+ .long 0
+ .long 1071644672
+ .long 1159294526
+ .long 1072394883
+ .long 536870912
+ .long 3163276959
+ .long 1279178457
+ .long 1064107143
+ .long 0
+ .long 1071644672
+ .long 1731563730
+ .long 1072407978
+ .long 536870912
+ .long 1015540302
+ .long 31019393
+ .long 3212646089
+ .long 0
+ .long 1071644672
+ .long 2892993834
+ .long 1072420800
+ .long 536870912
+ .long 3163039143
+ .long 3506991783
+ .long 3214032490
+ .long 0
+ .long 1071644672
+ .long 645027145
+ .long 1072433348
+ .long 3221225472
+ .long 1012602239
+ .long 2140183630
+ .long 3214756396
+ .long 0
+ .long 1071644672
+ .long 4051746225
+ .long 1072445618
+ .long 1610612736
+ .long 3161907377
+ .long 600368053
+ .long 3215209541
+ .long 0
+ .long 1071644672
+ .long 881357723
+ .long 1072457611
+ .long 3221225472
+ .long 1013810890
+ .long 913431823
+ .long 3215576203
+ .long 0
+ .long 1071644672
+ .long 557060597
+ .long 1072469323
+ .long 0
+ .long 3159554934
+ .long 1073154251
+ .long 3215945137
+ .long 0
+ .long 1071644672
+ .long 4093443164
+ .long 1072480752
+ .long 536870912
+ .long 1014912865
+ .long 3631910143
+ .long 3216149439
+ .long 0
+ .long 1071644672
+ .long 4097623923
+ .long 1072491898
+ .long 2684354560
+ .long 3160308587
+ .long 1380647130
+ .long 3216336095
+ .long 0
+ .long 1071644672
+ .long 1950234076
+ .long 1072502759
+ .long 536870912
+ .long 3159425498
+ .long 4049357271
+ .long 3216523802
+ .long 0
+ .long 1071644672
+ .long 3511535930
+ .long 1072513332
+ .long 2147483648
+ .long 3162828626
+ .long 1896722595
+ .long 3216712534
+ .long 0
+ .long 1071644672
+ .long 1942611595
+ .long 1072523617
+ .long 3221225472
+ .long 3162410081
+ .long 1699043957
+ .long 3216902261
+ .long 0
+ .long 1071644672
+ .long 3476196678
+ .long 1072533611
+ .long 0
+ .long 1014257638
+ .long 3296146332
+ .long 1069485732
+ .long 0
+ .long 1070596096
+ .long 1647878299
+ .long 1072543314
+ .long 3758096384
+ .long 3162169063
+ .long 3286832763
+ .long 1069294100
+ .long 0
+ .long 1070596096
+ .long 3066872380
+ .long 1072552723
+ .long 3221225472
+ .long 1015561271
+ .long 1962712856
+ .long 1069101559
+ .long 0
+ .long 1070596096
+ .long 1647164971
+ .long 1072561838
+ .long 2147483648
+ .long 3162838250
+ .long 3601629044
+ .long 1068908137
+ .long 0
+ .long 1070596096
+ .long 83265253
+ .long 1072570657
+ .long 1610612736
+ .long 3162510535
+ .long 165911977
+ .long 1068713865
+ .long 0
+ .long 1070596096
+ .long 1261158782
+ .long 1072579178
+ .long 2147483648
+ .long 1015711544
+ .long 1348311045
+ .long 1068518770
+ .long 0
+ .long 1070596096
+ .long 3964199186
+ .long 1072587400
+ .long 3758096384
+ .long 3160501078
+ .long 386665102
+ .long 1068146822
+ .long 0
+ .long 1070596096
+ .long 2873938189
+ .long 1072595323
+ .long 1610612736
+ .long 3162311422
+ .long 1991047213
+ .long 1067753521
+ .long 0
+ .long 1070596096
+ .long 1455828442
+ .long 1072602945
+ .long 3758096384
+ .long 1015505073
+ .long 4107121629
+ .long 1067267139
+ .long 0
+ .long 1070596096
+ .long 3370060660
+ .long 1072610264
+ .long 1610612736
+ .long 1014787212
+ .long 723478390
+ .long 1066474790
+ .long 0
+ .long 1070596096
+ .long 3882371427
+ .long 1072617280
+ .long 2147483648
+ .long 1014923975
+ .long 2382326656
+ .long 1064562179
+ .long 0
+ .long 1070596096
+ .long 2749658050
+ .long 1072623992
+ .long 1610612736
+ .long 1015427338
+ .long 2614369450
+ .long 3212624080
+ .long 0
+ .long 1070596096
+ .long 4220661975
+ .long 1072630398
+ .long 3221225472
+ .long 1014312058
+ .long 3587565429
+ .long 3214108032
+ .long 0
+ .long 1070596096
+ .long 4151720666
+ .long 1072636498
+ .long 0
+ .long 3162639544
+ .long 2886567144
+ .long 3214910444
+ .long 0
+ .long 1070596096
+ .long 2892293513
+ .long 1072642291
+ .long 2684354560
+ .long 3162340271
+ .long 1765797566
+ .long 3215324543
+ .long 0
+ .long 1070596096
+ .long 990588717
+ .long 1072647776
+ .long 3758096384
+ .long 3162041857
+ .long 240740309
+ .long 3215727903
+ .long 0
+ .long 1070596096
+ .long 3489094832
+ .long 1072652951
+ .long 536870912
+ .long 1014325783
+ .long 2034433221
+ .long 1068349287
+ .long 0
+ .long 1069547520
+ .long 2745245815
+ .long 1072657817
+ .long 3221225472
+ .long 1015566129
+ .long 304938777
+ .long 1067944017
+ .long 0
+ .long 1069547520
+ .long 4201728937
+ .long 1072662372
+ .long 1610612736
+ .long 1014674006
+ .long 3299146087
+ .long 1067537882
+ .long 0
+ .long 1069547520
+ .long 617154971
+ .long 1072666617
+ .long 3758096384
+ .long 3163433696
+ .long 1953696209
+ .long 1066811523
+ .long 0
+ .long 1069547520
+ .long 2131272983
+ .long 1072670549
+ .long 3221225472
+ .long 3163005096
+ .long 3987691371
+ .long 1065590540
+ .long 0
+ .long 1069547520
+ .long 1905645377
+ .long 1072674169
+ .long 1610612736
+ .long 1014087596
+ .long 718380601
+ .long 3211081269
+ .long 0
+ .long 1069547520
+ .long 1893834707
+ .long 1072677476
+ .long 1610612736
+ .long 1015147654
+ .long 3272206680
+ .long 3213771729
+ .long 0
+ .long 1069547520
+ .long 4251821691
+ .long 1072680469
+ .long 2147483648
+ .long 3161841007
+ .long 257503056
+ .long 3214647653
+ .long 0
+ .long 1069547520
+ .long 2748392742
+ .long 1072683149
+ .long 536870912
+ .long 3163061750
+ .long 711626851
+ .long 1066916672
+ .long 0
+ .long 1068498944
+ .long 4240268041
+ .long 1072685514
+ .long 536870912
+ .long 1013588963
+ .long 2523975598
+ .long 1065789700
+ .long 0
+ .long 1068498944
+ .long 2902558778
+ .long 1072687565
+ .long 3221225472
+ .long 1013260780
+ .long 3237733378
+ .long 3209908784
+ .long 0
+ .long 1068498944
+ .long 1703834029
+ .long 1072689301
+ .long 3758096384
+ .long 1015028364
+ .long 1003003824
+ .long 3213591144
+ .long 0
+ .long 1068498944
+ .long 3816385918
+ .long 1072690721
+ .long 536870912
+ .long 3161216956
+ .long 2896342633
+ .long 1064747819
+ .long 0
+ .long 1067450368
+ .long 4026464093
+ .long 1072691826
+ .long 3221225472
+ .long 3163075789
+ .long 561145352
+ .long 3212540584
+ .long 0
+ .long 1067450368
+ .long 1619315981
+ .long 1072692616
+ .long 1073741824
+ .long 3162584397
+ .long 210035182
+ .long 3211491512
+ .long 0
+ .long 1066401792
+ .long 379294427
+ .long 1072693090
+ .long 3221225472
+ .long 1015405987
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 239972940
+ .long 1089470464
+ .long 239972940
+ .long 1089470464
+ .long 239972940
+ .long 1089470464
+ .long 239972940
+ .long 1089470464
+ .long 239972940
+ .long 1089470464
+ .long 239972940
+ .long 1089470464
+ .long 239972940
+ .long 1089470464
+ .long 239972940
+ .long 1089470464
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 1431651400
+ .long 3217380693
+ .long 1431651400
+ .long 3217380693
+ .long 1431651400
+ .long 3217380693
+ .long 1431651400
+ .long 3217380693
+ .long 1431651400
+ .long 3217380693
+ .long 1431651400
+ .long 3217380693
+ .long 1431651400
+ .long 3217380693
+ .long 1431651400
+ .long 3217380693
+ .long 2880656668
+ .long 1065423119
+ .long 2880656668
+ .long 1065423119
+ .long 2880656668
+ .long 1065423119
+ .long 2880656668
+ .long 1065423119
+ .long 2880656668
+ .long 1065423119
+ .long 2880656668
+ .long 1065423119
+ .long 2880656668
+ .long 1065423119
+ .long 2880656668
+ .long 1065423119
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 1431653583
+ .long 1067799893
+ .long 1431653583
+ .long 1067799893
+ .long 1431653583
+ .long 1067799893
+ .long 1431653583
+ .long 1067799893
+ .long 1431653583
+ .long 1067799893
+ .long 1431653583
+ .long 1067799893
+ .long 1431653583
+ .long 1067799893
+ .long 1431653583
+ .long 1067799893
+ .long 2976101079
+ .long 3210133866
+ .long 2976101079
+ .long 3210133866
+ .long 2976101079
+ .long 3210133866
+ .long 2976101079
+ .long 3210133866
+ .long 2976101079
+ .long 3210133866
+ .long 2976101079
+ .long 3210133866
+ .long 2976101079
+ .long 3210133866
+ .long 2976101079
+ .long 3210133866
+ .type __svml_dcos_data_internal_ha,@object
+ .size __svml_dcos_data_internal_ha,17280
+ .align 64
+__svml_dcos_reduction_data_internal:
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 5
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 10
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 20
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 40
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 81
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 162
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 325
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 651
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1303
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2607
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 5215
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 10430
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 20860
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 41721
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 83443
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 166886
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 333772
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 667544
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1335088
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2670176
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 5340353
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 10680707
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 21361414
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 42722829
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 85445659
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 170891318
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 341782637
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 683565275
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1367130551
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2734261102
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1173554908
+ .long 1
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2347109817
+ .long 2
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 399252338
+ .long 5
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 798504676
+ .long 10
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1597009353
+ .long 20
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3194018707
+ .long 40
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2093070119
+ .long 81
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 4186140238
+ .long 162
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 4077313180
+ .long 325
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3859659065
+ .long 651
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3424350834
+ .long 1303
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2553734372
+ .long 2607
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 812501448
+ .long 5215
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1625002897
+ .long 10430
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3250005794
+ .long 20860
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2205044292
+ .long 41721
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 115121288
+ .long 83443
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 230242576
+ .long 166886
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 460485152
+ .long 333772
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 920970305
+ .long 667544
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1841940610
+ .long 1335088
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3683881221
+ .long 2670176
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3072795146
+ .long 5340353
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1850622997
+ .long 10680707
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3701245994
+ .long 21361414
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3107524692
+ .long 42722829
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1920082089
+ .long 85445659
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3840164178
+ .long 170891318
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3385361061
+ .long 341782637
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2475754826
+ .long 683565275
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 656542356
+ .long 1367130551
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1313084713
+ .long 2734261102
+ .long 0
+ .long 0
+ .long 1
+ .long 0
+ .long 2626169427
+ .long 1173554908
+ .long 0
+ .long 0
+ .long 2
+ .long 0
+ .long 957371559
+ .long 2347109817
+ .long 0
+ .long 0
+ .long 5
+ .long 0
+ .long 1914743119
+ .long 399252338
+ .long 0
+ .long 0
+ .long 10
+ .long 0
+ .long 3829486239
+ .long 798504676
+ .long 0
+ .long 0
+ .long 20
+ .long 0
+ .long 3364005183
+ .long 1597009353
+ .long 0
+ .long 0
+ .long 40
+ .long 0
+ .long 2433043071
+ .long 3194018707
+ .long 0
+ .long 0
+ .long 81
+ .long 0
+ .long 571118846
+ .long 2093070119
+ .long 0
+ .long 0
+ .long 162
+ .long 0
+ .long 1142237692
+ .long 4186140238
+ .long 0
+ .long 0
+ .long 325
+ .long 0
+ .long 2284475384
+ .long 4077313180
+ .long 0
+ .long 0
+ .long 651
+ .long 0
+ .long 273983472
+ .long 3859659065
+ .long 0
+ .long 0
+ .long 1303
+ .long 0
+ .long 547966945
+ .long 3424350834
+ .long 0
+ .long 0
+ .long 2607
+ .long 0
+ .long 1095933890
+ .long 2553734372
+ .long 0
+ .long 0
+ .long 5215
+ .long 0
+ .long 2191867780
+ .long 812501448
+ .long 0
+ .long 0
+ .long 10430
+ .long 0
+ .long 88768265
+ .long 1625002897
+ .long 0
+ .long 0
+ .long 20860
+ .long 0
+ .long 177536531
+ .long 3250005794
+ .long 0
+ .long 0
+ .long 41721
+ .long 0
+ .long 355073063
+ .long 2205044292
+ .long 0
+ .long 0
+ .long 83443
+ .long 0
+ .long 710146126
+ .long 115121288
+ .long 0
+ .long 0
+ .long 166886
+ .long 0
+ .long 1420292253
+ .long 230242576
+ .long 0
+ .long 0
+ .long 333772
+ .long 0
+ .long 2840584506
+ .long 460485152
+ .long 0
+ .long 0
+ .long 667544
+ .long 0
+ .long 1386201717
+ .long 920970305
+ .long 0
+ .long 0
+ .long 1335088
+ .long 0
+ .long 2772403434
+ .long 1841940610
+ .long 0
+ .long 0
+ .long 2670176
+ .long 0
+ .long 1249839573
+ .long 3683881221
+ .long 0
+ .long 0
+ .long 5340353
+ .long 0
+ .long 2499679147
+ .long 3072795146
+ .long 0
+ .long 0
+ .long 10680707
+ .long 0
+ .long 704390999
+ .long 1850622997
+ .long 0
+ .long 0
+ .long 21361414
+ .long 0
+ .long 1408781999
+ .long 3701245994
+ .long 0
+ .long 0
+ .long 42722829
+ .long 0
+ .long 2817563999
+ .long 3107524692
+ .long 0
+ .long 0
+ .long 85445659
+ .long 0
+ .long 1340160702
+ .long 1920082089
+ .long 0
+ .long 0
+ .long 170891318
+ .long 0
+ .long 2680321405
+ .long 3840164178
+ .long 0
+ .long 0
+ .long 341782637
+ .long 0
+ .long 1065675514
+ .long 3385361061
+ .long 0
+ .long 0
+ .long 683565275
+ .long 0
+ .long 2131351028
+ .long 2475754826
+ .long 0
+ .long 0
+ .long 1367130551
+ .long 0
+ .long 4262702056
+ .long 656542356
+ .long 0
+ .long 0
+ .long 2734261102
+ .long 0
+ .long 4230436817
+ .long 1313084713
+ .long 0
+ .long 0
+ .long 1173554908
+ .long 1
+ .long 4165906339
+ .long 2626169427
+ .long 0
+ .long 0
+ .long 2347109817
+ .long 2
+ .long 4036845383
+ .long 957371559
+ .long 0
+ .long 0
+ .long 399252338
+ .long 5
+ .long 3778723471
+ .long 1914743119
+ .long 0
+ .long 0
+ .long 798504676
+ .long 10
+ .long 3262479647
+ .long 3829486239
+ .long 0
+ .long 0
+ .long 1597009353
+ .long 20
+ .long 2229991998
+ .long 3364005183
+ .long 0
+ .long 0
+ .long 3194018707
+ .long 40
+ .long 165016701
+ .long 2433043071
+ .long 0
+ .long 0
+ .long 2093070119
+ .long 81
+ .long 330033402
+ .long 571118846
+ .long 0
+ .long 0
+ .long 4186140238
+ .long 162
+ .long 660066805
+ .long 1142237692
+ .long 0
+ .long 0
+ .long 4077313180
+ .long 325
+ .long 1320133610
+ .long 2284475384
+ .long 0
+ .long 0
+ .long 3859659065
+ .long 651
+ .long 2640267220
+ .long 273983472
+ .long 0
+ .long 0
+ .long 3424350834
+ .long 1303
+ .long 985567145
+ .long 547966945
+ .long 0
+ .long 0
+ .long 2553734372
+ .long 2607
+ .long 1971134291
+ .long 1095933890
+ .long 0
+ .long 0
+ .long 812501448
+ .long 5215
+ .long 3942268582
+ .long 2191867780
+ .long 0
+ .long 0
+ .long 1625002897
+ .long 10430
+ .long 3589569869
+ .long 88768265
+ .long 0
+ .long 0
+ .long 3250005794
+ .long 20860
+ .long 2884172442
+ .long 177536531
+ .long 0
+ .long 0
+ .long 2205044292
+ .long 41721
+ .long 1473377588
+ .long 355073063
+ .long 0
+ .long 0
+ .long 115121288
+ .long 83443
+ .long 2946755177
+ .long 710146126
+ .long 0
+ .long 0
+ .long 230242576
+ .long 166886
+ .long 1598543059
+ .long 1420292253
+ .long 0
+ .long 0
+ .long 460485152
+ .long 333772
+ .long 3197086118
+ .long 2840584506
+ .long 0
+ .long 0
+ .long 920970305
+ .long 667544
+ .long 2099204941
+ .long 1386201717
+ .long 0
+ .long 0
+ .long 1841940610
+ .long 1335088
+ .long 4198409883
+ .long 2772403434
+ .long 0
+ .long 0
+ .long 3683881221
+ .long 2670176
+ .long 4101852471
+ .long 1249839573
+ .long 0
+ .long 0
+ .long 3072795146
+ .long 5340353
+ .long 3908737646
+ .long 2499679147
+ .long 0
+ .long 0
+ .long 1850622997
+ .long 10680707
+ .long 3522507997
+ .long 704390999
+ .long 0
+ .long 0
+ .long 3701245994
+ .long 21361414
+ .long 2750048699
+ .long 1408781999
+ .long 0
+ .long 0
+ .long 3107524692
+ .long 42722829
+ .long 1205130103
+ .long 2817563999
+ .long 0
+ .long 0
+ .long 1920082089
+ .long 85445659
+ .long 2410260206
+ .long 1340160702
+ .long 0
+ .long 0
+ .long 3840164178
+ .long 170891318
+ .long 525553116
+ .long 2680321405
+ .long 0
+ .long 0
+ .long 3385361061
+ .long 341782637
+ .long 1051106232
+ .long 1065675514
+ .long 0
+ .long 0
+ .long 2475754826
+ .long 683565275
+ .long 2102212464
+ .long 2131351028
+ .long 0
+ .long 0
+ .long 656542356
+ .long 1367130551
+ .long 4204424928
+ .long 4262702056
+ .long 0
+ .long 0
+ .long 1313084713
+ .long 2734261102
+ .long 4113882560
+ .long 4230436817
+ .long 1
+ .long 0
+ .long 2626169427
+ .long 1173554908
+ .long 3932797825
+ .long 4165906339
+ .long 2
+ .long 0
+ .long 957371559
+ .long 2347109817
+ .long 3570628355
+ .long 4036845383
+ .long 5
+ .long 0
+ .long 1914743119
+ .long 399252338
+ .long 2846289414
+ .long 3778723471
+ .long 10
+ .long 0
+ .long 3829486239
+ .long 798504676
+ .long 1397611533
+ .long 3262479647
+ .long 20
+ .long 0
+ .long 3364005183
+ .long 1597009353
+ .long 2795223067
+ .long 2229991998
+ .long 40
+ .long 0
+ .long 2433043071
+ .long 3194018707
+ .long 1295478838
+ .long 165016701
+ .long 81
+ .long 0
+ .long 571118846
+ .long 2093070119
+ .long 2590957677
+ .long 330033402
+ .long 162
+ .long 0
+ .long 1142237692
+ .long 4186140238
+ .long 886948059
+ .long 660066805
+ .long 325
+ .long 0
+ .long 2284475384
+ .long 4077313180
+ .long 1773896118
+ .long 1320133610
+ .long 651
+ .long 0
+ .long 273983472
+ .long 3859659065
+ .long 3547792237
+ .long 2640267220
+ .long 1303
+ .long 0
+ .long 547966945
+ .long 3424350834
+ .long 2800617179
+ .long 985567145
+ .long 2607
+ .long 0
+ .long 1095933890
+ .long 2553734372
+ .long 1306267062
+ .long 1971134291
+ .long 5215
+ .long 0
+ .long 2191867780
+ .long 812501448
+ .long 2612534124
+ .long 3942268582
+ .long 10430
+ .long 0
+ .long 88768265
+ .long 1625002897
+ .long 930100952
+ .long 3589569869
+ .long 20860
+ .long 0
+ .long 177536531
+ .long 3250005794
+ .long 1860201905
+ .long 2884172442
+ .long 41721
+ .long 0
+ .long 355073063
+ .long 2205044292
+ .long 3720403810
+ .long 1473377588
+ .long 83443
+ .long 0
+ .long 710146126
+ .long 115121288
+ .long 3145840325
+ .long 2946755177
+ .long 166886
+ .long 0
+ .long 1420292253
+ .long 230242576
+ .long 1996713354
+ .long 1598543059
+ .long 333772
+ .long 0
+ .long 2840584506
+ .long 460485152
+ .long 3993426708
+ .long 3197086118
+ .long 667544
+ .long 0
+ .long 1386201717
+ .long 920970305
+ .long 3691886121
+ .long 2099204941
+ .long 1335088
+ .long 0
+ .long 2772403434
+ .long 1841940610
+ .long 3088804946
+ .long 4198409883
+ .long 2670176
+ .long 0
+ .long 1249839573
+ .long 3683881221
+ .long 1882642597
+ .long 4101852471
+ .long 5340353
+ .long 0
+ .long 2499679147
+ .long 3072795146
+ .long 3765285194
+ .long 3908737646
+ .long 10680707
+ .long 0
+ .long 704390999
+ .long 1850622997
+ .long 3235603093
+ .long 3522507997
+ .long 21361414
+ .long 0
+ .long 1408781999
+ .long 3701245994
+ .long 2176238891
+ .long 2750048699
+ .long 42722829
+ .long 0
+ .long 2817563999
+ .long 3107524692
+ .long 57510486
+ .long 1205130103
+ .long 85445659
+ .long 0
+ .long 1340160702
+ .long 1920082089
+ .long 115020972
+ .long 2410260206
+ .long 170891318
+ .long 0
+ .long 2680321405
+ .long 3840164178
+ .long 230041945
+ .long 525553116
+ .long 341782637
+ .long 0
+ .long 1065675514
+ .long 3385361061
+ .long 460083891
+ .long 1051106232
+ .long 683565275
+ .long 0
+ .long 2131351028
+ .long 2475754826
+ .long 920167782
+ .long 2102212464
+ .long 1367130551
+ .long 0
+ .long 4262702056
+ .long 656542356
+ .long 1840335564
+ .long 4204424928
+ .long 2734261102
+ .long 0
+ .long 4230436817
+ .long 1313084713
+ .long 3680671129
+ .long 4113882560
+ .long 1173554908
+ .long 1
+ .long 4165906339
+ .long 2626169427
+ .long 3066374962
+ .long 3932797825
+ .long 2347109817
+ .long 2
+ .long 4036845383
+ .long 957371559
+ .long 1837782628
+ .long 3570628355
+ .long 399252338
+ .long 5
+ .long 3778723471
+ .long 1914743119
+ .long 3675565257
+ .long 2846289414
+ .long 798504676
+ .long 10
+ .long 3262479647
+ .long 3829486239
+ .long 3056163219
+ .long 1397611533
+ .long 1597009353
+ .long 20
+ .long 2229991998
+ .long 3364005183
+ .long 1817359143
+ .long 2795223067
+ .long 3194018707
+ .long 40
+ .long 165016701
+ .long 2433043071
+ .long 3634718287
+ .long 1295478838
+ .long 2093070119
+ .long 81
+ .long 330033402
+ .long 571118846
+ .long 2974469278
+ .long 2590957677
+ .long 4186140238
+ .long 162
+ .long 660066805
+ .long 1142237692
+ .long 1653971260
+ .long 886948059
+ .long 4077313180
+ .long 325
+ .long 1320133610
+ .long 2284475384
+ .long 3307942520
+ .long 1773896118
+ .long 3859659065
+ .long 651
+ .long 2640267220
+ .long 273983472
+ .long 2320917745
+ .long 3547792237
+ .long 3424350834
+ .long 1303
+ .long 985567145
+ .long 547966945
+ .long 346868194
+ .long 2800617179
+ .long 2553734372
+ .long 2607
+ .long 1971134291
+ .long 1095933890
+ .long 693736388
+ .long 1306267062
+ .long 812501448
+ .long 5215
+ .long 3942268582
+ .long 2191867780
+ .long 1387472776
+ .long 2612534124
+ .long 1625002897
+ .long 10430
+ .long 3589569869
+ .long 88768265
+ .long 2774945552
+ .long 930100952
+ .long 3250005794
+ .long 20860
+ .long 2884172442
+ .long 177536531
+ .long 1254923809
+ .long 1860201905
+ .long 2205044292
+ .long 41721
+ .long 1473377588
+ .long 355073063
+ .long 2509847619
+ .long 3720403810
+ .long 115121288
+ .long 83443
+ .long 2946755177
+ .long 710146126
+ .long 724727943
+ .long 3145840325
+ .long 230242576
+ .long 166886
+ .long 1598543059
+ .long 1420292253
+ .long 1449455886
+ .long 1996713354
+ .long 460485152
+ .long 333772
+ .long 3197086118
+ .long 2840584506
+ .long 2898911772
+ .long 3993426708
+ .long 920970305
+ .long 667544
+ .long 2099204941
+ .long 1386201717
+ .long 1502856249
+ .long 3691886121
+ .long 1841940610
+ .long 1335088
+ .long 4198409883
+ .long 2772403434
+ .long 3005712498
+ .long 3088804946
+ .long 3683881221
+ .long 2670176
+ .long 4101852471
+ .long 1249839573
+ .long 1716457700
+ .long 1882642597
+ .long 3072795146
+ .long 5340353
+ .long 3908737646
+ .long 2499679147
+ .long 3432915400
+ .long 3765285194
+ .long 1850622997
+ .long 10680707
+ .long 3522507997
+ .long 704390999
+ .long 2570863504
+ .long 3235603093
+ .long 3701245994
+ .long 21361414
+ .long 2750048699
+ .long 1408781999
+ .long 846759712
+ .long 2176238891
+ .long 3107524692
+ .long 42722829
+ .long 1205130103
+ .long 2817563999
+ .long 1693519425
+ .long 57510486
+ .long 1920082089
+ .long 85445659
+ .long 2410260206
+ .long 1340160702
+ .long 3387038850
+ .long 115020972
+ .long 3840164178
+ .long 170891318
+ .long 525553116
+ .long 2680321405
+ .long 2479110404
+ .long 230041945
+ .long 3385361061
+ .long 341782637
+ .long 1051106232
+ .long 1065675514
+ .long 663253512
+ .long 460083891
+ .long 2475754826
+ .long 683565275
+ .long 2102212464
+ .long 2131351028
+ .long 1326507024
+ .long 920167782
+ .long 656542356
+ .long 1367130551
+ .long 4204424928
+ .long 4262702056
+ .long 2653014048
+ .long 1840335564
+ .long 1313084713
+ .long 2734261102
+ .long 4113882560
+ .long 4230436817
+ .long 1011060801
+ .long 3680671129
+ .long 2626169427
+ .long 1173554908
+ .long 3932797825
+ .long 4165906339
+ .long 2022121603
+ .long 3066374962
+ .long 957371559
+ .long 2347109817
+ .long 3570628355
+ .long 4036845383
+ .long 4044243207
+ .long 1837782628
+ .long 1914743119
+ .long 399252338
+ .long 2846289414
+ .long 3778723471
+ .long 3793519119
+ .long 3675565257
+ .long 3829486239
+ .long 798504676
+ .long 1397611533
+ .long 3262479647
+ .long 3292070943
+ .long 3056163219
+ .long 3364005183
+ .long 1597009353
+ .long 2795223067
+ .long 2229991998
+ .long 2289174591
+ .long 1817359143
+ .long 2433043071
+ .long 3194018707
+ .long 1295478838
+ .long 165016701
+ .long 283381887
+ .long 3634718287
+ .long 571118846
+ .long 2093070119
+ .long 2590957677
+ .long 330033402
+ .long 566763775
+ .long 2974469278
+ .long 1142237692
+ .long 4186140238
+ .long 886948059
+ .long 660066805
+ .long 1133527550
+ .long 1653971260
+ .long 2284475384
+ .long 4077313180
+ .long 1773896118
+ .long 1320133610
+ .long 2267055100
+ .long 3307942520
+ .long 273983472
+ .long 3859659065
+ .long 3547792237
+ .long 2640267220
+ .long 239142905
+ .long 2320917745
+ .long 547966945
+ .long 3424350834
+ .long 2800617179
+ .long 985567145
+ .long 478285810
+ .long 346868194
+ .long 1095933890
+ .long 2553734372
+ .long 1306267062
+ .long 1971134291
+ .long 956571621
+ .long 693736388
+ .long 2191867780
+ .long 812501448
+ .long 2612534124
+ .long 3942268582
+ .long 1913143242
+ .long 1387472776
+ .long 88768265
+ .long 1625002897
+ .long 930100952
+ .long 3589569869
+ .long 3826286484
+ .long 2774945552
+ .long 177536531
+ .long 3250005794
+ .long 1860201905
+ .long 2884172442
+ .long 3357605672
+ .long 1254923809
+ .long 355073063
+ .long 2205044292
+ .long 3720403810
+ .long 1473377588
+ .long 2420244049
+ .long 2509847619
+ .long 710146126
+ .long 115121288
+ .long 3145840325
+ .long 2946755177
+ .long 545520802
+ .long 724727943
+ .long 1420292253
+ .long 230242576
+ .long 1996713354
+ .long 1598543059
+ .long 1091041605
+ .long 1449455886
+ .long 2840584506
+ .long 460485152
+ .long 3993426708
+ .long 3197086118
+ .long 2182083211
+ .long 2898911772
+ .long 1386201717
+ .long 920970305
+ .long 3691886121
+ .long 2099204941
+ .long 69199126
+ .long 1502856249
+ .long 2772403434
+ .long 1841940610
+ .long 3088804946
+ .long 4198409883
+ .long 138398252
+ .long 3005712498
+ .long 1249839573
+ .long 3683881221
+ .long 1882642597
+ .long 4101852471
+ .long 276796504
+ .long 1716457700
+ .long 2499679147
+ .long 3072795146
+ .long 3765285194
+ .long 3908737646
+ .long 553593009
+ .long 3432915400
+ .long 704390999
+ .long 1850622997
+ .long 3235603093
+ .long 3522507997
+ .long 1107186019
+ .long 2570863504
+ .long 1408781999
+ .long 3701245994
+ .long 2176238891
+ .long 2750048699
+ .long 2214372039
+ .long 846759712
+ .long 2817563999
+ .long 3107524692
+ .long 57510486
+ .long 1205130103
+ .long 133776782
+ .long 1693519425
+ .long 1340160702
+ .long 1920082089
+ .long 115020972
+ .long 2410260206
+ .long 267553565
+ .long 3387038850
+ .long 2680321405
+ .long 3840164178
+ .long 230041945
+ .long 525553116
+ .long 535107130
+ .long 2479110404
+ .long 1065675514
+ .long 3385361061
+ .long 460083891
+ .long 1051106232
+ .long 1070214261
+ .long 663253512
+ .long 2131351028
+ .long 2475754826
+ .long 920167782
+ .long 2102212464
+ .long 2140428522
+ .long 1326507024
+ .long 4262702056
+ .long 656542356
+ .long 1840335564
+ .long 4204424928
+ .long 4280857045
+ .long 2653014048
+ .long 4230436817
+ .long 1313084713
+ .long 3680671129
+ .long 4113882560
+ .long 4266746795
+ .long 1011060801
+ .long 4165906339
+ .long 2626169427
+ .long 3066374962
+ .long 3932797825
+ .long 4238526295
+ .long 2022121603
+ .long 4036845383
+ .long 957371559
+ .long 1837782628
+ .long 3570628355
+ .long 4182085295
+ .long 4044243207
+ .long 3778723471
+ .long 1914743119
+ .long 3675565257
+ .long 2846289414
+ .long 4069203294
+ .long 3793519119
+ .long 3262479647
+ .long 3829486239
+ .long 3056163219
+ .long 1397611533
+ .long 3843439293
+ .long 3292070943
+ .long 2229991998
+ .long 3364005183
+ .long 1817359143
+ .long 2795223067
+ .long 3391911291
+ .long 2289174591
+ .long 165016701
+ .long 2433043071
+ .long 3634718287
+ .long 1295478838
+ .long 2488855287
+ .long 283381887
+ .long 330033402
+ .long 571118846
+ .long 2974469278
+ .long 2590957677
+ .long 682743279
+ .long 566763775
+ .long 660066805
+ .long 1142237692
+ .long 1653971260
+ .long 886948059
+ .long 1365486558
+ .long 1133527550
+ .long 1320133610
+ .long 2284475384
+ .long 3307942520
+ .long 1773896118
+ .long 2730973117
+ .long 2267055100
+ .long 2640267220
+ .long 273983472
+ .long 2320917745
+ .long 3547792237
+ .long 1166978938
+ .long 239142905
+ .long 985567145
+ .long 547966945
+ .long 346868194
+ .long 2800617179
+ .long 2333957877
+ .long 478285810
+ .long 1971134291
+ .long 1095933890
+ .long 693736388
+ .long 1306267062
+ .long 372948459
+ .long 956571621
+ .long 3942268582
+ .long 2191867780
+ .long 1387472776
+ .long 2612534124
+ .long 745896919
+ .long 1913143242
+ .long 3589569869
+ .long 88768265
+ .long 2774945552
+ .long 930100952
+ .long 1491793838
+ .long 3826286484
+ .long 2884172442
+ .long 177536531
+ .long 1254923809
+ .long 1860201905
+ .long 2983587677
+ .long 3357605672
+ .long 1473377588
+ .long 355073063
+ .long 2509847619
+ .long 3720403810
+ .long 1672208059
+ .long 2420244049
+ .long 2946755177
+ .long 710146126
+ .long 724727943
+ .long 3145840325
+ .long 3344416119
+ .long 545520802
+ .long 1598543059
+ .long 1420292253
+ .long 1449455886
+ .long 1996713354
+ .long 2393864943
+ .long 1091041605
+ .long 3197086118
+ .long 2840584506
+ .long 2898911772
+ .long 3993426708
+ .long 492762590
+ .long 2182083211
+ .long 2099204941
+ .long 1386201717
+ .long 1502856249
+ .long 3691886121
+ .long 985525180
+ .long 69199126
+ .long 4198409883
+ .long 2772403434
+ .long 3005712498
+ .long 3088804946
+ .long 1971050360
+ .long 138398252
+ .long 4101852471
+ .long 1249839573
+ .long 1716457700
+ .long 1882642597
+ .long 3942100721
+ .long 276796504
+ .long 3908737646
+ .long 2499679147
+ .long 3432915400
+ .long 3765285194
+ .long 3589234146
+ .long 553593009
+ .long 3522507997
+ .long 704390999
+ .long 2570863504
+ .long 3235603093
+ .long 2883500997
+ .long 1107186019
+ .long 2750048699
+ .long 1408781999
+ .long 846759712
+ .long 2176238891
+ .long 1472034698
+ .long 2214372039
+ .long 1205130103
+ .long 2817563999
+ .long 1693519425
+ .long 57510486
+ .long 2944069397
+ .long 133776782
+ .long 2410260206
+ .long 1340160702
+ .long 3387038850
+ .long 115020972
+ .long 1593171499
+ .long 267553565
+ .long 525553116
+ .long 2680321405
+ .long 2479110404
+ .long 230041945
+ .long 3186342998
+ .long 535107130
+ .long 1051106232
+ .long 1065675514
+ .long 663253512
+ .long 460083891
+ .long 2077718700
+ .long 1070214261
+ .long 2102212464
+ .long 2131351028
+ .long 1326507024
+ .long 920167782
+ .long 4155437400
+ .long 2140428522
+ .long 4204424928
+ .long 4262702056
+ .long 2653014048
+ .long 1840335564
+ .long 4015907504
+ .long 4280857045
+ .long 4113882560
+ .long 4230436817
+ .long 1011060801
+ .long 3680671129
+ .long 3736847713
+ .long 4266746795
+ .long 3932797825
+ .long 4165906339
+ .long 2022121603
+ .long 3066374962
+ .long 3178728131
+ .long 4238526295
+ .long 3570628355
+ .long 4036845383
+ .long 4044243207
+ .long 1837782628
+ .long 2062488966
+ .long 4182085295
+ .long 2846289414
+ .long 3778723471
+ .long 3793519119
+ .long 3675565257
+ .long 4124977933
+ .long 4069203294
+ .long 1397611533
+ .long 3262479647
+ .long 3292070943
+ .long 3056163219
+ .long 3954988571
+ .long 3843439293
+ .long 2795223067
+ .long 2229991998
+ .long 2289174591
+ .long 1817359143
+ .long 3615009846
+ .long 3391911291
+ .long 1295478838
+ .long 165016701
+ .long 283381887
+ .long 3634718287
+ .long 2935052397
+ .long 2488855287
+ .long 2590957677
+ .long 330033402
+ .long 566763775
+ .long 2974469278
+ .long 1575137499
+ .long 682743279
+ .long 886948059
+ .long 660066805
+ .long 1133527550
+ .long 1653971260
+ .long 3150274999
+ .long 1365486558
+ .long 1773896118
+ .long 1320133610
+ .long 2267055100
+ .long 3307942520
+ .long 2005582702
+ .long 2730973117
+ .long 3547792237
+ .long 2640267220
+ .long 239142905
+ .long 2320917745
+ .long 4011165404
+ .long 1166978938
+ .long 2800617179
+ .long 985567145
+ .long 478285810
+ .long 346868194
+ .long 3727363513
+ .long 2333957877
+ .long 1306267062
+ .long 1971134291
+ .long 956571621
+ .long 693736388
+ .long 3159759730
+ .long 372948459
+ .long 2612534124
+ .long 3942268582
+ .long 1913143242
+ .long 1387472776
+ .long 2024552164
+ .long 745896919
+ .long 930100952
+ .long 3589569869
+ .long 3826286484
+ .long 2774945552
+ .long 4049104329
+ .long 1491793838
+ .long 1860201905
+ .long 2884172442
+ .long 3357605672
+ .long 1254923809
+ .long 3803241362
+ .long 2983587677
+ .long 3720403810
+ .long 1473377588
+ .long 2420244049
+ .long 2509847619
+ .long 3311515428
+ .long 1672208059
+ .long 3145840325
+ .long 2946755177
+ .long 545520802
+ .long 724727943
+ .long 2328063560
+ .long 3344416119
+ .long 1996713354
+ .long 1598543059
+ .long 1091041605
+ .long 1449455886
+ .long 361159825
+ .long 2393864943
+ .long 3993426708
+ .long 3197086118
+ .long 2182083211
+ .long 2898911772
+ .long 722319651
+ .long 492762590
+ .long 3691886121
+ .long 2099204941
+ .long 69199126
+ .long 1502856249
+ .long 1444639302
+ .long 985525180
+ .long 3088804946
+ .long 4198409883
+ .long 138398252
+ .long 3005712498
+ .long 2889278605
+ .long 1971050360
+ .long 1882642597
+ .long 4101852471
+ .long 276796504
+ .long 1716457700
+ .long 1483589915
+ .long 3942100721
+ .long 3765285194
+ .long 3908737646
+ .long 553593009
+ .long 3432915400
+ .long 2967179831
+ .long 3589234146
+ .long 3235603093
+ .long 3522507997
+ .long 1107186019
+ .long 2570863504
+ .long 1639392366
+ .long 2883500997
+ .long 2176238891
+ .long 2750048699
+ .long 2214372039
+ .long 846759712
+ .long 3278784732
+ .long 1472034698
+ .long 57510486
+ .long 1205130103
+ .long 133776782
+ .long 1693519425
+ .long 2262602168
+ .long 2944069397
+ .long 115020972
+ .long 2410260206
+ .long 267553565
+ .long 3387038850
+ .long 230237041
+ .long 1593171499
+ .long 230041945
+ .long 525553116
+ .long 535107130
+ .long 2479110404
+ .long 460474083
+ .long 3186342998
+ .long 460083891
+ .long 1051106232
+ .long 1070214261
+ .long 663253512
+ .long 920948167
+ .long 2077718700
+ .long 920167782
+ .long 2102212464
+ .long 2140428522
+ .long 1326507024
+ .long 1841896334
+ .long 4155437400
+ .long 1840335564
+ .long 4204424928
+ .long 4280857045
+ .long 2653014048
+ .long 3683792669
+ .long 4015907504
+ .long 3680671129
+ .long 4113882560
+ .long 4266746795
+ .long 1011060801
+ .long 3072618042
+ .long 3736847713
+ .long 3066374962
+ .long 3932797825
+ .long 4238526295
+ .long 2022121603
+ .long 1850268788
+ .long 3178728131
+ .long 1837782628
+ .long 3570628355
+ .long 4182085295
+ .long 4044243207
+ .long 3700537577
+ .long 2062488966
+ .long 3675565257
+ .long 2846289414
+ .long 4069203294
+ .long 3793519119
+ .long 3106107858
+ .long 4124977933
+ .long 3056163219
+ .long 1397611533
+ .long 3843439293
+ .long 3292070943
+ .long 1917248420
+ .long 3954988571
+ .long 1817359143
+ .long 2795223067
+ .long 3391911291
+ .long 2289174591
+ .long 3834496840
+ .long 3615009846
+ .long 3634718287
+ .long 1295478838
+ .long 2488855287
+ .long 283381887
+ .long 3374026384
+ .long 2935052397
+ .long 2974469278
+ .long 2590957677
+ .long 682743279
+ .long 566763775
+ .long 2453085473
+ .long 1575137499
+ .long 1653971260
+ .long 886948059
+ .long 1365486558
+ .long 1133527550
+ .long 611203650
+ .long 3150274999
+ .long 3307942520
+ .long 1773896118
+ .long 2730973117
+ .long 2267055100
+ .long 1222407300
+ .long 2005582702
+ .long 2320917745
+ .long 3547792237
+ .long 1166978938
+ .long 239142905
+ .long 2444814601
+ .long 4011165404
+ .long 346868194
+ .long 2800617179
+ .long 2333957877
+ .long 478285810
+ .long 594661906
+ .long 3727363513
+ .long 693736388
+ .long 1306267062
+ .long 372948459
+ .long 956571621
+ .long 1189323812
+ .long 3159759730
+ .long 1387472776
+ .long 2612534124
+ .long 745896919
+ .long 1913143242
+ .long 2378647625
+ .long 2024552164
+ .long 2774945552
+ .long 930100952
+ .long 1491793838
+ .long 3826286484
+ .long 462327955
+ .long 4049104329
+ .long 1254923809
+ .long 1860201905
+ .long 2983587677
+ .long 3357605672
+ .long 924655910
+ .long 3803241362
+ .long 2509847619
+ .long 3720403810
+ .long 1672208059
+ .long 2420244049
+ .long 1849311821
+ .long 3311515428
+ .long 724727943
+ .long 3145840325
+ .long 3344416119
+ .long 545520802
+ .long 3698623643
+ .long 2328063560
+ .long 1449455886
+ .long 1996713354
+ .long 2393864943
+ .long 1091041605
+ .long 3102279991
+ .long 361159825
+ .long 2898911772
+ .long 3993426708
+ .long 492762590
+ .long 2182083211
+ .long 1909592686
+ .long 722319651
+ .long 1502856249
+ .long 3691886121
+ .long 985525180
+ .long 69199126
+ .long 3819185373
+ .long 1444639302
+ .long 3005712498
+ .long 3088804946
+ .long 1971050360
+ .long 138398252
+ .long 3343403450
+ .long 2889278605
+ .long 1716457700
+ .long 1882642597
+ .long 3942100721
+ .long 276796504
+ .long 2391839604
+ .long 1483589915
+ .long 3432915400
+ .long 3765285194
+ .long 3589234146
+ .long 553593009
+ .long 488711913
+ .long 2967179831
+ .long 2570863504
+ .long 3235603093
+ .long 2883500997
+ .long 1107186019
+ .long 977423826
+ .long 1639392366
+ .long 846759712
+ .long 2176238891
+ .long 1472034698
+ .long 2214372039
+ .long 1954847653
+ .long 3278784732
+ .long 1693519425
+ .long 57510486
+ .long 2944069397
+ .long 133776782
+ .long 3909695307
+ .long 2262602168
+ .long 3387038850
+ .long 115020972
+ .long 1593171499
+ .long 267553565
+ .long 3524423319
+ .long 230237041
+ .long 2479110404
+ .long 230041945
+ .long 3186342998
+ .long 535107130
+ .long 2753879342
+ .long 460474083
+ .long 663253512
+ .long 460083891
+ .long 2077718700
+ .long 1070214261
+ .long 1212791388
+ .long 920948167
+ .long 1326507024
+ .long 920167782
+ .long 4155437400
+ .long 2140428522
+ .long 2425582776
+ .long 1841896334
+ .long 2653014048
+ .long 1840335564
+ .long 4015907504
+ .long 4280857045
+ .long 556198256
+ .long 3683792669
+ .long 1011060801
+ .long 3680671129
+ .long 3736847713
+ .long 4266746795
+ .long 1112396512
+ .long 3072618042
+ .long 2022121603
+ .long 3066374962
+ .long 3178728131
+ .long 4238526295
+ .long 2224793024
+ .long 1850268788
+ .long 4044243207
+ .long 1837782628
+ .long 2062488966
+ .long 4182085295
+ .long 154618752
+ .long 3700537577
+ .long 3793519119
+ .long 3675565257
+ .long 4124977933
+ .long 4069203294
+ .long 309237504
+ .long 3106107858
+ .long 3292070943
+ .long 3056163219
+ .long 3954988571
+ .long 3843439293
+ .long 618475008
+ .long 1917248420
+ .long 2289174591
+ .long 1817359143
+ .long 3615009846
+ .long 3391911291
+ .long 1236950016
+ .long 3834496840
+ .long 283381887
+ .long 3634718287
+ .long 2935052397
+ .long 2488855287
+ .long 2473900033
+ .long 3374026384
+ .long 566763775
+ .long 2974469278
+ .long 1575137499
+ .long 682743279
+ .long 652832771
+ .long 2453085473
+ .long 1133527550
+ .long 1653971260
+ .long 3150274999
+ .long 1365486558
+ .long 1305665542
+ .long 611203650
+ .long 2267055100
+ .long 3307942520
+ .long 2005582702
+ .long 2730973117
+ .long 2611331084
+ .long 1222407300
+ .long 239142905
+ .long 2320917745
+ .long 4011165404
+ .long 1166978938
+ .long 927694873
+ .long 2444814601
+ .long 478285810
+ .long 346868194
+ .long 3727363513
+ .long 2333957877
+ .long 1855389746
+ .long 594661906
+ .long 956571621
+ .long 693736388
+ .long 3159759730
+ .long 372948459
+ .long 3710779492
+ .long 1189323812
+ .long 1913143242
+ .long 1387472776
+ .long 2024552164
+ .long 745896919
+ .long 3126591689
+ .long 2378647625
+ .long 3826286484
+ .long 2774945552
+ .long 4049104329
+ .long 1491793838
+ .long 1958216082
+ .long 462327955
+ .long 3357605672
+ .long 1254923809
+ .long 3803241362
+ .long 2983587677
+ .long 3916432164
+ .long 924655910
+ .long 2420244049
+ .long 2509847619
+ .long 3311515428
+ .long 1672208059
+ .long 3537897033
+ .long 1849311821
+ .long 545520802
+ .long 724727943
+ .long 2328063560
+ .long 3344416119
+ .long 2780826770
+ .long 3698623643
+ .long 1091041605
+ .long 1449455886
+ .long 361159825
+ .long 2393864943
+ .long 1266686244
+ .long 3102279991
+ .long 2182083211
+ .long 2898911772
+ .long 722319651
+ .long 492762590
+ .long 2533372489
+ .long 1909592686
+ .long 69199126
+ .long 1502856249
+ .long 1444639302
+ .long 985525180
+ .long 771777682
+ .long 3819185373
+ .long 138398252
+ .long 3005712498
+ .long 2889278605
+ .long 1971050360
+ .long 1543555365
+ .long 3343403450
+ .long 276796504
+ .long 1716457700
+ .long 1483589915
+ .long 3942100721
+ .long 3087110731
+ .long 2391839604
+ .long 553593009
+ .long 3432915400
+ .long 2967179831
+ .long 3589234146
+ .long 1879254167
+ .long 488711913
+ .long 1107186019
+ .long 2570863504
+ .long 1639392366
+ .long 2883500997
+ .long 3758508334
+ .long 977423826
+ .long 2214372039
+ .long 846759712
+ .long 3278784732
+ .long 1472034698
+ .long 3222049373
+ .long 1954847653
+ .long 133776782
+ .long 1693519425
+ .long 2262602168
+ .long 2944069397
+ .long 2149131451
+ .long 3909695307
+ .long 267553565
+ .long 3387038850
+ .long 230237041
+ .long 1593171499
+ .long 3295607
+ .long 3524423319
+ .long 535107130
+ .long 2479110404
+ .long 460474083
+ .long 3186342998
+ .long 6591214
+ .long 2753879342
+ .long 1070214261
+ .long 663253512
+ .long 920948167
+ .long 2077718700
+ .long 13182429
+ .long 1212791388
+ .long 2140428522
+ .long 1326507024
+ .long 1841896334
+ .long 4155437400
+ .long 26364858
+ .long 2425582776
+ .long 4280857045
+ .long 2653014048
+ .long 3683792669
+ .long 4015907504
+ .long 52729717
+ .long 556198256
+ .long 4266746795
+ .long 1011060801
+ .long 3072618042
+ .long 3736847713
+ .long 105459434
+ .long 1112396512
+ .long 4238526295
+ .long 2022121603
+ .long 1850268788
+ .long 3178728131
+ .long 210918868
+ .long 2224793024
+ .long 4182085295
+ .long 4044243207
+ .long 3700537577
+ .long 2062488966
+ .long 421837736
+ .long 154618752
+ .long 4069203294
+ .long 3793519119
+ .long 3106107858
+ .long 4124977933
+ .long 843675472
+ .long 309237504
+ .long 3843439293
+ .long 3292070943
+ .long 1917248420
+ .long 3954988571
+ .long 1687350944
+ .long 618475008
+ .long 3391911291
+ .long 2289174591
+ .long 3834496840
+ .long 3615009846
+ .long 3374701889
+ .long 1236950016
+ .long 2488855287
+ .long 283381887
+ .long 3374026384
+ .long 2935052397
+ .long 2454436482
+ .long 2473900033
+ .long 682743279
+ .long 566763775
+ .long 2453085473
+ .long 1575137499
+ .long 613905668
+ .long 652832771
+ .long 1365486558
+ .long 1133527550
+ .long 611203650
+ .long 3150274999
+ .long 1227811337
+ .long 1305665542
+ .long 2730973117
+ .long 2267055100
+ .long 1222407300
+ .long 2005582702
+ .long 2455622675
+ .long 2611331084
+ .long 1166978938
+ .long 239142905
+ .long 2444814601
+ .long 4011165404
+ .long 616278055
+ .long 927694873
+ .long 2333957877
+ .long 478285810
+ .long 594661906
+ .long 3727363513
+ .long 1232556110
+ .long 1855389746
+ .long 372948459
+ .long 956571621
+ .long 1189323812
+ .long 3159759730
+ .long 2465112221
+ .long 3710779492
+ .long 745896919
+ .long 1913143242
+ .long 2378647625
+ .long 2024552164
+ .long 635257146
+ .long 3126591689
+ .long 1491793838
+ .long 3826286484
+ .long 462327955
+ .long 4049104329
+ .long 1270514292
+ .long 1958216082
+ .long 2983587677
+ .long 3357605672
+ .long 924655910
+ .long 3803241362
+ .long 2541028584
+ .long 3916432164
+ .long 1672208059
+ .long 2420244049
+ .long 1849311821
+ .long 3311515428
+ .long 787089873
+ .long 3537897033
+ .long 3344416119
+ .long 545520802
+ .long 3698623643
+ .long 2328063560
+ .long 1574179747
+ .long 2780826770
+ .long 2393864943
+ .long 1091041605
+ .long 3102279991
+ .long 361159825
+ .long 3148359494
+ .long 1266686244
+ .long 492762590
+ .long 2182083211
+ .long 1909592686
+ .long 722319651
+ .long 2001751692
+ .long 2533372489
+ .long 985525180
+ .long 69199126
+ .long 3819185373
+ .long 1444639302
+ .long 4003503385
+ .long 771777682
+ .long 1971050360
+ .long 138398252
+ .long 3343403450
+ .long 2889278605
+ .long 3712039474
+ .long 1543555365
+ .long 3942100721
+ .long 276796504
+ .long 2391839604
+ .long 1483589915
+ .long 3129111652
+ .long 3087110731
+ .long 3589234146
+ .long 553593009
+ .long 488711913
+ .long 2967179831
+ .long 1963256009
+ .long 1879254167
+ .long 2883500997
+ .long 1107186019
+ .long 977423826
+ .long 1639392366
+ .long 3926512018
+ .long 3758508334
+ .long 1472034698
+ .long 2214372039
+ .long 1954847653
+ .long 3278784732
+ .long 3558056740
+ .long 3222049373
+ .long 2944069397
+ .long 133776782
+ .long 3909695307
+ .long 2262602168
+ .long 2821146184
+ .long 2149131451
+ .long 1593171499
+ .long 267553565
+ .long 3524423319
+ .long 230237041
+ .long 1347325072
+ .long 3295607
+ .long 3186342998
+ .long 535107130
+ .long 2753879342
+ .long 460474083
+ .long 2694650145
+ .long 6591214
+ .long 2077718700
+ .long 1070214261
+ .long 1212791388
+ .long 920948167
+ .long 1094332995
+ .long 13182429
+ .long 4155437400
+ .long 2140428522
+ .long 2425582776
+ .long 1841896334
+ .long 2188665991
+ .long 26364858
+ .long 4015907504
+ .long 4280857045
+ .long 556198256
+ .long 3683792669
+ .long 82364686
+ .long 52729717
+ .long 3736847713
+ .long 4266746795
+ .long 1112396512
+ .long 3072618042
+ .long 164729372
+ .long 105459434
+ .long 3178728131
+ .long 4238526295
+ .long 2224793024
+ .long 1850268788
+ .long 329458745
+ .long 210918868
+ .long 2062488966
+ .long 4182085295
+ .long 154618752
+ .long 3700537577
+ .long 658917491
+ .long 421837736
+ .long 4124977933
+ .long 4069203294
+ .long 309237504
+ .long 3106107858
+ .long 1317834983
+ .long 843675472
+ .long 3954988571
+ .long 3843439293
+ .long 618475008
+ .long 1917248420
+ .long 2635669967
+ .long 1687350944
+ .long 3615009846
+ .long 3391911291
+ .long 1236950016
+ .long 3834496840
+ .long 976372639
+ .long 3374701889
+ .long 2935052397
+ .long 2488855287
+ .long 2473900033
+ .long 3374026384
+ .long 1952745279
+ .long 2454436482
+ .long 1575137499
+ .long 682743279
+ .long 652832771
+ .long 2453085473
+ .long 3905490559
+ .long 613905668
+ .long 3150274999
+ .long 1365486558
+ .long 1305665542
+ .long 611203650
+ .long 3516013822
+ .long 1227811337
+ .long 2005582702
+ .long 2730973117
+ .long 2611331084
+ .long 1222407300
+ .long 2737060348
+ .long 2455622675
+ .long 4011165404
+ .long 1166978938
+ .long 927694873
+ .long 2444814601
+ .long 1179153400
+ .long 616278055
+ .long 3727363513
+ .long 2333957877
+ .long 1855389746
+ .long 594661906
+ .long 2358306800
+ .long 1232556110
+ .long 3159759730
+ .long 372948459
+ .long 3710779492
+ .long 1189323812
+ .long 421646305
+ .long 2465112221
+ .long 2024552164
+ .long 745896919
+ .long 3126591689
+ .long 2378647625
+ .long 843292611
+ .long 635257146
+ .long 4049104329
+ .long 1491793838
+ .long 1958216082
+ .long 462327955
+ .long 1686585223
+ .long 1270514292
+ .long 3803241362
+ .long 2983587677
+ .long 3916432164
+ .long 924655910
+ .long 3373170446
+ .long 2541028584
+ .long 3311515428
+ .long 1672208059
+ .long 3537897033
+ .long 1849311821
+ .long 2451373597
+ .long 787089873
+ .long 2328063560
+ .long 3344416119
+ .long 2780826770
+ .long 3698623643
+ .long 607779899
+ .long 1574179747
+ .long 361159825
+ .long 2393864943
+ .long 1266686244
+ .long 3102279991
+ .long 1215559799
+ .long 3148359494
+ .long 722319651
+ .long 492762590
+ .long 2533372489
+ .long 1909592686
+ .long 2431119599
+ .long 2001751692
+ .long 1444639302
+ .long 985525180
+ .long 771777682
+ .long 3819185373
+ .long 567271902
+ .long 4003503385
+ .long 2889278605
+ .long 1971050360
+ .long 1543555365
+ .long 3343403450
+ .long 1134543805
+ .long 3712039474
+ .long 1483589915
+ .long 3942100721
+ .long 3087110731
+ .long 2391839604
+ .long 2269087610
+ .long 3129111652
+ .long 2967179831
+ .long 3589234146
+ .long 1879254167
+ .long 488711913
+ .long 243207925
+ .long 1963256009
+ .long 1639392366
+ .long 2883500997
+ .long 3758508334
+ .long 977423826
+ .long 486415851
+ .long 3926512018
+ .long 3278784732
+ .long 1472034698
+ .long 3222049373
+ .long 1954847653
+ .long 972831702
+ .long 3558056740
+ .long 2262602168
+ .long 2944069397
+ .long 2149131451
+ .long 3909695307
+ .long 1945663404
+ .long 2821146184
+ .long 230237041
+ .long 1593171499
+ .long 3295607
+ .long 3524423319
+ .long 3891326808
+ .long 1347325072
+ .long 460474083
+ .long 3186342998
+ .long 6591214
+ .long 2753879342
+ .long 3487686321
+ .long 2694650145
+ .long 920948167
+ .long 2077718700
+ .long 13182429
+ .long 1212791388
+ .long 2680405347
+ .long 1094332995
+ .long 1841896334
+ .long 4155437400
+ .long 26364858
+ .long 2425582776
+ .long 1065843399
+ .long 2188665991
+ .long 3683792669
+ .long 4015907504
+ .long 52729717
+ .long 556198256
+ .long 2131686798
+ .long 82364686
+ .long 3072618042
+ .long 3736847713
+ .long 105459434
+ .long 1112396512
+ .long 4263373596
+ .long 164729372
+ .long 1850268788
+ .long 3178728131
+ .long 210918868
+ .long 2224793024
+ .long 4231779897
+ .long 329458745
+ .long 3700537577
+ .long 2062488966
+ .long 421837736
+ .long 154618752
+ .long 4168592498
+ .long 658917491
+ .long 3106107858
+ .long 4124977933
+ .long 843675472
+ .long 309237504
+ .long 4042217701
+ .long 1317834983
+ .long 1917248420
+ .long 3954988571
+ .long 1687350944
+ .long 618475008
+ .long 3789468107
+ .long 2635669967
+ .long 3834496840
+ .long 3615009846
+ .long 3374701889
+ .long 1236950016
+ .long 3283968918
+ .long 976372639
+ .long 3374026384
+ .long 2935052397
+ .long 2454436482
+ .long 2473900033
+ .long 2272970540
+ .long 1952745279
+ .long 2453085473
+ .long 1575137499
+ .long 613905668
+ .long 652832771
+ .long 250973784
+ .long 3905490559
+ .long 611203650
+ .long 3150274999
+ .long 1227811337
+ .long 1305665542
+ .long 501947569
+ .long 3516013822
+ .long 1222407300
+ .long 2005582702
+ .long 2455622675
+ .long 2611331084
+ .long 1003895138
+ .long 2737060348
+ .long 2444814601
+ .long 4011165404
+ .long 616278055
+ .long 927694873
+ .long 2007790276
+ .long 1179153400
+ .long 594661906
+ .long 3727363513
+ .long 1232556110
+ .long 1855389746
+ .long 4015580553
+ .long 2358306800
+ .long 1189323812
+ .long 3159759730
+ .long 2465112221
+ .long 3710779492
+ .long 3736193810
+ .long 421646305
+ .long 2378647625
+ .long 2024552164
+ .long 635257146
+ .long 3126591689
+ .long 3177420325
+ .long 843292611
+ .long 462327955
+ .long 4049104329
+ .long 1270514292
+ .long 1958216082
+ .long 2059873354
+ .long 1686585223
+ .long 924655910
+ .long 3803241362
+ .long 2541028584
+ .long 3916432164
+ .long 4119746708
+ .long 3373170446
+ .long 1849311821
+ .long 3311515428
+ .long 787089873
+ .long 3537897033
+ .long 3944526121
+ .long 2451373597
+ .long 3698623643
+ .long 2328063560
+ .long 1574179747
+ .long 2780826770
+ .long 3594084947
+ .long 607779899
+ .long 3102279991
+ .long 361159825
+ .long 3148359494
+ .long 1266686244
+ .long 2893202598
+ .long 1215559799
+ .long 1909592686
+ .long 722319651
+ .long 2001751692
+ .long 2533372489
+ .long 1491437901
+ .long 2431119599
+ .long 3819185373
+ .long 1444639302
+ .long 4003503385
+ .long 771777682
+ .long 2982875802
+ .long 567271902
+ .long 3343403450
+ .long 2889278605
+ .long 3712039474
+ .long 1543555365
+ .long 1670784308
+ .long 1134543805
+ .long 2391839604
+ .long 1483589915
+ .long 3129111652
+ .long 3087110731
+ .long 3341568617
+ .long 2269087610
+ .long 488711913
+ .long 2967179831
+ .long 1963256009
+ .long 1879254167
+ .long 2388169939
+ .long 243207925
+ .long 977423826
+ .long 1639392366
+ .long 3926512018
+ .long 3758508334
+ .long 481372583
+ .long 486415851
+ .long 1954847653
+ .long 3278784732
+ .long 3558056740
+ .long 3222049373
+ .long 962745166
+ .long 972831702
+ .long 3909695307
+ .long 2262602168
+ .long 2821146184
+ .long 2149131451
+ .long 1925490332
+ .long 1945663404
+ .long 3524423319
+ .long 230237041
+ .long 1347325072
+ .long 3295607
+ .long 3850980665
+ .long 3891326808
+ .long 2753879342
+ .long 460474083
+ .long 2694650145
+ .long 6591214
+ .long 3406994035
+ .long 3487686321
+ .long 1212791388
+ .long 920948167
+ .long 1094332995
+ .long 13182429
+ .long 2519020775
+ .long 2680405347
+ .long 2425582776
+ .long 1841896334
+ .long 2188665991
+ .long 26364858
+ .long 743074255
+ .long 1065843399
+ .long 556198256
+ .long 3683792669
+ .long 82364686
+ .long 52729717
+ .long 1486148511
+ .long 2131686798
+ .long 1112396512
+ .long 3072618042
+ .long 164729372
+ .long 105459434
+ .long 2972297022
+ .long 4263373596
+ .long 2224793024
+ .long 1850268788
+ .long 329458745
+ .long 210918868
+ .long 1649626749
+ .long 4231779897
+ .long 154618752
+ .long 3700537577
+ .long 658917491
+ .long 421837736
+ .long 3299253499
+ .long 4168592498
+ .long 309237504
+ .long 3106107858
+ .long 1317834983
+ .long 843675472
+ .long 2303539703
+ .long 4042217701
+ .long 618475008
+ .long 1917248420
+ .long 2635669967
+ .long 1687350944
+ .long 312112110
+ .long 3789468107
+ .long 1236950016
+ .long 3834496840
+ .long 976372639
+ .long 3374701889
+ .long 624224221
+ .long 3283968918
+ .long 2473900033
+ .long 3374026384
+ .long 1952745279
+ .long 2454436482
+ .long 1248448442
+ .long 2272970540
+ .long 652832771
+ .long 2453085473
+ .long 3905490559
+ .long 613905668
+ .long 2496896884
+ .long 250973784
+ .long 1305665542
+ .long 611203650
+ .long 3516013822
+ .long 1227811337
+ .long 698826472
+ .long 501947569
+ .long 2611331084
+ .long 1222407300
+ .long 2737060348
+ .long 2455622675
+ .long 1397652945
+ .long 1003895138
+ .long 927694873
+ .long 2444814601
+ .long 1179153400
+ .long 616278055
+ .long 2795305890
+ .long 2007790276
+ .long 1855389746
+ .long 594661906
+ .long 2358306800
+ .long 1232556110
+ .long 1295644484
+ .long 4015580553
+ .long 3710779492
+ .long 1189323812
+ .long 421646305
+ .long 2465112221
+ .long 2591288968
+ .long 3736193810
+ .long 3126591689
+ .long 2378647625
+ .long 843292611
+ .long 635257146
+ .long 887610640
+ .long 3177420325
+ .long 1958216082
+ .long 462327955
+ .long 1686585223
+ .long 1270514292
+ .long 1775221280
+ .long 2059873354
+ .long 3916432164
+ .long 924655910
+ .long 3373170446
+ .long 2541028584
+ .long 3550442561
+ .long 4119746708
+ .long 3537897033
+ .long 1849311821
+ .long 2451373597
+ .long 787089873
+ .long 2805917826
+ .long 3944526121
+ .long 2780826770
+ .long 3698623643
+ .long 607779899
+ .long 1574179747
+ .long 1316868356
+ .long 3594084947
+ .long 1266686244
+ .long 3102279991
+ .long 1215559799
+ .long 3148359494
+ .long 2633736712
+ .long 2893202598
+ .long 2533372489
+ .long 1909592686
+ .long 2431119599
+ .long 2001751692
+ .long 972506129
+ .long 1491437901
+ .long 771777682
+ .long 3819185373
+ .long 567271902
+ .long 4003503385
+ .long 1945012259
+ .long 2982875802
+ .long 1543555365
+ .long 3343403450
+ .long 1134543805
+ .long 3712039474
+ .long 3890024518
+ .long 1670784308
+ .long 3087110731
+ .long 2391839604
+ .long 2269087610
+ .long 3129111652
+ .long 3485081741
+ .long 3341568617
+ .long 1879254167
+ .long 488711913
+ .long 243207925
+ .long 1963256009
+ .long 2675196186
+ .long 2388169939
+ .long 3758508334
+ .long 977423826
+ .long 486415851
+ .long 3926512018
+ .long 1055425077
+ .long 481372583
+ .long 3222049373
+ .long 1954847653
+ .long 972831702
+ .long 3558056740
+ .long 2110850155
+ .long 962745166
+ .long 2149131451
+ .long 3909695307
+ .long 1945663404
+ .long 2821146184
+ .long 4221700311
+ .long 1925490332
+ .long 3295607
+ .long 3524423319
+ .long 3891326808
+ .long 1347325072
+ .long 4148433327
+ .long 3850980665
+ .long 6591214
+ .long 2753879342
+ .long 3487686321
+ .long 2694650145
+ .long 4001899359
+ .long 3406994035
+ .long 13182429
+ .long 1212791388
+ .long 2680405347
+ .long 1094332995
+ .long 3708831422
+ .long 2519020775
+ .long 26364858
+ .long 2425582776
+ .long 1065843399
+ .long 2188665991
+ .long 3122695549
+ .long 743074255
+ .long 52729717
+ .long 556198256
+ .long 2131686798
+ .long 82364686
+ .long 1950423802
+ .long 1486148511
+ .long 105459434
+ .long 1112396512
+ .long 4263373596
+ .long 164729372
+ .long 3900847605
+ .long 2972297022
+ .long 210918868
+ .long 2224793024
+ .long 4231779897
+ .long 329458745
+ .long 3506727914
+ .long 1649626749
+ .long 421837736
+ .long 154618752
+ .long 4168592498
+ .long 658917491
+ .long 2718488532
+ .long 3299253499
+ .long 843675472
+ .long 309237504
+ .long 4042217701
+ .long 1317834983
+ .long 1142009769
+ .long 2303539703
+ .long 1687350944
+ .long 618475008
+ .long 3789468107
+ .long 2635669967
+ .long 2284019538
+ .long 312112110
+ .long 3374701889
+ .long 1236950016
+ .long 3283968918
+ .long 976372639
+ .long 273071781
+ .long 624224221
+ .long 2454436482
+ .long 2473900033
+ .long 2272970540
+ .long 1952745279
+ .long 546143563
+ .long 1248448442
+ .long 613905668
+ .long 652832771
+ .long 250973784
+ .long 3905490559
+ .long 1092287127
+ .long 2496896884
+ .long 1227811337
+ .long 1305665542
+ .long 501947569
+ .long 3516013822
+ .long 2184574254
+ .long 698826472
+ .long 2455622675
+ .long 2611331084
+ .long 1003895138
+ .long 2737060348
+ .long 74181213
+ .long 1397652945
+ .long 616278055
+ .long 927694873
+ .long 2007790276
+ .long 1179153400
+ .long 148362426
+ .long 2795305890
+ .long 1232556110
+ .long 1855389746
+ .long 4015580553
+ .long 2358306800
+ .long 296724853
+ .long 1295644484
+ .long 2465112221
+ .long 3710779492
+ .long 3736193810
+ .long 421646305
+ .long 593449707
+ .long 2591288968
+ .long 635257146
+ .long 3126591689
+ .long 3177420325
+ .long 843292611
+ .long 1186899415
+ .long 887610640
+ .long 1270514292
+ .long 1958216082
+ .long 2059873354
+ .long 1686585223
+ .long 2373798830
+ .long 1775221280
+ .long 2541028584
+ .long 3916432164
+ .long 4119746708
+ .long 3373170446
+ .long 452630365
+ .long 3550442561
+ .long 787089873
+ .long 3537897033
+ .long 3944526121
+ .long 2451373597
+ .long 905260731
+ .long 2805917826
+ .long 1574179747
+ .long 2780826770
+ .long 3594084947
+ .long 607779899
+ .long 1810521462
+ .long 1316868356
+ .long 3148359494
+ .long 1266686244
+ .long 2893202598
+ .long 1215559799
+ .long 3621042925
+ .long 2633736712
+ .long 2001751692
+ .long 2533372489
+ .long 1491437901
+ .long 2431119599
+ .long 2947118554
+ .long 972506129
+ .long 4003503385
+ .long 771777682
+ .long 2982875802
+ .long 567271902
+ .long 1599269812
+ .long 1945012259
+ .long 3712039474
+ .long 1543555365
+ .long 1670784308
+ .long 1134543805
+ .long 3198539624
+ .long 3890024518
+ .long 3129111652
+ .long 3087110731
+ .long 3341568617
+ .long 2269087610
+ .long 2102111953
+ .long 3485081741
+ .long 1963256009
+ .long 1879254167
+ .long 2388169939
+ .long 243207925
+ .long 4204223906
+ .long 2675196186
+ .long 3926512018
+ .long 3758508334
+ .long 481372583
+ .long 486415851
+ .long 4113480516
+ .long 1055425077
+ .long 3558056740
+ .long 3222049373
+ .long 962745166
+ .long 972831702
+ .long 3931993737
+ .long 2110850155
+ .long 2821146184
+ .long 2149131451
+ .long 1925490332
+ .long 1945663404
+ .long 3569020178
+ .long 4221700311
+ .long 1347325072
+ .long 3295607
+ .long 3850980665
+ .long 3891326808
+ .long 2843073060
+ .long 4148433327
+ .long 2694650145
+ .long 6591214
+ .long 3406994035
+ .long 3487686321
+ .long 1391178824
+ .long 4001899359
+ .long 1094332995
+ .long 13182429
+ .long 2519020775
+ .long 2680405347
+ .long 2782357648
+ .long 3708831422
+ .long 2188665991
+ .long 26364858
+ .long 743074255
+ .long 1065843399
+ .long 1269748001
+ .long 3122695549
+ .long 82364686
+ .long 52729717
+ .long 1486148511
+ .long 2131686798
+ .long 2539496002
+ .long 1950423802
+ .long 164729372
+ .long 105459434
+ .long 2972297022
+ .long 4263373596
+ .long 784024708
+ .long 3900847605
+ .long 329458745
+ .long 210918868
+ .long 1649626749
+ .long 4231779897
+ .long 1568049417
+ .long 3506727914
+ .long 658917491
+ .long 421837736
+ .long 3299253499
+ .long 4168592498
+ .long 3136098835
+ .long 2718488532
+ .long 1317834983
+ .long 843675472
+ .long 2303539703
+ .long 4042217701
+ .long 1977230375
+ .long 1142009769
+ .long 2635669967
+ .long 1687350944
+ .long 312112110
+ .long 3789468107
+ .long 3954460750
+ .long 2284019538
+ .long 976372639
+ .long 3374701889
+ .long 624224221
+ .long 3283968918
+ .long 3613954205
+ .long 273071781
+ .long 1952745279
+ .long 2454436482
+ .long 1248448442
+ .long 2272970540
+ .long 2932941114
+ .long 546143563
+ .long 3905490559
+ .long 613905668
+ .long 2496896884
+ .long 250973784
+ .long 1570914932
+ .long 1092287127
+ .long 3516013822
+ .long 1227811337
+ .long 698826472
+ .long 501947569
+ .long 3141829865
+ .long 2184574254
+ .long 2737060348
+ .long 2455622675
+ .long 1397652945
+ .long 1003895138
+ .long 1988692435
+ .long 74181213
+ .long 1179153400
+ .long 616278055
+ .long 2795305890
+ .long 2007790276
+ .long 3977384870
+ .long 148362426
+ .long 2358306800
+ .long 1232556110
+ .long 1295644484
+ .long 4015580553
+ .long 3659802444
+ .long 296724853
+ .long 421646305
+ .long 2465112221
+ .long 2591288968
+ .long 3736193810
+ .long 3024637593
+ .long 593449707
+ .long 843292611
+ .long 635257146
+ .long 887610640
+ .long 3177420325
+ .long 1754307891
+ .long 1186899415
+ .long 1686585223
+ .long 1270514292
+ .long 1775221280
+ .long 2059873354
+ .long 3508615783
+ .long 2373798830
+ .long 3373170446
+ .long 2541028584
+ .long 3550442561
+ .long 4119746708
+ .long 2722264270
+ .long 452630365
+ .long 2451373597
+ .long 787089873
+ .long 2805917826
+ .long 3944526121
+ .long 1149561244
+ .long 905260731
+ .long 607779899
+ .long 1574179747
+ .long 1316868356
+ .long 3594084947
+ .long 2299122488
+ .long 1810521462
+ .long 1215559799
+ .long 3148359494
+ .long 2633736712
+ .long 2893202598
+ .long 303277681
+ .long 3621042925
+ .long 2431119599
+ .long 2001751692
+ .long 972506129
+ .long 1491437901
+ .long 606555363
+ .long 2947118554
+ .long 567271902
+ .long 4003503385
+ .long 1945012259
+ .long 2982875802
+ .long 1213110727
+ .long 1599269812
+ .long 1134543805
+ .long 3712039474
+ .long 3890024518
+ .long 1670784308
+ .long 2426221454
+ .long 3198539624
+ .long 2269087610
+ .long 3129111652
+ .long 3485081741
+ .long 3341568617
+ .long 557475612
+ .long 2102111953
+ .long 243207925
+ .long 1963256009
+ .long 2675196186
+ .long 2388169939
+ .long 1114951224
+ .long 4204223906
+ .long 486415851
+ .long 3926512018
+ .long 1055425077
+ .long 481372583
+ .long 2229902448
+ .long 4113480516
+ .long 972831702
+ .long 3558056740
+ .long 2110850155
+ .long 962745166
+ .long 164837600
+ .long 3931993737
+ .long 1945663404
+ .long 2821146184
+ .long 4221700311
+ .long 1925490332
+ .long 329675200
+ .long 3569020178
+ .long 3891326808
+ .long 1347325072
+ .long 4148433327
+ .long 3850980665
+ .long 659350401
+ .long 2843073060
+ .long 3487686321
+ .long 2694650145
+ .long 4001899359
+ .long 3406994035
+ .long 1318700802
+ .long 1391178824
+ .long 2680405347
+ .long 1094332995
+ .long 3708831422
+ .long 2519020775
+ .long 2637401604
+ .long 2782357648
+ .long 1065843399
+ .long 2188665991
+ .long 3122695549
+ .long 743074255
+ .long 979835913
+ .long 1269748001
+ .long 2131686798
+ .long 82364686
+ .long 1950423802
+ .long 1486148511
+ .long 1959671827
+ .long 2539496002
+ .long 4263373596
+ .long 164729372
+ .long 3900847605
+ .long 2972297022
+ .long 3919343654
+ .long 784024708
+ .long 4231779897
+ .long 329458745
+ .long 3506727914
+ .long 1649626749
+ .long 3543720013
+ .long 1568049417
+ .long 4168592498
+ .long 658917491
+ .long 2718488532
+ .long 3299253499
+ .long 2792472730
+ .long 3136098835
+ .long 4042217701
+ .long 1317834983
+ .long 1142009769
+ .long 2303539703
+ .long 1289978165
+ .long 1977230375
+ .long 3789468107
+ .long 2635669967
+ .long 2284019538
+ .long 312112110
+ .long 2579956331
+ .long 3954460750
+ .long 3283968918
+ .long 976372639
+ .long 273071781
+ .long 624224221
+ .long 864945366
+ .long 3613954205
+ .long 2272970540
+ .long 1952745279
+ .long 546143563
+ .long 1248448442
+ .long 1729890733
+ .long 2932941114
+ .long 250973784
+ .long 3905490559
+ .long 1092287127
+ .long 2496896884
+ .long 3459781466
+ .long 1570914932
+ .long 501947569
+ .long 3516013822
+ .long 2184574254
+ .long 698826472
+ .long 2624595636
+ .long 3141829865
+ .long 1003895138
+ .long 2737060348
+ .long 74181213
+ .long 1397652945
+ .long 954223976
+ .long 1988692435
+ .long 2007790276
+ .long 1179153400
+ .long 148362426
+ .long 2795305890
+ .long 1908447953
+ .long 3977384870
+ .long 4015580553
+ .long 2358306800
+ .long 296724853
+ .long 1295644484
+ .long 3816895906
+ .long 3659802444
+ .long 3736193810
+ .long 421646305
+ .long 593449707
+ .long 2591288968
+ .long 3338824517
+ .long 3024637593
+ .long 3177420325
+ .long 843292611
+ .long 1186899415
+ .long 887610640
+ .long 2382681739
+ .long 1754307891
+ .long 2059873354
+ .long 1686585223
+ .long 2373798830
+ .long 1775221280
+ .long 470396183
+ .long 3508615783
+ .long 4119746708
+ .long 3373170446
+ .long 452630365
+ .long 3550442561
+ .long 940792367
+ .long 2722264270
+ .long 3944526121
+ .long 2451373597
+ .long 905260731
+ .long 2805917826
+ .long 1881584735
+ .long 1149561244
+ .long 3594084947
+ .long 607779899
+ .long 1810521462
+ .long 1316868356
+ .long 3763169470
+ .long 2299122488
+ .long 2893202598
+ .long 1215559799
+ .long 3621042925
+ .long 2633736712
+ .long 3231371645
+ .long 303277681
+ .long 1491437901
+ .long 2431119599
+ .long 2947118554
+ .long 972506129
+ .long 2167775995
+ .long 606555363
+ .long 2982875802
+ .long 567271902
+ .long 1599269812
+ .long 1945012259
+ .long 40584695
+ .long 1213110727
+ .long 1670784308
+ .long 1134543805
+ .long 3198539624
+ .long 3890024518
+ .long 81169391
+ .long 2426221454
+ .long 3341568617
+ .long 2269087610
+ .long 2102111953
+ .long 3485081741
+ .long 162338783
+ .long 557475612
+ .long 2388169939
+ .long 243207925
+ .long 4204223906
+ .long 2675196186
+ .long 324677567
+ .long 1114951224
+ .long 481372583
+ .long 486415851
+ .long 4113480516
+ .long 1055425077
+ .long 649355134
+ .long 2229902448
+ .long 962745166
+ .long 972831702
+ .long 3931993737
+ .long 2110850155
+ .long 1298710268
+ .long 164837600
+ .long 1925490332
+ .long 1945663404
+ .long 3569020178
+ .long 4221700311
+ .long 2597420537
+ .long 329675200
+ .long 3850980665
+ .long 3891326808
+ .long 2843073060
+ .long 4148433327
+ .long 899873778
+ .long 659350401
+ .long 3406994035
+ .long 3487686321
+ .long 1391178824
+ .long 4001899359
+ .long 1799747556
+ .long 1318700802
+ .long 2519020775
+ .long 2680405347
+ .long 2782357648
+ .long 3708831422
+ .long 3599495112
+ .long 2637401604
+ .long 743074255
+ .long 1065843399
+ .long 1269748001
+ .long 3122695549
+ .long 2904022928
+ .long 979835913
+ .long 1486148511
+ .long 2131686798
+ .long 2539496002
+ .long 1950423802
+ .long 1513078560
+ .long 1959671827
+ .long 2972297022
+ .long 4263373596
+ .long 784024708
+ .long 3900847605
+ .long 3026157121
+ .long 3919343654
+ .long 1649626749
+ .long 4231779897
+ .long 1568049417
+ .long 3506727914
+ .long 1757346946
+ .long 3543720013
+ .long 3299253499
+ .long 4168592498
+ .long 3136098835
+ .long 2718488532
+ .long 3514693892
+ .long 2792472730
+ .long 2303539703
+ .long 4042217701
+ .long 1977230375
+ .long 1142009769
+ .long 2734420489
+ .long 1289978165
+ .long 312112110
+ .long 3789468107
+ .long 3954460750
+ .long 2284019538
+ .long 1173873683
+ .long 2579956331
+ .long 624224221
+ .long 3283968918
+ .long 3613954205
+ .long 273071781
+ .long 2347747367
+ .long 864945366
+ .long 1248448442
+ .long 2272970540
+ .long 2932941114
+ .long 546143563
+ .long 400527438
+ .long 1729890733
+ .long 2496896884
+ .long 250973784
+ .long 1570914932
+ .long 1092287127
+ .long 801054876
+ .long 3459781466
+ .long 698826472
+ .long 501947569
+ .long 3141829865
+ .long 2184574254
+ .long 1602109753
+ .long 2624595636
+ .long 1397652945
+ .long 1003895138
+ .long 1988692435
+ .long 74181213
+ .long 3204219507
+ .long 954223976
+ .long 2795305890
+ .long 2007790276
+ .long 3977384870
+ .long 148362426
+ .long 2113471718
+ .long 1908447953
+ .long 1295644484
+ .long 4015580553
+ .long 3659802444
+ .long 296724853
+ .long 4226943436
+ .long 3816895906
+ .long 2591288968
+ .long 3736193810
+ .long 3024637593
+ .long 593449707
+ .long 4158919577
+ .long 3338824517
+ .long 887610640
+ .long 3177420325
+ .long 1754307891
+ .long 1186899415
+ .long 4022871858
+ .long 2382681739
+ .long 1775221280
+ .long 2059873354
+ .long 3508615783
+ .long 2373798830
+ .long 3750776420
+ .long 470396183
+ .long 3550442561
+ .long 4119746708
+ .long 2722264270
+ .long 452630365
+ .long 3206585544
+ .long 940792367
+ .long 2805917826
+ .long 3944526121
+ .long 1149561244
+ .long 905260731
+ .long 2118203793
+ .long 1881584735
+ .long 1316868356
+ .long 3594084947
+ .long 2299122488
+ .long 1810521462
+ .long 4236407587
+ .long 3763169470
+ .long 2633736712
+ .long 2893202598
+ .long 303277681
+ .long 3621042925
+ .long 4177847879
+ .long 3231371645
+ .long 972506129
+ .long 1491437901
+ .long 606555363
+ .long 2947118554
+ .long 4060728462
+ .long 2167775995
+ .long 1945012259
+ .long 2982875802
+ .long 1213110727
+ .long 1599269812
+ .long 3826489629
+ .long 40584695
+ .long 3890024518
+ .long 1670784308
+ .long 2426221454
+ .long 3198539624
+ .long 3358011962
+ .long 81169391
+ .long 3485081741
+ .long 3341568617
+ .long 557475612
+ .long 2102111953
+ .long 2421056629
+ .long 162338783
+ .long 2675196186
+ .long 2388169939
+ .long 1114951224
+ .long 4204223906
+ .long 547145963
+ .long 324677567
+ .long 1055425077
+ .long 481372583
+ .long 2229902448
+ .long 4113480516
+ .long 1094291926
+ .long 649355134
+ .long 2110850155
+ .long 962745166
+ .long 164837600
+ .long 3931993737
+ .long 2188583852
+ .long 1298710268
+ .long 4221700311
+ .long 1925490332
+ .long 329675200
+ .long 3569020178
+ .long 82200408
+ .long 2597420537
+ .long 4148433327
+ .long 3850980665
+ .long 659350401
+ .long 2843073060
+ .long 164400817
+ .long 899873778
+ .long 4001899359
+ .long 3406994035
+ .long 1318700802
+ .long 1391178824
+ .long 328801635
+ .long 1799747556
+ .long 3708831422
+ .long 2519020775
+ .long 2637401604
+ .long 2782357648
+ .long 657603271
+ .long 3599495112
+ .long 3122695549
+ .long 743074255
+ .long 979835913
+ .long 1269748001
+ .long 1315206542
+ .long 2904022928
+ .long 1950423802
+ .long 1486148511
+ .long 1959671827
+ .long 2539496002
+ .long 2630413084
+ .long 1513078560
+ .long 3900847605
+ .long 2972297022
+ .long 3919343654
+ .long 784024708
+ .long 965858873
+ .long 3026157121
+ .long 3506727914
+ .long 1649626749
+ .long 3543720013
+ .long 1568049417
+ .long 1931717747
+ .long 1757346946
+ .long 2718488532
+ .long 3299253499
+ .long 2792472730
+ .long 3136098835
+ .long 3863435494
+ .long 3514693892
+ .long 1142009769
+ .long 2303539703
+ .long 1289978165
+ .long 1977230375
+ .long 3431903692
+ .long 2734420489
+ .long 2284019538
+ .long 312112110
+ .long 2579956331
+ .long 3954460750
+ .long 2568840088
+ .long 1173873683
+ .long 273071781
+ .long 624224221
+ .long 864945366
+ .long 3613954205
+ .long 842712880
+ .long 2347747367
+ .long 546143563
+ .long 1248448442
+ .long 1729890733
+ .long 2932941114
+ .long 1685425760
+ .long 400527438
+ .long 1092287127
+ .long 2496896884
+ .long 3459781466
+ .long 1570914932
+ .long 3370851521
+ .long 801054876
+ .long 2184574254
+ .long 698826472
+ .long 2624595636
+ .long 3141829865
+ .long 2446735747
+ .long 1602109753
+ .long 74181213
+ .long 1397652945
+ .long 954223976
+ .long 1988692435
+ .long 598504198
+ .long 3204219507
+ .long 148362426
+ .long 2795305890
+ .long 1908447953
+ .long 3977384870
+ .long 1197008397
+ .long 2113471718
+ .long 296724853
+ .long 1295644484
+ .long 3816895906
+ .long 3659802444
+ .long 2394016794
+ .long 4226943436
+ .long 593449707
+ .long 2591288968
+ .long 3338824517
+ .long 3024637593
+ .long 493066293
+ .long 4158919577
+ .long 1186899415
+ .long 887610640
+ .long 2382681739
+ .long 1754307891
+ .long 986132586
+ .long 4022871858
+ .long 2373798830
+ .long 1775221280
+ .long 470396183
+ .long 3508615783
+ .long 1972265172
+ .long 3750776420
+ .long 452630365
+ .long 3550442561
+ .long 940792367
+ .long 2722264270
+ .long 3944530345
+ .long 3206585544
+ .long 905260731
+ .long 2805917826
+ .long 1881584735
+ .long 1149561244
+ .long 3594093395
+ .long 2118203793
+ .long 1810521462
+ .long 1316868356
+ .long 3763169470
+ .long 2299122488
+ .long 2893219494
+ .long 4236407587
+ .long 3621042925
+ .long 2633736712
+ .long 3231371645
+ .long 303277681
+ .long 1491471692
+ .long 4177847879
+ .long 2947118554
+ .long 972506129
+ .long 2167775995
+ .long 606555363
+ .long 2982943385
+ .long 4060728462
+ .long 1599269812
+ .long 1945012259
+ .long 40584695
+ .long 1213110727
+ .long 1670919475
+ .long 3826489629
+ .long 3198539624
+ .long 3890024518
+ .long 81169391
+ .long 2426221454
+ .long 3341838951
+ .long 3358011962
+ .long 2102111953
+ .long 3485081741
+ .long 162338783
+ .long 557475612
+ .long 2388710606
+ .long 2421056629
+ .long 4204223906
+ .long 2675196186
+ .long 324677567
+ .long 1114951224
+ .long 482453916
+ .long 547145963
+ .long 4113480516
+ .long 1055425077
+ .long 649355134
+ .long 2229902448
+ .long 964907833
+ .long 1094291926
+ .long 3931993737
+ .long 2110850155
+ .long 1298710268
+ .long 164837600
+ .long 1929815667
+ .long 2188583852
+ .long 3569020178
+ .long 4221700311
+ .long 2597420537
+ .long 329675200
+ .long 3859631335
+ .long 82200408
+ .long 2843073060
+ .long 4148433327
+ .long 899873778
+ .long 659350401
+ .long 3424295375
+ .long 164400817
+ .long 1391178824
+ .long 4001899359
+ .long 1799747556
+ .long 1318700802
+ .long 2553623455
+ .long 328801635
+ .long 2782357648
+ .long 3708831422
+ .long 3599495112
+ .long 2637401604
+ .long 812279614
+ .long 657603271
+ .long 1269748001
+ .long 3122695549
+ .long 2904022928
+ .long 979835913
+ .long 1624559229
+ .long 1315206542
+ .long 2539496002
+ .long 1950423802
+ .long 1513078560
+ .long 1959671827
+ .long 3249118458
+ .long 2630413084
+ .long 784024708
+ .long 3900847605
+ .long 3026157121
+ .long 3919343654
+ .long 2203269620
+ .long 965858873
+ .long 1568049417
+ .long 3506727914
+ .long 1757346946
+ .long 3543720013
+ .long 111571945
+ .long 1931717747
+ .long 3136098835
+ .long 2718488532
+ .long 3514693892
+ .long 2792472730
+ .long 223143890
+ .long 3863435494
+ .long 1977230375
+ .long 1142009769
+ .long 2734420489
+ .long 1289978165
+ .long 446287780
+ .long 3431903692
+ .long 3954460750
+ .long 2284019538
+ .long 1173873683
+ .long 2579956331
+ .long 892575561
+ .long 2568840088
+ .long 3613954205
+ .long 273071781
+ .long 2347747367
+ .long 864945366
+ .long 1785151123
+ .long 842712880
+ .long 2932941114
+ .long 546143563
+ .long 400527438
+ .long 1729890733
+ .long 3570302247
+ .long 1685425760
+ .long 1570914932
+ .long 1092287127
+ .long 801054876
+ .long 3459781466
+ .long 2845637198
+ .long 3370851521
+ .long 3141829865
+ .long 2184574254
+ .long 1602109753
+ .long 2624595636
+ .long 1396307100
+ .long 2446735747
+ .long 1988692435
+ .long 74181213
+ .long 3204219507
+ .long 954223976
+ .long 2792614201
+ .long 598504198
+ .long 3977384870
+ .long 148362426
+ .long 2113471718
+ .long 1908447953
+ .long 1290261106
+ .long 1197008397
+ .long 3659802444
+ .long 296724853
+ .long 4226943436
+ .long 3816895906
+ .long 2580522212
+ .long 2394016794
+ .long 3024637593
+ .long 593449707
+ .long 4158919577
+ .long 3338824517
+ .long 866077128
+ .long 493066293
+ .long 1754307891
+ .long 1186899415
+ .long 4022871858
+ .long 2382681739
+ .long 1732154256
+ .long 986132586
+ .long 3508615783
+ .long 2373798830
+ .long 3750776420
+ .long 470396183
+ .long 3464308513
+ .long 1972265172
+ .long 2722264270
+ .long 452630365
+ .long 3206585544
+ .long 940792367
+ .long 2633649730
+ .long 3944530345
+ .long 1149561244
+ .long 905260731
+ .long 2118203793
+ .long 1881584735
+ .long 972332164
+ .long 3594093395
+ .long 2299122488
+ .long 1810521462
+ .long 4236407587
+ .long 3763169470
+ .long 1944664328
+ .long 2893219494
+ .long 303277681
+ .long 3621042925
+ .long 4177847879
+ .long 3231371645
+ .long 3889328657
+ .long 1491471692
+ .long 606555363
+ .long 2947118554
+ .long 4060728462
+ .long 2167775995
+ .long 3483690018
+ .long 2982943385
+ .long 1213110727
+ .long 1599269812
+ .long 3826489629
+ .long 40584695
+ .long 2672412741
+ .long 1670919475
+ .long 2426221454
+ .long 3198539624
+ .long 3358011962
+ .long 81169391
+ .long 1049858187
+ .long 3341838951
+ .long 557475612
+ .long 2102111953
+ .long 2421056629
+ .long 162338783
+ .long 2099716375
+ .long 2388710606
+ .long 1114951224
+ .long 4204223906
+ .long 547145963
+ .long 324677567
+ .long 4199432751
+ .long 482453916
+ .long 2229902448
+ .long 4113480516
+ .long 1094291926
+ .long 649355134
+ .long 4103898207
+ .long 964907833
+ .long 164837600
+ .long 3931993737
+ .long 2188583852
+ .long 1298710268
+ .long 3912829119
+ .long 1929815667
+ .long 329675200
+ .long 3569020178
+ .long 82200408
+ .long 2597420537
+ .long 3530690942
+ .long 3859631335
+ .long 659350401
+ .long 2843073060
+ .long 164400817
+ .long 899873778
+ .long 2766414588
+ .long 3424295375
+ .long 1318700802
+ .long 1391178824
+ .long 328801635
+ .long 1799747556
+ .long 1237861880
+ .long 2553623455
+ .long 2637401604
+ .long 2782357648
+ .long 657603271
+ .long 3599495112
+ .long 2475723761
+ .long 812279614
+ .long 979835913
+ .long 1269748001
+ .long 1315206542
+ .long 2904022928
+ .long 656480226
+ .long 1624559229
+ .long 1959671827
+ .long 2539496002
+ .long 2630413084
+ .long 1513078560
+ .long 1312960453
+ .long 3249118458
+ .long 3919343654
+ .long 784024708
+ .long 965858873
+ .long 3026157121
+ .long 2625920907
+ .long 2203269620
+ .long 3543720013
+ .long 1568049417
+ .long 1931717747
+ .long 1757346946
+ .long 956874519
+ .long 111571945
+ .long 2792472730
+ .long 3136098835
+ .long 3863435494
+ .long 3514693892
+ .long 1913749038
+ .long 223143890
+ .long 1289978165
+ .long 1977230375
+ .long 3431903692
+ .long 2734420489
+ .long 3827498077
+ .long 446287780
+ .long 2579956331
+ .long 3954460750
+ .long 2568840088
+ .long 1173873683
+ .long 3360028859
+ .long 892575561
+ .long 864945366
+ .long 3613954205
+ .long 842712880
+ .long 2347747367
+ .long 2425090423
+ .long 1785151123
+ .long 1729890733
+ .long 2932941114
+ .long 1685425760
+ .long 400527438
+ .long 555213551
+ .long 3570302247
+ .long 3459781466
+ .long 1570914932
+ .long 3370851521
+ .long 801054876
+ .long 1110427102
+ .long 2845637198
+ .long 2624595636
+ .long 3141829865
+ .long 2446735747
+ .long 1602109753
+ .long 2220854205
+ .long 1396307100
+ .long 954223976
+ .long 1988692435
+ .long 598504198
+ .long 3204219507
+ .long 146741115
+ .long 2792614201
+ .long 1908447953
+ .long 3977384870
+ .long 1197008397
+ .long 2113471718
+ .long 293482231
+ .long 1290261106
+ .long 3816895906
+ .long 3659802444
+ .long 2394016794
+ .long 4226943436
+ .long 586964463
+ .long 2580522212
+ .long 3338824517
+ .long 3024637593
+ .long 493066293
+ .long 4158919577
+ .long 1173928927
+ .long 866077128
+ .long 2382681739
+ .long 1754307891
+ .long 986132586
+ .long 4022871858
+ .long 2347857855
+ .long 1732154256
+ .long 470396183
+ .long 3508615783
+ .long 1972265172
+ .long 3750776420
+ .long 400748414
+ .long 3464308513
+ .long 940792367
+ .long 2722264270
+ .long 3944530345
+ .long 3206585544
+ .long 801496828
+ .long 2633649730
+ .long 1881584735
+ .long 1149561244
+ .long 3594093395
+ .long 2118203793
+ .long 1602993657
+ .long 972332164
+ .long 3763169470
+ .long 2299122488
+ .long 2893219494
+ .long 4236407587
+ .long 3205987314
+ .long 1944664328
+ .long 3231371645
+ .long 303277681
+ .long 1491471692
+ .long 4177847879
+ .long 2117007332
+ .long 3889328657
+ .long 2167775995
+ .long 606555363
+ .long 2982943385
+ .long 4060728462
+ .long 4234014665
+ .long 3483690018
+ .long 40584695
+ .long 1213110727
+ .long 1670919475
+ .long 3826489629
+ .long 4173062034
+ .long 2672412741
+ .long 81169391
+ .long 2426221454
+ .long 3341838951
+ .long 3358011962
+ .long 4051156773
+ .long 1049858187
+ .long 162338783
+ .long 557475612
+ .long 2388710606
+ .long 2421056629
+ .long 3807346250
+ .long 2099716375
+ .long 324677567
+ .long 1114951224
+ .long 482453916
+ .long 547145963
+ .long 3319725204
+ .long 4199432751
+ .long 649355134
+ .long 2229902448
+ .long 964907833
+ .long 1094291926
+ .long 2344483112
+ .long 4103898207
+ .long 1298710268
+ .long 164837600
+ .long 1929815667
+ .long 2188583852
+ .long 393998928
+ .long 3912829119
+ .long 2597420537
+ .long 329675200
+ .long 3859631335
+ .long 82200408
+ .long 787997856
+ .long 3530690942
+ .long 899873778
+ .long 659350401
+ .long 3424295375
+ .long 164400817
+ .long 1575995713
+ .long 2766414588
+ .long 1799747556
+ .long 1318700802
+ .long 2553623455
+ .long 328801635
+ .long 3151991427
+ .long 1237861880
+ .long 3599495112
+ .long 2637401604
+ .long 812279614
+ .long 657603271
+ .long 2009015559
+ .long 2475723761
+ .long 2904022928
+ .long 979835913
+ .long 1624559229
+ .long 1315206542
+ .long 4018031118
+ .long 656480226
+ .long 1513078560
+ .long 1959671827
+ .long 3249118458
+ .long 2630413084
+ .long 3741094941
+ .long 1312960453
+ .long 3026157121
+ .long 3919343654
+ .long 2203269620
+ .long 965858873
+ .long 3187222587
+ .long 2625920907
+ .long 1757346946
+ .long 3543720013
+ .long 111571945
+ .long 1931717747
+ .long 2079477878
+ .long 956874519
+ .long 3514693892
+ .long 2792472730
+ .long 223143890
+ .long 3863435494
+ .long 4158955756
+ .long 1913749038
+ .long 2734420489
+ .long 1289978165
+ .long 446287780
+ .long 3431903692
+ .long 4022944216
+ .long 3827498077
+ .long 1173873683
+ .long 2579956331
+ .long 892575561
+ .long 2568840088
+ .long 3750921137
+ .long 3360028859
+ .long 2347747367
+ .long 864945366
+ .long 1785151123
+ .long 842712880
+ .long 3206874979
+ .long 2425090423
+ .long 400527438
+ .long 1729890733
+ .long 3570302247
+ .long 1685425760
+ .long 2118782663
+ .long 555213551
+ .long 801054876
+ .long 3459781466
+ .long 2845637198
+ .long 3370851521
+ .long 4237565327
+ .long 1110427102
+ .long 1602109753
+ .long 2624595636
+ .long 1396307100
+ .long 2446735747
+ .long 4180163359
+ .long 2220854205
+ .long 3204219507
+ .long 954223976
+ .long 2792614201
+ .long 598504198
+ .long 4065359423
+ .long 146741115
+ .long 2113471718
+ .long 1908447953
+ .long 1290261106
+ .long 1197008397
+ .long 3835751551
+ .long 293482231
+ .long 4226943436
+ .long 3816895906
+ .long 2580522212
+ .long 2394016794
+ .long 3376535807
+ .long 586964463
+ .long 4158919577
+ .long 3338824517
+ .long 866077128
+ .long 493066293
+ .long 2458104319
+ .long 1173928927
+ .long 4022871858
+ .long 2382681739
+ .long 1732154256
+ .long 986132586
+ .long 621241343
+ .long 2347857855
+ .long 3750776420
+ .long 470396183
+ .long 3464308513
+ .long 1972265172
+ .long 1242482686
+ .long 400748414
+ .long 3206585544
+ .long 940792367
+ .long 2633649730
+ .long 3944530345
+ .long 2484965372
+ .long 801496828
+ .long 2118203793
+ .long 1881584735
+ .long 972332164
+ .long 3594093395
+ .long 674963448
+ .long 1602993657
+ .long 4236407587
+ .long 3763169470
+ .long 1944664328
+ .long 2893219494
+ .long 1349926897
+ .long 3205987314
+ .long 4177847879
+ .long 3231371645
+ .long 3889328657
+ .long 1491471692
+ .long 2699853794
+ .long 2117007332
+ .long 4060728462
+ .long 2167775995
+ .long 3483690018
+ .long 2982943385
+ .long 1104740292
+ .long 4234014665
+ .long 3826489629
+ .long 40584695
+ .long 2672412741
+ .long 1670919475
+ .long 2209480585
+ .long 4173062034
+ .long 3358011962
+ .long 81169391
+ .long 1049858187
+ .long 3341838951
+ .long 123993874
+ .long 4051156773
+ .long 2421056629
+ .long 162338783
+ .long 2099716375
+ .long 2388710606
+ .long 247987749
+ .long 3807346250
+ .long 547145963
+ .long 324677567
+ .long 4199432751
+ .long 482453916
+ .long 495975499
+ .long 3319725204
+ .long 1094291926
+ .long 649355134
+ .long 4103898207
+ .long 964907833
+ .long 991950999
+ .long 2344483112
+ .long 2188583852
+ .long 1298710268
+ .long 3912829119
+ .long 1929815667
+ .long 1983901999
+ .long 393998928
+ .long 82200408
+ .long 2597420537
+ .long 3530690942
+ .long 3859631335
+ .long 3967803999
+ .long 787997856
+ .long 164400817
+ .long 899873778
+ .long 2766414588
+ .long 3424295375
+ .long 3640640703
+ .long 1575995713
+ .long 328801635
+ .long 1799747556
+ .long 1237861880
+ .long 2553623455
+ .long 2986314111
+ .long 3151991427
+ .long 657603271
+ .long 3599495112
+ .long 2475723761
+ .long 812279614
+ .long 1677660927
+ .long 2009015559
+ .long 1315206542
+ .long 2904022928
+ .long 656480226
+ .long 1624559229
+ .long 3355321855
+ .long 4018031118
+ .long 2630413084
+ .long 1513078560
+ .long 1312960453
+ .long 3249118458
+ .long 2415676415
+ .long 3741094941
+ .long 965858873
+ .long 3026157121
+ .long 2625920907
+ .long 2203269620
+ .long 536385535
+ .long 3187222587
+ .long 1931717747
+ .long 1757346946
+ .long 956874519
+ .long 111571945
+ .long 1072771071
+ .long 2079477878
+ .long 3863435494
+ .long 3514693892
+ .long 1913749038
+ .long 223143890
+ .long 2145542143
+ .long 4158955756
+ .long 3431903692
+ .long 2734420489
+ .long 3827498077
+ .long 446287780
+ .long 4291084286
+ .long 4022944216
+ .long 2568840088
+ .long 1173873683
+ .long 3360028859
+ .long 892575561
+ .long 4287201277
+ .long 3750921137
+ .long 842712880
+ .long 2347747367
+ .long 2425090423
+ .long 1785151123
+ .long 4279435259
+ .long 3206874979
+ .long 1685425760
+ .long 400527438
+ .long 555213551
+ .long 3570302247
+ .long 4263903223
+ .long 2118782663
+ .long 3370851521
+ .long 801054876
+ .long 1110427102
+ .long 2845637198
+ .long 4232839151
+ .long 4237565327
+ .long 2446735747
+ .long 1602109753
+ .long 2220854205
+ .long 1396307100
+ .long 4170711006
+ .long 4180163359
+ .long 598504198
+ .long 3204219507
+ .long 146741115
+ .long 2792614201
+ .long 4046454716
+ .long 4065359423
+ .long 1197008397
+ .long 2113471718
+ .long 293482231
+ .long 1290261106
+ .long 3797942136
+ .long 3835751551
+ .long 2394016794
+ .long 4226943436
+ .long 586964463
+ .long 2580522212
+ .long 3300916976
+ .long 3376535807
+ .long 493066293
+ .long 4158919577
+ .long 1173928927
+ .long 866077128
+ .long 2306866656
+ .long 2458104319
+ .long 986132586
+ .long 4022871858
+ .long 2347857855
+ .long 1732154256
+ .long 318766016
+ .long 621241343
+ .long 1972265172
+ .long 3750776420
+ .long 400748414
+ .long 3464308513
+ .long 637532033
+ .long 1242482686
+ .long 3944530345
+ .long 3206585544
+ .long 801496828
+ .long 2633649730
+ .long 1275064066
+ .long 2484965372
+ .long 3594093395
+ .long 2118203793
+ .long 1602993657
+ .long 972332164
+ .long 2550128133
+ .long 674963448
+ .long 2893219494
+ .long 4236407587
+ .long 3205987314
+ .long 1944664328
+ .long 805288971
+ .long 1349926897
+ .long 1491471692
+ .long 4177847879
+ .long 2117007332
+ .long 3889328657
+ .long 1610577942
+ .long 2699853794
+ .long 2982943385
+ .long 4060728462
+ .long 4234014665
+ .long 3483690018
+ .long 3221155884
+ .long 1104740292
+ .long 1670919475
+ .long 3826489629
+ .long 4173062034
+ .long 2672412741
+ .long 2147344473
+ .long 2209480585
+ .long 3341838951
+ .long 3358011962
+ .long 4051156773
+ .long 1049858187
+ .long 4294688947
+ .long 123993874
+ .long 2388710606
+ .long 2421056629
+ .long 3807346250
+ .long 2099716375
+ .long 4294410598
+ .long 247987749
+ .long 482453916
+ .long 547145963
+ .long 3319725204
+ .long 4199432751
+ .long 4293853900
+ .long 495975499
+ .long 964907833
+ .long 1094291926
+ .long 2344483112
+ .long 4103898207
+ .long 4292740504
+ .long 991950999
+ .long 1929815667
+ .long 2188583852
+ .long 393998928
+ .long 3912829119
+ .long 4290513712
+ .long 1983901999
+ .long 3859631335
+ .long 82200408
+ .long 787997856
+ .long 3530690942
+ .long 4286060128
+ .long 3967803999
+ .long 3424295375
+ .long 164400817
+ .long 1575995713
+ .long 2766414588
+ .long 4277152960
+ .long 3640640703
+ .long 2553623455
+ .long 328801635
+ .long 3151991427
+ .long 1237861880
+ .long 4259338624
+ .long 2986314111
+ .long 812279614
+ .long 657603271
+ .long 2009015559
+ .long 2475723761
+ .long 4223709953
+ .long 1677660927
+ .long 1624559229
+ .long 1315206542
+ .long 4018031118
+ .long 656480226
+ .long 4152452611
+ .long 3355321855
+ .long 3249118458
+ .long 2630413084
+ .long 3741094941
+ .long 1312960453
+ .long 4009937927
+ .long 2415676415
+ .long 2203269620
+ .long 965858873
+ .long 3187222587
+ .long 2625920907
+ .long 3724908559
+ .long 536385535
+ .long 111571945
+ .long 1931717747
+ .long 2079477878
+ .long 956874519
+ .long 3154849823
+ .long 1072771071
+ .long 223143890
+ .long 3863435494
+ .long 4158955756
+ .long 1913749038
+ .long 2014732351
+ .long 2145542143
+ .long 446287780
+ .long 3431903692
+ .long 4022944216
+ .long 3827498077
+ .long 4029464703
+ .long 4291084286
+ .long 892575561
+ .long 2568840088
+ .long 3750921137
+ .long 3360028859
+ .long 3763962110
+ .long 4287201277
+ .long 1785151123
+ .long 842712880
+ .long 3206874979
+ .long 2425090423
+ .long 3232956925
+ .long 4279435259
+ .long 3570302247
+ .long 1685425760
+ .long 2118782663
+ .long 555213551
+ .long 2170946555
+ .long 4263903223
+ .long 2845637198
+ .long 3370851521
+ .long 4237565327
+ .long 1110427102
+ .long 46925815
+ .long 4232839151
+ .long 1396307100
+ .long 2446735747
+ .long 4180163359
+ .long 2220854205
+ .long 93851631
+ .long 4170711006
+ .long 2792614201
+ .long 598504198
+ .long 4065359423
+ .long 146741115
+ .long 187703262
+ .long 4046454716
+ .long 1290261106
+ .long 1197008397
+ .long 3835751551
+ .long 293482231
+ .long 375406524
+ .long 3797942136
+ .long 2580522212
+ .long 2394016794
+ .long 3376535807
+ .long 586964463
+ .long 750813049
+ .long 3300916976
+ .long 866077128
+ .long 493066293
+ .long 2458104319
+ .long 1173928927
+ .long 1501626098
+ .long 2306866656
+ .long 1732154256
+ .long 986132586
+ .long 621241343
+ .long 2347857855
+ .long 3003252197
+ .long 318766016
+ .long 3464308513
+ .long 1972265172
+ .long 1242482686
+ .long 400748414
+ .long 1711537099
+ .long 637532033
+ .long 2633649730
+ .long 3944530345
+ .long 2484965372
+ .long 801496828
+ .long 3423074199
+ .long 1275064066
+ .long 972332164
+ .long 3594093395
+ .long 674963448
+ .long 1602993657
+ .long 2551181103
+ .long 2550128133
+ .long 1944664328
+ .long 2893219494
+ .long 1349926897
+ .long 3205987314
+ .long 807394910
+ .long 805288971
+ .long 3889328657
+ .long 1491471692
+ .long 2699853794
+ .long 2117007332
+ .long 1614789820
+ .long 1610577942
+ .long 3483690018
+ .long 2982943385
+ .long 1104740292
+ .long 4234014665
+ .long 3229579640
+ .long 3221155884
+ .long 2672412741
+ .long 1670919475
+ .long 2209480585
+ .long 4173062034
+ .long 2164191985
+ .long 2147344473
+ .long 1049858187
+ .long 3341838951
+ .long 123993874
+ .long 4051156773
+ .long 33416674
+ .long 4294688947
+ .long 2099716375
+ .long 2388710606
+ .long 247987749
+ .long 3807346250
+ .long 66833348
+ .long 4294410598
+ .long 4199432751
+ .long 482453916
+ .long 495975499
+ .long 3319725204
+ .long 133666696
+ .long 4293853900
+ .long 4103898207
+ .long 964907833
+ .long 991950999
+ .long 2344483112
+ .long 267333393
+ .long 4292740504
+ .long 3912829119
+ .long 1929815667
+ .long 1983901999
+ .long 393998928
+ .long 534666787
+ .long 4290513712
+ .long 3530690942
+ .long 3859631335
+ .long 3967803999
+ .long 787997856
+ .long 1069333574
+ .long 4286060128
+ .long 2766414588
+ .long 3424295375
+ .long 3640640703
+ .long 1575995713
+ .long 2138667148
+ .long 4277152960
+ .long 1237861880
+ .long 2553623455
+ .long 2986314111
+ .long 3151991427
+ .long 4277334296
+ .long 4259338624
+ .long 2475723761
+ .long 812279614
+ .long 1677660927
+ .long 2009015559
+ .long 4259701297
+ .long 4223709953
+ .long 656480226
+ .long 1624559229
+ .long 3355321855
+ .long 4018031118
+ .long 4224435298
+ .long 4152452611
+ .long 1312960453
+ .long 3249118458
+ .long 2415676415
+ .long 3741094941
+ .long 4153903301
+ .long 4009937927
+ .long 2625920907
+ .long 2203269620
+ .long 536385535
+ .long 3187222587
+ .long 4012839307
+ .long 3724908559
+ .long 956874519
+ .long 111571945
+ .long 1072771071
+ .long 2079477878
+ .long 3730711318
+ .long 3154849823
+ .long 1913749038
+ .long 223143890
+ .long 2145542143
+ .long 4158955756
+ .long 3166455341
+ .long 2014732351
+ .long 3827498077
+ .long 446287780
+ .long 4291084286
+ .long 4022944216
+ .long 2037943386
+ .long 4029464703
+ .long 3360028859
+ .long 892575561
+ .long 4287201277
+ .long 3750921137
+ .long 4075886773
+ .long 3763962110
+ .long 2425090423
+ .long 1785151123
+ .long 4279435259
+ .long 3206874979
+ .long 3856806251
+ .long 3232956925
+ .long 555213551
+ .long 3570302247
+ .long 4263903223
+ .long 2118782663
+ .long 3418645206
+ .long 2170946555
+ .long 1110427102
+ .long 2845637198
+ .long 4232839151
+ .long 4237565327
+ .long 2542323117
+ .long 46925815
+ .long 2220854205
+ .long 1396307100
+ .long 4170711006
+ .long 4180163359
+ .long 789678938
+ .long 93851631
+ .long 146741115
+ .long 2792614201
+ .long 4046454716
+ .long 4065359423
+ .long 1579357876
+ .long 187703262
+ .long 293482231
+ .long 1290261106
+ .long 3797942136
+ .long 3835751551
+ .long 3158715752
+ .long 375406524
+ .long 586964463
+ .long 2580522212
+ .long 3300916976
+ .long 3376535807
+ .long 2022464208
+ .long 750813049
+ .long 1173928927
+ .long 866077128
+ .long 2306866656
+ .long 2458104319
+ .long 4044928416
+ .long 1501626098
+ .long 2347857855
+ .long 1732154256
+ .long 318766016
+ .long 621241343
+ .long 3794889537
+ .long 3003252197
+ .long 400748414
+ .long 3464308513
+ .long 637532033
+ .long 1242482686
+ .long 3294811778
+ .long 1711537099
+ .long 801496828
+ .long 2633649730
+ .long 1275064066
+ .long 2484965372
+ .long 2294656261
+ .long 3423074199
+ .long 1602993657
+ .long 972332164
+ .long 2550128133
+ .long 674963448
+ .long 294345226
+ .long 2551181103
+ .long 3205987314
+ .long 1944664328
+ .long 805288971
+ .long 1349926897
+ .long 588690452
+ .long 807394910
+ .long 2117007332
+ .long 3889328657
+ .long 1610577942
+ .long 2699853794
+ .long 1177380905
+ .long 1614789820
+ .long 4234014665
+ .long 3483690018
+ .long 3221155884
+ .long 1104740292
+ .long 2354761811
+ .long 3229579640
+ .long 4173062034
+ .long 2672412741
+ .long 2147344473
+ .long 2209480585
+ .long 414556326
+ .long 2164191985
+ .long 4051156773
+ .long 1049858187
+ .long 4294688947
+ .long 123993874
+ .long 829112653
+ .long 33416674
+ .long 3807346250
+ .long 2099716375
+ .long 4294410598
+ .long 247987749
+ .long 1658225307
+ .long 66833348
+ .long 3319725204
+ .long 4199432751
+ .long 4293853900
+ .long 495975499
+ .long 3316450614
+ .long 133666696
+ .long 2344483112
+ .long 4103898207
+ .long 4292740504
+ .long 991950999
+ .long 2337933933
+ .long 267333393
+ .long 393998928
+ .long 3912829119
+ .long 4290513712
+ .long 1983901999
+ .long 380900570
+ .long 534666787
+ .long 787997856
+ .long 3530690942
+ .long 4286060128
+ .long 3967803999
+ .long 761801140
+ .long 1069333574
+ .long 1575995713
+ .long 2766414588
+ .long 4277152960
+ .long 3640640703
+ .long 1523602280
+ .long 2138667148
+ .long 3151991427
+ .long 1237861880
+ .long 4259338624
+ .long 2986314111
+ .long 3047204561
+ .long 4277334296
+ .long 2009015559
+ .long 2475723761
+ .long 4223709953
+ .long 1677660927
+ .long 1799441827
+ .long 4259701297
+ .long 4018031118
+ .long 656480226
+ .long 4152452611
+ .long 3355321855
+ .long 3598883655
+ .long 4224435298
+ .long 3741094941
+ .long 1312960453
+ .long 4009937927
+ .long 2415676415
+ .long 2902800015
+ .long 4153903301
+ .long 3187222587
+ .long 2625920907
+ .long 3724908559
+ .long 536385535
+ .long 1510632735
+ .long 4012839307
+ .long 2079477878
+ .long 956874519
+ .long 3154849823
+ .long 1072771071
+ .long 3021265470
+ .long 3730711318
+ .long 4158955756
+ .long 1913749038
+ .long 2014732351
+ .long 2145542143
+ .long 1747563645
+ .long 3166455341
+ .long 4022944216
+ .long 3827498077
+ .long 4029464703
+ .long 4291084286
+ .long 3495127291
+ .long 2037943386
+ .long 3750921137
+ .long 3360028859
+ .long 3763962110
+ .long 4287201277
+ .long 2695287286
+ .long 4075886773
+ .long 3206874979
+ .long 2425090423
+ .long 3232956925
+ .long 4279435259
+ .long 1095607277
+ .long 3856806251
+ .long 2118782663
+ .long 555213551
+ .long 2170946555
+ .long 4263903223
+ .long 2191214555
+ .long 3418645206
+ .long 4237565327
+ .long 1110427102
+ .long 46925815
+ .long 4232839151
+ .long 87461814
+ .long 2542323117
+ .long 4180163359
+ .long 2220854205
+ .long 93851631
+ .long 4170711006
+ .long 174923629
+ .long 789678938
+ .long 4065359423
+ .long 146741115
+ .long 187703262
+ .long 4046454716
+ .long 349847258
+ .long 1579357876
+ .long 3835751551
+ .long 293482231
+ .long 375406524
+ .long 3797942136
+ .long 699694516
+ .long 3158715752
+ .long 3376535807
+ .long 586964463
+ .long 750813049
+ .long 3300916976
+ .long 1399389033
+ .long 2022464208
+ .long 2458104319
+ .long 1173928927
+ .long 1501626098
+ .long 2306866656
+ .long 2798778067
+ .long 4044928416
+ .long 621241343
+ .long 2347857855
+ .long 3003252197
+ .long 318766016
+ .long 1302588838
+ .long 3794889537
+ .long 1242482686
+ .long 400748414
+ .long 1711537099
+ .long 637532033
+ .long 2605177677
+ .long 3294811778
+ .long 2484965372
+ .long 801496828
+ .long 3423074199
+ .long 1275064066
+ .long 915388059
+ .long 2294656261
+ .long 674963448
+ .long 1602993657
+ .long 2551181103
+ .long 2550128133
+ .long 1830776118
+ .long 294345226
+ .long 1349926897
+ .long 3205987314
+ .long 807394910
+ .long 805288971
+ .long 3661552236
+ .long 588690452
+ .long 2699853794
+ .long 2117007332
+ .long 1614789820
+ .long 1610577942
+ .long 3028137177
+ .long 1177380905
+ .long 1104740292
+ .long 4234014665
+ .long 3229579640
+ .long 3221155884
+ .long 1761307059
+ .long 2354761811
+ .long 2209480585
+ .long 4173062034
+ .long 2164191985
+ .long 2147344473
+ .long 3522614119
+ .long 414556326
+ .long 123993874
+ .long 4051156773
+ .long 33416674
+ .long 4294688947
+ .long 2750260943
+ .long 829112653
+ .long 247987749
+ .long 3807346250
+ .long 66833348
+ .long 4294410598
+ .long 1205554591
+ .long 1658225307
+ .long 495975499
+ .long 3319725204
+ .long 133666696
+ .long 4293853900
+ .long 2411109183
+ .long 3316450614
+ .long 991950999
+ .long 2344483112
+ .long 267333393
+ .long 4292740504
+ .long 527251070
+ .long 2337933933
+ .long 1983901999
+ .long 393998928
+ .long 534666787
+ .long 4290513712
+ .long 1054502141
+ .long 380900570
+ .long 3967803999
+ .long 787997856
+ .long 1069333574
+ .long 4286060128
+ .long 2109004283
+ .long 761801140
+ .long 3640640703
+ .long 1575995713
+ .long 2138667148
+ .long 4277152960
+ .long 4218008566
+ .long 1523602280
+ .long 2986314111
+ .long 3151991427
+ .long 4277334296
+ .long 4259338624
+ .long 4141049836
+ .long 3047204561
+ .long 1677660927
+ .long 2009015559
+ .long 4259701297
+ .long 4223709953
+ .long 3987132377
+ .long 1799441827
+ .long 3355321855
+ .long 4018031118
+ .long 4224435298
+ .long 4152452611
+ .long 3679297459
+ .long 3598883655
+ .long 2415676415
+ .long 3741094941
+ .long 4153903301
+ .long 4009937927
+ .long 3063627623
+ .long 2902800015
+ .long 536385535
+ .long 3187222587
+ .long 4012839307
+ .long 3724908559
+ .long 1832287951
+ .long 1510632735
+ .long 1072771071
+ .long 2079477878
+ .long 3730711318
+ .long 3154849823
+ .long 3664575902
+ .long 3021265470
+ .long 2145542143
+ .long 4158955756
+ .long 3166455341
+ .long 2014732351
+ .long 3034184508
+ .long 1747563645
+ .long 4291084286
+ .long 4022944216
+ .long 2037943386
+ .long 4029464703
+ .long 1773401721
+ .long 3495127291
+ .long 4287201277
+ .long 3750921137
+ .long 4075886773
+ .long 3763962110
+ .long 3546803442
+ .long 2695287286
+ .long 4279435259
+ .long 3206874979
+ .long 3856806251
+ .long 3232956925
+ .long 2798639588
+ .long 1095607277
+ .long 4263903223
+ .long 2118782663
+ .long 3418645206
+ .long 2170946555
+ .long 1302311881
+ .long 2191214555
+ .long 4232839151
+ .long 4237565327
+ .long 2542323117
+ .long 46925815
+ .long 2604623763
+ .long 87461814
+ .long 4170711006
+ .long 4180163359
+ .long 789678938
+ .long 93851631
+ .long 914280231
+ .long 174923629
+ .long 4046454716
+ .long 4065359423
+ .long 1579357876
+ .long 187703262
+ .long 1828560463
+ .long 349847258
+ .long 3797942136
+ .long 3835751551
+ .long 3158715752
+ .long 375406524
+ .long 3657120927
+ .long 699694516
+ .long 3300916976
+ .long 3376535807
+ .long 2022464208
+ .long 750813049
+ .long 3019274558
+ .long 1399389033
+ .long 2306866656
+ .long 2458104319
+ .long 4044928416
+ .long 1501626098
+ .long 1743581820
+ .long 2798778067
+ .long 318766016
+ .long 621241343
+ .long 3794889537
+ .long 3003252197
+ .long 3487163641
+ .long 1302588838
+ .long 637532033
+ .long 1242482686
+ .long 3294811778
+ .long 1711537099
+ .long 2679359986
+ .long 2605177677
+ .long 1275064066
+ .long 2484965372
+ .long 2294656261
+ .long 3423074199
+ .long 1063752677
+ .long 915388059
+ .long 2550128133
+ .long 674963448
+ .long 294345226
+ .long 2551181103
+ .long 2127505355
+ .long 1830776118
+ .long 805288971
+ .long 1349926897
+ .long 588690452
+ .long 807394910
+ .long 4255010710
+ .long 3661552236
+ .long 1610577942
+ .long 2699853794
+ .long 1177380905
+ .long 1614789820
+ .long 4215054124
+ .long 3028137177
+ .long 3221155884
+ .long 1104740292
+ .long 2354761811
+ .long 3229579640
+ .long 4135140952
+ .long 1761307059
+ .long 2147344473
+ .long 2209480585
+ .long 414556326
+ .long 2164191985
+ .long 3975314608
+ .long 3522614119
+ .long 4294688947
+ .long 123993874
+ .long 829112653
+ .long 33416674
+ .long 3655661921
+ .long 2750260943
+ .long 4294410598
+ .long 247987749
+ .long 1658225307
+ .long 66833348
+ .long 3016356546
+ .long 1205554591
+ .long 4293853900
+ .long 495975499
+ .long 3316450614
+ .long 133666696
+ .long 1737745796
+ .long 2411109183
+ .long 4292740504
+ .long 991950999
+ .long 2337933933
+ .long 267333393
+ .long 3475491593
+ .long 527251070
+ .long 4290513712
+ .long 1983901999
+ .long 380900570
+ .long 534666787
+ .long 2656015891
+ .long 1054502141
+ .long 4286060128
+ .long 3967803999
+ .long 761801140
+ .long 1069333574
+ .long 1017064486
+ .long 2109004283
+ .long 4277152960
+ .long 3640640703
+ .long 1523602280
+ .long 2138667148
+ .long 2034128973
+ .long 4218008566
+ .long 4259338624
+ .long 2986314111
+ .long 3047204561
+ .long 4277334296
+ .long 4068257947
+ .long 4141049836
+ .long 4223709953
+ .long 1677660927
+ .long 1799441827
+ .long 4259701297
+ .long 3841548598
+ .long 3987132377
+ .long 4152452611
+ .long 3355321855
+ .long 3598883655
+ .long 4224435298
+ .long 3388129901
+ .long 3679297459
+ .long 4009937927
+ .long 2415676415
+ .long 2902800015
+ .long 4153903301
+ .long 2481292507
+ .long 3063627623
+ .long 3724908559
+ .long 536385535
+ .long 1510632735
+ .long 4012839307
+ .long 667617719
+ .long 1832287951
+ .long 3154849823
+ .long 1072771071
+ .long 3021265470
+ .long 3730711318
+ .long 1335235438
+ .long 3664575902
+ .long 2014732351
+ .long 2145542143
+ .long 1747563645
+ .long 3166455341
+ .long 2670470877
+ .long 3034184508
+ .long 4029464703
+ .long 4291084286
+ .long 3495127291
+ .long 2037943386
+ .long 1045974458
+ .long 1773401721
+ .long 3763962110
+ .long 4287201277
+ .long 2695287286
+ .long 4075886773
+ .long 2091948916
+ .long 3546803442
+ .long 3232956925
+ .long 4279435259
+ .long 1095607277
+ .long 3856806251
+ .long 4183897833
+ .long 2798639588
+ .long 2170946555
+ .long 4263903223
+ .long 2191214555
+ .long 3418645206
+ .long 4072828371
+ .long 1302311881
+ .long 46925815
+ .long 4232839151
+ .long 87461814
+ .long 2542323117
+ .long 3850689447
+ .long 2604623763
+ .long 93851631
+ .long 4170711006
+ .long 174923629
+ .long 789678938
+ .long 3406411599
+ .long 914280231
+ .long 187703262
+ .long 4046454716
+ .long 349847258
+ .long 1579357876
+ .long 2517855902
+ .long 1828560463
+ .long 375406524
+ .long 3797942136
+ .long 699694516
+ .long 3158715752
+ .long 740744509
+ .long 3657120927
+ .long 750813049
+ .long 3300916976
+ .long 1399389033
+ .long 2022464208
+ .long 1481489018
+ .long 3019274558
+ .long 1501626098
+ .long 2306866656
+ .long 2798778067
+ .long 4044928416
+ .long 2962978036
+ .long 1743581820
+ .long 3003252197
+ .long 318766016
+ .long 1302588838
+ .long 3794889537
+ .long 1630988776
+ .long 3487163641
+ .long 1711537099
+ .long 637532033
+ .long 2605177677
+ .long 3294811778
+ .long 3261977553
+ .long 2679359986
+ .long 3423074199
+ .long 1275064066
+ .long 915388059
+ .long 2294656261
+ .long 2228987811
+ .long 1063752677
+ .long 2551181103
+ .long 2550128133
+ .long 1830776118
+ .long 294345226
+ .long 163008326
+ .long 2127505355
+ .long 807394910
+ .long 805288971
+ .long 3661552236
+ .long 588690452
+ .long 326016652
+ .long 4255010710
+ .long 1614789820
+ .long 1610577942
+ .long 3028137177
+ .long 1177380905
+ .long 652033304
+ .long 4215054124
+ .long 3229579640
+ .long 3221155884
+ .long 1761307059
+ .long 2354761811
+ .long 1304066609
+ .long 4135140952
+ .long 2164191985
+ .long 2147344473
+ .long 3522614119
+ .long 414556326
+ .long 2608133219
+ .long 3975314608
+ .long 33416674
+ .long 4294688947
+ .long 2750260943
+ .long 829112653
+ .long 921299143
+ .long 3655661921
+ .long 66833348
+ .long 4294410598
+ .long 1205554591
+ .long 1658225307
+ .long 1842598287
+ .long 3016356546
+ .long 133666696
+ .long 4293853900
+ .long 2411109183
+ .long 3316450614
+ .long 3685196575
+ .long 1737745796
+ .long 267333393
+ .long 4292740504
+ .long 527251070
+ .long 2337933933
+ .long 3075425855
+ .long 3475491593
+ .long 534666787
+ .long 4290513712
+ .long 1054502141
+ .long 380900570
+ .long 1855884414
+ .long 2656015891
+ .long 1069333574
+ .long 4286060128
+ .long 2109004283
+ .long 761801140
+ .long 3711768829
+ .long 1017064486
+ .long 2138667148
+ .long 4277152960
+ .long 4218008566
+ .long 1523602280
+ .long 3128570363
+ .long 2034128973
+ .long 4277334296
+ .long 4259338624
+ .long 4141049836
+ .long 3047204561
+ .long 1962173430
+ .long 4068257947
+ .long 4259701297
+ .long 4223709953
+ .long 3987132377
+ .long 1799441827
+ .long 3924346860
+ .long 3841548598
+ .long 4224435298
+ .long 4152452611
+ .long 3679297459
+ .long 3598883655
+ .long 3553726425
+ .long 3388129901
+ .long 4153903301
+ .long 4009937927
+ .long 3063627623
+ .long 2902800015
+ .long 2812485555
+ .long 2481292507
+ .long 4012839307
+ .long 3724908559
+ .long 1832287951
+ .long 1510632735
+ .long 1330003814
+ .long 667617719
+ .long 3730711318
+ .long 3154849823
+ .long 3664575902
+ .long 3021265470
+ .long 2660007629
+ .long 1335235438
+ .long 3166455341
+ .long 2014732351
+ .long 3034184508
+ .long 1747563645
+ .long 1025047962
+ .long 2670470877
+ .long 2037943386
+ .long 4029464703
+ .long 1773401721
+ .long 3495127291
+ .long 2050095924
+ .long 1045974458
+ .long 4075886773
+ .long 3763962110
+ .long 3546803442
+ .long 2695287286
+ .long 4100191849
+ .long 2091948916
+ .long 3856806251
+ .long 3232956925
+ .long 2798639588
+ .long 1095607277
+ .long 3905416403
+ .long 4183897833
+ .long 3418645206
+ .long 2170946555
+ .long 1302311881
+ .long 2191214555
+ .long 3515865511
+ .long 4072828371
+ .long 2542323117
+ .long 46925815
+ .long 2604623763
+ .long 87461814
+ .long 2736763727
+ .long 3850689447
+ .long 789678938
+ .long 93851631
+ .long 914280231
+ .long 174923629
+ .long 1178560158
+ .long 3406411599
+ .long 1579357876
+ .long 187703262
+ .long 1828560463
+ .long 349847258
+ .long 2357120316
+ .long 2517855902
+ .long 3158715752
+ .long 375406524
+ .long 3657120927
+ .long 699694516
+ .long 419273337
+ .long 740744509
+ .long 2022464208
+ .long 750813049
+ .long 3019274558
+ .long 1399389033
+ .long 838546674
+ .long 1481489018
+ .long 4044928416
+ .long 1501626098
+ .long 1743581820
+ .long 2798778067
+ .long 1677093349
+ .long 2962978036
+ .long 3794889537
+ .long 3003252197
+ .long 3487163641
+ .long 1302588838
+ .long 3354186699
+ .long 1630988776
+ .long 3294811778
+ .long 1711537099
+ .long 2679359986
+ .long 2605177677
+ .long 2413406103
+ .long 3261977553
+ .long 2294656261
+ .long 3423074199
+ .long 1063752677
+ .long 915388059
+ .long 531844911
+ .long 2228987811
+ .long 294345226
+ .long 2551181103
+ .long 2127505355
+ .long 1830776118
+ .long 1063689823
+ .long 163008326
+ .long 588690452
+ .long 807394910
+ .long 4255010710
+ .long 3661552236
+ .long 2127379647
+ .long 326016652
+ .long 1177380905
+ .long 1614789820
+ .long 4215054124
+ .long 3028137177
+ .long 4254759295
+ .long 652033304
+ .long 2354761811
+ .long 3229579640
+ .long 4135140952
+ .long 1761307059
+ .long 4214551295
+ .long 1304066609
+ .long 414556326
+ .long 2164191985
+ .long 3975314608
+ .long 3522614119
+ .long 4134135294
+ .long 2608133219
+ .long 829112653
+ .long 33416674
+ .long 3655661921
+ .long 2750260943
+ .long 3973303293
+ .long 921299143
+ .long 1658225307
+ .long 66833348
+ .long 3016356546
+ .long 1205554591
+ .long 3651639290
+ .long 1842598287
+ .long 3316450614
+ .long 133666696
+ .long 1737745796
+ .long 2411109183
+ .long 3008311285
+ .long 3685196575
+ .long 2337933933
+ .long 267333393
+ .long 3475491593
+ .long 527251070
+ .long 1721655274
+ .long 3075425855
+ .long 380900570
+ .long 534666787
+ .long 2656015891
+ .long 1054502141
+ .long 3443310548
+ .long 1855884414
+ .long 761801140
+ .long 1069333574
+ .long 1017064486
+ .long 2109004283
+ .long 2591653800
+ .long 3711768829
+ .long 1523602280
+ .long 2138667148
+ .long 2034128973
+ .long 4218008566
+ .long 888340305
+ .long 3128570363
+ .long 3047204561
+ .long 4277334296
+ .long 4068257947
+ .long 4141049836
+ .long 1776680610
+ .long 1962173430
+ .long 1799441827
+ .long 4259701297
+ .long 3841548598
+ .long 3987132377
+ .long 3553361221
+ .long 3924346860
+ .long 3598883655
+ .long 4224435298
+ .long 3388129901
+ .long 3679297459
+ .long 2811755147
+ .long 3553726425
+ .long 2902800015
+ .long 4153903301
+ .long 2481292507
+ .long 3063627623
+ .long 1328542998
+ .long 2812485555
+ .long 1510632735
+ .long 4012839307
+ .long 667617719
+ .long 1832287951
+ .long 2657085997
+ .long 1330003814
+ .long 3021265470
+ .long 3730711318
+ .long 1335235438
+ .long 3664575902
+ .long 1019204698
+ .long 2660007629
+ .long 1747563645
+ .long 3166455341
+ .long 2670470877
+ .long 3034184508
+ .long 2038409397
+ .long 1025047962
+ .long 3495127291
+ .long 2037943386
+ .long 1045974458
+ .long 1773401721
+ .long 4076818795
+ .long 2050095924
+ .long 2695287286
+ .long 4075886773
+ .long 2091948916
+ .long 3546803442
+ .long 3858670295
+ .long 4100191849
+ .long 1095607277
+ .long 3856806251
+ .long 4183897833
+ .long 2798639588
+ .long 3422373294
+ .long 3905416403
+ .long 2191214555
+ .long 3418645206
+ .long 4072828371
+ .long 1302311881
+ .long 2549779293
+ .long 3515865511
+ .long 87461814
+ .long 2542323117
+ .long 3850689447
+ .long 2604623763
+ .long 804591290
+ .long 2736763727
+ .long 174923629
+ .long 789678938
+ .long 3406411599
+ .long 914280231
+ .long 1609182581
+ .long 1178560158
+ .long 349847258
+ .long 1579357876
+ .long 2517855902
+ .long 1828560463
+ .long 3218365162
+ .long 2357120316
+ .long 699694516
+ .long 3158715752
+ .long 740744509
+ .long 3657120927
+ .long 2141763028
+ .long 419273337
+ .long 1399389033
+ .long 2022464208
+ .long 1481489018
+ .long 3019274558
+ .long 4283526057
+ .long 838546674
+ .long 2798778067
+ .long 4044928416
+ .long 2962978036
+ .long 1743581820
+ .long 4272084818
+ .long 1677093349
+ .long 1302588838
+ .long 3794889537
+ .long 1630988776
+ .long 3487163641
+ .long 4249202340
+ .long 3354186699
+ .long 2605177677
+ .long 3294811778
+ .long 3261977553
+ .long 2679359986
+ .long 4203437385
+ .long 2413406103
+ .long 915388059
+ .long 2294656261
+ .long 2228987811
+ .long 1063752677
+ .long 4111907475
+ .long 531844911
+ .long 1830776118
+ .long 294345226
+ .long 163008326
+ .long 2127505355
+ .long 3928847655
+ .long 1063689823
+ .long 3661552236
+ .long 588690452
+ .long 326016652
+ .long 4255010710
+ .long 3562728015
+ .long 2127379647
+ .long 3028137177
+ .long 1177380905
+ .long 652033304
+ .long 4215054124
+ .long 2830488734
+ .long 4254759295
+ .long 1761307059
+ .long 2354761811
+ .long 1304066609
+ .long 4135140952
+ .long 1366010173
+ .long 4214551295
+ .long 3522614119
+ .long 414556326
+ .long 2608133219
+ .long 3975314608
+ .long 2732020347
+ .long 4134135294
+ .long 2750260943
+ .long 829112653
+ .long 921299143
+ .long 3655661921
+ .long 1169073399
+ .long 3973303293
+ .long 1205554591
+ .long 1658225307
+ .long 1842598287
+ .long 3016356546
+ .long 2338146798
+ .long 3651639290
+ .long 2411109183
+ .long 3316450614
+ .long 3685196575
+ .long 1737745796
+ .long 381326301
+ .long 3008311285
+ .long 527251070
+ .long 2337933933
+ .long 3075425855
+ .long 3475491593
+ .long 762652602
+ .long 1721655274
+ .long 1054502141
+ .long 380900570
+ .long 1855884414
+ .long 2656015891
+ .long 1525305205
+ .long 3443310548
+ .long 2109004283
+ .long 761801140
+ .long 3711768829
+ .long 1017064486
+ .long 3050610411
+ .long 2591653800
+ .long 4218008566
+ .long 1523602280
+ .long 3128570363
+ .long 2034128973
+ .long 1806253526
+ .long 888340305
+ .long 4141049836
+ .long 3047204561
+ .long 1962173430
+ .long 4068257947
+ .long 3612507052
+ .long 1776680610
+ .long 3987132377
+ .long 1799441827
+ .long 3924346860
+ .long 3841548598
+ .long 2930046808
+ .long 3553361221
+ .long 3679297459
+ .long 3598883655
+ .long 3553726425
+ .long 3388129901
+ .long 1565126321
+ .long 2811755147
+ .long 3063627623
+ .long 2902800015
+ .long 2812485555
+ .long 2481292507
+ .long 3130252643
+ .long 1328542998
+ .long 1832287951
+ .long 1510632735
+ .long 1330003814
+ .long 667617719
+ .long 1965537991
+ .long 2657085997
+ .long 3664575902
+ .long 3021265470
+ .long 2660007629
+ .long 1335235438
+ .long 3931075983
+ .long 1019204698
+ .long 3034184508
+ .long 1747563645
+ .long 1025047962
+ .long 2670470877
+ .long 3567184671
+ .long 2038409397
+ .long 1773401721
+ .long 3495127291
+ .long 2050095924
+ .long 1045974458
+ .long 2839402047
+ .long 4076818795
+ .long 3546803442
+ .long 2695287286
+ .long 4100191849
+ .long 2091948916
+ .long 1383836798
+ .long 3858670295
+ .long 2798639588
+ .long 1095607277
+ .long 3905416403
+ .long 4183897833
+ .long 2767673597
+ .long 3422373294
+ .long 1302311881
+ .long 2191214555
+ .long 3515865511
+ .long 4072828371
+ .long 1240379898
+ .long 2549779293
+ .long 2604623763
+ .long 87461814
+ .long 2736763727
+ .long 3850689447
+ .long 2480759797
+ .long 804591290
+ .long 914280231
+ .long 174923629
+ .long 1178560158
+ .long 3406411599
+ .long 666552299
+ .long 1609182581
+ .long 1828560463
+ .long 349847258
+ .long 2357120316
+ .long 2517855902
+ .long 1333104599
+ .long 3218365162
+ .long 3657120927
+ .long 699694516
+ .long 419273337
+ .long 740744509
+ .long 2666209199
+ .long 2141763028
+ .long 3019274558
+ .long 1399389033
+ .long 838546674
+ .long 1481489018
+ .long 1037451103
+ .long 4283526057
+ .long 1743581820
+ .long 2798778067
+ .long 1677093349
+ .long 2962978036
+ .long 2074902206
+ .long 4272084818
+ .long 3487163641
+ .long 1302588838
+ .long 3354186699
+ .long 1630988776
+ .long 4149804412
+ .long 4249202340
+ .long 2679359986
+ .long 2605177677
+ .long 2413406103
+ .long 3261977553
+ .long 4004641529
+ .long 4203437385
+ .long 1063752677
+ .long 915388059
+ .long 531844911
+ .long 2228987811
+ .long 3714315762
+ .long 4111907475
+ .long 2127505355
+ .long 1830776118
+ .long 1063689823
+ .long 163008326
+ .long 3133664229
+ .long 3928847655
+ .long 4255010710
+ .long 3661552236
+ .long 2127379647
+ .long 326016652
+ .long 1972361163
+ .long 3562728015
+ .long 4215054124
+ .long 3028137177
+ .long 4254759295
+ .long 652033304
+ .long 3944722327
+ .long 2830488734
+ .long 4135140952
+ .long 1761307059
+ .long 4214551295
+ .long 1304066609
+ .long 3594477359
+ .long 1366010173
+ .long 3975314608
+ .long 3522614119
+ .long 4134135294
+ .long 2608133219
+ .long 2893987423
+ .long 2732020347
+ .long 3655661921
+ .long 2750260943
+ .long 3973303293
+ .long 921299143
+ .long 1493007550
+ .long 1169073399
+ .long 3016356546
+ .long 1205554591
+ .long 3651639290
+ .long 1842598287
+ .long 2986015100
+ .long 2338146798
+ .long 1737745796
+ .long 2411109183
+ .long 3008311285
+ .long 3685196575
+ .long 1677062904
+ .long 381326301
+ .long 3475491593
+ .long 527251070
+ .long 1721655274
+ .long 3075425855
+ .long 3354125809
+ .long 762652602
+ .long 2656015891
+ .long 1054502141
+ .long 3443310548
+ .long 1855884414
+ .long 2413284322
+ .long 1525305205
+ .long 1017064486
+ .long 2109004283
+ .long 2591653800
+ .long 3711768829
+ .long 531601349
+ .long 3050610411
+ .long 2034128973
+ .long 4218008566
+ .long 888340305
+ .long 3128570363
+ .long 1063202699
+ .long 1806253526
+ .long 4068257947
+ .long 4141049836
+ .long 1776680610
+ .long 1962173430
+ .long 2126405399
+ .long 3612507052
+ .long 3841548598
+ .long 3987132377
+ .long 3553361221
+ .long 3924346860
+ .long 4252810799
+ .long 2930046808
+ .long 3388129901
+ .long 3679297459
+ .long 2811755147
+ .long 3553726425
+ .long 4210654302
+ .long 1565126321
+ .long 2481292507
+ .long 3063627623
+ .long 1328542998
+ .long 2812485555
+ .long 4126341309
+ .long 3130252643
+ .long 667617719
+ .long 1832287951
+ .long 2657085997
+ .long 1330003814
+ .long 3957715323
+ .long 1965537991
+ .long 1335235438
+ .long 3664575902
+ .long 1019204698
+ .long 2660007629
+ .long 3620463350
+ .long 3931075983
+ .long 2670470877
+ .long 3034184508
+ .long 2038409397
+ .long 1025047962
+ .long 2945959404
+ .long 3567184671
+ .long 1045974458
+ .long 1773401721
+ .long 4076818795
+ .long 2050095924
+ .long 1596951513
+ .long 2839402047
+ .long 2091948916
+ .long 3546803442
+ .long 3858670295
+ .long 4100191849
+ .long 3193903027
+ .long 1383836798
+ .long 4183897833
+ .long 2798639588
+ .long 3422373294
+ .long 3905416403
+ .long 2092838759
+ .long 2767673597
+ .long 4072828371
+ .long 1302311881
+ .long 2549779293
+ .long 3515865511
+ .long 4185677519
+ .long 1240379898
+ .long 3850689447
+ .long 2604623763
+ .long 804591290
+ .long 2736763727
+ .long 4076387742
+ .long 2480759797
+ .long 3406411599
+ .long 914280231
+ .long 1609182581
+ .long 1178560158
+ .long 3857808189
+ .long 666552299
+ .long 2517855902
+ .long 1828560463
+ .long 3218365162
+ .long 2357120316
+ .long 3420649082
+ .long 1333104599
+ .long 740744509
+ .long 3657120927
+ .long 2141763028
+ .long 419273337
+ .long 2546330868
+ .long 2666209199
+ .long 1481489018
+ .long 3019274558
+ .long 4283526057
+ .long 838546674
+ .long 797694440
+ .long 1037451103
+ .long 2962978036
+ .long 1743581820
+ .long 4272084818
+ .long 1677093349
+ .long 1595388880
+ .long 2074902206
+ .long 1630988776
+ .long 3487163641
+ .long 4249202340
+ .long 3354186699
+ .long 3190777760
+ .long 4149804412
+ .long 3261977553
+ .long 2679359986
+ .long 4203437385
+ .long 2413406103
+ .long 2086588225
+ .long 4004641529
+ .long 2228987811
+ .long 1063752677
+ .long 4111907475
+ .long 531844911
+ .long 4173176451
+ .long 3714315762
+ .long 163008326
+ .long 2127505355
+ .long 3928847655
+ .long 1063689823
+ .long 4051385607
+ .long 3133664229
+ .long 326016652
+ .long 4255010710
+ .long 3562728015
+ .long 2127379647
+ .long 3807803918
+ .long 1972361163
+ .long 652033304
+ .long 4215054124
+ .long 2830488734
+ .long 4254759295
+ .long 3320640540
+ .long 3944722327
+ .long 1304066609
+ .long 4135140952
+ .long 1366010173
+ .long 4214551295
+ .long 2346313785
+ .long 3594477359
+ .long 2608133219
+ .long 3975314608
+ .long 2732020347
+ .long 4134135294
+ .long 397660275
+ .long 2893987423
+ .long 921299143
+ .long 3655661921
+ .long 1169073399
+ .long 3973303293
+ .long 795320551
+ .long 1493007550
+ .long 1842598287
+ .long 3016356546
+ .long 2338146798
+ .long 3651639290
+ .long 1590641102
+ .long 2986015100
+ .long 3685196575
+ .long 1737745796
+ .long 381326301
+ .long 3008311285
+ .long 3181282204
+ .long 1677062904
+ .long 3075425855
+ .long 3475491593
+ .long 762652602
+ .long 1721655274
+ .long 2067597113
+ .long 3354125809
+ .long 1855884414
+ .long 2656015891
+ .long 1525305205
+ .long 3443310548
+ .long 4135194227
+ .long 2413284322
+ .long 3711768829
+ .long 1017064486
+ .long 3050610411
+ .long 2591653800
+ .long 3975421159
+ .long 531601349
+ .long 3128570363
+ .long 2034128973
+ .long 1806253526
+ .long 888340305
+ .long 3655875023
+ .long 1063202699
+ .long 1962173430
+ .long 4068257947
+ .long 3612507052
+ .long 1776680610
+ .long 3016782751
+ .long 2126405399
+ .long 3924346860
+ .long 3841548598
+ .long 2930046808
+ .long 3553361221
+ .long 1738598206
+ .long 4252810799
+ .long 3553726425
+ .long 3388129901
+ .long 1565126321
+ .long 2811755147
+ .long 3477196413
+ .long 4210654302
+ .long 2812485555
+ .long 2481292507
+ .long 3130252643
+ .long 1328542998
+ .long 2659425531
+ .long 4126341309
+ .long 1330003814
+ .long 667617719
+ .long 1965537991
+ .long 2657085997
+ .long 1023883767
+ .long 3957715323
+ .long 2660007629
+ .long 1335235438
+ .long 3931075983
+ .long 1019204698
+ .long 2047767535
+ .long 3620463350
+ .long 1025047962
+ .long 2670470877
+ .long 3567184671
+ .long 2038409397
+ .long 4095535070
+ .long 2945959404
+ .long 2050095924
+ .long 1045974458
+ .long 2839402047
+ .long 4076818795
+ .long 3896102844
+ .long 1596951513
+ .long 4100191849
+ .long 2091948916
+ .long 1383836798
+ .long 3858670295
+ .long 3497238392
+ .long 3193903027
+ .long 3905416403
+ .long 4183897833
+ .long 2767673597
+ .long 3422373294
+ .long 2699509489
+ .long 2092838759
+ .long 3515865511
+ .long 4072828371
+ .long 1240379898
+ .long 2549779293
+ .long 1104051682
+ .long 4185677519
+ .long 2736763727
+ .long 3850689447
+ .long 2480759797
+ .long 804591290
+ .long 2208103365
+ .long 4076387742
+ .long 1178560158
+ .long 3406411599
+ .long 666552299
+ .long 1609182581
+ .long 121239434
+ .long 3857808189
+ .long 2357120316
+ .long 2517855902
+ .long 1333104599
+ .long 3218365162
+ .long 242478868
+ .long 3420649082
+ .long 419273337
+ .long 740744509
+ .long 2666209199
+ .long 2141763028
+ .long 484957737
+ .long 2546330868
+ .long 838546674
+ .long 1481489018
+ .long 1037451103
+ .long 4283526057
+ .long 969915474
+ .long 797694440
+ .long 1677093349
+ .long 2962978036
+ .long 2074902206
+ .long 4272084818
+ .long 1939830949
+ .long 1595388880
+ .long 3354186699
+ .long 1630988776
+ .long 4149804412
+ .long 4249202340
+ .long 3879661898
+ .long 3190777760
+ .long 2413406103
+ .long 3261977553
+ .long 4004641529
+ .long 4203437385
+ .long 3464356500
+ .long 2086588225
+ .long 531844911
+ .long 2228987811
+ .long 3714315762
+ .long 4111907475
+ .long 2633745705
+ .long 4173176451
+ .long 1063689823
+ .long 163008326
+ .long 3133664229
+ .long 3928847655
+ .long 972524114
+ .long 4051385607
+ .long 2127379647
+ .long 326016652
+ .long 1972361163
+ .long 3562728015
+ .long 1945048229
+ .long 3807803918
+ .long 4254759295
+ .long 652033304
+ .long 3944722327
+ .long 2830488734
+ .long 3890096458
+ .long 3320640540
+ .long 4214551295
+ .long 1304066609
+ .long 3594477359
+ .long 1366010173
+ .long 3485225620
+ .long 2346313785
+ .long 4134135294
+ .long 2608133219
+ .long 2893987423
+ .long 2732020347
+ .long 2675483945
+ .long 397660275
+ .long 3973303293
+ .long 921299143
+ .long 1493007550
+ .long 1169073399
+ .long 1056000594
+ .long 795320551
+ .long 3651639290
+ .long 1842598287
+ .long 2986015100
+ .long 2338146798
+ .long 2112001188
+ .long 1590641102
+ .long 3008311285
+ .long 3685196575
+ .long 1677062904
+ .long 381326301
+ .long 4224002377
+ .long 3181282204
+ .long 1721655274
+ .long 3075425855
+ .long 3354125809
+ .long 762652602
+ .long 4153037458
+ .long 2067597113
+ .long 3443310548
+ .long 1855884414
+ .long 2413284322
+ .long 1525305205
+ .long 4011107621
+ .long 4135194227
+ .long 2591653800
+ .long 3711768829
+ .long 531601349
+ .long 3050610411
+ .long 3727247947
+ .long 3975421159
+ .long 888340305
+ .long 3128570363
+ .long 1063202699
+ .long 1806253526
+ .long 3159528599
+ .long 3655875023
+ .long 1776680610
+ .long 1962173430
+ .long 2126405399
+ .long 3612507052
+ .long 2024089902
+ .long 3016782751
+ .long 3553361221
+ .long 3924346860
+ .long 4252810799
+ .long 2930046808
+ .long 4048179805
+ .long 1738598206
+ .long 2811755147
+ .long 3553726425
+ .long 4210654302
+ .long 1565126321
+ .long 3801392314
+ .long 3477196413
+ .long 1328542998
+ .long 2812485555
+ .long 4126341309
+ .long 3130252643
+ .long 3307817333
+ .long 2659425531
+ .long 2657085997
+ .long 1330003814
+ .long 3957715323
+ .long 1965537991
+ .long 2320667370
+ .long 1023883767
+ .long 1019204698
+ .long 2660007629
+ .long 3620463350
+ .long 3931075983
+ .long 346367444
+ .long 2047767535
+ .long 2038409397
+ .long 1025047962
+ .long 2945959404
+ .long 3567184671
+ .long 692734889
+ .long 4095535070
+ .long 4076818795
+ .long 2050095924
+ .long 1596951513
+ .long 2839402047
+ .long 1385469779
+ .long 3896102844
+ .long 3858670295
+ .long 4100191849
+ .long 3193903027
+ .long 1383836798
+ .long 2770939558
+ .long 3497238392
+ .long 3422373294
+ .long 3905416403
+ .long 2092838759
+ .long 2767673597
+ .long 1246911821
+ .long 2699509489
+ .long 2549779293
+ .long 3515865511
+ .long 4185677519
+ .long 1240379898
+ .long 2493823642
+ .long 1104051682
+ .long 804591290
+ .long 2736763727
+ .long 4076387742
+ .long 2480759797
+ .long 692679989
+ .long 2208103365
+ .long 1609182581
+ .long 1178560158
+ .long 3857808189
+ .long 666552299
+ .long 1385359979
+ .long 121239434
+ .long 3218365162
+ .long 2357120316
+ .long 3420649082
+ .long 1333104599
+ .long 2770719959
+ .long 242478868
+ .long 2141763028
+ .long 419273337
+ .long 2546330868
+ .long 2666209199
+ .long 1246472623
+ .long 484957737
+ .long 4283526057
+ .long 838546674
+ .long 797694440
+ .long 1037451103
+ .long 2492945247
+ .long 969915474
+ .long 4272084818
+ .long 1677093349
+ .long 1595388880
+ .long 2074902206
+ .long 690923199
+ .long 1939830949
+ .long 4249202340
+ .long 3354186699
+ .long 3190777760
+ .long 4149804412
+ .long 1381846399
+ .long 3879661898
+ .long 4203437385
+ .long 2413406103
+ .long 2086588225
+ .long 4004641529
+ .long 2763692798
+ .long 3464356500
+ .long 4111907475
+ .long 531844911
+ .long 4173176451
+ .long 3714315762
+ .long 1232418301
+ .long 2633745705
+ .long 3928847655
+ .long 1063689823
+ .long 4051385607
+ .long 3133664229
+ .long 2464836603
+ .long 972524114
+ .long 3562728015
+ .long 2127379647
+ .long 3807803918
+ .long 1972361163
+ .long 634705910
+ .long 1945048229
+ .long 2830488734
+ .long 4254759295
+ .long 3320640540
+ .long 3944722327
+ .long 1269411821
+ .long 3890096458
+ .long 1366010173
+ .long 4214551295
+ .long 2346313785
+ .long 3594477359
+ .long 2538823642
+ .long 3485225620
+ .long 2732020347
+ .long 4134135294
+ .long 397660275
+ .long 2893987423
+ .long 782679989
+ .long 2675483945
+ .long 1169073399
+ .long 3973303293
+ .long 795320551
+ .long 1493007550
+ .long 1565359979
+ .long 1056000594
+ .long 2338146798
+ .long 3651639290
+ .long 1590641102
+ .long 2986015100
+ .long 3130719959
+ .long 2112001188
+ .long 381326301
+ .long 3008311285
+ .long 3181282204
+ .long 1677062904
+ .long 1966472623
+ .long 4224002377
+ .long 762652602
+ .long 1721655274
+ .long 2067597113
+ .long 3354125809
+ .long 3932945247
+ .long 4153037458
+ .long 1525305205
+ .long 3443310548
+ .long 4135194227
+ .long 2413284322
+ .long 3570923199
+ .long 4011107621
+ .long 3050610411
+ .long 2591653800
+ .long 3975421159
+ .long 531601349
+ .long 2846879102
+ .long 3727247947
+ .long 1806253526
+ .long 888340305
+ .long 3655875023
+ .long 1063202699
+ .long 1398790909
+ .long 3159528599
+ .long 3612507052
+ .long 1776680610
+ .long 3016782751
+ .long 2126405399
+ .long 2797581819
+ .long 2024089902
+ .long 2930046808
+ .long 3553361221
+ .long 1738598206
+ .long 4252810799
+ .long 1300196342
+ .long 4048179805
+ .long 1565126321
+ .long 2811755147
+ .long 3477196413
+ .long 4210654302
+ .long 2600392684
+ .long 3801392314
+ .long 3130252643
+ .long 1328542998
+ .long 2659425531
+ .long 4126341309
+ .long 905818072
+ .long 3307817333
+ .long 1965537991
+ .long 2657085997
+ .long 1023883767
+ .long 3957715323
+ .long 1811636145
+ .long 2320667370
+ .long 3931075983
+ .long 1019204698
+ .long 2047767535
+ .long 3620463350
+ .long 3623272290
+ .long 346367444
+ .long 3567184671
+ .long 2038409397
+ .long 4095535070
+ .long 2945959404
+ .long 2951577284
+ .long 692734889
+ .long 2839402047
+ .long 4076818795
+ .long 3896102844
+ .long 1596951513
+ .long 1608187272
+ .long 1385469779
+ .long 1383836798
+ .long 3858670295
+ .long 3497238392
+ .long 3193903027
+ .long 3216374545
+ .long 2770939558
+ .long 2767673597
+ .long 3422373294
+ .long 2699509489
+ .long 2092838759
+ .long 2137781795
+ .long 1246911821
+ .long 1240379898
+ .long 2549779293
+ .long 1104051682
+ .long 4185677519
+ .long 4275563591
+ .long 2493823642
+ .long 2480759797
+ .long 804591290
+ .long 2208103365
+ .long 4076387742
+ .long 4256159887
+ .long 692679989
+ .long 666552299
+ .long 1609182581
+ .long 121239434
+ .long 3857808189
+ .long 4217352479
+ .long 1385359979
+ .long 1333104599
+ .long 3218365162
+ .long 242478868
+ .long 3420649082
+ .long 4139737663
+ .long 2770719959
+ .long 2666209199
+ .long 2141763028
+ .long 484957737
+ .long 2546330868
+ .long 3984508030
+ .long 1246472623
+ .long 1037451103
+ .long 4283526057
+ .long 969915474
+ .long 797694440
+ .long 3674048764
+ .long 2492945247
+ .long 2074902206
+ .long 4272084818
+ .long 1939830949
+ .long 1595388880
+ .long 3053130232
+ .long 690923199
+ .long 4149804412
+ .long 4249202340
+ .long 3879661898
+ .long 3190777760
+ .long 1811293169
+ .long 1381846399
+ .long 4004641529
+ .long 4203437385
+ .long 3464356500
+ .long 2086588225
+ .long 3622586339
+ .long 2763692798
+ .long 3714315762
+ .long 4111907475
+ .long 2633745705
+ .long 4173176451
+ .long 2950205382
+ .long 1232418301
+ .long 3133664229
+ .long 3928847655
+ .long 972524114
+ .long 4051385607
+ .long 1605443469
+ .long 2464836603
+ .long 1972361163
+ .long 3562728015
+ .long 1945048229
+ .long 3807803918
+ .long 3210886938
+ .long 634705910
+ .long 3944722327
+ .long 2830488734
+ .long 3890096458
+ .long 3320640540
+ .long 2126806581
+ .long 1269411821
+ .long 3594477359
+ .long 1366010173
+ .long 3485225620
+ .long 2346313785
+ .long 4253613162
+ .long 2538823642
+ .long 2893987423
+ .long 2732020347
+ .long 2675483945
+ .long 397660275
+ .long 4212259029
+ .long 782679989
+ .long 1493007550
+ .long 1169073399
+ .long 1056000594
+ .long 795320551
+ .long 4129550763
+ .long 1565359979
+ .long 2986015100
+ .long 2338146798
+ .long 2112001188
+ .long 1590641102
+ .long 3964134231
+ .long 3130719959
+ .long 1677062904
+ .long 381326301
+ .long 4224002377
+ .long 3181282204
+ .long 3633301166
+ .long 1966472623
+ .long 3354125809
+ .long 762652602
+ .long 4153037458
+ .long 2067597113
+ .long 2971635037
+ .long 3932945247
+ .long 2413284322
+ .long 1525305205
+ .long 4011107621
+ .long 4135194227
+ .long 1648302778
+ .long 3570923199
+ .long 531601349
+ .long 3050610411
+ .long 3727247947
+ .long 3975421159
+ .long 3296605556
+ .long 2846879102
+ .long 1063202699
+ .long 1806253526
+ .long 3159528599
+ .long 3655875023
+ .long 2298243816
+ .long 1398790909
+ .long 2126405399
+ .long 3612507052
+ .long 2024089902
+ .long 3016782751
+ .long 301520336
+ .long 2797581819
+ .long 4252810799
+ .long 2930046808
+ .long 4048179805
+ .long 1738598206
+ .long 603040673
+ .long 1300196342
+ .long 4210654302
+ .long 1565126321
+ .long 3801392314
+ .long 3477196413
+ .long 1206081346
+ .long 2600392684
+ .long 4126341309
+ .long 3130252643
+ .long 3307817333
+ .long 2659425531
+ .long 2412162692
+ .long 905818072
+ .long 3957715323
+ .long 1965537991
+ .long 2320667370
+ .long 1023883767
+ .long 529358088
+ .long 1811636145
+ .long 3620463350
+ .long 3931075983
+ .long 346367444
+ .long 2047767535
+ .long 1058716176
+ .long 3623272290
+ .long 2945959404
+ .long 3567184671
+ .long 692734889
+ .long 4095535070
+ .long 2117432353
+ .long 2951577284
+ .long 1596951513
+ .long 2839402047
+ .long 1385469779
+ .long 3896102844
+ .long 4234864706
+ .long 1608187272
+ .long 3193903027
+ .long 1383836798
+ .long 2770939558
+ .long 3497238392
+ .long 4174762117
+ .long 3216374545
+ .long 2092838759
+ .long 2767673597
+ .long 1246911821
+ .long 2699509489
+ .long 4054556938
+ .long 2137781795
+ .long 4185677519
+ .long 1240379898
+ .long 2493823642
+ .long 1104051682
+ .long 3814146581
+ .long 4275563591
+ .long 4076387742
+ .long 2480759797
+ .long 692679989
+ .long 2208103365
+ .long 3333325867
+ .long 4256159887
+ .long 3857808189
+ .long 666552299
+ .long 1385359979
+ .long 121239434
+ .long 2371684438
+ .long 4217352479
+ .long 3420649082
+ .long 1333104599
+ .long 2770719959
+ .long 242478868
+ .long 448401580
+ .long 4139737663
+ .long 2546330868
+ .long 2666209199
+ .long 1246472623
+ .long 484957737
+ .long 896803160
+ .long 3984508030
+ .type __svml_dcos_reduction_data_internal,@object
+ .size __svml_dcos_reduction_data_internal,49152
+ .space 512, 0x00
+ .align 8
+.L_2il0floatpacket.28:
+ .long 0xffffffff,0xffffffff
+ .type .L_2il0floatpacket.28,@object
+ .size .L_2il0floatpacket.28,8
+ .align 8
+.L_2il0floatpacket.29:
+ .long 0x00000000,0x7ff00000
+ .type .L_2il0floatpacket.29,@object
+ .size .L_2il0floatpacket.29,8
+ .align 8
+.L_2il0floatpacket.30:
+ .long 0xffffffff,0x000fffff
+ .type .L_2il0floatpacket.30,@object
+ .size .L_2il0floatpacket.30,8
+ .align 8
+.L_2il0floatpacket.31:
+ .long 0x00000000,0x00100000
+ .type .L_2il0floatpacket.31,@object
+ .size .L_2il0floatpacket.31,8
+ .align 8
+.L_2il0floatpacket.32:
+ .long 0xffffffff,0x00000000
+ .type .L_2il0floatpacket.32,@object
+ .size .L_2il0floatpacket.32,8
+ .align 8
+.L_2il0floatpacket.33:
+ .long 0x00000000,0x80000000
+ .type .L_2il0floatpacket.33,@object
+ .size .L_2il0floatpacket.33,8
+ .align 8
+.L_2il0floatpacket.34:
+ .long 0x00000000,0x3ff00000
+ .type .L_2il0floatpacket.34,@object
+ .size .L_2il0floatpacket.34,8
+ .align 8
+.L_2il0floatpacket.35:
+ .long 0x00000000,0x42a80000
+ .type .L_2il0floatpacket.35,@object
+ .size .L_2il0floatpacket.35,8
+ .align 8
+.L_2il0floatpacket.36:
+ .long 0x000001ff,0x00000000
+ .type .L_2il0floatpacket.36,@object
+ .size .L_2il0floatpacket.36,8
+ .align 8
+.L_2il0floatpacket.37:
+ .long 0x00000000,0x39700000
+ .type .L_2il0floatpacket.37,@object
+ .size .L_2il0floatpacket.37,8
+ .align 8
+.L_2il0floatpacket.38:
+ .long 0x00ffffff,0x00000000
+ .type .L_2il0floatpacket.38,@object
+ .size .L_2il0floatpacket.38,8
+ .align 8
+.L_2il0floatpacket.39:
+ .long 0x00000000,0x3cb00000
+ .type .L_2il0floatpacket.39,@object
+ .size .L_2il0floatpacket.39,8
+ .align 8
+.L_2il0floatpacket.40:
+ .long 0x00000fff,0x00000000
+ .type .L_2il0floatpacket.40,@object
+ .size .L_2il0floatpacket.40,8
+ .align 8
+.L_2il0floatpacket.41:
+ .long 0x54442d18,0x401921fb
+ .type .L_2il0floatpacket.41,@object
+ .size .L_2il0floatpacket.41,8
+ .align 8
+.L_2il0floatpacket.42:
+ .long 0x33145c07,0x3cb1a626
+ .type .L_2il0floatpacket.42,@object
+ .size .L_2il0floatpacket.42,8
+ .align 8
+.L_2il0floatpacket.43:
+ .long 0xffffffff,0x7fffffff
+ .type .L_2il0floatpacket.43,@object
+ .size .L_2il0floatpacket.43,8
+ .align 8
+.L_2il0floatpacket.44:
+ .long 0x00000000,0x3eb00000
+ .type .L_2il0floatpacket.44,@object
+ .size .L_2il0floatpacket.44,8
+ .align 8
+__dcos_la_CoutTab:
+ .long 0
+ .long 0
+ .long 0
+ .long 2146435072
+ .type __dcos_la_CoutTab,@object
+ .size __dcos_la_CoutTab,16
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * 1) Range reduction to [-Pi/2; +Pi/2] interval
+ * a) We remove sign using AND operation
+ * b) Add Pi/2 value to argument X for Cos to Sin transformation
+ * c) Getting octant Y by 1/Pi multiplication
+ * d) Add "Right Shifter" value
+ * e) Treat obtained value as integer for destination sign setting.
+ * Shift first bit of this value to the last (sign) position
+ * f) Subtract "Right Shifter" value
+ * g) Subtract 0.5 from result for octant correction
+ * h) Subtract Y*PI from X argument, where PI divided to 4 parts:
+ * X = X - Y*PI1 - Y*PI2 - Y*PI3 - Y*PI4;
+ * 2) Polynomial (minimax for sin within [-Pi/2; +Pi/2] interval)
+ * a) Calculate X^2 = X * X
+ * b) Calculate polynomial:
+ * R = X + X * X^2 * (A3 + x^2 * (A5 + .....
+ * 3) Destination sign setting
+ * a) Set shifted destination sign using XOR operation:
+ * R = XOR( R, S );
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_cosf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_cosf16
+
+__svml_cosf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ xorl %edx, %edx
+ vmovaps %zmm0, %zmm11
+ vmovups 5568+__svml_scos_data_internal(%rip), %zmm0
+ vmovups 5504+__svml_scos_data_internal(%rip), %zmm4
+ vmovups 5440+__svml_scos_data_internal(%rip), %zmm3
+ vmovups 5632+__svml_scos_data_internal(%rip), %zmm6
+ vmovups 4800+__svml_scos_data_internal(%rip), %zmm9
+ vmovups 4864+__svml_scos_data_internal(%rip), %zmm7
+ vmovups 4928+__svml_scos_data_internal(%rip), %zmm8
+ vmovups 5376+__svml_scos_data_internal(%rip), %zmm14
+ vmovups 5248+__svml_scos_data_internal(%rip), %zmm15
+
+/*
+ * Check for large and special arguments
+ * VAND( S, sAX, _VARG1, sAbsMask );
+ */
+ vmovups 4160+__svml_scos_data_internal(%rip), %zmm10
+ vandps 4096+__svml_scos_data_internal(%rip), %zmm11, %zmm2
+
+/* b) Add Pi/2 value to argument X for Cos to Sin transformation */
+ vaddps {rn-sae}, %zmm0, %zmm2, %zmm1
+ vcmpps $18, {sae}, %zmm10, %zmm2, %k1
+
+/* _VARG1 near 0 */
+ vcmpps $0, {sae}, %zmm0, %zmm1, %k2
+
+/*
+ * 1) Range reduction to [-Pi/2; +Pi/2] interval
+ * c) Getting octant Y by 1/Pi multiplication
+ * d) Add "Right Shifter" (0x4B000000) value
+ */
+ vfmadd213ps {rn-sae}, %zmm4, %zmm1, %zmm3
+ vpternlogd $255, %zmm10, %zmm10, %zmm10
+
+/* f) Subtract "Right Shifter" (0x4B000000) value */
+ vsubps {rn-sae}, %zmm4, %zmm3, %zmm5
+
+/*
+ * e) Treat obtained value as integer for destination sign setting.
+ * Shift first bit of this value to the last (sign) position (S << 31)
+ */
+ vpslld $31, %zmm3, %zmm13
+
+/* g) Subtract 0.5 from result for octant correction */
+ vsubps {rn-sae}, %zmm6, %zmm5, %zmm12
+ vmovups 5312+__svml_scos_data_internal(%rip), %zmm5
+
+/*
+ * h) Subtract Y*PI from X argument, where PI divided to 4 parts:
+ * X = X - Y*PI1 - Y*PI2 - Y*PI3
+ */
+ vfnmadd213ps {rn-sae}, %zmm2, %zmm12, %zmm9
+ vfnmadd231ps {rn-sae}, %zmm12, %zmm7, %zmm9
+ vfnmadd213ps {rn-sae}, %zmm9, %zmm8, %zmm12
+
+/* a) Calculate X^2 = X * X */
+ vmulps {rn-sae}, %zmm12, %zmm12, %zmm3
+
+/*
+ * 3) Destination sign setting
+ * a) Set shifted destination sign using XOR operation:
+ * R = XOR( R, S );
+ */
+ vxorps %zmm13, %zmm12, %zmm4
+
+/*
+ * b) Calculate polynomial:
+ * R = X + X * X^2 * (A3 + x^2 * (A5 + x^2 * (A7 + x^2 * (A9))));
+ */
+ vfmadd231ps {rn-sae}, %zmm3, %zmm14, %zmm5
+ vmovups 4992+__svml_scos_data_internal(%rip), %zmm14
+ vfmadd213ps {rn-sae}, %zmm15, %zmm3, %zmm5
+ vmulps {rn-sae}, %zmm4, %zmm3, %zmm15
+ vfmadd213ps {rn-sae}, %zmm14, %zmm3, %zmm5
+ vfmadd213ps {rn-sae}, %zmm4, %zmm15, %zmm5
+
+/* result=1.0 if arg. near 0 */
+ vblendmps 5696+__svml_scos_data_internal(%rip), %zmm5, %zmm0{%k2}
+ vpandnd %zmm2, %zmm2, %zmm10{%k1}
+ vptestmd %zmm10, %zmm10, %k0
+ kortestw %k0, %k0
+ jne .LBL_1_12
+
+.LBL_1_2:
+
+ testl %edx, %edx
+ jne .LBL_1_4
+
+.LBL_1_3:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_4:
+
+ vmovups %zmm11, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_3
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_8:
+
+ btl %r12d, %r13d
+ jc .LBL_1_11
+
+.LBL_1_9:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_8
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_3
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_11:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_scos_cout_rare_internal
+ jmp .LBL_1_9
+ .cfi_restore 4
+ .cfi_restore 5
+ .cfi_restore 12
+ .cfi_restore 13
+ .cfi_restore 122
+ .cfi_restore 123
+ .cfi_restore 124
+ .cfi_restore 125
+
+.LBL_1_12:
+
+ vmovups 4224+__svml_scos_data_internal(%rip), %zmm6
+
+/*
+ * Get the (2^a / 2pi) mod 1 values from the table.
+ * Because VLANG doesn't have I-type gather, we need a trivial cast
+ */
+ lea __svml_scos_reduction_data_internal(%rip), %rax
+ vmovups %zmm0, (%rsp)
+ vpternlogd $255, %zmm7, %zmm7, %zmm7
+ vandps %zmm2, %zmm6, %zmm4
+ vcmpps $4, {sae}, %zmm6, %zmm4, %k1
+
+/* ..................... Table look-up ........................ */
+ lea __svml_scos_data_internal(%rip), %rcx
+
+/*
+ * Break the P_xxx and m into 16-bit chunks ready for
+ * the long multiplication via 16x16->32 multiplications
+ */
+ vmovups .L_2il0floatpacket.27(%rip), %zmm6
+ vpandd .L_2il0floatpacket.24(%rip), %zmm11, %zmm1
+ vpsrld $23, %zmm1, %zmm8
+ vpslld $1, %zmm8, %zmm12
+ vpaddd %zmm8, %zmm12, %zmm2
+ vpslld $2, %zmm2, %zmm5
+ vpandnd %zmm4, %zmm4, %zmm7{%k1}
+ vptestmd %zmm7, %zmm7, %k0
+ kxnorw %k0, %k0, %k2
+ kxnorw %k0, %k0, %k3
+ kxnorw %k0, %k0, %k1
+ kmovw %k0, %edx
+ vpxord %zmm4, %zmm4, %zmm4
+ vpxord %zmm7, %zmm7, %zmm7
+ vpxord %zmm14, %zmm14, %zmm14
+ vgatherdps (%rax,%zmm5), %zmm4{%k2}
+ vgatherdps 4(%rax,%zmm5), %zmm7{%k3}
+ vgatherdps 8(%rax,%zmm5), %zmm14{%k1}
+ vpsrld $16, %zmm4, %zmm9
+ vpsrld $16, %zmm7, %zmm15
+ vpsrld $16, %zmm14, %zmm13
+ kxnorw %k0, %k0, %k1
+
+/*
+ * Also get the significand as an integer
+ * NB: adding in the integer bit is wrong for denorms!
+ * To make this work for denorms we should do something slightly different
+ */
+ vpandd .L_2il0floatpacket.25(%rip), %zmm11, %zmm3
+ vpaddd .L_2il0floatpacket.26(%rip), %zmm3, %zmm1
+ vpsrld $16, %zmm1, %zmm8
+ vpandd %zmm6, %zmm14, %zmm5
+ vpandd %zmm6, %zmm1, %zmm14
+ vpandd %zmm6, %zmm7, %zmm12
+ vpmulld %zmm15, %zmm8, %zmm3
+ vpmulld %zmm9, %zmm14, %zmm7
+ vpmulld %zmm15, %zmm14, %zmm9
+ vpmulld %zmm13, %zmm14, %zmm15
+ vpmulld %zmm13, %zmm8, %zmm1
+ vpsrld $16, %zmm15, %zmm13
+ vpsrld $16, %zmm9, %zmm15
+ vpaddd %zmm13, %zmm1, %zmm1
+ vpandd %zmm6, %zmm4, %zmm0
+
+/* Now do the big multiplication and carry propagation */
+ vpmulld %zmm0, %zmm8, %zmm4
+ vpmulld %zmm12, %zmm8, %zmm2
+ vpmulld %zmm5, %zmm8, %zmm8
+ vpmulld %zmm0, %zmm14, %zmm5
+ vpmulld %zmm12, %zmm14, %zmm0
+ vpsrld $16, %zmm0, %zmm14
+ vpsrld $16, %zmm5, %zmm12
+ vpsrld $16, %zmm8, %zmm8
+ vpaddd %zmm14, %zmm2, %zmm13
+ vpaddd %zmm15, %zmm3, %zmm14
+ vpaddd %zmm12, %zmm4, %zmm3
+ vpandd %zmm6, %zmm0, %zmm0
+ vpandd %zmm6, %zmm5, %zmm12
+ vpaddd %zmm1, %zmm0, %zmm5
+ vpaddd %zmm14, %zmm12, %zmm0
+ vpaddd %zmm5, %zmm8, %zmm15
+ vpandd %zmm6, %zmm7, %zmm2
+ vpaddd %zmm3, %zmm2, %zmm14
+ vpsrld $16, %zmm15, %zmm3
+ vpandd %zmm6, %zmm9, %zmm9
+ vpaddd %zmm13, %zmm9, %zmm9
+ vpaddd %zmm9, %zmm3, %zmm12
+ vpsrld $16, %zmm12, %zmm4
+ vpslld $16, %zmm12, %zmm2
+ vpaddd %zmm0, %zmm4, %zmm13
+
+/*
+ * Now round at the 2^-8 bit position for reduction mod pi/2^7
+ * instead of the original 2pi (but still with the same 2pi scaling).
+ * Use a shifter of 2^15 + 2^14.
+ * The N we get is our final version; it has an offset of
+ * 2^8 because of the implicit integer bit, and anyway for negative
+ * starting value it's a 2s complement thing. But we need to mask
+ * off the exponent part anyway so it's fine.
+ */
+ vmovups .L_2il0floatpacket.30(%rip), %zmm4
+ vpsrld $16, %zmm13, %zmm7
+ vpaddd %zmm14, %zmm7, %zmm1
+
+/* Assemble reduced argument from the pieces */
+ vpandd %zmm6, %zmm15, %zmm3
+ vpandd %zmm6, %zmm13, %zmm8
+ vpslld $16, %zmm1, %zmm6
+ vpaddd %zmm8, %zmm6, %zmm5
+ vpaddd %zmm3, %zmm2, %zmm8
+ vpsrld $9, %zmm5, %zmm9
+
+/*
+ * We want to incorporate the original sign now too.
+ * Do it here for convenience in getting the right N value,
+ * though we could wait right to the end if we were prepared
+ * to modify the sign of N later too.
+ * So get the appropriate sign mask now (or sooner).
+ */
+ vpandd .L_2il0floatpacket.28(%rip), %zmm11, %zmm2
+
+/*
+ * Create floating-point high part, implicitly adding integer bit 1
+ * Incorporate overall sign at this stage too.
+ */
+ vpxord .L_2il0floatpacket.29(%rip), %zmm2, %zmm6
+ vpord %zmm6, %zmm9, %zmm0
+ vaddps {rn-sae}, %zmm0, %zmm4, %zmm14
+ vsubps {rn-sae}, %zmm4, %zmm14, %zmm7
+ vsubps {rn-sae}, %zmm7, %zmm0, %zmm13
+ vpternlogd $255, %zmm0, %zmm0, %zmm0
+ vpandd .L_2il0floatpacket.33(%rip), %zmm8, %zmm15
+ vpandd .L_2il0floatpacket.35(%rip), %zmm5, %zmm5
+
+/*
+ * Create floating-point low and medium parts, respectively
+ * lo_17, ... lo_0, 0, ..., 0
+ * hi_8, ... hi_0, lo_31, ..., lo_18
+ * then subtract off the implicitly added integer bits,
+ * 2^-46 and 2^-23, respectively.
+ * Put the original sign into all of them at this stage.
+ */
+ vpxord .L_2il0floatpacket.32(%rip), %zmm2, %zmm3
+ vpslld $5, %zmm15, %zmm1
+ vpsrld $18, %zmm8, %zmm8
+ vpxord .L_2il0floatpacket.34(%rip), %zmm2, %zmm9
+ vpslld $14, %zmm5, %zmm2
+ vpord %zmm3, %zmm1, %zmm12
+ vpord %zmm8, %zmm2, %zmm5
+ vsubps {rn-sae}, %zmm3, %zmm12, %zmm15
+ vmovups .L_2il0floatpacket.37(%rip), %zmm2
+ vpord %zmm9, %zmm5, %zmm3
+ vsubps {rn-sae}, %zmm9, %zmm3, %zmm6
+
+/*
+ * Now multiply those numbers all by 2 pi, reasonably accurately.
+ * (RHi + RLo) * (pi_lead + pi_trail) ~=
+ * RHi * pi_lead + (RHi * pi_trail + RLo * pi_lead)
+ */
+ vmovups .L_2il0floatpacket.36(%rip), %zmm5
+
+/*
+ * If the magnitude of the input is <= 2^-20, then
+ * just pass through the input, since no reduction will be needed and
+ * the main path will only work accurately if the reduced argument is
+ * about >= 2^-40 (which it is for all large pi multiples)
+ */
+ vmovups .L_2il0floatpacket.39(%rip), %zmm9
+
+/* Now add them up into 2 reasonably aligned pieces */
+ vaddps {rn-sae}, %zmm6, %zmm13, %zmm4
+ vsubps {rn-sae}, %zmm4, %zmm13, %zmm13
+ vmulps {rn-sae}, %zmm5, %zmm4, %zmm7
+ vaddps {rn-sae}, %zmm13, %zmm6, %zmm8
+ vandps .L_2il0floatpacket.38(%rip), %zmm11, %zmm6
+ vaddps {rn-sae}, %zmm15, %zmm8, %zmm8
+ vpternlogd $255, %zmm15, %zmm15, %zmm15
+ vcmpps $22, {sae}, %zmm9, %zmm6, %k3
+ vcmpps $26, {sae}, %zmm9, %zmm6, %k2
+ vmovaps %zmm5, %zmm3
+ vfmsub213ps {rn-sae}, %zmm7, %zmm4, %zmm3
+ vfmadd213ps {rn-sae}, %zmm3, %zmm2, %zmm4
+ vfmadd213ps {rn-sae}, %zmm4, %zmm5, %zmm8
+
+/* Grab our final N value as an integer, appropriately masked mod 2^8 */
+ vpandd .L_2il0floatpacket.31(%rip), %zmm14, %zmm14
+ vpslld $4, %zmm14, %zmm13
+ vpandnd %zmm6, %zmm6, %zmm0{%k3}
+ vandps %zmm11, %zmm0, %zmm1
+ kxnorw %k0, %k0, %k3
+ vpxord %zmm0, %zmm0, %zmm0
+ vgatherdps (%rcx,%zmm13), %zmm0{%k1}
+ kxnorw %k0, %k0, %k1
+ vpandnd %zmm6, %zmm6, %zmm15{%k2}
+ kxnorw %k0, %k0, %k2
+ vandps %zmm7, %zmm15, %zmm12
+ vandps %zmm8, %zmm15, %zmm3
+ vorps %zmm12, %zmm1, %zmm2
+
+/* ............... Polynomial approximation ................... */
+ vmovups 4352+__svml_scos_data_internal(%rip), %zmm12
+
+/*
+ * The output is _VRES_R (high) + _VRES_E (low), and the integer part is _VRES_IND
+ * Set sRp2 = _VRES_R^2 and then resume the original code.
+ */
+ vmulps {rn-sae}, %zmm2, %zmm2, %zmm4
+
+/* ................. Reconstruction: res_hi ................... */
+ vmovaps %zmm2, %zmm14
+ vmovaps %zmm2, %zmm8
+ vpxord %zmm9, %zmm9, %zmm9
+ vpxord %zmm7, %zmm7, %zmm7
+ vgatherdps 4(%rcx,%zmm13), %zmm9{%k2}
+ vgatherdps 12(%rcx,%zmm13), %zmm7{%k1}
+ vfmadd213ps {rn-sae}, %zmm9, %zmm7, %zmm14
+ vaddps {rn-sae}, %zmm7, %zmm0, %zmm15
+ vfmadd132ps {rn-sae}, %zmm0, %zmm14, %zmm8
+ vsubps {rn-sae}, %zmm14, %zmm9, %zmm1
+ vsubps {rn-sae}, %zmm8, %zmm14, %zmm6
+ vfmadd231ps {rn-sae}, %zmm2, %zmm7, %zmm1
+ vmovups 4416+__svml_scos_data_internal(%rip), %zmm7
+ vfmadd231ps {rn-sae}, %zmm0, %zmm2, %zmm6
+ vmovups 4480+__svml_scos_data_internal(%rip), %zmm0
+ vaddps {rn-sae}, %zmm1, %zmm6, %zmm6
+ vfmadd231ps {rn-sae}, %zmm4, %zmm0, %zmm7
+ vpxord %zmm5, %zmm5, %zmm5
+ vgatherdps 8(%rcx,%zmm13), %zmm5{%k3}
+ vmovups 4288+__svml_scos_data_internal(%rip), %zmm13
+ vfmadd231ps {rn-sae}, %zmm4, %zmm12, %zmm13
+ vmulps {rn-sae}, %zmm4, %zmm13, %zmm14
+ vmulps {rn-sae}, %zmm4, %zmm7, %zmm4
+ vmulps {rn-sae}, %zmm2, %zmm14, %zmm1
+
+/* .......... Reconstruction: res_lo=corr+polS+polC+res_lo0 ...... */
+ vfnmadd213ps {rn-sae}, %zmm15, %zmm9, %zmm2
+ vfmadd213ps {rn-sae}, %zmm5, %zmm2, %zmm3
+ vfmadd213ps {rn-sae}, %zmm6, %zmm2, %zmm1
+ vfmadd213ps {rn-sae}, %zmm3, %zmm9, %zmm4
+ vaddps {rn-sae}, %zmm1, %zmm4, %zmm2
+
+/* .................. Final reconstruction ................... */
+ vaddps {rn-sae}, %zmm2, %zmm8, %zmm3
+
+/*
+ * ----------------------------------------------------------
+ * End of large arguments path
+ * ----------------------------------------------------------
+ * Merge results from main and large paths:
+ */
+ vpandnd (%rsp), %zmm10, %zmm5
+ vpandd %zmm10, %zmm3, %zmm10
+ vpord %zmm10, %zmm5, %zmm0
+ jmp .LBL_1_2
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_cosf16,@function
+ .size __svml_cosf16,.-__svml_cosf16
+..LN__svml_cosf16.0:
+
+.L_2__routine_start___svml_scos_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_scos_cout_rare_internal:
+
+
+ .cfi_startproc
+..L63:
+
+ movl (%rdi), %edx
+ movzwl 2(%rdi), %eax
+ movl %edx, -8(%rsp)
+ andl $32640, %eax
+ shrl $24, %edx
+ andl $127, %edx
+ cmpl $32640, %eax
+ jne .LBL_2_6
+
+
+ movb %dl, -5(%rsp)
+ cmpl $2139095040, -8(%rsp)
+ jne .LBL_2_4
+
+
+ movss (%rdi), %xmm0
+ movl $1, %eax
+ mulss __scos_la__vmlsCosCoutTab(%rip), %xmm0
+ movss %xmm0, (%rsi)
+ ret
+
+.LBL_2_4:
+
+ movss (%rdi), %xmm0
+ xorl %eax, %eax
+ mulss (%rdi), %xmm0
+ movss %xmm0, (%rsi)
+
+
+ ret
+
+.LBL_2_6:
+
+ xorl %eax, %eax
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_scos_cout_rare_internal,@function
+ .size __svml_scos_cout_rare_internal,.-__svml_scos_cout_rare_internal
+..LN__svml_scos_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+.L_2il0floatpacket.24:
+ .long 0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000
+ .type .L_2il0floatpacket.24,@object
+ .size .L_2il0floatpacket.24,64
+ .align 64
+.L_2il0floatpacket.25:
+ .long 0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff
+ .type .L_2il0floatpacket.25,@object
+ .size .L_2il0floatpacket.25,64
+ .align 64
+.L_2il0floatpacket.26:
+ .long 0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000
+ .type .L_2il0floatpacket.26,@object
+ .size .L_2il0floatpacket.26,64
+ .align 64
+.L_2il0floatpacket.27:
+ .long 0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff
+ .type .L_2il0floatpacket.27,@object
+ .size .L_2il0floatpacket.27,64
+ .align 64
+.L_2il0floatpacket.28:
+ .long 0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000
+ .type .L_2il0floatpacket.28,@object
+ .size .L_2il0floatpacket.28,64
+ .align 64
+.L_2il0floatpacket.29:
+ .long 0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000
+ .type .L_2il0floatpacket.29,@object
+ .size .L_2il0floatpacket.29,64
+ .align 64
+.L_2il0floatpacket.30:
+ .long 0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000
+ .type .L_2il0floatpacket.30,@object
+ .size .L_2il0floatpacket.30,64
+ .align 64
+.L_2il0floatpacket.31:
+ .long 0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff
+ .type .L_2il0floatpacket.31,@object
+ .size .L_2il0floatpacket.31,64
+ .align 64
+.L_2il0floatpacket.32:
+ .long 0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000
+ .type .L_2il0floatpacket.32,@object
+ .size .L_2il0floatpacket.32,64
+ .align 64
+.L_2il0floatpacket.33:
+ .long 0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff
+ .type .L_2il0floatpacket.33,@object
+ .size .L_2il0floatpacket.33,64
+ .align 64
+.L_2il0floatpacket.34:
+ .long 0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000
+ .type .L_2il0floatpacket.34,@object
+ .size .L_2il0floatpacket.34,64
+ .align 64
+.L_2il0floatpacket.35:
+ .long 0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff
+ .type .L_2il0floatpacket.35,@object
+ .size .L_2il0floatpacket.35,64
+ .align 64
+.L_2il0floatpacket.36:
+ .long 0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb
+ .type .L_2il0floatpacket.36,@object
+ .size .L_2il0floatpacket.36,64
+ .align 64
+.L_2il0floatpacket.37:
+ .long 0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e
+ .type .L_2il0floatpacket.37,@object
+ .size .L_2il0floatpacket.37,64
+ .align 64
+.L_2il0floatpacket.38:
+ .long 0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff
+ .type .L_2il0floatpacket.38,@object
+ .size .L_2il0floatpacket.38,64
+ .align 64
+.L_2il0floatpacket.39:
+ .long 0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000
+ .type .L_2il0floatpacket.39,@object
+ .size .L_2il0floatpacket.39,64
+ .align 64
+__svml_scos_data_internal:
+ .long 0
+ .long 1065353216
+ .long 0
+ .long 0
+ .long 1004262721
+ .long 1065348163
+ .long 814009613
+ .long 3170893824
+ .long 1012667202
+ .long 1065333007
+ .long 836655967
+ .long 3179282432
+ .long 3157608485
+ .long 1065307757
+ .long 852498564
+ .long 3179282432
+ .long 1021119272
+ .long 1065272429
+ .long 838093129
+ .long 3187671040
+ .long 992588201
+ .long 1065227044
+ .long 3002197507
+ .long 3187671040
+ .long 3165783068
+ .long 1065171628
+ .long 2969000681
+ .long 3187671040
+ .long 3174843017
+ .long 1065106216
+ .long 2989610635
+ .long 3187671040
+ .long 1029761272
+ .long 1065030846
+ .long 855602635
+ .long 3196059648
+ .long 1023221605
+ .long 1064945565
+ .long 851856985
+ .long 3196059648
+ .long 1004930693
+ .long 1064850424
+ .long 2987244005
+ .long 3196059648
+ .long 3163089201
+ .long 1064745479
+ .long 846006572
+ .long 3196059648
+ .long 3173319052
+ .long 1064630795
+ .long 2996018466
+ .long 3196059648
+ .long 3179441043
+ .long 1064506439
+ .long 851742225
+ .long 3196059648
+ .long 3182555983
+ .long 1064372488
+ .long 840880349
+ .long 3196059648
+ .long 1041201069
+ .long 1064229022
+ .long 2995991516
+ .long 3204448256
+ .long 1039156139
+ .long 1064076126
+ .long 854796500
+ .long 3204448256
+ .long 1036128472
+ .long 1063913895
+ .long 3001754476
+ .long 3204448256
+ .long 1033133567
+ .long 1063742424
+ .long 2998678409
+ .long 3204448256
+ .long 1028547674
+ .long 1063561817
+ .long 823789818
+ .long 3204448256
+ .long 1021989220
+ .long 1063372184
+ .long 3001545765
+ .long 3204448256
+ .long 1005106760
+ .long 1063173637
+ .long 851900755
+ .long 3204448256
+ .long 3160870706
+ .long 1062966298
+ .long 841166280
+ .long 3204448256
+ .long 3171899818
+ .long 1062750291
+ .long 2994560960
+ .long 3204448256
+ .long 3177422237
+ .long 1062525745
+ .long 848357914
+ .long 3204448256
+ .long 3181068627
+ .long 1062292797
+ .long 806113028
+ .long 3204448256
+ .long 3183738367
+ .long 1062051586
+ .long 847147240
+ .long 3204448256
+ .long 3186359946
+ .long 1061802258
+ .long 848897600
+ .long 3204448256
+ .long 3188301413
+ .long 1061544963
+ .long 850481524
+ .long 3204448256
+ .long 3189561687
+ .long 1061279856
+ .long 851442039
+ .long 3204448256
+ .long 3190795559
+ .long 1061007097
+ .long 832220140
+ .long 3204448256
+ .long 3192002283
+ .long 1060726850
+ .long 2994798599
+ .long 3204448256
+ .long 1050015258
+ .long 1060439283
+ .long 844097402
+ .long 3212836864
+ .long 1049440125
+ .long 1060144571
+ .long 2997759282
+ .long 3212836864
+ .long 1048879630
+ .long 1059842890
+ .long 2998350134
+ .long 3212836864
+ .long 1048092223
+ .long 1059534422
+ .long 2986574659
+ .long 3212836864
+ .long 1047031795
+ .long 1059219353
+ .long 841032635
+ .long 3212836864
+ .long 1046002615
+ .long 1058897873
+ .long 848430348
+ .long 3212836864
+ .long 1045005303
+ .long 1058570176
+ .long 2982650867
+ .long 3212836864
+ .long 1044040460
+ .long 1058236458
+ .long 852349230
+ .long 3212836864
+ .long 1043108667
+ .long 1057896922
+ .long 2991207143
+ .long 3212836864
+ .long 1042210485
+ .long 1057551771
+ .long 2998815566
+ .long 3212836864
+ .long 1041346455
+ .long 1057201213
+ .long 2992349186
+ .long 3212836864
+ .long 1040517098
+ .long 1056726311
+ .long 2978016425
+ .long 3212836864
+ .long 1039258436
+ .long 1056004842
+ .long 2986287417
+ .long 3212836864
+ .long 1037741368
+ .long 1055273845
+ .long 2983839604
+ .long 3212836864
+ .long 1036296515
+ .long 1054533760
+ .long 840832460
+ .long 3212836864
+ .long 1034924748
+ .long 1053785034
+ .long 829045603
+ .long 3212836864
+ .long 1033626892
+ .long 1053028117
+ .long 836097324
+ .long 3212836864
+ .long 1032403730
+ .long 1052263466
+ .long 2993707942
+ .long 3212836864
+ .long 1030713214
+ .long 1051491540
+ .long 2988789250
+ .long 3212836864
+ .long 1028569994
+ .long 1050712805
+ .long 2990442912
+ .long 3212836864
+ .long 1026580309
+ .long 1049927729
+ .long 846027248
+ .long 3212836864
+ .long 1024745356
+ .long 1049136787
+ .long 824999326
+ .long 3212836864
+ .long 1022722308
+ .long 1048104908
+ .long 2971391005
+ .long 3212836864
+ .long 1019677780
+ .long 1046502419
+ .long 833086710
+ .long 3212836864
+ .long 1016948784
+ .long 1044891074
+ .long 2967836285
+ .long 3212836864
+ .long 1014052363
+ .long 1043271842
+ .long 823224313
+ .long 3212836864
+ .long 1009865986
+ .long 1041645699
+ .long 837346836
+ .long 3212836864
+ .long 1006005820
+ .long 1039839859
+ .long 2970970319
+ .long 3212836864
+ .long 1000196465
+ .long 1036565814
+ .long 2960495349
+ .long 3212836864
+ .long 993104536
+ .long 1033283845
+ .long 2975014497
+ .long 3212836864
+ .long 983425480
+ .long 1028193072
+ .long 2968461951
+ .long 3212836864
+ .long 966649823
+ .long 1019808432
+ .long 2953169304
+ .long 3212836864
+ .long 0
+ .long 0
+ .long 0
+ .long 3212836864
+ .long 966649823
+ .long 3167292080
+ .long 805685656
+ .long 3212836864
+ .long 983425480
+ .long 3175676720
+ .long 820978303
+ .long 3212836864
+ .long 993104536
+ .long 3180767493
+ .long 827530849
+ .long 3212836864
+ .long 1000196465
+ .long 3184049462
+ .long 813011701
+ .long 3212836864
+ .long 1006005820
+ .long 3187323507
+ .long 823486671
+ .long 3212836864
+ .long 1009865986
+ .long 3189129347
+ .long 2984830484
+ .long 3212836864
+ .long 1014052363
+ .long 3190755490
+ .long 2970707961
+ .long 3212836864
+ .long 1016948784
+ .long 3192374722
+ .long 820352637
+ .long 3212836864
+ .long 1019677780
+ .long 3193986067
+ .long 2980570358
+ .long 3212836864
+ .long 1022722308
+ .long 3195588556
+ .long 823907357
+ .long 3212836864
+ .long 1024745356
+ .long 3196620435
+ .long 2972482974
+ .long 3212836864
+ .long 1026580309
+ .long 3197411377
+ .long 2993510896
+ .long 3212836864
+ .long 1028569994
+ .long 3198196453
+ .long 842959264
+ .long 3212836864
+ .long 1030713214
+ .long 3198975188
+ .long 841305602
+ .long 3212836864
+ .long 1032403730
+ .long 3199747114
+ .long 846224294
+ .long 3212836864
+ .long 1033626892
+ .long 3200511765
+ .long 2983580972
+ .long 3212836864
+ .long 1034924748
+ .long 3201268682
+ .long 2976529251
+ .long 3212836864
+ .long 1036296515
+ .long 3202017408
+ .long 2988316108
+ .long 3212836864
+ .long 1037741368
+ .long 3202757493
+ .long 836355956
+ .long 3212836864
+ .long 1039258436
+ .long 3203488490
+ .long 838803769
+ .long 3212836864
+ .long 1040517098
+ .long 3204209959
+ .long 830532777
+ .long 3212836864
+ .long 1041346455
+ .long 3204684861
+ .long 844865538
+ .long 3212836864
+ .long 1042210485
+ .long 3205035419
+ .long 851331918
+ .long 3212836864
+ .long 1043108667
+ .long 3205380570
+ .long 843723495
+ .long 3212836864
+ .long 1044040460
+ .long 3205720106
+ .long 2999832878
+ .long 3212836864
+ .long 1045005303
+ .long 3206053824
+ .long 835167219
+ .long 3212836864
+ .long 1046002615
+ .long 3206381521
+ .long 2995913996
+ .long 3212836864
+ .long 1047031795
+ .long 3206703001
+ .long 2988516283
+ .long 3212836864
+ .long 1048092223
+ .long 3207018070
+ .long 839091011
+ .long 3212836864
+ .long 1048879630
+ .long 3207326538
+ .long 850866486
+ .long 3212836864
+ .long 1049440125
+ .long 3207628219
+ .long 850275634
+ .long 3212836864
+ .long 1050015258
+ .long 3207922931
+ .long 2991581050
+ .long 3212836864
+ .long 3192002283
+ .long 3208210498
+ .long 847314951
+ .long 3204448256
+ .long 3190795559
+ .long 3208490745
+ .long 2979703788
+ .long 3204448256
+ .long 3189561687
+ .long 3208763504
+ .long 2998925687
+ .long 3204448256
+ .long 3188301413
+ .long 3209028611
+ .long 2997965172
+ .long 3204448256
+ .long 3186359946
+ .long 3209285906
+ .long 2996381248
+ .long 3204448256
+ .long 3183738367
+ .long 3209535234
+ .long 2994630888
+ .long 3204448256
+ .long 3181068627
+ .long 3209776445
+ .long 2953596676
+ .long 3204448256
+ .long 3177422237
+ .long 3210009393
+ .long 2995841562
+ .long 3204448256
+ .long 3171899818
+ .long 3210233939
+ .long 847077312
+ .long 3204448256
+ .long 3160870706
+ .long 3210449946
+ .long 2988649928
+ .long 3204448256
+ .long 1005106760
+ .long 3210657285
+ .long 2999384403
+ .long 3204448256
+ .long 1021989220
+ .long 3210855832
+ .long 854062117
+ .long 3204448256
+ .long 1028547674
+ .long 3211045465
+ .long 2971273466
+ .long 3204448256
+ .long 1033133567
+ .long 3211226072
+ .long 851194761
+ .long 3204448256
+ .long 1036128472
+ .long 3211397543
+ .long 854270828
+ .long 3204448256
+ .long 1039156139
+ .long 3211559774
+ .long 3002280148
+ .long 3204448256
+ .long 1041201069
+ .long 3211712670
+ .long 848507868
+ .long 3204448256
+ .long 3182555983
+ .long 3211856136
+ .long 2988363997
+ .long 3196059648
+ .long 3179441043
+ .long 3211990087
+ .long 2999225873
+ .long 3196059648
+ .long 3173319052
+ .long 3212114443
+ .long 848534818
+ .long 3196059648
+ .long 3163089201
+ .long 3212229127
+ .long 2993490220
+ .long 3196059648
+ .long 1004930693
+ .long 3212334072
+ .long 839760357
+ .long 3196059648
+ .long 1023221605
+ .long 3212429213
+ .long 2999340633
+ .long 3196059648
+ .long 1029761272
+ .long 3212514494
+ .long 3003086283
+ .long 3196059648
+ .long 3174843017
+ .long 3212589864
+ .long 842126987
+ .long 3187671040
+ .long 3165783068
+ .long 3212655276
+ .long 821517033
+ .long 3187671040
+ .long 992588201
+ .long 3212710692
+ .long 854713859
+ .long 3187671040
+ .long 1021119272
+ .long 3212756077
+ .long 2985576777
+ .long 3187671040
+ .long 3157608485
+ .long 3212791405
+ .long 2999982212
+ .long 3179282432
+ .long 1012667202
+ .long 3212816655
+ .long 2984139615
+ .long 3179282432
+ .long 1004262721
+ .long 3212831811
+ .long 2961493261
+ .long 3170893824
+ .long 0
+ .long 3212836864
+ .long 0
+ .long 0
+ .long 3151746369
+ .long 3212831811
+ .long 2961493261
+ .long 1023410176
+ .long 3160150850
+ .long 3212816655
+ .long 2984139615
+ .long 1031798784
+ .long 1010124837
+ .long 3212791405
+ .long 2999982212
+ .long 1031798784
+ .long 3168602920
+ .long 3212756077
+ .long 2985576777
+ .long 1040187392
+ .long 3140071849
+ .long 3212710692
+ .long 854713859
+ .long 1040187392
+ .long 1018299420
+ .long 3212655276
+ .long 821517033
+ .long 1040187392
+ .long 1027359369
+ .long 3212589864
+ .long 842126987
+ .long 1040187392
+ .long 3177244920
+ .long 3212514494
+ .long 3003086283
+ .long 1048576000
+ .long 3170705253
+ .long 3212429213
+ .long 2999340633
+ .long 1048576000
+ .long 3152414341
+ .long 3212334072
+ .long 839760357
+ .long 1048576000
+ .long 1015605553
+ .long 3212229127
+ .long 2993490220
+ .long 1048576000
+ .long 1025835404
+ .long 3212114443
+ .long 848534818
+ .long 1048576000
+ .long 1031957395
+ .long 3211990087
+ .long 2999225873
+ .long 1048576000
+ .long 1035072335
+ .long 3211856136
+ .long 2988363997
+ .long 1048576000
+ .long 3188684717
+ .long 3211712670
+ .long 848507868
+ .long 1056964608
+ .long 3186639787
+ .long 3211559774
+ .long 3002280148
+ .long 1056964608
+ .long 3183612120
+ .long 3211397543
+ .long 854270828
+ .long 1056964608
+ .long 3180617215
+ .long 3211226072
+ .long 851194761
+ .long 1056964608
+ .long 3176031322
+ .long 3211045465
+ .long 2971273466
+ .long 1056964608
+ .long 3169472868
+ .long 3210855832
+ .long 854062117
+ .long 1056964608
+ .long 3152590408
+ .long 3210657285
+ .long 2999384403
+ .long 1056964608
+ .long 1013387058
+ .long 3210449946
+ .long 2988649928
+ .long 1056964608
+ .long 1024416170
+ .long 3210233939
+ .long 847077312
+ .long 1056964608
+ .long 1029938589
+ .long 3210009393
+ .long 2995841562
+ .long 1056964608
+ .long 1033584979
+ .long 3209776445
+ .long 2953596676
+ .long 1056964608
+ .long 1036254719
+ .long 3209535234
+ .long 2994630888
+ .long 1056964608
+ .long 1038876298
+ .long 3209285906
+ .long 2996381248
+ .long 1056964608
+ .long 1040817765
+ .long 3209028611
+ .long 2997965172
+ .long 1056964608
+ .long 1042078039
+ .long 3208763504
+ .long 2998925687
+ .long 1056964608
+ .long 1043311911
+ .long 3208490745
+ .long 2979703788
+ .long 1056964608
+ .long 1044518635
+ .long 3208210498
+ .long 847314951
+ .long 1056964608
+ .long 3197498906
+ .long 3207922931
+ .long 2991581050
+ .long 1065353216
+ .long 3196923773
+ .long 3207628219
+ .long 850275634
+ .long 1065353216
+ .long 3196363278
+ .long 3207326538
+ .long 850866486
+ .long 1065353216
+ .long 3195575871
+ .long 3207018070
+ .long 839091011
+ .long 1065353216
+ .long 3194515443
+ .long 3206703001
+ .long 2988516283
+ .long 1065353216
+ .long 3193486263
+ .long 3206381521
+ .long 2995913996
+ .long 1065353216
+ .long 3192488951
+ .long 3206053824
+ .long 835167219
+ .long 1065353216
+ .long 3191524108
+ .long 3205720106
+ .long 2999832878
+ .long 1065353216
+ .long 3190592315
+ .long 3205380570
+ .long 843723495
+ .long 1065353216
+ .long 3189694133
+ .long 3205035419
+ .long 851331918
+ .long 1065353216
+ .long 3188830103
+ .long 3204684861
+ .long 844865538
+ .long 1065353216
+ .long 3188000746
+ .long 3204209959
+ .long 830532777
+ .long 1065353216
+ .long 3186742084
+ .long 3203488490
+ .long 838803769
+ .long 1065353216
+ .long 3185225016
+ .long 3202757493
+ .long 836355956
+ .long 1065353216
+ .long 3183780163
+ .long 3202017408
+ .long 2988316108
+ .long 1065353216
+ .long 3182408396
+ .long 3201268682
+ .long 2976529251
+ .long 1065353216
+ .long 3181110540
+ .long 3200511765
+ .long 2983580972
+ .long 1065353216
+ .long 3179887378
+ .long 3199747114
+ .long 846224294
+ .long 1065353216
+ .long 3178196862
+ .long 3198975188
+ .long 841305602
+ .long 1065353216
+ .long 3176053642
+ .long 3198196453
+ .long 842959264
+ .long 1065353216
+ .long 3174063957
+ .long 3197411377
+ .long 2993510896
+ .long 1065353216
+ .long 3172229004
+ .long 3196620435
+ .long 2972482974
+ .long 1065353216
+ .long 3170205956
+ .long 3195588556
+ .long 823907357
+ .long 1065353216
+ .long 3167161428
+ .long 3193986067
+ .long 2980570358
+ .long 1065353216
+ .long 3164432432
+ .long 3192374722
+ .long 820352637
+ .long 1065353216
+ .long 3161536011
+ .long 3190755490
+ .long 2970707961
+ .long 1065353216
+ .long 3157349634
+ .long 3189129347
+ .long 2984830484
+ .long 1065353216
+ .long 3153489468
+ .long 3187323507
+ .long 823486671
+ .long 1065353216
+ .long 3147680113
+ .long 3184049462
+ .long 813011701
+ .long 1065353216
+ .long 3140588184
+ .long 3180767493
+ .long 827530849
+ .long 1065353216
+ .long 3130909128
+ .long 3175676720
+ .long 820978303
+ .long 1065353216
+ .long 3114133471
+ .long 3167292080
+ .long 805685656
+ .long 1065353216
+ .long 0
+ .long 0
+ .long 0
+ .long 1065353216
+ .long 3114133471
+ .long 1019808432
+ .long 2953169304
+ .long 1065353216
+ .long 3130909128
+ .long 1028193072
+ .long 2968461951
+ .long 1065353216
+ .long 3140588184
+ .long 1033283845
+ .long 2975014497
+ .long 1065353216
+ .long 3147680113
+ .long 1036565814
+ .long 2960495349
+ .long 1065353216
+ .long 3153489468
+ .long 1039839859
+ .long 2970970319
+ .long 1065353216
+ .long 3157349634
+ .long 1041645699
+ .long 837346836
+ .long 1065353216
+ .long 3161536011
+ .long 1043271842
+ .long 823224313
+ .long 1065353216
+ .long 3164432432
+ .long 1044891074
+ .long 2967836285
+ .long 1065353216
+ .long 3167161428
+ .long 1046502419
+ .long 833086710
+ .long 1065353216
+ .long 3170205956
+ .long 1048104908
+ .long 2971391005
+ .long 1065353216
+ .long 3172229004
+ .long 1049136787
+ .long 824999326
+ .long 1065353216
+ .long 3174063957
+ .long 1049927729
+ .long 846027248
+ .long 1065353216
+ .long 3176053642
+ .long 1050712805
+ .long 2990442912
+ .long 1065353216
+ .long 3178196862
+ .long 1051491540
+ .long 2988789250
+ .long 1065353216
+ .long 3179887378
+ .long 1052263466
+ .long 2993707942
+ .long 1065353216
+ .long 3181110540
+ .long 1053028117
+ .long 836097324
+ .long 1065353216
+ .long 3182408396
+ .long 1053785034
+ .long 829045603
+ .long 1065353216
+ .long 3183780163
+ .long 1054533760
+ .long 840832460
+ .long 1065353216
+ .long 3185225016
+ .long 1055273845
+ .long 2983839604
+ .long 1065353216
+ .long 3186742084
+ .long 1056004842
+ .long 2986287417
+ .long 1065353216
+ .long 3188000746
+ .long 1056726311
+ .long 2978016425
+ .long 1065353216
+ .long 3188830103
+ .long 1057201213
+ .long 2992349186
+ .long 1065353216
+ .long 3189694133
+ .long 1057551771
+ .long 2998815566
+ .long 1065353216
+ .long 3190592315
+ .long 1057896922
+ .long 2991207143
+ .long 1065353216
+ .long 3191524108
+ .long 1058236458
+ .long 852349230
+ .long 1065353216
+ .long 3192488951
+ .long 1058570176
+ .long 2982650867
+ .long 1065353216
+ .long 3193486263
+ .long 1058897873
+ .long 848430348
+ .long 1065353216
+ .long 3194515443
+ .long 1059219353
+ .long 841032635
+ .long 1065353216
+ .long 3195575871
+ .long 1059534422
+ .long 2986574659
+ .long 1065353216
+ .long 3196363278
+ .long 1059842890
+ .long 2998350134
+ .long 1065353216
+ .long 3196923773
+ .long 1060144571
+ .long 2997759282
+ .long 1065353216
+ .long 3197498906
+ .long 1060439283
+ .long 844097402
+ .long 1065353216
+ .long 1044518635
+ .long 1060726850
+ .long 2994798599
+ .long 1056964608
+ .long 1043311911
+ .long 1061007097
+ .long 832220140
+ .long 1056964608
+ .long 1042078039
+ .long 1061279856
+ .long 851442039
+ .long 1056964608
+ .long 1040817765
+ .long 1061544963
+ .long 850481524
+ .long 1056964608
+ .long 1038876298
+ .long 1061802258
+ .long 848897600
+ .long 1056964608
+ .long 1036254719
+ .long 1062051586
+ .long 847147240
+ .long 1056964608
+ .long 1033584979
+ .long 1062292797
+ .long 806113028
+ .long 1056964608
+ .long 1029938589
+ .long 1062525745
+ .long 848357914
+ .long 1056964608
+ .long 1024416170
+ .long 1062750291
+ .long 2994560960
+ .long 1056964608
+ .long 1013387058
+ .long 1062966298
+ .long 841166280
+ .long 1056964608
+ .long 3152590408
+ .long 1063173637
+ .long 851900755
+ .long 1056964608
+ .long 3169472868
+ .long 1063372184
+ .long 3001545765
+ .long 1056964608
+ .long 3176031322
+ .long 1063561817
+ .long 823789818
+ .long 1056964608
+ .long 3180617215
+ .long 1063742424
+ .long 2998678409
+ .long 1056964608
+ .long 3183612120
+ .long 1063913895
+ .long 3001754476
+ .long 1056964608
+ .long 3186639787
+ .long 1064076126
+ .long 854796500
+ .long 1056964608
+ .long 3188684717
+ .long 1064229022
+ .long 2995991516
+ .long 1056964608
+ .long 1035072335
+ .long 1064372488
+ .long 840880349
+ .long 1048576000
+ .long 1031957395
+ .long 1064506439
+ .long 851742225
+ .long 1048576000
+ .long 1025835404
+ .long 1064630795
+ .long 2996018466
+ .long 1048576000
+ .long 1015605553
+ .long 1064745479
+ .long 846006572
+ .long 1048576000
+ .long 3152414341
+ .long 1064850424
+ .long 2987244005
+ .long 1048576000
+ .long 3170705253
+ .long 1064945565
+ .long 851856985
+ .long 1048576000
+ .long 3177244920
+ .long 1065030846
+ .long 855602635
+ .long 1048576000
+ .long 1027359369
+ .long 1065106216
+ .long 2989610635
+ .long 1040187392
+ .long 1018299420
+ .long 1065171628
+ .long 2969000681
+ .long 1040187392
+ .long 3140071849
+ .long 1065227044
+ .long 3002197507
+ .long 1040187392
+ .long 3168602920
+ .long 1065272429
+ .long 838093129
+ .long 1040187392
+ .long 1010124837
+ .long 1065307757
+ .long 852498564
+ .long 1031798784
+ .long 3160150850
+ .long 1065333007
+ .long 836655967
+ .long 1031798784
+ .long 3151746369
+ .long 1065348163
+ .long 814009613
+ .long 1023410176
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 1007191908
+ .long 1007191908
+ .long 1007191908
+ .long 1007191908
+ .long 1007191908
+ .long 1007191908
+ .long 1007191908
+ .long 1007191908
+ .long 1007191908
+ .long 1007191908
+ .long 1007191908
+ .long 1007191908
+ .long 1007191908
+ .long 1007191908
+ .long 1007191908
+ .long 1007191908
+ .long 3109009103
+ .long 3109009103
+ .long 3109009103
+ .long 3109009103
+ .long 3109009103
+ .long 3109009103
+ .long 3109009103
+ .long 3109009103
+ .long 3109009103
+ .long 3109009103
+ .long 3109009103
+ .long 3109009103
+ .long 3109009103
+ .long 3109009103
+ .long 3109009103
+ .long 3109009103
+ .long 909034293
+ .long 909034293
+ .long 909034293
+ .long 909034293
+ .long 909034293
+ .long 909034293
+ .long 909034293
+ .long 909034293
+ .long 909034293
+ .long 909034293
+ .long 909034293
+ .long 909034293
+ .long 909034293
+ .long 909034293
+ .long 909034293
+ .long 909034293
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .type __svml_scos_data_internal,@object
+ .size __svml_scos_data_internal,5760
+ .align 64
+__svml_scos_reduction_data_internal:
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1
+ .long 0
+ .long 0
+ .long 2
+ .long 0
+ .long 0
+ .long 5
+ .long 0
+ .long 0
+ .long 10
+ .long 0
+ .long 0
+ .long 20
+ .long 0
+ .long 0
+ .long 40
+ .long 0
+ .long 0
+ .long 81
+ .long 0
+ .long 0
+ .long 162
+ .long 0
+ .long 0
+ .long 325
+ .long 0
+ .long 0
+ .long 651
+ .long 0
+ .long 0
+ .long 1303
+ .long 0
+ .long 0
+ .long 2607
+ .long 0
+ .long 0
+ .long 5215
+ .long 0
+ .long 0
+ .long 10430
+ .long 0
+ .long 0
+ .long 20860
+ .long 0
+ .long 0
+ .long 41721
+ .long 0
+ .long 0
+ .long 83443
+ .long 0
+ .long 0
+ .long 166886
+ .long 0
+ .long 0
+ .long 333772
+ .long 0
+ .long 0
+ .long 667544
+ .long 0
+ .long 0
+ .long 1335088
+ .long 0
+ .long 0
+ .long 2670176
+ .long 0
+ .long 0
+ .long 5340353
+ .long 0
+ .long 0
+ .long 10680707
+ .long 0
+ .long 0
+ .long 21361414
+ .long 0
+ .long 0
+ .long 42722829
+ .long 0
+ .long 0
+ .long 85445659
+ .long 0
+ .long 0
+ .long 170891318
+ .long 0
+ .long 0
+ .long 341782637
+ .long 0
+ .long 0
+ .long 683565275
+ .long 0
+ .long 0
+ .long 1367130551
+ .long 0
+ .long 0
+ .long 2734261102
+ .long 0
+ .long 1
+ .long 1173554908
+ .long 0
+ .long 2
+ .long 2347109817
+ .long 0
+ .long 5
+ .long 399252338
+ .long 0
+ .long 10
+ .long 798504676
+ .long 0
+ .long 20
+ .long 1597009353
+ .long 0
+ .long 40
+ .long 3194018707
+ .long 0
+ .long 81
+ .long 2093070119
+ .long 0
+ .long 162
+ .long 4186140238
+ .long 0
+ .long 325
+ .long 4077313180
+ .long 0
+ .long 651
+ .long 3859659065
+ .long 0
+ .long 1303
+ .long 3424350834
+ .long 0
+ .long 2607
+ .long 2553734372
+ .long 0
+ .long 5215
+ .long 812501448
+ .long 0
+ .long 10430
+ .long 1625002897
+ .long 0
+ .long 20860
+ .long 3250005794
+ .long 0
+ .long 41721
+ .long 2205044292
+ .long 0
+ .long 83443
+ .long 115121288
+ .long 0
+ .long 166886
+ .long 230242576
+ .long 0
+ .long 333772
+ .long 460485152
+ .long 0
+ .long 667544
+ .long 920970305
+ .long 0
+ .long 1335088
+ .long 1841940610
+ .long 0
+ .long 2670176
+ .long 3683881221
+ .long 0
+ .long 5340353
+ .long 3072795146
+ .long 0
+ .long 10680707
+ .long 1850622997
+ .long 0
+ .long 21361414
+ .long 3701245994
+ .long 0
+ .long 42722829
+ .long 3107524692
+ .long 0
+ .long 85445659
+ .long 1920082089
+ .long 0
+ .long 170891318
+ .long 3840164178
+ .long 0
+ .long 341782637
+ .long 3385361061
+ .long 0
+ .long 683565275
+ .long 2475754826
+ .long 0
+ .long 1367130551
+ .long 656542356
+ .long 0
+ .long 2734261102
+ .long 1313084713
+ .long 1
+ .long 1173554908
+ .long 2626169427
+ .long 2
+ .long 2347109817
+ .long 957371559
+ .long 5
+ .long 399252338
+ .long 1914743119
+ .long 10
+ .long 798504676
+ .long 3829486239
+ .long 20
+ .long 1597009353
+ .long 3364005183
+ .long 40
+ .long 3194018707
+ .long 2433043071
+ .long 81
+ .long 2093070119
+ .long 571118846
+ .long 162
+ .long 4186140238
+ .long 1142237692
+ .long 325
+ .long 4077313180
+ .long 2284475384
+ .long 651
+ .long 3859659065
+ .long 273983472
+ .long 1303
+ .long 3424350834
+ .long 547966945
+ .long 2607
+ .long 2553734372
+ .long 1095933890
+ .long 5215
+ .long 812501448
+ .long 2191867780
+ .long 10430
+ .long 1625002897
+ .long 88768265
+ .long 20860
+ .long 3250005794
+ .long 177536531
+ .long 41721
+ .long 2205044292
+ .long 355073063
+ .long 83443
+ .long 115121288
+ .long 710146126
+ .long 166886
+ .long 230242576
+ .long 1420292253
+ .long 333772
+ .long 460485152
+ .long 2840584506
+ .long 667544
+ .long 920970305
+ .long 1386201717
+ .long 1335088
+ .long 1841940610
+ .long 2772403434
+ .long 2670176
+ .long 3683881221
+ .long 1249839573
+ .long 5340353
+ .long 3072795146
+ .long 2499679147
+ .long 10680707
+ .long 1850622997
+ .long 704390999
+ .long 21361414
+ .long 3701245994
+ .long 1408781999
+ .long 42722829
+ .long 3107524692
+ .long 2817563999
+ .long 85445659
+ .long 1920082089
+ .long 1340160702
+ .long 170891318
+ .long 3840164178
+ .long 2680321405
+ .long 341782637
+ .long 3385361061
+ .long 1065675514
+ .long 683565275
+ .long 2475754826
+ .long 2131351028
+ .long 1367130551
+ .long 656542356
+ .long 4262702056
+ .long 2734261102
+ .long 1313084713
+ .long 4230436817
+ .long 1173554908
+ .long 2626169427
+ .long 4165906339
+ .long 2347109817
+ .long 957371559
+ .long 4036845383
+ .long 399252338
+ .long 1914743119
+ .long 3778723471
+ .long 798504676
+ .long 3829486239
+ .long 3262479647
+ .long 1597009353
+ .long 3364005183
+ .long 2229991998
+ .long 3194018707
+ .long 2433043071
+ .long 165016701
+ .long 2093070119
+ .long 571118846
+ .long 330033402
+ .long 4186140238
+ .long 1142237692
+ .long 660066805
+ .long 4077313180
+ .long 2284475384
+ .long 1320133610
+ .long 3859659065
+ .long 273983472
+ .long 2640267220
+ .long 3424350834
+ .long 547966945
+ .long 985567145
+ .long 2553734372
+ .long 1095933890
+ .long 1971134291
+ .long 812501448
+ .long 2191867780
+ .long 3942268582
+ .long 1625002897
+ .long 88768265
+ .long 3589569869
+ .long 3250005794
+ .long 177536531
+ .long 2884172442
+ .long 2205044292
+ .long 355073063
+ .long 1473377588
+ .long 115121288
+ .long 710146126
+ .long 2946755177
+ .long 230242576
+ .long 1420292253
+ .long 1598543059
+ .long 460485152
+ .long 2840584506
+ .long 3197086118
+ .long 920970305
+ .long 1386201717
+ .long 2099204941
+ .long 1841940610
+ .long 2772403434
+ .long 4198409883
+ .long 3683881221
+ .long 1249839573
+ .long 4101852471
+ .long 3072795146
+ .long 2499679147
+ .long 3908737646
+ .long 1850622997
+ .long 704390999
+ .long 3522507997
+ .long 3701245994
+ .long 1408781999
+ .long 2750048699
+ .long 3107524692
+ .long 2817563999
+ .long 1205130103
+ .long 1920082089
+ .long 1340160702
+ .long 2410260206
+ .long 3840164178
+ .long 2680321405
+ .long 525553116
+ .long 3385361061
+ .long 1065675514
+ .long 1051106232
+ .long 2475754826
+ .long 2131351028
+ .long 2102212464
+ .long 656542356
+ .long 4262702056
+ .long 4204424928
+ .long 1313084713
+ .long 4230436817
+ .long 4113882560
+ .long 2626169427
+ .long 4165906339
+ .long 3932797825
+ .long 957371559
+ .long 4036845383
+ .long 3570628355
+ .long 1914743119
+ .long 3778723471
+ .long 2846289414
+ .long 3829486239
+ .long 3262479647
+ .long 1397611533
+ .long 3364005183
+ .long 2229991998
+ .long 2795223067
+ .long 2433043071
+ .long 165016701
+ .long 1295478838
+ .long 571118846
+ .long 330033402
+ .long 2590957677
+ .long 1142237692
+ .long 660066805
+ .long 886948059
+ .long 2284475384
+ .long 1320133610
+ .long 1773896118
+ .long 273983472
+ .long 2640267220
+ .long 3547792237
+ .long 547966945
+ .long 985567145
+ .long 2800617179
+ .long 1095933890
+ .long 1971134291
+ .long 1306267062
+ .long 2191867780
+ .long 3942268582
+ .long 2612534124
+ .long 88768265
+ .long 3589569869
+ .long 930100952
+ .long 177536531
+ .long 2884172442
+ .long 1860201905
+ .long 355073063
+ .long 1473377588
+ .long 3720403810
+ .long 710146126
+ .long 2946755177
+ .long 3145840325
+ .long 1420292253
+ .long 1598543059
+ .long 1996713354
+ .long 2840584506
+ .long 3197086118
+ .long 3993426708
+ .long 1386201717
+ .long 2099204941
+ .long 3691886121
+ .long 2772403434
+ .long 4198409883
+ .long 3088804946
+ .long 1249839573
+ .long 4101852471
+ .long 1882642597
+ .long 2499679147
+ .long 3908737646
+ .long 3765285194
+ .long 704390999
+ .long 3522507997
+ .long 3235603093
+ .long 1408781999
+ .long 2750048699
+ .long 2176238891
+ .long 2817563999
+ .long 1205130103
+ .long 57510486
+ .long 1340160702
+ .long 2410260206
+ .long 115020972
+ .long 2680321405
+ .long 525553116
+ .long 230041945
+ .long 1065675514
+ .long 1051106232
+ .long 460083891
+ .long 2131351028
+ .long 2102212464
+ .long 920167782
+ .long 4262702056
+ .long 4204424928
+ .long 1840335564
+ .long 4230436817
+ .long 4113882560
+ .long 3680671129
+ .long 4165906339
+ .long 3932797825
+ .long 3066374962
+ .long 4036845383
+ .long 3570628355
+ .long 1837782628
+ .long 3778723471
+ .long 2846289414
+ .long 3675565257
+ .long 3262479647
+ .long 1397611533
+ .long 3056163219
+ .long 2229991998
+ .long 2795223067
+ .long 1817359143
+ .long 165016701
+ .long 1295478838
+ .long 3634718287
+ .long 330033402
+ .long 2590957677
+ .long 2974469278
+ .long 660066805
+ .long 886948059
+ .long 1653971260
+ .long 1320133610
+ .long 1773896118
+ .long 3307942520
+ .long 2640267220
+ .long 3547792237
+ .long 2320917745
+ .long 985567145
+ .long 2800617179
+ .long 346868194
+ .long 1971134291
+ .long 1306267062
+ .long 693736388
+ .long 3942268582
+ .long 2612534124
+ .long 1387472776
+ .long 3589569869
+ .long 930100952
+ .long 2774945552
+ .long 2884172442
+ .long 1860201905
+ .long 1254923809
+ .long 1473377588
+ .long 3720403810
+ .long 2509847619
+ .long 2946755177
+ .long 3145840325
+ .long 724727943
+ .long 1598543059
+ .long 1996713354
+ .long 1449455886
+ .long 3197086118
+ .long 3993426708
+ .long 2898911772
+ .long 2099204941
+ .long 3691886121
+ .long 1502856249
+ .long 4198409883
+ .long 3088804946
+ .long 3005712498
+ .long 4101852471
+ .long 1882642597
+ .long 1716457700
+ .long 3908737646
+ .long 3765285194
+ .long 3432915400
+ .long 3522507997
+ .long 3235603093
+ .long 2570863504
+ .long 2750048699
+ .long 2176238891
+ .long 846759712
+ .long 1205130103
+ .long 57510486
+ .long 1693519425
+ .long 2410260206
+ .long 115020972
+ .long 3387038850
+ .long 525553116
+ .long 230041945
+ .long 2479110404
+ .long 1051106232
+ .long 460083891
+ .long 663253512
+ .long 2102212464
+ .long 920167782
+ .long 1326507024
+ .long 4204424928
+ .long 1840335564
+ .long 2653014048
+ .long 4113882560
+ .long 3680671129
+ .long 1011060801
+ .long 3932797825
+ .long 3066374962
+ .long 2022121603
+ .long 3570628355
+ .long 1837782628
+ .long 4044243207
+ .long 2846289414
+ .long 3675565257
+ .long 3793519119
+ .long 1397611533
+ .long 3056163219
+ .long 3292070943
+ .long 2795223067
+ .long 1817359143
+ .long 2289174591
+ .long 1295478838
+ .long 3634718287
+ .long 283381887
+ .long 2590957677
+ .long 2974469278
+ .long 566763775
+ .type __svml_scos_reduction_data_internal,@object
+ .size __svml_scos_reduction_data_internal,3072
+ .align 4
+__scos_la__vmlsCosCoutTab:
+ .long 0
+ .long 2139095040
+ .type __scos_la__vmlsCosCoutTab,@object
+ .size __scos_la__vmlsCosCoutTab,8
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+
+ .text
+.L_2__routine_start___svml_cosh8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_cosh8
+
+__svml_cosh8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 3648+__svml_dcosh_data_internal(%rip), %zmm11
+ vmovups 384+__svml_dcosh_data_internal(%rip), %zmm15
+
+/*
+ * ............... Load argument ...........................
+ * dM = x*2^K/log(2) + RShifter
+ */
+ vmovups 3008+__svml_dcosh_data_internal(%rip), %zmm4
+ vmovups 3072+__svml_dcosh_data_internal(%rip), %zmm2
+ vmovups 3136+__svml_dcosh_data_internal(%rip), %zmm3
+ vmovups 832+__svml_dcosh_data_internal(%rip), %zmm8
+ vmovups 768+__svml_dcosh_data_internal(%rip), %zmm9
+ vmovups 512+__svml_dcosh_data_internal(%rip), %zmm7
+ vmovups 576+__svml_dcosh_data_internal(%rip), %zmm6
+ vmovaps %zmm0, %zmm10
+
+/* ............... Abs argument ............................ */
+ vandnpd %zmm10, %zmm11, %zmm5
+
+/* .............. Index and lookup ......................... */
+ vmovups __svml_dcosh_data_internal(%rip), %zmm11
+ vmovups 256+__svml_dcosh_data_internal(%rip), %zmm0
+ vfmadd213pd {rn-sae}, %zmm15, %zmm5, %zmm4
+
+/*
+ * ...............Check for overflow\underflow .............
+ *
+ */
+ vpsrlq $32, %zmm5, %zmm12
+
+/* dN = dM - RShifter */
+ vsubpd {rn-sae}, %zmm15, %zmm4, %zmm1
+ vpmovqd %zmm12, %ymm13
+ vpermt2pd 320+__svml_dcosh_data_internal(%rip), %zmm4, %zmm0
+ vpermt2pd 64+__svml_dcosh_data_internal(%rip), %zmm4, %zmm11
+
+/* dR = dX - dN*Log2_hi/2^K */
+ vfnmadd231pd {rn-sae}, %zmm2, %zmm1, %zmm5
+
+/*
+ * poly(r) = Gmjp(1 + a2*r^2 + a4*r^4) + Gmjn*(r+ a3*r^3 +a5*r^5) =
+ * = Gmjp_h +Gmjp_l+ Gmjp*r^2*(a2 + a4*r^2) + Gmjn*(r+ r^3*(a3 +a5*r^2)
+ */
+ vmovups 704+__svml_dcosh_data_internal(%rip), %zmm12
+ vpsllq $48, %zmm4, %zmm2
+
+/* dR = dX - dN*Log2_hi/2^K */
+ vfnmadd231pd {rn-sae}, %zmm3, %zmm1, %zmm5
+ vmulpd {rn-sae}, %zmm5, %zmm5, %zmm1
+ vfmadd231pd {rn-sae}, %zmm1, %zmm8, %zmm12
+ vmovups 640+__svml_dcosh_data_internal(%rip), %zmm8
+ vfmadd213pd {rn-sae}, %zmm6, %zmm1, %zmm12
+ vfmadd231pd {rn-sae}, %zmm1, %zmm9, %zmm8
+ vfmadd213pd {rn-sae}, %zmm7, %zmm1, %zmm8
+ vpcmpgtd 3712+__svml_dcosh_data_internal(%rip), %ymm13, %ymm14
+ vmovmskps %ymm14, %edx
+
+/* dOut=r^2*(a2 + a4*r^2) */
+ vmulpd {rn-sae}, %zmm1, %zmm8, %zmm6
+
+/* lM now is an EXP(2^N) */
+ vpandq 3584+__svml_dcosh_data_internal(%rip), %zmm2, %zmm3
+ vpaddq %zmm3, %zmm11, %zmm4
+ vpsubq %zmm3, %zmm0, %zmm0
+ vsubpd {rn-sae}, %zmm0, %zmm4, %zmm14
+ vaddpd {rn-sae}, %zmm0, %zmm4, %zmm13
+
+/* dM=r^2*(a3 +a5*r^2) */
+ vmulpd {rn-sae}, %zmm1, %zmm12, %zmm0
+ vfmadd213pd {rn-sae}, %zmm13, %zmm13, %zmm6
+
+/* dM= r + r^3*(a3 +a5*r^2) */
+ vfmadd213pd {rn-sae}, %zmm5, %zmm5, %zmm0
+ vfmadd213pd {rn-sae}, %zmm6, %zmm14, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm10, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dcosh_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_cosh8,@function
+ .size __svml_cosh8,.-__svml_cosh8
+..LN__svml_cosh8.0:
+
+.L_2__routine_start___svml_dcosh_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dcosh_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ movq %rsi, %r8
+ movzwl 6(%rdi), %edx
+ xorl %eax, %eax
+ andl $32752, %edx
+ cmpl $32752, %edx
+ je .LBL_2_12
+
+
+ movq (%rdi), %rdx
+ movq %rdx, -8(%rsp)
+ shrq $56, %rdx
+ andl $127, %edx
+ movb %dl, -1(%rsp)
+ movzwl -2(%rsp), %ecx
+ andl $32752, %ecx
+ cmpl $15504, %ecx
+ jle .LBL_2_10
+
+
+ movsd -8(%rsp), %xmm0
+ movsd 1096+__dcosh_la_CoutTab(%rip), %xmm1
+ comisd %xmm0, %xmm1
+ jbe .LBL_2_9
+
+
+ movq 1128+__dcosh_la_CoutTab(%rip), %rdx
+ movq %rdx, -8(%rsp)
+ comisd 1144+__dcosh_la_CoutTab(%rip), %xmm0
+ jb .LBL_2_8
+
+
+ movsd 1040+__dcosh_la_CoutTab(%rip), %xmm1
+ lea __dcosh_la_CoutTab(%rip), %r9
+ mulsd %xmm0, %xmm1
+ addsd 1048+__dcosh_la_CoutTab(%rip), %xmm1
+ movsd %xmm1, -40(%rsp)
+ movsd -40(%rsp), %xmm2
+ movsd 1088+__dcosh_la_CoutTab(%rip), %xmm1
+ movl -40(%rsp), %edx
+ movl %edx, %esi
+ andl $63, %esi
+ subsd 1048+__dcosh_la_CoutTab(%rip), %xmm2
+ movsd %xmm2, -32(%rsp)
+ lea (%rsi,%rsi), %ecx
+ movsd -32(%rsp), %xmm3
+ lea 1(%rsi,%rsi), %edi
+ mulsd 1104+__dcosh_la_CoutTab(%rip), %xmm3
+ movsd -32(%rsp), %xmm4
+ subsd %xmm3, %xmm0
+ mulsd 1112+__dcosh_la_CoutTab(%rip), %xmm4
+ shrl $6, %edx
+ subsd %xmm4, %xmm0
+ mulsd %xmm0, %xmm1
+ addl $1022, %edx
+ andl $2047, %edx
+ addsd 1080+__dcosh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ addsd 1072+__dcosh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ addsd 1064+__dcosh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ addsd 1056+__dcosh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ mulsd %xmm0, %xmm1
+ addsd %xmm0, %xmm1
+ movsd (%r9,%rcx,8), %xmm0
+ mulsd %xmm0, %xmm1
+ addsd (%r9,%rdi,8), %xmm1
+ addsd %xmm0, %xmm1
+ cmpl $2046, %edx
+ ja .LBL_2_7
+
+
+ movq 1128+__dcosh_la_CoutTab(%rip), %rcx
+ shrq $48, %rcx
+ shll $4, %edx
+ andl $-32753, %ecx
+ orl %edx, %ecx
+ movw %cx, -2(%rsp)
+ movsd -8(%rsp), %xmm0
+ mulsd %xmm1, %xmm0
+ movsd %xmm0, (%r8)
+ ret
+
+.LBL_2_7:
+
+ decl %edx
+ andl $2047, %edx
+ movzwl -2(%rsp), %ecx
+ shll $4, %edx
+ andl $-32753, %ecx
+ orl %edx, %ecx
+ movw %cx, -2(%rsp)
+ movsd -8(%rsp), %xmm0
+ mulsd %xmm0, %xmm1
+ mulsd 1024+__dcosh_la_CoutTab(%rip), %xmm1
+ movsd %xmm1, (%r8)
+ ret
+
+.LBL_2_8:
+
+ movsd 1040+__dcosh_la_CoutTab(%rip), %xmm1
+ lea __dcosh_la_CoutTab(%rip), %rcx
+ movzwl -2(%rsp), %esi
+ andl $-32753, %esi
+ movsd 1080+__dcosh_la_CoutTab(%rip), %xmm14
+ mulsd %xmm0, %xmm1
+ addsd 1048+__dcosh_la_CoutTab(%rip), %xmm1
+ movsd %xmm1, -40(%rsp)
+ movsd -40(%rsp), %xmm2
+ movl -40(%rsp), %r10d
+ movl %r10d, %r9d
+ shrl $6, %r9d
+ subsd 1048+__dcosh_la_CoutTab(%rip), %xmm2
+ movsd %xmm2, -32(%rsp)
+ lea 1023(%r9), %edi
+ andl $63, %r10d
+ addl $1022, %r9d
+ movsd -32(%rsp), %xmm3
+ andl $2047, %r9d
+ negl %edi
+ shll $4, %r9d
+ addl $-4, %edi
+ mulsd 1104+__dcosh_la_CoutTab(%rip), %xmm3
+ lea (%r10,%r10), %edx
+ movsd (%rcx,%rdx,8), %xmm15
+ negl %edx
+ movsd -32(%rsp), %xmm4
+ orl %r9d, %esi
+ andl $2047, %edi
+ lea 1(%r10,%r10), %r11d
+ mulsd 1112+__dcosh_la_CoutTab(%rip), %xmm4
+ subsd %xmm3, %xmm0
+ movw %si, -2(%rsp)
+ andl $-32753, %esi
+ shll $4, %edi
+ subsd %xmm4, %xmm0
+ movsd -8(%rsp), %xmm6
+ orl %edi, %esi
+ movw %si, -2(%rsp)
+ lea 128(%rdx), %esi
+ mulsd %xmm6, %xmm15
+ movaps %xmm0, %xmm5
+ mulsd %xmm0, %xmm5
+ movsd -8(%rsp), %xmm7
+ movaps %xmm15, %xmm8
+ movsd (%rcx,%rsi,8), %xmm11
+ addl $129, %edx
+ mulsd %xmm7, %xmm11
+ movaps %xmm15, %xmm10
+ mulsd %xmm5, %xmm14
+ addsd %xmm11, %xmm8
+ subsd %xmm11, %xmm15
+ addsd 1064+__dcosh_la_CoutTab(%rip), %xmm14
+ movsd %xmm8, -24(%rsp)
+ movsd (%rcx,%r11,8), %xmm12
+ movsd (%rcx,%rdx,8), %xmm13
+ movsd -24(%rsp), %xmm9
+ mulsd %xmm6, %xmm12
+ subsd %xmm9, %xmm10
+ mulsd %xmm7, %xmm13
+ mulsd %xmm5, %xmm14
+ addsd %xmm11, %xmm10
+ mulsd %xmm0, %xmm14
+ movsd 1088+__dcosh_la_CoutTab(%rip), %xmm1
+ movaps %xmm12, %xmm11
+ mulsd %xmm5, %xmm1
+ subsd %xmm13, %xmm12
+ mulsd %xmm15, %xmm14
+ mulsd %xmm0, %xmm12
+ addsd 1072+__dcosh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm15, %xmm0
+ mulsd %xmm5, %xmm1
+ addsd %xmm12, %xmm11
+ movsd %xmm10, -16(%rsp)
+ addsd %xmm13, %xmm11
+ addsd 1056+__dcosh_la_CoutTab(%rip), %xmm1
+ addsd %xmm14, %xmm11
+ mulsd %xmm5, %xmm1
+ addsd %xmm0, %xmm11
+ movsd -24(%rsp), %xmm3
+ mulsd %xmm3, %xmm1
+ movsd -16(%rsp), %xmm2
+ addsd %xmm1, %xmm11
+ addsd %xmm2, %xmm11
+ movsd %xmm11, -24(%rsp)
+ movsd -24(%rsp), %xmm0
+ addsd %xmm0, %xmm3
+ movsd %xmm3, (%r8)
+ ret
+
+.LBL_2_9:
+
+ movsd 1120+__dcosh_la_CoutTab(%rip), %xmm0
+ movl $3, %eax
+ mulsd %xmm0, %xmm0
+ movsd %xmm0, (%r8)
+ ret
+
+.LBL_2_10:
+
+ movsd 1136+__dcosh_la_CoutTab(%rip), %xmm0
+ addsd -8(%rsp), %xmm0
+ movsd %xmm0, (%r8)
+
+
+ ret
+
+.LBL_2_12:
+
+ movsd (%rdi), %xmm0
+ mulsd %xmm0, %xmm0
+ movsd %xmm0, (%r8)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dcosh_cout_rare_internal,@function
+ .size __svml_dcosh_cout_rare_internal,.-__svml_dcosh_cout_rare_internal
+..LN__svml_dcosh_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dcosh_data_internal:
+ .long 0
+ .long 1071644672
+ .long 1828292879
+ .long 1071691096
+ .long 1014845819
+ .long 1071739576
+ .long 1853186616
+ .long 1071790202
+ .long 171030293
+ .long 1071843070
+ .long 1276261410
+ .long 1071898278
+ .long 3577096743
+ .long 1071955930
+ .long 3712504873
+ .long 1072016135
+ .long 1719614413
+ .long 1072079006
+ .long 1944781191
+ .long 1072144660
+ .long 1110089947
+ .long 1072213221
+ .long 2191782032
+ .long 1072284817
+ .long 2572866477
+ .long 1072359583
+ .long 3716502172
+ .long 1072437659
+ .long 3707479175
+ .long 1072519192
+ .long 2728693978
+ .long 1072604335
+ .long 0
+ .long 0
+ .long 1255956747
+ .long 1015588398
+ .long 3117910646
+ .long 3161559105
+ .long 3066496371
+ .long 1015656574
+ .long 3526460132
+ .long 1014428778
+ .long 300981948
+ .long 1014684169
+ .long 2951496418
+ .long 1013793687
+ .long 88491949
+ .long 1015427660
+ .long 330458198
+ .long 3163282740
+ .long 3993278767
+ .long 3161724279
+ .long 1451641639
+ .long 1015474673
+ .long 2960257726
+ .long 1013742662
+ .long 878562433
+ .long 1015521741
+ .long 2303740125
+ .long 1014042725
+ .long 3613079303
+ .long 1014164738
+ .long 396109971
+ .long 3163462691
+ .long 0
+ .long 1071644672
+ .long 2728693978
+ .long 1071555759
+ .long 3707479175
+ .long 1071470616
+ .long 3716502172
+ .long 1071389083
+ .long 2572866477
+ .long 1071311007
+ .long 2191782032
+ .long 1071236241
+ .long 1110089947
+ .long 1071164645
+ .long 1944781191
+ .long 1071096084
+ .long 1719614413
+ .long 1071030430
+ .long 3712504873
+ .long 1070967559
+ .long 3577096743
+ .long 1070907354
+ .long 1276261410
+ .long 1070849702
+ .long 171030293
+ .long 1070794494
+ .long 1853186616
+ .long 1070741626
+ .long 1014845819
+ .long 1070691000
+ .long 1828292879
+ .long 1070642520
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 4
+ .long 1071644672
+ .long 4
+ .long 1071644672
+ .long 4
+ .long 1071644672
+ .long 4
+ .long 1071644672
+ .long 4
+ .long 1071644672
+ .long 4
+ .long 1071644672
+ .long 4
+ .long 1071644672
+ .long 4
+ .long 1071644672
+ .long 1431655747
+ .long 1069897045
+ .long 1431655747
+ .long 1069897045
+ .long 1431655747
+ .long 1069897045
+ .long 1431655747
+ .long 1069897045
+ .long 1431655747
+ .long 1069897045
+ .long 1431655747
+ .long 1069897045
+ .long 1431655747
+ .long 1069897045
+ .long 1431655747
+ .long 1069897045
+ .long 1430802231
+ .long 1067799893
+ .long 1430802231
+ .long 1067799893
+ .long 1430802231
+ .long 1067799893
+ .long 1430802231
+ .long 1067799893
+ .long 1430802231
+ .long 1067799893
+ .long 1430802231
+ .long 1067799893
+ .long 1430802231
+ .long 1067799893
+ .long 1430802231
+ .long 1067799893
+ .long 287861260
+ .long 1065423121
+ .long 287861260
+ .long 1065423121
+ .long 287861260
+ .long 1065423121
+ .long 287861260
+ .long 1065423121
+ .long 287861260
+ .long 1065423121
+ .long 287861260
+ .long 1065423121
+ .long 287861260
+ .long 1065423121
+ .long 287861260
+ .long 1065423121
+ .long 3658019094
+ .long 1062650243
+ .long 3658019094
+ .long 1062650243
+ .long 3658019094
+ .long 1062650243
+ .long 3658019094
+ .long 1062650243
+ .long 3658019094
+ .long 1062650243
+ .long 3658019094
+ .long 1062650243
+ .long 3658019094
+ .long 1062650243
+ .long 3658019094
+ .long 1062650243
+ .long 1993999322
+ .long 1059717517
+ .long 1993999322
+ .long 1059717517
+ .long 1993999322
+ .long 1059717517
+ .long 1993999322
+ .long 1059717517
+ .long 1993999322
+ .long 1059717517
+ .long 1993999322
+ .long 1059717517
+ .long 1993999322
+ .long 1059717517
+ .long 1993999322
+ .long 1059717517
+ .long 0
+ .long 1071644672
+ .long 4200250559
+ .long 1071647514
+ .long 2851812149
+ .long 1071650365
+ .long 339411585
+ .long 1071653224
+ .long 1048019041
+ .long 1071656090
+ .long 772914124
+ .long 1071658964
+ .long 3899555717
+ .long 1071661845
+ .long 1928746161
+ .long 1071664735
+ .long 3541402996
+ .long 1071667632
+ .long 238821257
+ .long 1071670538
+ .long 702412510
+ .long 1071673451
+ .long 728934454
+ .long 1071676372
+ .long 410360776
+ .long 1071679301
+ .long 4133881824
+ .long 1071682237
+ .long 3402036099
+ .long 1071685182
+ .long 2602514713
+ .long 1071688135
+ .long 1828292879
+ .long 1071691096
+ .long 1172597893
+ .long 1071694065
+ .long 728909815
+ .long 1071697042
+ .long 590962156
+ .long 1071700027
+ .long 852742562
+ .long 1071703020
+ .long 1608493509
+ .long 1071706021
+ .long 2952712987
+ .long 1071709030
+ .long 685187902
+ .long 1071712048
+ .long 3490863953
+ .long 1071715073
+ .long 2875075254
+ .long 1071718107
+ .long 3228316108
+ .long 1071721149
+ .long 351405227
+ .long 1071724200
+ .long 2930322912
+ .long 1071727258
+ .long 2471440686
+ .long 1071730325
+ .long 3366293073
+ .long 1071733400
+ .long 1416741826
+ .long 1071736484
+ .long 1014845819
+ .long 1071739576
+ .long 2257959872
+ .long 1071742676
+ .long 948735466
+ .long 1071745785
+ .long 1480023343
+ .long 1071748902
+ .long 3949972341
+ .long 1071752027
+ .long 4162030108
+ .long 1071755161
+ .long 2214878420
+ .long 1071758304
+ .long 2502433899
+ .long 1071761455
+ .long 828946858
+ .long 1071764615
+ .long 1588871207
+ .long 1071767783
+ .long 586995997
+ .long 1071770960
+ .long 2218315341
+ .long 1071774145
+ .long 2288159958
+ .long 1071777339
+ .long 897099801
+ .long 1071780542
+ .long 2440944790
+ .long 1071783753
+ .long 2725843665
+ .long 1071786973
+ .long 1853186616
+ .long 1071790202
+ .long 4219606026
+ .long 1071793439
+ .long 1337108031
+ .long 1071796686
+ .long 1897844341
+ .long 1071799941
+ .long 1709341917
+ .long 1071803205
+ .long 874372905
+ .long 1071806478
+ .long 3790955393
+ .long 1071809759
+ .long 1972484976
+ .long 1071813050
+ .long 4112506593
+ .long 1071816349
+ .long 1724976915
+ .long 1071819658
+ .long 3504003472
+ .long 1071822975
+ .long 964107055
+ .long 1071826302
+ .long 2799960843
+ .long 1071829637
+ .long 526652809
+ .long 1071832982
+ .long 2839424854
+ .long 1071836335
+ .long 1253935211
+ .long 1071839698
+ .long 171030293
+ .long 1071843070
+ .long 3991843581
+ .long 1071846450
+ .long 4232894513
+ .long 1071849840
+ .long 1000925746
+ .long 1071853240
+ .long 2992903935
+ .long 1071856648
+ .long 1726216749
+ .long 1071860066
+ .long 1603444721
+ .long 1071863493
+ .long 2732492859
+ .long 1071866929
+ .long 926591435
+ .long 1071870375
+ .long 589198666
+ .long 1071873830
+ .long 1829099622
+ .long 1071877294
+ .long 460407023
+ .long 1071880768
+ .long 887463927
+ .long 1071884251
+ .long 3219942644
+ .long 1071887743
+ .long 3272845541
+ .long 1071891245
+ .long 1156440435
+ .long 1071894757
+ .long 1276261410
+ .long 1071898278
+ .long 3743175029
+ .long 1071901808
+ .long 78413852
+ .long 1071905349
+ .long 3278348324
+ .long 1071908898
+ .long 569847338
+ .long 1071912458
+ .long 654919306
+ .long 1071916027
+ .long 3645941911
+ .long 1071919605
+ .long 1065662932
+ .long 1071923194
+ .long 1617004845
+ .long 1071926792
+ .long 1118294578
+ .long 1071930400
+ .long 3978100823
+ .long 1071934017
+ .long 1720398391
+ .long 1071937645
+ .long 3049340112
+ .long 1071941282
+ .long 3784486610
+ .long 1071944929
+ .long 4040676318
+ .long 1071948586
+ .long 3933059031
+ .long 1071952253
+ .long 3577096743
+ .long 1071955930
+ .long 3088564500
+ .long 1071959617
+ .long 2583551245
+ .long 1071963314
+ .long 2178460671
+ .long 1071967021
+ .long 1990012071
+ .long 1071970738
+ .long 2135241198
+ .long 1071974465
+ .long 2731501122
+ .long 1071978202
+ .long 3896463087
+ .long 1071981949
+ .long 1453150082
+ .long 1071985707
+ .long 4109806887
+ .long 1071989474
+ .long 3395129871
+ .long 1071993252
+ .long 3723038930
+ .long 1071997040
+ .long 917841882
+ .long 1072000839
+ .long 3689071823
+ .long 1072004647
+ .long 3566716925
+ .long 1072008466
+ .long 671025100
+ .long 1072012296
+ .long 3712504873
+ .long 1072016135
+ .long 4222122499
+ .long 1072019985
+ .long 2321106615
+ .long 1072023846
+ .long 2425981843
+ .long 1072027717
+ .long 363667784
+ .long 1072031599
+ .long 551349105
+ .long 1072035491
+ .long 3111574537
+ .long 1072039393
+ .long 3872257780
+ .long 1072043306
+ .long 2956612997
+ .long 1072047230
+ .long 488188413
+ .long 1072051165
+ .long 885834528
+ .long 1072055110
+ .long 4273770423
+ .long 1072059065
+ .long 2186617381
+ .long 1072063032
+ .long 3339203574
+ .long 1072067009
+ .long 3561793907
+ .long 1072070997
+ .long 2979960120
+ .long 1072074996
+ .long 1719614413
+ .long 1072079006
+ .long 4201977662
+ .long 1072083026
+ .long 1963711167
+ .long 1072087058
+ .long 3721688645
+ .long 1072091100
+ .long 1013258799
+ .long 1072095154
+ .long 2555984613
+ .long 1072099218
+ .long 4182873220
+ .long 1072103293
+ .long 1727278727
+ .long 1072107380
+ .long 3907805044
+ .long 1072111477
+ .long 2263535754
+ .long 1072115586
+ .long 1218806132
+ .long 1072119706
+ .long 903334909
+ .long 1072123837
+ .long 1447192521
+ .long 1072127979
+ .long 2980802057
+ .long 1072132132
+ .long 1339972927
+ .long 1072136297
+ .long 950803702
+ .long 1072140473
+ .long 1944781191
+ .long 1072144660
+ .long 158781403
+ .long 1072148859
+ .long 19972402
+ .long 1072153069
+ .long 1660913392
+ .long 1072157290
+ .long 919555682
+ .long 1072161523
+ .long 2224145553
+ .long 1072165767
+ .long 1413356050
+ .long 1072170023
+ .long 2916157145
+ .long 1072174290
+ .long 2571947539
+ .long 1072178569
+ .long 515457527
+ .long 1072182860
+ .long 1176749997
+ .long 1072187162
+ .long 396319521
+ .long 1072191476
+ .long 2604962541
+ .long 1072195801
+ .long 3643909174
+ .long 1072200138
+ .long 3649726105
+ .long 1072204487
+ .long 2759350287
+ .long 1072208848
+ .long 1110089947
+ .long 1072213221
+ .long 3134592888
+ .long 1072217605
+ .long 380978316
+ .long 1072222002
+ .long 1577608921
+ .long 1072226410
+ .long 2568320822
+ .long 1072230830
+ .long 3492293770
+ .long 1072235262
+ .long 194117574
+ .long 1072239707
+ .long 1403662306
+ .long 1072244163
+ .long 2966275557
+ .long 1072248631
+ .long 727685349
+ .long 1072253112
+ .long 3418903055
+ .long 1072257604
+ .long 2591453363
+ .long 1072262109
+ .long 2682146384
+ .long 1072266626
+ .long 3833209506
+ .long 1072271155
+ .long 1892288442
+ .long 1072275697
+ .long 1297350157
+ .long 1072280251
+ .long 2191782032
+ .long 1072284817
+ .long 424392917
+ .long 1072289396
+ .long 434316067
+ .long 1072293987
+ .long 2366108318
+ .long 1072298590
+ .long 2069751141
+ .long 1072303206
+ .long 3985553595
+ .long 1072307834
+ .long 3964284211
+ .long 1072312475
+ .long 2152073944
+ .long 1072317129
+ .long 2990417245
+ .long 1072321795
+ .long 2331271250
+ .long 1072326474
+ .long 321958744
+ .long 1072331166
+ .long 1405169241
+ .long 1072335870
+ .long 1434058175
+ .long 1072340587
+ .long 557149882
+ .long 1072345317
+ .long 3218338682
+ .long 1072350059
+ .long 977020788
+ .long 1072354815
+ .long 2572866477
+ .long 1072359583
+ .long 3861050111
+ .long 1072364364
+ .long 697153126
+ .long 1072369159
+ .long 1822067026
+ .long 1072373966
+ .long 3092190715
+ .long 1072378786
+ .long 364333489
+ .long 1072383620
+ .long 2380618042
+ .long 1072388466
+ .long 703710506
+ .long 1072393326
+ .long 4076559943
+ .long 1072398198
+ .long 4062661092
+ .long 1072403084
+ .long 815859274
+ .long 1072407984
+ .long 3080351519
+ .long 1072412896
+ .long 2420883922
+ .long 1072417822
+ .long 3287523847
+ .long 1072422761
+ .long 1540824585
+ .long 1072427714
+ .long 1631695677
+ .long 1072432680
+ .long 3716502172
+ .long 1072437659
+ .long 3657065772
+ .long 1072442652
+ .long 1610600570
+ .long 1072447659
+ .long 2029714210
+ .long 1072452679
+ .long 777507147
+ .long 1072457713
+ .long 2307442995
+ .long 1072462760
+ .long 2483480501
+ .long 1072467821
+ .long 1464976603
+ .long 1072472896
+ .long 3706687593
+ .long 1072477984
+ .long 778901109
+ .long 1072483087
+ .long 1432208378
+ .long 1072488203
+ .long 1532734324
+ .long 1072493333
+ .long 1242007932
+ .long 1072498477
+ .long 721996136
+ .long 1072503635
+ .long 135105010
+ .long 1072508807
+ .long 3939148246
+ .long 1072513992
+ .long 3707479175
+ .long 1072519192
+ .long 3898795731
+ .long 1072524406
+ .long 382305176
+ .long 1072529635
+ .long 1912561781
+ .long 1072534877
+ .long 64696965
+ .long 1072540134
+ .long 3594158869
+ .long 1072545404
+ .long 4076975200
+ .long 1072550689
+ .long 1679558232
+ .long 1072555989
+ .long 863738719
+ .long 1072561303
+ .long 1796832535
+ .long 1072566631
+ .long 351641897
+ .long 1072571974
+ .long 991358482
+ .long 1072577331
+ .long 3884662774
+ .long 1072582702
+ .long 610758006
+ .long 1072588089
+ .long 4224142467
+ .long 1072593489
+ .long 2009970496
+ .long 1072598905
+ .long 2728693978
+ .long 1072604335
+ .long 2256325230
+ .long 1072609780
+ .long 764307441
+ .long 1072615240
+ .long 2719515920
+ .long 1072620714
+ .long 3999357479
+ .long 1072626203
+ .long 481706282
+ .long 1072631708
+ .long 929806999
+ .long 1072637227
+ .long 1222472308
+ .long 1072642761
+ .long 1533953344
+ .long 1072648310
+ .long 2038973688
+ .long 1072653874
+ .long 2912730644
+ .long 1072659453
+ .long 35929225
+ .long 1072665048
+ .long 2174652632
+ .long 1072670657
+ .long 915592468
+ .long 1072676282
+ .long 730821105
+ .long 1072681922
+ .long 1797923801
+ .long 1072687577
+ .long 0
+ .long 1072693248
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 4277927936
+ .long 1072049730
+ .long 4277927936
+ .long 1072049730
+ .long 4277927936
+ .long 1072049730
+ .long 4277927936
+ .long 1072049730
+ .long 4277927936
+ .long 1072049730
+ .long 4277927936
+ .long 1072049730
+ .long 4277927936
+ .long 1072049730
+ .long 4277927936
+ .long 1072049730
+ .long 2825664665
+ .long 3182190860
+ .long 2825664665
+ .long 3182190860
+ .long 2825664665
+ .long 3182190860
+ .long 2825664665
+ .long 3182190860
+ .long 2825664665
+ .long 3182190860
+ .long 2825664665
+ .long 3182190860
+ .long 2825664665
+ .long 3182190860
+ .long 2825664665
+ .long 3182190860
+ .long 0
+ .long 1119354880
+ .long 0
+ .long 1119354880
+ .long 0
+ .long 1119354880
+ .long 0
+ .long 1119354880
+ .long 0
+ .long 1119354880
+ .long 0
+ .long 1119354880
+ .long 0
+ .long 1119354880
+ .long 0
+ .long 1119354880
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 255
+ .long 4294966717
+ .long 1071644671
+ .long 4294966717
+ .long 1071644671
+ .long 4294966717
+ .long 1071644671
+ .long 4294966717
+ .long 1071644671
+ .long 4294966717
+ .long 1071644671
+ .long 4294966717
+ .long 1071644671
+ .long 4294966717
+ .long 1071644671
+ .long 4294966717
+ .long 1071644671
+ .long 1887518228
+ .long 1069897045
+ .long 1887518228
+ .long 1069897045
+ .long 1887518228
+ .long 1069897045
+ .long 1887518228
+ .long 1069897045
+ .long 1887518228
+ .long 1069897045
+ .long 1887518228
+ .long 1069897045
+ .long 1887518228
+ .long 1069897045
+ .long 1887518228
+ .long 1069897045
+ .long 3474379417
+ .long 1067799893
+ .long 3474379417
+ .long 1067799893
+ .long 3474379417
+ .long 1067799893
+ .long 3474379417
+ .long 1067799893
+ .long 3474379417
+ .long 1067799893
+ .long 3474379417
+ .long 1067799893
+ .long 3474379417
+ .long 1067799893
+ .long 3474379417
+ .long 1067799893
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 256
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .type __svml_dcosh_data_internal,@object
+ .size __svml_dcosh_data_internal,3776
+ .space 832, 0x00
+ .align 32
+__dcosh_la_CoutTab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 1048019041
+ .long 1072704666
+ .long 1398474845
+ .long 3161559171
+ .long 3541402996
+ .long 1072716208
+ .long 2759177317
+ .long 1015903202
+ .long 410360776
+ .long 1072727877
+ .long 1269990655
+ .long 1013024446
+ .long 1828292879
+ .long 1072739672
+ .long 1255956747
+ .long 1016636974
+ .long 852742562
+ .long 1072751596
+ .long 667253587
+ .long 1010842135
+ .long 3490863953
+ .long 1072763649
+ .long 960797498
+ .long 3163997456
+ .long 2930322912
+ .long 1072775834
+ .long 2599499422
+ .long 3163762623
+ .long 1014845819
+ .long 1072788152
+ .long 3117910646
+ .long 3162607681
+ .long 3949972341
+ .long 1072800603
+ .long 2068408548
+ .long 1015962444
+ .long 828946858
+ .long 1072813191
+ .long 10642492
+ .long 1016988014
+ .long 2288159958
+ .long 1072825915
+ .long 2169144469
+ .long 1015924597
+ .long 1853186616
+ .long 1072838778
+ .long 3066496371
+ .long 1016705150
+ .long 1709341917
+ .long 1072851781
+ .long 2571168217
+ .long 1015201075
+ .long 4112506593
+ .long 1072864925
+ .long 2947355221
+ .long 1015419624
+ .long 2799960843
+ .long 1072878213
+ .long 1423655381
+ .long 1016070727
+ .long 171030293
+ .long 1072891646
+ .long 3526460132
+ .long 1015477354
+ .long 2992903935
+ .long 1072905224
+ .long 2218154406
+ .long 1016276769
+ .long 926591435
+ .long 1072918951
+ .long 3208833762
+ .long 3163962090
+ .long 887463927
+ .long 1072932827
+ .long 3596744163
+ .long 3161842742
+ .long 1276261410
+ .long 1072946854
+ .long 300981948
+ .long 1015732745
+ .long 569847338
+ .long 1072961034
+ .long 472945272
+ .long 3160339305
+ .long 1617004845
+ .long 1072975368
+ .long 82804944
+ .long 1011391354
+ .long 3049340112
+ .long 1072989858
+ .long 3062915824
+ .long 1014219171
+ .long 3577096743
+ .long 1073004506
+ .long 2951496418
+ .long 1014842263
+ .long 1990012071
+ .long 1073019314
+ .long 3529070563
+ .long 3163861769
+ .long 1453150082
+ .long 1073034283
+ .long 498154669
+ .long 3162536638
+ .long 917841882
+ .long 1073049415
+ .long 18715565
+ .long 1016707884
+ .long 3712504873
+ .long 1073064711
+ .long 88491949
+ .long 1016476236
+ .long 363667784
+ .long 1073080175
+ .long 813753950
+ .long 1016833785
+ .long 2956612997
+ .long 1073095806
+ .long 2118169751
+ .long 3163784129
+ .long 2186617381
+ .long 1073111608
+ .long 2270764084
+ .long 3164321289
+ .long 1719614413
+ .long 1073127582
+ .long 330458198
+ .long 3164331316
+ .long 1013258799
+ .long 1073143730
+ .long 1748797611
+ .long 3161177658
+ .long 3907805044
+ .long 1073160053
+ .long 2257091225
+ .long 3162598983
+ .long 1447192521
+ .long 1073176555
+ .long 1462857171
+ .long 3163563097
+ .long 1944781191
+ .long 1073193236
+ .long 3993278767
+ .long 3162772855
+ .long 919555682
+ .long 1073210099
+ .long 3121969534
+ .long 1013996802
+ .long 2571947539
+ .long 1073227145
+ .long 3558159064
+ .long 3164425245
+ .long 2604962541
+ .long 1073244377
+ .long 2614425274
+ .long 3164587768
+ .long 1110089947
+ .long 1073261797
+ .long 1451641639
+ .long 1016523249
+ .long 2568320822
+ .long 1073279406
+ .long 2732824428
+ .long 1015401491
+ .long 2966275557
+ .long 1073297207
+ .long 2176155324
+ .long 3160891335
+ .long 2682146384
+ .long 1073315202
+ .long 2082178513
+ .long 3164411995
+ .long 2191782032
+ .long 1073333393
+ .long 2960257726
+ .long 1014791238
+ .long 2069751141
+ .long 1073351782
+ .long 1562170675
+ .long 3163773257
+ .long 2990417245
+ .long 1073370371
+ .long 3683467745
+ .long 3164417902
+ .long 1434058175
+ .long 1073389163
+ .long 251133233
+ .long 1016134345
+ .long 2572866477
+ .long 1073408159
+ .long 878562433
+ .long 1016570317
+ .long 3092190715
+ .long 1073427362
+ .long 814012168
+ .long 3160571998
+ .long 4076559943
+ .long 1073446774
+ .long 2119478331
+ .long 3161806927
+ .long 2420883922
+ .long 1073466398
+ .long 2049810052
+ .long 1015168464
+ .long 3716502172
+ .long 1073486235
+ .long 2303740125
+ .long 1015091301
+ .long 777507147
+ .long 1073506289
+ .long 4282924205
+ .long 1016236109
+ .long 3706687593
+ .long 1073526560
+ .long 3521726939
+ .long 1014301643
+ .long 1242007932
+ .long 1073547053
+ .long 1132034716
+ .long 3164388407
+ .long 3707479175
+ .long 1073567768
+ .long 3613079303
+ .long 1015213314
+ .long 64696965
+ .long 1073588710
+ .long 1768797490
+ .long 1016865536
+ .long 863738719
+ .long 1073609879
+ .long 1326992220
+ .long 3163661773
+ .long 3884662774
+ .long 1073631278
+ .long 2158611599
+ .long 1015258761
+ .long 2728693978
+ .long 1073652911
+ .long 396109971
+ .long 3164511267
+ .long 3999357479
+ .long 1073674779
+ .long 2258941616
+ .long 1016973300
+ .long 1533953344
+ .long 1073696886
+ .long 769171851
+ .long 1016714209
+ .long 2174652632
+ .long 1073719233
+ .long 4087714590
+ .long 1015498835
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 0
+ .long 1697350398
+ .long 1079448903
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1071644672
+ .long 1431652600
+ .long 1069897045
+ .long 1431670732
+ .long 1067799893
+ .long 984555731
+ .long 1065423122
+ .long 472530941
+ .long 1062650218
+ .long 2411329662
+ .long 1082536910
+ .long 4277796864
+ .long 1065758274
+ .long 3164486458
+ .long 1025308570
+ .long 4294967295
+ .long 2146435071
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 3875694624
+ .long 1077247184
+ .type __dcosh_la_CoutTab,@object
+ .size __dcosh_la_CoutTab,1152
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+
+ .text
+.L_2__routine_start___svml_coshf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_coshf16
+
+__svml_coshf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 1024+__svml_scosh_data_internal(%rip), %zmm4
+ vmovups 384+__svml_scosh_data_internal(%rip), %zmm6
+
+/*
+ * ............... Load argument ............................
+ * dM = x/log(2) + RShifter
+ */
+ vmovups 768+__svml_scosh_data_internal(%rip), %zmm10
+ vmovups 896+__svml_scosh_data_internal(%rip), %zmm7
+ vmovups 960+__svml_scosh_data_internal(%rip), %zmm9
+
+/* ... */
+ vmovups 704+__svml_scosh_data_internal(%rip), %zmm2
+
+/* x^2 */
+ vmovups 640+__svml_scosh_data_internal(%rip), %zmm3
+
+/* ............... G1,G2 2^N,2^(-N) ........... */
+ vmovups __svml_scosh_data_internal(%rip), %zmm12
+ vmovups 256+__svml_scosh_data_internal(%rip), %zmm13
+
+/*
+ * -------------------- Implementation -------------------
+ * ............... Abs argument ............................
+ */
+ vandnps %zmm0, %zmm4, %zmm1
+
+/* ...............Check for overflow\underflow ............. */
+ vpternlogd $255, %zmm5, %zmm5, %zmm5
+ vfmadd213ps {rn-sae}, %zmm6, %zmm1, %zmm10
+ vpcmpd $1, 512+__svml_scosh_data_internal(%rip), %zmm1, %k1
+
+/* iM now is an EXP(2^N) */
+ vpslld $18, %zmm10, %zmm11
+
+/*
+ * ................... R ...................................
+ * sN = sM - RShifter
+ */
+ vsubps {rn-sae}, %zmm6, %zmm10, %zmm8
+ vpermt2ps 64+__svml_scosh_data_internal(%rip), %zmm10, %zmm12
+ vpermt2ps 320+__svml_scosh_data_internal(%rip), %zmm10, %zmm13
+ vpandnd %zmm1, %zmm1, %zmm5{%k1}
+
+/* sR = sX - sN*Log2_hi */
+ vfnmadd231ps {rn-sae}, %zmm7, %zmm8, %zmm1
+ vptestmd %zmm5, %zmm5, %k0
+
+/* sR = (sX - sN*Log2_hi) - sN*Log2_lo */
+ vfnmadd231ps {rn-sae}, %zmm9, %zmm8, %zmm1
+ kmovw %k0, %edx
+ vmulps {rn-sae}, %zmm1, %zmm1, %zmm4
+ vmulps {rn-sae}, %zmm4, %zmm2, %zmm2
+
+/* sSinh_r = r + r*(r^2*(a3)) */
+ vfmadd213ps {rn-sae}, %zmm1, %zmm1, %zmm2
+
+/* sOut = r^2*(a2) */
+ vmulps {rn-sae}, %zmm4, %zmm3, %zmm1
+ vpandd 1216+__svml_scosh_data_internal(%rip), %zmm11, %zmm14
+ vpaddd %zmm14, %zmm12, %zmm15
+ vpsubd %zmm14, %zmm13, %zmm10
+
+/* sG2 = 2^N*Th + 2^(-N)*T_h */
+ vaddps {rn-sae}, %zmm10, %zmm15, %zmm5
+
+/* sG1 = 2^N*Th - 2^(-N)*T_h */
+ vsubps {rn-sae}, %zmm10, %zmm15, %zmm6
+
+/* res = sG1*(r + r*(r^2*(a3))) + sG2*(1+r^2*(a2)) */
+ vfmadd213ps {rn-sae}, %zmm5, %zmm5, %zmm1
+ vfmadd213ps {rn-sae}, %zmm1, %zmm2, %zmm6
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ vmovaps %zmm6, %zmm0
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm0, 64(%rsp)
+ vmovups %zmm6, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm6
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_scosh_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_coshf16,@function
+ .size __svml_coshf16,.-__svml_coshf16
+..LN__svml_coshf16.0:
+
+.L_2__routine_start___svml_scosh_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_scosh_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ movq %rsi, %r8
+ movzwl 2(%rdi), %edx
+ xorl %eax, %eax
+ andl $32640, %edx
+ cmpl $32640, %edx
+ je .LBL_2_12
+
+
+ pxor %xmm0, %xmm0
+ cvtss2sd (%rdi), %xmm0
+ movsd %xmm0, -8(%rsp)
+ andb $127, -1(%rsp)
+ movzwl -2(%rsp), %edx
+ andl $32752, %edx
+ cmpl $15504, %edx
+ jle .LBL_2_10
+
+
+ movsd -8(%rsp), %xmm0
+ movsd 1096+__scosh_la_CoutTab(%rip), %xmm1
+ comisd %xmm0, %xmm1
+ jbe .LBL_2_9
+
+
+ movq 1128+__scosh_la_CoutTab(%rip), %rdx
+ movq %rdx, -8(%rsp)
+ comisd 1144+__scosh_la_CoutTab(%rip), %xmm0
+ jb .LBL_2_8
+
+
+ movsd 1040+__scosh_la_CoutTab(%rip), %xmm1
+ lea __scosh_la_CoutTab(%rip), %r9
+ mulsd %xmm0, %xmm1
+ addsd 1048+__scosh_la_CoutTab(%rip), %xmm1
+ movsd %xmm1, -40(%rsp)
+ movsd -40(%rsp), %xmm2
+ movsd 1088+__scosh_la_CoutTab(%rip), %xmm1
+ movl -40(%rsp), %edx
+ movl %edx, %esi
+ andl $63, %esi
+ subsd 1048+__scosh_la_CoutTab(%rip), %xmm2
+ movsd %xmm2, -32(%rsp)
+ lea (%rsi,%rsi), %ecx
+ movsd -32(%rsp), %xmm3
+ lea 1(%rsi,%rsi), %edi
+ mulsd 1104+__scosh_la_CoutTab(%rip), %xmm3
+ movsd -32(%rsp), %xmm4
+ subsd %xmm3, %xmm0
+ mulsd 1112+__scosh_la_CoutTab(%rip), %xmm4
+ shrl $6, %edx
+ subsd %xmm4, %xmm0
+ mulsd %xmm0, %xmm1
+ addl $1022, %edx
+ andl $2047, %edx
+ addsd 1080+__scosh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ addsd 1072+__scosh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ addsd 1064+__scosh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ addsd 1056+__scosh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ mulsd %xmm0, %xmm1
+ addsd %xmm0, %xmm1
+ movsd (%r9,%rcx,8), %xmm0
+ mulsd %xmm0, %xmm1
+ addsd (%r9,%rdi,8), %xmm1
+ addsd %xmm0, %xmm1
+ cmpl $2046, %edx
+ ja .LBL_2_7
+
+
+ movq 1128+__scosh_la_CoutTab(%rip), %rcx
+ shrq $48, %rcx
+ shll $4, %edx
+ andl $-32753, %ecx
+ orl %edx, %ecx
+ movw %cx, -2(%rsp)
+ movsd -8(%rsp), %xmm0
+ mulsd %xmm1, %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ movss %xmm0, (%r8)
+ ret
+
+.LBL_2_7:
+
+ decl %edx
+ andl $2047, %edx
+ movzwl -2(%rsp), %ecx
+ shll $4, %edx
+ andl $-32753, %ecx
+ orl %edx, %ecx
+ movw %cx, -2(%rsp)
+ movsd -8(%rsp), %xmm0
+ mulsd %xmm0, %xmm1
+ mulsd 1024+__scosh_la_CoutTab(%rip), %xmm1
+ cvtsd2ss %xmm1, %xmm1
+ movss %xmm1, (%r8)
+ ret
+
+.LBL_2_8:
+
+ movsd 1040+__scosh_la_CoutTab(%rip), %xmm1
+ lea __scosh_la_CoutTab(%rip), %rcx
+ movzwl -2(%rsp), %esi
+ andl $-32753, %esi
+ movsd 1080+__scosh_la_CoutTab(%rip), %xmm14
+ mulsd %xmm0, %xmm1
+ addsd 1048+__scosh_la_CoutTab(%rip), %xmm1
+ movsd %xmm1, -40(%rsp)
+ movsd -40(%rsp), %xmm2
+ movl -40(%rsp), %r10d
+ movl %r10d, %r9d
+ shrl $6, %r9d
+ subsd 1048+__scosh_la_CoutTab(%rip), %xmm2
+ movsd %xmm2, -32(%rsp)
+ lea 1023(%r9), %edi
+ movsd -32(%rsp), %xmm3
+ addl $1022, %r9d
+ mulsd 1104+__scosh_la_CoutTab(%rip), %xmm3
+ andl $63, %r10d
+ movsd -32(%rsp), %xmm4
+ lea (%r10,%r10), %edx
+ mulsd 1112+__scosh_la_CoutTab(%rip), %xmm4
+ subsd %xmm3, %xmm0
+ andl $2047, %r9d
+ negl %edi
+ movsd (%rcx,%rdx,8), %xmm15
+ negl %edx
+ shll $4, %r9d
+ addl $-4, %edi
+ orl %r9d, %esi
+ andl $2047, %edi
+ movw %si, -2(%rsp)
+ andl $-32753, %esi
+ shll $4, %edi
+ lea 1(%r10,%r10), %r11d
+ movsd -8(%rsp), %xmm6
+ orl %edi, %esi
+ movw %si, -2(%rsp)
+ lea 128(%rdx), %esi
+ addl $129, %edx
+ subsd %xmm4, %xmm0
+ mulsd %xmm6, %xmm15
+ movaps %xmm0, %xmm5
+ movaps %xmm15, %xmm8
+ mulsd %xmm0, %xmm5
+ movaps %xmm15, %xmm10
+ movsd (%rcx,%r11,8), %xmm2
+ mulsd %xmm6, %xmm2
+ mulsd %xmm5, %xmm14
+ movsd -8(%rsp), %xmm7
+ movaps %xmm2, %xmm12
+ movsd (%rcx,%rdx,8), %xmm13
+ mulsd %xmm7, %xmm13
+ addsd 1064+__scosh_la_CoutTab(%rip), %xmm14
+ movsd 1088+__scosh_la_CoutTab(%rip), %xmm1
+ subsd %xmm13, %xmm12
+ mulsd %xmm5, %xmm1
+ mulsd %xmm5, %xmm14
+ mulsd %xmm0, %xmm12
+ addsd 1072+__scosh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm14
+ addsd %xmm12, %xmm2
+ mulsd %xmm5, %xmm1
+ addsd %xmm13, %xmm2
+ addsd 1056+__scosh_la_CoutTab(%rip), %xmm1
+ movsd (%rcx,%rsi,8), %xmm11
+ mulsd %xmm7, %xmm11
+ mulsd %xmm5, %xmm1
+ addsd %xmm11, %xmm8
+ subsd %xmm11, %xmm15
+ movsd %xmm8, -24(%rsp)
+ movsd -24(%rsp), %xmm9
+ mulsd %xmm15, %xmm14
+ subsd %xmm9, %xmm10
+ mulsd %xmm15, %xmm0
+ addsd %xmm11, %xmm10
+ addsd %xmm14, %xmm2
+ movsd %xmm10, -16(%rsp)
+ addsd %xmm0, %xmm2
+ movsd -24(%rsp), %xmm3
+ mulsd %xmm3, %xmm1
+ movsd -16(%rsp), %xmm6
+ addsd %xmm1, %xmm2
+ addsd %xmm6, %xmm2
+ movsd %xmm2, -24(%rsp)
+ movsd -24(%rsp), %xmm0
+ addsd %xmm0, %xmm3
+ cvtsd2ss %xmm3, %xmm3
+ movss %xmm3, (%r8)
+ ret
+
+.LBL_2_9:
+
+ movsd 1120+__scosh_la_CoutTab(%rip), %xmm0
+ movl $3, %eax
+ mulsd %xmm0, %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ movss %xmm0, (%r8)
+ ret
+
+.LBL_2_10:
+
+ movsd 1136+__scosh_la_CoutTab(%rip), %xmm0
+ addsd -8(%rsp), %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ movss %xmm0, (%r8)
+
+
+ ret
+
+.LBL_2_12:
+
+ movss (%rdi), %xmm0
+ mulss %xmm0, %xmm0
+ movss %xmm0, (%r8)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_scosh_cout_rare_internal,@function
+ .size __svml_scosh_cout_rare_internal,.-__svml_scosh_cout_rare_internal
+..LN__svml_scosh_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_scosh_data_internal:
+ .long 1056964608
+ .long 1057148295
+ .long 1057336003
+ .long 1057527823
+ .long 1057723842
+ .long 1057924154
+ .long 1058128851
+ .long 1058338032
+ .long 1058551792
+ .long 1058770234
+ .long 1058993458
+ .long 1059221571
+ .long 1059454679
+ .long 1059692891
+ .long 1059936319
+ .long 1060185078
+ .long 1060439283
+ .long 1060699055
+ .long 1060964516
+ .long 1061235789
+ .long 1061513002
+ .long 1061796286
+ .long 1062085772
+ .long 1062381598
+ .long 1062683901
+ .long 1062992824
+ .long 1063308511
+ .long 1063631111
+ .long 1063960775
+ .long 1064297658
+ .long 1064641917
+ .long 1064993715
+ .long 0
+ .long 2999887785
+ .long 852465809
+ .long 3003046475
+ .long 2984291233
+ .long 3001644133
+ .long 854021668
+ .long 2997748242
+ .long 849550193
+ .long 2995541347
+ .long 851518274
+ .long 809701978
+ .long 2997656926
+ .long 2996185864
+ .long 2980965110
+ .long 3002882728
+ .long 844097402
+ .long 848217591
+ .long 2999013352
+ .long 2992006718
+ .long 831170615
+ .long 3002278818
+ .long 833158180
+ .long 3000769962
+ .long 2991891850
+ .long 2999994908
+ .long 2979965785
+ .long 2982419430
+ .long 2982221534
+ .long 2999469642
+ .long 833168438
+ .long 2987538264
+ .long 1056964608
+ .long 1056605107
+ .long 1056253309
+ .long 1055909050
+ .long 1055572167
+ .long 1055242503
+ .long 1054919903
+ .long 1054604216
+ .long 1054295293
+ .long 1053992990
+ .long 1053697164
+ .long 1053407678
+ .long 1053124394
+ .long 1052847181
+ .long 1052575908
+ .long 1052310447
+ .long 1052050675
+ .long 1051796470
+ .long 1051547711
+ .long 1051304283
+ .long 1051066071
+ .long 1050832963
+ .long 1050604850
+ .long 1050381626
+ .long 1050163184
+ .long 1049949424
+ .long 1049740243
+ .long 1049535546
+ .long 1049335234
+ .long 1049139215
+ .long 1048947395
+ .long 1048759687
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1056964879
+ .long 1056964879
+ .long 1056964879
+ .long 1056964879
+ .long 1056964879
+ .long 1056964879
+ .long 1056964879
+ .long 1056964879
+ .long 1056964879
+ .long 1056964879
+ .long 1056964879
+ .long 1056964879
+ .long 1056964879
+ .long 1056964879
+ .long 1056964879
+ .long 1056964879
+ .long 1042983629
+ .long 1042983629
+ .long 1042983629
+ .long 1042983629
+ .long 1042983629
+ .long 1042983629
+ .long 1042983629
+ .long 1042983629
+ .long 1042983629
+ .long 1042983629
+ .long 1042983629
+ .long 1042983629
+ .long 1042983629
+ .long 1042983629
+ .long 1042983629
+ .long 1042983629
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 3212836864
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .type __svml_scosh_data_internal,@object
+ .size __svml_scosh_data_internal,1920
+ .align 32
+__scosh_la_CoutTab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 1048019041
+ .long 1072704666
+ .long 1398474845
+ .long 3161559171
+ .long 3541402996
+ .long 1072716208
+ .long 2759177317
+ .long 1015903202
+ .long 410360776
+ .long 1072727877
+ .long 1269990655
+ .long 1013024446
+ .long 1828292879
+ .long 1072739672
+ .long 1255956747
+ .long 1016636974
+ .long 852742562
+ .long 1072751596
+ .long 667253587
+ .long 1010842135
+ .long 3490863953
+ .long 1072763649
+ .long 960797498
+ .long 3163997456
+ .long 2930322912
+ .long 1072775834
+ .long 2599499422
+ .long 3163762623
+ .long 1014845819
+ .long 1072788152
+ .long 3117910646
+ .long 3162607681
+ .long 3949972341
+ .long 1072800603
+ .long 2068408548
+ .long 1015962444
+ .long 828946858
+ .long 1072813191
+ .long 10642492
+ .long 1016988014
+ .long 2288159958
+ .long 1072825915
+ .long 2169144469
+ .long 1015924597
+ .long 1853186616
+ .long 1072838778
+ .long 3066496371
+ .long 1016705150
+ .long 1709341917
+ .long 1072851781
+ .long 2571168217
+ .long 1015201075
+ .long 4112506593
+ .long 1072864925
+ .long 2947355221
+ .long 1015419624
+ .long 2799960843
+ .long 1072878213
+ .long 1423655381
+ .long 1016070727
+ .long 171030293
+ .long 1072891646
+ .long 3526460132
+ .long 1015477354
+ .long 2992903935
+ .long 1072905224
+ .long 2218154406
+ .long 1016276769
+ .long 926591435
+ .long 1072918951
+ .long 3208833762
+ .long 3163962090
+ .long 887463927
+ .long 1072932827
+ .long 3596744163
+ .long 3161842742
+ .long 1276261410
+ .long 1072946854
+ .long 300981948
+ .long 1015732745
+ .long 569847338
+ .long 1072961034
+ .long 472945272
+ .long 3160339305
+ .long 1617004845
+ .long 1072975368
+ .long 82804944
+ .long 1011391354
+ .long 3049340112
+ .long 1072989858
+ .long 3062915824
+ .long 1014219171
+ .long 3577096743
+ .long 1073004506
+ .long 2951496418
+ .long 1014842263
+ .long 1990012071
+ .long 1073019314
+ .long 3529070563
+ .long 3163861769
+ .long 1453150082
+ .long 1073034283
+ .long 498154669
+ .long 3162536638
+ .long 917841882
+ .long 1073049415
+ .long 18715565
+ .long 1016707884
+ .long 3712504873
+ .long 1073064711
+ .long 88491949
+ .long 1016476236
+ .long 363667784
+ .long 1073080175
+ .long 813753950
+ .long 1016833785
+ .long 2956612997
+ .long 1073095806
+ .long 2118169751
+ .long 3163784129
+ .long 2186617381
+ .long 1073111608
+ .long 2270764084
+ .long 3164321289
+ .long 1719614413
+ .long 1073127582
+ .long 330458198
+ .long 3164331316
+ .long 1013258799
+ .long 1073143730
+ .long 1748797611
+ .long 3161177658
+ .long 3907805044
+ .long 1073160053
+ .long 2257091225
+ .long 3162598983
+ .long 1447192521
+ .long 1073176555
+ .long 1462857171
+ .long 3163563097
+ .long 1944781191
+ .long 1073193236
+ .long 3993278767
+ .long 3162772855
+ .long 919555682
+ .long 1073210099
+ .long 3121969534
+ .long 1013996802
+ .long 2571947539
+ .long 1073227145
+ .long 3558159064
+ .long 3164425245
+ .long 2604962541
+ .long 1073244377
+ .long 2614425274
+ .long 3164587768
+ .long 1110089947
+ .long 1073261797
+ .long 1451641639
+ .long 1016523249
+ .long 2568320822
+ .long 1073279406
+ .long 2732824428
+ .long 1015401491
+ .long 2966275557
+ .long 1073297207
+ .long 2176155324
+ .long 3160891335
+ .long 2682146384
+ .long 1073315202
+ .long 2082178513
+ .long 3164411995
+ .long 2191782032
+ .long 1073333393
+ .long 2960257726
+ .long 1014791238
+ .long 2069751141
+ .long 1073351782
+ .long 1562170675
+ .long 3163773257
+ .long 2990417245
+ .long 1073370371
+ .long 3683467745
+ .long 3164417902
+ .long 1434058175
+ .long 1073389163
+ .long 251133233
+ .long 1016134345
+ .long 2572866477
+ .long 1073408159
+ .long 878562433
+ .long 1016570317
+ .long 3092190715
+ .long 1073427362
+ .long 814012168
+ .long 3160571998
+ .long 4076559943
+ .long 1073446774
+ .long 2119478331
+ .long 3161806927
+ .long 2420883922
+ .long 1073466398
+ .long 2049810052
+ .long 1015168464
+ .long 3716502172
+ .long 1073486235
+ .long 2303740125
+ .long 1015091301
+ .long 777507147
+ .long 1073506289
+ .long 4282924205
+ .long 1016236109
+ .long 3706687593
+ .long 1073526560
+ .long 3521726939
+ .long 1014301643
+ .long 1242007932
+ .long 1073547053
+ .long 1132034716
+ .long 3164388407
+ .long 3707479175
+ .long 1073567768
+ .long 3613079303
+ .long 1015213314
+ .long 64696965
+ .long 1073588710
+ .long 1768797490
+ .long 1016865536
+ .long 863738719
+ .long 1073609879
+ .long 1326992220
+ .long 3163661773
+ .long 3884662774
+ .long 1073631278
+ .long 2158611599
+ .long 1015258761
+ .long 2728693978
+ .long 1073652911
+ .long 396109971
+ .long 3164511267
+ .long 3999357479
+ .long 1073674779
+ .long 2258941616
+ .long 1016973300
+ .long 1533953344
+ .long 1073696886
+ .long 769171851
+ .long 1016714209
+ .long 2174652632
+ .long 1073719233
+ .long 4087714590
+ .long 1015498835
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 0
+ .long 1697350398
+ .long 1079448903
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1071644672
+ .long 1431652600
+ .long 1069897045
+ .long 1431670732
+ .long 1067799893
+ .long 984555731
+ .long 1065423122
+ .long 472530941
+ .long 1062650218
+ .long 2684354560
+ .long 1079401119
+ .long 4277796864
+ .long 1065758274
+ .long 3164486458
+ .long 1025308570
+ .long 4294967295
+ .long 2146435071
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 3875694624
+ .long 1077247184
+ .type __scosh_la_CoutTab,@object
+ .size __scosh_la_CoutTab,1152
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+
+ .text
+.L_2__routine_start___svml_exp28_z0_0:
+
+ .align 16,0x90
+ .globl __svml_exp28
+
+__svml_exp28:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 384+__svml_dexp2_data_internal_avx512(%rip), %zmm14
+ vmovups 448+__svml_dexp2_data_internal_avx512(%rip), %zmm6
+
+/*
+ * Reduced argument
+*/
+ vreducepd $65, {sae}, %zmm0, %zmm10
+ vmovups 320+__svml_dexp2_data_internal_avx512(%rip), %zmm7
+ vmovups 512+__svml_dexp2_data_internal_avx512(%rip), %zmm3
+ vmovups 256+__svml_dexp2_data_internal_avx512(%rip), %zmm8
+ vmovups __svml_dexp2_data_internal_avx512(%rip), %zmm13
+
+/* c6*r + c5 */
+ vfmadd231pd {rn-sae}, %zmm10, %zmm6, %zmm14
+ vmovups 192+__svml_dexp2_data_internal_avx512(%rip), %zmm9
+ vmovups 640+__svml_dexp2_data_internal_avx512(%rip), %zmm2
+ vmovups 128+__svml_dexp2_data_internal_avx512(%rip), %zmm11
+
+/* c6*r^2 + c5*r + c4 */
+ vfmadd213pd {rn-sae}, %zmm7, %zmm10, %zmm14
+
+/*
+ * Integer form of K+0.b1b2b3b4 in lower bits - call K_plus_f0
+ * Mantisssa of normalized double precision FP: 1.b1b2...b52
+ */
+ vaddpd {rd-sae}, %zmm3, %zmm0, %zmm4
+ vandpd 576+__svml_dexp2_data_internal_avx512(%rip), %zmm0, %zmm1
+
+/* c6*r^3 + c5*r^2 + c4*r + c3 */
+ vfmadd213pd {rn-sae}, %zmm8, %zmm10, %zmm14
+ vcmppd $29, {sae}, %zmm2, %zmm1, %k0
+
+/* c6*r^4 + c5*r^3 + c4*r^2 + c3*r + c2 */
+ vfmadd213pd {rn-sae}, %zmm9, %zmm10, %zmm14
+ kmovw %k0, %edx
+
+/* c6*r^5 + c5*r^4 + c4*r^3 + c3*r^2 + c2*r + c1 */
+ vfmadd213pd {rn-sae}, %zmm11, %zmm10, %zmm14
+
+/* Table value: 2^(0.b1b2b3b4) */
+ vpandq 704+__svml_dexp2_data_internal_avx512(%rip), %zmm4, %zmm5
+ vpermt2pd 64+__svml_dexp2_data_internal_avx512(%rip), %zmm5, %zmm13
+
+/* T*r */
+ vmulpd {rn-sae}, %zmm10, %zmm13, %zmm12
+
+/* T + (T*r*(c6*r^5 + c5*r^4 + c4*r^3 + c3*r^2 + c2*r + c1)) */
+ vfmadd213pd {rn-sae}, %zmm13, %zmm12, %zmm14
+
+/* Scaling placed at the end to avoid accuracy loss when T*r*scale underflows */
+ vscalefpd {rn-sae}, %zmm0, %zmm14, %zmm1
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ vmovaps %zmm1, %zmm0
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm0, 64(%rsp)
+ vmovups %zmm1, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm1
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dexp2_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_exp28,@function
+ .size __svml_exp28,.-__svml_exp28
+..LN__svml_exp28.0:
+
+.L_2__routine_start___svml_dexp2_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dexp2_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movzwl 6(%rdi), %edx
+ andl $32752, %edx
+ movsd (%rdi), %xmm5
+ movsd %xmm5, -8(%rsp)
+ cmpl $32752, %edx
+ je .LBL_2_12
+
+
+ movsd 1072+__dexp2_la__imldExp2HATab(%rip), %xmm0
+ comisd %xmm5, %xmm0
+ jbe .LBL_2_10
+
+
+ comisd 1088+__dexp2_la__imldExp2HATab(%rip), %xmm5
+ jbe .LBL_2_9
+
+
+ movsd 1024+__dexp2_la__imldExp2HATab(%rip), %xmm0
+ movaps %xmm5, %xmm3
+ lea __dexp2_la__imldExp2HATab(%rip), %r10
+ addsd %xmm5, %xmm0
+ movsd %xmm0, -24(%rsp)
+ movsd -24(%rsp), %xmm1
+ movl -24(%rsp), %r8d
+ movl %r8d, %ecx
+ andl $63, %r8d
+ subsd 1024+__dexp2_la__imldExp2HATab(%rip), %xmm1
+ movsd %xmm1, -16(%rsp)
+ lea 1(%r8,%r8), %r9d
+ movsd -16(%rsp), %xmm2
+ lea (%r8,%r8), %edi
+ movsd 1064+__dexp2_la__imldExp2HATab(%rip), %xmm1
+ subsd %xmm2, %xmm3
+ mulsd %xmm3, %xmm1
+ movsd (%r10,%rdi,8), %xmm4
+ shrl $6, %ecx
+ addsd 1056+__dexp2_la__imldExp2HATab(%rip), %xmm1
+ comisd 1080+__dexp2_la__imldExp2HATab(%rip), %xmm5
+ mulsd %xmm3, %xmm1
+ movq 1112+__dexp2_la__imldExp2HATab(%rip), %rdx
+ movq %rdx, -8(%rsp)
+ lea 1023(%rcx), %edx
+ addsd 1048+__dexp2_la__imldExp2HATab(%rip), %xmm1
+ mulsd %xmm3, %xmm1
+ addsd 1040+__dexp2_la__imldExp2HATab(%rip), %xmm1
+ mulsd %xmm3, %xmm1
+ addsd 1032+__dexp2_la__imldExp2HATab(%rip), %xmm1
+ mulsd %xmm3, %xmm1
+ addsd (%r10,%r9,8), %xmm1
+ mulsd %xmm4, %xmm1
+ addsd %xmm4, %xmm1
+ jb .LBL_2_8
+
+
+ andl $2047, %edx
+ cmpl $2046, %edx
+ ja .LBL_2_7
+
+
+ movq 1112+__dexp2_la__imldExp2HATab(%rip), %rcx
+ shrq $48, %rcx
+ shll $4, %edx
+ andl $-32753, %ecx
+ orl %edx, %ecx
+ movw %cx, -2(%rsp)
+ movsd -8(%rsp), %xmm0
+ mulsd %xmm1, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_7:
+
+ decl %edx
+ andl $2047, %edx
+ movzwl -2(%rsp), %ecx
+ shll $4, %edx
+ andl $-32753, %ecx
+ orl %edx, %ecx
+ movw %cx, -2(%rsp)
+ movsd -8(%rsp), %xmm0
+ mulsd %xmm1, %xmm0
+ mulsd 1128+__dexp2_la__imldExp2HATab(%rip), %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_8:
+
+ addl $1123, %ecx
+ andl $2047, %ecx
+ movzwl -2(%rsp), %eax
+ shll $4, %ecx
+ andl $-32753, %eax
+ orl %ecx, %eax
+ movw %ax, -2(%rsp)
+ movl $4, %eax
+ movsd -8(%rsp), %xmm0
+ mulsd %xmm1, %xmm0
+ mulsd 1136+__dexp2_la__imldExp2HATab(%rip), %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_9:
+
+ movsd 1096+__dexp2_la__imldExp2HATab(%rip), %xmm0
+ movl $4, %eax
+ mulsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_10:
+
+ movsd 1104+__dexp2_la__imldExp2HATab(%rip), %xmm0
+ movl $3, %eax
+ mulsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+
+
+ ret
+
+.LBL_2_12:
+
+ movb -1(%rsp), %dl
+ andb $-128, %dl
+ cmpb $-128, %dl
+ je .LBL_2_14
+
+.LBL_2_13:
+
+ mulsd %xmm5, %xmm5
+ movsd %xmm5, (%rsi)
+ ret
+
+.LBL_2_14:
+
+ testl $1048575, -4(%rsp)
+ jne .LBL_2_13
+
+
+ cmpl $0, -8(%rsp)
+ jne .LBL_2_13
+
+
+ movq 1112+__dexp2_la__imldExp2HATab(%rip), %rdx
+ movq %rdx, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dexp2_cout_rare_internal,@function
+ .size __svml_dexp2_cout_rare_internal,.-__svml_dexp2_cout_rare_internal
+..LN__svml_dexp2_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dexp2_data_internal_avx512:
+ .long 0
+ .long 1072693248
+ .long 1828292879
+ .long 1072739672
+ .long 1014845819
+ .long 1072788152
+ .long 1853186616
+ .long 1072838778
+ .long 171030293
+ .long 1072891646
+ .long 1276261410
+ .long 1072946854
+ .long 3577096743
+ .long 1073004506
+ .long 3712504873
+ .long 1073064711
+ .long 1719614413
+ .long 1073127582
+ .long 1944781191
+ .long 1073193236
+ .long 1110089947
+ .long 1073261797
+ .long 2191782032
+ .long 1073333393
+ .long 2572866477
+ .long 1073408159
+ .long 3716502172
+ .long 1073486235
+ .long 3707479175
+ .long 1073567768
+ .long 2728693978
+ .long 1073652911
+ .long 4277811595
+ .long 1072049730
+ .long 4277811595
+ .long 1072049730
+ .long 4277811595
+ .long 1072049730
+ .long 4277811595
+ .long 1072049730
+ .long 4277811595
+ .long 1072049730
+ .long 4277811595
+ .long 1072049730
+ .long 4277811595
+ .long 1072049730
+ .long 4277811595
+ .long 1072049730
+ .long 4286862682
+ .long 1070514109
+ .long 4286862682
+ .long 1070514109
+ .long 4286862682
+ .long 1070514109
+ .long 4286862682
+ .long 1070514109
+ .long 4286862682
+ .long 1070514109
+ .long 4286862682
+ .long 1070514109
+ .long 4286862682
+ .long 1070514109
+ .long 4286862682
+ .long 1070514109
+ .long 3568142009
+ .long 1068264200
+ .long 3568142009
+ .long 1068264200
+ .long 3568142009
+ .long 1068264200
+ .long 3568142009
+ .long 1068264200
+ .long 3568142009
+ .long 1068264200
+ .long 3568142009
+ .long 1068264200
+ .long 3568142009
+ .long 1068264200
+ .long 3568142009
+ .long 1068264200
+ .long 454500946
+ .long 1065595565
+ .long 454500946
+ .long 1065595565
+ .long 454500946
+ .long 1065595565
+ .long 454500946
+ .long 1065595565
+ .long 454500946
+ .long 1065595565
+ .long 454500946
+ .long 1065595565
+ .long 454500946
+ .long 1065595565
+ .long 454500946
+ .long 1065595565
+ .long 655609113
+ .long 1062590279
+ .long 655609113
+ .long 1062590279
+ .long 655609113
+ .long 1062590279
+ .long 655609113
+ .long 1062590279
+ .long 655609113
+ .long 1062590279
+ .long 655609113
+ .long 1062590279
+ .long 655609113
+ .long 1062590279
+ .long 655609113
+ .long 1062590279
+ .long 4112922395
+ .long 1059365335
+ .long 4112922395
+ .long 1059365335
+ .long 4112922395
+ .long 1059365335
+ .long 4112922395
+ .long 1059365335
+ .long 4112922395
+ .long 1059365335
+ .long 4112922395
+ .long 1059365335
+ .long 4112922395
+ .long 1059365335
+ .long 4112922395
+ .long 1059365335
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 0
+ .long 1083174911
+ .long 0
+ .long 1083174911
+ .long 0
+ .long 1083174911
+ .long 0
+ .long 1083174911
+ .long 0
+ .long 1083174911
+ .long 0
+ .long 1083174911
+ .long 0
+ .long 1083174911
+ .long 0
+ .long 1083174911
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .type __svml_dexp2_data_internal_avx512,@object
+ .size __svml_dexp2_data_internal_avx512,768
+ .align 32
+__dexp2_la__imldExp2HATab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 1048019041
+ .long 1072704666
+ .long 2631457885
+ .long 3161546771
+ .long 3541402996
+ .long 1072716208
+ .long 896005651
+ .long 1015861842
+ .long 410360776
+ .long 1072727877
+ .long 1642514529
+ .long 1012987726
+ .long 1828292879
+ .long 1072739672
+ .long 1568897901
+ .long 1016568486
+ .long 852742562
+ .long 1072751596
+ .long 1882168529
+ .long 1010744893
+ .long 3490863953
+ .long 1072763649
+ .long 707771662
+ .long 3163903570
+ .long 2930322912
+ .long 1072775834
+ .long 3117806614
+ .long 3163670819
+ .long 1014845819
+ .long 1072788152
+ .long 3936719688
+ .long 3162512149
+ .long 3949972341
+ .long 1072800603
+ .long 1058231231
+ .long 1015777676
+ .long 828946858
+ .long 1072813191
+ .long 1044000608
+ .long 1016786167
+ .long 2288159958
+ .long 1072825915
+ .long 1151779725
+ .long 1015705409
+ .long 1853186616
+ .long 1072838778
+ .long 3819481236
+ .long 1016499965
+ .long 1709341917
+ .long 1072851781
+ .long 2552227826
+ .long 1015039787
+ .long 4112506593
+ .long 1072864925
+ .long 1829350193
+ .long 1015216097
+ .long 2799960843
+ .long 1072878213
+ .long 1913391796
+ .long 1015756674
+ .long 171030293
+ .long 1072891646
+ .long 1303423926
+ .long 1015238005
+ .long 2992903935
+ .long 1072905224
+ .long 1574172746
+ .long 1016061241
+ .long 926591435
+ .long 1072918951
+ .long 3427487848
+ .long 3163704045
+ .long 887463927
+ .long 1072932827
+ .long 1049900754
+ .long 3161575912
+ .long 1276261410
+ .long 1072946854
+ .long 2804567149
+ .long 1015390024
+ .long 569847338
+ .long 1072961034
+ .long 1209502043
+ .long 3159926671
+ .long 1617004845
+ .long 1072975368
+ .long 1623370769
+ .long 1011049453
+ .long 3049340112
+ .long 1072989858
+ .long 3667985273
+ .long 1013894369
+ .long 3577096743
+ .long 1073004506
+ .long 3145379760
+ .long 1014403278
+ .long 1990012071
+ .long 1073019314
+ .long 7447438
+ .long 3163526196
+ .long 1453150082
+ .long 1073034283
+ .long 3171891295
+ .long 3162037958
+ .long 917841882
+ .long 1073049415
+ .long 419288974
+ .long 1016280325
+ .long 3712504873
+ .long 1073064711
+ .long 3793507337
+ .long 1016095713
+ .long 363667784
+ .long 1073080175
+ .long 728023093
+ .long 1016345318
+ .long 2956612997
+ .long 1073095806
+ .long 1005538728
+ .long 3163304901
+ .long 2186617381
+ .long 1073111608
+ .long 2018924632
+ .long 3163803357
+ .long 1719614413
+ .long 1073127582
+ .long 3210617384
+ .long 3163796463
+ .long 1013258799
+ .long 1073143730
+ .long 3094194670
+ .long 3160631279
+ .long 3907805044
+ .long 1073160053
+ .long 2119843535
+ .long 3161988964
+ .long 1447192521
+ .long 1073176555
+ .long 508946058
+ .long 3162904882
+ .long 1944781191
+ .long 1073193236
+ .long 3108873501
+ .long 3162190556
+ .long 919555682
+ .long 1073210099
+ .long 2882956373
+ .long 1013312481
+ .long 2571947539
+ .long 1073227145
+ .long 4047189812
+ .long 3163777462
+ .long 2604962541
+ .long 1073244377
+ .long 3631372142
+ .long 3163870288
+ .long 1110089947
+ .long 1073261797
+ .long 3253791412
+ .long 1015920431
+ .long 2568320822
+ .long 1073279406
+ .long 1509121860
+ .long 1014756995
+ .long 2966275557
+ .long 1073297207
+ .long 2339118633
+ .long 3160254904
+ .long 2682146384
+ .long 1073315202
+ .long 586480042
+ .long 3163702083
+ .long 2191782032
+ .long 1073333393
+ .long 730975783
+ .long 1014083580
+ .long 2069751141
+ .long 1073351782
+ .long 576856675
+ .long 3163014404
+ .long 2990417245
+ .long 1073370371
+ .long 3552361237
+ .long 3163667409
+ .long 1434058175
+ .long 1073389163
+ .long 1853053619
+ .long 1015310724
+ .long 2572866477
+ .long 1073408159
+ .long 2462790535
+ .long 1015814775
+ .long 3092190715
+ .long 1073427362
+ .long 1457303226
+ .long 3159737305
+ .long 4076559943
+ .long 1073446774
+ .long 950899508
+ .long 3160987380
+ .long 2420883922
+ .long 1073466398
+ .long 174054861
+ .long 1014300631
+ .long 3716502172
+ .long 1073486235
+ .long 816778419
+ .long 1014197934
+ .long 777507147
+ .long 1073506289
+ .long 3507050924
+ .long 1015341199
+ .long 3706687593
+ .long 1073526560
+ .long 1821514088
+ .long 1013410604
+ .long 1242007932
+ .long 1073547053
+ .long 1073740399
+ .long 3163532637
+ .long 3707479175
+ .long 1073567768
+ .long 2789017511
+ .long 1014276997
+ .long 64696965
+ .long 1073588710
+ .long 3586233004
+ .long 1015962192
+ .long 863738719
+ .long 1073609879
+ .long 129252895
+ .long 3162690849
+ .long 3884662774
+ .long 1073631278
+ .long 1614448851
+ .long 1014281732
+ .long 2728693978
+ .long 1073652911
+ .long 2413007344
+ .long 3163551506
+ .long 3999357479
+ .long 1073674779
+ .long 1101668360
+ .long 1015989180
+ .long 1533953344
+ .long 1073696886
+ .long 835814894
+ .long 1015702697
+ .long 2174652632
+ .long 1073719233
+ .long 1301400989
+ .long 1014466875
+ .long 0
+ .long 1121452032
+ .long 4277811695
+ .long 1072049730
+ .long 4286751290
+ .long 1070514109
+ .long 3607585384
+ .long 1068264200
+ .long 871937163
+ .long 1065595565
+ .long 3302507530
+ .long 1062590576
+ .long 0
+ .long 1083179008
+ .long 0
+ .long 3230658560
+ .long 0
+ .long 3230714880
+ .long 1
+ .long 1048576
+ .long 4294967295
+ .long 2146435071
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 967835648
+ .long 0
+ .long 0
+ .type __dexp2_la__imldExp2HATab,@object
+ .size __dexp2_la__imldExp2HATab,1152
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+
+ .text
+.L_2__routine_start___svml_exp2f16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_exp2f16
+
+__svml_exp2f16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 256+__svml_sexp2_data_internal_avx512(%rip), %zmm3
+
+/*
+ * Reduced argument
+*/
+ vreduceps $65, {sae}, %zmm0, %zmm6
+ vmovups 192+__svml_sexp2_data_internal_avx512(%rip), %zmm5
+ vmovups 128+__svml_sexp2_data_internal_avx512(%rip), %zmm10
+ vmovups 384+__svml_sexp2_data_internal_avx512(%rip), %zmm2
+ vmovups 64+__svml_sexp2_data_internal_avx512(%rip), %zmm7
+
+/*
+ * Integer form of K+0.b1b2b3b4 in lower bits - call K_plus_f0
+ * Mantisssa of normalized single precision FP: 1.b1b2...b23
+ */
+ vaddps {rd-sae}, %zmm3, %zmm0, %zmm4
+ vandps 320+__svml_sexp2_data_internal_avx512(%rip), %zmm0, %zmm1
+
+/* c3*r + c2 */
+ vfmadd231ps {rn-sae}, %zmm6, %zmm5, %zmm10
+ vcmpps $30, {sae}, %zmm2, %zmm1, %k0
+
+/* c3*r^2 + c2*r + c1 */
+ vfmadd213ps {rn-sae}, %zmm7, %zmm6, %zmm10
+
+/* Table value: 2^(0.b1b2b3b4) */
+ vpermps __svml_sexp2_data_internal_avx512(%rip), %zmm4, %zmm9
+ kmovw %k0, %edx
+
+/* T*r */
+ vmulps {rn-sae}, %zmm6, %zmm9, %zmm8
+
+/* T + (T*r*(c3*r^2 + c2*r + c1) */
+ vfmadd213ps {rn-sae}, %zmm9, %zmm8, %zmm10
+
+/* Scaling placed at the end to avoid accuracy loss when T*r*scale underflows */
+ vscalefps {rn-sae}, %zmm0, %zmm10, %zmm1
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ vmovaps %zmm1, %zmm0
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm0, 64(%rsp)
+ vmovups %zmm1, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm1
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_sexp2_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_exp2f16,@function
+ .size __svml_exp2f16,.-__svml_exp2f16
+..LN__svml_exp2f16.0:
+
+.L_2__routine_start___svml_sexp2_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_sexp2_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movzwl 2(%rdi), %edx
+ andl $32640, %edx
+ cmpl $32640, %edx
+ je .LBL_2_10
+
+
+ movss (%rdi), %xmm7
+ movss .L_2il0floatpacket.43(%rip), %xmm0
+ movl %eax, -12(%rsp)
+ comiss %xmm7, %xmm0
+ jb .LBL_2_8
+
+
+ comiss .L_2il0floatpacket.44(%rip), %xmm7
+ jb .LBL_2_7
+
+
+ movaps %xmm7, %xmm0
+ movaps %xmm7, %xmm5
+ movss %xmm0, -24(%rsp)
+ movss -24(%rsp), %xmm1
+ movss .L_2il0floatpacket.46(%rip), %xmm2
+ movss .L_2il0floatpacket.52(%rip), %xmm6
+ addss %xmm2, %xmm1
+ movss %xmm1, -20(%rsp)
+ movss -20(%rsp), %xmm3
+ movswl -20(%rsp), %edx
+ subss %xmm2, %xmm3
+ movss %xmm3, -24(%rsp)
+ movss -24(%rsp), %xmm4
+ subss %xmm4, %xmm5
+ mulss %xmm5, %xmm6
+ addss .L_2il0floatpacket.51(%rip), %xmm6
+ mulss %xmm5, %xmm6
+ addss .L_2il0floatpacket.50(%rip), %xmm6
+ mulss %xmm5, %xmm6
+ addss .L_2il0floatpacket.49(%rip), %xmm6
+ mulss %xmm5, %xmm6
+ addss .L_2il0floatpacket.48(%rip), %xmm6
+ mulss %xmm5, %xmm6
+ addss .L_2il0floatpacket.47(%rip), %xmm6
+ movss %xmm6, -16(%rsp)
+ cmpl $104, %edx
+ jl .LBL_2_6
+
+
+ movzbl %dl, %edx
+ shll $7, %edx
+ movw %dx, -10(%rsp)
+ movss -16(%rsp), %xmm0
+ mulss -12(%rsp), %xmm0
+ movss %xmm0, -16(%rsp)
+ movss -16(%rsp), %xmm1
+ mulss .L_2il0floatpacket.54(%rip), %xmm1
+ movss %xmm1, -16(%rsp)
+ movl -16(%rsp), %ecx
+ movl %ecx, (%rsi)
+ ret
+
+.LBL_2_6:
+
+ addl $-106, %edx
+ cmpltss .L_2il0floatpacket.56(%rip), %xmm7
+ movzbl %dl, %edx
+ movzwl -10(%rsp), %eax
+ shll $7, %edx
+ andl $-32641, %eax
+ orl %edx, %eax
+ movss -16(%rsp), %xmm0
+ movw %ax, -10(%rsp)
+ mulss -12(%rsp), %xmm0
+ movd %xmm7, %eax
+ movss %xmm0, -16(%rsp)
+ movss -16(%rsp), %xmm1
+ andl $4, %eax
+ mulss .L_2il0floatpacket.55(%rip), %xmm1
+ movss %xmm1, -16(%rsp)
+ movl -16(%rsp), %ecx
+ movl %ecx, (%rsi)
+ ret
+
+.LBL_2_7:
+
+ movss .L_2il0floatpacket.53(%rip), %xmm0
+ mulss %xmm0, %xmm0
+ movss %xmm0, -16(%rsp)
+ movl -16(%rsp), %eax
+ movl %eax, (%rsi)
+ movl $4, %eax
+ ret
+
+.LBL_2_8:
+
+ movss .L_2il0floatpacket.45(%rip), %xmm0
+ mulss %xmm0, %xmm0
+ movss %xmm0, -16(%rsp)
+ movl -16(%rsp), %eax
+ movl %eax, (%rsi)
+ movl $3, %eax
+
+
+ ret
+
+.LBL_2_10:
+
+ movb 3(%rdi), %dl
+ andb $-128, %dl
+ cmpb $-128, %dl
+ je .LBL_2_12
+
+.LBL_2_11:
+
+ movss (%rdi), %xmm0
+ mulss %xmm0, %xmm0
+ movss %xmm0, (%rsi)
+ ret
+
+.LBL_2_12:
+
+ testl $8388607, (%rdi)
+ jne .LBL_2_11
+
+
+ movl %eax, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_sexp2_cout_rare_internal,@function
+ .size __svml_sexp2_cout_rare_internal,.-__svml_sexp2_cout_rare_internal
+..LN__svml_sexp2_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_sexp2_data_internal_avx512:
+ .long 1065353216
+ .long 1065724611
+ .long 1066112450
+ .long 1066517459
+ .long 1066940400
+ .long 1067382066
+ .long 1067843287
+ .long 1068324927
+ .long 1068827891
+ .long 1069353124
+ .long 1069901610
+ .long 1070474380
+ .long 1071072509
+ .long 1071697119
+ .long 1072349383
+ .long 1073030525
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1047916907
+ .long 1047916907
+ .long 1047916907
+ .long 1047916907
+ .long 1047916907
+ .long 1047916907
+ .long 1047916907
+ .long 1047916907
+ .long 1047916907
+ .long 1047916907
+ .long 1047916907
+ .long 1047916907
+ .long 1047916907
+ .long 1047916907
+ .long 1047916907
+ .long 1047916907
+ .long 1030247626
+ .long 1030247626
+ .long 1030247626
+ .long 1030247626
+ .long 1030247626
+ .long 1030247626
+ .long 1030247626
+ .long 1030247626
+ .long 1030247626
+ .long 1030247626
+ .long 1030247626
+ .long 1030247626
+ .long 1030247626
+ .long 1030247626
+ .long 1030247626
+ .long 1030247626
+ .long 1228931072
+ .long 1228931072
+ .long 1228931072
+ .long 1228931072
+ .long 1228931072
+ .long 1228931072
+ .long 1228931072
+ .long 1228931072
+ .long 1228931072
+ .long 1228931072
+ .long 1228931072
+ .long 1228931072
+ .long 1228931072
+ .long 1228931072
+ .long 1228931072
+ .long 1228931072
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 1123811328
+ .long 1123811328
+ .long 1123811328
+ .long 1123811328
+ .long 1123811328
+ .long 1123811328
+ .long 1123811328
+ .long 1123811328
+ .long 1123811328
+ .long 1123811328
+ .long 1123811328
+ .long 1123811328
+ .long 1123811328
+ .long 1123811328
+ .long 1123811328
+ .long 1123811328
+ .type __svml_sexp2_data_internal_avx512,@object
+ .size __svml_sexp2_data_internal_avx512,448
+ .align 4
+.L_2il0floatpacket.43:
+ .long 0x43000000
+ .type .L_2il0floatpacket.43,@object
+ .size .L_2il0floatpacket.43,4
+ .align 4
+.L_2il0floatpacket.44:
+ .long 0xc3160000
+ .type .L_2il0floatpacket.44,@object
+ .size .L_2il0floatpacket.44,4
+ .align 4
+.L_2il0floatpacket.45:
+ .long 0x7f7fffff
+ .type .L_2il0floatpacket.45,@object
+ .size .L_2il0floatpacket.45,4
+ .align 4
+.L_2il0floatpacket.46:
+ .long 0x4b400000
+ .type .L_2il0floatpacket.46,@object
+ .size .L_2il0floatpacket.46,4
+ .align 4
+.L_2il0floatpacket.47:
+ .long 0x3f800001
+ .type .L_2il0floatpacket.47,@object
+ .size .L_2il0floatpacket.47,4
+ .align 4
+.L_2il0floatpacket.48:
+ .long 0x3f317219
+ .type .L_2il0floatpacket.48,@object
+ .size .L_2il0floatpacket.48,4
+ .align 4
+.L_2il0floatpacket.49:
+ .long 0x3e75fc83
+ .type .L_2il0floatpacket.49,@object
+ .size .L_2il0floatpacket.49,4
+ .align 4
+.L_2il0floatpacket.50:
+ .long 0x3d635716
+ .type .L_2il0floatpacket.50,@object
+ .size .L_2il0floatpacket.50,4
+ .align 4
+.L_2il0floatpacket.51:
+ .long 0x3c1e883d
+ .type .L_2il0floatpacket.51,@object
+ .size .L_2il0floatpacket.51,4
+ .align 4
+.L_2il0floatpacket.52:
+ .long 0x3aafc483
+ .type .L_2il0floatpacket.52,@object
+ .size .L_2il0floatpacket.52,4
+ .align 4
+.L_2il0floatpacket.53:
+ .long 0x00000001
+ .type .L_2il0floatpacket.53,@object
+ .size .L_2il0floatpacket.53,4
+ .align 4
+.L_2il0floatpacket.54:
+ .long 0x7f000000
+ .type .L_2il0floatpacket.54,@object
+ .size .L_2il0floatpacket.54,4
+ .align 4
+.L_2il0floatpacket.55:
+ .long 0x34000000
+ .type .L_2il0floatpacket.55,@object
+ .size .L_2il0floatpacket.55,4
+ .align 4
+.L_2il0floatpacket.56:
+ .long 0xc2fc0000
+ .type .L_2il0floatpacket.56,@object
+ .size .L_2il0floatpacket.56,4
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * Argument representation:
+ * N = rint(X*2^k/ln2) = 2^k*M+j
+ * X = N*ln2/2^k + r = M*ln2 + ln2*(j/2^k) + r
+ * then -ln2/2^(k+1) < r < ln2/2^(k+1)
+ * Alternatively:
+ * N = trunc(X*2^k/ln2)
+ * then 0 < r < ln2/2^k
+ *
+ * Result calculation:
+ * exp(X) = exp(M*ln2 + ln2*(j/2^k) + r)
+ * = 2^M * 2^(j/2^k) * exp(r)
+ * 2^M is calculated by bit manipulation
+ * 2^(j/2^k) is stored in table
+ * exp(r) is approximated by polynomial
+ *
+ * The table lookup is skipped if k = 0.
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_exp8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_exp8
+
+__svml_exp8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 256+__svml_dexp_data_internal_avx512(%rip), %zmm3
+ vmovups 320+__svml_dexp_data_internal_avx512(%rip), %zmm1
+ vmovups 384+__svml_dexp_data_internal_avx512(%rip), %zmm4
+ vmovups 448+__svml_dexp_data_internal_avx512(%rip), %zmm2
+ vmovups 576+__svml_dexp_data_internal_avx512(%rip), %zmm5
+ vmovups 640+__svml_dexp_data_internal_avx512(%rip), %zmm15
+
+/* 2^(52-4)*1.5 + x * log2(e) in round-to-zero mode */
+ vfmadd213pd {rz-sae}, %zmm1, %zmm0, %zmm3
+ vmovups 704+__svml_dexp_data_internal_avx512(%rip), %zmm6
+
+/* p34 = c4*r+c3 */
+ vmovups 768+__svml_dexp_data_internal_avx512(%rip), %zmm9
+ vmovups 832+__svml_dexp_data_internal_avx512(%rip), %zmm11
+ vmovups 1024+__svml_dexp_data_internal_avx512(%rip), %zmm13
+
+/* Table lookup: Th = 2^(j/2^k) */
+ vmovups __svml_dexp_data_internal_avx512(%rip), %zmm14
+
+/* N ~ x*log2(e), round-to-zero to 4 fractional bits */
+ vsubpd {rn-sae}, %zmm1, %zmm3, %zmm1
+
+/* remove sign of x by "and" operation */
+ vandpd 960+__svml_dexp_data_internal_avx512(%rip), %zmm0, %zmm12
+ vpermt2pd 64+__svml_dexp_data_internal_avx512(%rip), %zmm3, %zmm14
+
+/* R = x - N*ln(2)_high */
+ vfnmadd213pd {rn-sae}, %zmm0, %zmm1, %zmm4
+
+/* compare against threshold */
+ vcmppd $29, {sae}, %zmm13, %zmm12, %k0
+
+/* R = R - N*ln(2)_high = x - N*ln(2) */
+ vfnmadd231pd {rn-sae}, %zmm1, %zmm2, %zmm4
+
+/* set mask for overflow/underflow */
+ kmovw %k0, %edx
+
+/* ensure |R|<2 even for special cases */
+ vandpd 512+__svml_dexp_data_internal_avx512(%rip), %zmm4, %zmm7
+
+/* r2 = r*r */
+ vmulpd {rn-sae}, %zmm7, %zmm7, %zmm8
+
+/* p56 = c6*r+c5 */
+ vfmadd231pd {rn-sae}, %zmm7, %zmm5, %zmm15
+ vfmadd231pd {rn-sae}, %zmm7, %zmm6, %zmm9
+
+/* r3 = r2*r = r^3 */
+ vmulpd {rn-sae}, %zmm7, %zmm8, %zmm10
+
+/* p12 = c2*r2+r */
+ vfmadd213pd {rn-sae}, %zmm7, %zmm8, %zmm11
+
+/* p36 = (c6*r+c5)*r^2+c4*r+c3 */
+ vfmadd213pd {rn-sae}, %zmm9, %zmm8, %zmm15
+
+/* p16 = ((c6*r+c5)*r^2+c4*r+c3)*r^3+c2*r^2+r = exp(r)-1 */
+ vfmadd213pd {rn-sae}, %zmm11, %zmm10, %zmm15
+
+/* Th*(exp(r)-1)+Th=Th*exp(r) */
+ vfmadd213pd {rn-sae}, %zmm14, %zmm14, %zmm15
+
+/* exp(x) = 2^M*Th*exp(r) */
+ vscalefpd {rn-sae}, %zmm1, %zmm15, %zmm1
+
+
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ vmovaps %zmm1, %zmm0
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm0, 64(%rsp)
+ vmovups %zmm1, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm1
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dexp_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_exp8,@function
+ .size __svml_exp8,.-__svml_exp8
+..LN__svml_exp8.0:
+
+.L_2__routine_start___svml_dexp_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dexp_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movzwl 6(%rdi), %edx
+ andl $32752, %edx
+ shrl $4, %edx
+ movsd (%rdi), %xmm6
+ movsd %xmm6, -8(%rsp)
+ cmpl $2047, %edx
+ je .LBL_2_17
+
+
+ cmpl $970, %edx
+ jle .LBL_2_15
+
+
+ movsd 1080+_imldExpHATab(%rip), %xmm0
+ comisd %xmm6, %xmm0
+ jb .LBL_2_14
+
+
+ comisd 1096+_imldExpHATab(%rip), %xmm6
+ jb .LBL_2_13
+
+
+ movsd 1024+_imldExpHATab(%rip), %xmm0
+ movaps %xmm6, %xmm5
+ mulsd %xmm6, %xmm0
+ lea _imldExpHATab(%rip), %r10
+ movsd %xmm0, -24(%rsp)
+ movsd -24(%rsp), %xmm1
+ movq 1136+_imldExpHATab(%rip), %rdx
+ movq %rdx, -8(%rsp)
+ addsd 1032+_imldExpHATab(%rip), %xmm1
+ movsd %xmm1, -16(%rsp)
+ movsd -16(%rsp), %xmm2
+ movl -16(%rsp), %r8d
+ movl %r8d, %ecx
+ andl $63, %r8d
+ subsd 1032+_imldExpHATab(%rip), %xmm2
+ movsd %xmm2, -24(%rsp)
+ lea 1(%r8,%r8), %r9d
+ movsd -24(%rsp), %xmm3
+ lea (%r8,%r8), %edi
+ mulsd 1104+_imldExpHATab(%rip), %xmm3
+ movsd -24(%rsp), %xmm4
+ subsd %xmm3, %xmm5
+ mulsd 1112+_imldExpHATab(%rip), %xmm4
+ movsd 1072+_imldExpHATab(%rip), %xmm2
+ subsd %xmm4, %xmm5
+ mulsd %xmm5, %xmm2
+ shrl $6, %ecx
+ addsd 1064+_imldExpHATab(%rip), %xmm2
+ comisd 1088+_imldExpHATab(%rip), %xmm6
+ mulsd %xmm5, %xmm2
+ movsd (%r10,%rdi,8), %xmm0
+ lea 1023(%rcx), %edx
+ addsd 1056+_imldExpHATab(%rip), %xmm2
+ mulsd %xmm5, %xmm2
+ addsd 1048+_imldExpHATab(%rip), %xmm2
+ mulsd %xmm5, %xmm2
+ addsd 1040+_imldExpHATab(%rip), %xmm2
+ mulsd %xmm5, %xmm2
+ mulsd %xmm5, %xmm2
+ addsd %xmm5, %xmm2
+ addsd (%r10,%r9,8), %xmm2
+ mulsd %xmm0, %xmm2
+ jb .LBL_2_9
+
+
+ andl $2047, %edx
+ addsd %xmm0, %xmm2
+ cmpl $2046, %edx
+ ja .LBL_2_8
+
+
+ movq 1136+_imldExpHATab(%rip), %rcx
+ shrq $48, %rcx
+ shll $4, %edx
+ andl $-32753, %ecx
+ orl %edx, %ecx
+ movw %cx, -2(%rsp)
+ movsd -8(%rsp), %xmm0
+ mulsd %xmm0, %xmm2
+ movsd %xmm2, (%rsi)
+ ret
+
+.LBL_2_8:
+
+ decl %edx
+ andl $2047, %edx
+ movzwl -2(%rsp), %ecx
+ shll $4, %edx
+ andl $-32753, %ecx
+ orl %edx, %ecx
+ movw %cx, -2(%rsp)
+ movsd -8(%rsp), %xmm0
+ mulsd %xmm0, %xmm2
+ mulsd 1152+_imldExpHATab(%rip), %xmm2
+ movsd %xmm2, (%rsi)
+ ret
+
+.LBL_2_9:
+
+ addl $1083, %ecx
+ andl $2047, %ecx
+ movl %ecx, %eax
+ movzwl -2(%rsp), %edx
+ shll $4, %eax
+ andl $-32753, %edx
+ orl %eax, %edx
+ movw %dx, -2(%rsp)
+ movsd -8(%rsp), %xmm1
+ mulsd %xmm1, %xmm2
+ mulsd %xmm0, %xmm1
+ movaps %xmm1, %xmm0
+ addsd %xmm2, %xmm0
+ cmpl $50, %ecx
+ ja .LBL_2_11
+
+
+ mulsd 1160+_imldExpHATab(%rip), %xmm0
+ movsd %xmm0, (%rsi)
+ jmp .LBL_2_12
+
+.LBL_2_11:
+
+ movsd %xmm0, -72(%rsp)
+ movsd -72(%rsp), %xmm0
+ subsd %xmm0, %xmm1
+ movsd %xmm1, -64(%rsp)
+ movsd -64(%rsp), %xmm1
+ addsd %xmm2, %xmm1
+ movsd %xmm1, -64(%rsp)
+ movsd -72(%rsp), %xmm2
+ mulsd 1168+_imldExpHATab(%rip), %xmm2
+ movsd %xmm2, -56(%rsp)
+ movsd -72(%rsp), %xmm4
+ movsd -56(%rsp), %xmm3
+ addsd %xmm3, %xmm4
+ movsd %xmm4, -48(%rsp)
+ movsd -48(%rsp), %xmm6
+ movsd -56(%rsp), %xmm5
+ subsd %xmm5, %xmm6
+ movsd %xmm6, -40(%rsp)
+ movsd -72(%rsp), %xmm8
+ movsd -40(%rsp), %xmm7
+ subsd %xmm7, %xmm8
+ movsd %xmm8, -32(%rsp)
+ movsd -64(%rsp), %xmm10
+ movsd -32(%rsp), %xmm9
+ addsd %xmm9, %xmm10
+ movsd %xmm10, -32(%rsp)
+ movsd -40(%rsp), %xmm11
+ mulsd 1160+_imldExpHATab(%rip), %xmm11
+ movsd %xmm11, -40(%rsp)
+ movsd -32(%rsp), %xmm12
+ mulsd 1160+_imldExpHATab(%rip), %xmm12
+ movsd %xmm12, -32(%rsp)
+ movsd -40(%rsp), %xmm14
+ movsd -32(%rsp), %xmm13
+ addsd %xmm13, %xmm14
+ movsd %xmm14, (%rsi)
+
+.LBL_2_12:
+
+ movl $4, %eax
+ ret
+
+.LBL_2_13:
+
+ movsd 1120+_imldExpHATab(%rip), %xmm0
+ movl $4, %eax
+ mulsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_14:
+
+ movsd 1128+_imldExpHATab(%rip), %xmm0
+ movl $3, %eax
+ mulsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_15:
+
+ movsd 1144+_imldExpHATab(%rip), %xmm0
+ addsd %xmm6, %xmm0
+ movsd %xmm0, (%rsi)
+
+
+ ret
+
+.LBL_2_17:
+
+ movb -1(%rsp), %dl
+ andb $-128, %dl
+ cmpb $-128, %dl
+ je .LBL_2_19
+
+.LBL_2_18:
+
+ mulsd %xmm6, %xmm6
+ movsd %xmm6, (%rsi)
+ ret
+
+.LBL_2_19:
+
+ testl $1048575, -4(%rsp)
+ jne .LBL_2_18
+
+
+ cmpl $0, -8(%rsp)
+ jne .LBL_2_18
+
+
+ movq 1136+_imldExpHATab(%rip), %rdx
+ movq %rdx, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dexp_cout_rare_internal,@function
+ .size __svml_dexp_cout_rare_internal,.-__svml_dexp_cout_rare_internal
+..LN__svml_dexp_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dexp_data_internal_avx512:
+ .long 0
+ .long 1072693248
+ .long 1828292879
+ .long 1072739672
+ .long 1014845819
+ .long 1072788152
+ .long 1853186616
+ .long 1072838778
+ .long 171030293
+ .long 1072891646
+ .long 1276261410
+ .long 1072946854
+ .long 3577096743
+ .long 1073004506
+ .long 3712504873
+ .long 1073064711
+ .long 1719614413
+ .long 1073127582
+ .long 1944781191
+ .long 1073193236
+ .long 1110089947
+ .long 1073261797
+ .long 2191782032
+ .long 1073333393
+ .long 2572866477
+ .long 1073408159
+ .long 3716502172
+ .long 1073486235
+ .long 3707479175
+ .long 1073567768
+ .long 2728693978
+ .long 1073652911
+ .long 0
+ .long 0
+ .long 1568897901
+ .long 1016568486
+ .long 3936719688
+ .long 3162512149
+ .long 3819481236
+ .long 1016499965
+ .long 1303423926
+ .long 1015238005
+ .long 2804567149
+ .long 1015390024
+ .long 3145379760
+ .long 1014403278
+ .long 3793507337
+ .long 1016095713
+ .long 3210617384
+ .long 3163796463
+ .long 3108873501
+ .long 3162190556
+ .long 3253791412
+ .long 1015920431
+ .long 730975783
+ .long 1014083580
+ .long 2462790535
+ .long 1015814775
+ .long 816778419
+ .long 1014197934
+ .long 2789017511
+ .long 1014276997
+ .long 2413007344
+ .long 3163551506
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 993624127
+ .long 1014676638
+ .long 993624127
+ .long 1014676638
+ .long 993624127
+ .long 1014676638
+ .long 993624127
+ .long 1014676638
+ .long 993624127
+ .long 1014676638
+ .long 993624127
+ .long 1014676638
+ .long 993624127
+ .long 1014676638
+ .long 993624127
+ .long 1014676638
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4010615101
+ .long 1062678197
+ .long 4010615101
+ .long 1062678197
+ .long 4010615101
+ .long 1062678197
+ .long 4010615101
+ .long 1062678197
+ .long 4010615101
+ .long 1062678197
+ .long 4010615101
+ .long 1062678197
+ .long 4010615101
+ .long 1062678197
+ .long 4010615101
+ .long 1062678197
+ .long 64584704
+ .long 1065422950
+ .long 64584704
+ .long 1065422950
+ .long 64584704
+ .long 1065422950
+ .long 64584704
+ .long 1065422950
+ .long 64584704
+ .long 1065422950
+ .long 64584704
+ .long 1065422950
+ .long 64584704
+ .long 1065422950
+ .long 64584704
+ .long 1065422950
+ .long 1270150640
+ .long 1067799894
+ .long 1270150640
+ .long 1067799894
+ .long 1270150640
+ .long 1067799894
+ .long 1270150640
+ .long 1067799894
+ .long 1270150640
+ .long 1067799894
+ .long 1270150640
+ .long 1067799894
+ .long 1270150640
+ .long 1067799894
+ .long 1270150640
+ .long 1067799894
+ .long 1421150370
+ .long 1069897045
+ .long 1421150370
+ .long 1069897045
+ .long 1421150370
+ .long 1069897045
+ .long 1421150370
+ .long 1069897045
+ .long 1421150370
+ .long 1069897045
+ .long 1421150370
+ .long 1069897045
+ .long 1421150370
+ .long 1069897045
+ .long 1421150370
+ .long 1069897045
+ .long 9762
+ .long 1071644672
+ .long 9762
+ .long 1071644672
+ .long 9762
+ .long 1071644672
+ .long 9762
+ .long 1071644672
+ .long 9762
+ .long 1071644672
+ .long 9762
+ .long 1071644672
+ .long 9762
+ .long 1071644672
+ .long 9762
+ .long 1071644672
+ .long 4294967152
+ .long 1072693247
+ .long 4294967152
+ .long 1072693247
+ .long 4294967152
+ .long 1072693247
+ .long 4294967152
+ .long 1072693247
+ .long 4294967152
+ .long 1072693247
+ .long 4294967152
+ .long 1072693247
+ .long 4294967152
+ .long 1072693247
+ .long 4294967152
+ .long 1072693247
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 1287323204
+ .long 1082531232
+ .long 1287323204
+ .long 1082531232
+ .long 1287323204
+ .long 1082531232
+ .long 1287323204
+ .long 1082531232
+ .long 1287323204
+ .long 1082531232
+ .long 1287323204
+ .long 1082531232
+ .long 1287323204
+ .long 1082531232
+ .long 1287323204
+ .long 1082531232
+ .long 0
+ .long 1005584384
+ .long 0
+ .long 1005584384
+ .long 0
+ .long 1005584384
+ .long 0
+ .long 1005584384
+ .long 0
+ .long 1005584384
+ .long 0
+ .long 1005584384
+ .long 0
+ .long 1005584384
+ .long 0
+ .long 1005584384
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 32752
+ .long 0
+ .long 32752
+ .long 0
+ .long 32752
+ .long 0
+ .long 32752
+ .long 0
+ .long 32752
+ .long 0
+ .long 32752
+ .long 0
+ .long 32752
+ .long 0
+ .long 32752
+ .long 0
+ .type __svml_dexp_data_internal_avx512,@object
+ .size __svml_dexp_data_internal_avx512,1280
+ .align 32
+_imldExpHATab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 1048019041
+ .long 1072704666
+ .long 2631457885
+ .long 3161546771
+ .long 3541402996
+ .long 1072716208
+ .long 896005651
+ .long 1015861842
+ .long 410360776
+ .long 1072727877
+ .long 1642514529
+ .long 1012987726
+ .long 1828292879
+ .long 1072739672
+ .long 1568897901
+ .long 1016568486
+ .long 852742562
+ .long 1072751596
+ .long 1882168529
+ .long 1010744893
+ .long 3490863953
+ .long 1072763649
+ .long 707771662
+ .long 3163903570
+ .long 2930322912
+ .long 1072775834
+ .long 3117806614
+ .long 3163670819
+ .long 1014845819
+ .long 1072788152
+ .long 3936719688
+ .long 3162512149
+ .long 3949972341
+ .long 1072800603
+ .long 1058231231
+ .long 1015777676
+ .long 828946858
+ .long 1072813191
+ .long 1044000608
+ .long 1016786167
+ .long 2288159958
+ .long 1072825915
+ .long 1151779725
+ .long 1015705409
+ .long 1853186616
+ .long 1072838778
+ .long 3819481236
+ .long 1016499965
+ .long 1709341917
+ .long 1072851781
+ .long 2552227826
+ .long 1015039787
+ .long 4112506593
+ .long 1072864925
+ .long 1829350193
+ .long 1015216097
+ .long 2799960843
+ .long 1072878213
+ .long 1913391796
+ .long 1015756674
+ .long 171030293
+ .long 1072891646
+ .long 1303423926
+ .long 1015238005
+ .long 2992903935
+ .long 1072905224
+ .long 1574172746
+ .long 1016061241
+ .long 926591435
+ .long 1072918951
+ .long 3427487848
+ .long 3163704045
+ .long 887463927
+ .long 1072932827
+ .long 1049900754
+ .long 3161575912
+ .long 1276261410
+ .long 1072946854
+ .long 2804567149
+ .long 1015390024
+ .long 569847338
+ .long 1072961034
+ .long 1209502043
+ .long 3159926671
+ .long 1617004845
+ .long 1072975368
+ .long 1623370769
+ .long 1011049453
+ .long 3049340112
+ .long 1072989858
+ .long 3667985273
+ .long 1013894369
+ .long 3577096743
+ .long 1073004506
+ .long 3145379760
+ .long 1014403278
+ .long 1990012071
+ .long 1073019314
+ .long 7447438
+ .long 3163526196
+ .long 1453150082
+ .long 1073034283
+ .long 3171891295
+ .long 3162037958
+ .long 917841882
+ .long 1073049415
+ .long 419288974
+ .long 1016280325
+ .long 3712504873
+ .long 1073064711
+ .long 3793507337
+ .long 1016095713
+ .long 363667784
+ .long 1073080175
+ .long 728023093
+ .long 1016345318
+ .long 2956612997
+ .long 1073095806
+ .long 1005538728
+ .long 3163304901
+ .long 2186617381
+ .long 1073111608
+ .long 2018924632
+ .long 3163803357
+ .long 1719614413
+ .long 1073127582
+ .long 3210617384
+ .long 3163796463
+ .long 1013258799
+ .long 1073143730
+ .long 3094194670
+ .long 3160631279
+ .long 3907805044
+ .long 1073160053
+ .long 2119843535
+ .long 3161988964
+ .long 1447192521
+ .long 1073176555
+ .long 508946058
+ .long 3162904882
+ .long 1944781191
+ .long 1073193236
+ .long 3108873501
+ .long 3162190556
+ .long 919555682
+ .long 1073210099
+ .long 2882956373
+ .long 1013312481
+ .long 2571947539
+ .long 1073227145
+ .long 4047189812
+ .long 3163777462
+ .long 2604962541
+ .long 1073244377
+ .long 3631372142
+ .long 3163870288
+ .long 1110089947
+ .long 1073261797
+ .long 3253791412
+ .long 1015920431
+ .long 2568320822
+ .long 1073279406
+ .long 1509121860
+ .long 1014756995
+ .long 2966275557
+ .long 1073297207
+ .long 2339118633
+ .long 3160254904
+ .long 2682146384
+ .long 1073315202
+ .long 586480042
+ .long 3163702083
+ .long 2191782032
+ .long 1073333393
+ .long 730975783
+ .long 1014083580
+ .long 2069751141
+ .long 1073351782
+ .long 576856675
+ .long 3163014404
+ .long 2990417245
+ .long 1073370371
+ .long 3552361237
+ .long 3163667409
+ .long 1434058175
+ .long 1073389163
+ .long 1853053619
+ .long 1015310724
+ .long 2572866477
+ .long 1073408159
+ .long 2462790535
+ .long 1015814775
+ .long 3092190715
+ .long 1073427362
+ .long 1457303226
+ .long 3159737305
+ .long 4076559943
+ .long 1073446774
+ .long 950899508
+ .long 3160987380
+ .long 2420883922
+ .long 1073466398
+ .long 174054861
+ .long 1014300631
+ .long 3716502172
+ .long 1073486235
+ .long 816778419
+ .long 1014197934
+ .long 777507147
+ .long 1073506289
+ .long 3507050924
+ .long 1015341199
+ .long 3706687593
+ .long 1073526560
+ .long 1821514088
+ .long 1013410604
+ .long 1242007932
+ .long 1073547053
+ .long 1073740399
+ .long 3163532637
+ .long 3707479175
+ .long 1073567768
+ .long 2789017511
+ .long 1014276997
+ .long 64696965
+ .long 1073588710
+ .long 3586233004
+ .long 1015962192
+ .long 863738719
+ .long 1073609879
+ .long 129252895
+ .long 3162690849
+ .long 3884662774
+ .long 1073631278
+ .long 1614448851
+ .long 1014281732
+ .long 2728693978
+ .long 1073652911
+ .long 2413007344
+ .long 3163551506
+ .long 3999357479
+ .long 1073674779
+ .long 1101668360
+ .long 1015989180
+ .long 1533953344
+ .long 1073696886
+ .long 835814894
+ .long 1015702697
+ .long 2174652632
+ .long 1073719233
+ .long 1301400989
+ .long 1014466875
+ .long 1697350398
+ .long 1079448903
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1071644672
+ .long 1431652600
+ .long 1069897045
+ .long 1431670732
+ .long 1067799893
+ .long 984555731
+ .long 1065423122
+ .long 472530941
+ .long 1062650218
+ .long 4277811695
+ .long 1082535490
+ .long 3715808466
+ .long 3230016299
+ .long 3576508497
+ .long 3230091536
+ .long 4277796864
+ .long 1065758274
+ .long 3164486458
+ .long 1025308570
+ .long 1
+ .long 1048576
+ .long 4294967295
+ .long 2146435071
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1009778688
+ .long 0
+ .long 1106771968
+ .type _imldExpHATab,@object
+ .size _imldExpHATab,1176
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * Argument representation:
+ * M = rint(X*2^k/ln2) = 2^k*N+j
+ * X = M*ln2/2^k + r = N*ln2 + ln2*(j/2^k) + r
+ * then -ln2/2^(k+1) < r < ln2/2^(k+1)
+ * Alternatively:
+ * M = trunc(X*2^k/ln2)
+ * then 0 < r < ln2/2^k
+ *
+ * Result calculation:
+ * exp(X) = exp(N*ln2 + ln2*(j/2^k) + r)
+ * = 2^N * 2^(j/2^k) * exp(r)
+ * 2^N is calculated by bit manipulation
+ * 2^(j/2^k) is computed from table lookup
+ * exp(r) is approximated by polynomial
+ *
+ * The table lookup is skipped if k = 0.
+ * For low accuracy approximation, exp(r) ~ 1 or 1+r.
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_expf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_expf16
+
+__svml_expf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 256+__svml_sexp_data_internal_avx512(%rip), %zmm2
+ vmovups 320+__svml_sexp_data_internal_avx512(%rip), %zmm1
+
+/* x!=0? */
+ vmovups 896+__svml_sexp_data_internal_avx512(%rip), %zmm7
+ vmovups 384+__svml_sexp_data_internal_avx512(%rip), %zmm5
+
+/* Table lookup: Tl, Tl = 2^(j/2^10), j = 0,...,2^5-1 */
+ vmovups __svml_sexp_data_internal_avx512(%rip), %zmm8
+
+/* Table lookup: Th, Th = 2^(j/2^5), j = 0,...,2^5-1 */
+ vmovups 128+__svml_sexp_data_internal_avx512(%rip), %zmm12
+
+/* 2^(52-4)*1.5 + x * log2(e) in round-to-zero mode */
+ vfmadd213ps {rz-sae}, %zmm1, %zmm0, %zmm2
+ vmovups 448+__svml_sexp_data_internal_avx512(%rip), %zmm4
+ vmovups 640+__svml_sexp_data_internal_avx512(%rip), %zmm10
+
+/* ensure |R|<2 even for special cases */
+ vmovups 512+__svml_sexp_data_internal_avx512(%rip), %zmm6
+ vcmpps $4, {sae}, %zmm7, %zmm0, %k1
+
+/* Adjust index by right shift for 5 bits */
+ vpsrld $5, %zmm2, %zmm3
+
+/* N ~ x*log2(e), round-to-zero to 10 fractional bits */
+ vsubps {rn-sae}, %zmm1, %zmm2, %zmm13
+ vpermt2ps 64+__svml_sexp_data_internal_avx512(%rip), %zmm2, %zmm8
+ vpermt2ps 192+__svml_sexp_data_internal_avx512(%rip), %zmm3, %zmm12
+
+/* remove sign of x by "and" operation */
+ vandps 576+__svml_sexp_data_internal_avx512(%rip), %zmm0, %zmm9
+
+/* R = x - N*ln(2)_high */
+ vfnmadd213ps {rn-sae}, %zmm0, %zmm13, %zmm5
+
+/* Th*Tl ~ 2^(j/2^k) */
+ vmulps {rn-sae}, %zmm8, %zmm12, %zmm12{%k1}
+
+/* compare against threshold */
+ vcmpps $29, {sae}, %zmm10, %zmm9, %k0
+
+/* R = R - N*ln(2)_low = x - N*ln(2) */
+ vfnmadd231ps {rn-sae}, %zmm13, %zmm4, %zmm5
+
+/* set mask for overflow/underflow */
+ kmovw %k0, %edx
+ vrangeps $2, {sae}, %zmm6, %zmm5, %zmm11
+
+/* 2^(j/2^k)*(r+1) */
+ vfmadd213ps {rn-sae}, %zmm12, %zmm11, %zmm12
+
+/* exp(x) = 2^N*2^(j/2^k)*(r+1) */
+ vscalefps {rn-sae}, %zmm13, %zmm12, %zmm1
+
+/*
+ * Check general callout condition
+ * Check VML specific mode related condition,
+ * no check in case of other libraries
+ * Above HA/LA/EP sequences produce
+ * correct results even without going to callout.
+ * Callout was only needed to raise flags
+ * and set errno. If caller doesn't need that
+ * then it is safe to proceed without callout
+ */
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ vmovaps %zmm1, %zmm0
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm0, 64(%rsp)
+ vmovups %zmm1, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm1
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_sexp_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_expf16,@function
+ .size __svml_expf16,.-__svml_expf16
+..LN__svml_expf16.0:
+
+.L_2__routine_start___svml_sexp_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_sexp_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movzwl 2(%rdi), %edx
+ andl $32640, %edx
+ cmpl $32640, %edx
+ je .LBL_2_12
+
+
+ movss (%rdi), %xmm9
+ movss .L_2il0floatpacket.52(%rip), %xmm0
+ movl %eax, -12(%rsp)
+ comiss %xmm9, %xmm0
+ jb .LBL_2_10
+
+
+ comiss .L_2il0floatpacket.53(%rip), %xmm9
+ jb .LBL_2_9
+
+
+ movss .L_2il0floatpacket.55(%rip), %xmm0
+ movaps %xmm9, %xmm6
+ mulss %xmm9, %xmm0
+ comiss .L_2il0floatpacket.64(%rip), %xmm9
+ movss %xmm0, -24(%rsp)
+ movss -24(%rsp), %xmm1
+ movss .L_2il0floatpacket.56(%rip), %xmm2
+ movss .L_2il0floatpacket.63(%rip), %xmm7
+ addss %xmm2, %xmm1
+ movss %xmm1, -20(%rsp)
+ movss -20(%rsp), %xmm3
+ movss .L_2il0floatpacket.59(%rip), %xmm8
+ subss %xmm2, %xmm3
+ movss %xmm3, -24(%rsp)
+ movss -24(%rsp), %xmm4
+ mulss .L_2il0floatpacket.57(%rip), %xmm4
+ movss -24(%rsp), %xmm5
+ subss %xmm4, %xmm6
+ mulss .L_2il0floatpacket.58(%rip), %xmm5
+ movswl -20(%rsp), %ecx
+ subss %xmm5, %xmm6
+ mulss %xmm6, %xmm7
+ addss .L_2il0floatpacket.62(%rip), %xmm7
+ mulss %xmm6, %xmm7
+ addss .L_2il0floatpacket.61(%rip), %xmm7
+ mulss %xmm6, %xmm7
+ addss .L_2il0floatpacket.60(%rip), %xmm7
+ mulss %xmm6, %xmm7
+ addss %xmm8, %xmm7
+ mulss %xmm6, %xmm7
+ addss %xmm7, %xmm8
+ movss %xmm8, -16(%rsp)
+ jb .LBL_2_8
+
+
+ lea 127(%rcx), %edx
+ cmpl $254, %edx
+ ja .LBL_2_7
+
+
+ movzbl %dl, %edx
+ shll $7, %edx
+ movw %dx, -10(%rsp)
+ movss -16(%rsp), %xmm0
+ mulss -12(%rsp), %xmm0
+ movss %xmm0, -16(%rsp)
+ movl -16(%rsp), %ecx
+ movl %ecx, (%rsi)
+ ret
+
+.LBL_2_7:
+
+ addl $126, %ecx
+ movzbl %cl, %ecx
+ movzwl -10(%rsp), %edx
+ shll $7, %ecx
+ andl $-32641, %edx
+ orl %ecx, %edx
+ movss -16(%rsp), %xmm0
+ movw %dx, -10(%rsp)
+ mulss -12(%rsp), %xmm0
+ movss %xmm0, -16(%rsp)
+ movss -16(%rsp), %xmm1
+ mulss .L_2il0floatpacket.67(%rip), %xmm1
+ movss %xmm1, -16(%rsp)
+ movl -16(%rsp), %edi
+ movl %edi, (%rsi)
+ ret
+
+.LBL_2_8:
+
+ addl $-69, %ecx
+ movzbl %cl, %ecx
+ movzwl -10(%rsp), %eax
+ shll $7, %ecx
+ andl $-32641, %eax
+ orl %ecx, %eax
+ movss -16(%rsp), %xmm0
+ movw %ax, -10(%rsp)
+ movl $4, %eax
+ mulss -12(%rsp), %xmm0
+ movss %xmm0, -16(%rsp)
+ movss -16(%rsp), %xmm1
+ mulss .L_2il0floatpacket.66(%rip), %xmm1
+ movss %xmm1, -16(%rsp)
+ movl -16(%rsp), %edx
+ movl %edx, (%rsi)
+ ret
+
+.LBL_2_9:
+
+ movss .L_2il0floatpacket.65(%rip), %xmm0
+ mulss %xmm0, %xmm0
+ movss %xmm0, -16(%rsp)
+ movl -16(%rsp), %eax
+ movl %eax, (%rsi)
+ movl $4, %eax
+ ret
+
+.LBL_2_10:
+
+ movss .L_2il0floatpacket.54(%rip), %xmm0
+ mulss %xmm0, %xmm0
+ movss %xmm0, -16(%rsp)
+ movl -16(%rsp), %eax
+ movl %eax, (%rsi)
+ movl $3, %eax
+
+
+ ret
+
+.LBL_2_12:
+
+ movb 3(%rdi), %dl
+ andb $-128, %dl
+ cmpb $-128, %dl
+ je .LBL_2_14
+
+.LBL_2_13:
+
+ movss (%rdi), %xmm0
+ mulss %xmm0, %xmm0
+ movss %xmm0, (%rsi)
+ ret
+
+.LBL_2_14:
+
+ testl $8388607, (%rdi)
+ jne .LBL_2_13
+
+
+ movl %eax, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_sexp_cout_rare_internal,@function
+ .size __svml_sexp_cout_rare_internal,.-__svml_sexp_cout_rare_internal
+..LN__svml_sexp_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_sexp_data_internal_avx512:
+ .long 1065353217
+ .long 1065358897
+ .long 1065364581
+ .long 1065370269
+ .long 1065375961
+ .long 1065381656
+ .long 1065387356
+ .long 1065393059
+ .long 1065398766
+ .long 1065404477
+ .long 1065410192
+ .long 1065415911
+ .long 1065421634
+ .long 1065427360
+ .long 1065433091
+ .long 1065438825
+ .long 1065444563
+ .long 1065450305
+ .long 1065456051
+ .long 1065461801
+ .long 1065467554
+ .long 1065473312
+ .long 1065479074
+ .long 1065484839
+ .long 1065490608
+ .long 1065496381
+ .long 1065502159
+ .long 1065507940
+ .long 1065513725
+ .long 1065519513
+ .long 1065525306
+ .long 1065531103
+ .long 1065353216
+ .long 1065536903
+ .long 1065724611
+ .long 1065916431
+ .long 1066112450
+ .long 1066312762
+ .long 1066517459
+ .long 1066726640
+ .long 1066940400
+ .long 1067158842
+ .long 1067382066
+ .long 1067610179
+ .long 1067843287
+ .long 1068081499
+ .long 1068324927
+ .long 1068573686
+ .long 1068827891
+ .long 1069087663
+ .long 1069353124
+ .long 1069624397
+ .long 1069901610
+ .long 1070184894
+ .long 1070474380
+ .long 1070770206
+ .long 1071072509
+ .long 1071381432
+ .long 1071697119
+ .long 1072019719
+ .long 1072349383
+ .long 1072686266
+ .long 1073030525
+ .long 1073382323
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1178599424
+ .long 1178599424
+ .long 1178599424
+ .long 1178599424
+ .long 1178599424
+ .long 1178599424
+ .long 1178599424
+ .long 1178599424
+ .long 1178599424
+ .long 1178599424
+ .long 1178599424
+ .long 1178599424
+ .long 1178599424
+ .long 1178599424
+ .long 1178599424
+ .long 1178599424
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 796917760
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 3968
+ .long 3968
+ .long 3968
+ .long 3968
+ .long 3968
+ .long 3968
+ .long 3968
+ .long 3968
+ .long 3968
+ .long 3968
+ .long 3968
+ .long 3968
+ .long 3968
+ .long 3968
+ .long 3968
+ .long 3968
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 849703008
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .type __svml_sexp_data_internal_avx512,@object
+ .size __svml_sexp_data_internal_avx512,1216
+ .align 4
+.L_2il0floatpacket.52:
+ .long 0x42b17217
+ .type .L_2il0floatpacket.52,@object
+ .size .L_2il0floatpacket.52,4
+ .align 4
+.L_2il0floatpacket.53:
+ .long 0xc2cff1b4
+ .type .L_2il0floatpacket.53,@object
+ .size .L_2il0floatpacket.53,4
+ .align 4
+.L_2il0floatpacket.54:
+ .long 0x7f7fffff
+ .type .L_2il0floatpacket.54,@object
+ .size .L_2il0floatpacket.54,4
+ .align 4
+.L_2il0floatpacket.55:
+ .long 0x3fb8aa3b
+ .type .L_2il0floatpacket.55,@object
+ .size .L_2il0floatpacket.55,4
+ .align 4
+.L_2il0floatpacket.56:
+ .long 0x4b400000
+ .type .L_2il0floatpacket.56,@object
+ .size .L_2il0floatpacket.56,4
+ .align 4
+.L_2il0floatpacket.57:
+ .long 0x3f317200
+ .type .L_2il0floatpacket.57,@object
+ .size .L_2il0floatpacket.57,4
+ .align 4
+.L_2il0floatpacket.58:
+ .long 0x35bfbe8e
+ .type .L_2il0floatpacket.58,@object
+ .size .L_2il0floatpacket.58,4
+ .align 4
+.L_2il0floatpacket.59:
+ .long 0x3f800001
+ .type .L_2il0floatpacket.59,@object
+ .size .L_2il0floatpacket.59,4
+ .align 4
+.L_2il0floatpacket.60:
+ .long 0x3efffe85
+ .type .L_2il0floatpacket.60,@object
+ .size .L_2il0floatpacket.60,4
+ .align 4
+.L_2il0floatpacket.61:
+ .long 0x3e2aa9c6
+ .type .L_2il0floatpacket.61,@object
+ .size .L_2il0floatpacket.61,4
+ .align 4
+.L_2il0floatpacket.62:
+ .long 0x3d2bb1b6
+ .type .L_2il0floatpacket.62,@object
+ .size .L_2il0floatpacket.62,4
+ .align 4
+.L_2il0floatpacket.63:
+ .long 0x3c0950ef
+ .type .L_2il0floatpacket.63,@object
+ .size .L_2il0floatpacket.63,4
+ .align 4
+.L_2il0floatpacket.64:
+ .long 0xc2aeac4f
+ .type .L_2il0floatpacket.64,@object
+ .size .L_2il0floatpacket.64,4
+ .align 4
+.L_2il0floatpacket.65:
+ .long 0x00000001
+ .type .L_2il0floatpacket.65,@object
+ .size .L_2il0floatpacket.65,4
+ .align 4
+.L_2il0floatpacket.66:
+ .long 0x21800000
+ .type .L_2il0floatpacket.66,@object
+ .size .L_2il0floatpacket.66,4
+ .align 4
+.L_2il0floatpacket.67:
+ .long 0x40000000
+ .type .L_2il0floatpacket.67,@object
+ .size .L_2il0floatpacket.67,4
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * * After computing exp(x) in high-low parts, an accurate computation is performed to obtain exp(x)-1
+ * * Typical exp() implementation, except that:
+ * * - tables are small (16 elements), allowing for fast gathers
+ * * - all arguments processed in the main path
+ * * - final VSCALEF assists branch-free design (correct overflow/underflow and special case responses)
+ * * - a VAND is used to ensure the reduced argument |R|<2, even for large inputs
+ * * - RZ mode used to avoid oveflow to +/-Inf for x*log2(e); helps with special case handling
+ * *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_expm18_z0_0:
+
+ .align 16,0x90
+ .globl __svml_expm18
+
+__svml_expm18:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 256+__svml_dexpm1_data_internal_avx512(%rip), %zmm6
+ vmovups 320+__svml_dexpm1_data_internal_avx512(%rip), %zmm4
+ vmovups 512+__svml_dexpm1_data_internal_avx512(%rip), %zmm11
+ vmovups 576+__svml_dexpm1_data_internal_avx512(%rip), %zmm5
+ vmovups 384+__svml_dexpm1_data_internal_avx512(%rip), %zmm3
+ vmovups 960+__svml_dexpm1_data_internal_avx512(%rip), %zmm13
+ vmovups 1024+__svml_dexpm1_data_internal_avx512(%rip), %zmm15
+
+/* polynomial */
+ vmovups 832+__svml_dexpm1_data_internal_avx512(%rip), %zmm12
+
+/* set Z0=max(Z0, -128.0) */
+ vmovups 640+__svml_dexpm1_data_internal_avx512(%rip), %zmm8
+ vmovups 1088+__svml_dexpm1_data_internal_avx512(%rip), %zmm14
+ vmovups __svml_dexpm1_data_internal_avx512(%rip), %zmm9
+ vmovaps %zmm0, %zmm2
+
+/* 2^(52-4)*1.5 + x * log2(e) */
+ vfmadd213pd {rn-sae}, %zmm4, %zmm2, %zmm6
+ vmovups 128+__svml_dexpm1_data_internal_avx512(%rip), %zmm0
+ vcmppd $21, {sae}, %zmm3, %zmm2, %k0
+
+/* Z0 ~ x*log2(e), rounded to 4 fractional bits */
+ vsubpd {rn-sae}, %zmm4, %zmm6, %zmm7
+ vpermt2pd 64+__svml_dexpm1_data_internal_avx512(%rip), %zmm6, %zmm9
+ vpermt2pd 192+__svml_dexpm1_data_internal_avx512(%rip), %zmm6, %zmm0
+ vandpd 448+__svml_dexpm1_data_internal_avx512(%rip), %zmm2, %zmm1
+
+/* R = x - Z0*log(2) */
+ vfnmadd213pd {rn-sae}, %zmm2, %zmm7, %zmm11
+ vmaxpd {sae}, %zmm8, %zmm7, %zmm10
+ vfnmadd231pd {rn-sae}, %zmm7, %zmm5, %zmm11
+ kmovw %k0, %edx
+
+/* ensure |R|<2 even for special cases */
+ vandpd 704+__svml_dexpm1_data_internal_avx512(%rip), %zmm11, %zmm3
+ vmovups 896+__svml_dexpm1_data_internal_avx512(%rip), %zmm11
+
+/* scale Th */
+ vscalefpd {rn-sae}, %zmm10, %zmm9, %zmm4
+ vfmadd231pd {rn-sae}, %zmm3, %zmm13, %zmm15
+ vfmadd231pd {rn-sae}, %zmm3, %zmm12, %zmm11
+ vmovups 1152+__svml_dexpm1_data_internal_avx512(%rip), %zmm12
+ vmulpd {rn-sae}, %zmm3, %zmm3, %zmm13
+ vfmadd231pd {rn-sae}, %zmm3, %zmm14, %zmm12
+ vfmadd213pd {rn-sae}, %zmm15, %zmm13, %zmm11
+ vfmadd213pd {rn-sae}, %zmm12, %zmm13, %zmm11
+
+/* Tlr + R+ R*Poly */
+ vfmadd213pd {rn-sae}, %zmm0, %zmm13, %zmm11
+
+/* Th - 1 */
+ vmovups 1216+__svml_dexpm1_data_internal_avx512(%rip), %zmm0
+ vaddpd {rn-sae}, %zmm3, %zmm11, %zmm14
+ vsubpd {rn-sae}, %zmm0, %zmm4, %zmm15
+
+/* (Th-1)+Th*(Tlr + R+ R*Poly) */
+ vfmadd213pd {rn-sae}, %zmm15, %zmm14, %zmm4
+ vorpd %zmm1, %zmm4, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm2, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dexpm1_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_expm18,@function
+ .size __svml_expm18,.-__svml_expm18
+..LN__svml_expm18.0:
+
+.L_2__routine_start___svml_dexpm1_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dexpm1_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movsd (%rdi), %xmm6
+ pxor %xmm0, %xmm0
+ movzwl 6(%rdi), %edx
+ comisd %xmm6, %xmm0
+ ja .LBL_2_18
+
+
+ andl $32752, %edx
+ shrl $4, %edx
+ movsd %xmm6, -8(%rsp)
+ cmpl $2047, %edx
+ je .LBL_2_19
+
+
+ cmpl $970, %edx
+ jle .LBL_2_16
+
+
+ movsd 1080+_imldExpHATab(%rip), %xmm0
+ comisd %xmm6, %xmm0
+ jb .LBL_2_15
+
+
+ comisd 1096+_imldExpHATab(%rip), %xmm6
+ jb .LBL_2_14
+
+
+ movsd 1024+_imldExpHATab(%rip), %xmm0
+ movaps %xmm6, %xmm5
+ mulsd %xmm6, %xmm0
+ lea _imldExpHATab(%rip), %r10
+ movsd %xmm0, -24(%rsp)
+ movsd -24(%rsp), %xmm1
+ movq 1136+_imldExpHATab(%rip), %rdx
+ movq %rdx, -8(%rsp)
+ addsd 1032+_imldExpHATab(%rip), %xmm1
+ movsd %xmm1, -16(%rsp)
+ movsd -16(%rsp), %xmm2
+ movl -16(%rsp), %r8d
+ movl %r8d, %ecx
+ andl $63, %r8d
+ subsd 1032+_imldExpHATab(%rip), %xmm2
+ movsd %xmm2, -24(%rsp)
+ lea 1(%r8,%r8), %r9d
+ movsd -24(%rsp), %xmm3
+ lea (%r8,%r8), %edi
+ mulsd 1104+_imldExpHATab(%rip), %xmm3
+ movsd -24(%rsp), %xmm4
+ subsd %xmm3, %xmm5
+ mulsd 1112+_imldExpHATab(%rip), %xmm4
+ movsd 1072+_imldExpHATab(%rip), %xmm2
+ subsd %xmm4, %xmm5
+ mulsd %xmm5, %xmm2
+ shrl $6, %ecx
+ addsd 1064+_imldExpHATab(%rip), %xmm2
+ comisd 1088+_imldExpHATab(%rip), %xmm6
+ mulsd %xmm5, %xmm2
+ movsd (%r10,%rdi,8), %xmm0
+ lea 1023(%rcx), %edx
+ addsd 1056+_imldExpHATab(%rip), %xmm2
+ mulsd %xmm5, %xmm2
+ addsd 1048+_imldExpHATab(%rip), %xmm2
+ mulsd %xmm5, %xmm2
+ addsd 1040+_imldExpHATab(%rip), %xmm2
+ mulsd %xmm5, %xmm2
+ mulsd %xmm5, %xmm2
+ addsd %xmm5, %xmm2
+ addsd (%r10,%r9,8), %xmm2
+ mulsd %xmm0, %xmm2
+ jb .LBL_2_10
+
+
+ andl $2047, %edx
+ addsd %xmm0, %xmm2
+ cmpl $2046, %edx
+ ja .LBL_2_9
+
+
+ movq 1136+_imldExpHATab(%rip), %rcx
+ shrq $48, %rcx
+ shll $4, %edx
+ andl $-32753, %ecx
+ orl %edx, %ecx
+ movw %cx, -2(%rsp)
+ movsd -8(%rsp), %xmm0
+ mulsd %xmm0, %xmm2
+ movsd %xmm2, (%rsi)
+ ret
+
+.LBL_2_9:
+
+ decl %edx
+ andl $2047, %edx
+ movzwl -2(%rsp), %ecx
+ shll $4, %edx
+ andl $-32753, %ecx
+ orl %edx, %ecx
+ movw %cx, -2(%rsp)
+ movsd -8(%rsp), %xmm0
+ mulsd %xmm0, %xmm2
+ mulsd 1152+_imldExpHATab(%rip), %xmm2
+ movsd %xmm2, (%rsi)
+ ret
+
+.LBL_2_10:
+
+ addl $1083, %ecx
+ andl $2047, %ecx
+ movl %ecx, %eax
+ movzwl -2(%rsp), %edx
+ shll $4, %eax
+ andl $-32753, %edx
+ orl %eax, %edx
+ movw %dx, -2(%rsp)
+ movsd -8(%rsp), %xmm1
+ mulsd %xmm1, %xmm2
+ mulsd %xmm0, %xmm1
+ movaps %xmm1, %xmm0
+ addsd %xmm2, %xmm0
+ cmpl $50, %ecx
+ ja .LBL_2_12
+
+
+ mulsd 1160+_imldExpHATab(%rip), %xmm0
+ movsd %xmm0, (%rsi)
+ jmp .LBL_2_13
+
+.LBL_2_12:
+
+ movsd %xmm0, -72(%rsp)
+ movsd -72(%rsp), %xmm0
+ subsd %xmm0, %xmm1
+ movsd %xmm1, -64(%rsp)
+ movsd -64(%rsp), %xmm1
+ addsd %xmm2, %xmm1
+ movsd %xmm1, -64(%rsp)
+ movsd -72(%rsp), %xmm2
+ mulsd 1168+_imldExpHATab(%rip), %xmm2
+ movsd %xmm2, -56(%rsp)
+ movsd -72(%rsp), %xmm4
+ movsd -56(%rsp), %xmm3
+ addsd %xmm3, %xmm4
+ movsd %xmm4, -48(%rsp)
+ movsd -48(%rsp), %xmm6
+ movsd -56(%rsp), %xmm5
+ subsd %xmm5, %xmm6
+ movsd %xmm6, -40(%rsp)
+ movsd -72(%rsp), %xmm8
+ movsd -40(%rsp), %xmm7
+ subsd %xmm7, %xmm8
+ movsd %xmm8, -32(%rsp)
+ movsd -64(%rsp), %xmm10
+ movsd -32(%rsp), %xmm9
+ addsd %xmm9, %xmm10
+ movsd %xmm10, -32(%rsp)
+ movsd -40(%rsp), %xmm11
+ mulsd 1160+_imldExpHATab(%rip), %xmm11
+ movsd %xmm11, -40(%rsp)
+ movsd -32(%rsp), %xmm12
+ mulsd 1160+_imldExpHATab(%rip), %xmm12
+ movsd %xmm12, -32(%rsp)
+ movsd -40(%rsp), %xmm14
+ movsd -32(%rsp), %xmm13
+ addsd %xmm13, %xmm14
+ movsd %xmm14, (%rsi)
+
+.LBL_2_13:
+
+ movl $4, %eax
+ ret
+
+.LBL_2_14:
+
+ movsd 1120+_imldExpHATab(%rip), %xmm0
+ movl $4, %eax
+ mulsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_15:
+
+ movsd 1128+_imldExpHATab(%rip), %xmm0
+ movl $3, %eax
+ mulsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_16:
+
+ movsd 1144+_imldExpHATab(%rip), %xmm0
+ addsd %xmm6, %xmm0
+ movsd %xmm0, (%rsi)
+
+
+ ret
+
+.LBL_2_18:
+
+ movq $0xbff0000000000000, %rax
+ movq %rax, (%rsi)
+ xorl %eax, %eax
+ ret
+
+.LBL_2_19:
+
+ movb -1(%rsp), %dl
+ andb $-128, %dl
+ cmpb $-128, %dl
+ je .LBL_2_21
+
+.LBL_2_20:
+
+ mulsd %xmm6, %xmm6
+ movsd %xmm6, (%rsi)
+ ret
+
+.LBL_2_21:
+
+ testl $1048575, -4(%rsp)
+ jne .LBL_2_20
+
+
+ cmpl $0, -8(%rsp)
+ jne .LBL_2_20
+
+
+ movq 1136+_imldExpHATab(%rip), %rdx
+ movq %rdx, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dexpm1_cout_rare_internal,@function
+ .size __svml_dexpm1_cout_rare_internal,.-__svml_dexpm1_cout_rare_internal
+..LN__svml_dexpm1_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dexpm1_data_internal_avx512:
+ .long 0
+ .long 1072693248
+ .long 1828292879
+ .long 1072739672
+ .long 1014845819
+ .long 1072788152
+ .long 1853186616
+ .long 1072838778
+ .long 171030293
+ .long 1072891646
+ .long 1276261410
+ .long 1072946854
+ .long 3577096743
+ .long 1073004506
+ .long 3712504873
+ .long 1073064711
+ .long 1719614413
+ .long 1073127582
+ .long 1944781191
+ .long 1073193236
+ .long 1110089947
+ .long 1073261797
+ .long 2191782032
+ .long 1073333393
+ .long 2572866477
+ .long 1073408159
+ .long 3716502172
+ .long 1073486235
+ .long 3707479175
+ .long 1073567768
+ .long 2728693978
+ .long 1073652911
+ .long 0
+ .long 0
+ .long 1568897901
+ .long 1016568486
+ .long 3936719688
+ .long 3162512149
+ .long 3819481236
+ .long 1016499965
+ .long 1303423926
+ .long 1015238005
+ .long 2804567149
+ .long 1015390024
+ .long 3145379760
+ .long 1014403278
+ .long 3793507337
+ .long 1016095713
+ .long 3210617384
+ .long 3163796463
+ .long 3108873501
+ .long 3162190556
+ .long 3253791412
+ .long 1015920431
+ .long 730975783
+ .long 1014083580
+ .long 2462790535
+ .long 1015814775
+ .long 816778419
+ .long 1014197934
+ .long 2789017511
+ .long 1014276997
+ .long 2413007344
+ .long 3163551506
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 1287323204
+ .long 1082531232
+ .long 1287323204
+ .long 1082531232
+ .long 1287323204
+ .long 1082531232
+ .long 1287323204
+ .long 1082531232
+ .long 1287323204
+ .long 1082531232
+ .long 1287323204
+ .long 1082531232
+ .long 1287323204
+ .long 1082531232
+ .long 1287323204
+ .long 1082531232
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 993624127
+ .long 1014676638
+ .long 993624127
+ .long 1014676638
+ .long 993624127
+ .long 1014676638
+ .long 993624127
+ .long 1014676638
+ .long 993624127
+ .long 1014676638
+ .long 993624127
+ .long 1014676638
+ .long 993624127
+ .long 1014676638
+ .long 993624127
+ .long 1014676638
+ .long 0
+ .long 3227516928
+ .long 0
+ .long 3227516928
+ .long 0
+ .long 3227516928
+ .long 0
+ .long 3227516928
+ .long 0
+ .long 3227516928
+ .long 0
+ .long 3227516928
+ .long 0
+ .long 3227516928
+ .long 0
+ .long 3227516928
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4106095538
+ .long 1056571896
+ .long 4106095538
+ .long 1056571896
+ .long 4106095538
+ .long 1056571896
+ .long 4106095538
+ .long 1056571896
+ .long 4106095538
+ .long 1056571896
+ .long 4106095538
+ .long 1056571896
+ .long 4106095538
+ .long 1056571896
+ .long 4106095538
+ .long 1056571896
+ .long 271596938
+ .long 1059717636
+ .long 271596938
+ .long 1059717636
+ .long 271596938
+ .long 1059717636
+ .long 271596938
+ .long 1059717636
+ .long 271596938
+ .long 1059717636
+ .long 271596938
+ .long 1059717636
+ .long 271596938
+ .long 1059717636
+ .long 271596938
+ .long 1059717636
+ .long 2383825455
+ .long 1062650307
+ .long 2383825455
+ .long 1062650307
+ .long 2383825455
+ .long 1062650307
+ .long 2383825455
+ .long 1062650307
+ .long 2383825455
+ .long 1062650307
+ .long 2383825455
+ .long 1062650307
+ .long 2383825455
+ .long 1062650307
+ .long 2383825455
+ .long 1062650307
+ .long 277238292
+ .long 1065423121
+ .long 277238292
+ .long 1065423121
+ .long 277238292
+ .long 1065423121
+ .long 277238292
+ .long 1065423121
+ .long 277238292
+ .long 1065423121
+ .long 277238292
+ .long 1065423121
+ .long 277238292
+ .long 1065423121
+ .long 277238292
+ .long 1065423121
+ .long 1420639494
+ .long 1067799893
+ .long 1420639494
+ .long 1067799893
+ .long 1420639494
+ .long 1067799893
+ .long 1420639494
+ .long 1067799893
+ .long 1420639494
+ .long 1067799893
+ .long 1420639494
+ .long 1067799893
+ .long 1420639494
+ .long 1067799893
+ .long 1420639494
+ .long 1067799893
+ .long 1431656022
+ .long 1069897045
+ .long 1431656022
+ .long 1069897045
+ .long 1431656022
+ .long 1069897045
+ .long 1431656022
+ .long 1069897045
+ .long 1431656022
+ .long 1069897045
+ .long 1431656022
+ .long 1069897045
+ .long 1431656022
+ .long 1069897045
+ .long 1431656022
+ .long 1069897045
+ .long 162
+ .long 1071644672
+ .long 162
+ .long 1071644672
+ .long 162
+ .long 1071644672
+ .long 162
+ .long 1071644672
+ .long 162
+ .long 1071644672
+ .long 162
+ .long 1071644672
+ .long 162
+ .long 1071644672
+ .long 162
+ .long 1071644672
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 3220176896
+ .type __svml_dexpm1_data_internal_avx512,@object
+ .size __svml_dexpm1_data_internal_avx512,1344
+ .align 32
+_imldExpHATab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 1048019041
+ .long 1072704666
+ .long 2631457885
+ .long 3161546771
+ .long 3541402996
+ .long 1072716208
+ .long 896005651
+ .long 1015861842
+ .long 410360776
+ .long 1072727877
+ .long 1642514529
+ .long 1012987726
+ .long 1828292879
+ .long 1072739672
+ .long 1568897901
+ .long 1016568486
+ .long 852742562
+ .long 1072751596
+ .long 1882168529
+ .long 1010744893
+ .long 3490863953
+ .long 1072763649
+ .long 707771662
+ .long 3163903570
+ .long 2930322912
+ .long 1072775834
+ .long 3117806614
+ .long 3163670819
+ .long 1014845819
+ .long 1072788152
+ .long 3936719688
+ .long 3162512149
+ .long 3949972341
+ .long 1072800603
+ .long 1058231231
+ .long 1015777676
+ .long 828946858
+ .long 1072813191
+ .long 1044000608
+ .long 1016786167
+ .long 2288159958
+ .long 1072825915
+ .long 1151779725
+ .long 1015705409
+ .long 1853186616
+ .long 1072838778
+ .long 3819481236
+ .long 1016499965
+ .long 1709341917
+ .long 1072851781
+ .long 2552227826
+ .long 1015039787
+ .long 4112506593
+ .long 1072864925
+ .long 1829350193
+ .long 1015216097
+ .long 2799960843
+ .long 1072878213
+ .long 1913391796
+ .long 1015756674
+ .long 171030293
+ .long 1072891646
+ .long 1303423926
+ .long 1015238005
+ .long 2992903935
+ .long 1072905224
+ .long 1574172746
+ .long 1016061241
+ .long 926591435
+ .long 1072918951
+ .long 3427487848
+ .long 3163704045
+ .long 887463927
+ .long 1072932827
+ .long 1049900754
+ .long 3161575912
+ .long 1276261410
+ .long 1072946854
+ .long 2804567149
+ .long 1015390024
+ .long 569847338
+ .long 1072961034
+ .long 1209502043
+ .long 3159926671
+ .long 1617004845
+ .long 1072975368
+ .long 1623370769
+ .long 1011049453
+ .long 3049340112
+ .long 1072989858
+ .long 3667985273
+ .long 1013894369
+ .long 3577096743
+ .long 1073004506
+ .long 3145379760
+ .long 1014403278
+ .long 1990012071
+ .long 1073019314
+ .long 7447438
+ .long 3163526196
+ .long 1453150082
+ .long 1073034283
+ .long 3171891295
+ .long 3162037958
+ .long 917841882
+ .long 1073049415
+ .long 419288974
+ .long 1016280325
+ .long 3712504873
+ .long 1073064711
+ .long 3793507337
+ .long 1016095713
+ .long 363667784
+ .long 1073080175
+ .long 728023093
+ .long 1016345318
+ .long 2956612997
+ .long 1073095806
+ .long 1005538728
+ .long 3163304901
+ .long 2186617381
+ .long 1073111608
+ .long 2018924632
+ .long 3163803357
+ .long 1719614413
+ .long 1073127582
+ .long 3210617384
+ .long 3163796463
+ .long 1013258799
+ .long 1073143730
+ .long 3094194670
+ .long 3160631279
+ .long 3907805044
+ .long 1073160053
+ .long 2119843535
+ .long 3161988964
+ .long 1447192521
+ .long 1073176555
+ .long 508946058
+ .long 3162904882
+ .long 1944781191
+ .long 1073193236
+ .long 3108873501
+ .long 3162190556
+ .long 919555682
+ .long 1073210099
+ .long 2882956373
+ .long 1013312481
+ .long 2571947539
+ .long 1073227145
+ .long 4047189812
+ .long 3163777462
+ .long 2604962541
+ .long 1073244377
+ .long 3631372142
+ .long 3163870288
+ .long 1110089947
+ .long 1073261797
+ .long 3253791412
+ .long 1015920431
+ .long 2568320822
+ .long 1073279406
+ .long 1509121860
+ .long 1014756995
+ .long 2966275557
+ .long 1073297207
+ .long 2339118633
+ .long 3160254904
+ .long 2682146384
+ .long 1073315202
+ .long 586480042
+ .long 3163702083
+ .long 2191782032
+ .long 1073333393
+ .long 730975783
+ .long 1014083580
+ .long 2069751141
+ .long 1073351782
+ .long 576856675
+ .long 3163014404
+ .long 2990417245
+ .long 1073370371
+ .long 3552361237
+ .long 3163667409
+ .long 1434058175
+ .long 1073389163
+ .long 1853053619
+ .long 1015310724
+ .long 2572866477
+ .long 1073408159
+ .long 2462790535
+ .long 1015814775
+ .long 3092190715
+ .long 1073427362
+ .long 1457303226
+ .long 3159737305
+ .long 4076559943
+ .long 1073446774
+ .long 950899508
+ .long 3160987380
+ .long 2420883922
+ .long 1073466398
+ .long 174054861
+ .long 1014300631
+ .long 3716502172
+ .long 1073486235
+ .long 816778419
+ .long 1014197934
+ .long 777507147
+ .long 1073506289
+ .long 3507050924
+ .long 1015341199
+ .long 3706687593
+ .long 1073526560
+ .long 1821514088
+ .long 1013410604
+ .long 1242007932
+ .long 1073547053
+ .long 1073740399
+ .long 3163532637
+ .long 3707479175
+ .long 1073567768
+ .long 2789017511
+ .long 1014276997
+ .long 64696965
+ .long 1073588710
+ .long 3586233004
+ .long 1015962192
+ .long 863738719
+ .long 1073609879
+ .long 129252895
+ .long 3162690849
+ .long 3884662774
+ .long 1073631278
+ .long 1614448851
+ .long 1014281732
+ .long 2728693978
+ .long 1073652911
+ .long 2413007344
+ .long 3163551506
+ .long 3999357479
+ .long 1073674779
+ .long 1101668360
+ .long 1015989180
+ .long 1533953344
+ .long 1073696886
+ .long 835814894
+ .long 1015702697
+ .long 2174652632
+ .long 1073719233
+ .long 1301400989
+ .long 1014466875
+ .long 1697350398
+ .long 1079448903
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1071644672
+ .long 1431652600
+ .long 1069897045
+ .long 1431670732
+ .long 1067799893
+ .long 984555731
+ .long 1065423122
+ .long 472530941
+ .long 1062650218
+ .long 4277811695
+ .long 1082535490
+ .long 3715808466
+ .long 3230016299
+ .long 3576508497
+ .long 3230091536
+ .long 4277796864
+ .long 1065758274
+ .long 3164486458
+ .long 1025308570
+ .long 1
+ .long 1048576
+ .long 4294967295
+ .long 2146435071
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 1009778688
+ .long 0
+ .long 1106771968
+ .type _imldExpHATab,@object
+ .size _imldExpHATab,1176
+ .align 8
+.L_2il0floatpacket.77:
+ .long 0x00000000,0xbff00000
+ .type .L_2il0floatpacket.77,@object
+ .size .L_2il0floatpacket.77,8
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * * After computing exp(x) in high-low parts, an accurate computation is performed to obtain exp(x)-1
+ * * Typical exp() implementation, except that:
+ * * - tables are small (32 elements), allowing for fast gathers
+ * * - all arguments processed in the main path
+ * * - final VSCALEF assists branch-free design (correct overflow/underflow and special case responses)
+ * * - a VAND is used to ensure the reduced argument |R|<2, even for large inputs
+ * * - RZ mode used to avoid oveflow to +/-Inf for x*log2(e); helps with special case handling
+ * *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_expm1f16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_expm1f16
+
+__svml_expm1f16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 256+__svml_sexpm1_data_internal_avx512(%rip), %zmm5
+ vmovups 320+__svml_sexpm1_data_internal_avx512(%rip), %zmm3
+ vmovups 512+__svml_sexpm1_data_internal_avx512(%rip), %zmm8
+ vmovups 576+__svml_sexpm1_data_internal_avx512(%rip), %zmm4
+ vmovups __svml_sexpm1_data_internal_avx512(%rip), %zmm6
+
+/* polynomial */
+ vmovups 704+__svml_sexpm1_data_internal_avx512(%rip), %zmm9
+ vmovups 768+__svml_sexpm1_data_internal_avx512(%rip), %zmm12
+ vmovups 128+__svml_sexpm1_data_internal_avx512(%rip), %zmm11
+ vmovups 384+__svml_sexpm1_data_internal_avx512(%rip), %zmm2
+
+/* Th - 1 */
+ vmovups 832+__svml_sexpm1_data_internal_avx512(%rip), %zmm14
+ vmovaps %zmm0, %zmm1
+
+/* 2^(52-5)*1.5 + x * log2(e) */
+ vfmadd213ps {rn-sae}, %zmm3, %zmm1, %zmm5
+ vcmpps $29, {sae}, %zmm2, %zmm1, %k0
+
+/* Z0 ~ x*log2(e), rounded to 5 fractional bits */
+ vsubps {rn-sae}, %zmm3, %zmm5, %zmm7
+ vpermt2ps 64+__svml_sexpm1_data_internal_avx512(%rip), %zmm5, %zmm6
+ vpermt2ps 192+__svml_sexpm1_data_internal_avx512(%rip), %zmm5, %zmm11
+ vandps 448+__svml_sexpm1_data_internal_avx512(%rip), %zmm1, %zmm0
+
+/* R = x - Z0*log(2) */
+ vfnmadd213ps {rn-sae}, %zmm1, %zmm7, %zmm8
+
+/* scale Th */
+ vscalefps {rn-sae}, %zmm7, %zmm6, %zmm2
+ vfnmadd231ps {rn-sae}, %zmm7, %zmm4, %zmm8
+ kmovw %k0, %edx
+
+/* ensure |R|<2 even for special cases */
+ vandps 640+__svml_sexpm1_data_internal_avx512(%rip), %zmm8, %zmm13
+ vsubps {rn-sae}, %zmm14, %zmm2, %zmm8
+ vmulps {rn-sae}, %zmm13, %zmm13, %zmm10
+ vfmadd231ps {rn-sae}, %zmm13, %zmm9, %zmm12
+
+/* Tlr + R+ R2*Poly */
+ vfmadd213ps {rn-sae}, %zmm11, %zmm10, %zmm12
+ vaddps {rn-sae}, %zmm13, %zmm12, %zmm15
+
+/* (Th-1)+Th*(Tlr + R+ R*Poly) */
+ vfmadd213ps {rn-sae}, %zmm8, %zmm15, %zmm2
+ vorps %zmm0, %zmm2, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm1, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_sexpm1_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_expm1f16,@function
+ .size __svml_expm1f16,.-__svml_expm1f16
+..LN__svml_expm1f16.0:
+
+.L_2__routine_start___svml_sexpm1_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_sexpm1_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movss (%rdi), %xmm8
+ pxor %xmm0, %xmm0
+ comiss %xmm8, %xmm0
+ ja .LBL_2_8
+
+
+ movzwl 2(%rdi), %edx
+ andl $32640, %edx
+ cmpl $32640, %edx
+ je .LBL_2_9
+
+
+ movss .L_2il0floatpacket.45(%rip), %xmm0
+ comiss %xmm8, %xmm0
+ jb .LBL_2_6
+
+
+ comiss .L_2il0floatpacket.46(%rip), %xmm8
+ jb .LBL_2_7
+
+
+ movss .L_2il0floatpacket.48(%rip), %xmm0
+ mulss %xmm8, %xmm0
+ movss %xmm0, -24(%rsp)
+ movss -24(%rsp), %xmm1
+ movss .L_2il0floatpacket.49(%rip), %xmm2
+ movss .L_2il0floatpacket.56(%rip), %xmm6
+ addss %xmm2, %xmm1
+ movss %xmm1, -20(%rsp)
+ movss -20(%rsp), %xmm3
+ movss .L_2il0floatpacket.52(%rip), %xmm7
+ subss %xmm2, %xmm3
+ movss %xmm3, -24(%rsp)
+ movss -24(%rsp), %xmm4
+ mulss .L_2il0floatpacket.50(%rip), %xmm4
+ movss -24(%rsp), %xmm5
+ subss %xmm4, %xmm8
+ mulss .L_2il0floatpacket.51(%rip), %xmm5
+ movl -20(%rsp), %edx
+ subss %xmm5, %xmm8
+ mulss %xmm8, %xmm6
+ shll $23, %edx
+ addss .L_2il0floatpacket.55(%rip), %xmm6
+ mulss %xmm8, %xmm6
+ addss .L_2il0floatpacket.54(%rip), %xmm6
+ mulss %xmm8, %xmm6
+ addss .L_2il0floatpacket.53(%rip), %xmm6
+ mulss %xmm8, %xmm6
+ addss %xmm7, %xmm6
+ mulss %xmm8, %xmm6
+ addss %xmm6, %xmm7
+ movss %xmm7, -16(%rsp)
+ addl -16(%rsp), %edx
+ movl %edx, (%rsi)
+ ret
+
+.LBL_2_6:
+
+ movss .L_2il0floatpacket.47(%rip), %xmm0
+ mulss %xmm0, %xmm0
+ movss %xmm0, -16(%rsp)
+ movl -16(%rsp), %eax
+ movl %eax, (%rsi)
+ movl $3, %eax
+
+.LBL_2_7:
+
+ ret
+
+.LBL_2_8:
+
+ movl $-1082130432, (%rsi)
+ ret
+
+.LBL_2_9:
+
+ movb 3(%rdi), %dl
+ andb $-128, %dl
+ cmpb $-128, %dl
+ je .LBL_2_11
+
+.LBL_2_10:
+
+ mulss %xmm8, %xmm8
+ movss %xmm8, (%rsi)
+ ret
+
+.LBL_2_11:
+
+ testl $8388607, (%rdi)
+ jne .LBL_2_10
+
+
+ movss %xmm0, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_sexpm1_cout_rare_internal,@function
+ .size __svml_sexpm1_cout_rare_internal,.-__svml_sexpm1_cout_rare_internal
+..LN__svml_sexpm1_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_sexpm1_data_internal_avx512:
+ .long 1065353216
+ .long 1065536903
+ .long 1065724611
+ .long 1065916431
+ .long 1066112450
+ .long 1066312762
+ .long 1066517459
+ .long 1066726640
+ .long 1066940400
+ .long 1067158842
+ .long 1067382066
+ .long 1067610179
+ .long 1067843287
+ .long 1068081499
+ .long 1068324927
+ .long 1068573686
+ .long 1068827891
+ .long 1069087663
+ .long 1069353124
+ .long 1069624397
+ .long 1069901610
+ .long 1070184894
+ .long 1070474380
+ .long 1070770206
+ .long 1071072509
+ .long 1071381432
+ .long 1071697119
+ .long 1072019719
+ .long 1072349383
+ .long 1072686266
+ .long 1073030525
+ .long 1073382323
+ .long 0
+ .long 3007986186
+ .long 860277610
+ .long 3010384254
+ .long 2991457809
+ .long 3008462297
+ .long 860562562
+ .long 3004532446
+ .long 856238081
+ .long 3001480295
+ .long 857441778
+ .long 815380209
+ .long 3003456168
+ .long 3001196762
+ .long 2986372182
+ .long 3006683458
+ .long 848495278
+ .long 851809756
+ .long 3003311522
+ .long 2995654817
+ .long 833868005
+ .long 3004843819
+ .long 835836658
+ .long 3003498340
+ .long 2994528642
+ .long 3002229827
+ .long 2981408986
+ .long 2983889551
+ .long 2983366846
+ .long 3000350873
+ .long 833659207
+ .long 2987748092
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1118652779
+ .long 1118652779
+ .long 1118652779
+ .long 1118652779
+ .long 1118652779
+ .long 1118652779
+ .long 1118652779
+ .long 1118652779
+ .long 1118652779
+ .long 1118652779
+ .long 1118652779
+ .long 1118652779
+ .long 1118652779
+ .long 1118652779
+ .long 1118652779
+ .long 1118652779
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 2969756424
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 1042983923
+ .long 1042983923
+ .long 1042983923
+ .long 1042983923
+ .long 1042983923
+ .long 1042983923
+ .long 1042983923
+ .long 1042983923
+ .long 1042983923
+ .long 1042983923
+ .long 1042983923
+ .long 1042983923
+ .long 1042983923
+ .long 1042983923
+ .long 1042983923
+ .long 1042983923
+ .long 1056964854
+ .long 1056964854
+ .long 1056964854
+ .long 1056964854
+ .long 1056964854
+ .long 1056964854
+ .long 1056964854
+ .long 1056964854
+ .long 1056964854
+ .long 1056964854
+ .long 1056964854
+ .long 1056964854
+ .long 1056964854
+ .long 1056964854
+ .long 1056964854
+ .long 1056964854
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .type __svml_sexpm1_data_internal_avx512,@object
+ .size __svml_sexpm1_data_internal_avx512,896
+ .align 4
+.L_2il0floatpacket.44:
+ .long 0xbf800000
+ .type .L_2il0floatpacket.44,@object
+ .size .L_2il0floatpacket.44,4
+ .align 4
+.L_2il0floatpacket.45:
+ .long 0x42b17217
+ .type .L_2il0floatpacket.45,@object
+ .size .L_2il0floatpacket.45,4
+ .align 4
+.L_2il0floatpacket.46:
+ .long 0xc2cff1b4
+ .type .L_2il0floatpacket.46,@object
+ .size .L_2il0floatpacket.46,4
+ .align 4
+.L_2il0floatpacket.47:
+ .long 0x7f7fffff
+ .type .L_2il0floatpacket.47,@object
+ .size .L_2il0floatpacket.47,4
+ .align 4
+.L_2il0floatpacket.48:
+ .long 0x3fb8aa3b
+ .type .L_2il0floatpacket.48,@object
+ .size .L_2il0floatpacket.48,4
+ .align 4
+.L_2il0floatpacket.49:
+ .long 0x4b400000
+ .type .L_2il0floatpacket.49,@object
+ .size .L_2il0floatpacket.49,4
+ .align 4
+.L_2il0floatpacket.50:
+ .long 0x3f317200
+ .type .L_2il0floatpacket.50,@object
+ .size .L_2il0floatpacket.50,4
+ .align 4
+.L_2il0floatpacket.51:
+ .long 0x35bfbe8e
+ .type .L_2il0floatpacket.51,@object
+ .size .L_2il0floatpacket.51,4
+ .align 4
+.L_2il0floatpacket.52:
+ .long 0x3f800001
+ .type .L_2il0floatpacket.52,@object
+ .size .L_2il0floatpacket.52,4
+ .align 4
+.L_2il0floatpacket.53:
+ .long 0x3efffe85
+ .type .L_2il0floatpacket.53,@object
+ .size .L_2il0floatpacket.53,4
+ .align 4
+.L_2il0floatpacket.54:
+ .long 0x3e2aa9c6
+ .type .L_2il0floatpacket.54,@object
+ .size .L_2il0floatpacket.54,4
+ .align 4
+.L_2il0floatpacket.55:
+ .long 0x3d2bb1b6
+ .type .L_2il0floatpacket.55,@object
+ .size .L_2il0floatpacket.55,4
+ .align 4
+.L_2il0floatpacket.56:
+ .long 0x3c0950ef
+ .type .L_2il0floatpacket.56,@object
+ .size .L_2il0floatpacket.56,4
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * * log10(x) = VGETEXP(x)*log10(2) + log10(VGETMANT(x))
+ * * VGETEXP, VGETMANT will correctly treat special cases too (including denormals)
+ * * mx = VGETMANT(x) is in [1,2) for all x>=0
+ * * log10(mx) = -log10(RCP(mx)) + log10(1 +(mx*RCP(mx)-1))
+ * * RCP(mx) is rounded to 4 fractional bits,
+ * * and the table lookup for log(RCP(mx)) is based on a small permute instruction
+ * *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_log108_z0_0:
+
+ .align 16,0x90
+ .globl __svml_log108
+
+__svml_log108:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovaps %zmm0, %zmm7
+
+/* GetMant(x), normalized to [1,2) for x>=0, NaN for x<0 */
+ vgetmantpd $8, {sae}, %zmm7, %zmm6
+ vmovups 128+__svml_dlog10_data_internal_avx512(%rip), %zmm3
+ vmovups 512+__svml_dlog10_data_internal_avx512(%rip), %zmm12
+ vmovups 640+__svml_dlog10_data_internal_avx512(%rip), %zmm13
+
+/* Start polynomial evaluation */
+ vmovups 256+__svml_dlog10_data_internal_avx512(%rip), %zmm10
+ vmovups 320+__svml_dlog10_data_internal_avx512(%rip), %zmm1
+ vmovups 384+__svml_dlog10_data_internal_avx512(%rip), %zmm11
+ vmovups 448+__svml_dlog10_data_internal_avx512(%rip), %zmm14
+
+/* Prepare exponent correction: DblRcp<0.75? */
+ vmovups 192+__svml_dlog10_data_internal_avx512(%rip), %zmm2
+
+/* Table lookup */
+ vmovups __svml_dlog10_data_internal_avx512(%rip), %zmm5
+
+/* GetExp(x) */
+ vgetexppd {sae}, %zmm7, %zmm0
+
+/* DblRcp ~ 1/Mantissa */
+ vrcp14pd %zmm6, %zmm8
+
+/* x<=0? */
+ vfpclasspd $94, %zmm7, %k0
+
+/* round DblRcp to 4 fractional bits (RN mode, no Precision exception) */
+ vrndscalepd $88, {sae}, %zmm8, %zmm4
+ vmovups 576+__svml_dlog10_data_internal_avx512(%rip), %zmm8
+ kmovw %k0, %edx
+
+/* Reduced argument: R = DblRcp*Mantissa - 1 */
+ vfmsub213pd {rn-sae}, %zmm3, %zmm4, %zmm6
+ vcmppd $17, {sae}, %zmm2, %zmm4, %k1
+ vfmadd231pd {rn-sae}, %zmm6, %zmm12, %zmm8
+ vmovups 704+__svml_dlog10_data_internal_avx512(%rip), %zmm12
+ vfmadd231pd {rn-sae}, %zmm6, %zmm10, %zmm1
+ vfmadd231pd {rn-sae}, %zmm6, %zmm11, %zmm14
+ vmovups 768+__svml_dlog10_data_internal_avx512(%rip), %zmm2
+
+/* R^2 */
+ vmulpd {rn-sae}, %zmm6, %zmm6, %zmm15
+ vfmadd231pd {rn-sae}, %zmm6, %zmm13, %zmm12
+
+/* Prepare table index */
+ vpsrlq $48, %zmm4, %zmm9
+
+/* add 1 to Expon if DblRcp<0.75 */
+ vaddpd {rn-sae}, %zmm3, %zmm0, %zmm0{%k1}
+ vmulpd {rn-sae}, %zmm15, %zmm15, %zmm13
+ vfmadd213pd {rn-sae}, %zmm14, %zmm15, %zmm1
+ vfmadd213pd {rn-sae}, %zmm12, %zmm15, %zmm8
+ vpermt2pd 64+__svml_dlog10_data_internal_avx512(%rip), %zmm9, %zmm5
+
+/* polynomial */
+ vfmadd213pd {rn-sae}, %zmm8, %zmm13, %zmm1
+ vfmadd213pd {rn-sae}, %zmm2, %zmm6, %zmm1
+ vfmadd213pd {rn-sae}, %zmm5, %zmm1, %zmm6
+ vmovups 832+__svml_dlog10_data_internal_avx512(%rip), %zmm1
+ vfmadd213pd {rn-sae}, %zmm6, %zmm1, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm7, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dlog10_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_log108,@function
+ .size __svml_log108,.-__svml_log108
+..LN__svml_log108.0:
+
+.L_2__routine_start___svml_dlog10_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dlog10_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movzwl 6(%rdi), %edx
+ andl $32752, %edx
+ cmpl $32752, %edx
+ je .LBL_2_12
+
+
+ movsd (%rdi), %xmm2
+ xorl %ecx, %ecx
+ movsd %xmm2, -8(%rsp)
+ movzwl -2(%rsp), %edx
+ testl $32752, %edx
+ jne .LBL_2_4
+
+
+ movsd 1600+__dlog10_la_CoutTab(%rip), %xmm0
+ movl $-60, %ecx
+ mulsd %xmm0, %xmm2
+ movsd %xmm2, -8(%rsp)
+
+.LBL_2_4:
+
+ movsd 1608+__dlog10_la_CoutTab(%rip), %xmm0
+ comisd %xmm0, %xmm2
+ jbe .LBL_2_8
+
+
+ movaps %xmm2, %xmm1
+ subsd .L_2il0floatpacket.89(%rip), %xmm1
+ movsd %xmm1, -16(%rsp)
+ andb $127, -9(%rsp)
+ movsd -16(%rsp), %xmm0
+ comisd 1592+__dlog10_la_CoutTab(%rip), %xmm0
+ jbe .LBL_2_7
+
+
+ movsd %xmm2, -16(%rsp)
+ pxor %xmm7, %xmm7
+ movzwl -10(%rsp), %edi
+ lea __dlog10_la_CoutTab(%rip), %r10
+ andl $-32753, %edi
+ addl $16368, %edi
+ movw %di, -10(%rsp)
+ movsd -16(%rsp), %xmm3
+ movaps %xmm3, %xmm1
+ movaps %xmm3, %xmm2
+ movsd 1688+__dlog10_la_CoutTab(%rip), %xmm5
+ movzwl -2(%rsp), %edx
+ andl $32752, %edx
+ addsd 1576+__dlog10_la_CoutTab(%rip), %xmm1
+ addsd 1584+__dlog10_la_CoutTab(%rip), %xmm2
+ movsd %xmm1, -24(%rsp)
+ movl -24(%rsp), %r8d
+ movsd %xmm2, -24(%rsp)
+ andl $127, %r8d
+ movsd -24(%rsp), %xmm8
+ movsd 1560+__dlog10_la_CoutTab(%rip), %xmm9
+ movsd 1568+__dlog10_la_CoutTab(%rip), %xmm0
+ shrl $4, %edx
+ subsd 1584+__dlog10_la_CoutTab(%rip), %xmm8
+ lea (%r8,%r8,2), %r9d
+ movsd (%r10,%r9,8), %xmm6
+ lea -1023(%rcx,%rdx), %ecx
+ cvtsi2sd %ecx, %xmm7
+ subsd %xmm8, %xmm3
+ mulsd %xmm6, %xmm8
+ mulsd %xmm7, %xmm9
+ subsd 1624+__dlog10_la_CoutTab(%rip), %xmm8
+ mulsd %xmm3, %xmm6
+ mulsd %xmm0, %xmm7
+ addsd 8(%r10,%r9,8), %xmm9
+ addsd 16(%r10,%r9,8), %xmm7
+ addsd %xmm8, %xmm9
+ movaps %xmm8, %xmm4
+ addsd %xmm6, %xmm4
+ mulsd %xmm4, %xmm5
+ addsd 1680+__dlog10_la_CoutTab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ addsd 1672+__dlog10_la_CoutTab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ addsd 1664+__dlog10_la_CoutTab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ addsd 1656+__dlog10_la_CoutTab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ addsd 1648+__dlog10_la_CoutTab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ addsd 1640+__dlog10_la_CoutTab(%rip), %xmm5
+ mulsd %xmm4, %xmm5
+ addsd 1632+__dlog10_la_CoutTab(%rip), %xmm5
+ mulsd %xmm5, %xmm8
+ mulsd %xmm6, %xmm5
+ addsd %xmm5, %xmm7
+ addsd %xmm6, %xmm7
+ addsd %xmm7, %xmm8
+ addsd %xmm8, %xmm9
+ movsd %xmm9, (%rsi)
+ ret
+
+.LBL_2_7:
+
+ movsd 1624+__dlog10_la_CoutTab(%rip), %xmm0
+ mulsd %xmm0, %xmm1
+ movsd 1688+__dlog10_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1680+__dlog10_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1672+__dlog10_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1664+__dlog10_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1656+__dlog10_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1648+__dlog10_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1640+__dlog10_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1632+__dlog10_la_CoutTab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd %xmm1, %xmm2
+ movsd %xmm2, (%rsi)
+ ret
+
+.LBL_2_8:
+
+ ucomisd %xmm0, %xmm2
+ jp .LBL_2_9
+ je .LBL_2_11
+
+.LBL_2_9:
+
+ divsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ movl $1, %eax
+
+
+ ret
+
+.LBL_2_11:
+
+ movsd 1616+__dlog10_la_CoutTab(%rip), %xmm1
+ movl $2, %eax
+ xorps .L_2il0floatpacket.88(%rip), %xmm1
+ divsd %xmm0, %xmm1
+ movsd %xmm1, (%rsi)
+ ret
+
+.LBL_2_12:
+
+ movb 7(%rdi), %dl
+ andb $-128, %dl
+ cmpb $-128, %dl
+ je .LBL_2_14
+
+.LBL_2_13:
+
+ movsd (%rdi), %xmm0
+ mulsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_14:
+
+ testl $1048575, 4(%rdi)
+ jne .LBL_2_13
+
+
+ cmpl $0, (%rdi)
+ jne .LBL_2_13
+
+
+ movsd 1608+__dlog10_la_CoutTab(%rip), %xmm0
+ movl $1, %eax
+ divsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dlog10_cout_rare_internal,@function
+ .size __svml_dlog10_cout_rare_internal,.-__svml_dlog10_cout_rare_internal
+..LN__svml_dlog10_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dlog10_data_internal_avx512:
+ .long 0
+ .long 0
+ .long 721479184
+ .long 3214603769
+ .long 3590975466
+ .long 3215601833
+ .long 1438937368
+ .long 3216186160
+ .long 948324365
+ .long 3216559896
+ .long 2869828094
+ .long 3216915393
+ .long 516509563
+ .long 3217142759
+ .long 2145647618
+ .long 3217304702
+ .long 733771779
+ .long 1069546492
+ .long 3513866211
+ .long 1069249052
+ .long 3459676924
+ .long 1068963280
+ .long 1085767695
+ .long 1068688295
+ .long 3613830132
+ .long 1068347678
+ .long 1803457173
+ .long 1067836310
+ .long 3436756955
+ .long 1067234191
+ .long 930630721
+ .long 1066155272
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 675808112
+ .long 1068024536
+ .long 675808112
+ .long 1068024536
+ .long 675808112
+ .long 1068024536
+ .long 675808112
+ .long 1068024536
+ .long 675808112
+ .long 1068024536
+ .long 675808112
+ .long 1068024536
+ .long 675808112
+ .long 1068024536
+ .long 675808112
+ .long 1068024536
+ .long 2516752404
+ .long 3215710221
+ .long 2516752404
+ .long 3215710221
+ .long 2516752404
+ .long 3215710221
+ .long 2516752404
+ .long 3215710221
+ .long 2516752404
+ .long 3215710221
+ .long 2516752404
+ .long 3215710221
+ .long 2516752404
+ .long 3215710221
+ .long 2516752404
+ .long 3215710221
+ .long 4085995682
+ .long 1068483574
+ .long 4085995682
+ .long 1068483574
+ .long 4085995682
+ .long 1068483574
+ .long 4085995682
+ .long 1068483574
+ .long 4085995682
+ .long 1068483574
+ .long 4085995682
+ .long 1068483574
+ .long 4085995682
+ .long 1068483574
+ .long 4085995682
+ .long 1068483574
+ .long 879025280
+ .long 3216148390
+ .long 879025280
+ .long 3216148390
+ .long 879025280
+ .long 3216148390
+ .long 879025280
+ .long 3216148390
+ .long 879025280
+ .long 3216148390
+ .long 879025280
+ .long 3216148390
+ .long 879025280
+ .long 3216148390
+ .long 879025280
+ .long 3216148390
+ .long 2004821977
+ .long 1068907618
+ .long 2004821977
+ .long 1068907618
+ .long 2004821977
+ .long 1068907618
+ .long 2004821977
+ .long 1068907618
+ .long 2004821977
+ .long 1068907618
+ .long 2004821977
+ .long 1068907618
+ .long 2004821977
+ .long 1068907618
+ .long 2004821977
+ .long 1068907618
+ .long 356255395
+ .long 3216755579
+ .long 356255395
+ .long 3216755579
+ .long 356255395
+ .long 3216755579
+ .long 356255395
+ .long 3216755579
+ .long 356255395
+ .long 3216755579
+ .long 356255395
+ .long 3216755579
+ .long 356255395
+ .long 3216755579
+ .long 356255395
+ .long 3216755579
+ .long 1668235916
+ .long 1069713319
+ .long 1668235916
+ .long 1069713319
+ .long 1668235916
+ .long 1069713319
+ .long 1668235916
+ .long 1069713319
+ .long 1668235916
+ .long 1069713319
+ .long 1668235916
+ .long 1069713319
+ .long 1668235916
+ .long 1069713319
+ .long 1668235916
+ .long 1069713319
+ .long 354870491
+ .long 3217804155
+ .long 354870491
+ .long 3217804155
+ .long 354870491
+ .long 3217804155
+ .long 354870491
+ .long 3217804155
+ .long 354870491
+ .long 3217804155
+ .long 354870491
+ .long 3217804155
+ .long 354870491
+ .long 3217804155
+ .long 354870491
+ .long 3217804155
+ .long 354870542
+ .long 1071369083
+ .long 354870542
+ .long 1071369083
+ .long 354870542
+ .long 1071369083
+ .long 354870542
+ .long 1071369083
+ .long 354870542
+ .long 1071369083
+ .long 354870542
+ .long 1071369083
+ .long 354870542
+ .long 1071369083
+ .long 354870542
+ .long 1071369083
+ .long 1352628735
+ .long 1070810131
+ .long 1352628735
+ .long 1070810131
+ .long 1352628735
+ .long 1070810131
+ .long 1352628735
+ .long 1070810131
+ .long 1352628735
+ .long 1070810131
+ .long 1352628735
+ .long 1070810131
+ .long 1352628735
+ .long 1070810131
+ .long 1352628735
+ .long 1070810131
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .type __svml_dlog10_data_internal_avx512,@object
+ .size __svml_dlog10_data_internal_avx512,1152
+ .align 32
+__dlog10_la_CoutTab:
+ .long 0
+ .long 1071366144
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1071337728
+ .long 184549376
+ .long 1065092008
+ .long 2099961998
+ .long 3178897324
+ .long 0
+ .long 1071309312
+ .long 931135488
+ .long 1066155272
+ .long 2365712557
+ .long 3178155773
+ .long 0
+ .long 1071280896
+ .long 603979776
+ .long 1066752445
+ .long 709057215
+ .long 1031474920
+ .long 0
+ .long 1071252480
+ .long 3437232128
+ .long 1067234191
+ .long 1515412199
+ .long 3179085970
+ .long 0
+ .long 1071238272
+ .long 1105723392
+ .long 1067464226
+ .long 153915826
+ .long 3178000698
+ .long 0
+ .long 1071209856
+ .long 3328442368
+ .long 1067711223
+ .long 3899912278
+ .long 3177135692
+ .long 0
+ .long 1071181440
+ .long 341835776
+ .long 1067962480
+ .long 2509208190
+ .long 3176531222
+ .long 0
+ .long 1071167232
+ .long 2884632576
+ .long 1068089751
+ .long 1030636902
+ .long 1025224143
+ .long 0
+ .long 1071138816
+ .long 3613917184
+ .long 1068347678
+ .long 3527163461
+ .long 3177529532
+ .long 0
+ .long 1071124608
+ .long 3549954048
+ .long 1068478374
+ .long 3498894081
+ .long 3173000425
+ .long 0
+ .long 1071096192
+ .long 1623785472
+ .long 1068621140
+ .long 2889825554
+ .long 3176375375
+ .long 0
+ .long 1071081984
+ .long 1085800448
+ .long 1068688295
+ .long 4015256301
+ .long 3177184346
+ .long 0
+ .long 1071053568
+ .long 3652976640
+ .long 1068824490
+ .long 3600693529
+ .long 3175753877
+ .long 0
+ .long 1071039360
+ .long 1592393728
+ .long 1068893555
+ .long 231073830
+ .long 3177087939
+ .long 0
+ .long 1071025152
+ .long 3459645440
+ .long 1068963280
+ .long 1740576090
+ .long 1029619435
+ .long 0
+ .long 1070996736
+ .long 3774611456
+ .long 1069104765
+ .long 3858552785
+ .long 1028603845
+ .long 0
+ .long 1070982528
+ .long 845086720
+ .long 1069176552
+ .long 3138879731
+ .long 1029120443
+ .long 0
+ .long 1070968320
+ .long 3513843712
+ .long 1069249052
+ .long 2107125367
+ .long 1029044389
+ .long 0
+ .long 1070954112
+ .long 434503680
+ .long 1069322282
+ .long 3827602229
+ .long 1028932700
+ .long 0
+ .long 1070939904
+ .long 3613851648
+ .long 1069396254
+ .long 1223751955
+ .long 3176465139
+ .long 0
+ .long 1070911488
+ .long 733741056
+ .long 1069546492
+ .long 1625232067
+ .long 1029570781
+ .long 0
+ .long 1070897280
+ .long 1511620608
+ .long 1069585154
+ .long 3044605139
+ .long 1028090775
+ .long 0
+ .long 1070883072
+ .long 1337196544
+ .long 1069623706
+ .long 2602639001
+ .long 3175938675
+ .long 0
+ .long 1070868864
+ .long 2572533760
+ .long 1069662670
+ .long 3067107955
+ .long 1022933137
+ .long 0
+ .long 1070854656
+ .long 559611904
+ .long 1069702056
+ .long 764145786
+ .long 3174041535
+ .long 0
+ .long 1070840448
+ .long 485818368
+ .long 1069741872
+ .long 2037567072
+ .long 3175580956
+ .long 0
+ .long 1070826240
+ .long 259604480
+ .long 1069782128
+ .long 4012068429
+ .long 1027865895
+ .long 0
+ .long 1070812032
+ .long 3454042112
+ .long 1069822833
+ .long 2867680007
+ .long 3174202478
+ .long 0
+ .long 1070797824
+ .long 2188754944
+ .long 1069863999
+ .long 2538655286
+ .long 3175840981
+ .long 0
+ .long 1070783616
+ .long 2965241856
+ .long 1069905635
+ .long 1338936972
+ .long 3176093950
+ .long 0
+ .long 1070769408
+ .long 966279168
+ .long 1069947753
+ .long 1774547674
+ .long 3175051484
+ .long 0
+ .long 1070755200
+ .long 1604042752
+ .long 1069990363
+ .long 2557470738
+ .long 3174667448
+ .long 0
+ .long 1070740992
+ .long 3417833472
+ .long 1070033477
+ .long 2268255117
+ .long 3175678264
+ .long 0
+ .long 1070740992
+ .long 3417833472
+ .long 1070033477
+ .long 2268255117
+ .long 3175678264
+ .long 0
+ .long 1070726784
+ .long 2451292160
+ .long 1070077108
+ .long 3757728941
+ .long 1027943275
+ .long 0
+ .long 1070712576
+ .long 929644544
+ .long 1070121268
+ .long 899045708
+ .long 1027944939
+ .long 0
+ .long 1070698368
+ .long 3057254400
+ .long 1070165969
+ .long 3880649376
+ .long 3172972504
+ .long 0
+ .long 1070684160
+ .long 2231091200
+ .long 1070211226
+ .long 521319256
+ .long 1027600177
+ .long 0
+ .long 1070684160
+ .long 2231091200
+ .long 1070211226
+ .long 521319256
+ .long 1027600177
+ .long 0
+ .long 1070669952
+ .long 2620162048
+ .long 1070257052
+ .long 1385613369
+ .long 3176104036
+ .long 0
+ .long 1070655744
+ .long 2096726016
+ .long 1070303462
+ .long 3138305819
+ .long 3173646777
+ .long 0
+ .long 1070641536
+ .long 944717824
+ .long 1070350471
+ .long 1065120110
+ .long 1027539054
+ .long 0
+ .long 1070641536
+ .long 944717824
+ .long 1070350471
+ .long 1065120110
+ .long 1027539054
+ .long 0
+ .long 1070627328
+ .long 1985789952
+ .long 1070398094
+ .long 3635943864
+ .long 3173136490
+ .long 0
+ .long 1070613120
+ .long 2123825152
+ .long 1070446348
+ .long 1125219725
+ .long 3175615738
+ .long 0
+ .long 1070598912
+ .long 1078378496
+ .long 1070495250
+ .long 603852726
+ .long 3174570526
+ .long 0
+ .long 1070598912
+ .long 1078378496
+ .long 1070495250
+ .long 603852726
+ .long 3174570526
+ .long 0
+ .long 1070573312
+ .long 1537933312
+ .long 1070544817
+ .long 998069198
+ .long 1026662908
+ .long 0
+ .long 1070544896
+ .long 733773824
+ .long 1070595068
+ .long 4061058002
+ .long 3174036009
+ .long 0
+ .long 1070544896
+ .long 733773824
+ .long 1070595068
+ .long 4061058002
+ .long 3174036009
+ .long 0
+ .long 1070516480
+ .long 3897544704
+ .long 1070621058
+ .long 951856294
+ .long 1026731877
+ .long 0
+ .long 1070516480
+ .long 3897544704
+ .long 1070621058
+ .long 951856294
+ .long 1026731877
+ .long 0
+ .long 1070488064
+ .long 493535232
+ .long 1070646897
+ .long 3852369308
+ .long 3173264746
+ .long 0
+ .long 1070459648
+ .long 463249408
+ .long 1070673107
+ .long 2853152111
+ .long 3174564937
+ .long 0
+ .long 1070459648
+ .long 463249408
+ .long 1070673107
+ .long 2853152111
+ .long 3174564937
+ .long 0
+ .long 1070431232
+ .long 3186585600
+ .long 1070699699
+ .long 1874718356
+ .long 3174139933
+ .long 0
+ .long 1070431232
+ .long 3186585600
+ .long 1070699699
+ .long 1874718356
+ .long 3174139933
+ .long 0
+ .long 1070402816
+ .long 1525858304
+ .long 1070726686
+ .long 3039843523
+ .long 1024724665
+ .long 0
+ .long 1070402816
+ .long 1525858304
+ .long 1070726686
+ .long 3039843523
+ .long 1024724665
+ .long 0
+ .long 1070374400
+ .long 3425300480
+ .long 1070754078
+ .long 1303046649
+ .long 1022401701
+ .long 0
+ .long 1070374400
+ .long 3425300480
+ .long 1070754078
+ .long 1303046649
+ .long 1022401701
+ .long 0
+ .long 1070345984
+ .long 1980465152
+ .long 1070781889
+ .long 3188656319
+ .long 1027271390
+ .long 0
+ .long 1070345984
+ .long 1980465152
+ .long 1070781889
+ .long 3188656319
+ .long 1027271390
+ .long 0
+ .long 1070317568
+ .long 1352630272
+ .long 1070810131
+ .long 3090895658
+ .long 3174564915
+ .long 1352630272
+ .long 1070810131
+ .long 3090895658
+ .long 3174564915
+ .long 64
+ .long 1120927744
+ .long 0
+ .long 1096810496
+ .long 0
+ .long 1064828928
+ .long 0
+ .long 1135607808
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1071366144
+ .long 3207479559
+ .long 1062894188
+ .long 3698831637
+ .long 3220339442
+ .long 3700832817
+ .long 1073506818
+ .long 1691624569
+ .long 3221787401
+ .long 2065628764
+ .long 1075227551
+ .long 1770847080
+ .long 3223701774
+ .long 3786517112
+ .long 1077250450
+ .long 1316351650
+ .long 3225793313
+ .type __dlog10_la_CoutTab,@object
+ .size __dlog10_la_CoutTab,1696
+ .align 16
+.L_2il0floatpacket.88:
+ .long 0x00000000,0x80000000,0x00000000,0x00000000
+ .type .L_2il0floatpacket.88,@object
+ .size .L_2il0floatpacket.88,16
+ .align 8
+.L_2il0floatpacket.89:
+ .long 0x00000000,0x3ff00000
+ .type .L_2il0floatpacket.89,@object
+ .size .L_2il0floatpacket.89,8
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * * log10(x) = VGETEXP(x)*log10(2) + log10(VGETMANT(x))
+ * * VGETEXP, VGETMANT will correctly treat special cases too (including denormals)
+ * * mx = VGETMANT(x) is in [1,2) for all x>=0
+ * * log10(mx) = -log10(RCP(mx)) + log10(1 +(mx*RCP(mx)-1))
+ * * RCP(mx) is rounded to 4 fractional bits,
+ * * and the table lookup for log(RCP(mx)) is based on a small permute instruction
+ * *
+ * * LA, EP versions use interval interpolation (16 intervals)
+ * *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_log10f16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_log10f16
+
+__svml_log10f16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+
+/* GetMant(x), normalized to [.75,1.5) for x>=0, NaN for x<0 */
+ vgetmantps $11, {sae}, %zmm0, %zmm3
+ vmovups __svml_slog10_data_internal_avx512(%rip), %zmm1
+ vgetexpps {sae}, %zmm0, %zmm5
+ vmovups 320+__svml_slog10_data_internal_avx512(%rip), %zmm10
+ vpsrld $19, %zmm3, %zmm7
+ vgetexpps {sae}, %zmm3, %zmm6
+ vsubps {rn-sae}, %zmm1, %zmm3, %zmm11
+ vpermps 64+__svml_slog10_data_internal_avx512(%rip), %zmm7, %zmm1
+ vpermps 128+__svml_slog10_data_internal_avx512(%rip), %zmm7, %zmm2
+ vsubps {rn-sae}, %zmm6, %zmm5, %zmm9
+ vpermps 192+__svml_slog10_data_internal_avx512(%rip), %zmm7, %zmm4
+ vpermps 256+__svml_slog10_data_internal_avx512(%rip), %zmm7, %zmm8
+
+/* x<=0? */
+ vfpclassps $94, %zmm0, %k0
+ vfmadd213ps {rn-sae}, %zmm2, %zmm11, %zmm1
+ vmulps {rn-sae}, %zmm10, %zmm9, %zmm12
+ vfmadd213ps {rn-sae}, %zmm4, %zmm11, %zmm1
+ kmovw %k0, %edx
+ vfmadd213ps {rn-sae}, %zmm8, %zmm11, %zmm1
+ vfmadd213ps {rn-sae}, %zmm12, %zmm11, %zmm1
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ vmovaps %zmm1, %zmm0
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm0, 64(%rsp)
+ vmovups %zmm1, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm1
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_slog10_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_log10f16,@function
+ .size __svml_log10f16,.-__svml_log10f16
+..LN__svml_log10f16.0:
+
+.L_2__routine_start___svml_slog10_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_slog10_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movzwl 2(%rdi), %edx
+ andl $32640, %edx
+ cmpl $32640, %edx
+ je .LBL_2_12
+
+
+ movss (%rdi), %xmm2
+ xorl %ecx, %ecx
+ movss %xmm2, -16(%rsp)
+ movzwl -14(%rsp), %edx
+ testl $32640, %edx
+ jne .LBL_2_4
+
+
+ mulss .L_2il0floatpacket.77(%rip), %xmm2
+ movl $-40, %ecx
+ movss %xmm2, -16(%rsp)
+
+.LBL_2_4:
+
+ pxor %xmm0, %xmm0
+ comiss %xmm0, %xmm2
+ jbe .LBL_2_8
+
+
+ movaps %xmm2, %xmm1
+ subss .L_2il0floatpacket.93(%rip), %xmm1
+ movss %xmm1, -20(%rsp)
+ andb $127, -17(%rsp)
+ movss -20(%rsp), %xmm0
+ comiss .L_2il0floatpacket.78(%rip), %xmm0
+ jbe .LBL_2_7
+
+
+ movss %xmm2, -20(%rsp)
+ pxor %xmm8, %xmm8
+ movzwl -18(%rsp), %edi
+ lea __slog10_la_CoutTab(%rip), %r10
+ andl $-32641, %edi
+ addl $16256, %edi
+ movw %di, -18(%rsp)
+ movss -20(%rsp), %xmm3
+ movaps %xmm3, %xmm0
+ movss .L_2il0floatpacket.80(%rip), %xmm2
+ movaps %xmm2, %xmm1
+ addss .L_2il0floatpacket.79(%rip), %xmm0
+ addss %xmm3, %xmm1
+ movss %xmm0, -24(%rsp)
+ movl -24(%rsp), %r8d
+ movss %xmm1, -24(%rsp)
+ andl $127, %r8d
+ movss -24(%rsp), %xmm9
+ movss .L_2il0floatpacket.89(%rip), %xmm6
+ subss %xmm2, %xmm9
+ movzwl -14(%rsp), %edx
+ lea (%r8,%r8,2), %r9d
+ movss (%r10,%r9,4), %xmm7
+ andl $32640, %edx
+ shrl $7, %edx
+ subss %xmm9, %xmm3
+ mulss %xmm7, %xmm9
+ mulss %xmm3, %xmm7
+ subss .L_2il0floatpacket.81(%rip), %xmm9
+ movaps %xmm9, %xmm4
+ lea -127(%rcx,%rdx), %ecx
+ cvtsi2ss %ecx, %xmm8
+ addss %xmm7, %xmm4
+ mulss %xmm4, %xmm6
+ movss .L_2il0floatpacket.90(%rip), %xmm10
+ mulss %xmm8, %xmm10
+ addss .L_2il0floatpacket.88(%rip), %xmm6
+ addss 4(%r10,%r9,4), %xmm10
+ mulss %xmm4, %xmm6
+ addss %xmm9, %xmm10
+ addss .L_2il0floatpacket.87(%rip), %xmm6
+ mulss %xmm4, %xmm6
+ movss .L_2il0floatpacket.91(%rip), %xmm5
+ mulss %xmm5, %xmm8
+ addss .L_2il0floatpacket.86(%rip), %xmm6
+ addss 8(%r10,%r9,4), %xmm8
+ mulss %xmm4, %xmm6
+ addss .L_2il0floatpacket.85(%rip), %xmm6
+ mulss %xmm4, %xmm6
+ addss .L_2il0floatpacket.84(%rip), %xmm6
+ mulss %xmm4, %xmm6
+ addss .L_2il0floatpacket.83(%rip), %xmm6
+ mulss %xmm4, %xmm6
+ addss .L_2il0floatpacket.82(%rip), %xmm6
+ mulss %xmm6, %xmm9
+ mulss %xmm7, %xmm6
+ addss %xmm6, %xmm8
+ addss %xmm7, %xmm8
+ addss %xmm8, %xmm9
+ addss %xmm9, %xmm10
+ movss %xmm10, (%rsi)
+ ret
+
+.LBL_2_7:
+
+ movss .L_2il0floatpacket.81(%rip), %xmm0
+ mulss %xmm0, %xmm1
+ movss .L_2il0floatpacket.89(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss .L_2il0floatpacket.88(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss .L_2il0floatpacket.87(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss .L_2il0floatpacket.86(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss .L_2il0floatpacket.85(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss .L_2il0floatpacket.84(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss .L_2il0floatpacket.83(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss .L_2il0floatpacket.82(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss %xmm1, %xmm2
+ movss %xmm2, (%rsi)
+ ret
+
+.LBL_2_8:
+
+ ucomiss %xmm0, %xmm2
+ jp .LBL_2_9
+ je .LBL_2_11
+
+.LBL_2_9:
+
+ divss %xmm0, %xmm0
+ movss %xmm0, (%rsi)
+ movl $1, %eax
+
+
+ ret
+
+.LBL_2_11:
+
+ movss .L_2il0floatpacket.92(%rip), %xmm1
+ movl $2, %eax
+ divss %xmm0, %xmm1
+ movss %xmm1, (%rsi)
+ ret
+
+.LBL_2_12:
+
+ movb 3(%rdi), %dl
+ andb $-128, %dl
+ cmpb $-128, %dl
+ je .LBL_2_14
+
+.LBL_2_13:
+
+ movss (%rdi), %xmm0
+ mulss %xmm0, %xmm0
+ movss %xmm0, (%rsi)
+ ret
+
+.LBL_2_14:
+
+ testl $8388607, (%rdi)
+ jne .LBL_2_13
+
+
+ movl $1, %eax
+ pxor %xmm1, %xmm1
+ pxor %xmm0, %xmm0
+ divss %xmm0, %xmm1
+ movss %xmm1, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_slog10_cout_rare_internal,@function
+ .size __svml_slog10_cout_rare_internal,.-__svml_slog10_cout_rare_internal
+..LN__svml_slog10_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_slog10_data_internal_avx512:
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 3184111259
+ .long 3181837556
+ .long 3180047478
+ .long 3177957936
+ .long 3175655835
+ .long 3173780127
+ .long 3172237531
+ .long 3170958066
+ .long 3196205737
+ .long 3194315592
+ .long 3192585145
+ .long 3191105685
+ .long 3189833727
+ .long 3188734475
+ .long 3187779868
+ .long 3186223182
+ .long 1041488008
+ .long 1041279100
+ .long 1040946627
+ .long 1040547595
+ .long 1040048184
+ .long 1039171801
+ .long 1038306334
+ .long 1037468467
+ .long 1034710670
+ .long 1037388369
+ .long 1039339328
+ .long 1040458589
+ .long 1040937011
+ .long 1041247376
+ .long 1041427373
+ .long 1041506296
+ .long 3193854619
+ .long 3193841271
+ .long 3193799669
+ .long 3193724950
+ .long 3193617675
+ .long 3193480957
+ .long 3193318914
+ .long 3193135864
+ .long 3194544764
+ .long 3194251079
+ .long 3194067571
+ .long 3193958490
+ .long 3193898352
+ .long 3193869008
+ .long 3193857579
+ .long 3193854984
+ .long 1054759896
+ .long 1054759749
+ .long 1054758872
+ .long 1054756529
+ .long 1054752055
+ .long 1054744934
+ .long 1054734809
+ .long 1054721467
+ .long 1054738669
+ .long 1054749415
+ .long 1054755175
+ .long 1054758032
+ .long 1054759295
+ .long 1054759760
+ .long 1054759882
+ .long 1054759897
+ .long 1050288283
+ .long 1050288283
+ .long 1050288283
+ .long 1050288283
+ .long 1050288283
+ .long 1050288283
+ .long 1050288283
+ .long 1050288283
+ .long 1050288283
+ .long 1050288283
+ .long 1050288283
+ .long 1050288283
+ .long 1050288283
+ .long 1050288283
+ .long 1050288283
+ .long 1050288283
+ .type __svml_slog10_data_internal_avx512,@object
+ .size __svml_slog10_data_internal_avx512,384
+ .align 32
+__slog10_la_CoutTab:
+ .long 1121868800
+ .long 0
+ .long 0
+ .long 1121641104
+ .long 1004535808
+ .long 912917177
+ .long 1121413408
+ .long 1013055488
+ .long 3065901602
+ .long 1121185712
+ .long 1017839616
+ .long 3083361151
+ .long 1120958016
+ .long 1021673472
+ .long 929297206
+ .long 1120844168
+ .long 1023524864
+ .long 3077496589
+ .long 1120616472
+ .long 1025499136
+ .long 3070500046
+ .long 1120388776
+ .long 1027506176
+ .long 912271551
+ .long 1120274928
+ .long 1028521984
+ .long 927716856
+ .long 1120047232
+ .long 1030586368
+ .long 923757491
+ .long 1119933384
+ .long 1031634944
+ .long 3056752848
+ .long 1119705688
+ .long 1032775680
+ .long 917029265
+ .long 1119591840
+ .long 1033314304
+ .long 3065085585
+ .long 1119364144
+ .long 1034403840
+ .long 3064614024
+ .long 1119250296
+ .long 1034954752
+ .long 921091539
+ .long 1119136448
+ .long 1035513856
+ .long 3057436454
+ .long 1118908752
+ .long 1036644352
+ .long 922468856
+ .long 1118794904
+ .long 1037219840
+ .long 3049155845
+ .long 1118681056
+ .long 1037799424
+ .long 904301451
+ .long 1118567208
+ .long 1038385152
+ .long 908617625
+ .long 1118453360
+ .long 1038977024
+ .long 905362229
+ .long 1118225664
+ .long 1040179200
+ .long 3027570914
+ .long 1118111816
+ .long 1040488448
+ .long 882280038
+ .long 1117997968
+ .long 1040796672
+ .long 911375775
+ .long 1117884120
+ .long 1041108480
+ .long 904500572
+ .long 1117770272
+ .long 1041423872
+ .long 3057579304
+ .long 1117656424
+ .long 1041742336
+ .long 3053334705
+ .long 1117542576
+ .long 1042064384
+ .long 3053389931
+ .long 1117428728
+ .long 1042390016
+ .long 3051561465
+ .long 1117314880
+ .long 1042719232
+ .long 3011187895
+ .long 1117201032
+ .long 1043052544
+ .long 3059907089
+ .long 1117087184
+ .long 1043389440
+ .long 3057005374
+ .long 1116973336
+ .long 1043729920
+ .long 911932638
+ .long 1116859488
+ .long 1044075008
+ .long 892958461
+ .long 1116859488
+ .long 1044075008
+ .long 892958461
+ .long 1116745640
+ .long 1044424192
+ .long 3048660547
+ .long 1116631792
+ .long 1044777472
+ .long 3049032043
+ .long 1116517944
+ .long 1045134848
+ .long 906867152
+ .long 1116404096
+ .long 1045496832
+ .long 911484894
+ .long 1116404096
+ .long 1045496832
+ .long 911484894
+ .long 1116290248
+ .long 1045863424
+ .long 912580963
+ .long 1116176400
+ .long 1046235136
+ .long 3058440244
+ .long 1116062552
+ .long 1046610944
+ .long 895945194
+ .long 1116062552
+ .long 1046610944
+ .long 895945194
+ .long 1115948704
+ .long 1046991872
+ .long 904357324
+ .long 1115834856
+ .long 1047377920
+ .long 902293870
+ .long 1115721008
+ .long 1047769088
+ .long 907149878
+ .long 1115721008
+ .long 1047769088
+ .long 907149878
+ .long 1115529456
+ .long 1048165888
+ .long 3052029263
+ .long 1115301760
+ .long 1048567808
+ .long 3035959522
+ .long 1115301760
+ .long 1048567808
+ .long 3035959522
+ .long 1115074064
+ .long 1048775680
+ .long 892998645
+ .long 1115074064
+ .long 1048775680
+ .long 892998645
+ .long 1114846368
+ .long 1048982400
+ .long 881767775
+ .long 1114618672
+ .long 1049192064
+ .long 893839142
+ .long 1114618672
+ .long 1049192064
+ .long 893839142
+ .long 1114390976
+ .long 1049404800
+ .long 896498651
+ .long 1114390976
+ .long 1049404800
+ .long 896498651
+ .long 1114163280
+ .long 1049620736
+ .long 3033695903
+ .long 1114163280
+ .long 1049620736
+ .long 3033695903
+ .long 1113935584
+ .long 1049839872
+ .long 3029986056
+ .long 1113935584
+ .long 1049839872
+ .long 3029986056
+ .long 1113707888
+ .long 1050062336
+ .long 884671939
+ .long 1113707888
+ .long 1050062336
+ .long 884671939
+ .long 1113480192
+ .long 1050288256
+ .long 894707678
+ .long 1050279936
+ .long 964848148
+ .long 1207959616
+ .long 1174405120
+ .long 1002438656
+ .long 1400897536
+ .long 0
+ .long 1065353216
+ .long 1121868800
+ .long 3212771328
+ .long 3079888218
+ .long 870463078
+ .long 2957202361
+ .long 749987585
+ .long 2838272395
+ .long 631921661
+ .long 2720751022
+ .type __slog10_la_CoutTab,@object
+ .size __slog10_la_CoutTab,848
+ .align 4
+.L_2il0floatpacket.77:
+ .long 0x53800000
+ .type .L_2il0floatpacket.77,@object
+ .size .L_2il0floatpacket.77,4
+ .align 4
+.L_2il0floatpacket.78:
+ .long 0x3bc00000
+ .type .L_2il0floatpacket.78,@object
+ .size .L_2il0floatpacket.78,4
+ .align 4
+.L_2il0floatpacket.79:
+ .long 0x48000040
+ .type .L_2il0floatpacket.79,@object
+ .size .L_2il0floatpacket.79,4
+ .align 4
+.L_2il0floatpacket.80:
+ .long 0x46000000
+ .type .L_2il0floatpacket.80,@object
+ .size .L_2il0floatpacket.80,4
+ .align 4
+.L_2il0floatpacket.81:
+ .long 0x42de5c00
+ .type .L_2il0floatpacket.81,@object
+ .size .L_2il0floatpacket.81,4
+ .align 4
+.L_2il0floatpacket.82:
+ .long 0xbf7f0000
+ .type .L_2il0floatpacket.82,@object
+ .size .L_2il0floatpacket.82,4
+ .align 4
+.L_2il0floatpacket.83:
+ .long 0xb7935d5a
+ .type .L_2il0floatpacket.83,@object
+ .size .L_2il0floatpacket.83,4
+ .align 4
+.L_2il0floatpacket.84:
+ .long 0x33e23666
+ .type .L_2il0floatpacket.84,@object
+ .size .L_2il0floatpacket.84,4
+ .align 4
+.L_2il0floatpacket.85:
+ .long 0xb04353b9
+ .type .L_2il0floatpacket.85,@object
+ .size .L_2il0floatpacket.85,4
+ .align 4
+.L_2il0floatpacket.86:
+ .long 0x2cb3e701
+ .type .L_2il0floatpacket.86,@object
+ .size .L_2il0floatpacket.86,4
+ .align 4
+.L_2il0floatpacket.87:
+ .long 0xa92c998b
+ .type .L_2il0floatpacket.87,@object
+ .size .L_2il0floatpacket.87,4
+ .align 4
+.L_2il0floatpacket.88:
+ .long 0x25aa5bfd
+ .type .L_2il0floatpacket.88,@object
+ .size .L_2il0floatpacket.88,4
+ .align 4
+.L_2il0floatpacket.89:
+ .long 0xa22b5dae
+ .type .L_2il0floatpacket.89,@object
+ .size .L_2il0floatpacket.89,4
+ .align 4
+.L_2il0floatpacket.90:
+ .long 0x3e9a0000
+ .type .L_2il0floatpacket.90,@object
+ .size .L_2il0floatpacket.90,4
+ .align 4
+.L_2il0floatpacket.91:
+ .long 0x39826a14
+ .type .L_2il0floatpacket.91,@object
+ .size .L_2il0floatpacket.91,4
+ .align 4
+.L_2il0floatpacket.92:
+ .long 0xbf800000
+ .type .L_2il0floatpacket.92,@object
+ .size .L_2il0floatpacket.92,4
+ .align 4
+.L_2il0floatpacket.93:
+ .long 0x3f800000
+ .type .L_2il0floatpacket.93,@object
+ .size .L_2il0floatpacket.93,4
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * * Compute 1+_VARG1 in high-low parts. The low part will be
+ * * incorporated in the reduced argument (with proper scaling).
+ * * log(x) = VGETEXP(x)*log(2) + log(VGETMANT(x))
+ * * VGETEXP, VGETMANT will correctly treat special cases too (including denormals)
+ * * mx = VGETMANT(x) is in [1,2) for all x>=0
+ * * log(mx) = -log(RCP(mx)) + log(1 +(mx*RCP(mx)-1))
+ * * RCP(mx) is rounded to 4 fractional bits,
+ * * and the table lookup for log(RCP(mx)) is based on a small permute instruction
+ * *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_log1p8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_log1p8
+
+__svml_log1p8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 128+__svml_dlog1p_data_internal_avx512(%rip), %zmm7
+ vmovups 192+__svml_dlog1p_data_internal_avx512(%rip), %zmm14
+ vmovaps %zmm0, %zmm9
+ vaddpd {rn-sae}, %zmm9, %zmm7, %zmm11
+ vandpd %zmm14, %zmm9, %zmm8
+
+/* compute 1+x as high, low parts */
+ vmaxpd {sae}, %zmm9, %zmm7, %zmm10
+ vminpd {sae}, %zmm9, %zmm7, %zmm12
+
+/* GetMant(x), normalized to [1,2) for x>=0, NaN for x<0 */
+ vgetmantpd $8, {sae}, %zmm11, %zmm6
+
+/* GetExp(x) */
+ vgetexppd {sae}, %zmm11, %zmm5
+ vsubpd {rn-sae}, %zmm10, %zmm11, %zmm13
+
+/* DblRcp ~ 1/Mantissa */
+ vrcp14pd %zmm6, %zmm15
+
+/* Start polynomial evaluation */
+ vmovups 320+__svml_dlog1p_data_internal_avx512(%rip), %zmm10
+ vmovups 448+__svml_dlog1p_data_internal_avx512(%rip), %zmm11
+
+/* Xl */
+ vsubpd {rn-sae}, %zmm13, %zmm12, %zmm2
+ vxorpd %zmm14, %zmm5, %zmm3
+
+/* round DblRcp to 4 fractional bits (RN mode, no Precision exception) */
+ vrndscalepd $88, {sae}, %zmm15, %zmm4
+ vmovups 576+__svml_dlog1p_data_internal_avx512(%rip), %zmm12
+ vmovups 512+__svml_dlog1p_data_internal_avx512(%rip), %zmm14
+ vmovups 704+__svml_dlog1p_data_internal_avx512(%rip), %zmm13
+
+/* Xl*2^(-Expon) */
+ vscalefpd {rn-sae}, %zmm3, %zmm2, %zmm1
+
+/* Reduced argument: R = DblRcp*(Mantissa+Xl) - 1 */
+ vfmsub213pd {rn-sae}, %zmm7, %zmm4, %zmm6
+ vmovups __svml_dlog1p_data_internal_avx512(%rip), %zmm3
+
+/*
+ * Table lookup
+ * Prepare exponent correction: DblRcp<0.75?
+ */
+ vmovups 256+__svml_dlog1p_data_internal_avx512(%rip), %zmm2
+
+/* Prepare table index */
+ vpsrlq $48, %zmm4, %zmm0
+ vfmadd231pd {rn-sae}, %zmm4, %zmm1, %zmm6
+ vmovups 384+__svml_dlog1p_data_internal_avx512(%rip), %zmm1
+ vcmppd $17, {sae}, %zmm2, %zmm4, %k1
+ vcmppd $4, {sae}, %zmm6, %zmm6, %k0
+ vfmadd231pd {rn-sae}, %zmm6, %zmm10, %zmm1
+ vmovups 640+__svml_dlog1p_data_internal_avx512(%rip), %zmm10
+ vfmadd231pd {rn-sae}, %zmm6, %zmm11, %zmm14
+ vmovups 832+__svml_dlog1p_data_internal_avx512(%rip), %zmm4
+ vpermt2pd 64+__svml_dlog1p_data_internal_avx512(%rip), %zmm0, %zmm3
+
+/* add 1 to Expon if DblRcp<0.75 */
+ vaddpd {rn-sae}, %zmm7, %zmm5, %zmm5{%k1}
+
+/* R^2 */
+ vmulpd {rn-sae}, %zmm6, %zmm6, %zmm0
+ vfmadd231pd {rn-sae}, %zmm6, %zmm12, %zmm10
+ vmovups 768+__svml_dlog1p_data_internal_avx512(%rip), %zmm12
+ vmulpd {rn-sae}, %zmm0, %zmm0, %zmm15
+ vfmadd231pd {rn-sae}, %zmm6, %zmm13, %zmm12
+ vfmadd213pd {rn-sae}, %zmm14, %zmm0, %zmm1
+ kmovw %k0, %edx
+ vfmadd213pd {rn-sae}, %zmm12, %zmm0, %zmm10
+
+/* polynomial */
+ vfmadd213pd {rn-sae}, %zmm10, %zmm15, %zmm1
+ vfmadd213pd {rn-sae}, %zmm6, %zmm0, %zmm1
+ vaddpd {rn-sae}, %zmm1, %zmm3, %zmm6
+ vfmadd213pd {rn-sae}, %zmm6, %zmm4, %zmm5
+ vorpd %zmm8, %zmm5, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm9, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dlog1p_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_log1p8,@function
+ .size __svml_log1p8,.-__svml_log1p8
+..LN__svml_log1p8.0:
+
+.L_2__routine_start___svml_dlog1p_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dlog1p_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movsd .L_2il0floatpacket.81(%rip), %xmm3
+ movsd (%rdi), %xmm2
+ addsd %xmm3, %xmm2
+ movsd %xmm2, -16(%rsp)
+ movzwl -10(%rsp), %edx
+ andl $32752, %edx
+ cmpl $32752, %edx
+ je .LBL_2_12
+
+
+ movsd %xmm2, -8(%rsp)
+ xorl %ecx, %ecx
+ movzwl -2(%rsp), %edx
+ testl $32752, %edx
+ jne .LBL_2_4
+
+
+ mulsd 1600+__dlog1p_la_CoutTab(%rip), %xmm2
+ movl $-60, %ecx
+ movsd %xmm2, -8(%rsp)
+
+.LBL_2_4:
+
+ movsd 1608+__dlog1p_la_CoutTab(%rip), %xmm0
+ comisd %xmm0, %xmm2
+ jbe .LBL_2_8
+
+
+ movaps %xmm2, %xmm1
+ subsd %xmm3, %xmm1
+ movsd %xmm1, -16(%rsp)
+ andb $127, -9(%rsp)
+ movsd -16(%rsp), %xmm0
+ comisd 1592+__dlog1p_la_CoutTab(%rip), %xmm0
+ jbe .LBL_2_7
+
+
+ movsd %xmm2, -16(%rsp)
+ pxor %xmm7, %xmm7
+ movzwl -10(%rsp), %edi
+ lea __dlog1p_la_CoutTab(%rip), %r10
+ andl $-32753, %edi
+ addl $16368, %edi
+ movw %di, -10(%rsp)
+ movsd -16(%rsp), %xmm4
+ movaps %xmm4, %xmm1
+ movaps %xmm4, %xmm2
+ movsd 1672+__dlog1p_la_CoutTab(%rip), %xmm8
+ movzwl -2(%rsp), %edx
+ andl $32752, %edx
+ addsd 1576+__dlog1p_la_CoutTab(%rip), %xmm1
+ addsd 1584+__dlog1p_la_CoutTab(%rip), %xmm2
+ movsd %xmm1, -24(%rsp)
+ movl -24(%rsp), %r8d
+ movsd %xmm2, -24(%rsp)
+ andl $127, %r8d
+ movsd -24(%rsp), %xmm5
+ movsd 1560+__dlog1p_la_CoutTab(%rip), %xmm9
+ movsd 1568+__dlog1p_la_CoutTab(%rip), %xmm0
+ shrl $4, %edx
+ subsd 1584+__dlog1p_la_CoutTab(%rip), %xmm5
+ lea (%r8,%r8,2), %r9d
+ movsd (%r10,%r9,8), %xmm6
+ lea -1023(%rcx,%rdx), %ecx
+ cvtsi2sd %ecx, %xmm7
+ subsd %xmm5, %xmm4
+ mulsd %xmm6, %xmm5
+ mulsd %xmm7, %xmm9
+ subsd %xmm3, %xmm5
+ mulsd %xmm4, %xmm6
+ mulsd %xmm0, %xmm7
+ addsd 8(%r10,%r9,8), %xmm9
+ addsd 16(%r10,%r9,8), %xmm7
+ addsd %xmm5, %xmm9
+ addsd %xmm6, %xmm7
+ movaps %xmm5, %xmm3
+ addsd %xmm6, %xmm3
+ mulsd %xmm3, %xmm8
+ addsd 1664+__dlog1p_la_CoutTab(%rip), %xmm8
+ mulsd %xmm3, %xmm8
+ addsd 1656+__dlog1p_la_CoutTab(%rip), %xmm8
+ mulsd %xmm3, %xmm8
+ addsd 1648+__dlog1p_la_CoutTab(%rip), %xmm8
+ mulsd %xmm3, %xmm8
+ addsd 1640+__dlog1p_la_CoutTab(%rip), %xmm8
+ mulsd %xmm3, %xmm8
+ addsd 1632+__dlog1p_la_CoutTab(%rip), %xmm8
+ mulsd %xmm3, %xmm8
+ addsd 1624+__dlog1p_la_CoutTab(%rip), %xmm8
+ mulsd %xmm3, %xmm8
+ mulsd %xmm3, %xmm8
+ addsd %xmm7, %xmm8
+ addsd %xmm8, %xmm9
+ movsd %xmm9, (%rsi)
+ ret
+
+.LBL_2_7:
+
+ movsd 1672+__dlog1p_la_CoutTab(%rip), %xmm0
+ mulsd %xmm1, %xmm0
+ addsd 1664+__dlog1p_la_CoutTab(%rip), %xmm0
+ mulsd %xmm1, %xmm0
+ addsd 1656+__dlog1p_la_CoutTab(%rip), %xmm0
+ mulsd %xmm1, %xmm0
+ addsd 1648+__dlog1p_la_CoutTab(%rip), %xmm0
+ mulsd %xmm1, %xmm0
+ addsd 1640+__dlog1p_la_CoutTab(%rip), %xmm0
+ mulsd %xmm1, %xmm0
+ addsd 1632+__dlog1p_la_CoutTab(%rip), %xmm0
+ mulsd %xmm1, %xmm0
+ addsd 1624+__dlog1p_la_CoutTab(%rip), %xmm0
+ mulsd %xmm1, %xmm0
+ mulsd %xmm1, %xmm0
+ addsd %xmm1, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_8:
+
+ ucomisd %xmm0, %xmm2
+ jp .LBL_2_9
+ je .LBL_2_11
+
+.LBL_2_9:
+
+ divsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ movl $1, %eax
+
+
+ ret
+
+.LBL_2_11:
+
+ movsd 1616+__dlog1p_la_CoutTab(%rip), %xmm1
+ movl $2, %eax
+ xorps .L_2il0floatpacket.80(%rip), %xmm1
+ divsd %xmm0, %xmm1
+ movsd %xmm1, (%rsi)
+ ret
+
+.LBL_2_12:
+
+ movb -9(%rsp), %dl
+ andb $-128, %dl
+ cmpb $-128, %dl
+ je .LBL_2_14
+
+.LBL_2_13:
+
+ mulsd %xmm2, %xmm2
+ movsd %xmm2, (%rsi)
+ ret
+
+.LBL_2_14:
+
+ testl $1048575, -12(%rsp)
+ jne .LBL_2_13
+
+
+ cmpl $0, -16(%rsp)
+ jne .LBL_2_13
+
+
+ movsd 1608+__dlog1p_la_CoutTab(%rip), %xmm0
+ movl $1, %eax
+ divsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dlog1p_cout_rare_internal,@function
+ .size __svml_dlog1p_cout_rare_internal,.-__svml_dlog1p_cout_rare_internal
+..LN__svml_dlog1p_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dlog1p_data_internal_avx512:
+ .long 0
+ .long 0
+ .long 3222364838
+ .long 3215919664
+ .long 1848308454
+ .long 3216910087
+ .long 1890030548
+ .long 3217424176
+ .long 3348797986
+ .long 3217854455
+ .long 2880153102
+ .long 3218171740
+ .long 3256639170
+ .long 3218366859
+ .long 4139503623
+ .long 3218553303
+ .long 288676754
+ .long 1070754146
+ .long 1823716217
+ .long 1070569756
+ .long 1015732707
+ .long 1070240749
+ .long 1800682930
+ .long 1069924160
+ .long 2183652476
+ .long 1069619086
+ .long 1566132617
+ .long 1069101918
+ .long 3047045639
+ .long 1068533144
+ .long 2313634884
+ .long 1067467101
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 815627376
+ .long 1069318605
+ .long 815627376
+ .long 1069318605
+ .long 815627376
+ .long 1069318605
+ .long 815627376
+ .long 1069318605
+ .long 815627376
+ .long 1069318605
+ .long 815627376
+ .long 1069318605
+ .long 815627376
+ .long 1069318605
+ .long 815627376
+ .long 1069318605
+ .long 2123607906
+ .long 3217033013
+ .long 2123607906
+ .long 3217033013
+ .long 2123607906
+ .long 3217033013
+ .long 2123607906
+ .long 3217033013
+ .long 2123607906
+ .long 3217033013
+ .long 2123607906
+ .long 3217033013
+ .long 2123607906
+ .long 3217033013
+ .long 2123607906
+ .long 3217033013
+ .long 2632876527
+ .long 1069697314
+ .long 2632876527
+ .long 1069697314
+ .long 2632876527
+ .long 1069697314
+ .long 2632876527
+ .long 1069697314
+ .long 2632876527
+ .long 1069697314
+ .long 2632876527
+ .long 1069697314
+ .long 2632876527
+ .long 1069697314
+ .long 2632876527
+ .long 1069697314
+ .long 4213758726
+ .long 3217380691
+ .long 4213758726
+ .long 3217380691
+ .long 4213758726
+ .long 3217380691
+ .long 4213758726
+ .long 3217380691
+ .long 4213758726
+ .long 3217380691
+ .long 4213758726
+ .long 3217380691
+ .long 4213758726
+ .long 3217380691
+ .long 4213758726
+ .long 3217380691
+ .long 2580324188
+ .long 1070176665
+ .long 2580324188
+ .long 1070176665
+ .long 2580324188
+ .long 1070176665
+ .long 2580324188
+ .long 1070176665
+ .long 2580324188
+ .long 1070176665
+ .long 2580324188
+ .long 1070176665
+ .long 2580324188
+ .long 1070176665
+ .long 2580324188
+ .long 1070176665
+ .long 787901
+ .long 3218079744
+ .long 787901
+ .long 3218079744
+ .long 787901
+ .long 3218079744
+ .long 787901
+ .long 3218079744
+ .long 787901
+ .long 3218079744
+ .long 787901
+ .long 3218079744
+ .long 787901
+ .long 3218079744
+ .long 787901
+ .long 3218079744
+ .long 1431655526
+ .long 1070945621
+ .long 1431655526
+ .long 1070945621
+ .long 1431655526
+ .long 1070945621
+ .long 1431655526
+ .long 1070945621
+ .long 1431655526
+ .long 1070945621
+ .long 1431655526
+ .long 1070945621
+ .long 1431655526
+ .long 1070945621
+ .long 1431655526
+ .long 1070945621
+ .long 4294967238
+ .long 3219128319
+ .long 4294967238
+ .long 3219128319
+ .long 4294967238
+ .long 3219128319
+ .long 4294967238
+ .long 3219128319
+ .long 4294967238
+ .long 3219128319
+ .long 4294967238
+ .long 3219128319
+ .long 4294967238
+ .long 3219128319
+ .long 4294967238
+ .long 3219128319
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .type __svml_dlog1p_data_internal_avx512,@object
+ .size __svml_dlog1p_data_internal_avx512,1152
+ .align 32
+__dlog1p_la_CoutTab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1072660480
+ .long 1486880768
+ .long 1066410070
+ .long 1813744607
+ .long 3179892593
+ .long 0
+ .long 1072629760
+ .long 377487360
+ .long 1067416219
+ .long 919019713
+ .long 3179241129
+ .long 0
+ .long 1072599040
+ .long 1513619456
+ .long 1067944025
+ .long 874573033
+ .long 3178512940
+ .long 0
+ .long 1072570368
+ .long 3221749760
+ .long 1068427825
+ .long 4181665006
+ .long 3177478212
+ .long 0
+ .long 1072541696
+ .long 4162322432
+ .long 1068708823
+ .long 627020255
+ .long 1028629941
+ .long 0
+ .long 1072513024
+ .long 183107584
+ .long 1068957907
+ .long 2376703469
+ .long 1030233118
+ .long 0
+ .long 1072486400
+ .long 1053425664
+ .long 1069192557
+ .long 696277142
+ .long 1030474863
+ .long 0
+ .long 1072459776
+ .long 3996123136
+ .long 1069430535
+ .long 2630798680
+ .long 1028792016
+ .long 0
+ .long 1072435200
+ .long 3452764160
+ .long 1069600382
+ .long 624954044
+ .long 3177101741
+ .long 0
+ .long 1072409600
+ .long 207650816
+ .long 1069717971
+ .long 3272735636
+ .long 3175176575
+ .long 0
+ .long 1072386048
+ .long 2647228416
+ .long 1069827627
+ .long 3594228712
+ .long 1029303785
+ .long 0
+ .long 1072362496
+ .long 2712010752
+ .long 1069938736
+ .long 3653242769
+ .long 3176839013
+ .long 0
+ .long 1072338944
+ .long 374439936
+ .long 1070051337
+ .long 4072775574
+ .long 3176577495
+ .long 0
+ .long 1072316416
+ .long 3707174912
+ .long 1070160474
+ .long 1486946159
+ .long 1023930920
+ .long 0
+ .long 1072294912
+ .long 1443954688
+ .long 1070265993
+ .long 293532967
+ .long 3176278277
+ .long 0
+ .long 1072273408
+ .long 127762432
+ .long 1070372856
+ .long 3404145447
+ .long 3177023955
+ .long 0
+ .long 1072252928
+ .long 2053832704
+ .long 1070475911
+ .long 1575076358
+ .long 1029048544
+ .long 0
+ .long 1072232448
+ .long 3194093568
+ .long 1070580248
+ .long 1864169120
+ .long 1026866084
+ .long 0
+ .long 1072212992
+ .long 3917201408
+ .long 1070638340
+ .long 2362145246
+ .long 3175606197
+ .long 0
+ .long 1072193536
+ .long 3417112576
+ .long 1070689116
+ .long 70087871
+ .long 3174183577
+ .long 0
+ .long 1072175104
+ .long 4226777088
+ .long 1070737793
+ .long 1620410586
+ .long 3174700065
+ .long 0
+ .long 1072156672
+ .long 3168870400
+ .long 1070787042
+ .long 311238082
+ .long 1025781772
+ .long 0
+ .long 1072139264
+ .long 2150580224
+ .long 1070834092
+ .long 1664262457
+ .long 3175299224
+ .long 0
+ .long 1072120832
+ .long 4095672320
+ .long 1070884491
+ .long 1657121015
+ .long 3174674199
+ .long 0
+ .long 1072104448
+ .long 2595577856
+ .long 1070929805
+ .long 2014006823
+ .long 3175423830
+ .long 0
+ .long 1072087040
+ .long 3747176448
+ .long 1070978493
+ .long 144991708
+ .long 3171552042
+ .long 0
+ .long 1072070656
+ .long 1050435584
+ .long 1071024840
+ .long 3386227432
+ .long 1027876916
+ .long 0
+ .long 1072055296
+ .long 255516672
+ .long 1071068760
+ .long 2637594316
+ .long 1028049573
+ .long 0
+ .long 1072038912
+ .long 1640783872
+ .long 1071116120
+ .long 893247007
+ .long 1028452162
+ .long 0
+ .long 1072023552
+ .long 2940411904
+ .long 1071161011
+ .long 813240633
+ .long 1027664048
+ .long 0
+ .long 1072009216
+ .long 882917376
+ .long 1071203348
+ .long 2376597551
+ .long 3175828767
+ .long 0
+ .long 1071993856
+ .long 213966848
+ .long 1071249188
+ .long 2977204125
+ .long 1028350609
+ .long 0
+ .long 1071979520
+ .long 2921504768
+ .long 1071292428
+ .long 523218347
+ .long 1028007004
+ .long 0
+ .long 1071965184
+ .long 3186655232
+ .long 1071336119
+ .long 2352907891
+ .long 1026967097
+ .long 0
+ .long 1071951872
+ .long 2653364224
+ .long 1071377101
+ .long 2453418583
+ .long 3174349512
+ .long 0
+ .long 1071938560
+ .long 3759783936
+ .long 1071418487
+ .long 3685870403
+ .long 3175415611
+ .long 0
+ .long 1071925248
+ .long 2468364288
+ .long 1071460286
+ .long 1578908842
+ .long 3175510517
+ .long 0
+ .long 1071911936
+ .long 81903616
+ .long 1071502506
+ .long 770710269
+ .long 1026742353
+ .long 0
+ .long 1071899648
+ .long 2799321088
+ .long 1071541858
+ .long 3822266185
+ .long 1028434427
+ .long 0
+ .long 1071886336
+ .long 2142265344
+ .long 1071584911
+ .long 175901806
+ .long 3173871540
+ .long 0
+ .long 1071874048
+ .long 2944024576
+ .long 1071625048
+ .long 2747360403
+ .long 1027672159
+ .long 0
+ .long 1071862784
+ .long 3434301440
+ .long 1071653426
+ .long 4194662196
+ .long 3173893003
+ .long 0
+ .long 1071850496
+ .long 1547755520
+ .long 1071673870
+ .long 4248764681
+ .long 3172759087
+ .long 0
+ .long 1071839232
+ .long 4246986752
+ .long 1071692786
+ .long 2840205638
+ .long 3174430911
+ .long 0
+ .long 1071826944
+ .long 3418390528
+ .long 1071713619
+ .long 3041880823
+ .long 1025440860
+ .long 0
+ .long 1071816704
+ .long 4143093760
+ .long 1071731139
+ .long 2727587401
+ .long 3173965207
+ .long 0
+ .long 1071805440
+ .long 3121326080
+ .long 1071750582
+ .long 3173887692
+ .long 3174190163
+ .long 0
+ .long 1071794176
+ .long 1852893184
+ .long 1071770207
+ .long 3951060252
+ .long 1027348295
+ .long 0
+ .long 1071783936
+ .long 3636379648
+ .long 1071788208
+ .long 1684924001
+ .long 3174777086
+ .long 0
+ .long 1071773696
+ .long 516505600
+ .long 1071806366
+ .long 429181199
+ .long 3173211033
+ .long 0
+ .long 1071763456
+ .long 4186185728
+ .long 1071824681
+ .long 2044904577
+ .long 3174967132
+ .long 0
+ .long 1071753216
+ .long 877596672
+ .long 1071843159
+ .long 1396318105
+ .long 3173959727
+ .long 0
+ .long 1071742976
+ .long 2912784384
+ .long 1071861800
+ .long 448136789
+ .long 3174814192
+ .long 0
+ .long 1071733760
+ .long 3722825728
+ .long 1071878720
+ .long 714165913
+ .long 3173439560
+ .long 0
+ .long 1071723520
+ .long 2522374144
+ .long 1071897682
+ .long 3227240353
+ .long 3173394323
+ .long 0
+ .long 1071714304
+ .long 4165410816
+ .long 1071914895
+ .long 1365684961
+ .long 3174365060
+ .long 0
+ .long 1071705088
+ .long 3477135360
+ .long 1071932251
+ .long 368482985
+ .long 3174140821
+ .long 0
+ .long 1071695872
+ .long 2079455232
+ .long 1071949752
+ .long 1320576317
+ .long 1026822714
+ .long 0
+ .long 1071687680
+ .long 851795968
+ .long 1071965432
+ .long 3702467026
+ .long 1025224125
+ .long 0
+ .long 1071678464
+ .long 647743488
+ .long 1071983213
+ .long 772992109
+ .long 3174038459
+ .long 0
+ .long 1071670272
+ .long 26537984
+ .long 1071999146
+ .long 2360214276
+ .long 3174861275
+ .long 0
+ .long 1071661056
+ .long 1547061248
+ .long 1072017216
+ .long 2886781435
+ .long 1026423395
+ .long 0
+ .long 1071652864
+ .long 2854492160
+ .long 1072033410
+ .long 215631550
+ .long 1025638968
+ .long 0
+ .long 1071644672
+ .long 4277811200
+ .long 1072049730
+ .long 2479318832
+ .long 1026487127
+ .long 4277811200
+ .long 1072049730
+ .long 2479318832
+ .long 1026487127
+ .long 64
+ .long 1120927744
+ .long 0
+ .long 1094713344
+ .long 0
+ .long 1065615360
+ .long 0
+ .long 1135607808
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 3219128320
+ .long 1431655955
+ .long 1070945621
+ .long 610
+ .long 3218079744
+ .long 2545118337
+ .long 1070176665
+ .long 1378399119
+ .long 3217380693
+ .long 612435357
+ .long 1069697472
+ .long 94536557
+ .long 3217031348
+ .type __dlog1p_la_CoutTab,@object
+ .size __dlog1p_la_CoutTab,1680
+ .align 16
+.L_2il0floatpacket.80:
+ .long 0x00000000,0x80000000,0x00000000,0x00000000
+ .type .L_2il0floatpacket.80,@object
+ .size .L_2il0floatpacket.80,16
+ .align 8
+.L_2il0floatpacket.81:
+ .long 0x00000000,0x3ff00000
+ .type .L_2il0floatpacket.81,@object
+ .size .L_2il0floatpacket.81,8
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+
+ .text
+.L_2__routine_start___svml_log1pf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_log1pf16
+
+__svml_log1pf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovups 1984+__svml_slog1p_data_internal(%rip), %zmm2
+
+/* reduction: compute r,n */
+ vmovups 2688+__svml_slog1p_data_internal(%rip), %zmm12
+ vmovups 1088+__svml_slog1p_data_internal(%rip), %zmm4
+ vmovaps %zmm0, %zmm3
+
+/* compute 1+x as high, low parts */
+ vmaxps {sae}, %zmm3, %zmm2, %zmm5
+ vminps {sae}, %zmm3, %zmm2, %zmm7
+ vandnps %zmm3, %zmm4, %zmm1
+ vpternlogd $255, %zmm4, %zmm4, %zmm4
+ vaddps {rn-sae}, %zmm7, %zmm5, %zmm9
+ vpsubd %zmm12, %zmm9, %zmm10
+ vsubps {rn-sae}, %zmm9, %zmm5, %zmm6
+
+/* check argument value ranges */
+ vpaddd 2560+__svml_slog1p_data_internal(%rip), %zmm9, %zmm8
+ vpsrad $23, %zmm10, %zmm13
+ vmovups 2304+__svml_slog1p_data_internal(%rip), %zmm9
+ vpcmpd $5, 2624+__svml_slog1p_data_internal(%rip), %zmm8, %k1
+ vpslld $23, %zmm13, %zmm14
+ vaddps {rn-sae}, %zmm7, %zmm6, %zmm15
+ vcvtdq2ps {rn-sae}, %zmm13, %zmm0
+ vpsubd %zmm14, %zmm2, %zmm13
+ vmovups 2496+__svml_slog1p_data_internal(%rip), %zmm7
+ vmovups 2048+__svml_slog1p_data_internal(%rip), %zmm14
+ vmulps {rn-sae}, %zmm13, %zmm15, %zmm6
+ vpandd 2752+__svml_slog1p_data_internal(%rip), %zmm10, %zmm11
+ vpaddd %zmm12, %zmm11, %zmm5
+ vmovups 2240+__svml_slog1p_data_internal(%rip), %zmm10
+ vmovups 2176+__svml_slog1p_data_internal(%rip), %zmm11
+ vmovups 2112+__svml_slog1p_data_internal(%rip), %zmm12
+
+/* polynomial evaluation */
+ vsubps {rn-sae}, %zmm2, %zmm5, %zmm2
+ vaddps {rn-sae}, %zmm6, %zmm2, %zmm15
+ vmovups 2432+__svml_slog1p_data_internal(%rip), %zmm2
+ vfmadd231ps {rn-sae}, %zmm15, %zmm7, %zmm2
+ vpandnd %zmm8, %zmm8, %zmm4{%k1}
+ vmovups 2368+__svml_slog1p_data_internal(%rip), %zmm8
+
+/* combine and get argument value range mask */
+ vptestmd %zmm4, %zmm4, %k0
+ vfmadd213ps {rn-sae}, %zmm8, %zmm15, %zmm2
+ kmovw %k0, %edx
+ vfmadd213ps {rn-sae}, %zmm9, %zmm15, %zmm2
+ vfmadd213ps {rn-sae}, %zmm10, %zmm15, %zmm2
+ vfmadd213ps {rn-sae}, %zmm11, %zmm15, %zmm2
+ vfmadd213ps {rn-sae}, %zmm12, %zmm15, %zmm2
+ vfmadd213ps {rn-sae}, %zmm14, %zmm15, %zmm2
+ vmulps {rn-sae}, %zmm15, %zmm2, %zmm4
+ vfmadd213ps {rn-sae}, %zmm15, %zmm15, %zmm4
+
+/* final reconstruction */
+ vmovups 2816+__svml_slog1p_data_internal(%rip), %zmm15
+ vfmadd213ps {rn-sae}, %zmm4, %zmm15, %zmm0
+ vorps %zmm1, %zmm0, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm3, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_slog1p_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_log1pf16,@function
+ .size __svml_log1pf16,.-__svml_log1pf16
+..LN__svml_log1pf16.0:
+
+.L_2__routine_start___svml_slog1p_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_slog1p_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movss .L_2il0floatpacket.90(%rip), %xmm1
+ xorb %r8b, %r8b
+ movss (%rdi), %xmm5
+ addss %xmm1, %xmm5
+ movss %xmm5, -20(%rsp)
+ movzwl -18(%rsp), %edx
+ andl $32640, %edx
+ cmpl $32640, %edx
+ je .LBL_2_15
+
+
+ movss %xmm5, -16(%rsp)
+ xorl %ecx, %ecx
+ movzwl -14(%rsp), %edx
+ testl $32640, %edx
+ jne .LBL_2_4
+
+
+ mulss .L_2il0floatpacket.75(%rip), %xmm5
+ movb $1, %r8b
+ movss %xmm5, -16(%rsp)
+ movl $-40, %ecx
+
+.LBL_2_4:
+
+ pxor %xmm3, %xmm3
+ comiss %xmm3, %xmm5
+ jbe .LBL_2_10
+
+
+ movaps %xmm5, %xmm2
+ subss %xmm1, %xmm2
+ movss %xmm2, -20(%rsp)
+ andb $127, -17(%rsp)
+ movss -20(%rsp), %xmm0
+ comiss .L_2il0floatpacket.76(%rip), %xmm0
+ jbe .LBL_2_9
+
+
+ movzwl -14(%rsp), %edx
+ pxor %xmm6, %xmm6
+ andl $32640, %edx
+ shrl $7, %edx
+ lea -127(%rcx,%rdx), %ecx
+ cvtsi2ss %ecx, %xmm6
+ cmpb $1, %r8b
+ je .LBL_2_13
+
+
+ movss .L_2il0floatpacket.86(%rip), %xmm4
+ movss .L_2il0floatpacket.87(%rip), %xmm0
+ mulss %xmm6, %xmm4
+ mulss %xmm0, %xmm6
+
+.LBL_2_8:
+
+ movss %xmm5, -20(%rsp)
+ movaps %xmm4, %xmm9
+ movzwl -18(%rsp), %edx
+ lea __slog1p_la_CoutTab(%rip), %r8
+ andl $-32641, %edx
+ addl $16256, %edx
+ movw %dx, -18(%rsp)
+ movss -20(%rsp), %xmm8
+ movaps %xmm8, %xmm2
+ movss .L_2il0floatpacket.89(%rip), %xmm7
+ addss .L_2il0floatpacket.88(%rip), %xmm2
+ movss %xmm2, -24(%rsp)
+ movl -24(%rsp), %ecx
+ andl $127, %ecx
+ lea (%rcx,%rcx,2), %edi
+ movss 4(%r8,%rdi,4), %xmm5
+ movss (%r8,%rdi,4), %xmm0
+ addss %xmm5, %xmm9
+ addss 8(%r8,%rdi,4), %xmm6
+ movaps %xmm9, %xmm3
+ subss %xmm4, %xmm3
+ movss %xmm3, -24(%rsp)
+ movss -24(%rsp), %xmm4
+ subss %xmm4, %xmm5
+ movss %xmm5, -24(%rsp)
+ movss -24(%rsp), %xmm10
+ addss %xmm6, %xmm10
+ movaps %xmm7, %xmm6
+ addss %xmm8, %xmm6
+ movss %xmm6, -24(%rsp)
+ movss -24(%rsp), %xmm12
+ subss %xmm7, %xmm12
+ subss %xmm12, %xmm8
+ mulss %xmm0, %xmm12
+ subss %xmm1, %xmm12
+ mulss %xmm8, %xmm0
+ movaps %xmm0, %xmm15
+ movaps %xmm12, %xmm2
+ addss %xmm10, %xmm15
+ addss %xmm9, %xmm12
+ addss %xmm0, %xmm2
+ movaps %xmm15, %xmm1
+ movaps %xmm12, %xmm13
+ subss %xmm10, %xmm1
+ addss %xmm15, %xmm13
+ movss %xmm1, -24(%rsp)
+ movss -24(%rsp), %xmm11
+ subss %xmm11, %xmm0
+ movss %xmm0, -24(%rsp)
+ movss -24(%rsp), %xmm0
+ movss %xmm13, (%rsi)
+ subss %xmm12, %xmm13
+ movss .L_2il0floatpacket.83(%rip), %xmm12
+ mulss %xmm2, %xmm12
+ movss %xmm13, -24(%rsp)
+ movss -24(%rsp), %xmm14
+ addss .L_2il0floatpacket.82(%rip), %xmm12
+ subss %xmm14, %xmm15
+ mulss %xmm2, %xmm12
+ movss %xmm15, -24(%rsp)
+ movss -24(%rsp), %xmm1
+ addss .L_2il0floatpacket.81(%rip), %xmm12
+ mulss %xmm2, %xmm12
+ addss .L_2il0floatpacket.80(%rip), %xmm12
+ mulss %xmm2, %xmm12
+ addss .L_2il0floatpacket.79(%rip), %xmm12
+ mulss %xmm2, %xmm12
+ addss .L_2il0floatpacket.78(%rip), %xmm12
+ mulss %xmm2, %xmm12
+ addss .L_2il0floatpacket.77(%rip), %xmm12
+ mulss %xmm2, %xmm12
+ mulss %xmm2, %xmm12
+ addss %xmm12, %xmm0
+ addss %xmm0, %xmm1
+ movss %xmm1, -24(%rsp)
+ movss -24(%rsp), %xmm3
+ addss (%rsi), %xmm3
+ movss %xmm3, (%rsi)
+ ret
+
+.LBL_2_9:
+
+ movss .L_2il0floatpacket.83(%rip), %xmm0
+ mulss %xmm2, %xmm0
+ addss .L_2il0floatpacket.82(%rip), %xmm0
+ mulss %xmm2, %xmm0
+ addss .L_2il0floatpacket.81(%rip), %xmm0
+ mulss %xmm2, %xmm0
+ addss .L_2il0floatpacket.80(%rip), %xmm0
+ mulss %xmm2, %xmm0
+ addss .L_2il0floatpacket.79(%rip), %xmm0
+ mulss %xmm2, %xmm0
+ addss .L_2il0floatpacket.78(%rip), %xmm0
+ mulss %xmm2, %xmm0
+ addss .L_2il0floatpacket.77(%rip), %xmm0
+ mulss %xmm2, %xmm0
+ mulss %xmm2, %xmm0
+ addss %xmm2, %xmm0
+ movss %xmm0, (%rsi)
+ ret
+
+.LBL_2_10:
+
+ ucomiss %xmm3, %xmm5
+ jp .LBL_2_11
+ je .LBL_2_14
+
+.LBL_2_11:
+
+ divss %xmm3, %xmm3
+ movss %xmm3, (%rsi)
+ movl $1, %eax
+
+
+ ret
+
+.LBL_2_13:
+
+ movss .L_2il0floatpacket.85(%rip), %xmm0
+ mulss %xmm0, %xmm6
+ movaps %xmm6, %xmm4
+ movaps %xmm3, %xmm6
+ jmp .LBL_2_8
+
+.LBL_2_14:
+
+ movss .L_2il0floatpacket.84(%rip), %xmm0
+ movl $2, %eax
+ divss %xmm3, %xmm0
+ movss %xmm0, (%rsi)
+ ret
+
+.LBL_2_15:
+
+ movb -17(%rsp), %dl
+ andb $-128, %dl
+ cmpb $-128, %dl
+ je .LBL_2_17
+
+.LBL_2_16:
+
+ mulss %xmm5, %xmm5
+ movss %xmm5, (%rsi)
+ ret
+
+.LBL_2_17:
+
+ testl $8388607, -20(%rsp)
+ jne .LBL_2_16
+
+
+ movl $1, %eax
+ pxor %xmm1, %xmm1
+ pxor %xmm0, %xmm0
+ divss %xmm0, %xmm1
+ movss %xmm1, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_slog1p_cout_rare_internal,@function
+ .size __svml_slog1p_cout_rare_internal,.-__svml_slog1p_cout_rare_internal
+..LN__svml_slog1p_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_slog1p_data_internal:
+ .long 3266227256
+ .long 3107766024
+ .long 3266228276
+ .long 3107776882
+ .long 3266229284
+ .long 3109949545
+ .long 3266230292
+ .long 3108055846
+ .long 3266231292
+ .long 3106351937
+ .long 3266232276
+ .long 3109092567
+ .long 3266233260
+ .long 3107948216
+ .long 3266234236
+ .long 3107170960
+ .long 3266235204
+ .long 3106817287
+ .long 3266236164
+ .long 3106942449
+ .long 3266237116
+ .long 3107600489
+ .long 3266238060
+ .long 3108844279
+ .long 3266239004
+ .long 3106531253
+ .long 3266239932
+ .long 3109100650
+ .long 3266240860
+ .long 3108213420
+ .long 3266241780
+ .long 3108112381
+ .long 3266242692
+ .long 3108845034
+ .long 3266243604
+ .long 3106263589
+ .long 3266244500
+ .long 3108802209
+ .long 3266245396
+ .long 3108116909
+ .long 3266246284
+ .long 3108445707
+ .long 3266247164
+ .long 3109831435
+ .long 3266248044
+ .long 3108121760
+ .long 3266248916
+ .long 3107552123
+ .long 3266249780
+ .long 3108162844
+ .long 3266250644
+ .long 3105799146
+ .long 3266251492
+ .long 3108888393
+ .long 3266252340
+ .long 3109079979
+ .long 3266253188
+ .long 3106411173
+ .long 3266254020
+ .long 3109307139
+ .long 3266254852
+ .long 3109415127
+ .long 3266255684
+ .long 3106770317
+ .long 3266256500
+ .long 3109795834
+ .long 3266257324
+ .long 3105942641
+ .long 3266258132
+ .long 3107826892
+ .long 3266258940
+ .long 3107092610
+ .long 3266259740
+ .long 3107966131
+ .long 3266260540
+ .long 3106284596
+ .long 3266261332
+ .long 3106273188
+ .long 3266262116
+ .long 3107962226
+ .long 3266262900
+ .long 3107187186
+ .long 3266263676
+ .long 3108171617
+ .long 3266264452
+ .long 3106749947
+ .long 3266265220
+ .long 3107144703
+ .long 3266265980
+ .long 3109383615
+ .long 3266266740
+ .long 3109299629
+ .long 3266267500
+ .long 3106919521
+ .long 3266268252
+ .long 3106463913
+ .long 3266268996
+ .long 3107958670
+ .long 3266269740
+ .long 3107234917
+ .long 3266270476
+ .long 3108511954
+ .long 3266271212
+ .long 3107620056
+ .long 3266271940
+ .long 3108777693
+ .long 3266272668
+ .long 3107814325
+ .long 3266273388
+ .long 3108947630
+ .long 3266274108
+ .long 3108006290
+ .long 3266274820
+ .long 3109207222
+ .long 3266275532
+ .long 3108378366
+ .long 3266276236
+ .long 3109735912
+ .long 3266276940
+ .long 3109107087
+ .long 3266277644
+ .long 3106513079
+ .long 3266278340
+ .long 3106169044
+ .long 3266279028
+ .long 3108095503
+ .long 3266279716
+ .long 3108118349
+ .long 3266280404
+ .long 3106257463
+ .long 3266281084
+ .long 3106726720
+ .long 3266281756
+ .long 3109545389
+ .long 3266282436
+ .long 3106343833
+ .long 3266283100
+ .long 3109723642
+ .long 3266283772
+ .long 3107120300
+ .long 3266284436
+ .long 3106940529
+ .long 3266285092
+ .long 3109202170
+ .long 3266285748
+ .long 3109728494
+ .long 3266286404
+ .long 3108536808
+ .long 3266287052
+ .long 3109838471
+ .long 3266287700
+ .long 3109455977
+ .long 3266288348
+ .long 3107405879
+ .long 3266288988
+ .long 3107898790
+ .long 3266289628
+ .long 3106756477
+ .long 3266290260
+ .long 3108189081
+ .long 3266290892
+ .long 3108017907
+ .long 3266291524
+ .long 3106258339
+ .long 3266292148
+ .long 3107119845
+ .long 3266292772
+ .long 3106423069
+ .long 3266293388
+ .long 3108377050
+ .long 3266294004
+ .long 3108802011
+ .long 3266294620
+ .long 3107712277
+ .long 3266295228
+ .long 3109316274
+ .long 3266295836
+ .long 3109433625
+ .long 3266296444
+ .long 3108078064
+ .long 3266297044
+ .long 3109457438
+ .long 3266297644
+ .long 3109390801
+ .long 3266298244
+ .long 3107891329
+ .long 3266298836
+ .long 3109166323
+ .long 3266299428
+ .long 3109034299
+ .long 3266300020
+ .long 3107507904
+ .long 3266300604
+ .long 3108793919
+ .long 3266301188
+ .long 3108710352
+ .long 3266301772
+ .long 3107269350
+ .long 3266302348
+ .long 3108677203
+ .long 3266302924
+ .long 3108751436
+ .long 3266303500
+ .long 3107503720
+ .long 3266304068
+ .long 3109139881
+ .long 3266304636
+ .long 3109476985
+ .long 3266305204
+ .long 3108526254
+ .long 3266305772
+ .long 3106298768
+ .long 3266306332
+ .long 3106999765
+ .long 3266306892
+ .long 3106445739
+ .long 3266307444
+ .long 3108841650
+ .long 3266308004
+ .long 3105809415
+ .long 3266308548
+ .long 3109942336
+ .long 3266309100
+ .long 3108667760
+ .long 3266309652
+ .long 3106190122
+ .long 3266310196
+ .long 3106713732
+ .long 3266310740
+ .long 3106054165
+ .long 3266311276
+ .long 3108415484
+ .long 3266311812
+ .long 3109613023
+ .long 3266312348
+ .long 3109656301
+ .long 3266312884
+ .long 3108554723
+ .long 3266313420
+ .long 3106317576
+ .long 3266313948
+ .long 3107148341
+ .long 3266314476
+ .long 3106861780
+ .long 3266314996
+ .long 3109661153
+ .long 3266315524
+ .long 3107166702
+ .long 3266316044
+ .long 3107775778
+ .long 3266316564
+ .long 3107302717
+ .long 3266317076
+ .long 3109950361
+ .long 3266317596
+ .long 3107338539
+ .long 3266318108
+ .long 3107864196
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 964689920
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2063597568
+ .long 2063597568
+ .long 2063597568
+ .long 2063597568
+ .long 2063597568
+ .long 2063597568
+ .long 2063597568
+ .long 2063597568
+ .long 2063597568
+ .long 2063597568
+ .long 2063597568
+ .long 2063597568
+ .long 2063597568
+ .long 2063597568
+ .long 2063597568
+ .long 2063597568
+ .long 1051372345
+ .long 1051372345
+ .long 1051372345
+ .long 1051372345
+ .long 1051372345
+ .long 1051372345
+ .long 1051372345
+ .long 1051372345
+ .long 1051372345
+ .long 1051372345
+ .long 1051372345
+ .long 1051372345
+ .long 1051372345
+ .long 1051372345
+ .long 1051372345
+ .long 1051372345
+ .long 3204448310
+ .long 3204448310
+ .long 3204448310
+ .long 3204448310
+ .long 3204448310
+ .long 3204448310
+ .long 3204448310
+ .long 3204448310
+ .long 3204448310
+ .long 3204448310
+ .long 3204448310
+ .long 3204448310
+ .long 3204448310
+ .long 3204448310
+ .long 3204448310
+ .long 3204448310
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 998244352
+ .long 998244352
+ .long 998244352
+ .long 998244352
+ .long 998244352
+ .long 998244352
+ .long 998244352
+ .long 998244352
+ .long 998244352
+ .long 998244352
+ .long 998244352
+ .long 998244352
+ .long 998244352
+ .long 998244352
+ .long 998244352
+ .long 998244352
+ .long 3212836863
+ .long 3212836863
+ .long 3212836863
+ .long 3212836863
+ .long 3212836863
+ .long 3212836863
+ .long 3212836863
+ .long 3212836863
+ .long 3212836863
+ .long 3212836863
+ .long 3212836863
+ .long 3212836863
+ .long 3212836863
+ .long 3212836863
+ .long 3212836863
+ .long 3212836863
+ .long 2055208960
+ .long 2055208960
+ .long 2055208960
+ .long 2055208960
+ .long 2055208960
+ .long 2055208960
+ .long 2055208960
+ .long 2055208960
+ .long 2055208960
+ .long 2055208960
+ .long 2055208960
+ .long 2055208960
+ .long 2055208960
+ .long 2055208960
+ .long 2055208960
+ .long 2055208960
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 4294967040
+ .long 1060205056
+ .long 1060205056
+ .long 1060205056
+ .long 1060205056
+ .long 1060205056
+ .long 1060205056
+ .long 1060205056
+ .long 1060205056
+ .long 1060205056
+ .long 1060205056
+ .long 1060205056
+ .long 1060205056
+ .long 1060205056
+ .long 1060205056
+ .long 1060205056
+ .long 1060205056
+ .long 901758464
+ .long 901758464
+ .long 901758464
+ .long 901758464
+ .long 901758464
+ .long 901758464
+ .long 901758464
+ .long 901758464
+ .long 901758464
+ .long 901758464
+ .long 901758464
+ .long 901758464
+ .long 901758464
+ .long 901758464
+ .long 901758464
+ .long 901758464
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 1051372180
+ .long 1051372180
+ .long 1051372180
+ .long 1051372180
+ .long 1051372180
+ .long 1051372180
+ .long 1051372180
+ .long 1051372180
+ .long 1051372180
+ .long 1051372180
+ .long 1051372180
+ .long 1051372180
+ .long 1051372180
+ .long 1051372180
+ .long 1051372180
+ .long 1051372180
+ .long 3196061070
+ .long 3196061070
+ .long 3196061070
+ .long 3196061070
+ .long 3196061070
+ .long 3196061070
+ .long 3196061070
+ .long 3196061070
+ .long 3196061070
+ .long 3196061070
+ .long 3196061070
+ .long 3196061070
+ .long 3196061070
+ .long 3196061070
+ .long 3196061070
+ .long 3196061070
+ .long 1045225872
+ .long 1045225872
+ .long 1045225872
+ .long 1045225872
+ .long 1045225872
+ .long 1045225872
+ .long 1045225872
+ .long 1045225872
+ .long 1045225872
+ .long 1045225872
+ .long 1045225872
+ .long 1045225872
+ .long 1045225872
+ .long 1045225872
+ .long 1045225872
+ .long 1045225872
+ .long 3190336823
+ .long 3190336823
+ .long 3190336823
+ .long 3190336823
+ .long 3190336823
+ .long 3190336823
+ .long 3190336823
+ .long 3190336823
+ .long 3190336823
+ .long 3190336823
+ .long 3190336823
+ .long 3190336823
+ .long 3190336823
+ .long 3190336823
+ .long 3190336823
+ .long 3190336823
+ .long 1041222418
+ .long 1041222418
+ .long 1041222418
+ .long 1041222418
+ .long 1041222418
+ .long 1041222418
+ .long 1041222418
+ .long 1041222418
+ .long 1041222418
+ .long 1041222418
+ .long 1041222418
+ .long 1041222418
+ .long 1041222418
+ .long 1041222418
+ .long 1041222418
+ .long 1041222418
+ .long 3189430755
+ .long 3189430755
+ .long 3189430755
+ .long 3189430755
+ .long 3189430755
+ .long 3189430755
+ .long 3189430755
+ .long 3189430755
+ .long 3189430755
+ .long 3189430755
+ .long 3189430755
+ .long 3189430755
+ .long 3189430755
+ .long 3189430755
+ .long 3189430755
+ .long 3189430755
+ .long 1041073389
+ .long 1041073389
+ .long 1041073389
+ .long 1041073389
+ .long 1041073389
+ .long 1041073389
+ .long 1041073389
+ .long 1041073389
+ .long 1041073389
+ .long 1041073389
+ .long 1041073389
+ .long 1041073389
+ .long 1041073389
+ .long 1041073389
+ .long 1041073389
+ .long 1041073389
+ .long 16777216
+ .long 16777216
+ .long 16777216
+ .long 16777216
+ .long 16777216
+ .long 16777216
+ .long 16777216
+ .long 16777216
+ .long 16777216
+ .long 16777216
+ .long 16777216
+ .long 16777216
+ .long 16777216
+ .long 16777216
+ .long 16777216
+ .long 16777216
+ .long 25165824
+ .long 25165824
+ .long 25165824
+ .long 25165824
+ .long 25165824
+ .long 25165824
+ .long 25165824
+ .long 25165824
+ .long 25165824
+ .long 25165824
+ .long 25165824
+ .long 25165824
+ .long 25165824
+ .long 25165824
+ .long 25165824
+ .long 25165824
+ .long 1059760811
+ .long 1059760811
+ .long 1059760811
+ .long 1059760811
+ .long 1059760811
+ .long 1059760811
+ .long 1059760811
+ .long 1059760811
+ .long 1059760811
+ .long 1059760811
+ .long 1059760811
+ .long 1059760811
+ .long 1059760811
+ .long 1059760811
+ .long 1059760811
+ .long 1059760811
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 8388607
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 2139095040
+ .long 4286578688
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .long 1065353216
+ .long 3212836864
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .long 0
+ .long 2147483648
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .type __svml_slog1p_data_internal,@object
+ .size __svml_slog1p_data_internal,3072
+ .align 32
+__slog1p_la_CoutTab:
+ .long 1065353216
+ .long 0
+ .long 0
+ .long 1065091072
+ .long 1015087104
+ .long 900509991
+ .long 1064828928
+ .long 1023541248
+ .long 925811956
+ .long 1064566784
+ .long 1027915776
+ .long 3084221144
+ .long 1064304640
+ .long 1032073216
+ .long 3066991812
+ .long 1064173568
+ .long 1033195520
+ .long 882149603
+ .long 1063911424
+ .long 1035468800
+ .long 928189163
+ .long 1063649280
+ .long 1037783040
+ .long 927501741
+ .long 1063518208
+ .long 1038958592
+ .long 3076037756
+ .long 1063256064
+ .long 1040759808
+ .long 904405630
+ .long 1063124992
+ .long 1041361920
+ .long 3052231524
+ .long 1062862848
+ .long 1042581504
+ .long 922094799
+ .long 1062731776
+ .long 1043201024
+ .long 3070120623
+ .long 1062469632
+ .long 1044455424
+ .long 3069864633
+ .long 1062338560
+ .long 1045091328
+ .long 3063188516
+ .long 1062207488
+ .long 1045733376
+ .long 3054902185
+ .long 1061945344
+ .long 1047035904
+ .long 920635797
+ .long 1061814272
+ .long 1047697408
+ .long 904920689
+ .long 1061683200
+ .long 1048365056
+ .long 912483742
+ .long 1061552128
+ .long 1048807936
+ .long 3052664405
+ .long 1061421056
+ .long 1049148416
+ .long 912794238
+ .long 1061158912
+ .long 1049840384
+ .long 889474359
+ .long 1061027840
+ .long 1050191872
+ .long 3059868362
+ .long 1060896768
+ .long 1050546944
+ .long 3059256525
+ .long 1060765696
+ .long 1050905600
+ .long 912008988
+ .long 1060634624
+ .long 1051268352
+ .long 912290698
+ .long 1060503552
+ .long 1051635200
+ .long 3037211048
+ .long 1060372480
+ .long 1052005888
+ .long 906226119
+ .long 1060241408
+ .long 1052380928
+ .long 3052480305
+ .long 1060110336
+ .long 1052760064
+ .long 3048768765
+ .long 1059979264
+ .long 1053143552
+ .long 3049975450
+ .long 1059848192
+ .long 1053531392
+ .long 894485718
+ .long 1059717120
+ .long 1053923840
+ .long 897598623
+ .long 1059586048
+ .long 1054320896
+ .long 907355277
+ .long 1059586048
+ .long 1054320896
+ .long 907355277
+ .long 1059454976
+ .long 1054722816
+ .long 881705073
+ .long 1059323904
+ .long 1055129600
+ .long 3049723733
+ .long 1059192832
+ .long 1055541248
+ .long 890353599
+ .long 1059061760
+ .long 1055958016
+ .long 908173938
+ .long 1059061760
+ .long 1055958016
+ .long 908173938
+ .long 1058930688
+ .long 1056380160
+ .long 883644938
+ .long 1058799616
+ .long 1056807680
+ .long 3052015799
+ .long 1058668544
+ .long 1057102592
+ .long 884897284
+ .long 1058668544
+ .long 1057102592
+ .long 884897284
+ .long 1058537472
+ .long 1057321920
+ .long 3037632470
+ .long 1058406400
+ .long 1057544128
+ .long 865017195
+ .long 1058275328
+ .long 1057769344
+ .long 3042936546
+ .long 1058275328
+ .long 1057769344
+ .long 3042936546
+ .long 1058144256
+ .long 1057997568
+ .long 903344518
+ .long 1058013184
+ .long 1058228992
+ .long 897862967
+ .long 1058013184
+ .long 1058228992
+ .long 897862967
+ .long 1057882112
+ .long 1058463680
+ .long 3047822280
+ .long 1057882112
+ .long 1058463680
+ .long 3047822280
+ .long 1057751040
+ .long 1058701632
+ .long 883793293
+ .long 1057619968
+ .long 1058943040
+ .long 851667963
+ .long 1057619968
+ .long 1058943040
+ .long 851667963
+ .long 1057488896
+ .long 1059187968
+ .long 3000004036
+ .long 1057488896
+ .long 1059187968
+ .long 3000004036
+ .long 1057357824
+ .long 1059436544
+ .long 3047430717
+ .long 1057357824
+ .long 1059436544
+ .long 3047430717
+ .long 1057226752
+ .long 1059688832
+ .long 3043802308
+ .long 1057226752
+ .long 1059688832
+ .long 3043802308
+ .long 1057095680
+ .long 1059944960
+ .long 876113044
+ .long 1057095680
+ .long 1059944960
+ .long 876113044
+ .long 1056964608
+ .long 1060205056
+ .long 901758606
+ .long 1060205056
+ .long 901758606
+ .long 1207959616
+ .long 1174405120
+ .long 1008730112
+ .long 1400897536
+ .long 0
+ .long 1065353216
+ .long 3204448256
+ .long 1051372203
+ .long 3196059648
+ .long 1045220557
+ .long 3190467243
+ .long 1041387009
+ .long 3187672480
+ .type __slog1p_la_CoutTab,@object
+ .size __slog1p_la_CoutTab,840
+ .align 4
+.L_2il0floatpacket.75:
+ .long 0x53800000
+ .type .L_2il0floatpacket.75,@object
+ .size .L_2il0floatpacket.75,4
+ .align 4
+.L_2il0floatpacket.76:
+ .long 0x3c200000
+ .type .L_2il0floatpacket.76,@object
+ .size .L_2il0floatpacket.76,4
+ .align 4
+.L_2il0floatpacket.77:
+ .long 0xbf000000
+ .type .L_2il0floatpacket.77,@object
+ .size .L_2il0floatpacket.77,4
+ .align 4
+.L_2il0floatpacket.78:
+ .long 0x3eaaaaab
+ .type .L_2il0floatpacket.78,@object
+ .size .L_2il0floatpacket.78,4
+ .align 4
+.L_2il0floatpacket.79:
+ .long 0xbe800000
+ .type .L_2il0floatpacket.79,@object
+ .size .L_2il0floatpacket.79,4
+ .align 4
+.L_2il0floatpacket.80:
+ .long 0x3e4ccccd
+ .type .L_2il0floatpacket.80,@object
+ .size .L_2il0floatpacket.80,4
+ .align 4
+.L_2il0floatpacket.81:
+ .long 0xbe2aaaab
+ .type .L_2il0floatpacket.81,@object
+ .size .L_2il0floatpacket.81,4
+ .align 4
+.L_2il0floatpacket.82:
+ .long 0x3e124e01
+ .type .L_2il0floatpacket.82,@object
+ .size .L_2il0floatpacket.82,4
+ .align 4
+.L_2il0floatpacket.83:
+ .long 0xbe0005a0
+ .type .L_2il0floatpacket.83,@object
+ .size .L_2il0floatpacket.83,4
+ .align 4
+.L_2il0floatpacket.84:
+ .long 0xbf800000
+ .type .L_2il0floatpacket.84,@object
+ .size .L_2il0floatpacket.84,4
+ .align 4
+.L_2il0floatpacket.85:
+ .long 0x3f317218
+ .type .L_2il0floatpacket.85,@object
+ .size .L_2il0floatpacket.85,4
+ .align 4
+.L_2il0floatpacket.86:
+ .long 0x3f317200
+ .type .L_2il0floatpacket.86,@object
+ .size .L_2il0floatpacket.86,4
+ .align 4
+.L_2il0floatpacket.87:
+ .long 0x35bfbe8e
+ .type .L_2il0floatpacket.87,@object
+ .size .L_2il0floatpacket.87,4
+ .align 4
+.L_2il0floatpacket.88:
+ .long 0x48000040
+ .type .L_2il0floatpacket.88,@object
+ .size .L_2il0floatpacket.88,4
+ .align 4
+.L_2il0floatpacket.89:
+ .long 0x46000000
+ .type .L_2il0floatpacket.89,@object
+ .size .L_2il0floatpacket.89,4
+ .align 4
+.L_2il0floatpacket.90:
+ .long 0x3f800000
+ .type .L_2il0floatpacket.90,@object
+ .size .L_2il0floatpacket.90,4
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * * log2(x) = VGETEXP(x) + log2(VGETMANT(x))
+ * * VGETEXP, VGETMANT will correctly treat special cases too (including denormals)
+ * * mx = VGETMANT(x) is in [1,2) for all x>=0
+ * * log2(mx) = -log2(RCP(mx)) + log2(1 +(mx*RCP(mx)-1))
+ * * RCP(mx) is rounded to 4 fractional bits,
+ * * and the table lookup for log(RCP(mx)) is based on a small permute instruction
+ * *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_log28_z0_0:
+
+ .align 16,0x90
+ .globl __svml_log28
+
+__svml_log28:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovaps %zmm0, %zmm7
+
+/* GetMant(x), normalized to [1,2) for x>=0, NaN for x<0 */
+ vgetmantpd $8, {sae}, %zmm7, %zmm6
+ vmovups 128+__svml_dlog2_data_internal_avx512(%rip), %zmm2
+ vmovups 512+__svml_dlog2_data_internal_avx512(%rip), %zmm12
+ vmovups 640+__svml_dlog2_data_internal_avx512(%rip), %zmm13
+
+/* Start polynomial evaluation */
+ vmovups 256+__svml_dlog2_data_internal_avx512(%rip), %zmm10
+ vmovups 320+__svml_dlog2_data_internal_avx512(%rip), %zmm0
+ vmovups 384+__svml_dlog2_data_internal_avx512(%rip), %zmm11
+ vmovups 448+__svml_dlog2_data_internal_avx512(%rip), %zmm14
+
+/* Prepare exponent correction: DblRcp<0.75? */
+ vmovups 192+__svml_dlog2_data_internal_avx512(%rip), %zmm1
+
+/* Table lookup */
+ vmovups __svml_dlog2_data_internal_avx512(%rip), %zmm4
+
+/* GetExp(x) */
+ vgetexppd {sae}, %zmm7, %zmm5
+
+/* DblRcp ~ 1/Mantissa */
+ vrcp14pd %zmm6, %zmm8
+
+/* x<=0? */
+ vfpclasspd $94, %zmm7, %k0
+
+/* round DblRcp to 4 fractional bits (RN mode, no Precision exception) */
+ vrndscalepd $88, {sae}, %zmm8, %zmm3
+ vmovups 576+__svml_dlog2_data_internal_avx512(%rip), %zmm8
+ kmovw %k0, %edx
+
+/* Reduced argument: R = DblRcp*Mantissa - 1 */
+ vfmsub213pd {rn-sae}, %zmm2, %zmm3, %zmm6
+ vcmppd $17, {sae}, %zmm1, %zmm3, %k1
+ vfmadd231pd {rn-sae}, %zmm6, %zmm12, %zmm8
+ vmovups 704+__svml_dlog2_data_internal_avx512(%rip), %zmm12
+ vfmadd231pd {rn-sae}, %zmm6, %zmm10, %zmm0
+ vfmadd231pd {rn-sae}, %zmm6, %zmm11, %zmm14
+ vmovups 768+__svml_dlog2_data_internal_avx512(%rip), %zmm1
+
+/* R^2 */
+ vmulpd {rn-sae}, %zmm6, %zmm6, %zmm15
+ vfmadd231pd {rn-sae}, %zmm6, %zmm13, %zmm12
+
+/* Prepare table index */
+ vpsrlq $48, %zmm3, %zmm9
+
+/* add 1 to Expon if DblRcp<0.75 */
+ vaddpd {rn-sae}, %zmm2, %zmm5, %zmm5{%k1}
+ vmulpd {rn-sae}, %zmm15, %zmm15, %zmm13
+ vfmadd213pd {rn-sae}, %zmm14, %zmm15, %zmm0
+ vfmadd213pd {rn-sae}, %zmm12, %zmm15, %zmm8
+ vpermt2pd 64+__svml_dlog2_data_internal_avx512(%rip), %zmm9, %zmm4
+
+/* polynomial */
+ vfmadd213pd {rn-sae}, %zmm8, %zmm13, %zmm0
+ vfmadd213pd {rn-sae}, %zmm1, %zmm6, %zmm0
+ vfmadd213pd {rn-sae}, %zmm4, %zmm0, %zmm6
+ vaddpd {rn-sae}, %zmm6, %zmm5, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm7, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dlog2_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_log28,@function
+ .size __svml_log28,.-__svml_log28
+..LN__svml_log28.0:
+
+.L_2__routine_start___svml_dlog2_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dlog2_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ movq $0, -64(%rsp)
+ movsd -64(%rsp), %xmm0
+ movsd (%rdi), %xmm1
+ movups _zeros.402.0.0.1(%rip), %xmm2
+ subsd %xmm0, %xmm1
+ movsd %xmm1, -8(%rsp)
+ movups %xmm2, -56(%rsp)
+
+
+ movups _ones.402.0.0.1(%rip), %xmm0
+ movups %xmm0, -40(%rsp)
+
+
+ movups _infs.402.0.0.1(%rip), %xmm0
+ movups %xmm0, -24(%rsp)
+
+
+ movl -4(%rsp), %eax
+ cmpl $2146435072, %eax
+ jae .LBL_2_19
+
+
+ lea -1072660480(%rax), %edx
+ cmpl $53248, %edx
+ jae .LBL_2_14
+
+
+ lea -1072693232(%rax), %edx
+ cmpl $24, %edx
+ jae .LBL_2_13
+
+
+ movl -8(%rsp), %edi
+ movl %eax, %ecx
+ movl %edi, %edx
+ shll $11, %ecx
+ shrl $21, %edx
+ orl %edx, %ecx
+ addl $-2147483646, %ecx
+ cmpl $3, %ecx
+ jae .LBL_2_12
+
+
+ addl $-1072693248, %eax
+ orl %edi, %eax
+ jne .LBL_2_10
+
+
+ movq -56(%rsp), %rax
+ movq %rax, (%rsi)
+ jmp .LBL_2_11
+
+.LBL_2_10:
+
+ movsd -8(%rsp), %xmm0
+ movsd 16+__dlog2_la__Q3(%rip), %xmm2
+ movsd 24+__dlog2_la__Q3(%rip), %xmm1
+ addsd -32(%rsp), %xmm0
+ mulsd %xmm0, %xmm2
+ mulsd %xmm0, %xmm1
+ addsd 8+__dlog2_la__Q3(%rip), %xmm2
+ mulsd %xmm0, %xmm2
+ movsd %xmm0, -8(%rsp)
+ addsd __dlog2_la__Q3(%rip), %xmm2
+ mulsd %xmm0, %xmm2
+ addsd %xmm1, %xmm2
+ movsd %xmm2, (%rsi)
+
+.LBL_2_11:
+
+ xorl %eax, %eax
+ ret
+
+.LBL_2_12:
+
+ movsd -8(%rsp), %xmm2
+ xorl %eax, %eax
+ movsd 16+__dlog2_la__Q2(%rip), %xmm1
+ movsd 24+__dlog2_la__Q2(%rip), %xmm3
+ addsd -32(%rsp), %xmm2
+ movaps %xmm2, %xmm0
+ mulsd %xmm2, %xmm0
+ mulsd %xmm0, %xmm1
+ mulsd %xmm0, %xmm3
+ addsd __dlog2_la__Q2(%rip), %xmm1
+ addsd 8+__dlog2_la__Q2(%rip), %xmm3
+ mulsd %xmm2, %xmm1
+ mulsd %xmm0, %xmm3
+ movsd %xmm2, -8(%rsp)
+ addsd %xmm1, %xmm3
+ movl $0, -8(%rsp)
+ movsd -8(%rsp), %xmm4
+ subsd %xmm4, %xmm2
+ addsd %xmm2, %xmm4
+ mulsd 32+__dlog2_la__Q2(%rip), %xmm4
+ addsd %xmm3, %xmm4
+ movsd %xmm4, (%rsi)
+ ret
+
+.LBL_2_13:
+
+ movsd -8(%rsp), %xmm2
+ xorl %eax, %eax
+ movsd 72+__dlog2_la__Q1(%rip), %xmm10
+ movsd 64+__dlog2_la__Q1(%rip), %xmm4
+ movsd __dlog2_la__TWO_32P(%rip), %xmm5
+ movsd __dlog2_la__TWO_32P(%rip), %xmm7
+ movsd 88+__dlog2_la__Q1(%rip), %xmm14
+ movsd __dlog2_la__TWO_32P(%rip), %xmm11
+ movsd __dlog2_la__TWO_32P(%rip), %xmm15
+ addsd -32(%rsp), %xmm2
+ movaps %xmm2, %xmm3
+ movaps %xmm2, %xmm6
+ mulsd %xmm2, %xmm3
+ movaps %xmm2, %xmm0
+ mulsd %xmm2, %xmm5
+ mulsd __dlog2_la__TWO_32(%rip), %xmm6
+ mulsd %xmm3, %xmm10
+ mulsd %xmm3, %xmm4
+ addsd 56+__dlog2_la__Q1(%rip), %xmm10
+ addsd 48+__dlog2_la__Q1(%rip), %xmm4
+ mulsd %xmm3, %xmm10
+ mulsd %xmm3, %xmm4
+ addsd 40+__dlog2_la__Q1(%rip), %xmm10
+ addsd 32+__dlog2_la__Q1(%rip), %xmm4
+ mulsd %xmm3, %xmm10
+ mulsd %xmm3, %xmm4
+ addsd 24+__dlog2_la__Q1(%rip), %xmm10
+ addsd 16+__dlog2_la__Q1(%rip), %xmm4
+ mulsd %xmm3, %xmm10
+ mulsd %xmm2, %xmm4
+ movsd __dlog2_la__TWO_32(%rip), %xmm3
+ addsd %xmm4, %xmm10
+ mulsd %xmm10, %xmm7
+ movaps %xmm3, %xmm8
+ mulsd %xmm10, %xmm8
+ movsd %xmm5, -72(%rsp)
+ movsd -72(%rsp), %xmm1
+ movsd %xmm7, -72(%rsp)
+ subsd %xmm6, %xmm1
+ movsd -72(%rsp), %xmm9
+ subsd %xmm1, %xmm0
+ subsd %xmm8, %xmm9
+ movsd %xmm1, -8(%rsp)
+ subsd %xmm9, %xmm10
+ addsd %xmm9, %xmm14
+ addsd 8+__dlog2_la__Q1(%rip), %xmm10
+ movaps %xmm14, %xmm4
+ mulsd %xmm0, %xmm4
+ mulsd %xmm2, %xmm10
+ mulsd %xmm1, %xmm14
+ addsd %xmm0, %xmm1
+ addsd %xmm10, %xmm4
+ movaps %xmm4, %xmm12
+ movsd 80+__dlog2_la__Q1(%rip), %xmm9
+ addsd %xmm14, %xmm12
+ mulsd %xmm12, %xmm11
+ mulsd %xmm3, %xmm12
+ movsd %xmm11, -72(%rsp)
+ movsd -72(%rsp), %xmm13
+ subsd %xmm12, %xmm13
+ subsd %xmm13, %xmm4
+ addsd %xmm13, %xmm9
+ addsd %xmm14, %xmm4
+ movaps %xmm9, %xmm13
+ addsd __dlog2_la__Q1(%rip), %xmm4
+ addsd %xmm4, %xmm13
+ mulsd %xmm13, %xmm15
+ mulsd %xmm3, %xmm13
+ movsd %xmm15, -72(%rsp)
+ movsd -72(%rsp), %xmm14
+ subsd %xmm13, %xmm14
+ mulsd %xmm14, %xmm1
+ subsd %xmm14, %xmm9
+ addsd %xmm9, %xmm4
+ mulsd %xmm2, %xmm4
+ addsd %xmm4, %xmm1
+ movsd %xmm1, (%rsi)
+ ret
+
+.LBL_2_14:
+
+ movl %eax, %ecx
+ movl %eax, %edx
+ shrl $20, %ecx
+ andl $1048575, %edx
+ addl $-1023, %ecx
+ cmpl $1048576, %eax
+ jae .LBL_2_18
+
+
+ movl %edx, -4(%rsp)
+ movl -8(%rsp), %edx
+ orl %edx, %eax
+ jne .LBL_2_17
+
+
+ movsd -32(%rsp), %xmm0
+ movl $2, %eax
+ divsd -56(%rsp), %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_17:
+
+ movsd -8(%rsp), %xmm0
+ mulsd __dlog2_la__TWO_55(%rip), %xmm0
+ movsd %xmm0, -8(%rsp)
+ movl -4(%rsp), %edx
+ movl %edx, %ecx
+ shrl $20, %ecx
+ movl %edx, %eax
+ addl $-1078, %ecx
+
+.LBL_2_18:
+
+ shrl $12, %eax
+ orl $1072693248, %edx
+ movzbl %al, %edi
+ pxor %xmm7, %xmm7
+ movl %edx, -4(%rsp)
+ lea __dlog2_la___libm_rcp_table_256(%rip), %rdx
+ movsd -8(%rsp), %xmm10
+ pxor %xmm8, %xmm8
+ movl $0, -8(%rsp)
+ lea __dlog2_la___libm_log2_table_256(%rip), %rax
+ movsd -8(%rsp), %xmm0
+ cvtss2sd (%rdx,%rdi,4), %xmm7
+ cvtsi2sd %ecx, %xmm8
+ subsd %xmm0, %xmm10
+ mulsd %xmm7, %xmm10
+ mulsd %xmm0, %xmm7
+ movsd 40+__dlog2_la__P(%rip), %xmm4
+ movsd 32+__dlog2_la__P(%rip), %xmm3
+ movsd 48+__dlog2_la__P(%rip), %xmm5
+ movsd __dlog2_la__TWO_32(%rip), %xmm6
+ shlq $4, %rdi
+ addsd -32(%rsp), %xmm7
+ movaps %xmm7, %xmm2
+ mulsd %xmm5, %xmm7
+ addsd %xmm10, %xmm2
+ mulsd %xmm5, %xmm10
+ addsd %xmm7, %xmm6
+ movaps %xmm2, %xmm1
+ mulsd %xmm2, %xmm1
+ mulsd %xmm1, %xmm4
+ mulsd %xmm1, %xmm3
+ addsd 24+__dlog2_la__P(%rip), %xmm4
+ addsd 16+__dlog2_la__P(%rip), %xmm3
+ mulsd %xmm1, %xmm4
+ mulsd %xmm1, %xmm3
+ addsd 8+__dlog2_la__P(%rip), %xmm4
+ addsd __dlog2_la__P(%rip), %xmm3
+ mulsd %xmm1, %xmm4
+ mulsd %xmm2, %xmm3
+ movsd %xmm6, -72(%rsp)
+ addsd %xmm3, %xmm4
+ addsd 8(%rax,%rdi), %xmm8
+ addsd %xmm4, %xmm10
+ movsd -72(%rsp), %xmm9
+ subsd __dlog2_la__TWO_32(%rip), %xmm9
+ subsd %xmm9, %xmm7
+ addsd %xmm8, %xmm9
+ addsd (%rax,%rdi), %xmm7
+ movsd %xmm9, -8(%rsp)
+ xorl %eax, %eax
+ addsd %xmm7, %xmm10
+ addsd %xmm9, %xmm10
+ movsd %xmm10, (%rsi)
+ ret
+
+.LBL_2_19:
+
+ movl %eax, %edx
+ andl $2147483647, %edx
+ cmpl $2146435072, %edx
+ ja .LBL_2_28
+
+
+ jne .LBL_2_22
+
+
+ cmpl $0, -8(%rsp)
+ jne .LBL_2_28
+
+.LBL_2_22:
+
+ testl $-2147483648, %eax
+ je .LBL_2_27
+
+
+ movl -8(%rsp), %eax
+ orl %eax, %edx
+ movsd -56(%rsp), %xmm1
+ jne .LBL_2_25
+
+
+ movsd -32(%rsp), %xmm0
+ movl $2, %eax
+ divsd %xmm1, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_25:
+
+ movsd -24(%rsp), %xmm0
+ movl $1, %eax
+ mulsd %xmm1, %xmm0
+ movsd %xmm0, (%rsi)
+
+
+ ret
+
+.LBL_2_27:
+
+ movq -8(%rsp), %rax
+ movq %rax, (%rsi)
+ xorl %eax, %eax
+ ret
+
+.LBL_2_28:
+
+ movsd -8(%rsp), %xmm0
+ xorl %eax, %eax
+ mulsd -40(%rsp), %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dlog2_cout_rare_internal,@function
+ .size __svml_dlog2_cout_rare_internal,.-__svml_dlog2_cout_rare_internal
+..LN__svml_dlog2_cout_rare_internal.1:
+ .section .rodata, "a"
+ .align 64
+ .align 16
+_zeros.402.0.0.1:
+ .long 0
+ .long 0
+ .long 0
+ .long 2147483648
+ .align 16
+_ones.402.0.0.1:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 3220176896
+ .align 16
+_infs.402.0.0.1:
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 4293918720
+
+ .section .rodata, "a"
+ .space 16, 0x00
+ .align 64
+__svml_dlog2_data_internal_avx512:
+ .long 0
+ .long 0
+ .long 4207481622
+ .long 3216401398
+ .long 972805768
+ .long 3217408026
+ .long 3103942666
+ .long 3218062358
+ .long 1271733131
+ .long 3218381432
+ .long 2300516105
+ .long 3218676666
+ .long 3761433103
+ .long 3218958163
+ .long 14039718
+ .long 3219177733
+ .long 1904282206
+ .long 1071288313
+ .long 1751501034
+ .long 1071041295
+ .long 3815829096
+ .long 1070803966
+ .long 2835758645
+ .long 1070555096
+ .long 180337970
+ .long 1070114968
+ .long 3266000023
+ .long 1069690285
+ .long 2530196300
+ .long 1069012484
+ .long 3386464469
+ .long 1067938708
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 3658358034
+ .long 1069846603
+ .long 3658358034
+ .long 1069846603
+ .long 3658358034
+ .long 1069846603
+ .long 3658358034
+ .long 1069846603
+ .long 3658358034
+ .long 1069846603
+ .long 3658358034
+ .long 1069846603
+ .long 3658358034
+ .long 1069846603
+ .long 3658358034
+ .long 1069846603
+ .long 1307270350
+ .long 3217498040
+ .long 1307270350
+ .long 3217498040
+ .long 1307270350
+ .long 3217498040
+ .long 1307270350
+ .long 3217498040
+ .long 1307270350
+ .long 3217498040
+ .long 1307270350
+ .long 3217498040
+ .long 1307270350
+ .long 3217498040
+ .long 1307270350
+ .long 3217498040
+ .long 1367442963
+ .long 1070227827
+ .long 1367442963
+ .long 1070227827
+ .long 1367442963
+ .long 1070227827
+ .long 1367442963
+ .long 1070227827
+ .long 1367442963
+ .long 1070227827
+ .long 1367442963
+ .long 1070227827
+ .long 1367442963
+ .long 1070227827
+ .long 1367442963
+ .long 1070227827
+ .long 3840087116
+ .long 3217999623
+ .long 3840087116
+ .long 3217999623
+ .long 3840087116
+ .long 3217999623
+ .long 3840087116
+ .long 3217999623
+ .long 3840087116
+ .long 3217999623
+ .long 3840087116
+ .long 3217999623
+ .long 3840087116
+ .long 3217999623
+ .long 3840087116
+ .long 3217999623
+ .long 1360320794
+ .long 1070757740
+ .long 1360320794
+ .long 1070757740
+ .long 1360320794
+ .long 1070757740
+ .long 1360320794
+ .long 1070757740
+ .long 1360320794
+ .long 1070757740
+ .long 1360320794
+ .long 1070757740
+ .long 1360320794
+ .long 1070757740
+ .long 1360320794
+ .long 1070757740
+ .long 1698500493
+ .long 3218543943
+ .long 1698500493
+ .long 3218543943
+ .long 1698500493
+ .long 3218543943
+ .long 1698500493
+ .long 3218543943
+ .long 1698500493
+ .long 3218543943
+ .long 1698500493
+ .long 3218543943
+ .long 1698500493
+ .long 3218543943
+ .long 1698500493
+ .long 3218543943
+ .long 3694789279
+ .long 1071564553
+ .long 3694789279
+ .long 1071564553
+ .long 3694789279
+ .long 1071564553
+ .long 3694789279
+ .long 1071564553
+ .long 3694789279
+ .long 1071564553
+ .long 3694789279
+ .long 1071564553
+ .long 3694789279
+ .long 1071564553
+ .long 3694789279
+ .long 1071564553
+ .long 1697350356
+ .long 3219592519
+ .long 1697350356
+ .long 3219592519
+ .long 1697350356
+ .long 3219592519
+ .long 1697350356
+ .long 3219592519
+ .long 1697350356
+ .long 3219592519
+ .long 1697350356
+ .long 3219592519
+ .long 1697350356
+ .long 3219592519
+ .long 1697350356
+ .long 3219592519
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .type __svml_dlog2_data_internal_avx512,@object
+ .size __svml_dlog2_data_internal_avx512,1088
+ .align 64
+__dlog2_la__Q3:
+ .long 3213221364
+ .long 1050233568
+ .long 1697350398
+ .long 3219592519
+ .long 3694789629
+ .long 1071564553
+ .long 0
+ .long 1073157447
+ .type __dlog2_la__Q3,@object
+ .size __dlog2_la__Q3,32
+ .space 32, 0x00
+ .align 64
+__dlog2_la__Q2:
+ .long 3213221358
+ .long 1050233568
+ .long 1697350398
+ .long 3219592519
+ .long 3695167823
+ .long 1071564553
+ .long 1697791998
+ .long 3218543943
+ .long 0
+ .long 1073157447
+ .type __dlog2_la__Q2,@object
+ .size __dlog2_la__Q2,40
+ .space 24, 0x00
+ .align 64
+__dlog2_la__Q1:
+ .long 3213221370
+ .long 1050233568
+ .long 3213207734
+ .long 3196668640
+ .long 3694789628
+ .long 1071564553
+ .long 1697350743
+ .long 3218543943
+ .long 1357908666
+ .long 1070757740
+ .long 3685007067
+ .long 3217999625
+ .long 96832070
+ .long 1070227830
+ .long 1140452344
+ .long 3217495379
+ .long 2606274745
+ .long 1069844296
+ .long 1933654871
+ .long 3217172449
+ .long 0
+ .long 1073157447
+ .long 0
+ .long 3219592519
+ .type __dlog2_la__Q1,@object
+ .size __dlog2_la__Q1,96
+ .space 32, 0x00
+ .align 64
+__dlog2_la__TWO_32P:
+ .long 1048576
+ .long 1106247680
+ .type __dlog2_la__TWO_32P,@object
+ .size __dlog2_la__TWO_32P,8
+ .space 56, 0x00
+ .align 64
+__dlog2_la__TWO_32:
+ .long 0
+ .long 1106247680
+ .type __dlog2_la__TWO_32,@object
+ .size __dlog2_la__TWO_32,8
+ .space 56, 0x00
+ .align 64
+__dlog2_la__TWO_55:
+ .long 0
+ .long 1130364928
+ .type __dlog2_la__TWO_55,@object
+ .size __dlog2_la__TWO_55,8
+ .space 56, 0x00
+ .align 64
+__dlog2_la___libm_rcp_table_256:
+ .long 0x3f7f8000
+ .long 0x3f7e8000
+ .long 0x3f7d8000
+ .long 0x3f7c8000
+ .long 0x3f7ba000
+ .long 0x3f7aa000
+ .long 0x3f79a000
+ .long 0x3f78c000
+ .long 0x3f77c000
+ .long 0x3f76e000
+ .long 0x3f75e000
+ .long 0x3f750000
+ .long 0x3f742000
+ .long 0x3f732000
+ .long 0x3f724000
+ .long 0x3f716000
+ .long 0x3f708000
+ .long 0x3f6fa000
+ .long 0x3f6ec000
+ .long 0x3f6de000
+ .long 0x3f6d0000
+ .long 0x3f6c2000
+ .long 0x3f6b6000
+ .long 0x3f6a8000
+ .long 0x3f69a000
+ .long 0x3f68c000
+ .long 0x3f680000
+ .long 0x3f672000
+ .long 0x3f666000
+ .long 0x3f658000
+ .long 0x3f64c000
+ .long 0x3f640000
+ .long 0x3f632000
+ .long 0x3f626000
+ .long 0x3f61a000
+ .long 0x3f60e000
+ .long 0x3f600000
+ .long 0x3f5f4000
+ .long 0x3f5e8000
+ .long 0x3f5dc000
+ .long 0x3f5d0000
+ .long 0x3f5c4000
+ .long 0x3f5b8000
+ .long 0x3f5ae000
+ .long 0x3f5a2000
+ .long 0x3f596000
+ .long 0x3f58a000
+ .long 0x3f57e000
+ .long 0x3f574000
+ .long 0x3f568000
+ .long 0x3f55e000
+ .long 0x3f552000
+ .long 0x3f546000
+ .long 0x3f53c000
+ .long 0x3f532000
+ .long 0x3f526000
+ .long 0x3f51c000
+ .long 0x3f510000
+ .long 0x3f506000
+ .long 0x3f4fc000
+ .long 0x3f4f2000
+ .long 0x3f4e6000
+ .long 0x3f4dc000
+ .long 0x3f4d2000
+ .long 0x3f4c8000
+ .long 0x3f4be000
+ .long 0x3f4b4000
+ .long 0x3f4aa000
+ .long 0x3f4a0000
+ .long 0x3f496000
+ .long 0x3f48c000
+ .long 0x3f482000
+ .long 0x3f478000
+ .long 0x3f46e000
+ .long 0x3f464000
+ .long 0x3f45c000
+ .long 0x3f452000
+ .long 0x3f448000
+ .long 0x3f43e000
+ .long 0x3f436000
+ .long 0x3f42c000
+ .long 0x3f422000
+ .long 0x3f41a000
+ .long 0x3f410000
+ .long 0x3f408000
+ .long 0x3f3fe000
+ .long 0x3f3f6000
+ .long 0x3f3ec000
+ .long 0x3f3e4000
+ .long 0x3f3da000
+ .long 0x3f3d2000
+ .long 0x3f3ca000
+ .long 0x3f3c0000
+ .long 0x3f3b8000
+ .long 0x3f3b0000
+ .long 0x3f3a8000
+ .long 0x3f39e000
+ .long 0x3f396000
+ .long 0x3f38e000
+ .long 0x3f386000
+ .long 0x3f37e000
+ .long 0x3f376000
+ .long 0x3f36c000
+ .long 0x3f364000
+ .long 0x3f35c000
+ .long 0x3f354000
+ .long 0x3f34c000
+ .long 0x3f344000
+ .long 0x3f33c000
+ .long 0x3f334000
+ .long 0x3f32e000
+ .long 0x3f326000
+ .long 0x3f31e000
+ .long 0x3f316000
+ .long 0x3f30e000
+ .long 0x3f306000
+ .long 0x3f2fe000
+ .long 0x3f2f8000
+ .long 0x3f2f0000
+ .long 0x3f2e8000
+ .long 0x3f2e2000
+ .long 0x3f2da000
+ .long 0x3f2d2000
+ .long 0x3f2cc000
+ .long 0x3f2c4000
+ .long 0x3f2bc000
+ .long 0x3f2b6000
+ .long 0x3f2ae000
+ .long 0x3f2a8000
+ .long 0x3f2a0000
+ .long 0x3f29a000
+ .long 0x3f292000
+ .long 0x3f28c000
+ .long 0x3f284000
+ .long 0x3f27e000
+ .long 0x3f276000
+ .long 0x3f270000
+ .long 0x3f268000
+ .long 0x3f262000
+ .long 0x3f25c000
+ .long 0x3f254000
+ .long 0x3f24e000
+ .long 0x3f248000
+ .long 0x3f240000
+ .long 0x3f23a000
+ .long 0x3f234000
+ .long 0x3f22e000
+ .long 0x3f226000
+ .long 0x3f220000
+ .long 0x3f21a000
+ .long 0x3f214000
+ .long 0x3f20e000
+ .long 0x3f206000
+ .long 0x3f200000
+ .long 0x3f1fa000
+ .long 0x3f1f4000
+ .long 0x3f1ee000
+ .long 0x3f1e8000
+ .long 0x3f1e2000
+ .long 0x3f1dc000
+ .long 0x3f1d6000
+ .long 0x3f1d0000
+ .long 0x3f1ca000
+ .long 0x3f1c4000
+ .long 0x3f1be000
+ .long 0x3f1b8000
+ .long 0x3f1b2000
+ .long 0x3f1ac000
+ .long 0x3f1a6000
+ .long 0x3f1a0000
+ .long 0x3f19a000
+ .long 0x3f194000
+ .long 0x3f190000
+ .long 0x3f18a000
+ .long 0x3f184000
+ .long 0x3f17e000
+ .long 0x3f178000
+ .long 0x3f172000
+ .long 0x3f16e000
+ .long 0x3f168000
+ .long 0x3f162000
+ .long 0x3f15c000
+ .long 0x3f158000
+ .long 0x3f152000
+ .long 0x3f14c000
+ .long 0x3f148000
+ .long 0x3f142000
+ .long 0x3f13c000
+ .long 0x3f138000
+ .long 0x3f132000
+ .long 0x3f12c000
+ .long 0x3f128000
+ .long 0x3f122000
+ .long 0x3f11c000
+ .long 0x3f118000
+ .long 0x3f112000
+ .long 0x3f10e000
+ .long 0x3f108000
+ .long 0x3f104000
+ .long 0x3f0fe000
+ .long 0x3f0f8000
+ .long 0x3f0f4000
+ .long 0x3f0ee000
+ .long 0x3f0ea000
+ .long 0x3f0e6000
+ .long 0x3f0e0000
+ .long 0x3f0dc000
+ .long 0x3f0d6000
+ .long 0x3f0d2000
+ .long 0x3f0cc000
+ .long 0x3f0c8000
+ .long 0x3f0c2000
+ .long 0x3f0be000
+ .long 0x3f0ba000
+ .long 0x3f0b4000
+ .long 0x3f0b0000
+ .long 0x3f0ac000
+ .long 0x3f0a6000
+ .long 0x3f0a2000
+ .long 0x3f09e000
+ .long 0x3f098000
+ .long 0x3f094000
+ .long 0x3f090000
+ .long 0x3f08a000
+ .long 0x3f086000
+ .long 0x3f082000
+ .long 0x3f07e000
+ .long 0x3f078000
+ .long 0x3f074000
+ .long 0x3f070000
+ .long 0x3f06c000
+ .long 0x3f066000
+ .long 0x3f062000
+ .long 0x3f05e000
+ .long 0x3f05a000
+ .long 0x3f056000
+ .long 0x3f052000
+ .long 0x3f04c000
+ .long 0x3f048000
+ .long 0x3f044000
+ .long 0x3f040000
+ .long 0x3f03c000
+ .long 0x3f038000
+ .long 0x3f034000
+ .long 0x3f030000
+ .long 0x3f02a000
+ .long 0x3f026000
+ .long 0x3f022000
+ .long 0x3f01e000
+ .long 0x3f01a000
+ .long 0x3f016000
+ .long 0x3f012000
+ .long 0x3f00e000
+ .long 0x3f00a000
+ .long 0x3f006000
+ .long 0x3f002000
+ .type __dlog2_la___libm_rcp_table_256,@object
+ .size __dlog2_la___libm_rcp_table_256,1024
+ .align 64
+__dlog2_la___libm_log2_table_256:
+ .long 0xfb44c3b7,0x3e1485cb
+ .long 0x00000000,0x3f671b0e
+ .long 0x06028ac0,0x3e31d5d9
+ .long 0x00000000,0x3f815cfe
+ .long 0xb8d7240b,0x3df8b9cb
+ .long 0x00000000,0x3f8cfee7
+ .long 0x0d179106,0x3e38864a
+ .long 0x00000000,0x3f94564a
+ .long 0xecba1593,0x3e459c6a
+ .long 0x00000000,0x3f997723
+ .long 0x94120c14,0x3e48d36a
+ .long 0x00000000,0x3f9f5923
+ .long 0xd2571490,0x3e5410ba
+ .long 0x00000000,0x3fa2a094
+ .long 0x1dc036a2,0x3e2776b0
+ .long 0x00000000,0x3fa53894
+ .long 0x78efe2b1,0x3e537229
+ .long 0x00000000,0x3fa8324c
+ .long 0xfd29dc75,0x3e59c0fa
+ .long 0x00000000,0x3faacf54
+ .long 0x046734f7,0x3e4636b7
+ .long 0x00000000,0x3fadced9
+ .long 0xd3b410b8,0x3e6f7950
+ .long 0x00000000,0x3fb0387e
+ .long 0x00f2200a,0x3e19d1e7
+ .long 0x00000000,0x3fb18ac6
+ .long 0x8661ba82,0x3e4f09a9
+ .long 0x00000000,0x3fb30edd
+ .long 0x9367107c,0x3e564d91
+ .long 0x00000000,0x3fb463c1
+ .long 0x0e4a4ce8,0x3e4e1fd1
+ .long 0x00000000,0x3fb5b9e1
+ .long 0x3cdb6374,0x3e492cf0
+ .long 0x00000000,0x3fb7113f
+ .long 0x069c4f7f,0x3e61a364
+ .long 0x00000000,0x3fb869dd
+ .long 0x427b631b,0x3e6493a6
+ .long 0x00000000,0x3fb9c3be
+ .long 0xe02b3e8b,0x3e6af2c2
+ .long 0x00000000,0x3fbb1ee4
+ .long 0x389f4365,0x3e616e1e
+ .long 0x00000000,0x3fbc7b52
+ .long 0x6a31fd96,0x3e4633b7
+ .long 0x00000000,0x3fbdd90a
+ .long 0x0508664d,0x3e62ed84
+ .long 0x00000000,0x3fbf05d4
+ .long 0xaca1905c,0x3e775dcd
+ .long 0x00000000,0x3fc032fb
+ .long 0x094fbeeb,0x3e753e65
+ .long 0x00000000,0x3fc0e3b5
+ .long 0x96aa4b17,0x3e671f44
+ .long 0x00000000,0x3fc19519
+ .long 0x92da5a47,0x3e785566
+ .long 0x00000000,0x3fc22dad
+ .long 0xbeb7d722,0x3e518efa
+ .long 0x00000000,0x3fc2e050
+ .long 0xab57551c,0x3e738564
+ .long 0x00000000,0x3fc379f7
+ .long 0x54a914e3,0x3e55d0da
+ .long 0x00000000,0x3fc42ddd
+ .long 0xfe974017,0x3e73cd00
+ .long 0x00000000,0x3fc4c89b
+ .long 0x59064390,0x3e54ffd6
+ .long 0x00000000,0x3fc563dc
+ .long 0x633ab50f,0x3e67d75e
+ .long 0x00000000,0x3fc619a2
+ .long 0xc8877e8a,0x3e77e6ce
+ .long 0x00000000,0x3fc6b5ff
+ .long 0x1ab7837f,0x3e7ecc1f
+ .long 0x00000000,0x3fc752e1
+ .long 0xf9d5827a,0x3e7cea7c
+ .long 0x00000000,0x3fc7f049
+ .long 0x64ccd537,0x3e357f7a
+ .long 0x00000000,0x3fc8a898
+ .long 0xf7c9b05b,0x3e7994ca
+ .long 0x00000000,0x3fc94724
+ .long 0xa2f56536,0x3e524b8f
+ .long 0x00000000,0x3fc9e63a
+ .long 0x5edaab42,0x3e7fd640
+ .long 0x00000000,0x3fca85d8
+ .long 0xd163379a,0x3e625f54
+ .long 0x00000000,0x3fcb2602
+ .long 0x936acd51,0x3e7ebdc3
+ .long 0x00000000,0x3fcbc6b6
+ .long 0xcfbc0aa0,0x3e7eee14
+ .long 0x00000000,0x3fcc67f7
+ .long 0xf73bcdad,0x3e764469
+ .long 0x00000000,0x3fcceec4
+ .long 0x60971b86,0x3e6eb44e
+ .long 0x00000000,0x3fcd9109
+ .long 0xcd2052a5,0x3e65fcf4
+ .long 0x00000000,0x3fce33dd
+ .long 0xc402867b,0x3e61af1e
+ .long 0x00000000,0x3fced741
+ .long 0xa0c956e4,0x3e61bfbd
+ .long 0x00000000,0x3fcf7b36
+ .long 0x831e77ff,0x3e85287b
+ .long 0x00000000,0x3fd00223
+ .long 0xaddfdee2,0x3e7d2fc3
+ .long 0x00000000,0x3fd054a4
+ .long 0x342052c1,0x3e83724b
+ .long 0x00000000,0x3fd0999d
+ .long 0x602bcd34,0x3e7b4ec9
+ .long 0x00000000,0x3fd0eca6
+ .long 0x3aa20ead,0x3e6742da
+ .long 0x00000000,0x3fd13ffa
+ .long 0x9ecdadf4,0x3e713e82
+ .long 0x00000000,0x3fd185a4
+ .long 0xfef3031b,0x3e52f27e
+ .long 0x00000000,0x3fd1cb83
+ .long 0x79e4af8a,0x3e710739
+ .long 0x00000000,0x3fd21fa1
+ .long 0xe59ad84a,0x3e637301
+ .long 0x00000000,0x3fd265f5
+ .long 0x3d7dfd9b,0x3e88697c
+ .long 0x00000000,0x3fd2baa0
+ .long 0x738117b0,0x3e717788
+ .long 0x00000000,0x3fd3016b
+ .long 0xd3c26a97,0x3e6c5514
+ .long 0x00000000,0x3fd3486c
+ .long 0x4c4ff246,0x3e8df550
+ .long 0x00000000,0x3fd38fa3
+ .long 0x40340fa6,0x3e88102d
+ .long 0x00000000,0x3fd3e562
+ .long 0x4592f4c3,0x3e5f53b6
+ .long 0x00000000,0x3fd42d14
+ .long 0x8b149a00,0x3e750fc8
+ .long 0x00000000,0x3fd474fd
+ .long 0xa8f50e5f,0x3e86d01c
+ .long 0x00000000,0x3fd4bd1e
+ .long 0x7a22a88a,0x3e83c469
+ .long 0x00000000,0x3fd50578
+ .long 0xdc18b6d2,0x3e79000e
+ .long 0x00000000,0x3fd54e0b
+ .long 0x7c00250b,0x3e7870f0
+ .long 0x00000000,0x3fd596d7
+ .long 0xc1c885ae,0x3e8e3dd5
+ .long 0x00000000,0x3fd5dfdc
+ .long 0xa6ecc47e,0x3e7bf64c
+ .long 0x00000000,0x3fd6291c
+ .long 0x0bc16c18,0x3e6bdaca
+ .long 0x00000000,0x3fd67296
+ .long 0x1f925729,0x3e84d25c
+ .long 0x00000000,0x3fd6bc4a
+ .long 0xf23978de,0x3e5a5fb4
+ .long 0x00000000,0x3fd7063a
+ .long 0xe2ac7f60,0x3e8e3da0
+ .long 0x00000000,0x3fd75064
+ .long 0x71f51a7b,0x3e819e20
+ .long 0x00000000,0x3fd79acb
+ .long 0x5b924234,0x3e5e43ae
+ .long 0x00000000,0x3fd7d67c
+ .long 0xe9aedf37,0x3e701a2b
+ .long 0x00000000,0x3fd8214f
+ .long 0xeddd33ea,0x3e6b6f51
+ .long 0x00000000,0x3fd86c5f
+ .long 0xe732b3c4,0x3e79375f
+ .long 0x00000000,0x3fd8b7ac
+ .long 0xe47cb9df,0x3e7e831b
+ .long 0x00000000,0x3fd8f416
+ .long 0xe392d3c8,0x3e8abc37
+ .long 0x00000000,0x3fd93fd2
+ .long 0x28b35c77,0x3e80852d
+ .long 0x00000000,0x3fd98bcd
+ .long 0xd29cea36,0x3e69f374
+ .long 0x00000000,0x3fd9c8c3
+ .long 0xb3d7b0e6,0x3e542981
+ .long 0x00000000,0x3fda152f
+ .long 0x1fe6d5ac,0x3e8b2bfb
+ .long 0x00000000,0x3fda527f
+ .long 0xf32e5dda,0x3e6f6f5c
+ .long 0x00000000,0x3fda9f5e
+ .long 0xd34d0d30,0x3e65abaa
+ .long 0x00000000,0x3fdadd0b
+ .long 0xe0ac9602,0x3e7bd47f
+ .long 0x00000000,0x3fdb2a5d
+ .long 0x7c5c784b,0x3e833601
+ .long 0x00000000,0x3fdb6867
+ .long 0xd7b0821f,0x3e5b887c
+ .long 0x00000000,0x3fdbb62f
+ .long 0xcd0a8f6a,0x3e83eccc
+ .long 0x00000000,0x3fdbf497
+ .long 0x7500a4e8,0x3e7ba0e6
+ .long 0x00000000,0x3fdc332a
+ .long 0xfc8712bb,0x3e885a8b
+ .long 0x00000000,0x3fdc819d
+ .long 0xf7a3a78f,0x3e81c336
+ .long 0x00000000,0x3fdcc090
+ .long 0x4ad8a38b,0x3e7846b4
+ .long 0x00000000,0x3fdcffae
+ .long 0xfcfc3a99,0x3e7db50f
+ .long 0x00000000,0x3fdd3ef7
+ .long 0x433cccd2,0x3e238809
+ .long 0x00000000,0x3fdd8e50
+ .long 0x6828fa82,0x3e721b2e
+ .long 0x00000000,0x3fddcdfb
+ .long 0xfc7c49c1,0x3e82848b
+ .long 0x00000000,0x3fde0dd2
+ .long 0x1fce4d49,0x3e615144
+ .long 0x00000000,0x3fde4dd6
+ .long 0x77e2e8fd,0x3e68b88a
+ .long 0x00000000,0x3fde8e06
+ .long 0x22a961b0,0x3e8fd353
+ .long 0x00000000,0x3fdece62
+ .long 0x266f2e1f,0x3e72854e
+ .long 0x00000000,0x3fdf1f16
+ .long 0xc69211fe,0x3e8520c7
+ .long 0x00000000,0x3fdf5fd8
+ .long 0xaba878d5,0x3e826fcf
+ .long 0x00000000,0x3fdfa0c8
+ .long 0xcd5b35b1,0x3e726ed8
+ .long 0x00000000,0x3fdfe1e6
+ .long 0x678a4f1c,0x3e49054d
+ .long 0x00000000,0x3fe01199
+ .long 0x3bc19f18,0x3e5d23cb
+ .long 0x00000000,0x3fe03256
+ .long 0x12772acb,0x3e87af35
+ .long 0x00000000,0x3fe0532a
+ .long 0x2849c88a,0x3e67f5fc
+ .long 0x00000000,0x3fe07416
+ .long 0x0e574fa1,0x3e84fce2
+ .long 0x00000000,0x3fe08cd6
+ .long 0x0ec2b5fa,0x3e857044
+ .long 0x00000000,0x3fe0adeb
+ .long 0xd031f353,0x3e6d5d1d
+ .long 0x00000000,0x3fe0cf18
+ .long 0xdae75c4d,0x3e99a159
+ .long 0x00000000,0x3fe0f05c
+ .long 0x1553afb9,0x3e90eaf1
+ .long 0x00000000,0x3fe111b9
+ .long 0xdcc5c3c7,0x3e8bc6f3
+ .long 0x00000000,0x3fe1332e
+ .long 0x1109e597,0x3e94ef84
+ .long 0x00000000,0x3fe154bb
+ .long 0xd82adea4,0x3e937f40
+ .long 0x00000000,0x3fe16df5
+ .long 0x78336a2f,0x3e96dc5a
+ .long 0x00000000,0x3fe18fad
+ .long 0x84c2c804,0x3e90935b
+ .long 0x00000000,0x3fe1b17e
+ .long 0x04fd30aa,0x3e8a837a
+ .long 0x00000000,0x3fe1caeb
+ .long 0xd924b0ac,0x3e99061d
+ .long 0x00000000,0x3fe1ece7
+ .long 0xef9b9d01,0x3e7ed700
+ .long 0x00000000,0x3fe20efd
+ .long 0x202c81ec,0x3e9c6ebb
+ .long 0x00000000,0x3fe2289d
+ .long 0xfc0d7d76,0x3e936d4d
+ .long 0x00000000,0x3fe24adf
+ .long 0x9f8756ba,0x3e9a35d7
+ .long 0x00000000,0x3fe26d3a
+ .long 0xe7c79d83,0x3e584ee3
+ .long 0x00000000,0x3fe28710
+ .long 0x942065a0,0x3e7d9e0d
+ .long 0x00000000,0x3fe2a998
+ .long 0x2175afbf,0x3e872108
+ .long 0x00000000,0x3fe2c38f
+ .long 0xfaf6283c,0x3e9f5809
+ .long 0x00000000,0x3fe2e644
+ .long 0x411d0507,0x3e871209
+ .long 0x00000000,0x3fe3005e
+ .long 0x370c24bf,0x3e9c3b11
+ .long 0x00000000,0x3fe32341
+ .long 0x8044bb5a,0x3e9bce8e
+ .long 0x00000000,0x3fe33d7d
+ .long 0x698ea854,0x3e98aca0
+ .long 0x00000000,0x3fe3608f
+ .long 0xd4d873bb,0x3e972a8e
+ .long 0x00000000,0x3fe37aee
+ .long 0x615e8182,0x3e8f669b
+ .long 0x00000000,0x3fe39e2f
+ .long 0xdda5b49a,0x3e98d1f4
+ .long 0x00000000,0x3fe3b8b1
+ .long 0xe72383f7,0x3e9cc279
+ .long 0x00000000,0x3fe3dc21
+ .long 0x497497f1,0x3e9c6774
+ .long 0x00000000,0x3fe3f6c7
+ .long 0x801bd0e6,0x3e82c7f6
+ .long 0x00000000,0x3fe4117d
+ .long 0xd0ee28b4,0x3e9dfdd6
+ .long 0x00000000,0x3fe43531
+ .long 0xb70d3761,0x3e92d3a2
+ .long 0x00000000,0x3fe4500b
+ .long 0xe7d6bcb2,0x3e9c8343
+ .long 0x00000000,0x3fe46af4
+ .long 0x90d43957,0x3e693179
+ .long 0x00000000,0x3fe48eef
+ .long 0xf12570df,0x3e799eab
+ .long 0x00000000,0x3fe4a9fd
+ .long 0x1b88755d,0x3e78c5f8
+ .long 0x00000000,0x3fe4c51b
+ .long 0xdf99a22c,0x3e7369be
+ .long 0x00000000,0x3fe4e049
+ .long 0x6ed50f62,0x3e88fd93
+ .long 0x00000000,0x3fe5049f
+ .long 0x978605ff,0x3e9c6042
+ .long 0x00000000,0x3fe51ff2
+ .long 0xe6c85f4c,0x3e930ae6
+ .long 0x00000000,0x3fe53b56
+ .long 0xc3275ba6,0x3e92e7b6
+ .long 0x00000000,0x3fe556ca
+ .long 0x91597938,0x3e9e6401
+ .long 0x00000000,0x3fe5724e
+ .long 0x448ebb62,0x3e3d2dee
+ .long 0x00000000,0x3fe59719
+ .long 0x47501b6d,0x3e9b432e
+ .long 0x00000000,0x3fe5b2c3
+ .long 0x571fa7cd,0x3e83cf9b
+ .long 0x00000000,0x3fe5ce7f
+ .long 0x7359819d,0x3e8dc615
+ .long 0x00000000,0x3fe5ea4b
+ .long 0xc78a85ed,0x3e8973c3
+ .long 0x00000000,0x3fe60628
+ .long 0xc15a9f3d,0x3e77d788
+ .long 0x00000000,0x3fe62216
+ .long 0x51952736,0x3e9d2538
+ .long 0x00000000,0x3fe63e14
+ .long 0xde792c07,0x3e94dab9
+ .long 0x00000000,0x3fe65a24
+ .long 0x5bfa4318,0x3e8f5be1
+ .long 0x00000000,0x3fe67645
+ .long 0x55090ec8,0x3e903b26
+ .long 0x00000000,0x3fe69277
+ .long 0xc78b6175,0x3e99236f
+ .long 0x00000000,0x3fe6aeba
+ .long 0x3a80db6a,0x3e8a1972
+ .long 0x00000000,0x3fe6cb0f
+ .long 0xf558aa96,0x3e8d43a2
+ .long 0x00000000,0x3fe6e775
+ .long 0xd9a82f2e,0x3e424ee3
+ .long 0x00000000,0x3fe703ed
+ .long 0x583878f6,0x3e764d8e
+ .long 0x00000000,0x3fe72076
+ .long 0xc1150a3e,0x3e379604
+ .long 0x00000000,0x3fe73d11
+ .long 0xed85584b,0x3e93b229
+ .long 0x00000000,0x3fe759bd
+ .long 0x451a7b48,0x3e62967a
+ .long 0x00000000,0x3fe7767c
+ .long 0xc044e72d,0x3e8e12d7
+ .long 0x00000000,0x3fe7934c
+ .long 0xfdfb6949,0x3e9ca45d
+ .long 0x00000000,0x3fe7b02e
+ .long 0xff690fce,0x3e9244fc
+ .long 0x00000000,0x3fe7c37a
+ .long 0x81487a2c,0x3e7e9cea
+ .long 0x00000000,0x3fe7e07b
+ .long 0xd0ad2d9a,0x3e760da0
+ .long 0x00000000,0x3fe7fd8e
+ .long 0x096f45d9,0x3e8d7703
+ .long 0x00000000,0x3fe81ab3
+ .long 0x1b17115b,0x3e78dbee
+ .long 0x00000000,0x3fe837eb
+ .long 0x7c252ee0,0x3e8dc5a4
+ .long 0x00000000,0x3fe85535
+ .long 0x42d5123f,0x3e950116
+ .long 0x00000000,0x3fe868c6
+ .long 0xf11e41be,0x3e4c4eb7
+ .long 0x00000000,0x3fe88630
+ .long 0xdb2890b4,0x3e7773b8
+ .long 0x00000000,0x3fe8a3ac
+ .long 0x7ffb4479,0x3e7bc8e7
+ .long 0x00000000,0x3fe8c13b
+ .long 0x237693b3,0x3e8c388f
+ .long 0x00000000,0x3fe8d4fa
+ .long 0x45fcf1a0,0x3e731cd4
+ .long 0x00000000,0x3fe8f2a9
+ .long 0xe4895b91,0x3e9fae07
+ .long 0x00000000,0x3fe9106a
+ .long 0x42d2824e,0x3e7d140d
+ .long 0x00000000,0x3fe9244c
+ .long 0x39900f67,0x3e75c3c8
+ .long 0x00000000,0x3fe9422e
+ .long 0xa314252b,0x3e902422
+ .long 0x00000000,0x3fe96023
+ .long 0xf2a6b8ef,0x3e7b9be8
+ .long 0x00000000,0x3fe97427
+ .long 0x1476f5e9,0x3e66b188
+ .long 0x00000000,0x3fe9923d
+ .long 0xdde10a6f,0x3e93c377
+ .long 0x00000000,0x3fe9b066
+ .long 0x4944a32c,0x3e817cad
+ .long 0x00000000,0x3fe9c48d
+ .long 0xc738e7ef,0x3e9927f2
+ .long 0x00000000,0x3fe9e2d7
+ .long 0xd25cfd94,0x3e7ccc41
+ .long 0x00000000,0x3fea0136
+ .long 0x2210e81b,0x3e8382fa
+ .long 0x00000000,0x3fea1580
+ .long 0x1e690ce2,0x3e7752a7
+ .long 0x00000000,0x3fea3400
+ .long 0x122315d2,0x3e94cfee
+ .long 0x00000000,0x3fea4860
+ .long 0xce98333b,0x3e80536e
+ .long 0x00000000,0x3fea6702
+ .long 0xc30f00e9,0x3e838b7e
+ .long 0x00000000,0x3fea7b79
+ .long 0x05b0c779,0x3e9dc380
+ .long 0x00000000,0x3fea9a3c
+ .long 0xdd6dd3fe,0x3e6be168
+ .long 0x00000000,0x3feab915
+ .long 0x26e0d276,0x3e966757
+ .long 0x00000000,0x3feacdb0
+ .long 0x0aad615c,0x3e880252
+ .long 0x00000000,0x3feaecab
+ .long 0x7927096a,0x3e607c31
+ .long 0x00000000,0x3feb015e
+ .long 0x53b3d90e,0x3e596513
+ .long 0x00000000,0x3feb161a
+ .long 0x8f2f0570,0x3e90ec3a
+ .long 0x00000000,0x3feb3545
+ .long 0x81193954,0x3e9cb640
+ .long 0x00000000,0x3feb4a18
+ .long 0x311e7236,0x3e936479
+ .long 0x00000000,0x3feb6967
+ .long 0x3a42a413,0x3e9210e8
+ .long 0x00000000,0x3feb7e52
+ .long 0x4a0daeb2,0x3e9a1717
+ .long 0x00000000,0x3feb9dc4
+ .long 0xce900653,0x3e925bb7
+ .long 0x00000000,0x3febb2c7
+ .long 0xb5087588,0x3e95dbb8
+ .long 0x00000000,0x3febd25d
+ .long 0x4a41204c,0x3e8d0aa9
+ .long 0x00000000,0x3febe778
+ .long 0x69a0d774,0x3e9c772f
+ .long 0x00000000,0x3febfc9c
+ .long 0x79d0a9a5,0x3e97b6a0
+ .long 0x00000000,0x3fec1c65
+ .long 0xd26f1a12,0x3e8f7402
+ .long 0x00000000,0x3fec31a2
+ .long 0x1243bc84,0x3e4db2f1
+ .long 0x00000000,0x3fec46e9
+ .long 0x477e1755,0x3e80dcc2
+ .long 0x00000000,0x3fec66e5
+ .long 0xc2f904c1,0x3e8b1e31
+ .long 0x00000000,0x3fec7c44
+ .long 0x1785b0c4,0x3e8fb619
+ .long 0x00000000,0x3fec91ad
+ .long 0xedb052ef,0x3e98832d
+ .long 0x00000000,0x3fecb1dd
+ .long 0x9e373618,0x3e98c822
+ .long 0x00000000,0x3fecc75f
+ .long 0x32954637,0x3e9a46e7
+ .long 0x00000000,0x3fecdceb
+ .long 0xf0e6b2a9,0x3e996305
+ .long 0x00000000,0x3fecfd50
+ .long 0x1a6614ee,0x3e68c160
+ .long 0x00000000,0x3fed12f6
+ .long 0x09e33b28,0x3e9229c4
+ .long 0x00000000,0x3fed28a5
+ .long 0xe53b994c,0x3e7f281b
+ .long 0x00000000,0x3fed3e5f
+ .long 0x1124ac35,0x3e9f27f3
+ .long 0x00000000,0x3fed5f08
+ .long 0x3d2fdc03,0x3e84e779
+ .long 0x00000000,0x3fed74dc
+ .long 0x1e93fd97,0x3e416c07
+ .long 0x00000000,0x3fed8aba
+ .long 0x91b415ef,0x3e654669
+ .long 0x00000000,0x3feda0a2
+ .long 0x6495f594,0x3e9712d4
+ .long 0x00000000,0x3fedc191
+ .long 0x40171789,0x3e9ca7b2
+ .long 0x00000000,0x3fedd793
+ .long 0xe8fc4323,0x3e929afa
+ .long 0x00000000,0x3fededa0
+ .long 0xeb03bd09,0x3e9a2e96
+ .long 0x00000000,0x3fee03b7
+ .long 0xca370ea2,0x3e94a63d
+ .long 0x00000000,0x3fee19d9
+ .long 0xe30512ec,0x3e6a3bcb
+ .long 0x00000000,0x3fee3006
+ .long 0x411c95ce,0x3e99d3ed
+ .long 0x00000000,0x3fee515c
+ .long 0x35cfaf8e,0x3e3e5b57
+ .long 0x00000000,0x3fee67a4
+ .long 0x5669df6a,0x3e9fca71
+ .long 0x00000000,0x3fee7df5
+ .long 0x04f19d94,0x3e9914e2
+ .long 0x00000000,0x3fee9452
+ .long 0xcaa19134,0x3e8b511c
+ .long 0x00000000,0x3feeaaba
+ .long 0x4bb3bfb1,0x3e9ed72f
+ .long 0x00000000,0x3feec12c
+ .long 0x3c29d75e,0x3e8be8d6
+ .long 0x00000000,0x3feed7aa
+ .long 0x97da24fd,0x3e9c55d9
+ .long 0x00000000,0x3feeee32
+ .long 0x983c68ea,0x3e7ddfb1
+ .long 0x00000000,0x3fef1014
+ .long 0xf4425883,0x3e83ce66
+ .long 0x00000000,0x3fef26b8
+ .long 0xf7857f23,0x3e9055c3
+ .long 0x00000000,0x3fef3d67
+ .long 0x2805b525,0x3e9c2223
+ .long 0x00000000,0x3fef5421
+ .long 0x0c347fcf,0x3e8d59ba
+ .long 0x00000000,0x3fef6ae7
+ .long 0x7c901c44,0x3e82b110
+ .long 0x00000000,0x3fef81b8
+ .long 0x74d1b482,0x3e8b1394
+ .long 0x00000000,0x3fef9894
+ .long 0x36fb9eb2,0x3e9ca75b
+ .long 0x00000000,0x3fefaf7b
+ .long 0x629b1b7e,0x3e981a0a
+ .long 0x00000000,0x3fefc66e
+ .long 0x7b8c1116,0x3e54cc20
+ .long 0x00000000,0x3fefdd6d
+ .long 0xc0babe05,0x3e99ac8b
+ .long 0x00000000,0x3feff476
+ .type __dlog2_la___libm_log2_table_256,@object
+ .size __dlog2_la___libm_log2_table_256,4096
+ .space 512, 0x00
+ .align 64
+__dlog2_la__P:
+ .long 3213235158
+ .long 1050233568
+ .long 1697350398
+ .long 3219592519
+ .long 3694740707
+ .long 1071564553
+ .long 1697260025
+ .long 3218543943
+ .long 2542794428
+ .long 1070757746
+ .long 2165113687
+ .long 3217999640
+ .long 0
+ .long 1073157447
+ .type __dlog2_la__P,@object
+ .size __dlog2_la__P,56
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * * log2(x) = VGETEXP(x) + log2(VGETMANT(x))
+ * * VGETEXP, VGETMANT will correctly treat special cases too (including denormals)
+ * * mx = VGETMANT(x) is in [1,2) for all x>=0
+ * * log2(mx) = -log2(RCP(mx)) + log2(1 +(mx*RCP(mx)-1))
+ * * RCP(mx) is rounded to 4 fractional bits,
+ * * and the table lookup for log2(RCP(mx)) is based on a small permute instruction
+ * *
+ * * LA, EP versions use interval interpolation (16 intervals)
+ * *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_log2f16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_log2f16
+
+__svml_log2f16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+
+/* GetMant(x), normalized to [.75,1.5) for x>=0, NaN for x<0 */
+ vgetmantps $11, {sae}, %zmm0, %zmm3
+ vmovups __svml_slog2_data_internal_avx512(%rip), %zmm1
+ vgetexpps {sae}, %zmm0, %zmm5
+
+/* x<=0? */
+ vfpclassps $94, %zmm0, %k0
+ vsubps {rn-sae}, %zmm1, %zmm3, %zmm9
+ vpsrld $19, %zmm3, %zmm7
+ vgetexpps {sae}, %zmm3, %zmm6
+ vpermps 64+__svml_slog2_data_internal_avx512(%rip), %zmm7, %zmm1
+ vpermps 128+__svml_slog2_data_internal_avx512(%rip), %zmm7, %zmm2
+ vpermps 192+__svml_slog2_data_internal_avx512(%rip), %zmm7, %zmm4
+ vpermps 256+__svml_slog2_data_internal_avx512(%rip), %zmm7, %zmm8
+ vsubps {rn-sae}, %zmm6, %zmm5, %zmm10
+ vfmadd213ps {rn-sae}, %zmm2, %zmm9, %zmm1
+ kmovw %k0, %edx
+ vfmadd213ps {rn-sae}, %zmm4, %zmm9, %zmm1
+ vfmadd213ps {rn-sae}, %zmm8, %zmm9, %zmm1
+ vfmadd213ps {rn-sae}, %zmm10, %zmm9, %zmm1
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ vmovaps %zmm1, %zmm0
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm0, 64(%rsp)
+ vmovups %zmm1, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm1
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_slog2_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_log2f16,@function
+ .size __svml_log2f16,.-__svml_log2f16
+..LN__svml_log2f16.0:
+
+.L_2__routine_start___svml_slog2_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_slog2_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movzwl 2(%rdi), %edx
+ andl $32640, %edx
+ cmpl $32640, %edx
+ je .LBL_2_13
+
+
+ movss (%rdi), %xmm2
+ xorl %ecx, %ecx
+ pxor %xmm1, %xmm1
+ movss %xmm2, -16(%rsp)
+ ucomiss %xmm1, %xmm2
+ jp .LBL_2_3
+ je .LBL_2_5
+
+.LBL_2_3:
+
+ movzwl -14(%rsp), %edx
+ testl $32640, %edx
+ jne .LBL_2_5
+
+
+ movss .L_2il0floatpacket.76(%rip), %xmm0
+ movl $-27, %ecx
+ mulss %xmm0, %xmm2
+ movss %xmm2, -16(%rsp)
+
+.LBL_2_5:
+
+ comiss %xmm1, %xmm2
+ jbe .LBL_2_9
+
+
+ movaps %xmm2, %xmm1
+ subss .L_2il0floatpacket.90(%rip), %xmm1
+ movss %xmm1, -20(%rsp)
+ andb $127, -17(%rsp)
+ movss -20(%rsp), %xmm0
+ comiss .L_2il0floatpacket.77(%rip), %xmm0
+ jbe .LBL_2_8
+
+
+ movzwl -14(%rsp), %edx
+ pxor %xmm8, %xmm8
+ andl $32640, %edx
+ lea __slog2_la_CoutTab(%rip), %r10
+ shrl $7, %edx
+ movss %xmm2, -20(%rsp)
+ movss .L_2il0floatpacket.79(%rip), %xmm2
+ movaps %xmm2, %xmm1
+ movss .L_2il0floatpacket.88(%rip), %xmm6
+ lea -127(%rcx,%rdx), %r9d
+ movzwl -18(%rsp), %ecx
+ andl $-32641, %ecx
+ addl $16256, %ecx
+ movw %cx, -18(%rsp)
+ movss -20(%rsp), %xmm3
+ movaps %xmm3, %xmm0
+ addss %xmm3, %xmm1
+ addss .L_2il0floatpacket.78(%rip), %xmm0
+ cvtsi2ss %r9d, %xmm8
+ movss %xmm0, -24(%rsp)
+ movl -24(%rsp), %edi
+ movss %xmm1, -24(%rsp)
+ andl $127, %edi
+ movss -24(%rsp), %xmm7
+ subss %xmm2, %xmm7
+ lea (%rdi,%rdi,2), %r8d
+ movss (%r10,%r8,4), %xmm5
+ subss %xmm7, %xmm3
+ addss 4(%r10,%r8,4), %xmm8
+ mulss %xmm5, %xmm7
+ mulss %xmm3, %xmm5
+ subss .L_2il0floatpacket.80(%rip), %xmm7
+ movaps %xmm7, %xmm4
+ addss %xmm7, %xmm8
+ addss %xmm5, %xmm4
+ mulss %xmm4, %xmm6
+ addss .L_2il0floatpacket.87(%rip), %xmm6
+ mulss %xmm4, %xmm6
+ addss .L_2il0floatpacket.86(%rip), %xmm6
+ mulss %xmm4, %xmm6
+ addss .L_2il0floatpacket.85(%rip), %xmm6
+ mulss %xmm4, %xmm6
+ addss .L_2il0floatpacket.84(%rip), %xmm6
+ mulss %xmm4, %xmm6
+ addss .L_2il0floatpacket.83(%rip), %xmm6
+ mulss %xmm4, %xmm6
+ addss .L_2il0floatpacket.82(%rip), %xmm6
+ mulss %xmm4, %xmm6
+ addss .L_2il0floatpacket.81(%rip), %xmm6
+ mulss %xmm6, %xmm7
+ mulss %xmm5, %xmm6
+ addss 8(%r10,%r8,4), %xmm6
+ addss %xmm5, %xmm6
+ addss %xmm6, %xmm7
+ addss %xmm7, %xmm8
+ movss %xmm8, (%rsi)
+ ret
+
+.LBL_2_8:
+
+ movss .L_2il0floatpacket.80(%rip), %xmm0
+ mulss %xmm0, %xmm1
+ movss .L_2il0floatpacket.88(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss .L_2il0floatpacket.87(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss .L_2il0floatpacket.86(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss .L_2il0floatpacket.85(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss .L_2il0floatpacket.84(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss .L_2il0floatpacket.83(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss .L_2il0floatpacket.82(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss .L_2il0floatpacket.81(%rip), %xmm2
+ mulss %xmm1, %xmm2
+ addss %xmm1, %xmm2
+ movss %xmm2, (%rsi)
+ ret
+
+.LBL_2_9:
+
+ ucomiss %xmm1, %xmm2
+ jp .LBL_2_10
+ je .LBL_2_12
+
+.LBL_2_10:
+
+ divss %xmm1, %xmm1
+ movss %xmm1, (%rsi)
+ movl $1, %eax
+
+
+ ret
+
+.LBL_2_12:
+
+ movss .L_2il0floatpacket.89(%rip), %xmm0
+ movl $2, %eax
+ divss %xmm1, %xmm0
+ movss %xmm0, (%rsi)
+ ret
+
+.LBL_2_13:
+
+ movb 3(%rdi), %dl
+ andb $-128, %dl
+ cmpb $-128, %dl
+ je .LBL_2_15
+
+.LBL_2_14:
+
+ movss (%rdi), %xmm0
+ mulss %xmm0, %xmm0
+ movss %xmm0, (%rsi)
+ ret
+
+.LBL_2_15:
+
+ testl $8388607, (%rdi)
+ jne .LBL_2_14
+
+
+ movl $1, %eax
+ pxor %xmm1, %xmm1
+ pxor %xmm0, %xmm0
+ divss %xmm0, %xmm1
+ movss %xmm1, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_slog2_cout_rare_internal,@function
+ .size __svml_slog2_cout_rare_internal,.-__svml_slog2_cout_rare_internal
+..LN__svml_slog2_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_slog2_data_internal_avx512:
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 3198647882
+ .long 3196759613
+ .long 3194486322
+ .long 3192115638
+ .long 3190203785
+ .long 3188646043
+ .long 3187058849
+ .long 3184933705
+ .long 3210235473
+ .long 3208544417
+ .long 3207107312
+ .long 3205878647
+ .long 3204822309
+ .long 3203370544
+ .long 3201784975
+ .long 3200401796
+ .long 1056280844
+ .long 1055933857
+ .long 1055381630
+ .long 1054718852
+ .long 1054004959
+ .long 1053277138
+ .long 1052558383
+ .long 1051862550
+ .long 1049572249
+ .long 1051796030
+ .long 1053416266
+ .long 1054571017
+ .long 1055365658
+ .long 1055881163
+ .long 1056180132
+ .long 1056311220
+ .long 3208161588
+ .long 3208150502
+ .long 3208115952
+ .long 3208053899
+ .long 3207964810
+ .long 3207851268
+ .long 3207716694
+ .long 3207564674
+ .long 3208734740
+ .long 3208490840
+ .long 3208338440
+ .long 3208247850
+ .long 3208197907
+ .long 3208173537
+ .long 3208164045
+ .long 3208161890
+ .long 1069066811
+ .long 1069066688
+ .long 1069065960
+ .long 1069064014
+ .long 1069060299
+ .long 1069054385
+ .long 1069045976
+ .long 1069034896
+ .long 1069049182
+ .long 1069058106
+ .long 1069062890
+ .long 1069065263
+ .long 1069066312
+ .long 1069066697
+ .long 1069066799
+ .long 1069066811
+ .type __svml_slog2_data_internal_avx512,@object
+ .size __svml_slog2_data_internal_avx512,320
+ .align 32
+__slog2_la_CoutTab:
+ .long 1136175680
+ .long 0
+ .long 0
+ .long 1135986583
+ .long 1018822656
+ .long 930849160
+ .long 1135809305
+ .long 1026916352
+ .long 941737263
+ .long 1135632026
+ .long 1032306688
+ .long 936581683
+ .long 1135466566
+ .long 1035100160
+ .long 929197062
+ .long 1135301106
+ .long 1037934592
+ .long 897678483
+ .long 1135135647
+ .long 1040498688
+ .long 3059980496
+ .long 1134982005
+ .long 1041852416
+ .long 908010313
+ .long 1134828364
+ .long 1043226624
+ .long 3073739761
+ .long 1134686541
+ .long 1044510720
+ .long 918631281
+ .long 1134538809
+ .long 1045868544
+ .long 3062817788
+ .long 1134402896
+ .long 1047134208
+ .long 3064656237
+ .long 1134266982
+ .long 1048416256
+ .long 3029590737
+ .long 1134131069
+ .long 1049145856
+ .long 903671587
+ .long 1134001065
+ .long 1049775616
+ .long 911388989
+ .long 1133876970
+ .long 1050384896
+ .long 3069885983
+ .long 1133752875
+ .long 1051001344
+ .long 3037530952
+ .long 1133634689
+ .long 1051596288
+ .long 3069922038
+ .long 1133516503
+ .long 1052198400
+ .long 3070222063
+ .long 1133404227
+ .long 1052776960
+ .long 919559368
+ .long 1133291951
+ .long 1053363200
+ .long 840060372
+ .long 1133185584
+ .long 1053924864
+ .long 915603033
+ .long 1133079217
+ .long 1054493184
+ .long 921334924
+ .long 1132978759
+ .long 1055036416
+ .long 896601826
+ .long 1132872392
+ .long 1055618048
+ .long 908913293
+ .long 1132777843
+ .long 1056141312
+ .long 3065728751
+ .long 1132677386
+ .long 1056702976
+ .long 909020429
+ .long 1132582837
+ .long 1057101312
+ .long 3048020321
+ .long 1132494198
+ .long 1057354752
+ .long 3038815896
+ .long 1132337219
+ .long 1057628160
+ .long 3068137421
+ .long 1132159940
+ .long 1057887232
+ .long 3069993595
+ .long 1131994480
+ .long 1058131456
+ .long 3054354312
+ .long 1131817202
+ .long 1058395904
+ .long 910223436
+ .long 1131651742
+ .long 1058645504
+ .long 3046952660
+ .long 1131486282
+ .long 1058897664
+ .long 3057670844
+ .long 1131332641
+ .long 1059133952
+ .long 924929721
+ .long 1131178999
+ .long 1059373056
+ .long 3068093797
+ .long 1131025358
+ .long 1059614208
+ .long 3058851683
+ .long 1130871717
+ .long 1059857920
+ .long 3069897752
+ .long 1130729894
+ .long 1060084736
+ .long 924446297
+ .long 1130576253
+ .long 1060333312
+ .long 903058075
+ .long 1130434430
+ .long 1060564992
+ .long 3052757441
+ .long 1130304426
+ .long 1060779264
+ .long 3045479197
+ .long 1130162603
+ .long 1061015040
+ .long 924699798
+ .long 1130032599
+ .long 1061233664
+ .long 3070937808
+ .long 1129890776
+ .long 1061473792
+ .long 925912756
+ .long 1129772591
+ .long 1061676032
+ .long 923952205
+ .long 1129642586
+ .long 1061900544
+ .long 906547304
+ .long 1129512582
+ .long 1062127104
+ .long 3050351427
+ .long 1129394397
+ .long 1062334976
+ .long 3070601694
+ .long 1129276211
+ .long 1062544384
+ .long 900519722
+ .long 1129158025
+ .long 1062755840
+ .long 3055774932
+ .long 1129039840
+ .long 1062969088
+ .long 3053661845
+ .long 1128921654
+ .long 1063184384
+ .long 3073448373
+ .long 1128815287
+ .long 1063379456
+ .long 907090876
+ .long 1128697101
+ .long 1063598336
+ .long 881051555
+ .long 1128590734
+ .long 1063796992
+ .long 898320955
+ .long 1128484367
+ .long 1063997440
+ .long 3068804107
+ .long 1128378000
+ .long 1064199168
+ .long 923531617
+ .long 1128283452
+ .long 1064380416
+ .long 3070994608
+ .long 1128177085
+ .long 1064585472
+ .long 901920533
+ .long 1128082536
+ .long 1064769536
+ .long 3071653428
+ .long 1127976169
+ .long 1064977920
+ .long 903017594
+ .long 1127881621
+ .long 1065164800
+ .long 911713416
+ .long 1127787072
+ .long 1065353216
+ .long 0
+ .long 1065353216
+ .long 0
+ .long 1207959616
+ .long 1174405120
+ .long 1002438656
+ .long 1291845632
+ .long 0
+ .long 1065353216
+ .long 1136175680
+ .long 3212771328
+ .long 3065082383
+ .long 841219731
+ .long 2913632803
+ .long 691870088
+ .long 2765780188
+ .long 545377693
+ .long 2619180638
+ .type __slog2_la_CoutTab,@object
+ .size __slog2_la_CoutTab,848
+ .align 4
+.L_2il0floatpacket.76:
+ .long 0x4d000000
+ .type .L_2il0floatpacket.76,@object
+ .size .L_2il0floatpacket.76,4
+ .align 4
+.L_2il0floatpacket.77:
+ .long 0x3bc00000
+ .type .L_2il0floatpacket.77,@object
+ .size .L_2il0floatpacket.77,4
+ .align 4
+.L_2il0floatpacket.78:
+ .long 0x48000040
+ .type .L_2il0floatpacket.78,@object
+ .size .L_2il0floatpacket.78,4
+ .align 4
+.L_2il0floatpacket.79:
+ .long 0x46000000
+ .type .L_2il0floatpacket.79,@object
+ .size .L_2il0floatpacket.79,4
+ .align 4
+.L_2il0floatpacket.80:
+ .long 0x43b8aa40
+ .type .L_2il0floatpacket.80,@object
+ .size .L_2il0floatpacket.80,4
+ .align 4
+.L_2il0floatpacket.81:
+ .long 0xbf7f0000
+ .type .L_2il0floatpacket.81,@object
+ .size .L_2il0floatpacket.81,4
+ .align 4
+.L_2il0floatpacket.82:
+ .long 0xb6b1720f
+ .type .L_2il0floatpacket.82,@object
+ .size .L_2il0floatpacket.82,4
+ .align 4
+.L_2il0floatpacket.83:
+ .long 0x3223fe93
+ .type .L_2il0floatpacket.83,@object
+ .size .L_2il0floatpacket.83,4
+ .align 4
+.L_2il0floatpacket.84:
+ .long 0xadaa8223
+ .type .L_2il0floatpacket.84,@object
+ .size .L_2il0floatpacket.84,4
+ .align 4
+.L_2il0floatpacket.85:
+ .long 0x293d1988
+ .type .L_2il0floatpacket.85,@object
+ .size .L_2il0floatpacket.85,4
+ .align 4
+.L_2il0floatpacket.86:
+ .long 0xa4da74dc
+ .type .L_2il0floatpacket.86,@object
+ .size .L_2il0floatpacket.86,4
+ .align 4
+.L_2il0floatpacket.87:
+ .long 0x2081cd9d
+ .type .L_2il0floatpacket.87,@object
+ .size .L_2il0floatpacket.87,4
+ .align 4
+.L_2il0floatpacket.88:
+ .long 0x9c1d865e
+ .type .L_2il0floatpacket.88,@object
+ .size .L_2il0floatpacket.88,4
+ .align 4
+.L_2il0floatpacket.89:
+ .long 0xbf800000
+ .type .L_2il0floatpacket.89,@object
+ .size .L_2il0floatpacket.89,4
+ .align 4
+.L_2il0floatpacket.90:
+ .long 0x3f800000
+ .type .L_2il0floatpacket.90,@object
+ .size .L_2il0floatpacket.90,4
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * *
+ * * log(x) = -log(Rcp) + log(Rcp*x),
+ * * where Rcp ~ 1/x (accuracy ~9 bits, obtained by rounding HW approximation to 1+9 mantissa bits)
+ * *
+ * * Reduced argument R=Rcp*x-1 is used to approximate log(1+R) as polynomial
+ * *
+ * * log(Rcp) = exponent_Rcp*log(2) + log(mantissa_Rcp)
+ * * -log(mantissa_Rcp) is obtained from a lookup table, accessed by a 9-bit index
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_log8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_log8
+
+__svml_log8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vgetmantpd $8, {sae}, %zmm0, %zmm6
+ vmovups 128+__svml_dlog_data_internal_avx512(%rip), %zmm4
+ vmovups 384+__svml_dlog_data_internal_avx512(%rip), %zmm11
+ vmovups 448+__svml_dlog_data_internal_avx512(%rip), %zmm14
+ vmovups 512+__svml_dlog_data_internal_avx512(%rip), %zmm12
+ vmovups 256+__svml_dlog_data_internal_avx512(%rip), %zmm10
+
+/* Start polynomial evaluation */
+ vmovups 320+__svml_dlog_data_internal_avx512(%rip), %zmm1
+ vmovups 640+__svml_dlog_data_internal_avx512(%rip), %zmm13
+ vmovups 704+__svml_dlog_data_internal_avx512(%rip), %zmm15
+
+/* Prepare exponent correction: DblRcp<0.75? */
+ vmovups 192+__svml_dlog_data_internal_avx512(%rip), %zmm3
+
+/* Table lookup */
+ vmovups __svml_dlog_data_internal_avx512(%rip), %zmm5
+
+/* GetExp(x) */
+ vgetexppd {sae}, %zmm0, %zmm7
+
+/* DblRcp ~ 1/Mantissa */
+ vrcp14pd %zmm6, %zmm8
+
+/* x<=0? */
+ vfpclasspd $94, %zmm0, %k0
+
+/* round DblRcp to 4 fractional bits (RN mode, no Precision exception) */
+ vrndscalepd $88, {sae}, %zmm8, %zmm2
+ kmovw %k0, %edx
+
+/* Reduced argument: R = DblRcp*Mantissa - 1 */
+ vfmsub213pd {rn-sae}, %zmm4, %zmm2, %zmm6
+ vcmppd $17, {sae}, %zmm3, %zmm2, %k1
+ vfmadd231pd {rn-sae}, %zmm6, %zmm11, %zmm14
+ vmovups 576+__svml_dlog_data_internal_avx512(%rip), %zmm11
+ vfmadd231pd {rn-sae}, %zmm6, %zmm10, %zmm1
+ vfmadd231pd {rn-sae}, %zmm6, %zmm13, %zmm15
+
+/* R^2 */
+ vmulpd {rn-sae}, %zmm6, %zmm6, %zmm8
+ vfmadd231pd {rn-sae}, %zmm6, %zmm12, %zmm11
+
+/* Prepare table index */
+ vpsrlq $48, %zmm2, %zmm9
+
+/* add 1 to Expon if DblRcp<0.75 */
+ vaddpd {rn-sae}, %zmm4, %zmm7, %zmm7{%k1}
+ vmulpd {rn-sae}, %zmm8, %zmm8, %zmm12
+ vfmadd213pd {rn-sae}, %zmm14, %zmm8, %zmm1
+ vfmadd213pd {rn-sae}, %zmm15, %zmm8, %zmm11
+ vpermt2pd 64+__svml_dlog_data_internal_avx512(%rip), %zmm9, %zmm5
+
+/* polynomial */
+ vfmadd213pd {rn-sae}, %zmm11, %zmm12, %zmm1
+ vfmadd213pd {rn-sae}, %zmm6, %zmm8, %zmm1
+ vaddpd {rn-sae}, %zmm1, %zmm5, %zmm2
+ vmovups 768+__svml_dlog_data_internal_avx512(%rip), %zmm1
+ vfmadd213pd {rn-sae}, %zmm2, %zmm1, %zmm7
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ vmovaps %zmm7, %zmm0
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm0, 64(%rsp)
+ vmovups %zmm7, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm7
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dlog_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_log8,@function
+ .size __svml_log8,.-__svml_log8
+..LN__svml_log8.0:
+
+.L_2__routine_start___svml_dlog_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dlog_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movzwl 6(%rdi), %edx
+ andl $32752, %edx
+ cmpl $32752, %edx
+ je .LBL_2_12
+
+
+ movsd (%rdi), %xmm2
+ xorl %ecx, %ecx
+ movsd %xmm2, -8(%rsp)
+ movzwl -2(%rsp), %edx
+ testl $32752, %edx
+ jne .LBL_2_4
+
+
+ mulsd 1600+__dlog_la_CoutTab(%rip), %xmm2
+ movl $-60, %ecx
+ movsd %xmm2, -8(%rsp)
+
+.LBL_2_4:
+
+ movsd 1608+__dlog_la_CoutTab(%rip), %xmm0
+ comisd %xmm0, %xmm2
+ jbe .LBL_2_8
+
+
+ movsd .L_2il0floatpacket.80(%rip), %xmm3
+ movaps %xmm2, %xmm1
+ subsd %xmm3, %xmm1
+ movsd %xmm1, -16(%rsp)
+ andb $127, -9(%rsp)
+ movsd -16(%rsp), %xmm0
+ comisd 1592+__dlog_la_CoutTab(%rip), %xmm0
+ jbe .LBL_2_7
+
+
+ movsd %xmm2, -16(%rsp)
+ pxor %xmm7, %xmm7
+ movzwl -10(%rsp), %edi
+ lea __dlog_la_CoutTab(%rip), %r10
+ andl $-32753, %edi
+ addl $16368, %edi
+ movw %di, -10(%rsp)
+ movsd -16(%rsp), %xmm4
+ movaps %xmm4, %xmm1
+ movaps %xmm4, %xmm2
+ movsd 1672+__dlog_la_CoutTab(%rip), %xmm8
+ movzwl -2(%rsp), %edx
+ andl $32752, %edx
+ addsd 1576+__dlog_la_CoutTab(%rip), %xmm1
+ addsd 1584+__dlog_la_CoutTab(%rip), %xmm2
+ movsd %xmm1, -24(%rsp)
+ movl -24(%rsp), %r8d
+ movsd %xmm2, -24(%rsp)
+ andl $127, %r8d
+ movsd -24(%rsp), %xmm5
+ movsd 1560+__dlog_la_CoutTab(%rip), %xmm9
+ movsd 1568+__dlog_la_CoutTab(%rip), %xmm0
+ shrl $4, %edx
+ subsd 1584+__dlog_la_CoutTab(%rip), %xmm5
+ lea (%r8,%r8,2), %r9d
+ movsd (%r10,%r9,8), %xmm6
+ lea -1023(%rcx,%rdx), %ecx
+ cvtsi2sd %ecx, %xmm7
+ subsd %xmm5, %xmm4
+ mulsd %xmm6, %xmm5
+ mulsd %xmm7, %xmm9
+ subsd %xmm3, %xmm5
+ mulsd %xmm4, %xmm6
+ mulsd %xmm0, %xmm7
+ addsd 8(%r10,%r9,8), %xmm9
+ addsd 16(%r10,%r9,8), %xmm7
+ addsd %xmm5, %xmm9
+ addsd %xmm6, %xmm7
+ movaps %xmm5, %xmm3
+ addsd %xmm6, %xmm3
+ mulsd %xmm3, %xmm8
+ addsd 1664+__dlog_la_CoutTab(%rip), %xmm8
+ mulsd %xmm3, %xmm8
+ addsd 1656+__dlog_la_CoutTab(%rip), %xmm8
+ mulsd %xmm3, %xmm8
+ addsd 1648+__dlog_la_CoutTab(%rip), %xmm8
+ mulsd %xmm3, %xmm8
+ addsd 1640+__dlog_la_CoutTab(%rip), %xmm8
+ mulsd %xmm3, %xmm8
+ addsd 1632+__dlog_la_CoutTab(%rip), %xmm8
+ mulsd %xmm3, %xmm8
+ addsd 1624+__dlog_la_CoutTab(%rip), %xmm8
+ mulsd %xmm3, %xmm8
+ mulsd %xmm3, %xmm8
+ addsd %xmm7, %xmm8
+ addsd %xmm8, %xmm9
+ movsd %xmm9, (%rsi)
+ ret
+
+.LBL_2_7:
+
+ movsd 1672+__dlog_la_CoutTab(%rip), %xmm0
+ mulsd %xmm1, %xmm0
+ addsd 1664+__dlog_la_CoutTab(%rip), %xmm0
+ mulsd %xmm1, %xmm0
+ addsd 1656+__dlog_la_CoutTab(%rip), %xmm0
+ mulsd %xmm1, %xmm0
+ addsd 1648+__dlog_la_CoutTab(%rip), %xmm0
+ mulsd %xmm1, %xmm0
+ addsd 1640+__dlog_la_CoutTab(%rip), %xmm0
+ mulsd %xmm1, %xmm0
+ addsd 1632+__dlog_la_CoutTab(%rip), %xmm0
+ mulsd %xmm1, %xmm0
+ addsd 1624+__dlog_la_CoutTab(%rip), %xmm0
+ mulsd %xmm1, %xmm0
+ mulsd %xmm1, %xmm0
+ addsd %xmm1, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_8:
+
+ ucomisd %xmm0, %xmm2
+ jp .LBL_2_9
+ je .LBL_2_11
+
+.LBL_2_9:
+
+ divsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ movl $1, %eax
+
+
+ ret
+
+.LBL_2_11:
+
+ movsd 1616+__dlog_la_CoutTab(%rip), %xmm1
+ movl $2, %eax
+ xorps .L_2il0floatpacket.79(%rip), %xmm1
+ divsd %xmm0, %xmm1
+ movsd %xmm1, (%rsi)
+ ret
+
+.LBL_2_12:
+
+ movb 7(%rdi), %dl
+ andb $-128, %dl
+ cmpb $-128, %dl
+ je .LBL_2_14
+
+.LBL_2_13:
+
+ movsd (%rdi), %xmm0
+ mulsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+
+.LBL_2_14:
+
+ testl $1048575, 4(%rdi)
+ jne .LBL_2_13
+
+
+ cmpl $0, (%rdi)
+ jne .LBL_2_13
+
+
+ movsd 1608+__dlog_la_CoutTab(%rip), %xmm0
+ movl $1, %eax
+ divsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dlog_cout_rare_internal,@function
+ .size __svml_dlog_cout_rare_internal,.-__svml_dlog_cout_rare_internal
+..LN__svml_dlog_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dlog_data_internal_avx512:
+ .long 0
+ .long 0
+ .long 3222364838
+ .long 3215919664
+ .long 1848308454
+ .long 3216910087
+ .long 1890030548
+ .long 3217424176
+ .long 3348797986
+ .long 3217854455
+ .long 2880153102
+ .long 3218171740
+ .long 3256639170
+ .long 3218366859
+ .long 4139503623
+ .long 3218553303
+ .long 288676754
+ .long 1070754146
+ .long 1823716217
+ .long 1070569756
+ .long 1015732707
+ .long 1070240749
+ .long 1800682930
+ .long 1069924160
+ .long 2183652476
+ .long 1069619086
+ .long 1566132617
+ .long 1069101918
+ .long 3047045639
+ .long 1068533144
+ .long 2313634884
+ .long 1067467101
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 0
+ .long 1072168960
+ .long 815627376
+ .long 1069318605
+ .long 815627376
+ .long 1069318605
+ .long 815627376
+ .long 1069318605
+ .long 815627376
+ .long 1069318605
+ .long 815627376
+ .long 1069318605
+ .long 815627376
+ .long 1069318605
+ .long 815627376
+ .long 1069318605
+ .long 815627376
+ .long 1069318605
+ .long 2123607906
+ .long 3217033013
+ .long 2123607906
+ .long 3217033013
+ .long 2123607906
+ .long 3217033013
+ .long 2123607906
+ .long 3217033013
+ .long 2123607906
+ .long 3217033013
+ .long 2123607906
+ .long 3217033013
+ .long 2123607906
+ .long 3217033013
+ .long 2123607906
+ .long 3217033013
+ .long 2632876527
+ .long 1069697314
+ .long 2632876527
+ .long 1069697314
+ .long 2632876527
+ .long 1069697314
+ .long 2632876527
+ .long 1069697314
+ .long 2632876527
+ .long 1069697314
+ .long 2632876527
+ .long 1069697314
+ .long 2632876527
+ .long 1069697314
+ .long 2632876527
+ .long 1069697314
+ .long 4213758726
+ .long 3217380691
+ .long 4213758726
+ .long 3217380691
+ .long 4213758726
+ .long 3217380691
+ .long 4213758726
+ .long 3217380691
+ .long 4213758726
+ .long 3217380691
+ .long 4213758726
+ .long 3217380691
+ .long 4213758726
+ .long 3217380691
+ .long 4213758726
+ .long 3217380691
+ .long 2580324188
+ .long 1070176665
+ .long 2580324188
+ .long 1070176665
+ .long 2580324188
+ .long 1070176665
+ .long 2580324188
+ .long 1070176665
+ .long 2580324188
+ .long 1070176665
+ .long 2580324188
+ .long 1070176665
+ .long 2580324188
+ .long 1070176665
+ .long 2580324188
+ .long 1070176665
+ .long 787901
+ .long 3218079744
+ .long 787901
+ .long 3218079744
+ .long 787901
+ .long 3218079744
+ .long 787901
+ .long 3218079744
+ .long 787901
+ .long 3218079744
+ .long 787901
+ .long 3218079744
+ .long 787901
+ .long 3218079744
+ .long 787901
+ .long 3218079744
+ .long 1431655526
+ .long 1070945621
+ .long 1431655526
+ .long 1070945621
+ .long 1431655526
+ .long 1070945621
+ .long 1431655526
+ .long 1070945621
+ .long 1431655526
+ .long 1070945621
+ .long 1431655526
+ .long 1070945621
+ .long 1431655526
+ .long 1070945621
+ .long 1431655526
+ .long 1070945621
+ .long 4294967238
+ .long 3219128319
+ .long 4294967238
+ .long 3219128319
+ .long 4294967238
+ .long 3219128319
+ .long 4294967238
+ .long 3219128319
+ .long 4294967238
+ .long 3219128319
+ .long 4294967238
+ .long 3219128319
+ .long 4294967238
+ .long 3219128319
+ .long 4294967238
+ .long 3219128319
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 4277811695
+ .long 1072049730
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 0
+ .long 1048576
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .long 4294967295
+ .long 2146435071
+ .type __svml_dlog_data_internal_avx512,@object
+ .size __svml_dlog_data_internal_avx512,1088
+ .align 32
+__dlog_la_CoutTab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1072660480
+ .long 1486880768
+ .long 1066410070
+ .long 1813744607
+ .long 3179892593
+ .long 0
+ .long 1072629760
+ .long 377487360
+ .long 1067416219
+ .long 919019713
+ .long 3179241129
+ .long 0
+ .long 1072599040
+ .long 1513619456
+ .long 1067944025
+ .long 874573033
+ .long 3178512940
+ .long 0
+ .long 1072570368
+ .long 3221749760
+ .long 1068427825
+ .long 4181665006
+ .long 3177478212
+ .long 0
+ .long 1072541696
+ .long 4162322432
+ .long 1068708823
+ .long 627020255
+ .long 1028629941
+ .long 0
+ .long 1072513024
+ .long 183107584
+ .long 1068957907
+ .long 2376703469
+ .long 1030233118
+ .long 0
+ .long 1072486400
+ .long 1053425664
+ .long 1069192557
+ .long 696277142
+ .long 1030474863
+ .long 0
+ .long 1072459776
+ .long 3996123136
+ .long 1069430535
+ .long 2630798680
+ .long 1028792016
+ .long 0
+ .long 1072435200
+ .long 3452764160
+ .long 1069600382
+ .long 624954044
+ .long 3177101741
+ .long 0
+ .long 1072409600
+ .long 207650816
+ .long 1069717971
+ .long 3272735636
+ .long 3175176575
+ .long 0
+ .long 1072386048
+ .long 2647228416
+ .long 1069827627
+ .long 3594228712
+ .long 1029303785
+ .long 0
+ .long 1072362496
+ .long 2712010752
+ .long 1069938736
+ .long 3653242769
+ .long 3176839013
+ .long 0
+ .long 1072338944
+ .long 374439936
+ .long 1070051337
+ .long 4072775574
+ .long 3176577495
+ .long 0
+ .long 1072316416
+ .long 3707174912
+ .long 1070160474
+ .long 1486946159
+ .long 1023930920
+ .long 0
+ .long 1072294912
+ .long 1443954688
+ .long 1070265993
+ .long 293532967
+ .long 3176278277
+ .long 0
+ .long 1072273408
+ .long 127762432
+ .long 1070372856
+ .long 3404145447
+ .long 3177023955
+ .long 0
+ .long 1072252928
+ .long 2053832704
+ .long 1070475911
+ .long 1575076358
+ .long 1029048544
+ .long 0
+ .long 1072232448
+ .long 3194093568
+ .long 1070580248
+ .long 1864169120
+ .long 1026866084
+ .long 0
+ .long 1072212992
+ .long 3917201408
+ .long 1070638340
+ .long 2362145246
+ .long 3175606197
+ .long 0
+ .long 1072193536
+ .long 3417112576
+ .long 1070689116
+ .long 70087871
+ .long 3174183577
+ .long 0
+ .long 1072175104
+ .long 4226777088
+ .long 1070737793
+ .long 1620410586
+ .long 3174700065
+ .long 0
+ .long 1072156672
+ .long 3168870400
+ .long 1070787042
+ .long 311238082
+ .long 1025781772
+ .long 0
+ .long 1072139264
+ .long 2150580224
+ .long 1070834092
+ .long 1664262457
+ .long 3175299224
+ .long 0
+ .long 1072120832
+ .long 4095672320
+ .long 1070884491
+ .long 1657121015
+ .long 3174674199
+ .long 0
+ .long 1072104448
+ .long 2595577856
+ .long 1070929805
+ .long 2014006823
+ .long 3175423830
+ .long 0
+ .long 1072087040
+ .long 3747176448
+ .long 1070978493
+ .long 144991708
+ .long 3171552042
+ .long 0
+ .long 1072070656
+ .long 1050435584
+ .long 1071024840
+ .long 3386227432
+ .long 1027876916
+ .long 0
+ .long 1072055296
+ .long 255516672
+ .long 1071068760
+ .long 2637594316
+ .long 1028049573
+ .long 0
+ .long 1072038912
+ .long 1640783872
+ .long 1071116120
+ .long 893247007
+ .long 1028452162
+ .long 0
+ .long 1072023552
+ .long 2940411904
+ .long 1071161011
+ .long 813240633
+ .long 1027664048
+ .long 0
+ .long 1072009216
+ .long 882917376
+ .long 1071203348
+ .long 2376597551
+ .long 3175828767
+ .long 0
+ .long 1071993856
+ .long 213966848
+ .long 1071249188
+ .long 2977204125
+ .long 1028350609
+ .long 0
+ .long 1071979520
+ .long 2921504768
+ .long 1071292428
+ .long 523218347
+ .long 1028007004
+ .long 0
+ .long 1071965184
+ .long 3186655232
+ .long 1071336119
+ .long 2352907891
+ .long 1026967097
+ .long 0
+ .long 1071951872
+ .long 2653364224
+ .long 1071377101
+ .long 2453418583
+ .long 3174349512
+ .long 0
+ .long 1071938560
+ .long 3759783936
+ .long 1071418487
+ .long 3685870403
+ .long 3175415611
+ .long 0
+ .long 1071925248
+ .long 2468364288
+ .long 1071460286
+ .long 1578908842
+ .long 3175510517
+ .long 0
+ .long 1071911936
+ .long 81903616
+ .long 1071502506
+ .long 770710269
+ .long 1026742353
+ .long 0
+ .long 1071899648
+ .long 2799321088
+ .long 1071541858
+ .long 3822266185
+ .long 1028434427
+ .long 0
+ .long 1071886336
+ .long 2142265344
+ .long 1071584911
+ .long 175901806
+ .long 3173871540
+ .long 0
+ .long 1071874048
+ .long 2944024576
+ .long 1071625048
+ .long 2747360403
+ .long 1027672159
+ .long 0
+ .long 1071862784
+ .long 3434301440
+ .long 1071653426
+ .long 4194662196
+ .long 3173893003
+ .long 0
+ .long 1071850496
+ .long 1547755520
+ .long 1071673870
+ .long 4248764681
+ .long 3172759087
+ .long 0
+ .long 1071839232
+ .long 4246986752
+ .long 1071692786
+ .long 2840205638
+ .long 3174430911
+ .long 0
+ .long 1071826944
+ .long 3418390528
+ .long 1071713619
+ .long 3041880823
+ .long 1025440860
+ .long 0
+ .long 1071816704
+ .long 4143093760
+ .long 1071731139
+ .long 2727587401
+ .long 3173965207
+ .long 0
+ .long 1071805440
+ .long 3121326080
+ .long 1071750582
+ .long 3173887692
+ .long 3174190163
+ .long 0
+ .long 1071794176
+ .long 1852893184
+ .long 1071770207
+ .long 3951060252
+ .long 1027348295
+ .long 0
+ .long 1071783936
+ .long 3636379648
+ .long 1071788208
+ .long 1684924001
+ .long 3174777086
+ .long 0
+ .long 1071773696
+ .long 516505600
+ .long 1071806366
+ .long 429181199
+ .long 3173211033
+ .long 0
+ .long 1071763456
+ .long 4186185728
+ .long 1071824681
+ .long 2044904577
+ .long 3174967132
+ .long 0
+ .long 1071753216
+ .long 877596672
+ .long 1071843159
+ .long 1396318105
+ .long 3173959727
+ .long 0
+ .long 1071742976
+ .long 2912784384
+ .long 1071861800
+ .long 448136789
+ .long 3174814192
+ .long 0
+ .long 1071733760
+ .long 3722825728
+ .long 1071878720
+ .long 714165913
+ .long 3173439560
+ .long 0
+ .long 1071723520
+ .long 2522374144
+ .long 1071897682
+ .long 3227240353
+ .long 3173394323
+ .long 0
+ .long 1071714304
+ .long 4165410816
+ .long 1071914895
+ .long 1365684961
+ .long 3174365060
+ .long 0
+ .long 1071705088
+ .long 3477135360
+ .long 1071932251
+ .long 368482985
+ .long 3174140821
+ .long 0
+ .long 1071695872
+ .long 2079455232
+ .long 1071949752
+ .long 1320576317
+ .long 1026822714
+ .long 0
+ .long 1071687680
+ .long 851795968
+ .long 1071965432
+ .long 3702467026
+ .long 1025224125
+ .long 0
+ .long 1071678464
+ .long 647743488
+ .long 1071983213
+ .long 772992109
+ .long 3174038459
+ .long 0
+ .long 1071670272
+ .long 26537984
+ .long 1071999146
+ .long 2360214276
+ .long 3174861275
+ .long 0
+ .long 1071661056
+ .long 1547061248
+ .long 1072017216
+ .long 2886781435
+ .long 1026423395
+ .long 0
+ .long 1071652864
+ .long 2854492160
+ .long 1072033410
+ .long 215631550
+ .long 1025638968
+ .long 0
+ .long 1071644672
+ .long 4277811200
+ .long 1072049730
+ .long 2479318832
+ .long 1026487127
+ .long 4277811200
+ .long 1072049730
+ .long 2479318832
+ .long 1026487127
+ .long 64
+ .long 1120927744
+ .long 0
+ .long 1094713344
+ .long 0
+ .long 1065615360
+ .long 0
+ .long 1135607808
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 3219128320
+ .long 1431655955
+ .long 1070945621
+ .long 610
+ .long 3218079744
+ .long 2545118337
+ .long 1070176665
+ .long 1378399119
+ .long 3217380693
+ .long 612435357
+ .long 1069697472
+ .long 94536557
+ .long 3217031348
+ .type __dlog_la_CoutTab,@object
+ .size __dlog_la_CoutTab,1680
+ .align 16
+.L_2il0floatpacket.79:
+ .long 0x00000000,0x80000000,0x00000000,0x00000000
+ .type .L_2il0floatpacket.79,@object
+ .size .L_2il0floatpacket.79,16
+ .align 8
+.L_2il0floatpacket.80:
+ .long 0x00000000,0x3ff00000
+ .type .L_2il0floatpacket.80,@object
+ .size .L_2il0floatpacket.80,8
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * *
+ * * log(x) = exponent_x*log(2) + log(mantissa_x), if mantissa_x<4/3
+ * * log(x) = (exponent_x+1)*log(2) + log(0.5*mantissa_x), if mantissa_x>4/3
+ * *
+ * * R = mantissa_x - 1, if mantissa_x<4/3
+ * * R = 0.5*mantissa_x - 1, if mantissa_x>4/3
+ * * |R|< 1/3
+ * *
+ * * log(1+R) is approximated as a polynomial: degree 9 for 1-ulp, degree 7 for 4-ulp,
+ * * degree 3 for half-precision
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_logf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_logf16
+
+__svml_logf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vgetmantps $11, {sae}, %zmm0, %zmm3
+ vmovups __svml_slog_data_internal_avx512(%rip), %zmm1
+ vgetexpps {sae}, %zmm0, %zmm5
+ vmovups 320+__svml_slog_data_internal_avx512(%rip), %zmm10
+ vpsrld $19, %zmm3, %zmm7
+ vgetexpps {sae}, %zmm3, %zmm6
+
+/* reduced argument */
+ vsubps {rn-sae}, %zmm1, %zmm3, %zmm11
+
+/*
+ * read coefficients for polynomial interpolation,
+ * and evaluate polynomial
+ */
+ vpermps 64+__svml_slog_data_internal_avx512(%rip), %zmm7, %zmm1
+ vpermps 128+__svml_slog_data_internal_avx512(%rip), %zmm7, %zmm2
+ vsubps {rn-sae}, %zmm6, %zmm5, %zmm9
+ vpermps 192+__svml_slog_data_internal_avx512(%rip), %zmm7, %zmm4
+ vpermps 256+__svml_slog_data_internal_avx512(%rip), %zmm7, %zmm8
+
+/* x<=0? */
+ vfpclassps $94, %zmm0, %k0
+ vfmadd213ps {rn-sae}, %zmm2, %zmm11, %zmm1
+
+/* exponent*log(2) */
+ vmulps {rn-sae}, %zmm10, %zmm9, %zmm12
+ vfmadd213ps {rn-sae}, %zmm4, %zmm11, %zmm1
+ kmovw %k0, %edx
+ vfmadd213ps {rn-sae}, %zmm8, %zmm11, %zmm1
+
+/* result */
+ vfmadd213ps {rn-sae}, %zmm12, %zmm11, %zmm1
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ vmovaps %zmm1, %zmm0
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm0, 64(%rsp)
+ vmovups %zmm1, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm1
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_slog_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_logf16,@function
+ .size __svml_logf16,.-__svml_logf16
+..LN__svml_logf16.0:
+
+.L_2__routine_start___svml_slog_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_slog_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ xorl %eax, %eax
+ movzwl 2(%rdi), %edx
+ andl $32640, %edx
+ cmpl $32640, %edx
+ je .LBL_2_12
+
+
+ pxor %xmm2, %xmm2
+ xorl %ecx, %ecx
+ cvtss2sd (%rdi), %xmm2
+ movsd %xmm2, -8(%rsp)
+ movzwl -2(%rsp), %edx
+ testl $32752, %edx
+ jne .LBL_2_4
+
+
+ mulsd 1600+_imlsLnHATab(%rip), %xmm2
+ movl $-60, %ecx
+ movsd %xmm2, -8(%rsp)
+
+.LBL_2_4:
+
+ movsd 1608+_imlsLnHATab(%rip), %xmm0
+ comisd %xmm0, %xmm2
+ jbe .LBL_2_8
+
+
+ movsd .L_2il0floatpacket.73(%rip), %xmm3
+ movaps %xmm2, %xmm1
+ subsd %xmm3, %xmm1
+ movsd %xmm1, -16(%rsp)
+ andb $127, -9(%rsp)
+ movsd -16(%rsp), %xmm0
+ comisd 1592+_imlsLnHATab(%rip), %xmm0
+ jbe .LBL_2_7
+
+
+ movsd %xmm2, -16(%rsp)
+ pxor %xmm6, %xmm6
+ movzwl -10(%rsp), %edi
+ lea _imlsLnHATab(%rip), %r10
+ andl $-32753, %edi
+ addl $16368, %edi
+ movw %di, -10(%rsp)
+ movsd -16(%rsp), %xmm4
+ movaps %xmm4, %xmm1
+ movaps %xmm4, %xmm2
+ movsd 1672+_imlsLnHATab(%rip), %xmm9
+ movzwl -2(%rsp), %edx
+ andl $32752, %edx
+ addsd 1576+_imlsLnHATab(%rip), %xmm1
+ addsd 1584+_imlsLnHATab(%rip), %xmm2
+ movsd %xmm1, -24(%rsp)
+ movl -24(%rsp), %r8d
+ movsd %xmm2, -24(%rsp)
+ andl $127, %r8d
+ movsd -24(%rsp), %xmm7
+ movsd 1560+_imlsLnHATab(%rip), %xmm5
+ movsd 1568+_imlsLnHATab(%rip), %xmm0
+ shrl $4, %edx
+ subsd 1584+_imlsLnHATab(%rip), %xmm7
+ lea (%r8,%r8,2), %r9d
+ movsd (%r10,%r9,8), %xmm8
+ lea -1023(%rcx,%rdx), %ecx
+ cvtsi2sd %ecx, %xmm6
+ subsd %xmm7, %xmm4
+ mulsd %xmm8, %xmm7
+ mulsd %xmm6, %xmm5
+ subsd %xmm3, %xmm7
+ mulsd %xmm4, %xmm8
+ mulsd %xmm0, %xmm6
+ addsd 8(%r10,%r9,8), %xmm5
+ addsd 16(%r10,%r9,8), %xmm6
+ movaps %xmm7, %xmm3
+ addsd %xmm8, %xmm3
+ mulsd %xmm3, %xmm9
+ addsd 1664+_imlsLnHATab(%rip), %xmm9
+ mulsd %xmm3, %xmm9
+ addsd 1656+_imlsLnHATab(%rip), %xmm9
+ mulsd %xmm3, %xmm9
+ addsd 1648+_imlsLnHATab(%rip), %xmm9
+ mulsd %xmm3, %xmm9
+ addsd 1640+_imlsLnHATab(%rip), %xmm9
+ mulsd %xmm3, %xmm9
+ addsd 1632+_imlsLnHATab(%rip), %xmm9
+ mulsd %xmm3, %xmm9
+ mulsd %xmm3, %xmm3
+ addsd 1624+_imlsLnHATab(%rip), %xmm9
+ mulsd %xmm3, %xmm9
+ addsd %xmm5, %xmm9
+ addsd %xmm6, %xmm9
+ addsd %xmm7, %xmm9
+ addsd %xmm8, %xmm9
+ cvtsd2ss %xmm9, %xmm9
+ movss %xmm9, (%rsi)
+ ret
+
+.LBL_2_7:
+
+ movsd 1672+_imlsLnHATab(%rip), %xmm2
+ movaps %xmm1, %xmm0
+ mulsd %xmm1, %xmm2
+ mulsd %xmm1, %xmm0
+ addsd 1664+_imlsLnHATab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1656+_imlsLnHATab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1648+_imlsLnHATab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1640+_imlsLnHATab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1632+_imlsLnHATab(%rip), %xmm2
+ mulsd %xmm1, %xmm2
+ addsd 1624+_imlsLnHATab(%rip), %xmm2
+ mulsd %xmm0, %xmm2
+ addsd %xmm1, %xmm2
+ cvtsd2ss %xmm2, %xmm2
+ movss %xmm2, (%rsi)
+ ret
+
+.LBL_2_8:
+
+ ucomisd %xmm0, %xmm2
+ jp .LBL_2_9
+ je .LBL_2_11
+
+.LBL_2_9:
+
+ divsd %xmm0, %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ movss %xmm0, (%rsi)
+ movl $1, %eax
+
+
+ ret
+
+.LBL_2_11:
+
+ movsd 1616+_imlsLnHATab(%rip), %xmm1
+ movl $2, %eax
+ xorps .L_2il0floatpacket.72(%rip), %xmm1
+ divsd %xmm0, %xmm1
+ cvtsd2ss %xmm1, %xmm1
+ movss %xmm1, (%rsi)
+ ret
+
+.LBL_2_12:
+
+ movb 3(%rdi), %dl
+ andb $-128, %dl
+ cmpb $-128, %dl
+ je .LBL_2_14
+
+.LBL_2_13:
+
+ movss (%rdi), %xmm0
+ mulss %xmm0, %xmm0
+ movss %xmm0, (%rsi)
+ ret
+
+.LBL_2_14:
+
+ testl $8388607, (%rdi)
+ jne .LBL_2_13
+
+
+ movsd 1608+_imlsLnHATab(%rip), %xmm0
+ movl $1, %eax
+ divsd %xmm0, %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ movss %xmm0, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_slog_cout_rare_internal,@function
+ .size __svml_slog_cout_rare_internal,.-__svml_slog_cout_rare_internal
+..LN__svml_slog_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_slog_data_internal_avx512:
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 3194499567
+ .long 3191881870
+ .long 3189820965
+ .long 3188177733
+ .long 3186034033
+ .long 3183874545
+ .long 3182098566
+ .long 3180625528
+ .long 3205885581
+ .long 3204713431
+ .long 3202986354
+ .long 3201283063
+ .long 3199818667
+ .long 3198553107
+ .long 3197454075
+ .long 3196495328
+ .long 1051342523
+ .long 1051102009
+ .long 1050719235
+ .long 1050259833
+ .long 1049764999
+ .long 1049260512
+ .long 1048762310
+ .long 1047983990
+ .long 1044808958
+ .long 1047891773
+ .long 1049356949
+ .long 1050157361
+ .long 1050708164
+ .long 1051065485
+ .long 1051272715
+ .long 1051363578
+ .long 3204447891
+ .long 3204432523
+ .long 3204384627
+ .long 3204298603
+ .long 3204175099
+ .long 3204017696
+ .long 3203831137
+ .long 3203620393
+ .long 3204845352
+ .long 3204676294
+ .long 3204570658
+ .long 3204507866
+ .long 3204473248
+ .long 3204456356
+ .long 3204449777
+ .long 3204448283
+ .long 1065353216
+ .long 1065353045
+ .long 1065352036
+ .long 1065349339
+ .long 1065344188
+ .long 1065335989
+ .long 1065324332
+ .long 1065308972
+ .long 1065328777
+ .long 1065341148
+ .long 1065347780
+ .long 1065351069
+ .long 1065352524
+ .long 1065353058
+ .long 1065353199
+ .long 1065353216
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 1060205080
+ .long 8388608
+ .long 8388608
+ .long 8388608
+ .long 8388608
+ .long 8388608
+ .long 8388608
+ .long 8388608
+ .long 8388608
+ .long 8388608
+ .long 8388608
+ .long 8388608
+ .long 8388608
+ .long 8388608
+ .long 8388608
+ .long 8388608
+ .long 8388608
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .long 2139095039
+ .type __svml_slog_data_internal_avx512,@object
+ .size __svml_slog_data_internal_avx512,512
+ .align 32
+_imlsLnHATab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1072660480
+ .long 1486880768
+ .long 1066410070
+ .long 1813744607
+ .long 3179892593
+ .long 0
+ .long 1072629760
+ .long 377487360
+ .long 1067416219
+ .long 919019713
+ .long 3179241129
+ .long 0
+ .long 1072599040
+ .long 1513619456
+ .long 1067944025
+ .long 874573033
+ .long 3178512940
+ .long 0
+ .long 1072570368
+ .long 3221749760
+ .long 1068427825
+ .long 4181665006
+ .long 3177478212
+ .long 0
+ .long 1072541696
+ .long 4162322432
+ .long 1068708823
+ .long 627020255
+ .long 1028629941
+ .long 0
+ .long 1072513024
+ .long 183107584
+ .long 1068957907
+ .long 2376703469
+ .long 1030233118
+ .long 0
+ .long 1072486400
+ .long 1053425664
+ .long 1069192557
+ .long 696277142
+ .long 1030474863
+ .long 0
+ .long 1072459776
+ .long 3996123136
+ .long 1069430535
+ .long 2630798680
+ .long 1028792016
+ .long 0
+ .long 1072435200
+ .long 3452764160
+ .long 1069600382
+ .long 624954044
+ .long 3177101741
+ .long 0
+ .long 1072409600
+ .long 207650816
+ .long 1069717971
+ .long 3272735636
+ .long 3175176575
+ .long 0
+ .long 1072386048
+ .long 2647228416
+ .long 1069827627
+ .long 3594228712
+ .long 1029303785
+ .long 0
+ .long 1072362496
+ .long 2712010752
+ .long 1069938736
+ .long 3653242769
+ .long 3176839013
+ .long 0
+ .long 1072338944
+ .long 374439936
+ .long 1070051337
+ .long 4072775574
+ .long 3176577495
+ .long 0
+ .long 1072316416
+ .long 3707174912
+ .long 1070160474
+ .long 1486946159
+ .long 1023930920
+ .long 0
+ .long 1072294912
+ .long 1443954688
+ .long 1070265993
+ .long 293532967
+ .long 3176278277
+ .long 0
+ .long 1072273408
+ .long 127762432
+ .long 1070372856
+ .long 3404145447
+ .long 3177023955
+ .long 0
+ .long 1072252928
+ .long 2053832704
+ .long 1070475911
+ .long 1575076358
+ .long 1029048544
+ .long 0
+ .long 1072232448
+ .long 3194093568
+ .long 1070580248
+ .long 1864169120
+ .long 1026866084
+ .long 0
+ .long 1072212992
+ .long 3917201408
+ .long 1070638340
+ .long 2362145246
+ .long 3175606197
+ .long 0
+ .long 1072193536
+ .long 3417112576
+ .long 1070689116
+ .long 70087871
+ .long 3174183577
+ .long 0
+ .long 1072175104
+ .long 4226777088
+ .long 1070737793
+ .long 1620410586
+ .long 3174700065
+ .long 0
+ .long 1072156672
+ .long 3168870400
+ .long 1070787042
+ .long 311238082
+ .long 1025781772
+ .long 0
+ .long 1072139264
+ .long 2150580224
+ .long 1070834092
+ .long 1664262457
+ .long 3175299224
+ .long 0
+ .long 1072120832
+ .long 4095672320
+ .long 1070884491
+ .long 1657121015
+ .long 3174674199
+ .long 0
+ .long 1072104448
+ .long 2595577856
+ .long 1070929805
+ .long 2014006823
+ .long 3175423830
+ .long 0
+ .long 1072087040
+ .long 3747176448
+ .long 1070978493
+ .long 144991708
+ .long 3171552042
+ .long 0
+ .long 1072070656
+ .long 1050435584
+ .long 1071024840
+ .long 3386227432
+ .long 1027876916
+ .long 0
+ .long 1072055296
+ .long 255516672
+ .long 1071068760
+ .long 2637594316
+ .long 1028049573
+ .long 0
+ .long 1072038912
+ .long 1640783872
+ .long 1071116120
+ .long 893247007
+ .long 1028452162
+ .long 0
+ .long 1072023552
+ .long 2940411904
+ .long 1071161011
+ .long 813240633
+ .long 1027664048
+ .long 0
+ .long 1072009216
+ .long 882917376
+ .long 1071203348
+ .long 2376597551
+ .long 3175828767
+ .long 0
+ .long 1071993856
+ .long 213966848
+ .long 1071249188
+ .long 2977204125
+ .long 1028350609
+ .long 0
+ .long 1071979520
+ .long 2921504768
+ .long 1071292428
+ .long 523218347
+ .long 1028007004
+ .long 0
+ .long 1071965184
+ .long 3186655232
+ .long 1071336119
+ .long 2352907891
+ .long 1026967097
+ .long 0
+ .long 1071951872
+ .long 2653364224
+ .long 1071377101
+ .long 2453418583
+ .long 3174349512
+ .long 0
+ .long 1071938560
+ .long 3759783936
+ .long 1071418487
+ .long 3685870403
+ .long 3175415611
+ .long 0
+ .long 1071925248
+ .long 2468364288
+ .long 1071460286
+ .long 1578908842
+ .long 3175510517
+ .long 0
+ .long 1071911936
+ .long 81903616
+ .long 1071502506
+ .long 770710269
+ .long 1026742353
+ .long 0
+ .long 1071899648
+ .long 2799321088
+ .long 1071541858
+ .long 3822266185
+ .long 1028434427
+ .long 0
+ .long 1071886336
+ .long 2142265344
+ .long 1071584911
+ .long 175901806
+ .long 3173871540
+ .long 0
+ .long 1071874048
+ .long 2944024576
+ .long 1071625048
+ .long 2747360403
+ .long 1027672159
+ .long 0
+ .long 1071862784
+ .long 3434301440
+ .long 1071653426
+ .long 4194662196
+ .long 3173893003
+ .long 0
+ .long 1071850496
+ .long 1547755520
+ .long 1071673870
+ .long 4248764681
+ .long 3172759087
+ .long 0
+ .long 1071839232
+ .long 4246986752
+ .long 1071692786
+ .long 2840205638
+ .long 3174430911
+ .long 0
+ .long 1071826944
+ .long 3418390528
+ .long 1071713619
+ .long 3041880823
+ .long 1025440860
+ .long 0
+ .long 1071816704
+ .long 4143093760
+ .long 1071731139
+ .long 2727587401
+ .long 3173965207
+ .long 0
+ .long 1071805440
+ .long 3121326080
+ .long 1071750582
+ .long 3173887692
+ .long 3174190163
+ .long 0
+ .long 1071794176
+ .long 1852893184
+ .long 1071770207
+ .long 3951060252
+ .long 1027348295
+ .long 0
+ .long 1071783936
+ .long 3636379648
+ .long 1071788208
+ .long 1684924001
+ .long 3174777086
+ .long 0
+ .long 1071773696
+ .long 516505600
+ .long 1071806366
+ .long 429181199
+ .long 3173211033
+ .long 0
+ .long 1071763456
+ .long 4186185728
+ .long 1071824681
+ .long 2044904577
+ .long 3174967132
+ .long 0
+ .long 1071753216
+ .long 877596672
+ .long 1071843159
+ .long 1396318105
+ .long 3173959727
+ .long 0
+ .long 1071742976
+ .long 2912784384
+ .long 1071861800
+ .long 448136789
+ .long 3174814192
+ .long 0
+ .long 1071733760
+ .long 3722825728
+ .long 1071878720
+ .long 714165913
+ .long 3173439560
+ .long 0
+ .long 1071723520
+ .long 2522374144
+ .long 1071897682
+ .long 3227240353
+ .long 3173394323
+ .long 0
+ .long 1071714304
+ .long 4165410816
+ .long 1071914895
+ .long 1365684961
+ .long 3174365060
+ .long 0
+ .long 1071705088
+ .long 3477135360
+ .long 1071932251
+ .long 368482985
+ .long 3174140821
+ .long 0
+ .long 1071695872
+ .long 2079455232
+ .long 1071949752
+ .long 1320576317
+ .long 1026822714
+ .long 0
+ .long 1071687680
+ .long 851795968
+ .long 1071965432
+ .long 3702467026
+ .long 1025224125
+ .long 0
+ .long 1071678464
+ .long 647743488
+ .long 1071983213
+ .long 772992109
+ .long 3174038459
+ .long 0
+ .long 1071670272
+ .long 26537984
+ .long 1071999146
+ .long 2360214276
+ .long 3174861275
+ .long 0
+ .long 1071661056
+ .long 1547061248
+ .long 1072017216
+ .long 2886781435
+ .long 1026423395
+ .long 0
+ .long 1071652864
+ .long 2854492160
+ .long 1072033410
+ .long 215631550
+ .long 1025638968
+ .long 0
+ .long 1071644672
+ .long 4277811200
+ .long 1072049730
+ .long 2479318832
+ .long 1026487127
+ .long 4277811200
+ .long 1072049730
+ .long 2479318832
+ .long 1026487127
+ .long 64
+ .long 1120927744
+ .long 0
+ .long 1094713344
+ .long 0
+ .long 1065615360
+ .long 0
+ .long 1135607808
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 3219128320
+ .long 1431655955
+ .long 1070945621
+ .long 610
+ .long 3218079744
+ .long 2545118337
+ .long 1070176665
+ .long 1378399119
+ .long 3217380693
+ .long 612435357
+ .long 1069697472
+ .long 94536557
+ .long 3217031348
+ .type _imlsLnHATab,@object
+ .size _imlsLnHATab,1680
+ .align 16
+.L_2il0floatpacket.72:
+ .long 0x00000000,0x80000000,0x00000000,0x00000000
+ .type .L_2il0floatpacket.72,@object
+ .size .L_2il0floatpacket.72,16
+ .align 8
+.L_2il0floatpacket.73:
+ .long 0x00000000,0x3ff00000
+ .type .L_2il0floatpacket.73,@object
+ .size .L_2il0floatpacket.73,8
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * 1) Calculating log2|x|
+ *
+ * Here we use the following formula.
+ * Let |x|=2^k1*X1, where k1 is integer, 1<=X1<2.
+ * Let C ~= 1/ln(2),
+ * Rcp1 ~= 1/X1, X2=Rcp1*X1,
+ * Rcp2 ~= 1/X2, X3=Rcp2*X2,
+ * Rcp3 ~= 1/X3, Rcp3C ~= C/X3.
+ * Then
+ *
+ * log2|x| = k1 + log2(1/Rcp1) + log2(1/Rcp2) + log2(C/Rcp3C) +
+ * + log2(X1*Rcp1*Rcp2*Rcp3C/C),
+ *
+ * where X1*Rcp1*Rcp2*Rcp3C = C*(1+q), q is very small.
+ *
+ * The values of Rcp1, log2(1/Rcp1), Rcp2, log2(1/Rcp2),
+ * Rcp3C, log2(C/Rcp3C) are taken from tables.
+ * Values of Rcp1, Rcp2, Rcp3C are such that RcpC=Rcp1*Rcp2*Rcp3C
+ * is exactly represented in target precision.
+ *
+ * log2(X1*Rcp1*Rcp2*Rcp3C/C) = log2(1+q) = ln(1+q)/ln2 =
+ * = 1/(ln2)*q - 1/(2ln2)*q^2 + 1/(3ln2)*q^3 - ... =
+ * = 1/(C*ln2)*cq - 1/(2*C^2*ln2)*cq^2 + 1/(3*C^3*ln2)*cq^3 - ... =
+ * = (1 + a1)*cq + a2*cq^2 + a3*cq^3 + ...,
+ * where
+ * cq=X1*Rcp1*Rcp2*Rcp3C-C,
+ * a1=1/(C*ln(2))-1 is small,
+ * a2=1/(2*C^2*ln2),
+ * a3=1/(3*C^3*ln2),
+ * ...
+ * We get 3 parts of log2 result: HH+HL+HLL ~= log2|x|.
+ *
+ * 2) Calculation of y*(HH+HL+HLL).
+ * Split y into YHi+YLo.
+ * Get high PH and medium PL parts of y*log2|x|.
+ * Get low PLL part of y*log2|x|.
+ * Now we have PH+PL+PLL ~= y*log2|x|.
+ *
+ * 3) Calculation of 2^(PH+PL+PLL).
+ *
+ * Mathematical idea of computing 2^(PH+PL+PLL) is the following.
+ * Let's represent PH+PL+PLL in the form N + j/2^expK + Z,
+ * where expK=7 in this implementation, N and j are integers,
+ * 0<=j<=2^expK-1, |Z|<2^(-expK-1). Hence
+ *
+ * 2^(PH+PL+PLL) ~= 2^N * 2^(j/2^expK) * 2^Z,
+ *
+ * where 2^(j/2^expK) is stored in a table, and
+ *
+ * 2^Z ~= 1 + B1*Z + B2*Z^2 ... + B5*Z^5.
+ *
+ * We compute 2^(PH+PL+PLL) as follows.
+ *
+ * Break PH into PHH + PHL, where PHH = N + j/2^expK.
+ * Z = PHL + PL + PLL
+ * Exp2Poly = B1*Z + B2*Z^2 ... + B5*Z^5
+ * Get 2^(j/2^expK) from table in the form THI+TLO.
+ * Now we have 2^(PH+PL+PLL) ~= 2^N * (THI + TLO) * (1 + Exp2Poly).
+ *
+ * Get significand of 2^(PH+PL+PLL) in the form ResHi+ResLo:
+ * ResHi := THI
+ * ResLo := THI * Exp2Poly + TLO
+ *
+ * Get exponent ERes of the result:
+ * Res := ResHi + ResLo:
+ * Result := ex(Res) + N
+ *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_pow8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_pow8
+
+__svml_pow8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $256, %rsp
+ vgetmantpd $10, {sae}, %zmm0, %zmm10
+
+/* Reduced argument: R = (DblRcp*Mantissa - 1) */
+ vmovups 640+__svml_dpow_data_internal_avx512(%rip), %zmm15
+
+/* Table lookup */
+ vmovups __svml_dpow_data_internal_avx512(%rip), %zmm2
+ vmovups 128+__svml_dpow_data_internal_avx512(%rip), %zmm3
+ vmovups 256+__svml_dpow_data_internal_avx512(%rip), %zmm5
+ vmovups 384+__svml_dpow_data_internal_avx512(%rip), %zmm4
+
+/* Prepare exponent correction: DblRcp<1.5? -- was 0.75 in initial AVX3 version, which used Mantissa in [1,2) */
+ vmovups 704+__svml_dpow_data_internal_avx512(%rip), %zmm14
+
+/* GetExp(x) */
+ vgetexppd {sae}, %zmm0, %zmm9
+
+/* P8_9 */
+ vmovups 960+__svml_dpow_data_internal_avx512(%rip), %zmm7
+
+/* DblRcp ~ 1/Mantissa */
+ vrcp14pd %zmm10, %zmm12
+
+/* x<=0 or Inf/NaN? */
+ vfpclasspd $223, %zmm0, %k0
+
+/* round DblRcp to 5 fractional bits (RN mode, no Precision exception) */
+ vrndscalepd $88, {sae}, %zmm12, %zmm13
+ vmovups 896+__svml_dpow_data_internal_avx512(%rip), %zmm12
+ kmovw %k0, %edx
+ vfmsub213pd {rn-sae}, %zmm15, %zmm13, %zmm10
+ vcmppd $17, {sae}, %zmm14, %zmm13, %k1
+ vfmadd231pd {rn-sae}, %zmm10, %zmm12, %zmm7
+
+/* Prepare table index */
+ vpsrlq $47, %zmm13, %zmm8
+ vmovups 1024+__svml_dpow_data_internal_avx512(%rip), %zmm13
+ vpermt2pd 64+__svml_dpow_data_internal_avx512(%rip), %zmm8, %zmm2
+ vpermt2pd 192+__svml_dpow_data_internal_avx512(%rip), %zmm8, %zmm3
+ vpermt2pd 320+__svml_dpow_data_internal_avx512(%rip), %zmm8, %zmm5
+ vpermt2pd 448+__svml_dpow_data_internal_avx512(%rip), %zmm8, %zmm4
+
+/* add 1 to Expon if DblRcp<1.5 */
+ vaddpd {rn-sae}, %zmm15, %zmm9, %zmm9{%k1}
+ vmovaps %zmm1, %zmm11
+ vpsllq $59, %zmm8, %zmm1
+
+/* R^2 */
+ vmulpd {rn-sae}, %zmm10, %zmm10, %zmm8
+ vpmovq2m %zmm1, %k2
+
+/* y Inf/NaN? */
+ vfpclasspd $153, %zmm11, %k3
+
+/* P6_7 */
+ vmovups 1088+__svml_dpow_data_internal_avx512(%rip), %zmm1
+ vblendmpd %zmm3, %zmm2, %zmm14{%k2}
+ vblendmpd %zmm4, %zmm5, %zmm6{%k2}
+
+/* P4_5 */
+ vmovups 1216+__svml_dpow_data_internal_avx512(%rip), %zmm2
+ vfmadd231pd {rn-sae}, %zmm10, %zmm13, %zmm1
+ vmovups 832+__svml_dpow_data_internal_avx512(%rip), %zmm4
+ vmovups 768+__svml_dpow_data_internal_avx512(%rip), %zmm3
+
+/* Expon + Th */
+ vaddpd {rn-sae}, %zmm9, %zmm14, %zmm15
+ vmovups 1152+__svml_dpow_data_internal_avx512(%rip), %zmm9
+
+/* P6_9 */
+ vfmadd213pd {rn-sae}, %zmm1, %zmm8, %zmm7
+
+/* P2_3 */
+ vmovups 1344+__svml_dpow_data_internal_avx512(%rip), %zmm1
+
+/* P1_2 */
+ vmovups 1920+__svml_dpow_data_internal_avx512(%rip), %zmm14
+ vfmadd231pd {rn-sae}, %zmm10, %zmm9, %zmm2
+ kmovw %k3, %eax
+
+/* P4_9 */
+ vfmadd213pd {rn-sae}, %zmm2, %zmm8, %zmm7
+
+/* R2l */
+ vmovaps %zmm10, %zmm5
+ orl %eax, %edx
+ vfmsub213pd {rn-sae}, %zmm8, %zmm10, %zmm5
+
+/* Tl + R2l*c2h */
+ vfmadd213pd {rn-sae}, %zmm6, %zmm4, %zmm5
+ vmovups 1280+__svml_dpow_data_internal_avx512(%rip), %zmm6
+ vfmadd231pd {rn-sae}, %zmm10, %zmm6, %zmm1
+
+/* Expon + Th+ R*c1h */
+ vmovaps %zmm15, %zmm12
+ vfmadd231pd {rn-sae}, %zmm10, %zmm3, %zmm12
+
+/* P2_9 */
+ vfmadd213pd {rn-sae}, %zmm1, %zmm8, %zmm7
+
+/* (R*c1h)_h */
+ vsubpd {rn-sae}, %zmm15, %zmm12, %zmm9
+
+/* Tl + R2l*c2h + R2*P2_9 */
+ vfmadd231pd {rn-sae}, %zmm8, %zmm7, %zmm5
+ vmovups 1408+__svml_dpow_data_internal_avx512(%rip), %zmm7
+
+/* (R*c1h)_l */
+ vfmsub231pd {rn-sae}, %zmm3, %zmm10, %zmm9
+
+/* Expon + Th+ R*c1h + R2*c2h */
+ vmovaps %zmm12, %zmm13
+ vfmadd231pd {rn-sae}, %zmm8, %zmm4, %zmm13
+
+/* R*c1l + (R*c1h)_l */
+ vfmadd213pd {rn-sae}, %zmm9, %zmm7, %zmm10
+ vmovups 1728+__svml_dpow_data_internal_avx512(%rip), %zmm9
+
+/* High2 + Tlh */
+ vaddpd {rn-sae}, %zmm5, %zmm13, %zmm6
+
+/* (R2*c2h)_h */
+ vsubpd {rn-sae}, %zmm12, %zmm13, %zmm2
+
+/* P3_4 */
+ vmovups 1792+__svml_dpow_data_internal_avx512(%rip), %zmm12
+
+/* y*High */
+ vmulpd {rz-sae}, %zmm11, %zmm6, %zmm3
+
+/* (R2*c2h)_l */
+ vfmsub213pd {rn-sae}, %zmm2, %zmm4, %zmm8
+ vsubpd {rn-sae}, %zmm13, %zmm6, %zmm1
+
+/* (y*High)_low */
+ vfmsub213pd {rz-sae}, %zmm3, %zmm11, %zmm6
+
+/* Tll */
+ vsubpd {rn-sae}, %zmm1, %zmm5, %zmm4
+
+/* R*c1l + (R*c1h)_l+(R2*c2h)_l */
+ vaddpd {rn-sae}, %zmm8, %zmm10, %zmm10
+ vmovups 1472+__svml_dpow_data_internal_avx512(%rip), %zmm1
+ vmovups 1600+__svml_dpow_data_internal_avx512(%rip), %zmm8
+
+/* Tll + R*c1l + (R*c1h)_l */
+ vaddpd {rn-sae}, %zmm10, %zmm4, %zmm5
+ vaddpd {rd-sae}, %zmm1, %zmm3, %zmm2
+
+/*
+ * /
+ * exp2 computation starts here
+ */
+ vreducepd $65, {sae}, %zmm3, %zmm4
+
+/* Zl = y*Tll + Zl */
+ vfmadd213pd {rz-sae}, %zmm6, %zmm11, %zmm5
+
+/* P5_6 */
+ vmovups 1664+__svml_dpow_data_internal_avx512(%rip), %zmm1
+ vmovups 1856+__svml_dpow_data_internal_avx512(%rip), %zmm10
+ vaddpd {rn-sae}, %zmm5, %zmm4, %zmm7
+ vandpd 2176+__svml_dpow_data_internal_avx512(%rip), %zmm3, %zmm3
+
+/* Table lookup: The, Tle/The */
+ vmovups 512+__svml_dpow_data_internal_avx512(%rip), %zmm4
+
+/*
+ * scaled result
+ * Filter very large |y*log2(x)| and scale final result for LRB2
+ */
+ vmovups 2240+__svml_dpow_data_internal_avx512(%rip), %zmm5
+
+/* ensure |R|<2 even for special cases */
+ vandpd 1536+__svml_dpow_data_internal_avx512(%rip), %zmm7, %zmm15
+ vpermt2pd 576+__svml_dpow_data_internal_avx512(%rip), %zmm2, %zmm4
+ vcmppd $22, {sae}, %zmm5, %zmm3, %k0
+
+/* Re^2 */
+ vmulpd {rn-sae}, %zmm15, %zmm15, %zmm13
+
+/* R*The */
+ vmulpd {rn-sae}, %zmm4, %zmm15, %zmm7
+ vfmadd231pd {rn-sae}, %zmm15, %zmm8, %zmm1
+ vfmadd231pd {rn-sae}, %zmm15, %zmm9, %zmm12
+ vfmadd231pd {rn-sae}, %zmm15, %zmm10, %zmm14
+ vpsllq $48, %zmm2, %zmm2
+ vfmadd213pd {rn-sae}, %zmm12, %zmm13, %zmm1
+ vandpd 2304+__svml_dpow_data_internal_avx512(%rip), %zmm2, %zmm2
+ kmovw %k0, %ecx
+ vfmadd213pd {rn-sae}, %zmm14, %zmm13, %zmm1
+
+/* The + The*R*poly */
+ vfmadd213pd {rn-sae}, %zmm4, %zmm7, %zmm1
+ orl %ecx, %edx
+ vmulpd {rn-sae}, %zmm2, %zmm1, %zmm1
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ vmovaps %zmm1, %zmm0
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm0, 64(%rsp)
+ vmovups %zmm11, 128(%rsp)
+ vmovups %zmm1, 192(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x28, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x38, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x18, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x08, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 192(%rsp), %zmm1
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x28, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x38, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x18, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x08, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+ lea 192(%rsp,%r12,8), %rdx
+
+ call __svml_dpow_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_pow8,@function
+ .size __svml_pow8,.-__svml_pow8
+..LN__svml_pow8.0:
+
+.L_2__routine_start___svml_dpow_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dpow_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ pushq %r12
+ .cfi_def_cfa_offset 16
+ .cfi_offset 12, -16
+ pushq %r13
+ .cfi_def_cfa_offset 24
+ .cfi_offset 13, -24
+ pushq %r15
+ .cfi_def_cfa_offset 32
+ .cfi_offset 15, -32
+ pushq %rbx
+ .cfi_def_cfa_offset 40
+ .cfi_offset 3, -40
+ movq %rdx, %r8
+ movsd 6824+__dpow_la_CoutTab(%rip), %xmm1
+ xorl %eax, %eax
+ movsd (%rdi), %xmm3
+ movsd (%rsi), %xmm0
+ mulsd %xmm1, %xmm3
+ mulsd %xmm1, %xmm0
+ movsd %xmm3, -72(%rsp)
+ movsd %xmm0, -16(%rsp)
+ movzwl -66(%rsp), %r13d
+ movzwl -10(%rsp), %edx
+ andl $32752, %r13d
+ movzbl -65(%rsp), %r12d
+ andl $32752, %edx
+ movb -9(%rsp), %bl
+ andl $128, %r12d
+ andb $-128, %bl
+ shrl $4, %r13d
+ shrl $4, %edx
+ shrl $7, %r12d
+ shrb $7, %bl
+ testl $1048575, -68(%rsp)
+ jne .LBL_2_4
+
+
+ cmpl $0, -72(%rsp)
+ jne .LBL_2_4
+
+
+ movb $1, %r11b
+ jmp .LBL_2_5
+
+.LBL_2_4:
+
+ xorb %r11b, %r11b
+
+.LBL_2_5:
+
+ movl -12(%rsp), %ecx
+ movl -16(%rsp), %edi
+ andl $1048575, %ecx
+ jne .LBL_2_8
+
+
+ testl %edi, %edi
+ jne .LBL_2_8
+
+
+ movl $1, %r10d
+ jmp .LBL_2_9
+
+.LBL_2_8:
+
+ xorl %r10d, %r10d
+
+.LBL_2_9:
+
+ movl %edx, %r9d
+ xorl %esi, %esi
+ cmpl $2047, %edx
+ setne %sil
+ shll $20, %r9d
+ orl %ecx, %r9d
+ movl %edi, %ecx
+ orl %r9d, %ecx
+ je .LBL_2_24
+
+
+ lea -1023(%rdx), %ecx
+ cmpl $1023, %edx
+ jl .LBL_2_23
+
+
+ testl %esi, %esi
+ je .LBL_2_23
+
+
+ cmpl $20, %ecx
+ jg .LBL_2_16
+
+
+ movl %r9d, %r15d
+ shll %cl, %r15d
+ shll $12, %r15d
+ orl %edi, %r15d
+ je .LBL_2_15
+
+.LBL_2_14:
+
+ xorl %r9d, %r9d
+ jmp .LBL_2_21
+
+.LBL_2_15:
+
+ lea -1012(%rdx), %ecx
+ shll %cl, %r9d
+ notl %r9d
+ shrl $31, %r9d
+ incl %r9d
+ jmp .LBL_2_21
+
+.LBL_2_16:
+
+ cmpl $53, %ecx
+ jge .LBL_2_20
+
+
+ lea -1012(%rdx), %ecx
+ shll %cl, %edi
+ testl $2147483647, %edi
+ jne .LBL_2_14
+
+
+ notl %edi
+ shrl $31, %edi
+ lea 1(%rdi), %r9d
+ jmp .LBL_2_21
+
+.LBL_2_20:
+
+ movl $2, %r9d
+
+.LBL_2_21:
+
+ testl %r12d, %r12d
+ jne .LBL_2_29
+
+
+ cmpl $1023, %r13d
+ jne .LBL_2_29
+ jmp .LBL_2_57
+
+.LBL_2_23:
+
+ xorl %r9d, %r9d
+ jmp .LBL_2_25
+
+.LBL_2_24:
+
+ movl $2, %r9d
+
+.LBL_2_25:
+
+ testl %r12d, %r12d
+ jne .LBL_2_27
+
+
+ cmpl $1023, %r13d
+ je .LBL_2_74
+
+.LBL_2_27:
+
+ testl %edx, %edx
+ jne .LBL_2_29
+
+
+ testl %r10d, %r10d
+ jne .LBL_2_55
+
+.LBL_2_29:
+
+ cmpl $2047, %r13d
+ je .LBL_2_31
+
+.LBL_2_30:
+
+ movb $1, %cl
+ jmp .LBL_2_32
+
+.LBL_2_31:
+
+ xorb %cl, %cl
+
+.LBL_2_32:
+
+ orb %cl, %r11b
+ je .LBL_2_54
+
+
+ orl %esi, %r10d
+ je .LBL_2_54
+
+
+ movsd 6816+__dpow_la_CoutTab(%rip), %xmm2
+ ucomisd %xmm2, %xmm3
+ jp .LBL_2_35
+ je .LBL_2_71
+
+.LBL_2_35:
+
+ ucomisd 6832+__dpow_la_CoutTab(%rip), %xmm3
+ jp .LBL_2_36
+ je .LBL_2_68
+
+.LBL_2_36:
+
+ testb %cl, %cl
+ je .LBL_2_47
+
+
+ testl %esi, %esi
+ je .LBL_2_47
+
+
+ comisd %xmm2, %xmm3
+ ja .LBL_2_40
+
+
+ testl %r9d, %r9d
+ je .LBL_2_46
+
+.LBL_2_40:
+
+ lea 6824+__dpow_la_CoutTab(%rip), %rcx
+ andl %r12d, %r9d
+ movsd %xmm3, -72(%rsp)
+ andb $127, -65(%rsp)
+ movsd (%rcx,%r9,8), %xmm0
+ xorl %ecx, %ecx
+ testl %r13d, %r13d
+ jne .LBL_2_42
+
+
+ movsd -72(%rsp), %xmm2
+ movl $-200, %ecx
+ mulsd 6864+__dpow_la_CoutTab(%rip), %xmm2
+ movsd %xmm2, -72(%rsp)
+ jmp .LBL_2_43
+
+.LBL_2_42:
+
+ movsd -72(%rsp), %xmm2
+
+.LBL_2_43:
+
+ movzwl -66(%rsp), %esi
+ pxor %xmm7, %xmm7
+ andl $32752, %esi
+ shrl $4, %esi
+ movl -68(%rsp), %r9d
+ shll $20, %esi
+ andl $1048575, %r9d
+ movsd %xmm2, -56(%rsp)
+ orl %r9d, %esi
+ movzwl -50(%rsp), %edi
+ addl $-1072152576, %esi
+ andl $-32753, %edi
+ addl $16368, %edi
+ movw %di, -50(%rsp)
+ sarl $20, %esi
+ movl -52(%rsp), %r10d
+ addl %ecx, %esi
+ lea __dpow_la_CoutTab(%rip), %rcx
+ andl $1032192, %r10d
+ addl $16384, %r10d
+ shrl $15, %r10d
+ movsd -56(%rsp), %xmm2
+ movsd (%rcx,%r10,8), %xmm5
+ addl %r10d, %r10d
+ movaps %xmm5, %xmm6
+ movsd 6856+__dpow_la_CoutTab(%rip), %xmm14
+ mulsd %xmm2, %xmm6
+ cvtsi2sd %esi, %xmm7
+ mulsd %xmm2, %xmm14
+ addsd 264(%rcx,%r10,8), %xmm7
+ movsd %xmm6, -48(%rsp)
+ movsd %xmm14, -32(%rsp)
+ movl -44(%rsp), %r11d
+ andl $64512, %r11d
+ movsd -32(%rsp), %xmm15
+ addl $1024, %r11d
+ shrl $11, %r11d
+ subsd -56(%rsp), %xmm15
+ movsd 792(%rcx,%r11,8), %xmm12
+ addl %r11d, %r11d
+ mulsd %xmm12, %xmm6
+ addsd 1056(%rcx,%r11,8), %xmm7
+ mulsd %xmm12, %xmm5
+ movsd %xmm15, -24(%rsp)
+ movsd -32(%rsp), %xmm4
+ movsd -24(%rsp), %xmm3
+ movsd %xmm6, -40(%rsp)
+ subsd %xmm3, %xmm4
+ movl -36(%rsp), %r12d
+ andl $4080, %r12d
+ addl $16, %r12d
+ movsd %xmm4, -32(%rsp)
+ shrl $5, %r12d
+ movsd -32(%rsp), %xmm12
+ movsd 1584(%rcx,%r12,8), %xmm13
+ addl %r12d, %r12d
+ mulsd %xmm13, %xmm5
+ subsd %xmm12, %xmm2
+ addsd 2616(%rcx,%r12,8), %xmm7
+ mulsd %xmm13, %xmm6
+ movsd %xmm2, -24(%rsp)
+ movaps %xmm6, %xmm8
+ movsd 6856+__dpow_la_CoutTab(%rip), %xmm2
+ mulsd %xmm5, %xmm2
+ subsd 6848+__dpow_la_CoutTab(%rip), %xmm8
+ movsd -32(%rsp), %xmm3
+ movsd -24(%rsp), %xmm4
+ movsd %xmm2, -32(%rsp)
+ movsd -32(%rsp), %xmm13
+ movsd 272(%rcx,%r10,8), %xmm11
+ subsd %xmm5, %xmm13
+ movsd %xmm13, -24(%rsp)
+ movsd -32(%rsp), %xmm2
+ movsd -24(%rsp), %xmm14
+ movsd 1064(%rcx,%r11,8), %xmm10
+ subsd %xmm14, %xmm2
+ movsd %xmm2, -32(%rsp)
+ movaps %xmm3, %xmm2
+ movsd -32(%rsp), %xmm15
+ movsd 2624(%rcx,%r12,8), %xmm9
+ subsd %xmm15, %xmm5
+ movsd %xmm5, -24(%rsp)
+ movsd -32(%rsp), %xmm5
+ mulsd %xmm5, %xmm2
+ mulsd %xmm4, %xmm5
+ subsd %xmm6, %xmm2
+ movaps %xmm7, %xmm6
+ addsd %xmm5, %xmm2
+ addsd %xmm8, %xmm6
+ movsd -24(%rsp), %xmm12
+ mulsd %xmm12, %xmm3
+ mulsd %xmm12, %xmm4
+ addsd %xmm3, %xmm2
+ movsd %xmm6, -32(%rsp)
+ addsd %xmm4, %xmm2
+ movsd -32(%rsp), %xmm3
+ subsd %xmm3, %xmm7
+ addsd %xmm8, %xmm7
+ movsd %xmm7, -24(%rsp)
+ movsd -32(%rsp), %xmm4
+ movsd %xmm4, -64(%rsp)
+ movzwl -58(%rsp), %ecx
+ andl $32752, %ecx
+ shrl $4, %ecx
+ addl %edx, %ecx
+ movsd -24(%rsp), %xmm3
+ cmpl $2057, %ecx
+ jge .LBL_2_67
+
+
+ cmpl $1984, %ecx
+ jg .LBL_2_58
+
+
+ movsd %xmm1, -32(%rsp)
+ movsd -32(%rsp), %xmm1
+ addsd 6808+__dpow_la_CoutTab(%rip), %xmm1
+ movsd %xmm1, -32(%rsp)
+ movsd -32(%rsp), %xmm2
+ mulsd %xmm0, %xmm2
+ jmp .LBL_2_56
+
+.LBL_2_46:
+
+ movsd %xmm2, -32(%rsp)
+ movl $1, %eax
+ movsd -32(%rsp), %xmm1
+ movsd -32(%rsp), %xmm0
+ divsd %xmm0, %xmm1
+ movsd %xmm1, -32(%rsp)
+ movsd -32(%rsp), %xmm2
+ jmp .LBL_2_56
+
+.LBL_2_47:
+
+ cmpl $1023, %r13d
+ jge .LBL_2_51
+
+
+ testb %bl, %bl
+ je .LBL_2_56
+
+
+ movaps %xmm0, %xmm2
+ mulsd %xmm0, %xmm2
+ jmp .LBL_2_56
+
+.LBL_2_51:
+
+ testb %bl, %bl
+ je .LBL_2_53
+
+
+ lea 6824+__dpow_la_CoutTab(%rip), %rdx
+ andl %r12d, %r9d
+ mulsd (%rdx,%r9,8), %xmm2
+ jmp .LBL_2_56
+
+.LBL_2_53:
+
+ mulsd %xmm3, %xmm3
+ lea 6824+__dpow_la_CoutTab(%rip), %rdx
+ mulsd %xmm0, %xmm3
+ andl %r12d, %r9d
+ movaps %xmm3, %xmm2
+ mulsd (%rdx,%r9,8), %xmm2
+ jmp .LBL_2_56
+
+.LBL_2_54:
+
+ movaps %xmm3, %xmm2
+ addsd %xmm0, %xmm2
+ jmp .LBL_2_56
+
+.LBL_2_55:
+
+ movq 6824+__dpow_la_CoutTab(%rip), %rdx
+ addsd %xmm0, %xmm3
+ movsd %xmm3, -32(%rsp)
+ movq %rdx, -24(%rsp)
+ movb -25(%rsp), %cl
+ movb -17(%rsp), %bl
+ andb $-128, %cl
+ andb $127, %bl
+ orb %cl, %bl
+ movb %bl, -17(%rsp)
+ movsd -24(%rsp), %xmm2
+ movsd -24(%rsp), %xmm0
+ mulsd %xmm0, %xmm2
+
+.LBL_2_56:
+
+ movsd %xmm2, (%r8)
+ .cfi_restore 3
+ popq %rbx
+ .cfi_def_cfa_offset 32
+ .cfi_restore 15
+ popq %r15
+ .cfi_def_cfa_offset 24
+ .cfi_restore 13
+ popq %r13
+ .cfi_def_cfa_offset 16
+ .cfi_restore 12
+ popq %r12
+ .cfi_def_cfa_offset 8
+ ret
+ .cfi_def_cfa_offset 40
+ .cfi_offset 3, -40
+ .cfi_offset 12, -16
+ .cfi_offset 13, -24
+ .cfi_offset 15, -32
+
+.LBL_2_57:
+
+ testb %r11b, %r11b
+ je .LBL_2_30
+ jmp .LBL_2_55
+
+.LBL_2_58:
+
+ lea 6752+__dpow_la_CoutTab(%rip), %rdx
+ movsd (%rdx), %xmm6
+ lea 4688+__dpow_la_CoutTab(%rip), %rcx
+ movsd -64(%rsp), %xmm7
+ addsd %xmm2, %xmm8
+ addsd %xmm9, %xmm10
+ addsd %xmm3, %xmm2
+ mulsd %xmm8, %xmm6
+ addsd %xmm10, %xmm11
+ addsd -8(%rdx), %xmm6
+ addsd %xmm2, %xmm11
+ mulsd %xmm8, %xmm6
+ movaps %xmm11, %xmm9
+ addsd -16(%rdx), %xmm6
+ mulsd %xmm8, %xmm6
+ addsd -24(%rdx), %xmm6
+ mulsd %xmm8, %xmm6
+ addsd %xmm6, %xmm4
+ lea -32(%rsp), %rbx
+ movsd %xmm4, (%rbx)
+ movsd (%rbx), %xmm8
+ subsd %xmm8, %xmm7
+ addsd %xmm6, %xmm7
+ lea -24(%rsp), %rsi
+ movsd %xmm7, (%rsi)
+ movsd (%rbx), %xmm12
+ movsd (%rsi), %xmm5
+ addsd %xmm12, %xmm9
+ movsd %xmm9, (%rbx)
+ movsd (%rbx), %xmm10
+ subsd %xmm10, %xmm12
+ addsd %xmm11, %xmm12
+ movsd 104(%rdx), %xmm11
+ movsd %xmm12, (%rsi)
+ movsd (%rbx), %xmm3
+ mulsd %xmm3, %xmm11
+ movsd (%rsi), %xmm4
+ movsd %xmm11, (%rbx)
+ addsd %xmm5, %xmm4
+ movsd (%rbx), %xmm13
+ lea -16(%rsp), %rdi
+ movsd (%rdi), %xmm11
+ subsd %xmm3, %xmm13
+ mulsd (%rdi), %xmm4
+ movsd %xmm13, (%rsi)
+ movaps %xmm11, %xmm6
+ movsd (%rbx), %xmm15
+ movsd (%rsi), %xmm14
+ mulsd 104(%rdx), %xmm6
+ subsd %xmm14, %xmm15
+ movsd %xmm15, (%rbx)
+ movsd (%rbx), %xmm2
+ movsd 88(%rdx), %xmm5
+ subsd %xmm2, %xmm3
+ movsd %xmm3, (%rsi)
+ movsd (%rbx), %xmm3
+ movsd (%rsi), %xmm2
+ movsd %xmm6, (%rbx)
+ movsd (%rbx), %xmm7
+ subsd (%rdi), %xmm7
+ movsd %xmm7, (%rsi)
+ movsd (%rbx), %xmm9
+ movsd (%rsi), %xmm8
+ subsd %xmm8, %xmm9
+ movsd %xmm9, (%rbx)
+ movsd (%rbx), %xmm10
+ subsd %xmm10, %xmm11
+ movsd %xmm11, (%rsi)
+ movsd (%rbx), %xmm6
+ movaps %xmm6, %xmm14
+ mulsd %xmm3, %xmm14
+ mulsd %xmm2, %xmm6
+ addsd %xmm14, %xmm5
+ movsd (%rsi), %xmm15
+ mulsd %xmm15, %xmm2
+ mulsd %xmm15, %xmm3
+ addsd %xmm2, %xmm6
+ movsd %xmm5, (%rbx)
+ addsd %xmm3, %xmm6
+ movsd (%rbx), %xmm12
+ addsd %xmm4, %xmm6
+ subsd 88(%rdx), %xmm12
+ movsd %xmm12, -88(%rsp)
+ movsd -88(%rsp), %xmm13
+ movsd 40(%rdx), %xmm3
+ subsd %xmm13, %xmm14
+ movsd %xmm14, -80(%rsp)
+ movsd -80(%rsp), %xmm5
+ movl (%rbx), %edx
+ movl %edx, %esi
+ andl $127, %edx
+ addsd %xmm6, %xmm5
+ mulsd %xmm5, %xmm3
+ addl %edx, %edx
+ movsd -8(%rcx,%rdx,8), %xmm2
+ sarl $7, %esi
+ lea 6784+__dpow_la_CoutTab(%rip), %r9
+ addsd (%r9), %xmm3
+ mulsd %xmm5, %xmm3
+ addsd -8(%r9), %xmm3
+ mulsd %xmm5, %xmm3
+ addsd -16(%r9), %xmm3
+ mulsd %xmm5, %xmm3
+ addsd -24(%r9), %xmm3
+ mulsd %xmm5, %xmm3
+ mulsd %xmm2, %xmm3
+ addsd (%rcx,%rdx,8), %xmm3
+ movaps %xmm3, %xmm4
+ addsd %xmm2, %xmm4
+ movsd %xmm4, -72(%rsp)
+ movzwl -66(%rsp), %ecx
+ movl %ecx, %ebx
+ andl $32752, %ebx
+ shrl $4, %ebx
+ lea -1023(%rsi,%rbx), %edx
+ cmpl $1024, %edx
+ jge .LBL_2_66
+
+
+ cmpl $-1022, %edx
+ jl .LBL_2_61
+
+
+ andl $-32753, %ecx
+ lea 1023(%rdx), %edx
+ andl $2047, %edx
+ shll $4, %edx
+ orl %edx, %ecx
+ movw %cx, -66(%rsp)
+ movsd -72(%rsp), %xmm2
+ mulsd %xmm0, %xmm2
+ movsd %xmm2, -72(%rsp)
+ jmp .LBL_2_56
+
+.LBL_2_61:
+
+ cmpl $-1032, %edx
+ jl .LBL_2_63
+
+
+ lea -32(%rsp), %rcx
+ movsd %xmm4, (%rcx)
+ addl $1223, %esi
+ movsd (%rcx), %xmm1
+ andl $2047, %esi
+ lea 6824+__dpow_la_CoutTab(%rip), %rbx
+ movq (%rbx), %rdx
+ subsd %xmm1, %xmm2
+ movq %rdx, -64(%rsp)
+ addsd %xmm2, %xmm3
+ lea -24(%rsp), %rdi
+ movsd %xmm3, (%rdi)
+ movsd (%rcx), %xmm7
+ movsd 32(%rbx), %xmm2
+ mulsd %xmm7, %xmm2
+ movsd (%rdi), %xmm9
+ movsd %xmm2, (%rcx)
+ movsd (%rcx), %xmm3
+ shrq $48, %rdx
+ subsd %xmm7, %xmm3
+ movsd %xmm3, (%rdi)
+ andl $-32753, %edx
+ movsd (%rcx), %xmm5
+ movsd (%rdi), %xmm4
+ shll $4, %esi
+ subsd %xmm4, %xmm5
+ movsd %xmm5, (%rcx)
+ orl %esi, %edx
+ lea -32(%rsp), %rsi
+ movsd (%rsi), %xmm6
+ movw %dx, -58(%rsp)
+ subsd %xmm6, %xmm7
+ movsd %xmm7, (%rdi)
+ movsd (%rsi), %xmm11
+ movsd (%rdi), %xmm12
+ movsd -64(%rsp), %xmm10
+ addsd %xmm9, %xmm12
+ mulsd %xmm10, %xmm11
+ mulsd %xmm10, %xmm12
+ movsd 48(%rbx), %xmm8
+ addsd %xmm11, %xmm12
+ mulsd %xmm8, %xmm0
+ movq -16(%rbx), %rcx
+ movq %rcx, (%rsi)
+ lea -32(%rsp), %rcx
+ movsd (%rcx), %xmm14
+ movsd (%rcx), %xmm13
+ mulsd %xmm13, %xmm14
+ mulsd %xmm12, %xmm0
+ movsd %xmm14, (%rcx)
+ movsd (%rcx), %xmm15
+ addsd %xmm15, %xmm0
+ movaps %xmm0, %xmm2
+ movsd %xmm2, -72(%rsp)
+ jmp .LBL_2_56
+
+.LBL_2_63:
+
+ cmpl $-1084, %edx
+ jl .LBL_2_65
+
+
+ addl $1223, %esi
+ andl $2047, %esi
+ lea 6830+__dpow_la_CoutTab(%rip), %rcx
+ movzwl (%rcx), %edx
+ shll $4, %esi
+ andl $-32753, %edx
+ movsd %xmm1, -64(%rsp)
+ orl %esi, %edx
+ movw %dx, -58(%rsp)
+ movsd 42(%rcx), %xmm2
+ movsd -64(%rsp), %xmm1
+ mulsd %xmm2, %xmm0
+ mulsd %xmm1, %xmm4
+ movq -22(%rcx), %rcx
+ movq %rcx, -32(%rsp)
+ mulsd %xmm4, %xmm0
+ lea -32(%rsp), %rcx
+ movsd (%rcx), %xmm4
+ movsd (%rcx), %xmm3
+ mulsd %xmm3, %xmm4
+ movsd %xmm4, (%rcx)
+ movsd (%rcx), %xmm5
+ subsd %xmm5, %xmm0
+ movaps %xmm0, %xmm2
+ movsd %xmm2, -72(%rsp)
+ jmp .LBL_2_56
+
+.LBL_2_65:
+
+ movq 6808+__dpow_la_CoutTab(%rip), %rdx
+ movq %rdx, -32(%rsp)
+ lea -32(%rsp), %rdx
+ movsd (%rdx), %xmm2
+ movsd (%rdx), %xmm1
+ mulsd %xmm1, %xmm2
+ movsd %xmm2, (%rdx)
+ movsd (%rdx), %xmm3
+ mulsd %xmm3, %xmm0
+ movaps %xmm0, %xmm2
+ movsd %xmm2, -72(%rsp)
+ jmp .LBL_2_56
+
+.LBL_2_66:
+
+ movq 6800+__dpow_la_CoutTab(%rip), %rdx
+ movq %rdx, -32(%rsp)
+ lea -32(%rsp), %rdx
+ movsd (%rdx), %xmm2
+ movsd (%rdx), %xmm1
+ mulsd %xmm1, %xmm2
+ movsd %xmm2, (%rdx)
+ movsd (%rdx), %xmm3
+ mulsd %xmm3, %xmm0
+ movaps %xmm0, %xmm2
+ movsd %xmm2, -72(%rsp)
+ jmp .LBL_2_56
+
+.LBL_2_67:
+
+ movb -57(%rsp), %dl
+ lea 6800+__dpow_la_CoutTab(%rip), %rcx
+ andb $-128, %dl
+ shrb $7, %dl
+ xorb %dl, %bl
+ movzbl %bl, %ebx
+ movsd (%rcx,%rbx,8), %xmm2
+ mulsd %xmm2, %xmm2
+ mulsd %xmm0, %xmm2
+ jmp .LBL_2_56
+
+.LBL_2_68:
+
+ testl %r9d, %r9d
+ jne .LBL_2_70
+
+
+ testl %esi, %esi
+ jne .LBL_2_36
+
+.LBL_2_70:
+
+ lea 6824+__dpow_la_CoutTab(%rip), %rdx
+ andl $1, %r9d
+ movsd (%rdx,%r9,8), %xmm2
+ jmp .LBL_2_56
+
+.LBL_2_71:
+
+ mulsd %xmm3, %xmm3
+ testb %bl, %bl
+ je .LBL_2_73
+
+
+ lea 6824+__dpow_la_CoutTab(%rip), %rax
+ andl %r12d, %r9d
+ movsd (%rax,%r9,8), %xmm2
+ movl $1, %eax
+ divsd %xmm3, %xmm2
+ jmp .LBL_2_56
+
+.LBL_2_73:
+
+ lea 6824+__dpow_la_CoutTab(%rip), %rdx
+ andl %r12d, %r9d
+ movsd (%rdx,%r9,8), %xmm2
+ mulsd %xmm3, %xmm2
+ jmp .LBL_2_56
+
+.LBL_2_74:
+
+ testb %r11b, %r11b
+ jne .LBL_2_55
+
+
+ testl %edx, %edx
+ jne .LBL_2_30
+
+
+ testl %r10d, %r10d
+ je .LBL_2_30
+ jmp .LBL_2_55
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dpow_cout_rare_internal,@function
+ .size __svml_dpow_cout_rare_internal,.-__svml_dpow_cout_rare_internal
+..LN__svml_dpow_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dpow_data_internal_avx512:
+ .long 0
+ .long 0
+ .long 1972240384
+ .long 3215375059
+ .long 4207476736
+ .long 3216401398
+ .long 2363129856
+ .long 3217067096
+ .long 972816384
+ .long 3217408026
+ .long 766836736
+ .long 3217739614
+ .long 3103948800
+ .long 3218062358
+ .long 2869821440
+ .long 3218228231
+ .long 1271726080
+ .long 3218381432
+ .long 3449618432
+ .long 3218530849
+ .long 2300510208
+ .long 3218676666
+ .long 4147675136
+ .long 3218819051
+ .long 3761438720
+ .long 3218958163
+ .long 1758134272
+ .long 3219094149
+ .long 14041088
+ .long 3219177733
+ .long 513138688
+ .long 3219242801
+ .long 1904279552
+ .long 1071288313
+ .long 180338688
+ .long 1071163544
+ .long 1751498752
+ .long 1071041295
+ .long 2999894016
+ .long 1070921467
+ .long 3815833600
+ .long 1070803966
+ .long 1399062528
+ .long 1070688704
+ .long 2835742720
+ .long 1070555096
+ .long 2818572288
+ .long 1070333031
+ .long 180322304
+ .long 1070114968
+ .long 704610304
+ .long 1069900764
+ .long 3265986560
+ .long 1069690285
+ .long 3908239360
+ .long 1069419290
+ .long 2530213888
+ .long 1069012484
+ .long 2785017856
+ .long 1068612402
+ .long 3386507264
+ .long 1067938708
+ .long 2250244096
+ .long 1066877934
+ .long 0
+ .long 0
+ .long 650173971
+ .long 3177165030
+ .long 3428024929
+ .long 3174241916
+ .long 1628324029
+ .long 1026060711
+ .long 804943611
+ .long 1028963376
+ .long 518075456
+ .long 1027828752
+ .long 1462134616
+ .long 1028126172
+ .long 384118417
+ .long 3174884873
+ .long 1227618047
+ .long 3176893182
+ .long 446961290
+ .long 3175726255
+ .long 2998207852
+ .long 3176597684
+ .long 2742536172
+ .long 3173319968
+ .long 3242321520
+ .long 1029042433
+ .long 1690697745
+ .long 3174775608
+ .long 4137858450
+ .long 1027958429
+ .long 2514005062
+ .long 1029694520
+ .long 804943611
+ .long 1027914800
+ .long 2871266960
+ .long 3173412044
+ .long 3679462403
+ .long 1027724294
+ .long 2476829589
+ .long 1026974179
+ .long 1572243234
+ .long 3176241050
+ .long 2514550597
+ .long 3175960347
+ .long 1207415416
+ .long 1029642824
+ .long 531120703
+ .long 3174459378
+ .long 894287639
+ .long 1029609779
+ .long 1133539114
+ .long 1029069062
+ .long 1763539348
+ .long 1029327721
+ .long 1658032750
+ .long 3171241178
+ .long 825146242
+ .long 3176213734
+ .long 831162967
+ .long 1028990787
+ .long 1128763360
+ .long 3176457556
+ .long 896504796
+ .long 3175699769
+ .long 0
+ .long 1072693248
+ .long 1828292879
+ .long 1072739672
+ .long 1014845819
+ .long 1072788152
+ .long 1853186616
+ .long 1072838778
+ .long 171030293
+ .long 1072891646
+ .long 1276261410
+ .long 1072946854
+ .long 3577096743
+ .long 1073004506
+ .long 3712504873
+ .long 1073064711
+ .long 1719614413
+ .long 1073127582
+ .long 1944781191
+ .long 1073193236
+ .long 1110089947
+ .long 1073261797
+ .long 2191782032
+ .long 1073333393
+ .long 2572866477
+ .long 1073408159
+ .long 3716502172
+ .long 1073486235
+ .long 3707479175
+ .long 1073567768
+ .long 2728693978
+ .long 1073652911
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1073217536
+ .long 0
+ .long 1073217536
+ .long 0
+ .long 1073217536
+ .long 0
+ .long 1073217536
+ .long 0
+ .long 1073217536
+ .long 0
+ .long 1073217536
+ .long 0
+ .long 1073217536
+ .long 0
+ .long 1073217536
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 3219592519
+ .long 1697350398
+ .long 3219592519
+ .long 1697350398
+ .long 3219592519
+ .long 1697350398
+ .long 3219592519
+ .long 1697350398
+ .long 3219592519
+ .long 1697350398
+ .long 3219592519
+ .long 1697350398
+ .long 3219592519
+ .long 1697350398
+ .long 3219592519
+ .long 4114041750
+ .long 1069844377
+ .long 4114041750
+ .long 1069844377
+ .long 4114041750
+ .long 1069844377
+ .long 4114041750
+ .long 1069844377
+ .long 4114041750
+ .long 1069844377
+ .long 4114041750
+ .long 1069844377
+ .long 4114041750
+ .long 1069844377
+ .long 4114041750
+ .long 1069844377
+ .long 2589302621
+ .long 3217496037
+ .long 2589302621
+ .long 3217496037
+ .long 2589302621
+ .long 3217496037
+ .long 2589302621
+ .long 3217496037
+ .long 2589302621
+ .long 3217496037
+ .long 2589302621
+ .long 3217496037
+ .long 2589302621
+ .long 3217496037
+ .long 2589302621
+ .long 3217496037
+ .long 4238449923
+ .long 1070227829
+ .long 4238449923
+ .long 1070227829
+ .long 4238449923
+ .long 1070227829
+ .long 4238449923
+ .long 1070227829
+ .long 4238449923
+ .long 1070227829
+ .long 4238449923
+ .long 1070227829
+ .long 4238449923
+ .long 1070227829
+ .long 4238449923
+ .long 1070227829
+ .long 3163535583
+ .long 3217999625
+ .long 3163535583
+ .long 3217999625
+ .long 3163535583
+ .long 3217999625
+ .long 3163535583
+ .long 3217999625
+ .long 3163535583
+ .long 3217999625
+ .long 3163535583
+ .long 3217999625
+ .long 3163535583
+ .long 3217999625
+ .long 3163535583
+ .long 3217999625
+ .long 1357918834
+ .long 1070757740
+ .long 1357918834
+ .long 1070757740
+ .long 1357918834
+ .long 1070757740
+ .long 1357918834
+ .long 1070757740
+ .long 1357918834
+ .long 1070757740
+ .long 1357918834
+ .long 1070757740
+ .long 1357918834
+ .long 1070757740
+ .long 1357918834
+ .long 1070757740
+ .long 1697368554
+ .long 3218543943
+ .long 1697368554
+ .long 3218543943
+ .long 1697368554
+ .long 3218543943
+ .long 1697368554
+ .long 3218543943
+ .long 1697368554
+ .long 3218543943
+ .long 1697368554
+ .long 3218543943
+ .long 1697368554
+ .long 3218543943
+ .long 1697368554
+ .long 3218543943
+ .long 3694789628
+ .long 1071564553
+ .long 3694789628
+ .long 1071564553
+ .long 3694789628
+ .long 1071564553
+ .long 3694789628
+ .long 1071564553
+ .long 3694789628
+ .long 1071564553
+ .long 3694789628
+ .long 1071564553
+ .long 3694789628
+ .long 1071564553
+ .long 3694789628
+ .long 1071564553
+ .long 3757988711
+ .long 1013148509
+ .long 3757988711
+ .long 1013148509
+ .long 3757988711
+ .long 1013148509
+ .long 3757988711
+ .long 1013148509
+ .long 3757988711
+ .long 1013148509
+ .long 3757988711
+ .long 1013148509
+ .long 3757988711
+ .long 1013148509
+ .long 3757988711
+ .long 1013148509
+ .long 3999174959
+ .long 1014462451
+ .long 3999174959
+ .long 1014462451
+ .long 3999174959
+ .long 1014462451
+ .long 3999174959
+ .long 1014462451
+ .long 3999174959
+ .long 1014462451
+ .long 3999174959
+ .long 1014462451
+ .long 3999174959
+ .long 1014462451
+ .long 3999174959
+ .long 1014462451
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 16368
+ .long 1123549184
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4294967295
+ .long 3221225471
+ .long 4119604569
+ .long 1059365335
+ .long 4119604569
+ .long 1059365335
+ .long 4119604569
+ .long 1059365335
+ .long 4119604569
+ .long 1059365335
+ .long 4119604569
+ .long 1059365335
+ .long 4119604569
+ .long 1059365335
+ .long 4119604569
+ .long 1059365335
+ .long 4119604569
+ .long 1059365335
+ .long 662950521
+ .long 1062590279
+ .long 662950521
+ .long 1062590279
+ .long 662950521
+ .long 1062590279
+ .long 662950521
+ .long 1062590279
+ .long 662950521
+ .long 1062590279
+ .long 662950521
+ .long 1062590279
+ .long 662950521
+ .long 1062590279
+ .long 662950521
+ .long 1062590279
+ .long 454355882
+ .long 1065595565
+ .long 454355882
+ .long 1065595565
+ .long 454355882
+ .long 1065595565
+ .long 454355882
+ .long 1065595565
+ .long 454355882
+ .long 1065595565
+ .long 454355882
+ .long 1065595565
+ .long 454355882
+ .long 1065595565
+ .long 454355882
+ .long 1065595565
+ .long 3568144057
+ .long 1068264200
+ .long 3568144057
+ .long 1068264200
+ .long 3568144057
+ .long 1068264200
+ .long 3568144057
+ .long 1068264200
+ .long 3568144057
+ .long 1068264200
+ .long 3568144057
+ .long 1068264200
+ .long 3568144057
+ .long 1068264200
+ .long 3568144057
+ .long 1068264200
+ .long 4286862669
+ .long 1070514109
+ .long 4286862669
+ .long 1070514109
+ .long 4286862669
+ .long 1070514109
+ .long 4286862669
+ .long 1070514109
+ .long 4286862669
+ .long 1070514109
+ .long 4286862669
+ .long 1070514109
+ .long 4286862669
+ .long 1070514109
+ .long 4286862669
+ .long 1070514109
+ .long 4277811595
+ .long 1072049730
+ .long 4277811595
+ .long 1072049730
+ .long 4277811595
+ .long 1072049730
+ .long 4277811595
+ .long 1072049730
+ .long 4277811595
+ .long 1072049730
+ .long 4277811595
+ .long 1072049730
+ .long 4277811595
+ .long 1072049730
+ .long 4277811595
+ .long 1072049730
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 248
+ .long 0
+ .long 248
+ .long 0
+ .long 248
+ .long 0
+ .long 248
+ .long 0
+ .long 248
+ .long 0
+ .long 248
+ .long 0
+ .long 248
+ .long 0
+ .long 248
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 120
+ .long 0
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 0
+ .long 1083173888
+ .long 0
+ .long 1083173888
+ .long 0
+ .long 1083173888
+ .long 0
+ .long 1083173888
+ .long 0
+ .long 1083173888
+ .long 0
+ .long 1083173888
+ .long 0
+ .long 1083173888
+ .long 0
+ .long 1083173888
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .type __svml_dpow_data_internal_avx512,@object
+ .size __svml_dpow_data_internal_avx512,2368
+ .align 32
+__dpow_la_CoutTab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072629696
+ .long 0
+ .long 1072569856
+ .long 0
+ .long 1072513472
+ .long 0
+ .long 1072460224
+ .long 0
+ .long 1072409856
+ .long 0
+ .long 1072362112
+ .long 0
+ .long 1072316864
+ .long 0
+ .long 1072273792
+ .long 0
+ .long 1072232896
+ .long 0
+ .long 1072193920
+ .long 0
+ .long 1072156736
+ .long 0
+ .long 1072121280
+ .long 0
+ .long 1072087424
+ .long 0
+ .long 1072054976
+ .long 0
+ .long 1072023936
+ .long 0
+ .long 1071994176
+ .long 0
+ .long 1071965696
+ .long 0
+ .long 1071938304
+ .long 0
+ .long 1071911936
+ .long 0
+ .long 1071886656
+ .long 0
+ .long 1071862272
+ .long 0
+ .long 1071838848
+ .long 0
+ .long 1071816256
+ .long 0
+ .long 1071794496
+ .long 0
+ .long 1071773440
+ .long 0
+ .long 1071753152
+ .long 0
+ .long 1071733504
+ .long 0
+ .long 1071714560
+ .long 0
+ .long 1071696256
+ .long 0
+ .long 1071678528
+ .long 0
+ .long 1071661312
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2686386176
+ .long 1067891457
+ .long 1949948785
+ .long 1027381598
+ .long 1341652992
+ .long 1068918120
+ .long 2376679344
+ .long 1026589938
+ .long 2182004736
+ .long 1069583575
+ .long 297009671
+ .long 1026900933
+ .long 1687183360
+ .long 1069924424
+ .long 2120169064
+ .long 1026082260
+ .long 53207040
+ .long 1070255920
+ .long 3737096550
+ .long 1026438963
+ .long 3818315776
+ .long 1070578756
+ .long 677794872
+ .long 1028109305
+ .long 2429726720
+ .long 1070744485
+ .long 3907638365
+ .long 1027382133
+ .long 2702757888
+ .long 1070897876
+ .long 1929563302
+ .long 1027984695
+ .long 2465140736
+ .long 1071047207
+ .long 243175481
+ .long 1026641700
+ .long 2657701888
+ .long 1071193041
+ .long 3841377895
+ .long 1028504382
+ .long 658427904
+ .long 1071335525
+ .long 161357665
+ .long 1028306250
+ .long 539168768
+ .long 1071474585
+ .long 2531816708
+ .long 1025043792
+ .long 2658430976
+ .long 1071610420
+ .long 2178519328
+ .long 1028288112
+ .long 1355743232
+ .long 1071694102
+ .long 3943781029
+ .long 1028003666
+ .long 1854838784
+ .long 1071759170
+ .long 1812291414
+ .long 1027042047
+ .long 473251840
+ .long 3218771869
+ .long 1330616404
+ .long 3175482613
+ .long 2315530240
+ .long 3218647330
+ .long 3482179716
+ .long 3175726112
+ .long 3886694400
+ .long 3218525081
+ .long 3584491563
+ .long 3175164762
+ .long 1568866304
+ .long 3218405023
+ .long 3528175174
+ .long 3174626157
+ .long 4172640256
+ .long 3218287637
+ .long 3760034354
+ .long 3171774178
+ .long 3545214976
+ .long 3218172213
+ .long 881689765
+ .long 3173077446
+ .long 2121375744
+ .long 3218038698
+ .long 549802690
+ .long 3174897014
+ .long 492560384
+ .long 3217816668
+ .long 239252792
+ .long 3173483664
+ .long 155754496
+ .long 3217598893
+ .long 1693604438
+ .long 3175909818
+ .long 4285202432
+ .long 3217384365
+ .long 127148739
+ .long 3175942199
+ .long 41181184
+ .long 3217174003
+ .long 3260046653
+ .long 3174058211
+ .long 2465087488
+ .long 3216902292
+ .long 4241850247
+ .long 3175110025
+ .long 1101037568
+ .long 3216495763
+ .long 3170347605
+ .long 3176066808
+ .long 3478798336
+ .long 3216096373
+ .long 329155479
+ .long 3175972274
+ .long 3246555136
+ .long 3215423741
+ .long 4071576371
+ .long 3174315914
+ .long 830078976
+ .long 3214361213
+ .long 1258533012
+ .long 3175547121
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072689152
+ .long 0
+ .long 1072685056
+ .long 0
+ .long 1072681024
+ .long 0
+ .long 1072676992
+ .long 0
+ .long 1072672960
+ .long 0
+ .long 1072668928
+ .long 0
+ .long 1072664960
+ .long 0
+ .long 1072660992
+ .long 0
+ .long 1072657024
+ .long 0
+ .long 1072653056
+ .long 0
+ .long 1072649152
+ .long 0
+ .long 1072645248
+ .long 0
+ .long 1072641344
+ .long 0
+ .long 1072637440
+ .long 0
+ .long 1072710976
+ .long 0
+ .long 1072709888
+ .long 0
+ .long 1072708864
+ .long 0
+ .long 1072707776
+ .long 0
+ .long 1072706752
+ .long 0
+ .long 1072705664
+ .long 0
+ .long 1072704640
+ .long 0
+ .long 1072703616
+ .long 0
+ .long 1072702528
+ .long 0
+ .long 1072701504
+ .long 0
+ .long 1072700480
+ .long 0
+ .long 1072699456
+ .long 0
+ .long 1072698368
+ .long 0
+ .long 1072697344
+ .long 0
+ .long 1072696320
+ .long 0
+ .long 1072695296
+ .long 0
+ .long 1072694272
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2754084864
+ .long 1063721742
+ .long 2557931335
+ .long 1028226920
+ .long 3228041216
+ .long 1064771801
+ .long 930662348
+ .long 1027873525
+ .long 2323251200
+ .long 1065436614
+ .long 2596299912
+ .long 1027915217
+ .long 1641152512
+ .long 1065811444
+ .long 1188689655
+ .long 1027383036
+ .long 895221760
+ .long 1066187001
+ .long 2918954073
+ .long 1026717129
+ .long 3962896384
+ .long 1066482539
+ .long 1338190555
+ .long 1024402868
+ .long 2071330816
+ .long 1066668054
+ .long 2834125591
+ .long 1027573772
+ .long 830078976
+ .long 1066853925
+ .long 1683363035
+ .long 1027948302
+ .long 1828782080
+ .long 1067040153
+ .long 874130859
+ .long 1026348678
+ .long 2395996160
+ .long 1067226740
+ .long 1724975876
+ .long 1028585613
+ .long 3558866944
+ .long 1067410669
+ .long 2189961434
+ .long 1027936707
+ .long 2542927872
+ .long 1067522658
+ .long 3621009110
+ .long 1028493916
+ .long 4208394240
+ .long 1067614973
+ .long 2777386350
+ .long 1028255456
+ .long 3217162240
+ .long 1067707465
+ .long 772669574
+ .long 1028516547
+ .long 824377344
+ .long 3214460051
+ .long 1593617402
+ .long 3175722247
+ .long 830078976
+ .long 3214361213
+ .long 1258533012
+ .long 3175547121
+ .long 4002480128
+ .long 3214268096
+ .long 1397883555
+ .long 3175764245
+ .long 2914385920
+ .long 3214169062
+ .long 3775067953
+ .long 3175176772
+ .long 1460142080
+ .long 3214075761
+ .long 1592372614
+ .long 3175907032
+ .long 219152384
+ .long 3213976530
+ .long 1716511551
+ .long 3175540921
+ .long 3419144192
+ .long 3213880645
+ .long 1128677462
+ .long 3174560569
+ .long 3320446976
+ .long 3213693490
+ .long 2965227743
+ .long 3172454196
+ .long 677904384
+ .long 3213494440
+ .long 4029390031
+ .long 3174409513
+ .long 1290797056
+ .long 3213306911
+ .long 1477436787
+ .long 3173730612
+ .long 2800877568
+ .long 3213119200
+ .long 4281418519
+ .long 3173304523
+ .long 3692822528
+ .long 3212931307
+ .long 751117103
+ .long 3175382448
+ .long 2547253248
+ .long 3212626079
+ .long 2419265147
+ .long 3175328924
+ .long 1836580864
+ .long 3212249540
+ .long 1456335141
+ .long 3175441338
+ .long 3438542848
+ .long 3211872634
+ .long 3721652080
+ .long 3176073447
+ .long 4278714368
+ .long 3211202435
+ .long 836003693
+ .long 3174279974
+ .long 926941184
+ .long 3210154597
+ .long 4249864733
+ .long 3174015648
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1073741824
+ .long 1073157447
+ .long 0
+ .long 1073157401
+ .long 0
+ .long 1073157355
+ .long 3221225472
+ .long 1073157308
+ .long 2147483648
+ .long 1073157262
+ .long 2147483648
+ .long 1073157216
+ .long 1073741824
+ .long 1073157170
+ .long 1073741824
+ .long 1073157124
+ .long 0
+ .long 1073157078
+ .long 3221225472
+ .long 1073157031
+ .long 3221225472
+ .long 1073156985
+ .long 2147483648
+ .long 1073156939
+ .long 2147483648
+ .long 1073156893
+ .long 1073741824
+ .long 1073156847
+ .long 1073741824
+ .long 1073156801
+ .long 0
+ .long 1073156755
+ .long 0
+ .long 1073156709
+ .long 3221225472
+ .long 1073156662
+ .long 3221225472
+ .long 1073156616
+ .long 2147483648
+ .long 1073156570
+ .long 2147483648
+ .long 1073156524
+ .long 2147483648
+ .long 1073156478
+ .long 1073741824
+ .long 1073156432
+ .long 1073741824
+ .long 1073156386
+ .long 0
+ .long 1073156340
+ .long 0
+ .long 1073156294
+ .long 0
+ .long 1073156248
+ .long 3221225472
+ .long 1073156201
+ .long 3221225472
+ .long 1073156155
+ .long 2147483648
+ .long 1073156109
+ .long 2147483648
+ .long 1073156063
+ .long 2147483648
+ .long 1073156017
+ .long 1073741824
+ .long 1073155971
+ .long 1073741824
+ .long 1073155925
+ .long 1073741824
+ .long 1073155879
+ .long 1073741824
+ .long 1073155833
+ .long 0
+ .long 1073155787
+ .long 0
+ .long 1073155741
+ .long 0
+ .long 1073155695
+ .long 0
+ .long 1073155649
+ .long 3221225472
+ .long 1073155602
+ .long 3221225472
+ .long 1073155556
+ .long 3221225472
+ .long 1073155510
+ .long 3221225472
+ .long 1073155464
+ .long 3221225472
+ .long 1073155418
+ .long 2147483648
+ .long 1073155372
+ .long 2147483648
+ .long 1073155326
+ .long 2147483648
+ .long 1073155280
+ .long 2147483648
+ .long 1073155234
+ .long 2147483648
+ .long 1073155188
+ .long 2147483648
+ .long 1073155142
+ .long 2147483648
+ .long 1073155096
+ .long 2147483648
+ .long 1073155050
+ .long 2147483648
+ .long 1073155004
+ .long 1073741824
+ .long 1073154958
+ .long 1073741824
+ .long 1073154912
+ .long 1073741824
+ .long 1073154866
+ .long 1073741824
+ .long 1073154820
+ .long 1073741824
+ .long 1073154774
+ .long 1073741824
+ .long 1073154728
+ .long 1073741824
+ .long 1073154682
+ .long 2147483648
+ .long 1073158995
+ .long 1073741824
+ .long 1073158972
+ .long 1073741824
+ .long 1073158949
+ .long 0
+ .long 1073158926
+ .long 0
+ .long 1073158903
+ .long 3221225472
+ .long 1073158879
+ .long 3221225472
+ .long 1073158856
+ .long 2147483648
+ .long 1073158833
+ .long 2147483648
+ .long 1073158810
+ .long 1073741824
+ .long 1073158787
+ .long 1073741824
+ .long 1073158764
+ .long 0
+ .long 1073158741
+ .long 0
+ .long 1073158718
+ .long 3221225472
+ .long 1073158694
+ .long 3221225472
+ .long 1073158671
+ .long 2147483648
+ .long 1073158648
+ .long 2147483648
+ .long 1073158625
+ .long 1073741824
+ .long 1073158602
+ .long 1073741824
+ .long 1073158579
+ .long 0
+ .long 1073158556
+ .long 0
+ .long 1073158533
+ .long 3221225472
+ .long 1073158509
+ .long 3221225472
+ .long 1073158486
+ .long 2147483648
+ .long 1073158463
+ .long 2147483648
+ .long 1073158440
+ .long 1073741824
+ .long 1073158417
+ .long 1073741824
+ .long 1073158394
+ .long 1073741824
+ .long 1073158371
+ .long 0
+ .long 1073158348
+ .long 0
+ .long 1073158325
+ .long 3221225472
+ .long 1073158301
+ .long 3221225472
+ .long 1073158278
+ .long 2147483648
+ .long 1073158255
+ .long 2147483648
+ .long 1073158232
+ .long 2147483648
+ .long 1073158209
+ .long 1073741824
+ .long 1073158186
+ .long 1073741824
+ .long 1073158163
+ .long 0
+ .long 1073158140
+ .long 0
+ .long 1073158117
+ .long 3221225472
+ .long 1073158093
+ .long 3221225472
+ .long 1073158070
+ .long 3221225472
+ .long 1073158047
+ .long 2147483648
+ .long 1073158024
+ .long 2147483648
+ .long 1073158001
+ .long 1073741824
+ .long 1073157978
+ .long 1073741824
+ .long 1073157955
+ .long 1073741824
+ .long 1073157932
+ .long 0
+ .long 1073157909
+ .long 0
+ .long 1073157886
+ .long 3221225472
+ .long 1073157862
+ .long 3221225472
+ .long 1073157839
+ .long 3221225472
+ .long 1073157816
+ .long 2147483648
+ .long 1073157793
+ .long 2147483648
+ .long 1073157770
+ .long 2147483648
+ .long 1073157747
+ .long 1073741824
+ .long 1073157724
+ .long 1073741824
+ .long 1073157701
+ .long 0
+ .long 1073157678
+ .long 0
+ .long 1073157655
+ .long 0
+ .long 1073157632
+ .long 3221225472
+ .long 1073157608
+ .long 3221225472
+ .long 1073157585
+ .long 3221225472
+ .long 1073157562
+ .long 2147483648
+ .long 1073157539
+ .long 2147483648
+ .long 1073157516
+ .long 2147483648
+ .long 1073157493
+ .long 1073741824
+ .long 1073157470
+ .long 1073741824
+ .long 1073157447
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1342177280
+ .long 1057431575
+ .long 1679773494
+ .long 1024039205
+ .long 989855744
+ .long 1058476078
+ .long 3244478756
+ .long 1024589954
+ .long 209715200
+ .long 1059147828
+ .long 152199156
+ .long 1027874535
+ .long 2449473536
+ .long 1059526748
+ .long 2343302255
+ .long 1022283036
+ .long 1560281088
+ .long 1059903632
+ .long 4038848719
+ .long 1027337824
+ .long 4282384384
+ .long 1060196455
+ .long 2325104861
+ .long 1027595231
+ .long 1665138688
+ .long 1060384909
+ .long 2934027888
+ .long 1026982347
+ .long 3263168512
+ .long 1060574392
+ .long 3208451390
+ .long 1027670758
+ .long 3980394496
+ .long 1060763881
+ .long 863587004
+ .long 1026973426
+ .long 2470445056
+ .long 1060952352
+ .long 1027097864
+ .long 1028644619
+ .long 1296039936
+ .long 1061141853
+ .long 2016162954
+ .long 1025089894
+ .long 3107979264
+ .long 1061244623
+ .long 970842239
+ .long 1028172704
+ .long 3722444800
+ .long 1061339379
+ .long 2640304163
+ .long 1027825546
+ .long 2959081472
+ .long 1061433626
+ .long 306547692
+ .long 1028101690
+ .long 2631925760
+ .long 1061528388
+ .long 747377661
+ .long 1028120913
+ .long 794820608
+ .long 1061622641
+ .long 3406550266
+ .long 1028182206
+ .long 3825205248
+ .long 1061717408
+ .long 3705775220
+ .long 1027201825
+ .long 916455424
+ .long 1061811667
+ .long 1432750358
+ .long 1028165990
+ .long 3011510272
+ .long 1061906440
+ .long 3361908688
+ .long 1027438936
+ .long 3330277376
+ .long 1062000704
+ .long 3560665332
+ .long 1027805882
+ .long 3082813440
+ .long 1062094971
+ .long 2539531329
+ .long 1028011583
+ .long 3747610624
+ .long 1062189753
+ .long 2232403651
+ .long 1025658467
+ .long 1218445312
+ .long 1062245757
+ .long 396499622
+ .long 1025861782
+ .long 1086324736
+ .long 1062293151
+ .long 2757240868
+ .long 1026731615
+ .long 2047868928
+ .long 1062340290
+ .long 2226191703
+ .long 1027982328
+ .long 580911104
+ .long 1062387431
+ .long 1252857417
+ .long 1028280924
+ .long 1887436800
+ .long 1062434829
+ .long 659583454
+ .long 1025370904
+ .long 4186963968
+ .long 1062481972
+ .long 3587661750
+ .long 1028188900
+ .long 738197504
+ .long 1062529374
+ .long 3240696709
+ .long 1027025093
+ .long 2511339520
+ .long 1062576520
+ .long 2884432087
+ .long 1028614554
+ .long 1859125248
+ .long 1062623668
+ .long 2402099113
+ .long 1025699109
+ .long 4148166656
+ .long 1062671073
+ .long 2335237504
+ .long 1026835951
+ .long 2970615808
+ .long 1062718224
+ .long 3698719430
+ .long 1027808594
+ .long 3662675968
+ .long 1062765376
+ .long 2704653673
+ .long 1027603403
+ .long 1929379840
+ .long 1062812530
+ .long 761521627
+ .long 1027109120
+ .long 3273654272
+ .long 1062859941
+ .long 470528098
+ .long 1027977181
+ .long 1019215872
+ .long 1062907098
+ .long 3704635566
+ .long 1027707215
+ .long 635437056
+ .long 1062954256
+ .long 3676592927
+ .long 1027502983
+ .long 2122317824
+ .long 1063001415
+ .long 1497197375
+ .long 1028267547
+ .long 2529165312
+ .long 1063048832
+ .long 3425827878
+ .long 1022000476
+ .long 3498049536
+ .long 1063095994
+ .long 1982476393
+ .long 1026289596
+ .long 2043674624
+ .long 1063143158
+ .long 2502680620
+ .long 1028471295
+ .long 2463105024
+ .long 1063190323
+ .long 991567028
+ .long 1027421239
+ .long 460324864
+ .long 1063237490
+ .long 1461814384
+ .long 1026181618
+ .long 920125440
+ .long 1063270489
+ .long 1613472693
+ .long 1027845558
+ .long 3956277248
+ .long 1063294073
+ .long 93449747
+ .long 1028284502
+ .long 1487405056
+ .long 1063317659
+ .long 1336931403
+ .long 1026834156
+ .long 2102919168
+ .long 1063341245
+ .long 319680825
+ .long 1027392710
+ .long 1508376576
+ .long 1063364832
+ .long 2474643583
+ .long 1027776685
+ .long 3999268864
+ .long 1063388419
+ .long 3104004650
+ .long 1024627034
+ .long 985137152
+ .long 1063412008
+ .long 550153379
+ .long 1026678253
+ .long 1056440320
+ .long 1063435597
+ .long 672168391
+ .long 1027731310
+ .long 4213702656
+ .long 1063459186
+ .long 1805142399
+ .long 1026660459
+ .long 2772434944
+ .long 1063482905
+ .long 2448602160
+ .long 1028404887
+ .long 3528458240
+ .long 1063506496
+ .long 3457943394
+ .long 1027665063
+ .long 3075473408
+ .long 1063530088
+ .long 121314862
+ .long 1027996294
+ .long 1414004736
+ .long 1063553681
+ .long 94774013
+ .long 1028053481
+ .long 2839019520
+ .long 1063577274
+ .long 1263902834
+ .long 1028588748
+ .long 3056074752
+ .long 1063600868
+ .long 369708558
+ .long 1028257136
+ .long 2065170432
+ .long 1063624463
+ .long 1634529849
+ .long 1027810905
+ .long 1769996288
+ .long 3210227157
+ .long 1054279927
+ .long 3174741313
+ .long 2442133504
+ .long 3210203373
+ .long 2067107398
+ .long 3175167430
+ .long 456130560
+ .long 3210179845
+ .long 4142755806
+ .long 3170825152
+ .long 2302672896
+ .long 3210156060
+ .long 1526169727
+ .long 3175523413
+ .long 1524629504
+ .long 3210132531
+ .long 2442955053
+ .long 3175425591
+ .long 251658240
+ .long 3210108746
+ .long 2154729168
+ .long 3175535488
+ .long 681574400
+ .long 3210085216
+ .long 4275862891
+ .long 3176027230
+ .long 584056832
+ .long 3210061430
+ .long 4255852476
+ .long 3173565530
+ .long 2221932544
+ .long 3210037899
+ .long 2498876736
+ .long 3175149504
+ .long 3297771520
+ .long 3210014112
+ .long 1851620949
+ .long 3175688865
+ .long 1849688064
+ .long 3209990581
+ .long 2923055509
+ .long 3171310641
+ .long 4099932160
+ .long 3209966793
+ .long 2427653201
+ .long 3173037457
+ .long 3858759680
+ .long 3209943261
+ .long 1550068012
+ .long 3173027359
+ .long 2987393024
+ .long 3209919473
+ .long 4127650534
+ .long 3175851613
+ .long 3954180096
+ .long 3209895940
+ .long 442055840
+ .long 3174771669
+ .long 4257218560
+ .long 3209872151
+ .long 4113960829
+ .long 3175350854
+ .long 2135949312
+ .long 3209848618
+ .long 2076166727
+ .long 3175229825
+ .long 3613392896
+ .long 3209824828
+ .long 3476091171
+ .long 3171604778
+ .long 2699034624
+ .long 3209801294
+ .long 1765290157
+ .long 3173591669
+ .long 1053818880
+ .long 3209777504
+ .long 3761837094
+ .long 3175683182
+ .long 1346371584
+ .long 3209753969
+ .long 1459626820
+ .long 3176031561
+ .long 875560960
+ .long 3209730178
+ .long 2402361097
+ .long 3174909319
+ .long 2375024640
+ .long 3209706642
+ .long 687754918
+ .long 3174943382
+ .long 1858076672
+ .long 3209674565
+ .long 252333183
+ .long 3175531572
+ .long 2975858688
+ .long 3209627492
+ .long 1334776821
+ .long 3174591557
+ .long 2430599168
+ .long 3209579907
+ .long 1326030186
+ .long 3173486707
+ .long 1665138688
+ .long 3209532833
+ .long 737674412
+ .long 3174401557
+ .long 2122317824
+ .long 3209485758
+ .long 3987168834
+ .long 3175346908
+ .long 815792128
+ .long 3209438171
+ .long 3526910672
+ .long 3176068855
+ .long 3686793216
+ .long 3209391094
+ .long 587265932
+ .long 3174950865
+ .long 429916160
+ .long 3209343506
+ .long 3143915816
+ .long 3175955609
+ .long 1417674752
+ .long 3209296428
+ .long 2918285701
+ .long 3174860756
+ .long 505413632
+ .long 3209248838
+ .long 436607152
+ .long 3175743066
+ .long 3904897024
+ .long 3209201758
+ .long 2867787430
+ .long 3173594277
+ .long 4229955584
+ .long 3209154678
+ .long 3971699810
+ .long 3174682560
+ .long 2556428288
+ .long 3209107086
+ .long 3215049067
+ .long 3174495054
+ .long 998244352
+ .long 3209060005
+ .long 2424883713
+ .long 3173182748
+ .long 1667235840
+ .long 3209012411
+ .long 762177973
+ .long 3175232288
+ .long 2518679552
+ .long 3208965328
+ .long 282609672
+ .long 3175635057
+ .long 1237319680
+ .long 3208917733
+ .long 1502777354
+ .long 3174942228
+ .long 203423744
+ .long 3208870649
+ .long 4128371954
+ .long 3175884977
+ .long 392167424
+ .long 3208823564
+ .long 306802084
+ .long 3175724146
+ .long 2642411520
+ .long 3208775966
+ .long 2960876517
+ .long 3173143647
+ .long 945815552
+ .long 3208728880
+ .long 1800251929
+ .long 3170106484
+ .long 1241513984
+ .long 3208681281
+ .long 2675524524
+ .long 3173521837
+ .long 3904897024
+ .long 3208625826
+ .long 83988225
+ .long 3175795858
+ .long 3477078016
+ .long 3208531649
+ .long 1575792028
+ .long 3175657512
+ .long 2537553920
+ .long 3208436447
+ .long 1662079495
+ .long 3175916253
+ .long 2634022912
+ .long 3208342267
+ .long 2818347875
+ .long 3174383619
+ .long 2080374784
+ .long 3208247062
+ .long 1081767985
+ .long 3175779040
+ .long 2696937472
+ .long 3208152879
+ .long 2443744157
+ .long 3175275915
+ .long 1459617792
+ .long 3208058695
+ .long 790904149
+ .long 3174713637
+ .long 3670016000
+ .long 3207963485
+ .long 581064731
+ .long 3173466591
+ .long 2952790016
+ .long 3207869298
+ .long 1008918738
+ .long 3171724149
+ .long 377487360
+ .long 3207775110
+ .long 1606538461
+ .long 3175837201
+ .long 1052770304
+ .long 3207679896
+ .long 2534546984
+ .long 3175060122
+ .long 2298478592
+ .long 3207577425
+ .long 2154814426
+ .long 3172198942
+ .long 117440512
+ .long 3207386992
+ .long 1374248651
+ .long 3174502065
+ .long 1342177280
+ .long 3207198603
+ .long 4280579335
+ .long 3175188313
+ .long 3154116608
+ .long 3207010211
+ .long 3334926656
+ .long 3174829419
+ .long 2189426688
+ .long 3206819769
+ .long 3100885346
+ .long 3175936751
+ .long 746586112
+ .long 3206631372
+ .long 315615614
+ .long 3173018851
+ .long 4043309056
+ .long 3206340535
+ .long 274116456
+ .long 3175970612
+ .long 268435456
+ .long 3205959634
+ .long 691182319
+ .long 3173304996
+ .long 603979776
+ .long 3205582822
+ .long 112661265
+ .long 3170010307
+ .long 4194304000
+ .long 3204915176
+ .long 3717748378
+ .long 3174284044
+ .long 2885681152
+ .long 3203858420
+ .long 192153543
+ .long 3175961815
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 2851812149
+ .long 1072698941
+ .long 2595802551
+ .long 1016815913
+ .long 1048019041
+ .long 1072704666
+ .long 1398474845
+ .long 3161559171
+ .long 3899555717
+ .long 1072710421
+ .long 427280750
+ .long 3163595548
+ .long 3541402996
+ .long 1072716208
+ .long 2759177317
+ .long 1015903202
+ .long 702412510
+ .long 1072722027
+ .long 3803266086
+ .long 3163328991
+ .long 410360776
+ .long 1072727877
+ .long 1269990655
+ .long 1013024446
+ .long 3402036099
+ .long 1072733758
+ .long 405889333
+ .long 1016154232
+ .long 1828292879
+ .long 1072739672
+ .long 1255956746
+ .long 1016636974
+ .long 728909815
+ .long 1072745618
+ .long 383930225
+ .long 1016078044
+ .long 852742562
+ .long 1072751596
+ .long 667253586
+ .long 1010842135
+ .long 2952712987
+ .long 1072757606
+ .long 3293494651
+ .long 3161168877
+ .long 3490863953
+ .long 1072763649
+ .long 960797497
+ .long 3163997456
+ .long 3228316108
+ .long 1072769725
+ .long 3010241991
+ .long 3159471380
+ .long 2930322912
+ .long 1072775834
+ .long 2599499422
+ .long 3163762623
+ .long 3366293073
+ .long 1072781976
+ .long 3119426313
+ .long 1015169130
+ .long 1014845819
+ .long 1072788152
+ .long 3117910645
+ .long 3162607681
+ .long 948735466
+ .long 1072794361
+ .long 3516338027
+ .long 3163623459
+ .long 3949972341
+ .long 1072800603
+ .long 2068408548
+ .long 1015962444
+ .long 2214878420
+ .long 1072806880
+ .long 892270087
+ .long 3164164998
+ .long 828946858
+ .long 1072813191
+ .long 10642492
+ .long 1016988014
+ .long 586995997
+ .long 1072819536
+ .long 41662347
+ .long 3163676568
+ .long 2288159958
+ .long 1072825915
+ .long 2169144468
+ .long 1015924597
+ .long 2440944790
+ .long 1072832329
+ .long 2492769773
+ .long 1015196030
+ .long 1853186616
+ .long 1072838778
+ .long 3066496370
+ .long 1016705150
+ .long 1337108031
+ .long 1072845262
+ .long 3203724452
+ .long 1015726421
+ .long 1709341917
+ .long 1072851781
+ .long 2571168217
+ .long 1015201075
+ .long 3790955393
+ .long 1072858335
+ .long 2352942461
+ .long 3164228666
+ .long 4112506593
+ .long 1072864925
+ .long 2947355221
+ .long 1015419624
+ .long 3504003472
+ .long 1072871551
+ .long 3594001059
+ .long 3158379228
+ .long 2799960843
+ .long 1072878213
+ .long 1423655380
+ .long 1016070727
+ .long 2839424854
+ .long 1072884911
+ .long 1171596163
+ .long 1014090255
+ .long 171030293
+ .long 1072891646
+ .long 3526460132
+ .long 1015477354
+ .long 4232894513
+ .long 1072898416
+ .long 2383938684
+ .long 1015717095
+ .long 2992903935
+ .long 1072905224
+ .long 2218154405
+ .long 1016276769
+ .long 1603444721
+ .long 1072912069
+ .long 1548633640
+ .long 3163249902
+ .long 926591435
+ .long 1072918951
+ .long 3208833761
+ .long 3163962090
+ .long 1829099622
+ .long 1072925870
+ .long 1016661180
+ .long 3164509581
+ .long 887463927
+ .long 1072932827
+ .long 3596744162
+ .long 3161842742
+ .long 3272845541
+ .long 1072939821
+ .long 928852419
+ .long 3164536824
+ .long 1276261410
+ .long 1072946854
+ .long 300981947
+ .long 1015732745
+ .long 78413852
+ .long 1072953925
+ .long 4183226867
+ .long 3164065827
+ .long 569847338
+ .long 1072961034
+ .long 472945272
+ .long 3160339305
+ .long 3645941911
+ .long 1072968181
+ .long 3814685080
+ .long 3162621917
+ .long 1617004845
+ .long 1072975368
+ .long 82804943
+ .long 1011391354
+ .long 3978100823
+ .long 1072982593
+ .long 3513027190
+ .long 1016894539
+ .long 3049340112
+ .long 1072989858
+ .long 3062915824
+ .long 1014219171
+ .long 4040676318
+ .long 1072997162
+ .long 4090609238
+ .long 1016712034
+ .long 3577096743
+ .long 1073004506
+ .long 2951496418
+ .long 1014842263
+ .long 2583551245
+ .long 1073011890
+ .long 3161094195
+ .long 1016655067
+ .long 1990012071
+ .long 1073019314
+ .long 3529070563
+ .long 3163861769
+ .long 2731501122
+ .long 1073026778
+ .long 1774031854
+ .long 3163518597
+ .long 1453150082
+ .long 1073034283
+ .long 498154668
+ .long 3162536638
+ .long 3395129871
+ .long 1073041828
+ .long 4025345434
+ .long 3163383964
+ .long 917841882
+ .long 1073049415
+ .long 18715564
+ .long 1016707884
+ .long 3566716925
+ .long 1073057042
+ .long 1536826855
+ .long 1015191009
+ .long 3712504873
+ .long 1073064711
+ .long 88491948
+ .long 1016476236
+ .long 2321106615
+ .long 1073072422
+ .long 2171176610
+ .long 1010584347
+ .long 363667784
+ .long 1073080175
+ .long 813753949
+ .long 1016833785
+ .long 3111574537
+ .long 1073087969
+ .long 2606161479
+ .long 3163808322
+ .long 2956612997
+ .long 1073095806
+ .long 2118169750
+ .long 3163784129
+ .long 885834528
+ .long 1073103686
+ .long 1973258546
+ .long 3163310140
+ .long 2186617381
+ .long 1073111608
+ .long 2270764083
+ .long 3164321289
+ .long 3561793907
+ .long 1073119573
+ .long 1157054052
+ .long 1012938926
+ .long 1719614413
+ .long 1073127582
+ .long 330458197
+ .long 3164331316
+ .long 1963711167
+ .long 1073135634
+ .long 1744767756
+ .long 3161622870
+ .long 1013258799
+ .long 1073143730
+ .long 1748797610
+ .long 3161177658
+ .long 4182873220
+ .long 1073151869
+ .long 629542646
+ .long 3163044879
+ .long 3907805044
+ .long 1073160053
+ .long 2257091225
+ .long 3162598983
+ .long 1218806132
+ .long 1073168282
+ .long 1818613051
+ .long 3163597017
+ .long 1447192521
+ .long 1073176555
+ .long 1462857171
+ .long 3163563097
+ .long 1339972927
+ .long 1073184873
+ .long 167908908
+ .long 1016620728
+ .long 1944781191
+ .long 1073193236
+ .long 3993278767
+ .long 3162772855
+ .long 19972402
+ .long 1073201645
+ .long 3507899861
+ .long 1017057868
+ .long 919555682
+ .long 1073210099
+ .long 3121969534
+ .long 1013996802
+ .long 1413356050
+ .long 1073218599
+ .long 1651349290
+ .long 3163716742
+ .long 2571947539
+ .long 1073227145
+ .long 3558159063
+ .long 3164425245
+ .long 1176749997
+ .long 1073235738
+ .long 2738998779
+ .long 3163084420
+ .long 2604962541
+ .long 1073244377
+ .long 2614425274
+ .long 3164587768
+ .long 3649726105
+ .long 1073253063
+ .long 4085036346
+ .long 1016698050
+ .long 1110089947
+ .long 1073261797
+ .long 1451641638
+ .long 1016523249
+ .long 380978316
+ .long 1073270578
+ .long 854188970
+ .long 3161511262
+ .long 2568320822
+ .long 1073279406
+ .long 2732824428
+ .long 1015401491
+ .long 194117574
+ .long 1073288283
+ .long 777528611
+ .long 3164460665
+ .long 2966275557
+ .long 1073297207
+ .long 2176155323
+ .long 3160891335
+ .long 3418903055
+ .long 1073306180
+ .long 2527457337
+ .long 3161869180
+ .long 2682146384
+ .long 1073315202
+ .long 2082178512
+ .long 3164411995
+ .long 1892288442
+ .long 1073324273
+ .long 2446255666
+ .long 3163648957
+ .long 2191782032
+ .long 1073333393
+ .long 2960257726
+ .long 1014791238
+ .long 434316067
+ .long 1073342563
+ .long 2028358766
+ .long 1014506698
+ .long 2069751141
+ .long 1073351782
+ .long 1562170674
+ .long 3163773257
+ .long 3964284211
+ .long 1073361051
+ .long 2111583915
+ .long 1016475740
+ .long 2990417245
+ .long 1073370371
+ .long 3683467745
+ .long 3164417902
+ .long 321958744
+ .long 1073379742
+ .long 3401933766
+ .long 1016843134
+ .long 1434058175
+ .long 1073389163
+ .long 251133233
+ .long 1016134345
+ .long 3218338682
+ .long 1073398635
+ .long 3404164304
+ .long 3163525684
+ .long 2572866477
+ .long 1073408159
+ .long 878562433
+ .long 1016570317
+ .long 697153126
+ .long 1073417735
+ .long 1283515428
+ .long 3164331765
+ .long 3092190715
+ .long 1073427362
+ .long 814012167
+ .long 3160571998
+ .long 2380618042
+ .long 1073437042
+ .long 3149557219
+ .long 3164369375
+ .long 4076559943
+ .long 1073446774
+ .long 2119478330
+ .long 3161806927
+ .long 815859274
+ .long 1073456560
+ .long 240396590
+ .long 3164536019
+ .long 2420883922
+ .long 1073466398
+ .long 2049810052
+ .long 1015168464
+ .long 1540824585
+ .long 1073476290
+ .long 1064017010
+ .long 3164536266
+ .long 3716502172
+ .long 1073486235
+ .long 2303740125
+ .long 1015091301
+ .long 1610600570
+ .long 1073496235
+ .long 3766732298
+ .long 1016808759
+ .long 777507147
+ .long 1073506289
+ .long 4282924204
+ .long 1016236109
+ .long 2483480501
+ .long 1073516397
+ .long 1216371780
+ .long 1014082748
+ .long 3706687593
+ .long 1073526560
+ .long 3521726939
+ .long 1014301643
+ .long 1432208378
+ .long 1073536779
+ .long 1401068914
+ .long 3163412539
+ .long 1242007932
+ .long 1073547053
+ .long 1132034716
+ .long 3164388407
+ .long 135105010
+ .long 1073557383
+ .long 1906148727
+ .long 3164424315
+ .long 3707479175
+ .long 1073567768
+ .long 3613079302
+ .long 1015213314
+ .long 382305176
+ .long 1073578211
+ .long 2347622376
+ .long 3163627201
+ .long 64696965
+ .long 1073588710
+ .long 1768797490
+ .long 1016865536
+ .long 4076975200
+ .long 1073599265
+ .long 2029000898
+ .long 1016257111
+ .long 863738719
+ .long 1073609879
+ .long 1326992219
+ .long 3163661773
+ .long 351641897
+ .long 1073620550
+ .long 2172261526
+ .long 3164059175
+ .long 3884662774
+ .long 1073631278
+ .long 2158611599
+ .long 1015258761
+ .long 4224142467
+ .long 1073642065
+ .long 3389820385
+ .long 1016255778
+ .long 2728693978
+ .long 1073652911
+ .long 396109971
+ .long 3164511267
+ .long 764307441
+ .long 1073663816
+ .long 3021057420
+ .long 3164378099
+ .long 3999357479
+ .long 1073674779
+ .long 2258941616
+ .long 1016973300
+ .long 929806999
+ .long 1073685803
+ .long 3205336643
+ .long 1016308133
+ .long 1533953344
+ .long 1073696886
+ .long 769171850
+ .long 1016714209
+ .long 2912730644
+ .long 1073708029
+ .long 3490067721
+ .long 3164453650
+ .long 2174652632
+ .long 1073719233
+ .long 4087714590
+ .long 1015498835
+ .long 730821105
+ .long 1073730498
+ .long 2523232743
+ .long 1013115764
+ .long 2523158504
+ .long 1048167334
+ .long 1181303047
+ .long 3218484803
+ .long 1656151777
+ .long 1069842388
+ .long 714085080
+ .long 3216330823
+ .long 4277811695
+ .long 1072049730
+ .long 4286760335
+ .long 1070514109
+ .long 3607404736
+ .long 1068264200
+ .long 1874480759
+ .long 1065595563
+ .long 3884607281
+ .long 1062590591
+ .long 0
+ .long 2145386496
+ .long 0
+ .long 1048576
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 1120403456
+ .long 1073741824
+ .long 1073157447
+ .long 33554432
+ .long 1101004800
+ .long 0
+ .long 1282408448
+ .long 0
+ .long 862978048
+ .type __dpow_la_CoutTab,@object
+ .size __dpow_la_CoutTab,6880
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ * * Typical computation sequences for log2() and exp2(),
+ * * with smaller tables (32- and 16-element tables)
+ * * The log2() part uses VGETEXP/VGETMANT (which treat denormals correctly),
+ * * similar to DP ln() algorithm
+ * * Branches are not needed for overflow/underflow:
+ * * - RZ mode used to prevent overflow to +/-Inf in intermediate computations
+ * * - final VSCALEF properly handles overflow and underflow cases
+ * * Callout is still used for Inf/NaNs or x<=0
+ * *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_powf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_powf16
+
+__svml_powf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $256, %rsp
+
+/* GetMant(x), normalized to [0.5,1) for x>=0, NaN for x<0 */
+ vgetmantps $10, {sae}, %zmm0, %zmm4
+ vmovups 384+__svml_spow_data_internal_avx512(%rip), %zmm9
+ vmovups 448+__svml_spow_data_internal_avx512(%rip), %zmm11
+ vmovups 512+__svml_spow_data_internal_avx512(%rip), %zmm12
+ vmovups 320+__svml_spow_data_internal_avx512(%rip), %zmm8
+ vmovups 576+__svml_spow_data_internal_avx512(%rip), %zmm15
+
+/* GetExp(x) */
+ vgetexpps {sae}, %zmm0, %zmm14
+
+/* Table lookup */
+ vmovups __svml_spow_data_internal_avx512(%rip), %zmm13
+ vmovups 128+__svml_spow_data_internal_avx512(%rip), %zmm3
+
+/* SglRcp ~ 1/Mantissa */
+ vrcp14ps %zmm4, %zmm6
+
+/* x<=0 or Inf/NaN? */
+ vfpclassps $223, %zmm0, %k0
+
+/* round SglRcp to 5 fractional bits (RN mode, no Precision exception) */
+ vrndscaleps $88, {sae}, %zmm6, %zmm7
+ vmovups 704+__svml_spow_data_internal_avx512(%rip), %zmm6
+ kmovw %k0, %edx
+
+/* Reduced argument: R = (SglRcp*Mantissa - 1) */
+ vfmsub213ps {rn-sae}, %zmm9, %zmm7, %zmm4
+
+/* Prepare exponent correction: SglRcp<1.5? */
+ vcmpps $17, {sae}, %zmm8, %zmm7, %k1
+
+/* start polynomial evaluation */
+ vfmadd231ps {rn-sae}, %zmm4, %zmm11, %zmm12
+
+/* Prepare table index */
+ vpsrld $18, %zmm7, %zmm10
+ vmovups 768+__svml_spow_data_internal_avx512(%rip), %zmm7
+ vfmadd231ps {rn-sae}, %zmm4, %zmm12, %zmm15
+
+/* add 1 to Expon if SglRcp<1.5 */
+ vaddps {rn-sae}, %zmm9, %zmm14, %zmm14{%k1}
+ vpermt2ps 64+__svml_spow_data_internal_avx512(%rip), %zmm10, %zmm13
+ vpermt2ps 192+__svml_spow_data_internal_avx512(%rip), %zmm10, %zmm3
+
+/* Th+Expon */
+ vaddps {rn-sae}, %zmm14, %zmm13, %zmm2
+ vmovaps %zmm1, %zmm5
+ vmovups 640+__svml_spow_data_internal_avx512(%rip), %zmm1
+
+/* y Inf/NaN? */
+ vfpclassps $153, %zmm5, %k2
+ vfmadd231ps {rn-sae}, %zmm4, %zmm15, %zmm1
+ kmovw %k2, %eax
+
+/* Poly_low */
+ vfmadd231ps {rn-sae}, %zmm4, %zmm1, %zmm6
+
+/* Th+Expon+R*c1h */
+ vmovaps %zmm2, %zmm9
+ orl %eax, %edx
+ vfmadd231ps {rn-sae}, %zmm4, %zmm7, %zmm9
+
+/* Tl + R*Poly_low */
+ vfmadd231ps {rn-sae}, %zmm4, %zmm6, %zmm3
+ vmovups 960+__svml_spow_data_internal_avx512(%rip), %zmm6
+
+/* (R*c1h)_high */
+ vsubps {rn-sae}, %zmm2, %zmm9, %zmm8
+
+/* High1 + Tl */
+ vaddps {rn-sae}, %zmm3, %zmm9, %zmm11
+
+/* (R*c1h)_low */
+ vfmsub213ps {rn-sae}, %zmm8, %zmm7, %zmm4
+ vmovups 1088+__svml_spow_data_internal_avx512(%rip), %zmm7
+
+/* y*High */
+ vmulps {rz-sae}, %zmm5, %zmm11, %zmm12
+
+/* Tlh */
+ vsubps {rn-sae}, %zmm9, %zmm11, %zmm10
+
+/* (y*High)_low */
+ vfmsub213ps {rz-sae}, %zmm12, %zmm5, %zmm11
+
+/* Tll */
+ vsubps {rn-sae}, %zmm10, %zmm3, %zmm3
+
+/* Tll + (R*c1h)_low */
+ vaddps {rn-sae}, %zmm4, %zmm3, %zmm13
+ vmovups 832+__svml_spow_data_internal_avx512(%rip), %zmm4
+
+/* Zl = y*Tll + Zl */
+ vfmadd213ps {rz-sae}, %zmm11, %zmm5, %zmm13
+
+/*
+ * scaled result
+ * Filter very large |y*log2(x)| and scale final result for LRB2
+ */
+ vmovups 1408+__svml_spow_data_internal_avx512(%rip), %zmm11
+ vaddps {rz-sae}, %zmm13, %zmm12, %zmm2
+ vsubps {rn-sae}, %zmm12, %zmm2, %zmm14
+ vaddps {rd-sae}, %zmm4, %zmm2, %zmm1
+
+/*
+ * /
+ * exp2 computation starts here
+ */
+ vreduceps $65, {sae}, %zmm2, %zmm15
+ vmovups 1024+__svml_spow_data_internal_avx512(%rip), %zmm12
+ vsubps {rn-sae}, %zmm14, %zmm13, %zmm3
+
+/* Table lookup: The, Tle/The */
+ vpermps 256+__svml_spow_data_internal_avx512(%rip), %zmm1, %zmm10
+ vandps 1344+__svml_spow_data_internal_avx512(%rip), %zmm2, %zmm2
+ vaddps {rn-sae}, %zmm3, %zmm15, %zmm4
+ vpslld $19, %zmm1, %zmm1
+ vcmpps $22, {sae}, %zmm11, %zmm2, %k3
+
+/* ensure |R|<2 even for special cases */
+ vandps 896+__svml_spow_data_internal_avx512(%rip), %zmm4, %zmm8
+ vandps 1472+__svml_spow_data_internal_avx512(%rip), %zmm1, %zmm13
+ kmovw %k3, %ecx
+
+/* R*The */
+ vmulps {rn-sae}, %zmm8, %zmm10, %zmm9
+
+/* polynomial */
+ vfmadd231ps {rn-sae}, %zmm8, %zmm6, %zmm12
+ vfmadd213ps {rn-sae}, %zmm7, %zmm8, %zmm12
+ orl %ecx, %edx
+
+/* The + The*R*poly */
+ vfmadd213ps {rn-sae}, %zmm10, %zmm9, %zmm12
+ vmulps {rn-sae}, %zmm13, %zmm12, %zmm1
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ vmovaps %zmm1, %zmm0
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm0, 64(%rsp)
+ vmovups %zmm5, 128(%rsp)
+ vmovups %zmm1, 192(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x28, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x38, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x18, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x08, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 192(%rsp), %zmm1
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x28, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x38, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x18, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x08, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+ lea 192(%rsp,%r12,4), %rdx
+
+ call __svml_spow_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_powf16,@function
+ .size __svml_powf16,.-__svml_powf16
+..LN__svml_powf16.0:
+
+.L_2__routine_start___spow_la_TestIntFunc_1:
+
+ .align 16,0x90
+
+__spow_la_TestIntFunc:
+
+
+ .cfi_startproc
+..L53:
+
+ movd %xmm0, %edx
+ andl $2147483647, %edx
+ lea -1065353216(%rdx), %eax
+ cmpl $1073741824, %eax
+ jae .LBL_2_5
+
+
+ cmpl $1266679808, %edx
+ jge .LBL_2_7
+
+
+ movl %edx, %ecx
+ andl $-8388608, %ecx
+ addl $8388608, %ecx
+ shrl $23, %ecx
+ shll %cl, %edx
+ testl $8388607, %edx
+ jne .LBL_2_5
+
+
+ andl $16777215, %edx
+ xorl %eax, %eax
+ cmpl $8388608, %edx
+ setne %al
+ incl %eax
+ ret
+
+.LBL_2_5:
+
+ xorl %eax, %eax
+ ret
+
+.LBL_2_7:
+
+ movl $2, %eax
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __spow_la_TestIntFunc,@function
+ .size __spow_la_TestIntFunc,.-__spow_la_TestIntFunc
+..LN__spow_la_TestIntFunc.1:
+
+.L_2__routine_start___svml_spow_cout_rare_internal_2:
+
+ .align 16,0x90
+
+__svml_spow_cout_rare_internal:
+
+
+ .cfi_startproc
+..L56:
+
+ pushq %r12
+ .cfi_def_cfa_offset 16
+ .cfi_offset 12, -16
+ pushq %r13
+ .cfi_def_cfa_offset 24
+ .cfi_offset 13, -24
+ pushq %r14
+ .cfi_def_cfa_offset 32
+ .cfi_offset 14, -32
+ pushq %r15
+ .cfi_def_cfa_offset 40
+ .cfi_offset 15, -40
+ pushq %rbx
+ .cfi_def_cfa_offset 48
+ .cfi_offset 3, -48
+ pushq %rbp
+ .cfi_def_cfa_offset 56
+ .cfi_offset 6, -56
+ subq $88, %rsp
+ .cfi_def_cfa_offset 144
+ movq %rdx, %r15
+ movss (%rdi), %xmm4
+ pxor %xmm1, %xmm1
+ movss (%rsi), %xmm3
+ movaps %xmm4, %xmm2
+ movl $0, 64(%rsp)
+ movaps %xmm3, %xmm0
+ ucomiss %xmm1, %xmm4
+ jp .LBL_3_2
+ je .LBL_3_3
+
+.LBL_3_2:
+
+ movss %xmm4, 8(%rsp)
+ jmp .LBL_3_4
+
+.LBL_3_3:
+
+ movaps %xmm4, %xmm2
+ addss %xmm4, %xmm2
+ movss %xmm2, 8(%rsp)
+
+.LBL_3_4:
+
+ pxor %xmm1, %xmm1
+ ucomiss %xmm1, %xmm3
+ jp .LBL_3_5
+ je .LBL_3_6
+
+.LBL_3_5:
+
+ movss %xmm3, 28(%rsp)
+ jmp .LBL_3_7
+
+.LBL_3_6:
+
+ movaps %xmm3, %xmm0
+ addss %xmm3, %xmm0
+ movss %xmm0, 28(%rsp)
+
+.LBL_3_7:
+
+ movb 31(%rsp), %al
+ xorl %ebx, %ebx
+ andb $-128, %al
+ xorl %ebp, %ebp
+ shrb $7, %al
+ testl $8388607, 8(%rsp)
+ movzwl 30(%rsp), %r13d
+ sete %bl
+ andl $32640, %r13d
+ testl $8388607, 28(%rsp)
+ movzwl 10(%rsp), %r14d
+ movzbl 11(%rsp), %r12d
+ sete %bpl
+ andl $32640, %r14d
+ andl $128, %r12d
+ shrl $7, %r13d
+ shrl $7, %r14d
+ shrl $7, %r12d
+ movb %al, 72(%rsp)
+ cmpl $255, %r13d
+ je .LBL_3_59
+
+
+ movl $1, 8(%rsp)
+ movss %xmm2, 32(%rsp)
+ movss %xmm0, 40(%rsp)
+ movss %xmm3, 48(%rsp)
+ movss %xmm4, 56(%rsp)
+
+ call __spow_la_TestIntFunc
+
+
+ movss 56(%rsp), %xmm4
+ movl %eax, %edx
+ movss 48(%rsp), %xmm3
+ movss 40(%rsp), %xmm0
+ movss 32(%rsp), %xmm2
+ testl %r12d, %r12d
+ jne .LBL_3_10
+
+
+ cmpl $127, %r14d
+ je .LBL_3_56
+
+.LBL_3_10:
+
+ testl %r13d, %r13d
+ jne .LBL_3_12
+
+.LBL_3_11:
+
+ testl %ebp, %ebp
+ jne .LBL_3_38
+
+.LBL_3_12:
+
+ cmpl $255, %r14d
+ je .LBL_3_14
+
+.LBL_3_13:
+
+ movl $1, %eax
+ jmp .LBL_3_15
+
+.LBL_3_14:
+
+ xorl %eax, %eax
+
+.LBL_3_15:
+
+ orl %eax, %ebx
+ je .LBL_3_37
+
+
+ orl 8(%rsp), %ebp
+ je .LBL_3_37
+
+
+ pxor %xmm1, %xmm1
+ ucomiss %xmm1, %xmm2
+ jp .LBL_3_18
+ je .LBL_3_53
+
+.LBL_3_18:
+
+ ucomiss .L_2il0floatpacket.121(%rip), %xmm2
+ jp .LBL_3_19
+ je .LBL_3_50
+
+.LBL_3_19:
+
+ testl %eax, %eax
+ je .LBL_3_30
+
+
+ cmpl $0, 8(%rsp)
+ je .LBL_3_30
+
+
+ pxor %xmm0, %xmm0
+ comiss %xmm0, %xmm2
+ ja .LBL_3_23
+
+
+ testl %edx, %edx
+ je .LBL_3_29
+
+.LBL_3_23:
+
+ lea 1484+__spow_la_CoutTab(%rip), %rax
+ andl %r12d, %edx
+ movss %xmm2, 12(%rsp)
+ xorl %ecx, %ecx
+ andb $127, 15(%rsp)
+ movss (%rax,%rdx,4), %xmm12
+ testl %r14d, %r14d
+ jne .LBL_3_25
+
+
+ movss 12(%rsp), %xmm0
+ movl $-64, %ecx
+ mulss .L_2il0floatpacket.122(%rip), %xmm0
+ movss %xmm0, 12(%rsp)
+ jmp .LBL_3_26
+
+.LBL_3_25:
+
+ movss 12(%rsp), %xmm0
+
+.LBL_3_26:
+
+ movzwl 14(%rsp), %edi
+ lea __spow_la_CoutTab(%rip), %rsi
+ andl $32640, %edi
+ pxor %xmm1, %xmm1
+ shrl $7, %edi
+ movl 12(%rsp), %edx
+ shll $23, %edi
+ andl $8388607, %edx
+ movss %xmm0, 16(%rsp)
+ orl %edx, %edi
+ movzwl 18(%rsp), %eax
+ addl $-1060634624, %edi
+ andl $-32641, %eax
+ addl $16256, %eax
+ movw %ax, 18(%rsp)
+ sarl $23, %edi
+ addl %ecx, %edi
+ movl 16(%rsp), %ecx
+ andl $7864320, %ecx
+ addl $524288, %ecx
+ cvtsi2ss %edi, %xmm1
+ shrl $20, %ecx
+ movss (%rsi,%rcx,4), %xmm4
+ addl %ecx, %ecx
+ movss 36(%rsi,%rcx,4), %xmm13
+ movaps %xmm13, %xmm7
+ movss 16(%rsp), %xmm0
+ addss %xmm1, %xmm7
+ movaps %xmm0, %xmm6
+ mulss %xmm4, %xmm6
+ movss %xmm7, 20(%rsp)
+ movss 20(%rsp), %xmm3
+ movd %xmm6, %ebx
+ subss %xmm3, %xmm1
+ andl $1966080, %ebx
+ addss %xmm1, %xmm13
+ addl $131072, %ebx
+ shrl $18, %ebx
+ movss 108(%rsi,%rbx,4), %xmm11
+ addl %ebx, %ebx
+ movss 144(%rsi,%rbx,4), %xmm5
+ movss %xmm13, 24(%rsp)
+ movaps %xmm5, %xmm14
+ movss 20(%rsp), %xmm1
+ addss %xmm1, %xmm14
+ mulss %xmm11, %xmm6
+ mulss %xmm11, %xmm4
+ movd %xmm6, %ebp
+ movss 24(%rsp), %xmm7
+ movss %xmm14, 20(%rsp)
+ movss 20(%rsp), %xmm3
+ andl $507904, %ebp
+ addl $16384, %ebp
+ subss %xmm3, %xmm1
+ shrl $15, %ebp
+ addss %xmm1, %xmm5
+ movss 216(%rsi,%rbp,4), %xmm15
+ addl %ebp, %ebp
+ movss 284(%rsi,%rbp,4), %xmm2
+ movss %xmm5, 24(%rsp)
+ movaps %xmm2, %xmm13
+ movss 20(%rsp), %xmm1
+ movss 24(%rsp), %xmm5
+ addss %xmm1, %xmm13
+ mulss %xmm15, %xmm4
+ movss %xmm13, 20(%rsp)
+ movss 20(%rsp), %xmm3
+ movss .L_2il0floatpacket.124(%rip), %xmm11
+ subss %xmm3, %xmm1
+ addss %xmm1, %xmm2
+ mulss %xmm15, %xmm6
+ movaps %xmm11, %xmm15
+ movaps %xmm6, %xmm3
+ mulss %xmm0, %xmm15
+ subss .L_2il0floatpacket.123(%rip), %xmm3
+ movss %xmm2, 24(%rsp)
+ movss 20(%rsp), %xmm1
+ movss 24(%rsp), %xmm2
+ movss %xmm15, 20(%rsp)
+ movss 20(%rsp), %xmm13
+ movss 40(%rsi,%rcx,4), %xmm9
+ movss 148(%rsi,%rbx,4), %xmm8
+ movss 288(%rsi,%rbp,4), %xmm10
+ subss 16(%rsp), %xmm13
+ movss %xmm13, 24(%rsp)
+ movss 20(%rsp), %xmm13
+ movss 24(%rsp), %xmm14
+ subss %xmm14, %xmm13
+ movss %xmm13, 20(%rsp)
+ movss 20(%rsp), %xmm15
+ subss %xmm15, %xmm0
+ movss %xmm0, 24(%rsp)
+ movaps %xmm4, %xmm0
+ mulss %xmm11, %xmm0
+ movss 20(%rsp), %xmm13
+ movss 24(%rsp), %xmm14
+ movss %xmm0, 20(%rsp)
+ movss 20(%rsp), %xmm15
+ subss %xmm4, %xmm15
+ movss %xmm15, 24(%rsp)
+ movss 20(%rsp), %xmm15
+ movss 24(%rsp), %xmm0
+ subss %xmm0, %xmm15
+ movss %xmm15, 20(%rsp)
+ movss 20(%rsp), %xmm0
+ subss %xmm0, %xmm4
+ movaps %xmm13, %xmm0
+ movss %xmm4, 24(%rsp)
+ movss 20(%rsp), %xmm4
+ mulss %xmm4, %xmm0
+ mulss %xmm14, %xmm4
+ subss %xmm6, %xmm0
+ movaps %xmm3, %xmm6
+ addss %xmm4, %xmm0
+ addss %xmm1, %xmm6
+ movss 24(%rsp), %xmm15
+ movss %xmm6, 20(%rsp)
+ movss 20(%rsp), %xmm4
+ mulss %xmm15, %xmm13
+ subss %xmm4, %xmm1
+ mulss %xmm15, %xmm14
+ addss %xmm13, %xmm0
+ addss %xmm3, %xmm1
+ addss %xmm14, %xmm0
+ movss %xmm1, 24(%rsp)
+ movss 20(%rsp), %xmm6
+ movss %xmm6, 8(%rsp)
+ movzwl 10(%rsp), %eax
+ andl $32640, %eax
+ shrl $7, %eax
+ addl %r13d, %eax
+ movss 24(%rsp), %xmm4
+ cmpl $265, %eax
+ jge .LBL_3_49
+
+
+ cmpl $192, %eax
+ jg .LBL_3_40
+
+
+ movl $1065353216, 20(%rsp)
+ movss 20(%rsp), %xmm0
+ addss .L_2il0floatpacket.133(%rip), %xmm0
+ movss %xmm0, 20(%rsp)
+ movss 20(%rsp), %xmm1
+ mulss %xmm12, %xmm1
+ movss %xmm1, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_29:
+
+ movl $1, 64(%rsp)
+ pxor %xmm0, %xmm0
+ movss %xmm0, 20(%rsp)
+ movss 20(%rsp), %xmm2
+ movss 20(%rsp), %xmm1
+ divss %xmm1, %xmm2
+ movss %xmm2, 20(%rsp)
+ movl 20(%rsp), %eax
+ movl %eax, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_30:
+
+ cmpl $127, %r14d
+ jge .LBL_3_34
+
+
+ movb 72(%rsp), %al
+ testb %al, %al
+ je .LBL_3_33
+
+
+ mulss %xmm0, %xmm0
+ movss %xmm0, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_33:
+
+ pxor %xmm0, %xmm0
+ movss %xmm0, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_34:
+
+ movb 72(%rsp), %al
+ testb %al, %al
+ je .LBL_3_36
+
+
+ lea 1512+__spow_la_CoutTab(%rip), %rax
+ andl %r12d, %edx
+ movl (%rax,%rdx,4), %ecx
+ movl %ecx, 12(%rsp)
+ movl %ecx, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_36:
+
+ mulss %xmm2, %xmm2
+ lea 1484+__spow_la_CoutTab(%rip), %rax
+ mulss %xmm0, %xmm2
+ andl %r12d, %edx
+ mulss (%rax,%rdx,4), %xmm2
+ movss %xmm2, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_37:
+
+ addss %xmm3, %xmm4
+ movss %xmm4, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_38:
+
+ addss %xmm0, %xmm2
+ movss %xmm2, 20(%rsp)
+ movl $1065353216, 24(%rsp)
+ movb 23(%rsp), %al
+ movb 27(%rsp), %dl
+ andb $-128, %al
+ andb $127, %dl
+ orb %al, %dl
+ movb %dl, 27(%rsp)
+ movss 24(%rsp), %xmm1
+ movss 24(%rsp), %xmm0
+ mulss %xmm0, %xmm1
+ movss %xmm1, (%r15)
+
+.LBL_3_39:
+
+ movl 64(%rsp), %eax
+ addq $88, %rsp
+ .cfi_def_cfa_offset 56
+ .cfi_restore 6
+ popq %rbp
+ .cfi_def_cfa_offset 48
+ .cfi_restore 3
+ popq %rbx
+ .cfi_def_cfa_offset 40
+ .cfi_restore 15
+ popq %r15
+ .cfi_def_cfa_offset 32
+ .cfi_restore 14
+ popq %r14
+ .cfi_def_cfa_offset 24
+ .cfi_restore 13
+ popq %r13
+ .cfi_def_cfa_offset 16
+ .cfi_restore 12
+ popq %r12
+ .cfi_def_cfa_offset 8
+ ret
+ .cfi_def_cfa_offset 144
+ .cfi_offset 3, -48
+ .cfi_offset 6, -56
+ .cfi_offset 12, -16
+ .cfi_offset 13, -24
+ .cfi_offset 14, -32
+ .cfi_offset 15, -40
+
+.LBL_3_40:
+
+ movss .L_2il0floatpacket.128(%rip), %xmm1
+ lea 424+__spow_la_CoutTab(%rip), %rdx
+ addss %xmm0, %xmm3
+ addss %xmm5, %xmm7
+ addss %xmm4, %xmm0
+ mulss %xmm3, %xmm1
+ addss %xmm7, %xmm2
+ addss .L_2il0floatpacket.127(%rip), %xmm1
+ addss %xmm2, %xmm9
+ mulss %xmm3, %xmm1
+ addss %xmm9, %xmm8
+ addss .L_2il0floatpacket.126(%rip), %xmm1
+ addss %xmm8, %xmm10
+ mulss %xmm3, %xmm1
+ addss %xmm0, %xmm10
+ addss .L_2il0floatpacket.125(%rip), %xmm1
+ mulss %xmm3, %xmm1
+ movaps %xmm10, %xmm5
+ movss 8(%rsp), %xmm4
+ movaps %xmm11, %xmm8
+ addss %xmm1, %xmm6
+ lea 20(%rsp), %rax
+ movss %xmm6, (%rax)
+ movss (%rax), %xmm0
+ subss %xmm0, %xmm4
+ movaps %xmm11, %xmm0
+ addss %xmm1, %xmm4
+ lea 24(%rsp), %rcx
+ movss %xmm4, (%rcx)
+ movss (%rax), %xmm7
+ movss (%rcx), %xmm3
+ addss %xmm7, %xmm5
+ movss %xmm5, (%rax)
+ movss (%rax), %xmm6
+ subss %xmm6, %xmm7
+ addss %xmm10, %xmm7
+ movss %xmm7, (%rcx)
+ movss (%rax), %xmm10
+ mulss %xmm10, %xmm8
+ movss (%rcx), %xmm2
+ movss %xmm8, (%rax)
+ addss %xmm3, %xmm2
+ movss (%rax), %xmm9
+ lea 28(%rsp), %rbx
+ movss (%rbx), %xmm7
+ subss %xmm10, %xmm9
+ mulss %xmm7, %xmm0
+ mulss (%rbx), %xmm2
+ movss %xmm9, (%rcx)
+ movss (%rax), %xmm14
+ movss (%rcx), %xmm13
+ movss .L_2il0floatpacket.129(%rip), %xmm9
+ subss %xmm13, %xmm14
+ movss %xmm14, (%rax)
+ movss (%rax), %xmm15
+ subss %xmm15, %xmm10
+ movss %xmm10, (%rcx)
+ movss (%rax), %xmm8
+ movss (%rcx), %xmm10
+ movss %xmm0, (%rax)
+ movss (%rax), %xmm1
+ subss (%rbx), %xmm1
+ movss %xmm1, (%rcx)
+ movss (%rax), %xmm5
+ movss (%rcx), %xmm4
+ subss %xmm4, %xmm5
+ movss %xmm5, (%rax)
+ movss (%rax), %xmm6
+ subss %xmm6, %xmm7
+ movss %xmm7, (%rcx)
+ movss (%rax), %xmm1
+ movss (%rcx), %xmm15
+ movaps %xmm1, %xmm0
+ mulss %xmm8, %xmm0
+ mulss %xmm10, %xmm1
+ mulss %xmm15, %xmm8
+ mulss %xmm15, %xmm10
+ addss %xmm8, %xmm1
+ movaps %xmm0, %xmm8
+ addss %xmm1, %xmm8
+ movaps %xmm8, %xmm3
+ subss %xmm8, %xmm0
+ addss %xmm9, %xmm3
+ addss %xmm0, %xmm1
+ movss %xmm3, (%rax)
+ movaps %xmm8, %xmm3
+ movss (%rax), %xmm13
+ addss %xmm1, %xmm10
+ subss %xmm9, %xmm13
+ addss %xmm2, %xmm10
+ movss %xmm13, (%rsp)
+ movss (%rsp), %xmm14
+ movss .L_2il0floatpacket.132(%rip), %xmm2
+ subss %xmm14, %xmm3
+ movss %xmm3, 4(%rsp)
+ movss 4(%rsp), %xmm4
+ movl (%rax), %eax
+ movl %eax, %ebx
+ andl $127, %eax
+ addss %xmm10, %xmm4
+ mulss %xmm4, %xmm2
+ addl %eax, %eax
+ movss -4(%rdx,%rax,4), %xmm1
+ shll $10, %ebx
+ addss .L_2il0floatpacket.131(%rip), %xmm2
+ mulss %xmm4, %xmm2
+ sarl $17, %ebx
+ addss .L_2il0floatpacket.130(%rip), %xmm2
+ mulss %xmm4, %xmm2
+ mulss %xmm1, %xmm2
+ addss (%rdx,%rax,4), %xmm2
+ movaps %xmm2, %xmm5
+ addss %xmm1, %xmm5
+ movss %xmm5, 12(%rsp)
+ movzwl 14(%rsp), %edx
+ movl %edx, %ecx
+ andl $32640, %ecx
+ shrl $7, %ecx
+ lea -127(%rbx,%rcx), %eax
+ cmpl $128, %eax
+ jge .LBL_3_48
+
+
+ cmpl $-126, %eax
+ jl .LBL_3_43
+
+
+ andl $-32641, %edx
+ lea 127(%rax), %eax
+ movzbl %al, %eax
+ shll $7, %eax
+ orl %eax, %edx
+ movw %dx, 14(%rsp)
+ movss 12(%rsp), %xmm0
+ mulss %xmm12, %xmm0
+ movss %xmm0, 12(%rsp)
+ movss %xmm0, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_43:
+
+ cmpl $-136, %eax
+ jl .LBL_3_45
+
+
+ lea 20(%rsp), %rdx
+ movss %xmm5, (%rdx)
+ movl $1065353216, %eax
+ movss (%rdx), %xmm0
+ addl $191, %ebx
+ movl %eax, 8(%rsp)
+ subss %xmm0, %xmm1
+ shrl $16, %eax
+ addss %xmm1, %xmm2
+ movss %xmm2, 24(%rsp)
+ movss (%rdx), %xmm5
+ mulss %xmm5, %xmm11
+ movss 24(%rsp), %xmm6
+ movss %xmm11, (%rdx)
+ movss (%rdx), %xmm1
+ movzwl %ax, %edx
+ subss %xmm5, %xmm1
+ lea 24(%rsp), %rax
+ movss %xmm1, (%rax)
+ andl $-32641, %edx
+ lea 20(%rsp), %rcx
+ movss (%rcx), %xmm3
+ movss (%rax), %xmm2
+ movzbl %bl, %ebx
+ subss %xmm2, %xmm3
+ movss %xmm3, (%rcx)
+ movss (%rcx), %xmm4
+ shll $7, %ebx
+ subss %xmm4, %xmm5
+ movss %xmm5, (%rax)
+ orl %ebx, %edx
+ movss (%rcx), %xmm8
+ movss (%rax), %xmm14
+ movw %dx, 10(%rsp)
+ addss %xmm6, %xmm14
+ movss 8(%rsp), %xmm7
+ mulss %xmm7, %xmm14
+ mulss %xmm7, %xmm8
+ lea 20(%rsp), %rdx
+ movl $8388608, (%rdx)
+ addss %xmm8, %xmm14
+ movss (%rdx), %xmm10
+ movss (%rdx), %xmm9
+ mulss %xmm9, %xmm10
+ mulss .L_2il0floatpacket.135(%rip), %xmm14
+ movss %xmm10, (%rdx)
+ movss (%rdx), %xmm13
+ addss %xmm13, %xmm14
+ mulss %xmm14, %xmm12
+ movss %xmm14, 12(%rsp)
+ movss %xmm12, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_45:
+
+ cmpl $-159, %eax
+ jl .LBL_3_47
+
+
+ movl $1065353216, %eax
+ addl $191, %ebx
+ movl %eax, 8(%rsp)
+ shrl $16, %eax
+ movzwl %ax, %edx
+ movzbl %bl, %ebx
+ andl $-32641, %edx
+ shll $7, %ebx
+ orl %ebx, %edx
+ movw %dx, 10(%rsp)
+ movss 8(%rsp), %xmm0
+ movss .L_2il0floatpacket.135(%rip), %xmm1
+ mulss %xmm0, %xmm5
+ mulss %xmm1, %xmm12
+ lea 20(%rsp), %rdx
+ movl $8388608, (%rdx)
+ movss (%rdx), %xmm3
+ movss (%rdx), %xmm2
+ mulss %xmm2, %xmm3
+ mulss %xmm12, %xmm5
+ movss %xmm3, (%rdx)
+ movss (%rdx), %xmm4
+ subss %xmm4, %xmm5
+ movss %xmm5, 12(%rsp)
+ movss %xmm5, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_47:
+
+ lea 20(%rsp), %rax
+ movl $8388608, (%rax)
+ movss (%rax), %xmm1
+ movss (%rax), %xmm0
+ mulss %xmm0, %xmm1
+ movss %xmm1, (%rax)
+ movss (%rax), %xmm2
+ mulss %xmm2, %xmm12
+ movss %xmm12, 12(%rsp)
+ movss %xmm12, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_48:
+
+ lea 20(%rsp), %rax
+ movl $2130706432, (%rax)
+ movss (%rax), %xmm1
+ movss (%rax), %xmm0
+ mulss %xmm0, %xmm1
+ movss %xmm1, (%rax)
+ movss (%rax), %xmm2
+ mulss %xmm2, %xmm12
+ movss %xmm12, 12(%rsp)
+ movss %xmm12, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_49:
+
+ movb 11(%rsp), %al
+ lea 1472+__spow_la_CoutTab(%rip), %rcx
+ andb $-128, %al
+ movb 72(%rsp), %dl
+ shrb $7, %al
+ xorb %al, %dl
+ movzbl %dl, %ebx
+ movss (%rcx,%rbx,4), %xmm0
+ mulss %xmm0, %xmm0
+ mulss %xmm12, %xmm0
+ movss %xmm0, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_50:
+
+ testl %edx, %edx
+ jne .LBL_3_52
+
+
+ cmpl $0, 8(%rsp)
+ jne .LBL_3_19
+
+.LBL_3_52:
+
+ lea 1484+__spow_la_CoutTab(%rip), %rax
+ andl $1, %edx
+ movl (%rax,%rdx,4), %ecx
+ movl %ecx, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_53:
+
+ movb 72(%rsp), %al
+ mulss %xmm2, %xmm2
+ testb %al, %al
+ je .LBL_3_55
+
+
+ lea 1484+__spow_la_CoutTab(%rip), %rax
+ andl %r12d, %edx
+ movl $1, 64(%rsp)
+ movss (%rax,%rdx,4), %xmm0
+ divss %xmm2, %xmm0
+ movss %xmm0, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_55:
+
+ lea 1484+__spow_la_CoutTab(%rip), %rax
+ andl %r12d, %edx
+ movss (%rax,%rdx,4), %xmm0
+ mulss %xmm2, %xmm0
+ movss %xmm0, (%r15)
+ jmp .LBL_3_39
+
+.LBL_3_56:
+
+ testl %ebx, %ebx
+ jne .LBL_3_38
+
+
+ testl %r13d, %r13d
+ jne .LBL_3_13
+ jmp .LBL_3_11
+
+.LBL_3_59:
+
+ movl $0, 8(%rsp)
+ movss %xmm2, 32(%rsp)
+ movss %xmm0, 40(%rsp)
+ movss %xmm3, 48(%rsp)
+ movss %xmm4, 56(%rsp)
+
+ call __spow_la_TestIntFunc
+
+
+ movss 56(%rsp), %xmm4
+ movl %eax, %edx
+ movss 48(%rsp), %xmm3
+ movss 40(%rsp), %xmm0
+ movss 32(%rsp), %xmm2
+ testl %r12d, %r12d
+ jne .LBL_3_12
+
+
+ cmpl $127, %r14d
+ jne .LBL_3_12
+
+
+ testl %ebx, %ebx
+ je .LBL_3_13
+ jmp .LBL_3_38
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_spow_cout_rare_internal,@function
+ .size __svml_spow_cout_rare_internal,.-__svml_spow_cout_rare_internal
+..LN__svml_spow_cout_rare_internal.2:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_spow_data_internal_avx512:
+ .long 0
+ .long 3174420480
+ .long 3182632960
+ .long 3187958784
+ .long 3190685696
+ .long 3193338880
+ .long 3195920384
+ .long 3197247488
+ .long 3198473216
+ .long 3199668736
+ .long 3200835072
+ .long 3201974272
+ .long 3203086848
+ .long 3204174848
+ .long 3204843520
+ .long 3205364224
+ .long 1054113792
+ .long 1053115392
+ .long 1052137472
+ .long 1051179008
+ .long 1050238976
+ .long 1049316864
+ .long 1048248320
+ .long 1046471680
+ .long 1044726784
+ .long 1043013632
+ .long 1041329152
+ .long 1039161344
+ .long 1035907072
+ .long 1032706048
+ .long 1027317760
+ .long 1018830848
+ .long 0
+ .long 3067311503
+ .long 890262383
+ .long 916311190
+ .long 3058814943
+ .long 914835756
+ .long 3056977939
+ .long 3052757441
+ .long 905348701
+ .long 921801496
+ .long 900652061
+ .long 916473404
+ .long 3063873943
+ .long 3048020321
+ .long 3055557319
+ .long 921573027
+ .long 3050426335
+ .long 918574590
+ .long 913737309
+ .long 3045697063
+ .long 3029223305
+ .long 866568163
+ .long 3063765991
+ .long 3057827840
+ .long 910185982
+ .long 3062847489
+ .long 917965485
+ .long 903301016
+ .long 882039287
+ .long 910858241
+ .long 3059117133
+ .long 3029061382
+ .long 1065353216
+ .long 1065724611
+ .long 1066112450
+ .long 1066517459
+ .long 1066940400
+ .long 1067382066
+ .long 1067843287
+ .long 1068324927
+ .long 1068827891
+ .long 1069353124
+ .long 1069901610
+ .long 1070474380
+ .long 1071072509
+ .long 1071697119
+ .long 1072349383
+ .long 1073030525
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1049872133
+ .long 1049872133
+ .long 1049872133
+ .long 1049872133
+ .long 1049872133
+ .long 1049872133
+ .long 1049872133
+ .long 1049872133
+ .long 1049872133
+ .long 1049872133
+ .long 1049872133
+ .long 1049872133
+ .long 1049872133
+ .long 1049872133
+ .long 1049872133
+ .long 1049872133
+ .long 3199775725
+ .long 3199775725
+ .long 3199775725
+ .long 3199775725
+ .long 3199775725
+ .long 3199775725
+ .long 3199775725
+ .long 3199775725
+ .long 3199775725
+ .long 3199775725
+ .long 3199775725
+ .long 3199775725
+ .long 3199775725
+ .long 3199775725
+ .long 3199775725
+ .long 3199775725
+ .long 1056323663
+ .long 1056323663
+ .long 1056323663
+ .long 1056323663
+ .long 1056323663
+ .long 1056323663
+ .long 1056323663
+ .long 1056323663
+ .long 1056323663
+ .long 1056323663
+ .long 1056323663
+ .long 1056323663
+ .long 1056323663
+ .long 1056323663
+ .long 1056323663
+ .long 1056323663
+ .long 3208161851
+ .long 3208161851
+ .long 3208161851
+ .long 3208161851
+ .long 3208161851
+ .long 3208161851
+ .long 3208161851
+ .long 3208161851
+ .long 3208161851
+ .long 3208161851
+ .long 3208161851
+ .long 3208161851
+ .long 3208161851
+ .long 3208161851
+ .long 3208161851
+ .long 3208161851
+ .long 849703116
+ .long 849703116
+ .long 849703116
+ .long 849703116
+ .long 849703116
+ .long 849703116
+ .long 849703116
+ .long 849703116
+ .long 849703116
+ .long 849703116
+ .long 849703116
+ .long 849703116
+ .long 849703116
+ .long 849703116
+ .long 849703116
+ .long 849703116
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1228933104
+ .long 1228933104
+ .long 1228933104
+ .long 1228933104
+ .long 1228933104
+ .long 1228933104
+ .long 1228933104
+ .long 1228933104
+ .long 1228933104
+ .long 1228933104
+ .long 1228933104
+ .long 1228933104
+ .long 1228933104
+ .long 1228933104
+ .long 1228933104
+ .long 1228933104
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 3221225471
+ .long 1030247627
+ .long 1030247627
+ .long 1030247627
+ .long 1030247627
+ .long 1030247627
+ .long 1030247627
+ .long 1030247627
+ .long 1030247627
+ .long 1030247627
+ .long 1030247627
+ .long 1030247627
+ .long 1030247627
+ .long 1030247627
+ .long 1030247627
+ .long 1030247627
+ .long 1030247627
+ .long 1047916908
+ .long 1047916908
+ .long 1047916908
+ .long 1047916908
+ .long 1047916908
+ .long 1047916908
+ .long 1047916908
+ .long 1047916908
+ .long 1047916908
+ .long 1047916908
+ .long 1047916908
+ .long 1047916908
+ .long 1047916908
+ .long 1047916908
+ .long 1047916908
+ .long 1047916908
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 1060205090
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 124
+ .long 60
+ .long 60
+ .long 60
+ .long 60
+ .long 60
+ .long 60
+ .long 60
+ .long 60
+ .long 60
+ .long 60
+ .long 60
+ .long 60
+ .long 60
+ .long 60
+ .long 60
+ .long 60
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 1123745792
+ .long 1123745792
+ .long 1123745792
+ .long 1123745792
+ .long 1123745792
+ .long 1123745792
+ .long 1123745792
+ .long 1123745792
+ .long 1123745792
+ .long 1123745792
+ .long 1123745792
+ .long 1123745792
+ .long 1123745792
+ .long 1123745792
+ .long 1123745792
+ .long 1123745792
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .type __svml_spow_data_internal_avx512,@object
+ .size __svml_spow_data_internal_avx512,1536
+ .align 32
+__spow_la_CoutTab:
+ .long 1065353216
+ .long 1063518208
+ .long 1061945344
+ .long 1060765696
+ .long 1059717120
+ .long 1058930688
+ .long 1058144256
+ .long 1057488896
+ .long 1056964608
+ .long 0
+ .long 0
+ .long 1043013120
+ .long 912347133
+ .long 1051178752
+ .long 920491638
+ .long 1055650560
+ .long 910207939
+ .long 3201407744
+ .long 3065009147
+ .long 3197864192
+ .long 3046757530
+ .long 3192020992
+ .long 3064938684
+ .long 3182631936
+ .long 3069048210
+ .long 0
+ .long 0
+ .long 1065353216
+ .long 1064828928
+ .long 1064304640
+ .long 1066008576
+ .long 1065877504
+ .long 1065746432
+ .long 1065615360
+ .long 1065484288
+ .long 1065353216
+ .long 0
+ .long 0
+ .long 1027315712
+ .long 915720665
+ .long 1035907072
+ .long 882039287
+ .long 3185459200
+ .long 3062137179
+ .long 3182631936
+ .long 3069048210
+ .long 3179763712
+ .long 3059908234
+ .long 3174420480
+ .long 3067311503
+ .long 3166121984
+ .long 3066774241
+ .long 0
+ .long 0
+ .long 1069056000
+ .long 1069006848
+ .long 1068957696
+ .long 1068908544
+ .long 1068875776
+ .long 1069318144
+ .long 1069301760
+ .long 1069268992
+ .long 1069252608
+ .long 1069219840
+ .long 1069203456
+ .long 1069170688
+ .long 1069154304
+ .long 1069121536
+ .long 1069105152
+ .long 1069072384
+ .long 1069056000
+ .long 0
+ .long 0
+ .long 1002471424
+ .long 906080490
+ .long 1010884608
+ .long 916991201
+ .long 1016135680
+ .long 905081895
+ .long 1018261504
+ .long 918286540
+ .long 3170725888
+ .long 3067774196
+ .long 3169697792
+ .long 3068476631
+ .long 3167637504
+ .long 3069858259
+ .long 3166609408
+ .long 3020376912
+ .long 3164540928
+ .long 3039629966
+ .long 3163504640
+ .long 3043319364
+ .long 3160350720
+ .long 3046704089
+ .long 3158269952
+ .long 3047249178
+ .long 3154083840
+ .long 3046609959
+ .long 3149905920
+ .long 3045301896
+ .long 3137339392
+ .long 3034784887
+ .long 0
+ .long 0
+ .long 1065353216
+ .long 0
+ .long 1065398766
+ .long 3014665830
+ .long 1065444562
+ .long 2982428624
+ .long 1065490608
+ .long 3015478276
+ .long 1065536902
+ .long 865643564
+ .long 1065583450
+ .long 3014725705
+ .long 1065630248
+ .long 868461790
+ .long 1065677302
+ .long 858550072
+ .long 1065724612
+ .long 3013096376
+ .long 1065772178
+ .long 3013897664
+ .long 1065820002
+ .long 3008545510
+ .long 1065868086
+ .long 3011512679
+ .long 1065916430
+ .long 864064219
+ .long 1065965038
+ .long 819487640
+ .long 1066013910
+ .long 3012212369
+ .long 1066063046
+ .long 856316133
+ .long 1066112450
+ .long 2992679841
+ .long 1066162122
+ .long 3001970243
+ .long 1066212064
+ .long 3013902756
+ .long 1066262276
+ .long 847285146
+ .long 1066312762
+ .long 3010032741
+ .long 1066363522
+ .long 3018332471
+ .long 1066414556
+ .long 856041677
+ .long 1066465868
+ .long 864808677
+ .long 1066517460
+ .long 3012318446
+ .long 1066569330
+ .long 863709796
+ .long 1066621484
+ .long 3016813593
+ .long 1066673920
+ .long 3018872036
+ .long 1066726640
+ .long 3006136850
+ .long 1066779646
+ .long 864474828
+ .long 1066832942
+ .long 3016286184
+ .long 1066886526
+ .long 3015052933
+ .long 1066940400
+ .long 857938801
+ .long 1066994568
+ .long 2993474036
+ .long 1067049030
+ .long 3009003152
+ .long 1067103786
+ .long 872191232
+ .long 1067158842
+ .long 3003929955
+ .long 1067214196
+ .long 3013071165
+ .long 1067269850
+ .long 3006375425
+ .long 1067325806
+ .long 843377209
+ .long 1067382066
+ .long 859906882
+ .long 1067438632
+ .long 848662531
+ .long 1067495506
+ .long 3018868367
+ .long 1067552686
+ .long 868910405
+ .long 1067610180
+ .long 3019699127
+ .long 1067667984
+ .long 3013023741
+ .long 1067726102
+ .long 3005475891
+ .long 1067784536
+ .long 3010626242
+ .long 1067843286
+ .long 866758993
+ .long 1067902356
+ .long 869265128
+ .long 1067961748
+ .long 3004575030
+ .long 1068021462
+ .long 3018425550
+ .long 1068081498
+ .long 867494524
+ .long 1068141862
+ .long 858118433
+ .long 1068202554
+ .long 3004476802
+ .long 1068263574
+ .long 866434624
+ .long 1068324926
+ .long 870990497
+ .long 1068386612
+ .long 858100843
+ .long 1068448632
+ .long 867002634
+ .long 1068510990
+ .long 3000050815
+ .long 1068573686
+ .long 3011271336
+ .long 1068636722
+ .long 3006477262
+ .long 1068700100
+ .long 840255625
+ .long 1068763822
+ .long 866280780
+ .long 1068827892
+ .long 3016492578
+ .long 1068892308
+ .long 3006218836
+ .long 1068957074
+ .long 2993076596
+ .long 1069022192
+ .long 3000356208
+ .long 1069087664
+ .long 3015220484
+ .long 1069153490
+ .long 856315927
+ .long 1069219674
+ .long 867308350
+ .long 1069286218
+ .long 863888852
+ .long 1069353124
+ .long 3007401960
+ .long 1069420392
+ .long 832069785
+ .long 1069488026
+ .long 3004369690
+ .long 1069556026
+ .long 866250961
+ .long 1069624396
+ .long 868902513
+ .long 1069693138
+ .long 851736822
+ .long 1069762252
+ .long 869934231
+ .long 1069831742
+ .long 869028661
+ .long 1069901610
+ .long 839559223
+ .long 1069971856
+ .long 867543588
+ .long 1070042484
+ .long 868789178
+ .long 1070113496
+ .long 859381756
+ .long 1070184894
+ .long 3010667426
+ .long 1070256678
+ .long 859604257
+ .long 1070328852
+ .long 872346226
+ .long 1070401420
+ .long 3010682756
+ .long 1070474380
+ .long 841546788
+ .long 1070547736
+ .long 869210393
+ .long 1070621492
+ .long 2996061011
+ .long 1070695648
+ .long 3013455510
+ .long 1070770206
+ .long 3009158570
+ .long 1070845168
+ .long 865699227
+ .long 1070920538
+ .long 866897902
+ .long 1070996318
+ .long 2955948569
+ .long 1071072508
+ .long 868931229
+ .long 1071149114
+ .long 3014890061
+ .long 1071226134
+ .long 3002473793
+ .long 1071303572
+ .long 861820308
+ .long 1071381432
+ .long 3008383516
+ .long 1071459714
+ .long 3010850715
+ .long 1071538420
+ .long 864181775
+ .long 1071617554
+ .long 870234352
+ .long 1071697118
+ .long 871115413
+ .long 1071777114
+ .long 872414852
+ .long 1071857546
+ .long 3012378998
+ .long 1071938412
+ .long 866137918
+ .long 1072019718
+ .long 870808707
+ .long 1072101466
+ .long 866840096
+ .long 1072183658
+ .long 857766040
+ .long 1072266296
+ .long 855693471
+ .long 1072349382
+ .long 870833444
+ .long 1072432920
+ .long 867585053
+ .long 1072516912
+ .long 846646433
+ .long 1072601360
+ .long 3008357562
+ .long 1072686266
+ .long 3007858250
+ .long 1072771632
+ .long 866626825
+ .long 1072857464
+ .long 3015943680
+ .long 1072943760
+ .long 2995197552
+ .long 1073030526
+ .long 3018513273
+ .long 1073117762
+ .long 3012791488
+ .long 1073205472
+ .long 3012359471
+ .long 1073293658
+ .long 3003728983
+ .long 1073382322
+ .long 870019626
+ .long 1073471470
+ .long 3012762127
+ .long 1073561100
+ .long 835668076
+ .long 1073651218
+ .long 3013837936
+ .long 980050793
+ .long 3199320925
+ .long 1042575209
+ .long 3182108321
+ .long 1060205080
+ .long 1047920112
+ .long 1029920839
+ .long 2130706432
+ .long 8388608
+ .long 0
+ .long 1065353216
+ .long 3212836864
+ .long 1203765248
+ .long 1069056000
+ .long 1166018560
+ .long 1602224128
+ .long 528482304
+ .long 0
+ .long 2147483648
+ .type __spow_la_CoutTab,@object
+ .size __spow_la_CoutTab,1520
+ .align 4
+.L_2il0floatpacket.121:
+ .long 0xbf800000
+ .type .L_2il0floatpacket.121,@object
+ .size .L_2il0floatpacket.121,4
+ .align 4
+.L_2il0floatpacket.122:
+ .long 0x5f800000
+ .type .L_2il0floatpacket.122,@object
+ .size .L_2il0floatpacket.122,4
+ .align 4
+.L_2il0floatpacket.123:
+ .long 0x3fb88000
+ .type .L_2il0floatpacket.123,@object
+ .size .L_2il0floatpacket.123,4
+ .align 4
+.L_2il0floatpacket.124:
+ .long 0x45800800
+ .type .L_2il0floatpacket.124,@object
+ .size .L_2il0floatpacket.124,4
+ .align 4
+.L_2il0floatpacket.125:
+ .long 0x3a6a6369
+ .type .L_2il0floatpacket.125,@object
+ .size .L_2il0floatpacket.125,4
+ .align 4
+.L_2il0floatpacket.126:
+ .long 0xbeb1c35d
+ .type .L_2il0floatpacket.126,@object
+ .size .L_2il0floatpacket.126,4
+ .align 4
+.L_2il0floatpacket.127:
+ .long 0x3e246f69
+ .type .L_2il0floatpacket.127,@object
+ .size .L_2il0floatpacket.127,4
+ .align 4
+.L_2il0floatpacket.128:
+ .long 0xbdab1ea1
+ .type .L_2il0floatpacket.128,@object
+ .size .L_2il0floatpacket.128,4
+ .align 4
+.L_2il0floatpacket.129:
+ .long 0x47c00000
+ .type .L_2il0floatpacket.129,@object
+ .size .L_2il0floatpacket.129,4
+ .align 4
+.L_2il0floatpacket.130:
+ .long 0x3f317218
+ .type .L_2il0floatpacket.130,@object
+ .size .L_2il0floatpacket.130,4
+ .align 4
+.L_2il0floatpacket.131:
+ .long 0x3e75fdf0
+ .type .L_2il0floatpacket.131,@object
+ .size .L_2il0floatpacket.131,4
+ .align 4
+.L_2il0floatpacket.132:
+ .long 0x3d635847
+ .type .L_2il0floatpacket.132,@object
+ .size .L_2il0floatpacket.132,4
+ .align 4
+.L_2il0floatpacket.133:
+ .long 0x00800000
+ .type .L_2il0floatpacket.133,@object
+ .size .L_2il0floatpacket.133,4
+ .align 4
+.L_2il0floatpacket.134:
+ .long 0x7f000000
+ .type .L_2il0floatpacket.134,@object
+ .size .L_2il0floatpacket.134,4
+ .align 4
+.L_2il0floatpacket.135:
+ .long 0x1f800000
+ .type .L_2il0floatpacket.135,@object
+ .size .L_2il0floatpacket.135,4
+ .align 4
+.L_2il0floatpacket.136:
+ .long 0x3f800000
+ .type .L_2il0floatpacket.136,@object
+ .size .L_2il0floatpacket.136,4
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * ( low accuracy ( < 4ulp ) or enhanced performance ( half of correct mantissa ) implementation )
+ *
+ * Argument representation:
+ * arg = N*Pi + R
+ *
+ * Result calculation:
+ * sin(arg) = sin(N*Pi + R) = (-1)^N * sin(R)
+ * sin(R) is approximated by corresponding polynomial
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_sin8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_sin8
+
+__svml_sin8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ xorl %edx, %edx
+
+/* start arg. reduction */
+ vmovups 128+__svml_dsin_data_internal(%rip), %zmm3
+ vmovups 192+__svml_dsin_data_internal(%rip), %zmm9
+ vmovups 640+__svml_dsin_data_internal(%rip), %zmm7
+ vmovups 704+__svml_dsin_data_internal(%rip), %zmm5
+ vmovups 1216+__svml_dsin_data_internal(%rip), %zmm8
+ vmovups 1088+__svml_dsin_data_internal(%rip), %zmm10
+ vmovups 1024+__svml_dsin_data_internal(%rip), %zmm11
+ vmovups 768+__svml_dsin_data_internal(%rip), %zmm6
+ vmovups 960+__svml_dsin_data_internal(%rip), %zmm12
+ vmovups 320+__svml_dsin_data_internal(%rip), %zmm4
+ vmovups 896+__svml_dsin_data_internal(%rip), %zmm13
+ vmovups 64+__svml_dsin_data_internal(%rip), %zmm14
+ vmovaps %zmm0, %zmm2
+ vfmadd213pd {rn-sae}, %zmm9, %zmm2, %zmm3
+ vcmppd $0, {sae}, %zmm4, %zmm2, %k1
+ vpsllq $63, %zmm3, %zmm0
+
+/* dN */
+ vsubpd {rn-sae}, %zmm9, %zmm3, %zmm1
+ vandpd __svml_dsin_data_internal(%rip), %zmm2, %zmm9
+ vxorpd %zmm2, %zmm0, %zmm0{%k1}
+ vfnmadd213pd {rn-sae}, %zmm2, %zmm1, %zmm7
+ vmovups 1152+__svml_dsin_data_internal(%rip), %zmm3
+ vcmppd $22, {sae}, %zmm14, %zmm9, %k1
+ vfnmadd231pd {rn-sae}, %zmm1, %zmm5, %zmm7
+
+/* will branch if long arg. reduction needed */
+ kortestw %k1, %k1
+ vmulpd {rn-sae}, %zmm7, %zmm7, %zmm15
+ vfnmadd213pd {rn-sae}, %zmm7, %zmm6, %zmm1
+ vfmadd231pd {rn-sae}, %zmm15, %zmm8, %zmm3
+ vmulpd {rn-sae}, %zmm1, %zmm15, %zmm8
+ vfmadd213pd {rn-sae}, %zmm10, %zmm15, %zmm3
+ vfmadd213pd {rn-sae}, %zmm11, %zmm15, %zmm3
+ vfmadd213pd {rn-sae}, %zmm12, %zmm15, %zmm3
+ vfmadd213pd {rn-sae}, %zmm13, %zmm15, %zmm3
+
+/* mask will be used to decide whether long arg. reduction is needed */
+ vmovups 832+__svml_dsin_data_internal(%rip), %zmm13
+ vfmadd213pd {rn-sae}, %zmm13, %zmm15, %zmm3
+ vfmadd213pd {rn-sae}, %zmm1, %zmm8, %zmm3
+ vxorpd %zmm0, %zmm3, %zmm0
+ jne .LBL_1_12
+
+.LBL_1_2:
+
+ testl %edx, %edx
+ jne .LBL_1_4
+
+.LBL_1_3:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_4:
+
+ vmovups %zmm2, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_3
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_8:
+
+ btl %r12d, %r13d
+ jc .LBL_1_11
+
+.LBL_1_9:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_8
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_3
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_11:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dsin_cout_rare_internal
+ jmp .LBL_1_9
+ .cfi_restore 4
+ .cfi_restore 5
+ .cfi_restore 12
+ .cfi_restore 13
+ .cfi_restore 122
+ .cfi_restore 123
+ .cfi_restore 124
+ .cfi_restore 125
+
+.LBL_1_12:
+
+
+/* ............Check for Inf and NaNs................. */
+ vmovups 16512+__svml_dsin_data_internal_ha(%rip), %zmm1
+
+/*
+ * Get the (2^a / 2pi) mod 1 values from the table.
+ * Because VLANG doesn't have L-type gather, we need a trivial cast
+ */
+ lea __svml_dsin_reduction_data_internal(%rip), %rax
+ vmovups %zmm2, 64(%rsp)
+ vmovups %zmm0, (%rsp)
+ vandpd %zmm9, %zmm1, %zmm6
+ vxorpd %zmm2, %zmm9, %zmm8
+ vpbroadcastq .L_2il0floatpacket.26(%rip), %zmm11
+ vcmppd $4, {sae}, %zmm1, %zmm6, %k2
+ vmovups %zmm8, 128(%rsp)
+ vmovaps %zmm11, %zmm5
+
+/*
+ * The output is _VRES_Z (high) + _VRES_E (low), and the integer part is _VRES_IND
+ * Now resume the original code.
+ * ..................... Table look-up ........................
+ */
+ lea __svml_dsin_data_internal_ha(%rip), %rcx
+ vpandq .L_2il0floatpacket.27(%rip){1to8}, %zmm9, %zmm4
+ vpandnq %zmm6, %zmm6, %zmm5{%k2}
+ vpsrlq $52, %zmm4, %zmm3
+ vcmppd $3, {sae}, %zmm5, %zmm5, %k0
+ vpsllq $1, %zmm3, %zmm15
+
+/*
+ * Break the P_xxx and m into 32-bit chunks ready for
+ * the long multiplication via 32x32->64 multiplications
+ */
+ vpbroadcastq .L_2il0floatpacket.30(%rip), %zmm6
+ kxnorw %k0, %k0, %k3
+ kxnorw %k0, %k0, %k2
+ kmovw %k0, %edx
+ vpaddq %zmm3, %zmm15, %zmm2
+ vpsllq $3, %zmm2, %zmm14
+ vpmovqd %zmm14, %ymm12
+ vpxord %zmm1, %zmm1, %zmm1
+ vgatherdpd (%rax,%ymm12), %zmm1{%k3}
+ kxnorw %k0, %k0, %k3
+ vpsrlq $32, %zmm1, %zmm7
+ vpxord %zmm5, %zmm5, %zmm5
+ vpxord %zmm4, %zmm4, %zmm4
+ vgatherdpd 8(%rax,%ymm12), %zmm5{%k2}
+ vgatherdpd 16(%rax,%ymm12), %zmm4{%k3}
+ vpsrlq $32, %zmm5, %zmm10
+ vpsrlq $32, %zmm4, %zmm13
+
+/*
+ * Also get the significand as an integer
+ * NB: adding in the integer bit is wrong for denorms!
+ * To make this work for denorms we should do something slightly different
+ */
+ vpandq .L_2il0floatpacket.28(%rip){1to8}, %zmm9, %zmm8
+ vpaddq .L_2il0floatpacket.29(%rip){1to8}, %zmm8, %zmm15
+ vpsrlq $32, %zmm15, %zmm8
+ vpmullq %zmm10, %zmm8, %zmm3
+ vpandq %zmm6, %zmm1, %zmm0
+ vpandq %zmm6, %zmm5, %zmm12
+ vpandq %zmm6, %zmm4, %zmm5
+ vpandq %zmm6, %zmm15, %zmm14
+
+/* Now do the big multiplication and carry propagation */
+ vpmullq %zmm0, %zmm8, %zmm4
+ vpmullq %zmm12, %zmm8, %zmm2
+ vpmullq %zmm13, %zmm8, %zmm1
+ vpmullq %zmm5, %zmm8, %zmm8
+ vpmullq %zmm0, %zmm14, %zmm5
+ vpmullq %zmm12, %zmm14, %zmm0
+ vpmullq %zmm13, %zmm14, %zmm13
+ vpmullq %zmm7, %zmm14, %zmm7
+ vpmullq %zmm10, %zmm14, %zmm10
+ vpsrlq $32, %zmm13, %zmm14
+ vpsrlq $32, %zmm0, %zmm13
+ vpsrlq $32, %zmm5, %zmm12
+ vpsrlq $32, %zmm10, %zmm15
+ vpaddq %zmm14, %zmm1, %zmm1
+ vpaddq %zmm13, %zmm2, %zmm14
+ vpaddq %zmm12, %zmm4, %zmm2
+ vpaddq %zmm15, %zmm3, %zmm13
+ vpandq %zmm6, %zmm7, %zmm7
+ vpaddq %zmm2, %zmm7, %zmm4
+ vpsrlq $32, %zmm8, %zmm2
+ vpandq %zmm6, %zmm0, %zmm0
+ vpaddq %zmm1, %zmm0, %zmm1
+ vpaddq %zmm1, %zmm2, %zmm15
+ vpsrlq $32, %zmm15, %zmm8
+ vpandq %zmm6, %zmm10, %zmm10
+ vpaddq %zmm14, %zmm10, %zmm0
+ vpaddq %zmm0, %zmm8, %zmm12
+
+/*
+ * Now round at the 2^-9 bit position for reduction mod pi/2^8
+ * instead of the original 2pi (but still with the same 2pi scaling).
+ * Use a shifter of 2^43 + 2^42.
+ * The N we get is our final version; it has an offset of
+ * 2^9 because of the implicit integer bit, and anyway for negative
+ * starting value it's a 2s complement thing. But we need to mask
+ * off the exponent part anyway so it's fine.
+ */
+ vpbroadcastq .L_2il0floatpacket.33(%rip), %zmm0
+ vpsrlq $32, %zmm12, %zmm7
+ vpandq %zmm6, %zmm5, %zmm3
+ vpaddq %zmm13, %zmm3, %zmm5
+ vpaddq %zmm5, %zmm7, %zmm3
+ vpsllq $32, %zmm12, %zmm7
+ vpsrlq $32, %zmm3, %zmm10
+ vpaddq %zmm4, %zmm10, %zmm2
+
+/* Assemble reduced argument from the pieces */
+ vpandq %zmm6, %zmm15, %zmm13
+ vpandq %zmm6, %zmm3, %zmm8
+ vpsllq $32, %zmm2, %zmm6
+ vpaddq %zmm13, %zmm7, %zmm4
+
+/*
+ * If the magnitude of the input is <= 2^-20, then
+ * just pass through the input, since no reduction will be needed and
+ * the main path will only work accurately if the reduced argument is
+ * about >= 2^-70 (which it is for all large pi multiples)
+ */
+ vpbroadcastq .L_2il0floatpacket.42(%rip), %zmm13
+ vpaddq %zmm8, %zmm6, %zmm15
+ vpsrlq $12, %zmm15, %zmm1
+
+/*
+ * We want to incorporate the original sign now too.
+ * Do it here for convenience in getting the right N value,
+ * though we could wait right to the end if we were prepared
+ * to modify the sign of N later too.
+ * So get the appropriate sign mask now (or sooner).
+ */
+ vpandq .L_2il0floatpacket.31(%rip){1to8}, %zmm9, %zmm3
+
+/*
+ * Create floating-point high part, implicitly adding integer bit 1
+ * Incorporate overall sign at this stage too.
+ */
+ vpxorq .L_2il0floatpacket.32(%rip){1to8}, %zmm3, %zmm6
+ vporq %zmm6, %zmm1, %zmm5
+ vaddpd {rn-sae}, %zmm5, %zmm0, %zmm2
+ vsubpd {rn-sae}, %zmm0, %zmm2, %zmm10
+ vsubpd {rn-sae}, %zmm10, %zmm5, %zmm10
+ vpandq .L_2il0floatpacket.36(%rip){1to8}, %zmm4, %zmm12
+ vpsllq $28, %zmm12, %zmm14
+ vpsrlq $24, %zmm4, %zmm4
+ vpandq .L_2il0floatpacket.38(%rip){1to8}, %zmm15, %zmm15
+
+/*
+ * Create floating-point low and medium parts, respectively
+ * lo_23, ... lo_0, 0, ..., 0
+ * hi_11, ... hi_0, lo_63, ..., lo_24
+ * then subtract off the implicitly added integer bits,
+ * 2^-104 and 2^-52, respectively.
+ * Put the original sign into all of them at this stage.
+ */
+ vpxorq .L_2il0floatpacket.35(%rip){1to8}, %zmm3, %zmm7
+ vpxorq .L_2il0floatpacket.37(%rip){1to8}, %zmm3, %zmm1
+ vpsllq $40, %zmm15, %zmm3
+ vporq %zmm7, %zmm14, %zmm8
+ vsubpd {rn-sae}, %zmm7, %zmm8, %zmm5
+ vandpd .L_2il0floatpacket.41(%rip){1to8}, %zmm9, %zmm14
+ vcmppd $22, {sae}, %zmm13, %zmm14, %k3
+ vcmppd $26, {sae}, %zmm13, %zmm14, %k2
+ vporq %zmm4, %zmm3, %zmm8
+ vporq %zmm1, %zmm8, %zmm7
+ vsubpd {rn-sae}, %zmm1, %zmm7, %zmm6
+
+/*
+ * Now multiply those numbers all by 2 pi, reasonably accurately.
+ * (RHi + RLo) * (pi_lead + pi_trail) ~=
+ * RHi * pi_lead + (RHi * pi_trail + RLo * pi_lead)
+ */
+ vpbroadcastq .L_2il0floatpacket.39(%rip), %zmm4
+
+/* Now add them up into 2 reasonably aligned pieces */
+ vaddpd {rn-sae}, %zmm6, %zmm10, %zmm12
+ vmulpd {rn-sae}, %zmm4, %zmm12, %zmm15
+ vsubpd {rn-sae}, %zmm12, %zmm10, %zmm10
+ vmovaps %zmm4, %zmm3
+ vfmsub213pd {rn-sae}, %zmm15, %zmm12, %zmm3
+ vmovaps %zmm11, %zmm1
+
+/* Grab our final N value as an integer, appropriately masked mod 2^9 */
+ vpandq .L_2il0floatpacket.34(%rip){1to8}, %zmm2, %zmm0
+ vaddpd {rn-sae}, %zmm10, %zmm6, %zmm2
+ vaddpd {rn-sae}, %zmm5, %zmm2, %zmm6
+ vpbroadcastq .L_2il0floatpacket.40(%rip), %zmm5
+ vfmadd213pd {rn-sae}, %zmm3, %zmm5, %zmm12
+ vfmadd213pd {rn-sae}, %zmm12, %zmm4, %zmm6
+ vmovups 16960+__svml_dsin_data_internal_ha(%rip), %zmm4
+ vpandnq %zmm14, %zmm14, %zmm11{%k3}
+ vandpd %zmm9, %zmm11, %zmm9
+ vpsllq $5, %zmm0, %zmm11
+ kxnorw %k0, %k0, %k3
+ vpandnq %zmm14, %zmm14, %zmm1{%k2}
+ vandpd %zmm15, %zmm1, %zmm8
+ vandpd %zmm6, %zmm1, %zmm1
+ vpmovqd %zmm11, %ymm6
+ vorpd %zmm8, %zmm9, %zmm7
+ vmovups 17216+__svml_dsin_data_internal_ha(%rip), %zmm14
+ vmovups 17088+__svml_dsin_data_internal_ha(%rip), %zmm15
+
+/* ............... Polynomial approximation ................... */
+ vmulpd {rn-sae}, %zmm7, %zmm7, %zmm9
+ kxnorw %k0, %k0, %k2
+
+/* ................. Reconstruction: res_hi ................... */
+ vmovaps %zmm7, %zmm0
+ vmovaps %zmm7, %zmm8
+ vpxord %zmm10, %zmm10, %zmm10
+ vgatherdpd (%rcx,%ymm6), %zmm10{%k2}
+ kxnorw %k0, %k0, %k2
+ vpxord %zmm12, %zmm12, %zmm12
+ vpxord %zmm11, %zmm11, %zmm11
+ vgatherdpd 8(%rcx,%ymm6), %zmm12{%k3}
+ vgatherdpd 16(%rcx,%ymm6), %zmm11{%k2}
+ kxnorw %k0, %k0, %k3
+ vfmadd213pd {rn-sae}, %zmm11, %zmm12, %zmm0
+ vfmadd132pd {rn-sae}, %zmm10, %zmm0, %zmm8
+
+/* ................. Reconstruction: res_lo ................... */
+ vsubpd {rn-sae}, %zmm0, %zmm11, %zmm3
+ vsubpd {rn-sae}, %zmm8, %zmm0, %zmm2
+ vmovups 17024+__svml_dsin_data_internal_ha(%rip), %zmm0
+ vfmadd231pd {rn-sae}, %zmm7, %zmm12, %zmm3
+ vfmadd231pd {rn-sae}, %zmm10, %zmm7, %zmm2
+ vfmadd231pd {rn-sae}, %zmm9, %zmm0, %zmm4
+ vaddpd {rn-sae}, %zmm3, %zmm2, %zmm13
+ vaddpd {rn-sae}, %zmm12, %zmm10, %zmm2
+ vmulpd {rn-sae}, %zmm9, %zmm4, %zmm5
+ vmulpd {rn-sae}, %zmm7, %zmm5, %zmm0
+
+/* ................. Reconstruction: res_lo+corr ................... */
+ vfnmadd213pd {rn-sae}, %zmm2, %zmm11, %zmm7
+ vfmadd213pd {rn-sae}, %zmm13, %zmm2, %zmm0
+ vmovups 17152+__svml_dsin_data_internal_ha(%rip), %zmm13
+ vmovups 64(%rsp), %zmm2
+ vfmadd231pd {rn-sae}, %zmm9, %zmm14, %zmm13
+ vfmadd213pd {rn-sae}, %zmm15, %zmm9, %zmm13
+ vmulpd {rn-sae}, %zmm9, %zmm13, %zmm3
+ vfmadd213pd {rn-sae}, %zmm0, %zmm11, %zmm3
+ vmovups (%rsp), %zmm0
+ vpxord %zmm11, %zmm11, %zmm11
+ vgatherdpd 24(%rcx,%ymm6), %zmm11{%k3}
+ vfmadd213pd {rn-sae}, %zmm11, %zmm7, %zmm1
+ vaddpd {rn-sae}, %zmm1, %zmm3, %zmm7
+
+/* .................. Final reconstruction ................... */
+ vaddpd {rn-sae}, %zmm7, %zmm8, %zmm9
+ vxorpd 128(%rsp), %zmm9, %zmm0{%k1}
+ jmp .LBL_1_2
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_sin8,@function
+ .size __svml_sin8,.-__svml_sin8
+..LN__svml_sin8.0:
+
+.L_2__routine_start___svml_dsin_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dsin_cout_rare_internal:
+
+
+ .cfi_startproc
+..L67:
+
+ movzwl 6(%rdi), %eax
+ andl $32752, %eax
+ movsd (%rdi), %xmm1
+ movb 7(%rdi), %dl
+ andb $127, %dl
+ movsd %xmm1, -8(%rsp)
+ cmpl $32752, %eax
+ jne .LBL_2_6
+
+
+ cmpl $0, -8(%rsp)
+ jne .LBL_2_5
+
+
+ movb %dl, -1(%rsp)
+ cmpl $2146435072, -4(%rsp)
+ jne .LBL_2_5
+
+
+ movsd __dsin_la_CoutTab(%rip), %xmm0
+ movl $1, %eax
+ mulsd %xmm0, %xmm1
+ movsd %xmm1, (%rsi)
+ ret
+
+.LBL_2_5:
+
+ mulsd %xmm1, %xmm1
+ xorl %eax, %eax
+ movsd %xmm1, (%rsi)
+ ret
+
+.LBL_2_6:
+
+ xorl %eax, %eax
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dsin_cout_rare_internal,@function
+ .size __svml_dsin_cout_rare_internal,.-__svml_dsin_cout_rare_internal
+..LN__svml_dsin_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dsin_data_internal:
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 0
+ .long 1097859072
+ .long 0
+ .long 1097859072
+ .long 0
+ .long 1097859072
+ .long 0
+ .long 1097859072
+ .long 0
+ .long 1097859072
+ .long 0
+ .long 1097859072
+ .long 0
+ .long 1097859072
+ .long 0
+ .long 1097859072
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 1841940611
+ .long 1070882608
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 1073741824
+ .long 1074340347
+ .long 1073741824
+ .long 1074340347
+ .long 1073741824
+ .long 1074340347
+ .long 1073741824
+ .long 1074340347
+ .long 1073741824
+ .long 1074340347
+ .long 1073741824
+ .long 1074340347
+ .long 1073741824
+ .long 1074340347
+ .long 1073741824
+ .long 1074340347
+ .long 0
+ .long 1048855597
+ .long 0
+ .long 1048855597
+ .long 0
+ .long 1048855597
+ .long 0
+ .long 1048855597
+ .long 0
+ .long 1048855597
+ .long 0
+ .long 1048855597
+ .long 0
+ .long 1048855597
+ .long 0
+ .long 1048855597
+ .long 2147483648
+ .long 1023952536
+ .long 2147483648
+ .long 1023952536
+ .long 2147483648
+ .long 1023952536
+ .long 2147483648
+ .long 1023952536
+ .long 2147483648
+ .long 1023952536
+ .long 2147483648
+ .long 1023952536
+ .long 2147483648
+ .long 1023952536
+ .long 2147483648
+ .long 1023952536
+ .long 1880851354
+ .long 998820945
+ .long 1880851354
+ .long 998820945
+ .long 1880851354
+ .long 998820945
+ .long 1880851354
+ .long 998820945
+ .long 1880851354
+ .long 998820945
+ .long 1880851354
+ .long 998820945
+ .long 1880851354
+ .long 998820945
+ .long 1880851354
+ .long 998820945
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 1413754136
+ .long 1074340347
+ .long 856972294
+ .long 1017226790
+ .long 856972294
+ .long 1017226790
+ .long 856972294
+ .long 1017226790
+ .long 856972294
+ .long 1017226790
+ .long 856972294
+ .long 1017226790
+ .long 856972294
+ .long 1017226790
+ .long 856972294
+ .long 1017226790
+ .long 856972294
+ .long 1017226790
+ .long 688016905
+ .long 962338001
+ .long 688016905
+ .long 962338001
+ .long 688016905
+ .long 962338001
+ .long 688016905
+ .long 962338001
+ .long 688016905
+ .long 962338001
+ .long 688016905
+ .long 962338001
+ .long 688016905
+ .long 962338001
+ .long 688016905
+ .long 962338001
+ .long 1431655592
+ .long 3217380693
+ .long 1431655592
+ .long 3217380693
+ .long 1431655592
+ .long 3217380693
+ .long 1431655592
+ .long 3217380693
+ .long 1431655592
+ .long 3217380693
+ .long 1431655592
+ .long 3217380693
+ .long 1431655592
+ .long 3217380693
+ .long 1431655592
+ .long 3217380693
+ .long 286303603
+ .long 1065423121
+ .long 286303603
+ .long 1065423121
+ .long 286303603
+ .long 1065423121
+ .long 286303603
+ .long 1065423121
+ .long 286303603
+ .long 1065423121
+ .long 286303603
+ .long 1065423121
+ .long 286303603
+ .long 1065423121
+ .long 286303603
+ .long 1065423121
+ .long 430332381
+ .long 3207201184
+ .long 430332381
+ .long 3207201184
+ .long 430332381
+ .long 3207201184
+ .long 430332381
+ .long 3207201184
+ .long 430332381
+ .long 3207201184
+ .long 430332381
+ .long 3207201184
+ .long 430332381
+ .long 3207201184
+ .long 430332381
+ .long 3207201184
+ .long 2154487066
+ .long 1053236707
+ .long 2154487066
+ .long 1053236707
+ .long 2154487066
+ .long 1053236707
+ .long 2154487066
+ .long 1053236707
+ .long 2154487066
+ .long 1053236707
+ .long 2154487066
+ .long 1053236707
+ .long 2154487066
+ .long 1053236707
+ .long 2154487066
+ .long 1053236707
+ .long 1521109587
+ .long 3193628213
+ .long 1521109587
+ .long 3193628213
+ .long 1521109587
+ .long 3193628213
+ .long 1521109587
+ .long 3193628213
+ .long 1521109587
+ .long 3193628213
+ .long 1521109587
+ .long 3193628213
+ .long 1521109587
+ .long 3193628213
+ .long 1521109587
+ .long 3193628213
+ .long 3993098302
+ .long 1038487147
+ .long 3993098302
+ .long 1038487147
+ .long 3993098302
+ .long 1038487147
+ .long 3993098302
+ .long 1038487147
+ .long 3993098302
+ .long 1038487147
+ .long 3993098302
+ .long 1038487147
+ .long 3993098302
+ .long 1038487147
+ .long 3993098302
+ .long 1038487147
+ .long 2124375536
+ .long 3177836881
+ .long 2124375536
+ .long 3177836881
+ .long 2124375536
+ .long 3177836881
+ .long 2124375536
+ .long 3177836881
+ .long 2124375536
+ .long 3177836881
+ .long 2124375536
+ .long 3177836881
+ .long 2124375536
+ .long 3177836881
+ .long 2124375536
+ .long 3177836881
+ .type __svml_dsin_data_internal,@object
+ .size __svml_dsin_data_internal,1280
+ .align 64
+__svml_dsin_data_internal_ha:
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2376373521
+ .long 3205741868
+ .long 0
+ .long 1072693248
+ .long 4242458500
+ .long 1065951697
+ .long 2684354560
+ .long 1009354638
+ .long 3650591271
+ .long 3207838971
+ .long 0
+ .long 1072693248
+ .long 4154680958
+ .long 1067000149
+ .long 0
+ .long 3153796451
+ .long 69373323
+ .long 3209049152
+ .long 0
+ .long 1072693248
+ .long 1972655565
+ .long 1067636837
+ .long 1073741824
+ .long 1009157878
+ .long 220529721
+ .long 3209935929
+ .long 0
+ .long 1072693248
+ .long 4044216340
+ .long 1068048229
+ .long 0
+ .long 3156808381
+ .long 3810305407
+ .long 3210663220
+ .long 0
+ .long 1072693248
+ .long 2046304480
+ .long 1068459374
+ .long 3758096384
+ .long 3156402667
+ .long 4269262315
+ .long 3211145810
+ .long 0
+ .long 1072693248
+ .long 2462980598
+ .long 1068684576
+ .long 2684354560
+ .long 3158941832
+ .long 1118107366
+ .long 3211670787
+ .long 0
+ .long 1072693248
+ .long 177906713
+ .long 1068889808
+ .long 3221225472
+ .long 3159310370
+ .long 393047345
+ .long 3212032302
+ .long 0
+ .long 1072693248
+ .long 3156849708
+ .long 1069094822
+ .long 3221225472
+ .long 3158189848
+ .long 1227670166
+ .long 3212375297
+ .long 0
+ .long 1072693248
+ .long 3349070549
+ .long 1069299589
+ .long 3758096384
+ .long 3156538269
+ .long 2402293340
+ .long 3212758471
+ .long 0
+ .long 1072693248
+ .long 1453945614
+ .long 1069504078
+ .long 1610612736
+ .long 1011492612
+ .long 2592747447
+ .long 3213009315
+ .long 0
+ .long 1072693248
+ .long 3470456183
+ .long 1069627888
+ .long 1073741824
+ .long 3160744771
+ .long 1037482584
+ .long 3213240992
+ .long 0
+ .long 1072693248
+ .long 1854824762
+ .long 1069729808
+ .long 2684354560
+ .long 1011953664
+ .long 3451754846
+ .long 3213492662
+ .long 0
+ .long 1072693248
+ .long 2972270170
+ .long 1069831542
+ .long 1073741824
+ .long 3159524770
+ .long 1672287667
+ .long 3213764289
+ .long 0
+ .long 1072693248
+ .long 1149976518
+ .long 1069933076
+ .long 1610612736
+ .long 1013264895
+ .long 2346447124
+ .long 3213970635
+ .long 0
+ .long 1072693248
+ .long 3729833777
+ .long 1070034393
+ .long 3758096384
+ .long 1013044718
+ .long 18115067
+ .long 3214126342
+ .long 0
+ .long 1072693248
+ .long 1013556747
+ .long 1070135480
+ .long 2684354560
+ .long 3160567065
+ .long 2660899430
+ .long 3214291960
+ .long 0
+ .long 1072693248
+ .long 632292433
+ .long 1070236320
+ .long 3758096384
+ .long 3160963333
+ .long 1935888103
+ .long 3214467466
+ .long 0
+ .long 1072693248
+ .long 1786662755
+ .long 1070336898
+ .long 2147483648
+ .long 3155882307
+ .long 288924873
+ .long 3214652833
+ .long 0
+ .long 1072693248
+ .long 3846521617
+ .long 1070437199
+ .long 536870912
+ .long 1013406610
+ .long 2377770267
+ .long 3214848032
+ .long 0
+ .long 1072693248
+ .long 2065784603
+ .long 1070537209
+ .long 3758096384
+ .long 3160681966
+ .long 3250111450
+ .long 3214993525
+ .long 0
+ .long 1072693248
+ .long 238550446
+ .long 1070616504
+ .long 2684354560
+ .long 3154383565
+ .long 2306566604
+ .long 3215100913
+ .long 0
+ .long 1072693248
+ .long 1655830135
+ .long 1070666194
+ .long 0
+ .long 1014506690
+ .long 1913604284
+ .long 3215213171
+ .long 0
+ .long 1072693248
+ .long 1062001470
+ .long 1070715716
+ .long 0
+ .long 3160875220
+ .long 2476548698
+ .long 3215330282
+ .long 0
+ .long 1072693248
+ .long 785751814
+ .long 1070765062
+ .long 2684354560
+ .long 3161838221
+ .long 1261629236
+ .long 3215452229
+ .long 0
+ .long 1072693248
+ .long 3269558610
+ .long 1070814224
+ .long 536870912
+ .long 3161705216
+ .long 997322465
+ .long 3215578993
+ .long 0
+ .long 1072693248
+ .long 2484561409
+ .long 1070863196
+ .long 1073741824
+ .long 1014024572
+ .long 1296295961
+ .long 3215710555
+ .long 0
+ .long 1072693248
+ .long 1115219818
+ .long 1070911970
+ .long 0
+ .long 1013072242
+ .long 2962723252
+ .long 3215846895
+ .long 0
+ .long 1072693248
+ .long 1974149085
+ .long 1070960538
+ .long 3221225472
+ .long 3156147648
+ .long 4002549419
+ .long 3215985292
+ .long 0
+ .long 1072693248
+ .long 3711903686
+ .long 1071008893
+ .long 1073741824
+ .long 1011944747
+ .long 1234824733
+ .long 3216058210
+ .long 0
+ .long 1072693248
+ .long 821708191
+ .long 1071057029
+ .long 3758096384
+ .long 3161738009
+ .long 3996842794
+ .long 3216133484
+ .long 0
+ .long 1072693248
+ .long 824036583
+ .long 1071104937
+ .long 0
+ .long 1008313330
+ .long 2255197647
+ .long 3216211105
+ .long 0
+ .long 1072693248
+ .long 2796464483
+ .long 1071152610
+ .long 3221225472
+ .long 3160878317
+ .long 1638976426
+ .long 3216291060
+ .long 0
+ .long 1072693248
+ .long 1673302999
+ .long 1071200042
+ .long 2147483648
+ .long 1013351473
+ .long 1972483635
+ .long 3216373337
+ .long 0
+ .long 1072693248
+ .long 1135144330
+ .long 1071247225
+ .long 536870912
+ .long 1013373569
+ .long 1577996576
+ .long 3216457924
+ .long 0
+ .long 1072693248
+ .long 728580042
+ .long 1071294152
+ .long 1610612736
+ .long 3162332944
+ .long 1578746984
+ .long 3216544808
+ .long 0
+ .long 1072693248
+ .long 165764288
+ .long 1071340816
+ .long 3221225472
+ .long 1013298018
+ .long 1612193054
+ .long 3216633976
+ .long 0
+ .long 1072693248
+ .long 3623952103
+ .long 1071387209
+ .long 2684354560
+ .long 3161985962
+ .long 4133449816
+ .long 3216725414
+ .long 0
+ .long 1072693248
+ .long 2570175582
+ .long 1071433326
+ .long 1073741824
+ .long 1012303118
+ .long 1539072807
+ .long 3216819110
+ .long 0
+ .long 1072693248
+ .long 1535566729
+ .long 1071479159
+ .long 2147483648
+ .long 1014321388
+ .long 1945768569
+ .long 3216915048
+ .long 0
+ .long 1072693248
+ .long 939980347
+ .long 1071524701
+ .long 0
+ .long 1012796809
+ .long 3429717432
+ .long 3217013214
+ .long 0
+ .long 1072693248
+ .long 1391425750
+ .long 1071569945
+ .long 3221225472
+ .long 3162362103
+ .long 1312926554
+ .long 3217072381
+ .long 0
+ .long 1072693248
+ .long 3690502842
+ .long 1071614884
+ .long 3221225472
+ .long 3157453855
+ .long 1663679671
+ .long 3217123670
+ .long 0
+ .long 1072693248
+ .long 2269920951
+ .long 1071652092
+ .long 3758096384
+ .long 3161672245
+ .long 3952756490
+ .long 3217176050
+ .long 0
+ .long 1072693248
+ .long 2569207790
+ .long 1071674247
+ .long 1073741824
+ .long 3163183617
+ .long 69903290
+ .long 3217229515
+ .long 0
+ .long 1072693248
+ .long 1297975695
+ .long 1071696240
+ .long 3221225472
+ .long 3163083735
+ .long 2678847490
+ .long 3217284054
+ .long 0
+ .long 1072693248
+ .long 1411074851
+ .long 1071718067
+ .long 1610612736
+ .long 3163484731
+ .long 2272832445
+ .long 3217339661
+ .long 0
+ .long 1072693248
+ .long 1675549513
+ .long 1071739725
+ .long 3221225472
+ .long 3163025138
+ .long 1539668340
+ .long 3217396327
+ .long 0
+ .long 1072693248
+ .long 967731400
+ .long 1071761211
+ .long 536870912
+ .long 1015752157
+ .long 2482246777
+ .long 3217454043
+ .long 0
+ .long 1072693248
+ .long 2570316633
+ .long 1071782521
+ .long 1610612736
+ .long 3162744753
+ .long 2129093113
+ .long 3217512801
+ .long 0
+ .long 1072693248
+ .long 1289556703
+ .long 1071803653
+ .long 536870912
+ .long 3162888820
+ .long 1129922991
+ .long 3217572592
+ .long 0
+ .long 1072693248
+ .long 637203434
+ .long 1071824603
+ .long 3221225472
+ .long 3159443841
+ .long 3761365757
+ .long 3217633406
+ .long 0
+ .long 1072693248
+ .long 4242632757
+ .long 1071845367
+ .long 536870912
+ .long 3161390278
+ .long 752919289
+ .long 3217695236
+ .long 0
+ .long 1072693248
+ .long 2969983475
+ .long 1071865944
+ .long 2684354560
+ .long 3162635443
+ .long 3652612115
+ .long 3217758070
+ .long 0
+ .long 1072693248
+ .long 689983673
+ .long 1071886330
+ .long 3758096384
+ .long 1014906405
+ .long 1883353036
+ .long 3217821901
+ .long 0
+ .long 1072693248
+ .long 1397053140
+ .long 1071906521
+ .long 1610612736
+ .long 1015245078
+ .long 1403757309
+ .long 3217886718
+ .long 0
+ .long 1072693248
+ .long 621354454
+ .long 1071926515
+ .long 536870912
+ .long 1013450602
+ .long 3239527685
+ .long 3217952511
+ .long 0
+ .long 1072693248
+ .long 2610628921
+ .long 1071946308
+ .long 1610612736
+ .long 3162668769
+ .long 3489768009
+ .long 3218019271
+ .long 0
+ .long 1072693248
+ .long 3152274921
+ .long 1071965898
+ .long 3758096384
+ .long 1013170835
+ .long 2371640770
+ .long 1070588851
+ .long 0
+ .long 1071644672
+ .long 2460177814
+ .long 1071985282
+ .long 2147483648
+ .long 3162116843
+ .long 2309668539
+ .long 1070520188
+ .long 0
+ .long 1071644672
+ .long 881650848
+ .long 1072004457
+ .long 2147483648
+ .long 3162986272
+ .long 2081278341
+ .long 1070450589
+ .long 0
+ .long 1071644672
+ .long 3194290572
+ .long 1072023419
+ .long 2147483648
+ .long 1015048682
+ .long 3753901657
+ .long 1070380064
+ .long 0
+ .long 1071644672
+ .long 1427975391
+ .long 1072042167
+ .long 1073741824
+ .long 3161608627
+ .long 1403691706
+ .long 1070308625
+ .long 0
+ .long 1071644672
+ .long 636516413
+ .long 1072060697
+ .long 3758096384
+ .long 1015823716
+ .long 2583490354
+ .long 1070236281
+ .long 0
+ .long 1071644672
+ .long 1719614413
+ .long 1072079006
+ .long 0
+ .long 3163282740
+ .long 2546065654
+ .long 1070163044
+ .long 0
+ .long 1071644672
+ .long 1424664751
+ .long 1072097092
+ .long 3221225472
+ .long 3163405315
+ .long 1416934267
+ .long 1070088925
+ .long 0
+ .long 1071644672
+ .long 938475414
+ .long 1072114952
+ .long 0
+ .long 1015076079
+ .long 4187227697
+ .long 1070013934
+ .long 0
+ .long 1071644672
+ .long 1594061409
+ .long 1072132583
+ .long 2147483648
+ .long 1014353870
+ .long 3526603391
+ .long 1069938084
+ .long 0
+ .long 1071644672
+ .long 577417135
+ .long 1072149983
+ .long 2684354560
+ .long 3161519415
+ .long 1250776663
+ .long 1069861386
+ .long 0
+ .long 1071644672
+ .long 3814135665
+ .long 1072167148
+ .long 3221225472
+ .long 3163146456
+ .long 4019165092
+ .long 1069783850
+ .long 0
+ .long 1071644672
+ .long 201299822
+ .long 1072184078
+ .long 3758096384
+ .long 3161912352
+ .long 1852581091
+ .long 1069705490
+ .long 0
+ .long 1071644672
+ .long 263859903
+ .long 1072200768
+ .long 0
+ .long 3162692284
+ .long 2485417816
+ .long 1069626316
+ .long 0
+ .long 1071644672
+ .long 1796544321
+ .long 1072217216
+ .long 536870912
+ .long 3162686945
+ .long 2586490530
+ .long 1069545162
+ .long 0
+ .long 1071644672
+ .long 2750387213
+ .long 1072233420
+ .long 2147483648
+ .long 3160858537
+ .long 1224902090
+ .long 1069383633
+ .long 0
+ .long 1071644672
+ .long 1234330619
+ .long 1072249378
+ .long 2684354560
+ .long 1015272473
+ .long 2285031318
+ .long 1069220549
+ .long 0
+ .long 1071644672
+ .long 4106737474
+ .long 1072265086
+ .long 2684354560
+ .long 3162592377
+ .long 3876290983
+ .long 1069055935
+ .long 0
+ .long 1071644672
+ .long 1207142209
+ .long 1072280544
+ .long 2147483648
+ .long 3162705634
+ .long 802660176
+ .long 1068889817
+ .long 0
+ .long 1071644672
+ .long 4012486548
+ .long 1072295747
+ .long 2684354560
+ .long 1014701564
+ .long 1726519029
+ .long 1068722218
+ .long 0
+ .long 1071644672
+ .long 2688952194
+ .long 1072310695
+ .long 0
+ .long 3161532603
+ .long 3382663878
+ .long 1068553164
+ .long 0
+ .long 1071644672
+ .long 453180130
+ .long 1072325385
+ .long 1073741824
+ .long 3162411281
+ .long 2598800519
+ .long 1068266419
+ .long 0
+ .long 1071644672
+ .long 688824739
+ .long 1072339814
+ .long 3758096384
+ .long 1010431536
+ .long 1038988426
+ .long 1067922646
+ .long 0
+ .long 1071644672
+ .long 2653017361
+ .long 1072353980
+ .long 0
+ .long 3162800062
+ .long 1102361128
+ .long 1067576117
+ .long 0
+ .long 1071644672
+ .long 1477771776
+ .long 1072367882
+ .long 536870912
+ .long 3163104986
+ .long 2880516564
+ .long 1067003401
+ .long 0
+ .long 1071644672
+ .long 1056266002
+ .long 1072381517
+ .long 2684354560
+ .long 3163469496
+ .long 1220541286
+ .long 1066197478
+ .long 0
+ .long 1071644672
+ .long 1159294526
+ .long 1072394883
+ .long 536870912
+ .long 3163276959
+ .long 1279178457
+ .long 1064107143
+ .long 0
+ .long 1071644672
+ .long 1731563730
+ .long 1072407978
+ .long 536870912
+ .long 1015540302
+ .long 31019393
+ .long 3212646089
+ .long 0
+ .long 1071644672
+ .long 2892993834
+ .long 1072420800
+ .long 536870912
+ .long 3163039143
+ .long 3506991783
+ .long 3214032490
+ .long 0
+ .long 1071644672
+ .long 645027145
+ .long 1072433348
+ .long 3221225472
+ .long 1012602239
+ .long 2140183630
+ .long 3214756396
+ .long 0
+ .long 1071644672
+ .long 4051746225
+ .long 1072445618
+ .long 1610612736
+ .long 3161907377
+ .long 600368053
+ .long 3215209541
+ .long 0
+ .long 1071644672
+ .long 881357723
+ .long 1072457611
+ .long 3221225472
+ .long 1013810890
+ .long 913431823
+ .long 3215576203
+ .long 0
+ .long 1071644672
+ .long 557060597
+ .long 1072469323
+ .long 0
+ .long 3159554934
+ .long 1073154251
+ .long 3215945137
+ .long 0
+ .long 1071644672
+ .long 4093443164
+ .long 1072480752
+ .long 536870912
+ .long 1014912865
+ .long 3631910143
+ .long 3216149439
+ .long 0
+ .long 1071644672
+ .long 4097623923
+ .long 1072491898
+ .long 2684354560
+ .long 3160308587
+ .long 1380647130
+ .long 3216336095
+ .long 0
+ .long 1071644672
+ .long 1950234076
+ .long 1072502759
+ .long 536870912
+ .long 3159425498
+ .long 4049357271
+ .long 3216523802
+ .long 0
+ .long 1071644672
+ .long 3511535930
+ .long 1072513332
+ .long 2147483648
+ .long 3162828626
+ .long 1896722595
+ .long 3216712534
+ .long 0
+ .long 1071644672
+ .long 1942611595
+ .long 1072523617
+ .long 3221225472
+ .long 3162410081
+ .long 1699043957
+ .long 3216902261
+ .long 0
+ .long 1071644672
+ .long 3476196678
+ .long 1072533611
+ .long 0
+ .long 1014257638
+ .long 3296146332
+ .long 1069485732
+ .long 0
+ .long 1070596096
+ .long 1647878299
+ .long 1072543314
+ .long 3758096384
+ .long 3162169063
+ .long 3286832763
+ .long 1069294100
+ .long 0
+ .long 1070596096
+ .long 3066872380
+ .long 1072552723
+ .long 3221225472
+ .long 1015561271
+ .long 1962712856
+ .long 1069101559
+ .long 0
+ .long 1070596096
+ .long 1647164971
+ .long 1072561838
+ .long 2147483648
+ .long 3162838250
+ .long 3601629044
+ .long 1068908137
+ .long 0
+ .long 1070596096
+ .long 83265253
+ .long 1072570657
+ .long 1610612736
+ .long 3162510535
+ .long 165911977
+ .long 1068713865
+ .long 0
+ .long 1070596096
+ .long 1261158782
+ .long 1072579178
+ .long 2147483648
+ .long 1015711544
+ .long 1348311045
+ .long 1068518770
+ .long 0
+ .long 1070596096
+ .long 3964199186
+ .long 1072587400
+ .long 3758096384
+ .long 3160501078
+ .long 386665102
+ .long 1068146822
+ .long 0
+ .long 1070596096
+ .long 2873938189
+ .long 1072595323
+ .long 1610612736
+ .long 3162311422
+ .long 1991047213
+ .long 1067753521
+ .long 0
+ .long 1070596096
+ .long 1455828442
+ .long 1072602945
+ .long 3758096384
+ .long 1015505073
+ .long 4107121629
+ .long 1067267139
+ .long 0
+ .long 1070596096
+ .long 3370060660
+ .long 1072610264
+ .long 1610612736
+ .long 1014787212
+ .long 723478390
+ .long 1066474790
+ .long 0
+ .long 1070596096
+ .long 3882371427
+ .long 1072617280
+ .long 2147483648
+ .long 1014923975
+ .long 2382326656
+ .long 1064562179
+ .long 0
+ .long 1070596096
+ .long 2749658050
+ .long 1072623992
+ .long 1610612736
+ .long 1015427338
+ .long 2614369450
+ .long 3212624080
+ .long 0
+ .long 1070596096
+ .long 4220661975
+ .long 1072630398
+ .long 3221225472
+ .long 1014312058
+ .long 3587565429
+ .long 3214108032
+ .long 0
+ .long 1070596096
+ .long 4151720666
+ .long 1072636498
+ .long 0
+ .long 3162639544
+ .long 2886567144
+ .long 3214910444
+ .long 0
+ .long 1070596096
+ .long 2892293513
+ .long 1072642291
+ .long 2684354560
+ .long 3162340271
+ .long 1765797566
+ .long 3215324543
+ .long 0
+ .long 1070596096
+ .long 990588717
+ .long 1072647776
+ .long 3758096384
+ .long 3162041857
+ .long 240740309
+ .long 3215727903
+ .long 0
+ .long 1070596096
+ .long 3489094832
+ .long 1072652951
+ .long 536870912
+ .long 1014325783
+ .long 2034433221
+ .long 1068349287
+ .long 0
+ .long 1069547520
+ .long 2745245815
+ .long 1072657817
+ .long 3221225472
+ .long 1015566129
+ .long 304938777
+ .long 1067944017
+ .long 0
+ .long 1069547520
+ .long 4201728937
+ .long 1072662372
+ .long 1610612736
+ .long 1014674006
+ .long 3299146087
+ .long 1067537882
+ .long 0
+ .long 1069547520
+ .long 617154971
+ .long 1072666617
+ .long 3758096384
+ .long 3163433696
+ .long 1953696209
+ .long 1066811523
+ .long 0
+ .long 1069547520
+ .long 2131272983
+ .long 1072670549
+ .long 3221225472
+ .long 3163005096
+ .long 3987691371
+ .long 1065590540
+ .long 0
+ .long 1069547520
+ .long 1905645377
+ .long 1072674169
+ .long 1610612736
+ .long 1014087596
+ .long 718380601
+ .long 3211081269
+ .long 0
+ .long 1069547520
+ .long 1893834707
+ .long 1072677476
+ .long 1610612736
+ .long 1015147654
+ .long 3272206680
+ .long 3213771729
+ .long 0
+ .long 1069547520
+ .long 4251821691
+ .long 1072680469
+ .long 2147483648
+ .long 3161841007
+ .long 257503056
+ .long 3214647653
+ .long 0
+ .long 1069547520
+ .long 2748392742
+ .long 1072683149
+ .long 536870912
+ .long 3163061750
+ .long 711626851
+ .long 1066916672
+ .long 0
+ .long 1068498944
+ .long 4240268041
+ .long 1072685514
+ .long 536870912
+ .long 1013588963
+ .long 2523975598
+ .long 1065789700
+ .long 0
+ .long 1068498944
+ .long 2902558778
+ .long 1072687565
+ .long 3221225472
+ .long 1013260780
+ .long 3237733378
+ .long 3209908784
+ .long 0
+ .long 1068498944
+ .long 1703834029
+ .long 1072689301
+ .long 3758096384
+ .long 1015028364
+ .long 1003003824
+ .long 3213591144
+ .long 0
+ .long 1068498944
+ .long 3816385918
+ .long 1072690721
+ .long 536870912
+ .long 3161216956
+ .long 2896342633
+ .long 1064747819
+ .long 0
+ .long 1067450368
+ .long 4026464093
+ .long 1072691826
+ .long 3221225472
+ .long 3163075789
+ .long 561145352
+ .long 3212540584
+ .long 0
+ .long 1067450368
+ .long 1619315981
+ .long 1072692616
+ .long 1073741824
+ .long 3162584397
+ .long 210035182
+ .long 3211491512
+ .long 0
+ .long 1066401792
+ .long 379294427
+ .long 1072693090
+ .long 3221225472
+ .long 1015405987
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 210035182
+ .long 1064007864
+ .long 0
+ .long 3213885440
+ .long 379294427
+ .long 1072693090
+ .long 3221225472
+ .long 1015405987
+ .long 561145352
+ .long 1065056936
+ .long 0
+ .long 3214934016
+ .long 1619315981
+ .long 1072692616
+ .long 1073741824
+ .long 3162584397
+ .long 2896342633
+ .long 3212231467
+ .long 0
+ .long 3214934016
+ .long 4026464093
+ .long 1072691826
+ .long 3221225472
+ .long 3163075789
+ .long 1003003824
+ .long 1066107496
+ .long 0
+ .long 3215982592
+ .long 3816385918
+ .long 1072690721
+ .long 536870912
+ .long 3161216956
+ .long 3237733378
+ .long 1062425136
+ .long 0
+ .long 3215982592
+ .long 1703834029
+ .long 1072689301
+ .long 3758096384
+ .long 1015028364
+ .long 2523975598
+ .long 3213273348
+ .long 0
+ .long 3215982592
+ .long 2902558778
+ .long 1072687565
+ .long 3221225472
+ .long 1013260780
+ .long 711626851
+ .long 3214400320
+ .long 0
+ .long 3215982592
+ .long 4240268041
+ .long 1072685514
+ .long 536870912
+ .long 1013588963
+ .long 257503056
+ .long 1067164005
+ .long 0
+ .long 3217031168
+ .long 2748392742
+ .long 1072683149
+ .long 536870912
+ .long 3163061750
+ .long 3272206680
+ .long 1066288081
+ .long 0
+ .long 3217031168
+ .long 4251821691
+ .long 1072680469
+ .long 2147483648
+ .long 3161841007
+ .long 718380601
+ .long 1063597621
+ .long 0
+ .long 3217031168
+ .long 1893834707
+ .long 1072677476
+ .long 1610612736
+ .long 1015147654
+ .long 3987691371
+ .long 3213074188
+ .long 0
+ .long 3217031168
+ .long 1905645377
+ .long 1072674169
+ .long 1610612736
+ .long 1014087596
+ .long 1953696209
+ .long 3214295171
+ .long 0
+ .long 3217031168
+ .long 2131272983
+ .long 1072670549
+ .long 3221225472
+ .long 3163005096
+ .long 3299146087
+ .long 3215021530
+ .long 0
+ .long 3217031168
+ .long 617154971
+ .long 1072666617
+ .long 3758096384
+ .long 3163433696
+ .long 304938777
+ .long 3215427665
+ .long 0
+ .long 3217031168
+ .long 4201728937
+ .long 1072662372
+ .long 1610612736
+ .long 1014674006
+ .long 2034433221
+ .long 3215832935
+ .long 0
+ .long 3217031168
+ .long 2745245815
+ .long 1072657817
+ .long 3221225472
+ .long 1015566129
+ .long 240740309
+ .long 1068244255
+ .long 0
+ .long 3218079744
+ .long 3489094832
+ .long 1072652951
+ .long 536870912
+ .long 1014325783
+ .long 1765797566
+ .long 1067840895
+ .long 0
+ .long 3218079744
+ .long 990588717
+ .long 1072647776
+ .long 3758096384
+ .long 3162041857
+ .long 2886567144
+ .long 1067426796
+ .long 0
+ .long 3218079744
+ .long 2892293513
+ .long 1072642291
+ .long 2684354560
+ .long 3162340271
+ .long 3587565429
+ .long 1066624384
+ .long 0
+ .long 3218079744
+ .long 4151720666
+ .long 1072636498
+ .long 0
+ .long 3162639544
+ .long 2614369450
+ .long 1065140432
+ .long 0
+ .long 3218079744
+ .long 4220661975
+ .long 1072630398
+ .long 3221225472
+ .long 1014312058
+ .long 2382326656
+ .long 3212045827
+ .long 0
+ .long 3218079744
+ .long 2749658050
+ .long 1072623992
+ .long 1610612736
+ .long 1015427338
+ .long 723478390
+ .long 3213958438
+ .long 0
+ .long 3218079744
+ .long 3882371427
+ .long 1072617280
+ .long 2147483648
+ .long 1014923975
+ .long 4107121629
+ .long 3214750787
+ .long 0
+ .long 3218079744
+ .long 3370060660
+ .long 1072610264
+ .long 1610612736
+ .long 1014787212
+ .long 1991047213
+ .long 3215237169
+ .long 0
+ .long 3218079744
+ .long 1455828442
+ .long 1072602945
+ .long 3758096384
+ .long 1015505073
+ .long 386665102
+ .long 3215630470
+ .long 0
+ .long 3218079744
+ .long 2873938189
+ .long 1072595323
+ .long 1610612736
+ .long 3162311422
+ .long 1348311045
+ .long 3216002418
+ .long 0
+ .long 3218079744
+ .long 3964199186
+ .long 1072587400
+ .long 3758096384
+ .long 3160501078
+ .long 165911977
+ .long 3216197513
+ .long 0
+ .long 3218079744
+ .long 1261158782
+ .long 1072579178
+ .long 2147483648
+ .long 1015711544
+ .long 3601629044
+ .long 3216391785
+ .long 0
+ .long 3218079744
+ .long 83265253
+ .long 1072570657
+ .long 1610612736
+ .long 3162510535
+ .long 1962712856
+ .long 3216585207
+ .long 0
+ .long 3218079744
+ .long 1647164971
+ .long 1072561838
+ .long 2147483648
+ .long 3162838250
+ .long 3286832763
+ .long 3216777748
+ .long 0
+ .long 3218079744
+ .long 3066872380
+ .long 1072552723
+ .long 3221225472
+ .long 1015561271
+ .long 3296146332
+ .long 3216969380
+ .long 0
+ .long 3218079744
+ .long 1647878299
+ .long 1072543314
+ .long 3758096384
+ .long 3162169063
+ .long 1699043957
+ .long 1069418613
+ .long 0
+ .long 3219128320
+ .long 3476196678
+ .long 1072533611
+ .long 0
+ .long 1014257638
+ .long 1896722595
+ .long 1069228886
+ .long 0
+ .long 3219128320
+ .long 1942611595
+ .long 1072523617
+ .long 3221225472
+ .long 3162410081
+ .long 4049357271
+ .long 1069040154
+ .long 0
+ .long 3219128320
+ .long 3511535930
+ .long 1072513332
+ .long 2147483648
+ .long 3162828626
+ .long 1380647130
+ .long 1068852447
+ .long 0
+ .long 3219128320
+ .long 1950234076
+ .long 1072502759
+ .long 536870912
+ .long 3159425498
+ .long 3631910143
+ .long 1068665791
+ .long 0
+ .long 3219128320
+ .long 4097623923
+ .long 1072491898
+ .long 2684354560
+ .long 3160308587
+ .long 1073154251
+ .long 1068461489
+ .long 0
+ .long 3219128320
+ .long 4093443164
+ .long 1072480752
+ .long 536870912
+ .long 1014912865
+ .long 913431823
+ .long 1068092555
+ .long 0
+ .long 3219128320
+ .long 557060597
+ .long 1072469323
+ .long 0
+ .long 3159554934
+ .long 600368053
+ .long 1067725893
+ .long 0
+ .long 3219128320
+ .long 881357723
+ .long 1072457611
+ .long 3221225472
+ .long 1013810890
+ .long 2140183630
+ .long 1067272748
+ .long 0
+ .long 3219128320
+ .long 4051746225
+ .long 1072445618
+ .long 1610612736
+ .long 3161907377
+ .long 3506991783
+ .long 1066548842
+ .long 0
+ .long 3219128320
+ .long 645027145
+ .long 1072433348
+ .long 3221225472
+ .long 1012602239
+ .long 31019393
+ .long 1065162441
+ .long 0
+ .long 3219128320
+ .long 2892993834
+ .long 1072420800
+ .long 536870912
+ .long 3163039143
+ .long 1279178457
+ .long 3211590791
+ .long 0
+ .long 3219128320
+ .long 1731563730
+ .long 1072407978
+ .long 536870912
+ .long 1015540302
+ .long 1220541286
+ .long 3213681126
+ .long 0
+ .long 3219128320
+ .long 1159294526
+ .long 1072394883
+ .long 536870912
+ .long 3163276959
+ .long 2880516564
+ .long 3214487049
+ .long 0
+ .long 3219128320
+ .long 1056266002
+ .long 1072381517
+ .long 2684354560
+ .long 3163469496
+ .long 1102361128
+ .long 3215059765
+ .long 0
+ .long 3219128320
+ .long 1477771776
+ .long 1072367882
+ .long 536870912
+ .long 3163104986
+ .long 1038988426
+ .long 3215406294
+ .long 0
+ .long 3219128320
+ .long 2653017361
+ .long 1072353980
+ .long 0
+ .long 3162800062
+ .long 2598800519
+ .long 3215750067
+ .long 0
+ .long 3219128320
+ .long 688824739
+ .long 1072339814
+ .long 3758096384
+ .long 1010431536
+ .long 3382663878
+ .long 3216036812
+ .long 0
+ .long 3219128320
+ .long 453180130
+ .long 1072325385
+ .long 1073741824
+ .long 3162411281
+ .long 1726519029
+ .long 3216205866
+ .long 0
+ .long 3219128320
+ .long 2688952194
+ .long 1072310695
+ .long 0
+ .long 3161532603
+ .long 802660176
+ .long 3216373465
+ .long 0
+ .long 3219128320
+ .long 4012486548
+ .long 1072295747
+ .long 2684354560
+ .long 1014701564
+ .long 3876290983
+ .long 3216539583
+ .long 0
+ .long 3219128320
+ .long 1207142209
+ .long 1072280544
+ .long 2147483648
+ .long 3162705634
+ .long 2285031318
+ .long 3216704197
+ .long 0
+ .long 3219128320
+ .long 4106737474
+ .long 1072265086
+ .long 2684354560
+ .long 3162592377
+ .long 1224902090
+ .long 3216867281
+ .long 0
+ .long 3219128320
+ .long 1234330619
+ .long 1072249378
+ .long 2684354560
+ .long 1015272473
+ .long 2586490530
+ .long 3217028810
+ .long 0
+ .long 3219128320
+ .long 2750387213
+ .long 1072233420
+ .long 2147483648
+ .long 3160858537
+ .long 2485417816
+ .long 3217109964
+ .long 0
+ .long 3219128320
+ .long 1796544321
+ .long 1072217216
+ .long 536870912
+ .long 3162686945
+ .long 1852581091
+ .long 3217189138
+ .long 0
+ .long 3219128320
+ .long 263859903
+ .long 1072200768
+ .long 0
+ .long 3162692284
+ .long 4019165092
+ .long 3217267498
+ .long 0
+ .long 3219128320
+ .long 201299822
+ .long 1072184078
+ .long 3758096384
+ .long 3161912352
+ .long 1250776663
+ .long 3217345034
+ .long 0
+ .long 3219128320
+ .long 3814135665
+ .long 1072167148
+ .long 3221225472
+ .long 3163146456
+ .long 3526603391
+ .long 3217421732
+ .long 0
+ .long 3219128320
+ .long 577417135
+ .long 1072149983
+ .long 2684354560
+ .long 3161519415
+ .long 4187227697
+ .long 3217497582
+ .long 0
+ .long 3219128320
+ .long 1594061409
+ .long 1072132583
+ .long 2147483648
+ .long 1014353870
+ .long 1416934267
+ .long 3217572573
+ .long 0
+ .long 3219128320
+ .long 938475414
+ .long 1072114952
+ .long 0
+ .long 1015076079
+ .long 2546065654
+ .long 3217646692
+ .long 0
+ .long 3219128320
+ .long 1424664751
+ .long 1072097092
+ .long 3221225472
+ .long 3163405315
+ .long 2583490354
+ .long 3217719929
+ .long 0
+ .long 3219128320
+ .long 1719614413
+ .long 1072079006
+ .long 0
+ .long 3163282740
+ .long 1403691706
+ .long 3217792273
+ .long 0
+ .long 3219128320
+ .long 636516413
+ .long 1072060697
+ .long 3758096384
+ .long 1015823716
+ .long 3753901657
+ .long 3217863712
+ .long 0
+ .long 3219128320
+ .long 1427975391
+ .long 1072042167
+ .long 1073741824
+ .long 3161608627
+ .long 2081278341
+ .long 3217934237
+ .long 0
+ .long 3219128320
+ .long 3194290572
+ .long 1072023419
+ .long 2147483648
+ .long 1015048682
+ .long 2309668539
+ .long 3218003836
+ .long 0
+ .long 3219128320
+ .long 881650848
+ .long 1072004457
+ .long 2147483648
+ .long 3162986272
+ .long 2371640770
+ .long 3218072499
+ .long 0
+ .long 3219128320
+ .long 2460177814
+ .long 1071985282
+ .long 2147483648
+ .long 3162116843
+ .long 3489768009
+ .long 1070535623
+ .long 0
+ .long 3220176896
+ .long 3152274921
+ .long 1071965898
+ .long 3758096384
+ .long 1013170835
+ .long 3239527685
+ .long 1070468863
+ .long 0
+ .long 3220176896
+ .long 2610628921
+ .long 1071946308
+ .long 1610612736
+ .long 3162668769
+ .long 1403757309
+ .long 1070403070
+ .long 0
+ .long 3220176896
+ .long 621354454
+ .long 1071926515
+ .long 536870912
+ .long 1013450602
+ .long 1883353036
+ .long 1070338253
+ .long 0
+ .long 3220176896
+ .long 1397053140
+ .long 1071906521
+ .long 1610612736
+ .long 1015245078
+ .long 3652612115
+ .long 1070274422
+ .long 0
+ .long 3220176896
+ .long 689983673
+ .long 1071886330
+ .long 3758096384
+ .long 1014906405
+ .long 752919289
+ .long 1070211588
+ .long 0
+ .long 3220176896
+ .long 2969983475
+ .long 1071865944
+ .long 2684354560
+ .long 3162635443
+ .long 3761365757
+ .long 1070149758
+ .long 0
+ .long 3220176896
+ .long 4242632757
+ .long 1071845367
+ .long 536870912
+ .long 3161390278
+ .long 1129922991
+ .long 1070088944
+ .long 0
+ .long 3220176896
+ .long 637203434
+ .long 1071824603
+ .long 3221225472
+ .long 3159443841
+ .long 2129093113
+ .long 1070029153
+ .long 0
+ .long 3220176896
+ .long 1289556703
+ .long 1071803653
+ .long 536870912
+ .long 3162888820
+ .long 2482246777
+ .long 1069970395
+ .long 0
+ .long 3220176896
+ .long 2570316633
+ .long 1071782521
+ .long 1610612736
+ .long 3162744753
+ .long 1539668340
+ .long 1069912679
+ .long 0
+ .long 3220176896
+ .long 967731400
+ .long 1071761211
+ .long 536870912
+ .long 1015752157
+ .long 2272832445
+ .long 1069856013
+ .long 0
+ .long 3220176896
+ .long 1675549513
+ .long 1071739725
+ .long 3221225472
+ .long 3163025138
+ .long 2678847490
+ .long 1069800406
+ .long 0
+ .long 3220176896
+ .long 1411074851
+ .long 1071718067
+ .long 1610612736
+ .long 3163484731
+ .long 69903290
+ .long 1069745867
+ .long 0
+ .long 3220176896
+ .long 1297975695
+ .long 1071696240
+ .long 3221225472
+ .long 3163083735
+ .long 3952756490
+ .long 1069692402
+ .long 0
+ .long 3220176896
+ .long 2569207790
+ .long 1071674247
+ .long 1073741824
+ .long 3163183617
+ .long 1663679671
+ .long 1069640022
+ .long 0
+ .long 3220176896
+ .long 2269920951
+ .long 1071652092
+ .long 3758096384
+ .long 3161672245
+ .long 1312926554
+ .long 1069588733
+ .long 0
+ .long 3220176896
+ .long 3690502842
+ .long 1071614884
+ .long 3221225472
+ .long 3157453855
+ .long 3429717432
+ .long 1069529566
+ .long 0
+ .long 3220176896
+ .long 1391425750
+ .long 1071569945
+ .long 3221225472
+ .long 3162362103
+ .long 1945768569
+ .long 1069431400
+ .long 0
+ .long 3220176896
+ .long 939980347
+ .long 1071524701
+ .long 0
+ .long 1012796809
+ .long 1539072807
+ .long 1069335462
+ .long 0
+ .long 3220176896
+ .long 1535566729
+ .long 1071479159
+ .long 2147483648
+ .long 1014321388
+ .long 4133449816
+ .long 1069241766
+ .long 0
+ .long 3220176896
+ .long 2570175582
+ .long 1071433326
+ .long 1073741824
+ .long 1012303118
+ .long 1612193054
+ .long 1069150328
+ .long 0
+ .long 3220176896
+ .long 3623952103
+ .long 1071387209
+ .long 2684354560
+ .long 3161985962
+ .long 1578746984
+ .long 1069061160
+ .long 0
+ .long 3220176896
+ .long 165764288
+ .long 1071340816
+ .long 3221225472
+ .long 1013298018
+ .long 1577996576
+ .long 1068974276
+ .long 0
+ .long 3220176896
+ .long 728580042
+ .long 1071294152
+ .long 1610612736
+ .long 3162332944
+ .long 1972483635
+ .long 1068889689
+ .long 0
+ .long 3220176896
+ .long 1135144330
+ .long 1071247225
+ .long 536870912
+ .long 1013373569
+ .long 1638976426
+ .long 1068807412
+ .long 0
+ .long 3220176896
+ .long 1673302999
+ .long 1071200042
+ .long 2147483648
+ .long 1013351473
+ .long 2255197647
+ .long 1068727457
+ .long 0
+ .long 3220176896
+ .long 2796464483
+ .long 1071152610
+ .long 3221225472
+ .long 3160878317
+ .long 3996842794
+ .long 1068649836
+ .long 0
+ .long 3220176896
+ .long 824036583
+ .long 1071104937
+ .long 0
+ .long 1008313330
+ .long 1234824733
+ .long 1068574562
+ .long 0
+ .long 3220176896
+ .long 821708191
+ .long 1071057029
+ .long 3758096384
+ .long 3161738009
+ .long 4002549419
+ .long 1068501644
+ .long 0
+ .long 3220176896
+ .long 3711903686
+ .long 1071008893
+ .long 1073741824
+ .long 1011944747
+ .long 2962723252
+ .long 1068363247
+ .long 0
+ .long 3220176896
+ .long 1974149085
+ .long 1070960538
+ .long 3221225472
+ .long 3156147648
+ .long 1296295961
+ .long 1068226907
+ .long 0
+ .long 3220176896
+ .long 1115219818
+ .long 1070911970
+ .long 0
+ .long 1013072242
+ .long 997322465
+ .long 1068095345
+ .long 0
+ .long 3220176896
+ .long 2484561409
+ .long 1070863196
+ .long 1073741824
+ .long 1014024572
+ .long 1261629236
+ .long 1067968581
+ .long 0
+ .long 3220176896
+ .long 3269558610
+ .long 1070814224
+ .long 536870912
+ .long 3161705216
+ .long 2476548698
+ .long 1067846634
+ .long 0
+ .long 3220176896
+ .long 785751814
+ .long 1070765062
+ .long 2684354560
+ .long 3161838221
+ .long 1913604284
+ .long 1067729523
+ .long 0
+ .long 3220176896
+ .long 1062001470
+ .long 1070715716
+ .long 0
+ .long 3160875220
+ .long 2306566604
+ .long 1067617265
+ .long 0
+ .long 3220176896
+ .long 1655830135
+ .long 1070666194
+ .long 0
+ .long 1014506690
+ .long 3250111450
+ .long 1067509877
+ .long 0
+ .long 3220176896
+ .long 238550446
+ .long 1070616504
+ .long 2684354560
+ .long 3154383565
+ .long 2377770267
+ .long 1067364384
+ .long 0
+ .long 3220176896
+ .long 2065784603
+ .long 1070537209
+ .long 3758096384
+ .long 3160681966
+ .long 288924873
+ .long 1067169185
+ .long 0
+ .long 3220176896
+ .long 3846521617
+ .long 1070437199
+ .long 536870912
+ .long 1013406610
+ .long 1935888103
+ .long 1066983818
+ .long 0
+ .long 3220176896
+ .long 1786662755
+ .long 1070336898
+ .long 2147483648
+ .long 3155882307
+ .long 2660899430
+ .long 1066808312
+ .long 0
+ .long 3220176896
+ .long 632292433
+ .long 1070236320
+ .long 3758096384
+ .long 3160963333
+ .long 18115067
+ .long 1066642694
+ .long 0
+ .long 3220176896
+ .long 1013556747
+ .long 1070135480
+ .long 2684354560
+ .long 3160567065
+ .long 2346447124
+ .long 1066486987
+ .long 0
+ .long 3220176896
+ .long 3729833777
+ .long 1070034393
+ .long 3758096384
+ .long 1013044718
+ .long 1672287667
+ .long 1066280641
+ .long 0
+ .long 3220176896
+ .long 1149976518
+ .long 1069933076
+ .long 1610612736
+ .long 1013264895
+ .long 3451754846
+ .long 1066009014
+ .long 0
+ .long 3220176896
+ .long 2972270170
+ .long 1069831542
+ .long 1073741824
+ .long 3159524770
+ .long 1037482584
+ .long 1065757344
+ .long 0
+ .long 3220176896
+ .long 1854824762
+ .long 1069729808
+ .long 2684354560
+ .long 1011953664
+ .long 2592747447
+ .long 1065525667
+ .long 0
+ .long 3220176896
+ .long 3470456183
+ .long 1069627888
+ .long 1073741824
+ .long 3160744771
+ .long 2402293340
+ .long 1065274823
+ .long 0
+ .long 3220176896
+ .long 1453945614
+ .long 1069504078
+ .long 1610612736
+ .long 1011492612
+ .long 1227670166
+ .long 1064891649
+ .long 0
+ .long 3220176896
+ .long 3349070549
+ .long 1069299589
+ .long 3758096384
+ .long 3156538269
+ .long 393047345
+ .long 1064548654
+ .long 0
+ .long 3220176896
+ .long 3156849708
+ .long 1069094822
+ .long 3221225472
+ .long 3158189848
+ .long 1118107366
+ .long 1064187139
+ .long 0
+ .long 3220176896
+ .long 177906713
+ .long 1068889808
+ .long 3221225472
+ .long 3159310370
+ .long 4269262315
+ .long 1063662162
+ .long 0
+ .long 3220176896
+ .long 2462980598
+ .long 1068684576
+ .long 2684354560
+ .long 3158941832
+ .long 3810305407
+ .long 1063179572
+ .long 0
+ .long 3220176896
+ .long 2046304480
+ .long 1068459374
+ .long 3758096384
+ .long 3156402667
+ .long 220529721
+ .long 1062452281
+ .long 0
+ .long 3220176896
+ .long 4044216340
+ .long 1068048229
+ .long 0
+ .long 3156808381
+ .long 69373323
+ .long 1061565504
+ .long 0
+ .long 3220176896
+ .long 1972655565
+ .long 1067636837
+ .long 1073741824
+ .long 1009157878
+ .long 3650591271
+ .long 1060355323
+ .long 0
+ .long 3220176896
+ .long 4154680958
+ .long 1067000149
+ .long 0
+ .long 3153796451
+ .long 2376373521
+ .long 1058258220
+ .long 0
+ .long 3220176896
+ .long 4242458500
+ .long 1065951697
+ .long 2684354560
+ .long 1009354638
+ .long 0
+ .long 0
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2376373521
+ .long 1058258220
+ .long 0
+ .long 3220176896
+ .long 4242458500
+ .long 3213435345
+ .long 2684354560
+ .long 3156838286
+ .long 3650591271
+ .long 1060355323
+ .long 0
+ .long 3220176896
+ .long 4154680958
+ .long 3214483797
+ .long 0
+ .long 1006312803
+ .long 69373323
+ .long 1061565504
+ .long 0
+ .long 3220176896
+ .long 1972655565
+ .long 3215120485
+ .long 1073741824
+ .long 3156641526
+ .long 220529721
+ .long 1062452281
+ .long 0
+ .long 3220176896
+ .long 4044216340
+ .long 3215531877
+ .long 0
+ .long 1009324733
+ .long 3810305407
+ .long 1063179572
+ .long 0
+ .long 3220176896
+ .long 2046304480
+ .long 3215943022
+ .long 3758096384
+ .long 1008919019
+ .long 4269262315
+ .long 1063662162
+ .long 0
+ .long 3220176896
+ .long 2462980598
+ .long 3216168224
+ .long 2684354560
+ .long 1011458184
+ .long 1118107366
+ .long 1064187139
+ .long 0
+ .long 3220176896
+ .long 177906713
+ .long 3216373456
+ .long 3221225472
+ .long 1011826722
+ .long 393047345
+ .long 1064548654
+ .long 0
+ .long 3220176896
+ .long 3156849708
+ .long 3216578470
+ .long 3221225472
+ .long 1010706200
+ .long 1227670166
+ .long 1064891649
+ .long 0
+ .long 3220176896
+ .long 3349070549
+ .long 3216783237
+ .long 3758096384
+ .long 1009054621
+ .long 2402293340
+ .long 1065274823
+ .long 0
+ .long 3220176896
+ .long 1453945614
+ .long 3216987726
+ .long 1610612736
+ .long 3158976260
+ .long 2592747447
+ .long 1065525667
+ .long 0
+ .long 3220176896
+ .long 3470456183
+ .long 3217111536
+ .long 1073741824
+ .long 1013261123
+ .long 1037482584
+ .long 1065757344
+ .long 0
+ .long 3220176896
+ .long 1854824762
+ .long 3217213456
+ .long 2684354560
+ .long 3159437312
+ .long 3451754846
+ .long 1066009014
+ .long 0
+ .long 3220176896
+ .long 2972270170
+ .long 3217315190
+ .long 1073741824
+ .long 1012041122
+ .long 1672287667
+ .long 1066280641
+ .long 0
+ .long 3220176896
+ .long 1149976518
+ .long 3217416724
+ .long 1610612736
+ .long 3160748543
+ .long 2346447124
+ .long 1066486987
+ .long 0
+ .long 3220176896
+ .long 3729833777
+ .long 3217518041
+ .long 3758096384
+ .long 3160528366
+ .long 18115067
+ .long 1066642694
+ .long 0
+ .long 3220176896
+ .long 1013556747
+ .long 3217619128
+ .long 2684354560
+ .long 1013083417
+ .long 2660899430
+ .long 1066808312
+ .long 0
+ .long 3220176896
+ .long 632292433
+ .long 3217719968
+ .long 3758096384
+ .long 1013479685
+ .long 1935888103
+ .long 1066983818
+ .long 0
+ .long 3220176896
+ .long 1786662755
+ .long 3217820546
+ .long 2147483648
+ .long 1008398659
+ .long 288924873
+ .long 1067169185
+ .long 0
+ .long 3220176896
+ .long 3846521617
+ .long 3217920847
+ .long 536870912
+ .long 3160890258
+ .long 2377770267
+ .long 1067364384
+ .long 0
+ .long 3220176896
+ .long 2065784603
+ .long 3218020857
+ .long 3758096384
+ .long 1013198318
+ .long 3250111450
+ .long 1067509877
+ .long 0
+ .long 3220176896
+ .long 238550446
+ .long 3218100152
+ .long 2684354560
+ .long 1006899917
+ .long 2306566604
+ .long 1067617265
+ .long 0
+ .long 3220176896
+ .long 1655830135
+ .long 3218149842
+ .long 0
+ .long 3161990338
+ .long 1913604284
+ .long 1067729523
+ .long 0
+ .long 3220176896
+ .long 1062001470
+ .long 3218199364
+ .long 0
+ .long 1013391572
+ .long 2476548698
+ .long 1067846634
+ .long 0
+ .long 3220176896
+ .long 785751814
+ .long 3218248710
+ .long 2684354560
+ .long 1014354573
+ .long 1261629236
+ .long 1067968581
+ .long 0
+ .long 3220176896
+ .long 3269558610
+ .long 3218297872
+ .long 536870912
+ .long 1014221568
+ .long 997322465
+ .long 1068095345
+ .long 0
+ .long 3220176896
+ .long 2484561409
+ .long 3218346844
+ .long 1073741824
+ .long 3161508220
+ .long 1296295961
+ .long 1068226907
+ .long 0
+ .long 3220176896
+ .long 1115219818
+ .long 3218395618
+ .long 0
+ .long 3160555890
+ .long 2962723252
+ .long 1068363247
+ .long 0
+ .long 3220176896
+ .long 1974149085
+ .long 3218444186
+ .long 3221225472
+ .long 1008664000
+ .long 4002549419
+ .long 1068501644
+ .long 0
+ .long 3220176896
+ .long 3711903686
+ .long 3218492541
+ .long 1073741824
+ .long 3159428395
+ .long 1234824733
+ .long 1068574562
+ .long 0
+ .long 3220176896
+ .long 821708191
+ .long 3218540677
+ .long 3758096384
+ .long 1014254361
+ .long 3996842794
+ .long 1068649836
+ .long 0
+ .long 3220176896
+ .long 824036583
+ .long 3218588585
+ .long 0
+ .long 3155796978
+ .long 2255197647
+ .long 1068727457
+ .long 0
+ .long 3220176896
+ .long 2796464483
+ .long 3218636258
+ .long 3221225472
+ .long 1013394669
+ .long 1638976426
+ .long 1068807412
+ .long 0
+ .long 3220176896
+ .long 1673302999
+ .long 3218683690
+ .long 2147483648
+ .long 3160835121
+ .long 1972483635
+ .long 1068889689
+ .long 0
+ .long 3220176896
+ .long 1135144330
+ .long 3218730873
+ .long 536870912
+ .long 3160857217
+ .long 1577996576
+ .long 1068974276
+ .long 0
+ .long 3220176896
+ .long 728580042
+ .long 3218777800
+ .long 1610612736
+ .long 1014849296
+ .long 1578746984
+ .long 1069061160
+ .long 0
+ .long 3220176896
+ .long 165764288
+ .long 3218824464
+ .long 3221225472
+ .long 3160781666
+ .long 1612193054
+ .long 1069150328
+ .long 0
+ .long 3220176896
+ .long 3623952103
+ .long 3218870857
+ .long 2684354560
+ .long 1014502314
+ .long 4133449816
+ .long 1069241766
+ .long 0
+ .long 3220176896
+ .long 2570175582
+ .long 3218916974
+ .long 1073741824
+ .long 3159786766
+ .long 1539072807
+ .long 1069335462
+ .long 0
+ .long 3220176896
+ .long 1535566729
+ .long 3218962807
+ .long 2147483648
+ .long 3161805036
+ .long 1945768569
+ .long 1069431400
+ .long 0
+ .long 3220176896
+ .long 939980347
+ .long 3219008349
+ .long 0
+ .long 3160280457
+ .long 3429717432
+ .long 1069529566
+ .long 0
+ .long 3220176896
+ .long 1391425750
+ .long 3219053593
+ .long 3221225472
+ .long 1014878455
+ .long 1312926554
+ .long 1069588733
+ .long 0
+ .long 3220176896
+ .long 3690502842
+ .long 3219098532
+ .long 3221225472
+ .long 1009970207
+ .long 1663679671
+ .long 1069640022
+ .long 0
+ .long 3220176896
+ .long 2269920951
+ .long 3219135740
+ .long 3758096384
+ .long 1014188597
+ .long 3952756490
+ .long 1069692402
+ .long 0
+ .long 3220176896
+ .long 2569207790
+ .long 3219157895
+ .long 1073741824
+ .long 1015699969
+ .long 69903290
+ .long 1069745867
+ .long 0
+ .long 3220176896
+ .long 1297975695
+ .long 3219179888
+ .long 3221225472
+ .long 1015600087
+ .long 2678847490
+ .long 1069800406
+ .long 0
+ .long 3220176896
+ .long 1411074851
+ .long 3219201715
+ .long 1610612736
+ .long 1016001083
+ .long 2272832445
+ .long 1069856013
+ .long 0
+ .long 3220176896
+ .long 1675549513
+ .long 3219223373
+ .long 3221225472
+ .long 1015541490
+ .long 1539668340
+ .long 1069912679
+ .long 0
+ .long 3220176896
+ .long 967731400
+ .long 3219244859
+ .long 536870912
+ .long 3163235805
+ .long 2482246777
+ .long 1069970395
+ .long 0
+ .long 3220176896
+ .long 2570316633
+ .long 3219266169
+ .long 1610612736
+ .long 1015261105
+ .long 2129093113
+ .long 1070029153
+ .long 0
+ .long 3220176896
+ .long 1289556703
+ .long 3219287301
+ .long 536870912
+ .long 1015405172
+ .long 1129922991
+ .long 1070088944
+ .long 0
+ .long 3220176896
+ .long 637203434
+ .long 3219308251
+ .long 3221225472
+ .long 1011960193
+ .long 3761365757
+ .long 1070149758
+ .long 0
+ .long 3220176896
+ .long 4242632757
+ .long 3219329015
+ .long 536870912
+ .long 1013906630
+ .long 752919289
+ .long 1070211588
+ .long 0
+ .long 3220176896
+ .long 2969983475
+ .long 3219349592
+ .long 2684354560
+ .long 1015151795
+ .long 3652612115
+ .long 1070274422
+ .long 0
+ .long 3220176896
+ .long 689983673
+ .long 3219369978
+ .long 3758096384
+ .long 3162390053
+ .long 1883353036
+ .long 1070338253
+ .long 0
+ .long 3220176896
+ .long 1397053140
+ .long 3219390169
+ .long 1610612736
+ .long 3162728726
+ .long 1403757309
+ .long 1070403070
+ .long 0
+ .long 3220176896
+ .long 621354454
+ .long 3219410163
+ .long 536870912
+ .long 3160934250
+ .long 3239527685
+ .long 1070468863
+ .long 0
+ .long 3220176896
+ .long 2610628921
+ .long 3219429956
+ .long 1610612736
+ .long 1015185121
+ .long 3489768009
+ .long 1070535623
+ .long 0
+ .long 3220176896
+ .long 3152274921
+ .long 3219449546
+ .long 3758096384
+ .long 3160654483
+ .long 2371640770
+ .long 3218072499
+ .long 0
+ .long 3219128320
+ .long 2460177814
+ .long 3219468930
+ .long 2147483648
+ .long 1014633195
+ .long 2309668539
+ .long 3218003836
+ .long 0
+ .long 3219128320
+ .long 881650848
+ .long 3219488105
+ .long 2147483648
+ .long 1015502624
+ .long 2081278341
+ .long 3217934237
+ .long 0
+ .long 3219128320
+ .long 3194290572
+ .long 3219507067
+ .long 2147483648
+ .long 3162532330
+ .long 3753901657
+ .long 3217863712
+ .long 0
+ .long 3219128320
+ .long 1427975391
+ .long 3219525815
+ .long 1073741824
+ .long 1014124979
+ .long 1403691706
+ .long 3217792273
+ .long 0
+ .long 3219128320
+ .long 636516413
+ .long 3219544345
+ .long 3758096384
+ .long 3163307364
+ .long 2583490354
+ .long 3217719929
+ .long 0
+ .long 3219128320
+ .long 1719614413
+ .long 3219562654
+ .long 0
+ .long 1015799092
+ .long 2546065654
+ .long 3217646692
+ .long 0
+ .long 3219128320
+ .long 1424664751
+ .long 3219580740
+ .long 3221225472
+ .long 1015921667
+ .long 1416934267
+ .long 3217572573
+ .long 0
+ .long 3219128320
+ .long 938475414
+ .long 3219598600
+ .long 0
+ .long 3162559727
+ .long 4187227697
+ .long 3217497582
+ .long 0
+ .long 3219128320
+ .long 1594061409
+ .long 3219616231
+ .long 2147483648
+ .long 3161837518
+ .long 3526603391
+ .long 3217421732
+ .long 0
+ .long 3219128320
+ .long 577417135
+ .long 3219633631
+ .long 2684354560
+ .long 1014035767
+ .long 1250776663
+ .long 3217345034
+ .long 0
+ .long 3219128320
+ .long 3814135665
+ .long 3219650796
+ .long 3221225472
+ .long 1015662808
+ .long 4019165092
+ .long 3217267498
+ .long 0
+ .long 3219128320
+ .long 201299822
+ .long 3219667726
+ .long 3758096384
+ .long 1014428704
+ .long 1852581091
+ .long 3217189138
+ .long 0
+ .long 3219128320
+ .long 263859903
+ .long 3219684416
+ .long 0
+ .long 1015208636
+ .long 2485417816
+ .long 3217109964
+ .long 0
+ .long 3219128320
+ .long 1796544321
+ .long 3219700864
+ .long 536870912
+ .long 1015203297
+ .long 2586490530
+ .long 3217028810
+ .long 0
+ .long 3219128320
+ .long 2750387213
+ .long 3219717068
+ .long 2147483648
+ .long 1013374889
+ .long 1224902090
+ .long 3216867281
+ .long 0
+ .long 3219128320
+ .long 1234330619
+ .long 3219733026
+ .long 2684354560
+ .long 3162756121
+ .long 2285031318
+ .long 3216704197
+ .long 0
+ .long 3219128320
+ .long 4106737474
+ .long 3219748734
+ .long 2684354560
+ .long 1015108729
+ .long 3876290983
+ .long 3216539583
+ .long 0
+ .long 3219128320
+ .long 1207142209
+ .long 3219764192
+ .long 2147483648
+ .long 1015221986
+ .long 802660176
+ .long 3216373465
+ .long 0
+ .long 3219128320
+ .long 4012486548
+ .long 3219779395
+ .long 2684354560
+ .long 3162185212
+ .long 1726519029
+ .long 3216205866
+ .long 0
+ .long 3219128320
+ .long 2688952194
+ .long 3219794343
+ .long 0
+ .long 1014048955
+ .long 3382663878
+ .long 3216036812
+ .long 0
+ .long 3219128320
+ .long 453180130
+ .long 3219809033
+ .long 1073741824
+ .long 1014927633
+ .long 2598800519
+ .long 3215750067
+ .long 0
+ .long 3219128320
+ .long 688824739
+ .long 3219823462
+ .long 3758096384
+ .long 3157915184
+ .long 1038988426
+ .long 3215406294
+ .long 0
+ .long 3219128320
+ .long 2653017361
+ .long 3219837628
+ .long 0
+ .long 1015316414
+ .long 1102361128
+ .long 3215059765
+ .long 0
+ .long 3219128320
+ .long 1477771776
+ .long 3219851530
+ .long 536870912
+ .long 1015621338
+ .long 2880516564
+ .long 3214487049
+ .long 0
+ .long 3219128320
+ .long 1056266002
+ .long 3219865165
+ .long 2684354560
+ .long 1015985848
+ .long 1220541286
+ .long 3213681126
+ .long 0
+ .long 3219128320
+ .long 1159294526
+ .long 3219878531
+ .long 536870912
+ .long 1015793311
+ .long 1279178457
+ .long 3211590791
+ .long 0
+ .long 3219128320
+ .long 1731563730
+ .long 3219891626
+ .long 536870912
+ .long 3163023950
+ .long 31019393
+ .long 1065162441
+ .long 0
+ .long 3219128320
+ .long 2892993834
+ .long 3219904448
+ .long 536870912
+ .long 1015555495
+ .long 3506991783
+ .long 1066548842
+ .long 0
+ .long 3219128320
+ .long 645027145
+ .long 3219916996
+ .long 3221225472
+ .long 3160085887
+ .long 2140183630
+ .long 1067272748
+ .long 0
+ .long 3219128320
+ .long 4051746225
+ .long 3219929266
+ .long 1610612736
+ .long 1014423729
+ .long 600368053
+ .long 1067725893
+ .long 0
+ .long 3219128320
+ .long 881357723
+ .long 3219941259
+ .long 3221225472
+ .long 3161294538
+ .long 913431823
+ .long 1068092555
+ .long 0
+ .long 3219128320
+ .long 557060597
+ .long 3219952971
+ .long 0
+ .long 1012071286
+ .long 1073154251
+ .long 1068461489
+ .long 0
+ .long 3219128320
+ .long 4093443164
+ .long 3219964400
+ .long 536870912
+ .long 3162396513
+ .long 3631910143
+ .long 1068665791
+ .long 0
+ .long 3219128320
+ .long 4097623923
+ .long 3219975546
+ .long 2684354560
+ .long 1012824939
+ .long 1380647130
+ .long 1068852447
+ .long 0
+ .long 3219128320
+ .long 1950234076
+ .long 3219986407
+ .long 536870912
+ .long 1011941850
+ .long 4049357271
+ .long 1069040154
+ .long 0
+ .long 3219128320
+ .long 3511535930
+ .long 3219996980
+ .long 2147483648
+ .long 1015344978
+ .long 1896722595
+ .long 1069228886
+ .long 0
+ .long 3219128320
+ .long 1942611595
+ .long 3220007265
+ .long 3221225472
+ .long 1014926433
+ .long 1699043957
+ .long 1069418613
+ .long 0
+ .long 3219128320
+ .long 3476196678
+ .long 3220017259
+ .long 0
+ .long 3161741286
+ .long 3296146332
+ .long 3216969380
+ .long 0
+ .long 3218079744
+ .long 1647878299
+ .long 3220026962
+ .long 3758096384
+ .long 1014685415
+ .long 3286832763
+ .long 3216777748
+ .long 0
+ .long 3218079744
+ .long 3066872380
+ .long 3220036371
+ .long 3221225472
+ .long 3163044919
+ .long 1962712856
+ .long 3216585207
+ .long 0
+ .long 3218079744
+ .long 1647164971
+ .long 3220045486
+ .long 2147483648
+ .long 1015354602
+ .long 3601629044
+ .long 3216391785
+ .long 0
+ .long 3218079744
+ .long 83265253
+ .long 3220054305
+ .long 1610612736
+ .long 1015026887
+ .long 165911977
+ .long 3216197513
+ .long 0
+ .long 3218079744
+ .long 1261158782
+ .long 3220062826
+ .long 2147483648
+ .long 3163195192
+ .long 1348311045
+ .long 3216002418
+ .long 0
+ .long 3218079744
+ .long 3964199186
+ .long 3220071048
+ .long 3758096384
+ .long 1013017430
+ .long 386665102
+ .long 3215630470
+ .long 0
+ .long 3218079744
+ .long 2873938189
+ .long 3220078971
+ .long 1610612736
+ .long 1014827774
+ .long 1991047213
+ .long 3215237169
+ .long 0
+ .long 3218079744
+ .long 1455828442
+ .long 3220086593
+ .long 3758096384
+ .long 3162988721
+ .long 4107121629
+ .long 3214750787
+ .long 0
+ .long 3218079744
+ .long 3370060660
+ .long 3220093912
+ .long 1610612736
+ .long 3162270860
+ .long 723478390
+ .long 3213958438
+ .long 0
+ .long 3218079744
+ .long 3882371427
+ .long 3220100928
+ .long 2147483648
+ .long 3162407623
+ .long 2382326656
+ .long 3212045827
+ .long 0
+ .long 3218079744
+ .long 2749658050
+ .long 3220107640
+ .long 1610612736
+ .long 3162910986
+ .long 2614369450
+ .long 1065140432
+ .long 0
+ .long 3218079744
+ .long 4220661975
+ .long 3220114046
+ .long 3221225472
+ .long 3161795706
+ .long 3587565429
+ .long 1066624384
+ .long 0
+ .long 3218079744
+ .long 4151720666
+ .long 3220120146
+ .long 0
+ .long 1015155896
+ .long 2886567144
+ .long 1067426796
+ .long 0
+ .long 3218079744
+ .long 2892293513
+ .long 3220125939
+ .long 2684354560
+ .long 1014856623
+ .long 1765797566
+ .long 1067840895
+ .long 0
+ .long 3218079744
+ .long 990588717
+ .long 3220131424
+ .long 3758096384
+ .long 1014558209
+ .long 240740309
+ .long 1068244255
+ .long 0
+ .long 3218079744
+ .long 3489094832
+ .long 3220136599
+ .long 536870912
+ .long 3161809431
+ .long 2034433221
+ .long 3215832935
+ .long 0
+ .long 3217031168
+ .long 2745245815
+ .long 3220141465
+ .long 3221225472
+ .long 3163049777
+ .long 304938777
+ .long 3215427665
+ .long 0
+ .long 3217031168
+ .long 4201728937
+ .long 3220146020
+ .long 1610612736
+ .long 3162157654
+ .long 3299146087
+ .long 3215021530
+ .long 0
+ .long 3217031168
+ .long 617154971
+ .long 3220150265
+ .long 3758096384
+ .long 1015950048
+ .long 1953696209
+ .long 3214295171
+ .long 0
+ .long 3217031168
+ .long 2131272983
+ .long 3220154197
+ .long 3221225472
+ .long 1015521448
+ .long 3987691371
+ .long 3213074188
+ .long 0
+ .long 3217031168
+ .long 1905645377
+ .long 3220157817
+ .long 1610612736
+ .long 3161571244
+ .long 718380601
+ .long 1063597621
+ .long 0
+ .long 3217031168
+ .long 1893834707
+ .long 3220161124
+ .long 1610612736
+ .long 3162631302
+ .long 3272206680
+ .long 1066288081
+ .long 0
+ .long 3217031168
+ .long 4251821691
+ .long 3220164117
+ .long 2147483648
+ .long 1014357359
+ .long 257503056
+ .long 1067164005
+ .long 0
+ .long 3217031168
+ .long 2748392742
+ .long 3220166797
+ .long 536870912
+ .long 1015578102
+ .long 711626851
+ .long 3214400320
+ .long 0
+ .long 3215982592
+ .long 4240268041
+ .long 3220169162
+ .long 536870912
+ .long 3161072611
+ .long 2523975598
+ .long 3213273348
+ .long 0
+ .long 3215982592
+ .long 2902558778
+ .long 3220171213
+ .long 3221225472
+ .long 3160744428
+ .long 3237733378
+ .long 1062425136
+ .long 0
+ .long 3215982592
+ .long 1703834029
+ .long 3220172949
+ .long 3758096384
+ .long 3162512012
+ .long 1003003824
+ .long 1066107496
+ .long 0
+ .long 3215982592
+ .long 3816385918
+ .long 3220174369
+ .long 536870912
+ .long 1013733308
+ .long 2896342633
+ .long 3212231467
+ .long 0
+ .long 3214934016
+ .long 4026464093
+ .long 3220175474
+ .long 3221225472
+ .long 1015592141
+ .long 561145352
+ .long 1065056936
+ .long 0
+ .long 3214934016
+ .long 1619315981
+ .long 3220176264
+ .long 1073741824
+ .long 1015100749
+ .long 210035182
+ .long 1064007864
+ .long 0
+ .long 3213885440
+ .long 379294427
+ .long 3220176738
+ .long 3221225472
+ .long 3162889635
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3220176896
+ .long 0
+ .long 0
+ .long 210035182
+ .long 3211491512
+ .long 0
+ .long 1066401792
+ .long 379294427
+ .long 3220176738
+ .long 3221225472
+ .long 3162889635
+ .long 561145352
+ .long 3212540584
+ .long 0
+ .long 1067450368
+ .long 1619315981
+ .long 3220176264
+ .long 1073741824
+ .long 1015100749
+ .long 2896342633
+ .long 1064747819
+ .long 0
+ .long 1067450368
+ .long 4026464093
+ .long 3220175474
+ .long 3221225472
+ .long 1015592141
+ .long 1003003824
+ .long 3213591144
+ .long 0
+ .long 1068498944
+ .long 3816385918
+ .long 3220174369
+ .long 536870912
+ .long 1013733308
+ .long 3237733378
+ .long 3209908784
+ .long 0
+ .long 1068498944
+ .long 1703834029
+ .long 3220172949
+ .long 3758096384
+ .long 3162512012
+ .long 2523975598
+ .long 1065789700
+ .long 0
+ .long 1068498944
+ .long 2902558778
+ .long 3220171213
+ .long 3221225472
+ .long 3160744428
+ .long 711626851
+ .long 1066916672
+ .long 0
+ .long 1068498944
+ .long 4240268041
+ .long 3220169162
+ .long 536870912
+ .long 3161072611
+ .long 257503056
+ .long 3214647653
+ .long 0
+ .long 1069547520
+ .long 2748392742
+ .long 3220166797
+ .long 536870912
+ .long 1015578102
+ .long 3272206680
+ .long 3213771729
+ .long 0
+ .long 1069547520
+ .long 4251821691
+ .long 3220164117
+ .long 2147483648
+ .long 1014357359
+ .long 718380601
+ .long 3211081269
+ .long 0
+ .long 1069547520
+ .long 1893834707
+ .long 3220161124
+ .long 1610612736
+ .long 3162631302
+ .long 3987691371
+ .long 1065590540
+ .long 0
+ .long 1069547520
+ .long 1905645377
+ .long 3220157817
+ .long 1610612736
+ .long 3161571244
+ .long 1953696209
+ .long 1066811523
+ .long 0
+ .long 1069547520
+ .long 2131272983
+ .long 3220154197
+ .long 3221225472
+ .long 1015521448
+ .long 3299146087
+ .long 1067537882
+ .long 0
+ .long 1069547520
+ .long 617154971
+ .long 3220150265
+ .long 3758096384
+ .long 1015950048
+ .long 304938777
+ .long 1067944017
+ .long 0
+ .long 1069547520
+ .long 4201728937
+ .long 3220146020
+ .long 1610612736
+ .long 3162157654
+ .long 2034433221
+ .long 1068349287
+ .long 0
+ .long 1069547520
+ .long 2745245815
+ .long 3220141465
+ .long 3221225472
+ .long 3163049777
+ .long 240740309
+ .long 3215727903
+ .long 0
+ .long 1070596096
+ .long 3489094832
+ .long 3220136599
+ .long 536870912
+ .long 3161809431
+ .long 1765797566
+ .long 3215324543
+ .long 0
+ .long 1070596096
+ .long 990588717
+ .long 3220131424
+ .long 3758096384
+ .long 1014558209
+ .long 2886567144
+ .long 3214910444
+ .long 0
+ .long 1070596096
+ .long 2892293513
+ .long 3220125939
+ .long 2684354560
+ .long 1014856623
+ .long 3587565429
+ .long 3214108032
+ .long 0
+ .long 1070596096
+ .long 4151720666
+ .long 3220120146
+ .long 0
+ .long 1015155896
+ .long 2614369450
+ .long 3212624080
+ .long 0
+ .long 1070596096
+ .long 4220661975
+ .long 3220114046
+ .long 3221225472
+ .long 3161795706
+ .long 2382326656
+ .long 1064562179
+ .long 0
+ .long 1070596096
+ .long 2749658050
+ .long 3220107640
+ .long 1610612736
+ .long 3162910986
+ .long 723478390
+ .long 1066474790
+ .long 0
+ .long 1070596096
+ .long 3882371427
+ .long 3220100928
+ .long 2147483648
+ .long 3162407623
+ .long 4107121629
+ .long 1067267139
+ .long 0
+ .long 1070596096
+ .long 3370060660
+ .long 3220093912
+ .long 1610612736
+ .long 3162270860
+ .long 1991047213
+ .long 1067753521
+ .long 0
+ .long 1070596096
+ .long 1455828442
+ .long 3220086593
+ .long 3758096384
+ .long 3162988721
+ .long 386665102
+ .long 1068146822
+ .long 0
+ .long 1070596096
+ .long 2873938189
+ .long 3220078971
+ .long 1610612736
+ .long 1014827774
+ .long 1348311045
+ .long 1068518770
+ .long 0
+ .long 1070596096
+ .long 3964199186
+ .long 3220071048
+ .long 3758096384
+ .long 1013017430
+ .long 165911977
+ .long 1068713865
+ .long 0
+ .long 1070596096
+ .long 1261158782
+ .long 3220062826
+ .long 2147483648
+ .long 3163195192
+ .long 3601629044
+ .long 1068908137
+ .long 0
+ .long 1070596096
+ .long 83265253
+ .long 3220054305
+ .long 1610612736
+ .long 1015026887
+ .long 1962712856
+ .long 1069101559
+ .long 0
+ .long 1070596096
+ .long 1647164971
+ .long 3220045486
+ .long 2147483648
+ .long 1015354602
+ .long 3286832763
+ .long 1069294100
+ .long 0
+ .long 1070596096
+ .long 3066872380
+ .long 3220036371
+ .long 3221225472
+ .long 3163044919
+ .long 3296146332
+ .long 1069485732
+ .long 0
+ .long 1070596096
+ .long 1647878299
+ .long 3220026962
+ .long 3758096384
+ .long 1014685415
+ .long 1699043957
+ .long 3216902261
+ .long 0
+ .long 1071644672
+ .long 3476196678
+ .long 3220017259
+ .long 0
+ .long 3161741286
+ .long 1896722595
+ .long 3216712534
+ .long 0
+ .long 1071644672
+ .long 1942611595
+ .long 3220007265
+ .long 3221225472
+ .long 1014926433
+ .long 4049357271
+ .long 3216523802
+ .long 0
+ .long 1071644672
+ .long 3511535930
+ .long 3219996980
+ .long 2147483648
+ .long 1015344978
+ .long 1380647130
+ .long 3216336095
+ .long 0
+ .long 1071644672
+ .long 1950234076
+ .long 3219986407
+ .long 536870912
+ .long 1011941850
+ .long 3631910143
+ .long 3216149439
+ .long 0
+ .long 1071644672
+ .long 4097623923
+ .long 3219975546
+ .long 2684354560
+ .long 1012824939
+ .long 1073154251
+ .long 3215945137
+ .long 0
+ .long 1071644672
+ .long 4093443164
+ .long 3219964400
+ .long 536870912
+ .long 3162396513
+ .long 913431823
+ .long 3215576203
+ .long 0
+ .long 1071644672
+ .long 557060597
+ .long 3219952971
+ .long 0
+ .long 1012071286
+ .long 600368053
+ .long 3215209541
+ .long 0
+ .long 1071644672
+ .long 881357723
+ .long 3219941259
+ .long 3221225472
+ .long 3161294538
+ .long 2140183630
+ .long 3214756396
+ .long 0
+ .long 1071644672
+ .long 4051746225
+ .long 3219929266
+ .long 1610612736
+ .long 1014423729
+ .long 3506991783
+ .long 3214032490
+ .long 0
+ .long 1071644672
+ .long 645027145
+ .long 3219916996
+ .long 3221225472
+ .long 3160085887
+ .long 31019393
+ .long 3212646089
+ .long 0
+ .long 1071644672
+ .long 2892993834
+ .long 3219904448
+ .long 536870912
+ .long 1015555495
+ .long 1279178457
+ .long 1064107143
+ .long 0
+ .long 1071644672
+ .long 1731563730
+ .long 3219891626
+ .long 536870912
+ .long 3163023950
+ .long 1220541286
+ .long 1066197478
+ .long 0
+ .long 1071644672
+ .long 1159294526
+ .long 3219878531
+ .long 536870912
+ .long 1015793311
+ .long 2880516564
+ .long 1067003401
+ .long 0
+ .long 1071644672
+ .long 1056266002
+ .long 3219865165
+ .long 2684354560
+ .long 1015985848
+ .long 1102361128
+ .long 1067576117
+ .long 0
+ .long 1071644672
+ .long 1477771776
+ .long 3219851530
+ .long 536870912
+ .long 1015621338
+ .long 1038988426
+ .long 1067922646
+ .long 0
+ .long 1071644672
+ .long 2653017361
+ .long 3219837628
+ .long 0
+ .long 1015316414
+ .long 2598800519
+ .long 1068266419
+ .long 0
+ .long 1071644672
+ .long 688824739
+ .long 3219823462
+ .long 3758096384
+ .long 3157915184
+ .long 3382663878
+ .long 1068553164
+ .long 0
+ .long 1071644672
+ .long 453180130
+ .long 3219809033
+ .long 1073741824
+ .long 1014927633
+ .long 1726519029
+ .long 1068722218
+ .long 0
+ .long 1071644672
+ .long 2688952194
+ .long 3219794343
+ .long 0
+ .long 1014048955
+ .long 802660176
+ .long 1068889817
+ .long 0
+ .long 1071644672
+ .long 4012486548
+ .long 3219779395
+ .long 2684354560
+ .long 3162185212
+ .long 3876290983
+ .long 1069055935
+ .long 0
+ .long 1071644672
+ .long 1207142209
+ .long 3219764192
+ .long 2147483648
+ .long 1015221986
+ .long 2285031318
+ .long 1069220549
+ .long 0
+ .long 1071644672
+ .long 4106737474
+ .long 3219748734
+ .long 2684354560
+ .long 1015108729
+ .long 1224902090
+ .long 1069383633
+ .long 0
+ .long 1071644672
+ .long 1234330619
+ .long 3219733026
+ .long 2684354560
+ .long 3162756121
+ .long 2586490530
+ .long 1069545162
+ .long 0
+ .long 1071644672
+ .long 2750387213
+ .long 3219717068
+ .long 2147483648
+ .long 1013374889
+ .long 2485417816
+ .long 1069626316
+ .long 0
+ .long 1071644672
+ .long 1796544321
+ .long 3219700864
+ .long 536870912
+ .long 1015203297
+ .long 1852581091
+ .long 1069705490
+ .long 0
+ .long 1071644672
+ .long 263859903
+ .long 3219684416
+ .long 0
+ .long 1015208636
+ .long 4019165092
+ .long 1069783850
+ .long 0
+ .long 1071644672
+ .long 201299822
+ .long 3219667726
+ .long 3758096384
+ .long 1014428704
+ .long 1250776663
+ .long 1069861386
+ .long 0
+ .long 1071644672
+ .long 3814135665
+ .long 3219650796
+ .long 3221225472
+ .long 1015662808
+ .long 3526603391
+ .long 1069938084
+ .long 0
+ .long 1071644672
+ .long 577417135
+ .long 3219633631
+ .long 2684354560
+ .long 1014035767
+ .long 4187227697
+ .long 1070013934
+ .long 0
+ .long 1071644672
+ .long 1594061409
+ .long 3219616231
+ .long 2147483648
+ .long 3161837518
+ .long 1416934267
+ .long 1070088925
+ .long 0
+ .long 1071644672
+ .long 938475414
+ .long 3219598600
+ .long 0
+ .long 3162559727
+ .long 2546065654
+ .long 1070163044
+ .long 0
+ .long 1071644672
+ .long 1424664751
+ .long 3219580740
+ .long 3221225472
+ .long 1015921667
+ .long 2583490354
+ .long 1070236281
+ .long 0
+ .long 1071644672
+ .long 1719614413
+ .long 3219562654
+ .long 0
+ .long 1015799092
+ .long 1403691706
+ .long 1070308625
+ .long 0
+ .long 1071644672
+ .long 636516413
+ .long 3219544345
+ .long 3758096384
+ .long 3163307364
+ .long 3753901657
+ .long 1070380064
+ .long 0
+ .long 1071644672
+ .long 1427975391
+ .long 3219525815
+ .long 1073741824
+ .long 1014124979
+ .long 2081278341
+ .long 1070450589
+ .long 0
+ .long 1071644672
+ .long 3194290572
+ .long 3219507067
+ .long 2147483648
+ .long 3162532330
+ .long 2309668539
+ .long 1070520188
+ .long 0
+ .long 1071644672
+ .long 881650848
+ .long 3219488105
+ .long 2147483648
+ .long 1015502624
+ .long 2371640770
+ .long 1070588851
+ .long 0
+ .long 1071644672
+ .long 2460177814
+ .long 3219468930
+ .long 2147483648
+ .long 1014633195
+ .long 3489768009
+ .long 3218019271
+ .long 0
+ .long 1072693248
+ .long 3152274921
+ .long 3219449546
+ .long 3758096384
+ .long 3160654483
+ .long 3239527685
+ .long 3217952511
+ .long 0
+ .long 1072693248
+ .long 2610628921
+ .long 3219429956
+ .long 1610612736
+ .long 1015185121
+ .long 1403757309
+ .long 3217886718
+ .long 0
+ .long 1072693248
+ .long 621354454
+ .long 3219410163
+ .long 536870912
+ .long 3160934250
+ .long 1883353036
+ .long 3217821901
+ .long 0
+ .long 1072693248
+ .long 1397053140
+ .long 3219390169
+ .long 1610612736
+ .long 3162728726
+ .long 3652612115
+ .long 3217758070
+ .long 0
+ .long 1072693248
+ .long 689983673
+ .long 3219369978
+ .long 3758096384
+ .long 3162390053
+ .long 752919289
+ .long 3217695236
+ .long 0
+ .long 1072693248
+ .long 2969983475
+ .long 3219349592
+ .long 2684354560
+ .long 1015151795
+ .long 3761365757
+ .long 3217633406
+ .long 0
+ .long 1072693248
+ .long 4242632757
+ .long 3219329015
+ .long 536870912
+ .long 1013906630
+ .long 1129922991
+ .long 3217572592
+ .long 0
+ .long 1072693248
+ .long 637203434
+ .long 3219308251
+ .long 3221225472
+ .long 1011960193
+ .long 2129093113
+ .long 3217512801
+ .long 0
+ .long 1072693248
+ .long 1289556703
+ .long 3219287301
+ .long 536870912
+ .long 1015405172
+ .long 2482246777
+ .long 3217454043
+ .long 0
+ .long 1072693248
+ .long 2570316633
+ .long 3219266169
+ .long 1610612736
+ .long 1015261105
+ .long 1539668340
+ .long 3217396327
+ .long 0
+ .long 1072693248
+ .long 967731400
+ .long 3219244859
+ .long 536870912
+ .long 3163235805
+ .long 2272832445
+ .long 3217339661
+ .long 0
+ .long 1072693248
+ .long 1675549513
+ .long 3219223373
+ .long 3221225472
+ .long 1015541490
+ .long 2678847490
+ .long 3217284054
+ .long 0
+ .long 1072693248
+ .long 1411074851
+ .long 3219201715
+ .long 1610612736
+ .long 1016001083
+ .long 69903290
+ .long 3217229515
+ .long 0
+ .long 1072693248
+ .long 1297975695
+ .long 3219179888
+ .long 3221225472
+ .long 1015600087
+ .long 3952756490
+ .long 3217176050
+ .long 0
+ .long 1072693248
+ .long 2569207790
+ .long 3219157895
+ .long 1073741824
+ .long 1015699969
+ .long 1663679671
+ .long 3217123670
+ .long 0
+ .long 1072693248
+ .long 2269920951
+ .long 3219135740
+ .long 3758096384
+ .long 1014188597
+ .long 1312926554
+ .long 3217072381
+ .long 0
+ .long 1072693248
+ .long 3690502842
+ .long 3219098532
+ .long 3221225472
+ .long 1009970207
+ .long 3429717432
+ .long 3217013214
+ .long 0
+ .long 1072693248
+ .long 1391425750
+ .long 3219053593
+ .long 3221225472
+ .long 1014878455
+ .long 1945768569
+ .long 3216915048
+ .long 0
+ .long 1072693248
+ .long 939980347
+ .long 3219008349
+ .long 0
+ .long 3160280457
+ .long 1539072807
+ .long 3216819110
+ .long 0
+ .long 1072693248
+ .long 1535566729
+ .long 3218962807
+ .long 2147483648
+ .long 3161805036
+ .long 4133449816
+ .long 3216725414
+ .long 0
+ .long 1072693248
+ .long 2570175582
+ .long 3218916974
+ .long 1073741824
+ .long 3159786766
+ .long 1612193054
+ .long 3216633976
+ .long 0
+ .long 1072693248
+ .long 3623952103
+ .long 3218870857
+ .long 2684354560
+ .long 1014502314
+ .long 1578746984
+ .long 3216544808
+ .long 0
+ .long 1072693248
+ .long 165764288
+ .long 3218824464
+ .long 3221225472
+ .long 3160781666
+ .long 1577996576
+ .long 3216457924
+ .long 0
+ .long 1072693248
+ .long 728580042
+ .long 3218777800
+ .long 1610612736
+ .long 1014849296
+ .long 1972483635
+ .long 3216373337
+ .long 0
+ .long 1072693248
+ .long 1135144330
+ .long 3218730873
+ .long 536870912
+ .long 3160857217
+ .long 1638976426
+ .long 3216291060
+ .long 0
+ .long 1072693248
+ .long 1673302999
+ .long 3218683690
+ .long 2147483648
+ .long 3160835121
+ .long 2255197647
+ .long 3216211105
+ .long 0
+ .long 1072693248
+ .long 2796464483
+ .long 3218636258
+ .long 3221225472
+ .long 1013394669
+ .long 3996842794
+ .long 3216133484
+ .long 0
+ .long 1072693248
+ .long 824036583
+ .long 3218588585
+ .long 0
+ .long 3155796978
+ .long 1234824733
+ .long 3216058210
+ .long 0
+ .long 1072693248
+ .long 821708191
+ .long 3218540677
+ .long 3758096384
+ .long 1014254361
+ .long 4002549419
+ .long 3215985292
+ .long 0
+ .long 1072693248
+ .long 3711903686
+ .long 3218492541
+ .long 1073741824
+ .long 3159428395
+ .long 2962723252
+ .long 3215846895
+ .long 0
+ .long 1072693248
+ .long 1974149085
+ .long 3218444186
+ .long 3221225472
+ .long 1008664000
+ .long 1296295961
+ .long 3215710555
+ .long 0
+ .long 1072693248
+ .long 1115219818
+ .long 3218395618
+ .long 0
+ .long 3160555890
+ .long 997322465
+ .long 3215578993
+ .long 0
+ .long 1072693248
+ .long 2484561409
+ .long 3218346844
+ .long 1073741824
+ .long 3161508220
+ .long 1261629236
+ .long 3215452229
+ .long 0
+ .long 1072693248
+ .long 3269558610
+ .long 3218297872
+ .long 536870912
+ .long 1014221568
+ .long 2476548698
+ .long 3215330282
+ .long 0
+ .long 1072693248
+ .long 785751814
+ .long 3218248710
+ .long 2684354560
+ .long 1014354573
+ .long 1913604284
+ .long 3215213171
+ .long 0
+ .long 1072693248
+ .long 1062001470
+ .long 3218199364
+ .long 0
+ .long 1013391572
+ .long 2306566604
+ .long 3215100913
+ .long 0
+ .long 1072693248
+ .long 1655830135
+ .long 3218149842
+ .long 0
+ .long 3161990338
+ .long 3250111450
+ .long 3214993525
+ .long 0
+ .long 1072693248
+ .long 238550446
+ .long 3218100152
+ .long 2684354560
+ .long 1006899917
+ .long 2377770267
+ .long 3214848032
+ .long 0
+ .long 1072693248
+ .long 2065784603
+ .long 3218020857
+ .long 3758096384
+ .long 1013198318
+ .long 288924873
+ .long 3214652833
+ .long 0
+ .long 1072693248
+ .long 3846521617
+ .long 3217920847
+ .long 536870912
+ .long 3160890258
+ .long 1935888103
+ .long 3214467466
+ .long 0
+ .long 1072693248
+ .long 1786662755
+ .long 3217820546
+ .long 2147483648
+ .long 1008398659
+ .long 2660899430
+ .long 3214291960
+ .long 0
+ .long 1072693248
+ .long 632292433
+ .long 3217719968
+ .long 3758096384
+ .long 1013479685
+ .long 18115067
+ .long 3214126342
+ .long 0
+ .long 1072693248
+ .long 1013556747
+ .long 3217619128
+ .long 2684354560
+ .long 1013083417
+ .long 2346447124
+ .long 3213970635
+ .long 0
+ .long 1072693248
+ .long 3729833777
+ .long 3217518041
+ .long 3758096384
+ .long 3160528366
+ .long 1672287667
+ .long 3213764289
+ .long 0
+ .long 1072693248
+ .long 1149976518
+ .long 3217416724
+ .long 1610612736
+ .long 3160748543
+ .long 3451754846
+ .long 3213492662
+ .long 0
+ .long 1072693248
+ .long 2972270170
+ .long 3217315190
+ .long 1073741824
+ .long 1012041122
+ .long 1037482584
+ .long 3213240992
+ .long 0
+ .long 1072693248
+ .long 1854824762
+ .long 3217213456
+ .long 2684354560
+ .long 3159437312
+ .long 2592747447
+ .long 3213009315
+ .long 0
+ .long 1072693248
+ .long 3470456183
+ .long 3217111536
+ .long 1073741824
+ .long 1013261123
+ .long 2402293340
+ .long 3212758471
+ .long 0
+ .long 1072693248
+ .long 1453945614
+ .long 3216987726
+ .long 1610612736
+ .long 3158976260
+ .long 1227670166
+ .long 3212375297
+ .long 0
+ .long 1072693248
+ .long 3349070549
+ .long 3216783237
+ .long 3758096384
+ .long 1009054621
+ .long 393047345
+ .long 3212032302
+ .long 0
+ .long 1072693248
+ .long 3156849708
+ .long 3216578470
+ .long 3221225472
+ .long 1010706200
+ .long 1118107366
+ .long 3211670787
+ .long 0
+ .long 1072693248
+ .long 177906713
+ .long 3216373456
+ .long 3221225472
+ .long 1011826722
+ .long 4269262315
+ .long 3211145810
+ .long 0
+ .long 1072693248
+ .long 2462980598
+ .long 3216168224
+ .long 2684354560
+ .long 1011458184
+ .long 3810305407
+ .long 3210663220
+ .long 0
+ .long 1072693248
+ .long 2046304480
+ .long 3215943022
+ .long 3758096384
+ .long 1008919019
+ .long 220529721
+ .long 3209935929
+ .long 0
+ .long 1072693248
+ .long 4044216340
+ .long 3215531877
+ .long 0
+ .long 1009324733
+ .long 69373323
+ .long 3209049152
+ .long 0
+ .long 1072693248
+ .long 1972655565
+ .long 3215120485
+ .long 1073741824
+ .long 3156641526
+ .long 3650591271
+ .long 3207838971
+ .long 0
+ .long 1072693248
+ .long 4154680958
+ .long 3214483797
+ .long 0
+ .long 1006312803
+ .long 2376373521
+ .long 3205741868
+ .long 0
+ .long 1072693248
+ .long 4242458500
+ .long 3213435345
+ .long 2684354560
+ .long 3156838286
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 239972940
+ .long 1089470464
+ .long 239972940
+ .long 1089470464
+ .long 239972940
+ .long 1089470464
+ .long 239972940
+ .long 1089470464
+ .long 239972940
+ .long 1089470464
+ .long 239972940
+ .long 1089470464
+ .long 239972940
+ .long 1089470464
+ .long 239972940
+ .long 1089470464
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 1431651400
+ .long 3217380693
+ .long 1431651400
+ .long 3217380693
+ .long 1431651400
+ .long 3217380693
+ .long 1431651400
+ .long 3217380693
+ .long 1431651400
+ .long 3217380693
+ .long 1431651400
+ .long 3217380693
+ .long 1431651400
+ .long 3217380693
+ .long 1431651400
+ .long 3217380693
+ .long 2880656668
+ .long 1065423119
+ .long 2880656668
+ .long 1065423119
+ .long 2880656668
+ .long 1065423119
+ .long 2880656668
+ .long 1065423119
+ .long 2880656668
+ .long 1065423119
+ .long 2880656668
+ .long 1065423119
+ .long 2880656668
+ .long 1065423119
+ .long 2880656668
+ .long 1065423119
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 0
+ .long 3219128320
+ .long 1431653583
+ .long 1067799893
+ .long 1431653583
+ .long 1067799893
+ .long 1431653583
+ .long 1067799893
+ .long 1431653583
+ .long 1067799893
+ .long 1431653583
+ .long 1067799893
+ .long 1431653583
+ .long 1067799893
+ .long 1431653583
+ .long 1067799893
+ .long 1431653583
+ .long 1067799893
+ .long 2976101079
+ .long 3210133866
+ .long 2976101079
+ .long 3210133866
+ .long 2976101079
+ .long 3210133866
+ .long 2976101079
+ .long 3210133866
+ .long 2976101079
+ .long 3210133866
+ .long 2976101079
+ .long 3210133866
+ .long 2976101079
+ .long 3210133866
+ .long 2976101079
+ .long 3210133866
+ .type __svml_dsin_data_internal_ha,@object
+ .size __svml_dsin_data_internal_ha,17280
+ .align 64
+__svml_dsin_reduction_data_internal:
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 5
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 10
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 20
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 40
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 81
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 162
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 325
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 651
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1303
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2607
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 5215
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 10430
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 20860
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 41721
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 83443
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 166886
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 333772
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 667544
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1335088
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2670176
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 5340353
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 10680707
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 21361414
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 42722829
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 85445659
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 170891318
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 341782637
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 683565275
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1367130551
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2734261102
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1173554908
+ .long 1
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2347109817
+ .long 2
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 399252338
+ .long 5
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 798504676
+ .long 10
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1597009353
+ .long 20
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3194018707
+ .long 40
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2093070119
+ .long 81
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 4186140238
+ .long 162
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 4077313180
+ .long 325
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3859659065
+ .long 651
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3424350834
+ .long 1303
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2553734372
+ .long 2607
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 812501448
+ .long 5215
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1625002897
+ .long 10430
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3250005794
+ .long 20860
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2205044292
+ .long 41721
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 115121288
+ .long 83443
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 230242576
+ .long 166886
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 460485152
+ .long 333772
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 920970305
+ .long 667544
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1841940610
+ .long 1335088
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3683881221
+ .long 2670176
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3072795146
+ .long 5340353
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1850622997
+ .long 10680707
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3701245994
+ .long 21361414
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3107524692
+ .long 42722829
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1920082089
+ .long 85445659
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3840164178
+ .long 170891318
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3385361061
+ .long 341782637
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2475754826
+ .long 683565275
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 656542356
+ .long 1367130551
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1313084713
+ .long 2734261102
+ .long 0
+ .long 0
+ .long 1
+ .long 0
+ .long 2626169427
+ .long 1173554908
+ .long 0
+ .long 0
+ .long 2
+ .long 0
+ .long 957371559
+ .long 2347109817
+ .long 0
+ .long 0
+ .long 5
+ .long 0
+ .long 1914743119
+ .long 399252338
+ .long 0
+ .long 0
+ .long 10
+ .long 0
+ .long 3829486239
+ .long 798504676
+ .long 0
+ .long 0
+ .long 20
+ .long 0
+ .long 3364005183
+ .long 1597009353
+ .long 0
+ .long 0
+ .long 40
+ .long 0
+ .long 2433043071
+ .long 3194018707
+ .long 0
+ .long 0
+ .long 81
+ .long 0
+ .long 571118846
+ .long 2093070119
+ .long 0
+ .long 0
+ .long 162
+ .long 0
+ .long 1142237692
+ .long 4186140238
+ .long 0
+ .long 0
+ .long 325
+ .long 0
+ .long 2284475384
+ .long 4077313180
+ .long 0
+ .long 0
+ .long 651
+ .long 0
+ .long 273983472
+ .long 3859659065
+ .long 0
+ .long 0
+ .long 1303
+ .long 0
+ .long 547966945
+ .long 3424350834
+ .long 0
+ .long 0
+ .long 2607
+ .long 0
+ .long 1095933890
+ .long 2553734372
+ .long 0
+ .long 0
+ .long 5215
+ .long 0
+ .long 2191867780
+ .long 812501448
+ .long 0
+ .long 0
+ .long 10430
+ .long 0
+ .long 88768265
+ .long 1625002897
+ .long 0
+ .long 0
+ .long 20860
+ .long 0
+ .long 177536531
+ .long 3250005794
+ .long 0
+ .long 0
+ .long 41721
+ .long 0
+ .long 355073063
+ .long 2205044292
+ .long 0
+ .long 0
+ .long 83443
+ .long 0
+ .long 710146126
+ .long 115121288
+ .long 0
+ .long 0
+ .long 166886
+ .long 0
+ .long 1420292253
+ .long 230242576
+ .long 0
+ .long 0
+ .long 333772
+ .long 0
+ .long 2840584506
+ .long 460485152
+ .long 0
+ .long 0
+ .long 667544
+ .long 0
+ .long 1386201717
+ .long 920970305
+ .long 0
+ .long 0
+ .long 1335088
+ .long 0
+ .long 2772403434
+ .long 1841940610
+ .long 0
+ .long 0
+ .long 2670176
+ .long 0
+ .long 1249839573
+ .long 3683881221
+ .long 0
+ .long 0
+ .long 5340353
+ .long 0
+ .long 2499679147
+ .long 3072795146
+ .long 0
+ .long 0
+ .long 10680707
+ .long 0
+ .long 704390999
+ .long 1850622997
+ .long 0
+ .long 0
+ .long 21361414
+ .long 0
+ .long 1408781999
+ .long 3701245994
+ .long 0
+ .long 0
+ .long 42722829
+ .long 0
+ .long 2817563999
+ .long 3107524692
+ .long 0
+ .long 0
+ .long 85445659
+ .long 0
+ .long 1340160702
+ .long 1920082089
+ .long 0
+ .long 0
+ .long 170891318
+ .long 0
+ .long 2680321405
+ .long 3840164178
+ .long 0
+ .long 0
+ .long 341782637
+ .long 0
+ .long 1065675514
+ .long 3385361061
+ .long 0
+ .long 0
+ .long 683565275
+ .long 0
+ .long 2131351028
+ .long 2475754826
+ .long 0
+ .long 0
+ .long 1367130551
+ .long 0
+ .long 4262702056
+ .long 656542356
+ .long 0
+ .long 0
+ .long 2734261102
+ .long 0
+ .long 4230436817
+ .long 1313084713
+ .long 0
+ .long 0
+ .long 1173554908
+ .long 1
+ .long 4165906339
+ .long 2626169427
+ .long 0
+ .long 0
+ .long 2347109817
+ .long 2
+ .long 4036845383
+ .long 957371559
+ .long 0
+ .long 0
+ .long 399252338
+ .long 5
+ .long 3778723471
+ .long 1914743119
+ .long 0
+ .long 0
+ .long 798504676
+ .long 10
+ .long 3262479647
+ .long 3829486239
+ .long 0
+ .long 0
+ .long 1597009353
+ .long 20
+ .long 2229991998
+ .long 3364005183
+ .long 0
+ .long 0
+ .long 3194018707
+ .long 40
+ .long 165016701
+ .long 2433043071
+ .long 0
+ .long 0
+ .long 2093070119
+ .long 81
+ .long 330033402
+ .long 571118846
+ .long 0
+ .long 0
+ .long 4186140238
+ .long 162
+ .long 660066805
+ .long 1142237692
+ .long 0
+ .long 0
+ .long 4077313180
+ .long 325
+ .long 1320133610
+ .long 2284475384
+ .long 0
+ .long 0
+ .long 3859659065
+ .long 651
+ .long 2640267220
+ .long 273983472
+ .long 0
+ .long 0
+ .long 3424350834
+ .long 1303
+ .long 985567145
+ .long 547966945
+ .long 0
+ .long 0
+ .long 2553734372
+ .long 2607
+ .long 1971134291
+ .long 1095933890
+ .long 0
+ .long 0
+ .long 812501448
+ .long 5215
+ .long 3942268582
+ .long 2191867780
+ .long 0
+ .long 0
+ .long 1625002897
+ .long 10430
+ .long 3589569869
+ .long 88768265
+ .long 0
+ .long 0
+ .long 3250005794
+ .long 20860
+ .long 2884172442
+ .long 177536531
+ .long 0
+ .long 0
+ .long 2205044292
+ .long 41721
+ .long 1473377588
+ .long 355073063
+ .long 0
+ .long 0
+ .long 115121288
+ .long 83443
+ .long 2946755177
+ .long 710146126
+ .long 0
+ .long 0
+ .long 230242576
+ .long 166886
+ .long 1598543059
+ .long 1420292253
+ .long 0
+ .long 0
+ .long 460485152
+ .long 333772
+ .long 3197086118
+ .long 2840584506
+ .long 0
+ .long 0
+ .long 920970305
+ .long 667544
+ .long 2099204941
+ .long 1386201717
+ .long 0
+ .long 0
+ .long 1841940610
+ .long 1335088
+ .long 4198409883
+ .long 2772403434
+ .long 0
+ .long 0
+ .long 3683881221
+ .long 2670176
+ .long 4101852471
+ .long 1249839573
+ .long 0
+ .long 0
+ .long 3072795146
+ .long 5340353
+ .long 3908737646
+ .long 2499679147
+ .long 0
+ .long 0
+ .long 1850622997
+ .long 10680707
+ .long 3522507997
+ .long 704390999
+ .long 0
+ .long 0
+ .long 3701245994
+ .long 21361414
+ .long 2750048699
+ .long 1408781999
+ .long 0
+ .long 0
+ .long 3107524692
+ .long 42722829
+ .long 1205130103
+ .long 2817563999
+ .long 0
+ .long 0
+ .long 1920082089
+ .long 85445659
+ .long 2410260206
+ .long 1340160702
+ .long 0
+ .long 0
+ .long 3840164178
+ .long 170891318
+ .long 525553116
+ .long 2680321405
+ .long 0
+ .long 0
+ .long 3385361061
+ .long 341782637
+ .long 1051106232
+ .long 1065675514
+ .long 0
+ .long 0
+ .long 2475754826
+ .long 683565275
+ .long 2102212464
+ .long 2131351028
+ .long 0
+ .long 0
+ .long 656542356
+ .long 1367130551
+ .long 4204424928
+ .long 4262702056
+ .long 0
+ .long 0
+ .long 1313084713
+ .long 2734261102
+ .long 4113882560
+ .long 4230436817
+ .long 1
+ .long 0
+ .long 2626169427
+ .long 1173554908
+ .long 3932797825
+ .long 4165906339
+ .long 2
+ .long 0
+ .long 957371559
+ .long 2347109817
+ .long 3570628355
+ .long 4036845383
+ .long 5
+ .long 0
+ .long 1914743119
+ .long 399252338
+ .long 2846289414
+ .long 3778723471
+ .long 10
+ .long 0
+ .long 3829486239
+ .long 798504676
+ .long 1397611533
+ .long 3262479647
+ .long 20
+ .long 0
+ .long 3364005183
+ .long 1597009353
+ .long 2795223067
+ .long 2229991998
+ .long 40
+ .long 0
+ .long 2433043071
+ .long 3194018707
+ .long 1295478838
+ .long 165016701
+ .long 81
+ .long 0
+ .long 571118846
+ .long 2093070119
+ .long 2590957677
+ .long 330033402
+ .long 162
+ .long 0
+ .long 1142237692
+ .long 4186140238
+ .long 886948059
+ .long 660066805
+ .long 325
+ .long 0
+ .long 2284475384
+ .long 4077313180
+ .long 1773896118
+ .long 1320133610
+ .long 651
+ .long 0
+ .long 273983472
+ .long 3859659065
+ .long 3547792237
+ .long 2640267220
+ .long 1303
+ .long 0
+ .long 547966945
+ .long 3424350834
+ .long 2800617179
+ .long 985567145
+ .long 2607
+ .long 0
+ .long 1095933890
+ .long 2553734372
+ .long 1306267062
+ .long 1971134291
+ .long 5215
+ .long 0
+ .long 2191867780
+ .long 812501448
+ .long 2612534124
+ .long 3942268582
+ .long 10430
+ .long 0
+ .long 88768265
+ .long 1625002897
+ .long 930100952
+ .long 3589569869
+ .long 20860
+ .long 0
+ .long 177536531
+ .long 3250005794
+ .long 1860201905
+ .long 2884172442
+ .long 41721
+ .long 0
+ .long 355073063
+ .long 2205044292
+ .long 3720403810
+ .long 1473377588
+ .long 83443
+ .long 0
+ .long 710146126
+ .long 115121288
+ .long 3145840325
+ .long 2946755177
+ .long 166886
+ .long 0
+ .long 1420292253
+ .long 230242576
+ .long 1996713354
+ .long 1598543059
+ .long 333772
+ .long 0
+ .long 2840584506
+ .long 460485152
+ .long 3993426708
+ .long 3197086118
+ .long 667544
+ .long 0
+ .long 1386201717
+ .long 920970305
+ .long 3691886121
+ .long 2099204941
+ .long 1335088
+ .long 0
+ .long 2772403434
+ .long 1841940610
+ .long 3088804946
+ .long 4198409883
+ .long 2670176
+ .long 0
+ .long 1249839573
+ .long 3683881221
+ .long 1882642597
+ .long 4101852471
+ .long 5340353
+ .long 0
+ .long 2499679147
+ .long 3072795146
+ .long 3765285194
+ .long 3908737646
+ .long 10680707
+ .long 0
+ .long 704390999
+ .long 1850622997
+ .long 3235603093
+ .long 3522507997
+ .long 21361414
+ .long 0
+ .long 1408781999
+ .long 3701245994
+ .long 2176238891
+ .long 2750048699
+ .long 42722829
+ .long 0
+ .long 2817563999
+ .long 3107524692
+ .long 57510486
+ .long 1205130103
+ .long 85445659
+ .long 0
+ .long 1340160702
+ .long 1920082089
+ .long 115020972
+ .long 2410260206
+ .long 170891318
+ .long 0
+ .long 2680321405
+ .long 3840164178
+ .long 230041945
+ .long 525553116
+ .long 341782637
+ .long 0
+ .long 1065675514
+ .long 3385361061
+ .long 460083891
+ .long 1051106232
+ .long 683565275
+ .long 0
+ .long 2131351028
+ .long 2475754826
+ .long 920167782
+ .long 2102212464
+ .long 1367130551
+ .long 0
+ .long 4262702056
+ .long 656542356
+ .long 1840335564
+ .long 4204424928
+ .long 2734261102
+ .long 0
+ .long 4230436817
+ .long 1313084713
+ .long 3680671129
+ .long 4113882560
+ .long 1173554908
+ .long 1
+ .long 4165906339
+ .long 2626169427
+ .long 3066374962
+ .long 3932797825
+ .long 2347109817
+ .long 2
+ .long 4036845383
+ .long 957371559
+ .long 1837782628
+ .long 3570628355
+ .long 399252338
+ .long 5
+ .long 3778723471
+ .long 1914743119
+ .long 3675565257
+ .long 2846289414
+ .long 798504676
+ .long 10
+ .long 3262479647
+ .long 3829486239
+ .long 3056163219
+ .long 1397611533
+ .long 1597009353
+ .long 20
+ .long 2229991998
+ .long 3364005183
+ .long 1817359143
+ .long 2795223067
+ .long 3194018707
+ .long 40
+ .long 165016701
+ .long 2433043071
+ .long 3634718287
+ .long 1295478838
+ .long 2093070119
+ .long 81
+ .long 330033402
+ .long 571118846
+ .long 2974469278
+ .long 2590957677
+ .long 4186140238
+ .long 162
+ .long 660066805
+ .long 1142237692
+ .long 1653971260
+ .long 886948059
+ .long 4077313180
+ .long 325
+ .long 1320133610
+ .long 2284475384
+ .long 3307942520
+ .long 1773896118
+ .long 3859659065
+ .long 651
+ .long 2640267220
+ .long 273983472
+ .long 2320917745
+ .long 3547792237
+ .long 3424350834
+ .long 1303
+ .long 985567145
+ .long 547966945
+ .long 346868194
+ .long 2800617179
+ .long 2553734372
+ .long 2607
+ .long 1971134291
+ .long 1095933890
+ .long 693736388
+ .long 1306267062
+ .long 812501448
+ .long 5215
+ .long 3942268582
+ .long 2191867780
+ .long 1387472776
+ .long 2612534124
+ .long 1625002897
+ .long 10430
+ .long 3589569869
+ .long 88768265
+ .long 2774945552
+ .long 930100952
+ .long 3250005794
+ .long 20860
+ .long 2884172442
+ .long 177536531
+ .long 1254923809
+ .long 1860201905
+ .long 2205044292
+ .long 41721
+ .long 1473377588
+ .long 355073063
+ .long 2509847619
+ .long 3720403810
+ .long 115121288
+ .long 83443
+ .long 2946755177
+ .long 710146126
+ .long 724727943
+ .long 3145840325
+ .long 230242576
+ .long 166886
+ .long 1598543059
+ .long 1420292253
+ .long 1449455886
+ .long 1996713354
+ .long 460485152
+ .long 333772
+ .long 3197086118
+ .long 2840584506
+ .long 2898911772
+ .long 3993426708
+ .long 920970305
+ .long 667544
+ .long 2099204941
+ .long 1386201717
+ .long 1502856249
+ .long 3691886121
+ .long 1841940610
+ .long 1335088
+ .long 4198409883
+ .long 2772403434
+ .long 3005712498
+ .long 3088804946
+ .long 3683881221
+ .long 2670176
+ .long 4101852471
+ .long 1249839573
+ .long 1716457700
+ .long 1882642597
+ .long 3072795146
+ .long 5340353
+ .long 3908737646
+ .long 2499679147
+ .long 3432915400
+ .long 3765285194
+ .long 1850622997
+ .long 10680707
+ .long 3522507997
+ .long 704390999
+ .long 2570863504
+ .long 3235603093
+ .long 3701245994
+ .long 21361414
+ .long 2750048699
+ .long 1408781999
+ .long 846759712
+ .long 2176238891
+ .long 3107524692
+ .long 42722829
+ .long 1205130103
+ .long 2817563999
+ .long 1693519425
+ .long 57510486
+ .long 1920082089
+ .long 85445659
+ .long 2410260206
+ .long 1340160702
+ .long 3387038850
+ .long 115020972
+ .long 3840164178
+ .long 170891318
+ .long 525553116
+ .long 2680321405
+ .long 2479110404
+ .long 230041945
+ .long 3385361061
+ .long 341782637
+ .long 1051106232
+ .long 1065675514
+ .long 663253512
+ .long 460083891
+ .long 2475754826
+ .long 683565275
+ .long 2102212464
+ .long 2131351028
+ .long 1326507024
+ .long 920167782
+ .long 656542356
+ .long 1367130551
+ .long 4204424928
+ .long 4262702056
+ .long 2653014048
+ .long 1840335564
+ .long 1313084713
+ .long 2734261102
+ .long 4113882560
+ .long 4230436817
+ .long 1011060801
+ .long 3680671129
+ .long 2626169427
+ .long 1173554908
+ .long 3932797825
+ .long 4165906339
+ .long 2022121603
+ .long 3066374962
+ .long 957371559
+ .long 2347109817
+ .long 3570628355
+ .long 4036845383
+ .long 4044243207
+ .long 1837782628
+ .long 1914743119
+ .long 399252338
+ .long 2846289414
+ .long 3778723471
+ .long 3793519119
+ .long 3675565257
+ .long 3829486239
+ .long 798504676
+ .long 1397611533
+ .long 3262479647
+ .long 3292070943
+ .long 3056163219
+ .long 3364005183
+ .long 1597009353
+ .long 2795223067
+ .long 2229991998
+ .long 2289174591
+ .long 1817359143
+ .long 2433043071
+ .long 3194018707
+ .long 1295478838
+ .long 165016701
+ .long 283381887
+ .long 3634718287
+ .long 571118846
+ .long 2093070119
+ .long 2590957677
+ .long 330033402
+ .long 566763775
+ .long 2974469278
+ .long 1142237692
+ .long 4186140238
+ .long 886948059
+ .long 660066805
+ .long 1133527550
+ .long 1653971260
+ .long 2284475384
+ .long 4077313180
+ .long 1773896118
+ .long 1320133610
+ .long 2267055100
+ .long 3307942520
+ .long 273983472
+ .long 3859659065
+ .long 3547792237
+ .long 2640267220
+ .long 239142905
+ .long 2320917745
+ .long 547966945
+ .long 3424350834
+ .long 2800617179
+ .long 985567145
+ .long 478285810
+ .long 346868194
+ .long 1095933890
+ .long 2553734372
+ .long 1306267062
+ .long 1971134291
+ .long 956571621
+ .long 693736388
+ .long 2191867780
+ .long 812501448
+ .long 2612534124
+ .long 3942268582
+ .long 1913143242
+ .long 1387472776
+ .long 88768265
+ .long 1625002897
+ .long 930100952
+ .long 3589569869
+ .long 3826286484
+ .long 2774945552
+ .long 177536531
+ .long 3250005794
+ .long 1860201905
+ .long 2884172442
+ .long 3357605672
+ .long 1254923809
+ .long 355073063
+ .long 2205044292
+ .long 3720403810
+ .long 1473377588
+ .long 2420244049
+ .long 2509847619
+ .long 710146126
+ .long 115121288
+ .long 3145840325
+ .long 2946755177
+ .long 545520802
+ .long 724727943
+ .long 1420292253
+ .long 230242576
+ .long 1996713354
+ .long 1598543059
+ .long 1091041605
+ .long 1449455886
+ .long 2840584506
+ .long 460485152
+ .long 3993426708
+ .long 3197086118
+ .long 2182083211
+ .long 2898911772
+ .long 1386201717
+ .long 920970305
+ .long 3691886121
+ .long 2099204941
+ .long 69199126
+ .long 1502856249
+ .long 2772403434
+ .long 1841940610
+ .long 3088804946
+ .long 4198409883
+ .long 138398252
+ .long 3005712498
+ .long 1249839573
+ .long 3683881221
+ .long 1882642597
+ .long 4101852471
+ .long 276796504
+ .long 1716457700
+ .long 2499679147
+ .long 3072795146
+ .long 3765285194
+ .long 3908737646
+ .long 553593009
+ .long 3432915400
+ .long 704390999
+ .long 1850622997
+ .long 3235603093
+ .long 3522507997
+ .long 1107186019
+ .long 2570863504
+ .long 1408781999
+ .long 3701245994
+ .long 2176238891
+ .long 2750048699
+ .long 2214372039
+ .long 846759712
+ .long 2817563999
+ .long 3107524692
+ .long 57510486
+ .long 1205130103
+ .long 133776782
+ .long 1693519425
+ .long 1340160702
+ .long 1920082089
+ .long 115020972
+ .long 2410260206
+ .long 267553565
+ .long 3387038850
+ .long 2680321405
+ .long 3840164178
+ .long 230041945
+ .long 525553116
+ .long 535107130
+ .long 2479110404
+ .long 1065675514
+ .long 3385361061
+ .long 460083891
+ .long 1051106232
+ .long 1070214261
+ .long 663253512
+ .long 2131351028
+ .long 2475754826
+ .long 920167782
+ .long 2102212464
+ .long 2140428522
+ .long 1326507024
+ .long 4262702056
+ .long 656542356
+ .long 1840335564
+ .long 4204424928
+ .long 4280857045
+ .long 2653014048
+ .long 4230436817
+ .long 1313084713
+ .long 3680671129
+ .long 4113882560
+ .long 4266746795
+ .long 1011060801
+ .long 4165906339
+ .long 2626169427
+ .long 3066374962
+ .long 3932797825
+ .long 4238526295
+ .long 2022121603
+ .long 4036845383
+ .long 957371559
+ .long 1837782628
+ .long 3570628355
+ .long 4182085295
+ .long 4044243207
+ .long 3778723471
+ .long 1914743119
+ .long 3675565257
+ .long 2846289414
+ .long 4069203294
+ .long 3793519119
+ .long 3262479647
+ .long 3829486239
+ .long 3056163219
+ .long 1397611533
+ .long 3843439293
+ .long 3292070943
+ .long 2229991998
+ .long 3364005183
+ .long 1817359143
+ .long 2795223067
+ .long 3391911291
+ .long 2289174591
+ .long 165016701
+ .long 2433043071
+ .long 3634718287
+ .long 1295478838
+ .long 2488855287
+ .long 283381887
+ .long 330033402
+ .long 571118846
+ .long 2974469278
+ .long 2590957677
+ .long 682743279
+ .long 566763775
+ .long 660066805
+ .long 1142237692
+ .long 1653971260
+ .long 886948059
+ .long 1365486558
+ .long 1133527550
+ .long 1320133610
+ .long 2284475384
+ .long 3307942520
+ .long 1773896118
+ .long 2730973117
+ .long 2267055100
+ .long 2640267220
+ .long 273983472
+ .long 2320917745
+ .long 3547792237
+ .long 1166978938
+ .long 239142905
+ .long 985567145
+ .long 547966945
+ .long 346868194
+ .long 2800617179
+ .long 2333957877
+ .long 478285810
+ .long 1971134291
+ .long 1095933890
+ .long 693736388
+ .long 1306267062
+ .long 372948459
+ .long 956571621
+ .long 3942268582
+ .long 2191867780
+ .long 1387472776
+ .long 2612534124
+ .long 745896919
+ .long 1913143242
+ .long 3589569869
+ .long 88768265
+ .long 2774945552
+ .long 930100952
+ .long 1491793838
+ .long 3826286484
+ .long 2884172442
+ .long 177536531
+ .long 1254923809
+ .long 1860201905
+ .long 2983587677
+ .long 3357605672
+ .long 1473377588
+ .long 355073063
+ .long 2509847619
+ .long 3720403810
+ .long 1672208059
+ .long 2420244049
+ .long 2946755177
+ .long 710146126
+ .long 724727943
+ .long 3145840325
+ .long 3344416119
+ .long 545520802
+ .long 1598543059
+ .long 1420292253
+ .long 1449455886
+ .long 1996713354
+ .long 2393864943
+ .long 1091041605
+ .long 3197086118
+ .long 2840584506
+ .long 2898911772
+ .long 3993426708
+ .long 492762590
+ .long 2182083211
+ .long 2099204941
+ .long 1386201717
+ .long 1502856249
+ .long 3691886121
+ .long 985525180
+ .long 69199126
+ .long 4198409883
+ .long 2772403434
+ .long 3005712498
+ .long 3088804946
+ .long 1971050360
+ .long 138398252
+ .long 4101852471
+ .long 1249839573
+ .long 1716457700
+ .long 1882642597
+ .long 3942100721
+ .long 276796504
+ .long 3908737646
+ .long 2499679147
+ .long 3432915400
+ .long 3765285194
+ .long 3589234146
+ .long 553593009
+ .long 3522507997
+ .long 704390999
+ .long 2570863504
+ .long 3235603093
+ .long 2883500997
+ .long 1107186019
+ .long 2750048699
+ .long 1408781999
+ .long 846759712
+ .long 2176238891
+ .long 1472034698
+ .long 2214372039
+ .long 1205130103
+ .long 2817563999
+ .long 1693519425
+ .long 57510486
+ .long 2944069397
+ .long 133776782
+ .long 2410260206
+ .long 1340160702
+ .long 3387038850
+ .long 115020972
+ .long 1593171499
+ .long 267553565
+ .long 525553116
+ .long 2680321405
+ .long 2479110404
+ .long 230041945
+ .long 3186342998
+ .long 535107130
+ .long 1051106232
+ .long 1065675514
+ .long 663253512
+ .long 460083891
+ .long 2077718700
+ .long 1070214261
+ .long 2102212464
+ .long 2131351028
+ .long 1326507024
+ .long 920167782
+ .long 4155437400
+ .long 2140428522
+ .long 4204424928
+ .long 4262702056
+ .long 2653014048
+ .long 1840335564
+ .long 4015907504
+ .long 4280857045
+ .long 4113882560
+ .long 4230436817
+ .long 1011060801
+ .long 3680671129
+ .long 3736847713
+ .long 4266746795
+ .long 3932797825
+ .long 4165906339
+ .long 2022121603
+ .long 3066374962
+ .long 3178728131
+ .long 4238526295
+ .long 3570628355
+ .long 4036845383
+ .long 4044243207
+ .long 1837782628
+ .long 2062488966
+ .long 4182085295
+ .long 2846289414
+ .long 3778723471
+ .long 3793519119
+ .long 3675565257
+ .long 4124977933
+ .long 4069203294
+ .long 1397611533
+ .long 3262479647
+ .long 3292070943
+ .long 3056163219
+ .long 3954988571
+ .long 3843439293
+ .long 2795223067
+ .long 2229991998
+ .long 2289174591
+ .long 1817359143
+ .long 3615009846
+ .long 3391911291
+ .long 1295478838
+ .long 165016701
+ .long 283381887
+ .long 3634718287
+ .long 2935052397
+ .long 2488855287
+ .long 2590957677
+ .long 330033402
+ .long 566763775
+ .long 2974469278
+ .long 1575137499
+ .long 682743279
+ .long 886948059
+ .long 660066805
+ .long 1133527550
+ .long 1653971260
+ .long 3150274999
+ .long 1365486558
+ .long 1773896118
+ .long 1320133610
+ .long 2267055100
+ .long 3307942520
+ .long 2005582702
+ .long 2730973117
+ .long 3547792237
+ .long 2640267220
+ .long 239142905
+ .long 2320917745
+ .long 4011165404
+ .long 1166978938
+ .long 2800617179
+ .long 985567145
+ .long 478285810
+ .long 346868194
+ .long 3727363513
+ .long 2333957877
+ .long 1306267062
+ .long 1971134291
+ .long 956571621
+ .long 693736388
+ .long 3159759730
+ .long 372948459
+ .long 2612534124
+ .long 3942268582
+ .long 1913143242
+ .long 1387472776
+ .long 2024552164
+ .long 745896919
+ .long 930100952
+ .long 3589569869
+ .long 3826286484
+ .long 2774945552
+ .long 4049104329
+ .long 1491793838
+ .long 1860201905
+ .long 2884172442
+ .long 3357605672
+ .long 1254923809
+ .long 3803241362
+ .long 2983587677
+ .long 3720403810
+ .long 1473377588
+ .long 2420244049
+ .long 2509847619
+ .long 3311515428
+ .long 1672208059
+ .long 3145840325
+ .long 2946755177
+ .long 545520802
+ .long 724727943
+ .long 2328063560
+ .long 3344416119
+ .long 1996713354
+ .long 1598543059
+ .long 1091041605
+ .long 1449455886
+ .long 361159825
+ .long 2393864943
+ .long 3993426708
+ .long 3197086118
+ .long 2182083211
+ .long 2898911772
+ .long 722319651
+ .long 492762590
+ .long 3691886121
+ .long 2099204941
+ .long 69199126
+ .long 1502856249
+ .long 1444639302
+ .long 985525180
+ .long 3088804946
+ .long 4198409883
+ .long 138398252
+ .long 3005712498
+ .long 2889278605
+ .long 1971050360
+ .long 1882642597
+ .long 4101852471
+ .long 276796504
+ .long 1716457700
+ .long 1483589915
+ .long 3942100721
+ .long 3765285194
+ .long 3908737646
+ .long 553593009
+ .long 3432915400
+ .long 2967179831
+ .long 3589234146
+ .long 3235603093
+ .long 3522507997
+ .long 1107186019
+ .long 2570863504
+ .long 1639392366
+ .long 2883500997
+ .long 2176238891
+ .long 2750048699
+ .long 2214372039
+ .long 846759712
+ .long 3278784732
+ .long 1472034698
+ .long 57510486
+ .long 1205130103
+ .long 133776782
+ .long 1693519425
+ .long 2262602168
+ .long 2944069397
+ .long 115020972
+ .long 2410260206
+ .long 267553565
+ .long 3387038850
+ .long 230237041
+ .long 1593171499
+ .long 230041945
+ .long 525553116
+ .long 535107130
+ .long 2479110404
+ .long 460474083
+ .long 3186342998
+ .long 460083891
+ .long 1051106232
+ .long 1070214261
+ .long 663253512
+ .long 920948167
+ .long 2077718700
+ .long 920167782
+ .long 2102212464
+ .long 2140428522
+ .long 1326507024
+ .long 1841896334
+ .long 4155437400
+ .long 1840335564
+ .long 4204424928
+ .long 4280857045
+ .long 2653014048
+ .long 3683792669
+ .long 4015907504
+ .long 3680671129
+ .long 4113882560
+ .long 4266746795
+ .long 1011060801
+ .long 3072618042
+ .long 3736847713
+ .long 3066374962
+ .long 3932797825
+ .long 4238526295
+ .long 2022121603
+ .long 1850268788
+ .long 3178728131
+ .long 1837782628
+ .long 3570628355
+ .long 4182085295
+ .long 4044243207
+ .long 3700537577
+ .long 2062488966
+ .long 3675565257
+ .long 2846289414
+ .long 4069203294
+ .long 3793519119
+ .long 3106107858
+ .long 4124977933
+ .long 3056163219
+ .long 1397611533
+ .long 3843439293
+ .long 3292070943
+ .long 1917248420
+ .long 3954988571
+ .long 1817359143
+ .long 2795223067
+ .long 3391911291
+ .long 2289174591
+ .long 3834496840
+ .long 3615009846
+ .long 3634718287
+ .long 1295478838
+ .long 2488855287
+ .long 283381887
+ .long 3374026384
+ .long 2935052397
+ .long 2974469278
+ .long 2590957677
+ .long 682743279
+ .long 566763775
+ .long 2453085473
+ .long 1575137499
+ .long 1653971260
+ .long 886948059
+ .long 1365486558
+ .long 1133527550
+ .long 611203650
+ .long 3150274999
+ .long 3307942520
+ .long 1773896118
+ .long 2730973117
+ .long 2267055100
+ .long 1222407300
+ .long 2005582702
+ .long 2320917745
+ .long 3547792237
+ .long 1166978938
+ .long 239142905
+ .long 2444814601
+ .long 4011165404
+ .long 346868194
+ .long 2800617179
+ .long 2333957877
+ .long 478285810
+ .long 594661906
+ .long 3727363513
+ .long 693736388
+ .long 1306267062
+ .long 372948459
+ .long 956571621
+ .long 1189323812
+ .long 3159759730
+ .long 1387472776
+ .long 2612534124
+ .long 745896919
+ .long 1913143242
+ .long 2378647625
+ .long 2024552164
+ .long 2774945552
+ .long 930100952
+ .long 1491793838
+ .long 3826286484
+ .long 462327955
+ .long 4049104329
+ .long 1254923809
+ .long 1860201905
+ .long 2983587677
+ .long 3357605672
+ .long 924655910
+ .long 3803241362
+ .long 2509847619
+ .long 3720403810
+ .long 1672208059
+ .long 2420244049
+ .long 1849311821
+ .long 3311515428
+ .long 724727943
+ .long 3145840325
+ .long 3344416119
+ .long 545520802
+ .long 3698623643
+ .long 2328063560
+ .long 1449455886
+ .long 1996713354
+ .long 2393864943
+ .long 1091041605
+ .long 3102279991
+ .long 361159825
+ .long 2898911772
+ .long 3993426708
+ .long 492762590
+ .long 2182083211
+ .long 1909592686
+ .long 722319651
+ .long 1502856249
+ .long 3691886121
+ .long 985525180
+ .long 69199126
+ .long 3819185373
+ .long 1444639302
+ .long 3005712498
+ .long 3088804946
+ .long 1971050360
+ .long 138398252
+ .long 3343403450
+ .long 2889278605
+ .long 1716457700
+ .long 1882642597
+ .long 3942100721
+ .long 276796504
+ .long 2391839604
+ .long 1483589915
+ .long 3432915400
+ .long 3765285194
+ .long 3589234146
+ .long 553593009
+ .long 488711913
+ .long 2967179831
+ .long 2570863504
+ .long 3235603093
+ .long 2883500997
+ .long 1107186019
+ .long 977423826
+ .long 1639392366
+ .long 846759712
+ .long 2176238891
+ .long 1472034698
+ .long 2214372039
+ .long 1954847653
+ .long 3278784732
+ .long 1693519425
+ .long 57510486
+ .long 2944069397
+ .long 133776782
+ .long 3909695307
+ .long 2262602168
+ .long 3387038850
+ .long 115020972
+ .long 1593171499
+ .long 267553565
+ .long 3524423319
+ .long 230237041
+ .long 2479110404
+ .long 230041945
+ .long 3186342998
+ .long 535107130
+ .long 2753879342
+ .long 460474083
+ .long 663253512
+ .long 460083891
+ .long 2077718700
+ .long 1070214261
+ .long 1212791388
+ .long 920948167
+ .long 1326507024
+ .long 920167782
+ .long 4155437400
+ .long 2140428522
+ .long 2425582776
+ .long 1841896334
+ .long 2653014048
+ .long 1840335564
+ .long 4015907504
+ .long 4280857045
+ .long 556198256
+ .long 3683792669
+ .long 1011060801
+ .long 3680671129
+ .long 3736847713
+ .long 4266746795
+ .long 1112396512
+ .long 3072618042
+ .long 2022121603
+ .long 3066374962
+ .long 3178728131
+ .long 4238526295
+ .long 2224793024
+ .long 1850268788
+ .long 4044243207
+ .long 1837782628
+ .long 2062488966
+ .long 4182085295
+ .long 154618752
+ .long 3700537577
+ .long 3793519119
+ .long 3675565257
+ .long 4124977933
+ .long 4069203294
+ .long 309237504
+ .long 3106107858
+ .long 3292070943
+ .long 3056163219
+ .long 3954988571
+ .long 3843439293
+ .long 618475008
+ .long 1917248420
+ .long 2289174591
+ .long 1817359143
+ .long 3615009846
+ .long 3391911291
+ .long 1236950016
+ .long 3834496840
+ .long 283381887
+ .long 3634718287
+ .long 2935052397
+ .long 2488855287
+ .long 2473900033
+ .long 3374026384
+ .long 566763775
+ .long 2974469278
+ .long 1575137499
+ .long 682743279
+ .long 652832771
+ .long 2453085473
+ .long 1133527550
+ .long 1653971260
+ .long 3150274999
+ .long 1365486558
+ .long 1305665542
+ .long 611203650
+ .long 2267055100
+ .long 3307942520
+ .long 2005582702
+ .long 2730973117
+ .long 2611331084
+ .long 1222407300
+ .long 239142905
+ .long 2320917745
+ .long 4011165404
+ .long 1166978938
+ .long 927694873
+ .long 2444814601
+ .long 478285810
+ .long 346868194
+ .long 3727363513
+ .long 2333957877
+ .long 1855389746
+ .long 594661906
+ .long 956571621
+ .long 693736388
+ .long 3159759730
+ .long 372948459
+ .long 3710779492
+ .long 1189323812
+ .long 1913143242
+ .long 1387472776
+ .long 2024552164
+ .long 745896919
+ .long 3126591689
+ .long 2378647625
+ .long 3826286484
+ .long 2774945552
+ .long 4049104329
+ .long 1491793838
+ .long 1958216082
+ .long 462327955
+ .long 3357605672
+ .long 1254923809
+ .long 3803241362
+ .long 2983587677
+ .long 3916432164
+ .long 924655910
+ .long 2420244049
+ .long 2509847619
+ .long 3311515428
+ .long 1672208059
+ .long 3537897033
+ .long 1849311821
+ .long 545520802
+ .long 724727943
+ .long 2328063560
+ .long 3344416119
+ .long 2780826770
+ .long 3698623643
+ .long 1091041605
+ .long 1449455886
+ .long 361159825
+ .long 2393864943
+ .long 1266686244
+ .long 3102279991
+ .long 2182083211
+ .long 2898911772
+ .long 722319651
+ .long 492762590
+ .long 2533372489
+ .long 1909592686
+ .long 69199126
+ .long 1502856249
+ .long 1444639302
+ .long 985525180
+ .long 771777682
+ .long 3819185373
+ .long 138398252
+ .long 3005712498
+ .long 2889278605
+ .long 1971050360
+ .long 1543555365
+ .long 3343403450
+ .long 276796504
+ .long 1716457700
+ .long 1483589915
+ .long 3942100721
+ .long 3087110731
+ .long 2391839604
+ .long 553593009
+ .long 3432915400
+ .long 2967179831
+ .long 3589234146
+ .long 1879254167
+ .long 488711913
+ .long 1107186019
+ .long 2570863504
+ .long 1639392366
+ .long 2883500997
+ .long 3758508334
+ .long 977423826
+ .long 2214372039
+ .long 846759712
+ .long 3278784732
+ .long 1472034698
+ .long 3222049373
+ .long 1954847653
+ .long 133776782
+ .long 1693519425
+ .long 2262602168
+ .long 2944069397
+ .long 2149131451
+ .long 3909695307
+ .long 267553565
+ .long 3387038850
+ .long 230237041
+ .long 1593171499
+ .long 3295607
+ .long 3524423319
+ .long 535107130
+ .long 2479110404
+ .long 460474083
+ .long 3186342998
+ .long 6591214
+ .long 2753879342
+ .long 1070214261
+ .long 663253512
+ .long 920948167
+ .long 2077718700
+ .long 13182429
+ .long 1212791388
+ .long 2140428522
+ .long 1326507024
+ .long 1841896334
+ .long 4155437400
+ .long 26364858
+ .long 2425582776
+ .long 4280857045
+ .long 2653014048
+ .long 3683792669
+ .long 4015907504
+ .long 52729717
+ .long 556198256
+ .long 4266746795
+ .long 1011060801
+ .long 3072618042
+ .long 3736847713
+ .long 105459434
+ .long 1112396512
+ .long 4238526295
+ .long 2022121603
+ .long 1850268788
+ .long 3178728131
+ .long 210918868
+ .long 2224793024
+ .long 4182085295
+ .long 4044243207
+ .long 3700537577
+ .long 2062488966
+ .long 421837736
+ .long 154618752
+ .long 4069203294
+ .long 3793519119
+ .long 3106107858
+ .long 4124977933
+ .long 843675472
+ .long 309237504
+ .long 3843439293
+ .long 3292070943
+ .long 1917248420
+ .long 3954988571
+ .long 1687350944
+ .long 618475008
+ .long 3391911291
+ .long 2289174591
+ .long 3834496840
+ .long 3615009846
+ .long 3374701889
+ .long 1236950016
+ .long 2488855287
+ .long 283381887
+ .long 3374026384
+ .long 2935052397
+ .long 2454436482
+ .long 2473900033
+ .long 682743279
+ .long 566763775
+ .long 2453085473
+ .long 1575137499
+ .long 613905668
+ .long 652832771
+ .long 1365486558
+ .long 1133527550
+ .long 611203650
+ .long 3150274999
+ .long 1227811337
+ .long 1305665542
+ .long 2730973117
+ .long 2267055100
+ .long 1222407300
+ .long 2005582702
+ .long 2455622675
+ .long 2611331084
+ .long 1166978938
+ .long 239142905
+ .long 2444814601
+ .long 4011165404
+ .long 616278055
+ .long 927694873
+ .long 2333957877
+ .long 478285810
+ .long 594661906
+ .long 3727363513
+ .long 1232556110
+ .long 1855389746
+ .long 372948459
+ .long 956571621
+ .long 1189323812
+ .long 3159759730
+ .long 2465112221
+ .long 3710779492
+ .long 745896919
+ .long 1913143242
+ .long 2378647625
+ .long 2024552164
+ .long 635257146
+ .long 3126591689
+ .long 1491793838
+ .long 3826286484
+ .long 462327955
+ .long 4049104329
+ .long 1270514292
+ .long 1958216082
+ .long 2983587677
+ .long 3357605672
+ .long 924655910
+ .long 3803241362
+ .long 2541028584
+ .long 3916432164
+ .long 1672208059
+ .long 2420244049
+ .long 1849311821
+ .long 3311515428
+ .long 787089873
+ .long 3537897033
+ .long 3344416119
+ .long 545520802
+ .long 3698623643
+ .long 2328063560
+ .long 1574179747
+ .long 2780826770
+ .long 2393864943
+ .long 1091041605
+ .long 3102279991
+ .long 361159825
+ .long 3148359494
+ .long 1266686244
+ .long 492762590
+ .long 2182083211
+ .long 1909592686
+ .long 722319651
+ .long 2001751692
+ .long 2533372489
+ .long 985525180
+ .long 69199126
+ .long 3819185373
+ .long 1444639302
+ .long 4003503385
+ .long 771777682
+ .long 1971050360
+ .long 138398252
+ .long 3343403450
+ .long 2889278605
+ .long 3712039474
+ .long 1543555365
+ .long 3942100721
+ .long 276796504
+ .long 2391839604
+ .long 1483589915
+ .long 3129111652
+ .long 3087110731
+ .long 3589234146
+ .long 553593009
+ .long 488711913
+ .long 2967179831
+ .long 1963256009
+ .long 1879254167
+ .long 2883500997
+ .long 1107186019
+ .long 977423826
+ .long 1639392366
+ .long 3926512018
+ .long 3758508334
+ .long 1472034698
+ .long 2214372039
+ .long 1954847653
+ .long 3278784732
+ .long 3558056740
+ .long 3222049373
+ .long 2944069397
+ .long 133776782
+ .long 3909695307
+ .long 2262602168
+ .long 2821146184
+ .long 2149131451
+ .long 1593171499
+ .long 267553565
+ .long 3524423319
+ .long 230237041
+ .long 1347325072
+ .long 3295607
+ .long 3186342998
+ .long 535107130
+ .long 2753879342
+ .long 460474083
+ .long 2694650145
+ .long 6591214
+ .long 2077718700
+ .long 1070214261
+ .long 1212791388
+ .long 920948167
+ .long 1094332995
+ .long 13182429
+ .long 4155437400
+ .long 2140428522
+ .long 2425582776
+ .long 1841896334
+ .long 2188665991
+ .long 26364858
+ .long 4015907504
+ .long 4280857045
+ .long 556198256
+ .long 3683792669
+ .long 82364686
+ .long 52729717
+ .long 3736847713
+ .long 4266746795
+ .long 1112396512
+ .long 3072618042
+ .long 164729372
+ .long 105459434
+ .long 3178728131
+ .long 4238526295
+ .long 2224793024
+ .long 1850268788
+ .long 329458745
+ .long 210918868
+ .long 2062488966
+ .long 4182085295
+ .long 154618752
+ .long 3700537577
+ .long 658917491
+ .long 421837736
+ .long 4124977933
+ .long 4069203294
+ .long 309237504
+ .long 3106107858
+ .long 1317834983
+ .long 843675472
+ .long 3954988571
+ .long 3843439293
+ .long 618475008
+ .long 1917248420
+ .long 2635669967
+ .long 1687350944
+ .long 3615009846
+ .long 3391911291
+ .long 1236950016
+ .long 3834496840
+ .long 976372639
+ .long 3374701889
+ .long 2935052397
+ .long 2488855287
+ .long 2473900033
+ .long 3374026384
+ .long 1952745279
+ .long 2454436482
+ .long 1575137499
+ .long 682743279
+ .long 652832771
+ .long 2453085473
+ .long 3905490559
+ .long 613905668
+ .long 3150274999
+ .long 1365486558
+ .long 1305665542
+ .long 611203650
+ .long 3516013822
+ .long 1227811337
+ .long 2005582702
+ .long 2730973117
+ .long 2611331084
+ .long 1222407300
+ .long 2737060348
+ .long 2455622675
+ .long 4011165404
+ .long 1166978938
+ .long 927694873
+ .long 2444814601
+ .long 1179153400
+ .long 616278055
+ .long 3727363513
+ .long 2333957877
+ .long 1855389746
+ .long 594661906
+ .long 2358306800
+ .long 1232556110
+ .long 3159759730
+ .long 372948459
+ .long 3710779492
+ .long 1189323812
+ .long 421646305
+ .long 2465112221
+ .long 2024552164
+ .long 745896919
+ .long 3126591689
+ .long 2378647625
+ .long 843292611
+ .long 635257146
+ .long 4049104329
+ .long 1491793838
+ .long 1958216082
+ .long 462327955
+ .long 1686585223
+ .long 1270514292
+ .long 3803241362
+ .long 2983587677
+ .long 3916432164
+ .long 924655910
+ .long 3373170446
+ .long 2541028584
+ .long 3311515428
+ .long 1672208059
+ .long 3537897033
+ .long 1849311821
+ .long 2451373597
+ .long 787089873
+ .long 2328063560
+ .long 3344416119
+ .long 2780826770
+ .long 3698623643
+ .long 607779899
+ .long 1574179747
+ .long 361159825
+ .long 2393864943
+ .long 1266686244
+ .long 3102279991
+ .long 1215559799
+ .long 3148359494
+ .long 722319651
+ .long 492762590
+ .long 2533372489
+ .long 1909592686
+ .long 2431119599
+ .long 2001751692
+ .long 1444639302
+ .long 985525180
+ .long 771777682
+ .long 3819185373
+ .long 567271902
+ .long 4003503385
+ .long 2889278605
+ .long 1971050360
+ .long 1543555365
+ .long 3343403450
+ .long 1134543805
+ .long 3712039474
+ .long 1483589915
+ .long 3942100721
+ .long 3087110731
+ .long 2391839604
+ .long 2269087610
+ .long 3129111652
+ .long 2967179831
+ .long 3589234146
+ .long 1879254167
+ .long 488711913
+ .long 243207925
+ .long 1963256009
+ .long 1639392366
+ .long 2883500997
+ .long 3758508334
+ .long 977423826
+ .long 486415851
+ .long 3926512018
+ .long 3278784732
+ .long 1472034698
+ .long 3222049373
+ .long 1954847653
+ .long 972831702
+ .long 3558056740
+ .long 2262602168
+ .long 2944069397
+ .long 2149131451
+ .long 3909695307
+ .long 1945663404
+ .long 2821146184
+ .long 230237041
+ .long 1593171499
+ .long 3295607
+ .long 3524423319
+ .long 3891326808
+ .long 1347325072
+ .long 460474083
+ .long 3186342998
+ .long 6591214
+ .long 2753879342
+ .long 3487686321
+ .long 2694650145
+ .long 920948167
+ .long 2077718700
+ .long 13182429
+ .long 1212791388
+ .long 2680405347
+ .long 1094332995
+ .long 1841896334
+ .long 4155437400
+ .long 26364858
+ .long 2425582776
+ .long 1065843399
+ .long 2188665991
+ .long 3683792669
+ .long 4015907504
+ .long 52729717
+ .long 556198256
+ .long 2131686798
+ .long 82364686
+ .long 3072618042
+ .long 3736847713
+ .long 105459434
+ .long 1112396512
+ .long 4263373596
+ .long 164729372
+ .long 1850268788
+ .long 3178728131
+ .long 210918868
+ .long 2224793024
+ .long 4231779897
+ .long 329458745
+ .long 3700537577
+ .long 2062488966
+ .long 421837736
+ .long 154618752
+ .long 4168592498
+ .long 658917491
+ .long 3106107858
+ .long 4124977933
+ .long 843675472
+ .long 309237504
+ .long 4042217701
+ .long 1317834983
+ .long 1917248420
+ .long 3954988571
+ .long 1687350944
+ .long 618475008
+ .long 3789468107
+ .long 2635669967
+ .long 3834496840
+ .long 3615009846
+ .long 3374701889
+ .long 1236950016
+ .long 3283968918
+ .long 976372639
+ .long 3374026384
+ .long 2935052397
+ .long 2454436482
+ .long 2473900033
+ .long 2272970540
+ .long 1952745279
+ .long 2453085473
+ .long 1575137499
+ .long 613905668
+ .long 652832771
+ .long 250973784
+ .long 3905490559
+ .long 611203650
+ .long 3150274999
+ .long 1227811337
+ .long 1305665542
+ .long 501947569
+ .long 3516013822
+ .long 1222407300
+ .long 2005582702
+ .long 2455622675
+ .long 2611331084
+ .long 1003895138
+ .long 2737060348
+ .long 2444814601
+ .long 4011165404
+ .long 616278055
+ .long 927694873
+ .long 2007790276
+ .long 1179153400
+ .long 594661906
+ .long 3727363513
+ .long 1232556110
+ .long 1855389746
+ .long 4015580553
+ .long 2358306800
+ .long 1189323812
+ .long 3159759730
+ .long 2465112221
+ .long 3710779492
+ .long 3736193810
+ .long 421646305
+ .long 2378647625
+ .long 2024552164
+ .long 635257146
+ .long 3126591689
+ .long 3177420325
+ .long 843292611
+ .long 462327955
+ .long 4049104329
+ .long 1270514292
+ .long 1958216082
+ .long 2059873354
+ .long 1686585223
+ .long 924655910
+ .long 3803241362
+ .long 2541028584
+ .long 3916432164
+ .long 4119746708
+ .long 3373170446
+ .long 1849311821
+ .long 3311515428
+ .long 787089873
+ .long 3537897033
+ .long 3944526121
+ .long 2451373597
+ .long 3698623643
+ .long 2328063560
+ .long 1574179747
+ .long 2780826770
+ .long 3594084947
+ .long 607779899
+ .long 3102279991
+ .long 361159825
+ .long 3148359494
+ .long 1266686244
+ .long 2893202598
+ .long 1215559799
+ .long 1909592686
+ .long 722319651
+ .long 2001751692
+ .long 2533372489
+ .long 1491437901
+ .long 2431119599
+ .long 3819185373
+ .long 1444639302
+ .long 4003503385
+ .long 771777682
+ .long 2982875802
+ .long 567271902
+ .long 3343403450
+ .long 2889278605
+ .long 3712039474
+ .long 1543555365
+ .long 1670784308
+ .long 1134543805
+ .long 2391839604
+ .long 1483589915
+ .long 3129111652
+ .long 3087110731
+ .long 3341568617
+ .long 2269087610
+ .long 488711913
+ .long 2967179831
+ .long 1963256009
+ .long 1879254167
+ .long 2388169939
+ .long 243207925
+ .long 977423826
+ .long 1639392366
+ .long 3926512018
+ .long 3758508334
+ .long 481372583
+ .long 486415851
+ .long 1954847653
+ .long 3278784732
+ .long 3558056740
+ .long 3222049373
+ .long 962745166
+ .long 972831702
+ .long 3909695307
+ .long 2262602168
+ .long 2821146184
+ .long 2149131451
+ .long 1925490332
+ .long 1945663404
+ .long 3524423319
+ .long 230237041
+ .long 1347325072
+ .long 3295607
+ .long 3850980665
+ .long 3891326808
+ .long 2753879342
+ .long 460474083
+ .long 2694650145
+ .long 6591214
+ .long 3406994035
+ .long 3487686321
+ .long 1212791388
+ .long 920948167
+ .long 1094332995
+ .long 13182429
+ .long 2519020775
+ .long 2680405347
+ .long 2425582776
+ .long 1841896334
+ .long 2188665991
+ .long 26364858
+ .long 743074255
+ .long 1065843399
+ .long 556198256
+ .long 3683792669
+ .long 82364686
+ .long 52729717
+ .long 1486148511
+ .long 2131686798
+ .long 1112396512
+ .long 3072618042
+ .long 164729372
+ .long 105459434
+ .long 2972297022
+ .long 4263373596
+ .long 2224793024
+ .long 1850268788
+ .long 329458745
+ .long 210918868
+ .long 1649626749
+ .long 4231779897
+ .long 154618752
+ .long 3700537577
+ .long 658917491
+ .long 421837736
+ .long 3299253499
+ .long 4168592498
+ .long 309237504
+ .long 3106107858
+ .long 1317834983
+ .long 843675472
+ .long 2303539703
+ .long 4042217701
+ .long 618475008
+ .long 1917248420
+ .long 2635669967
+ .long 1687350944
+ .long 312112110
+ .long 3789468107
+ .long 1236950016
+ .long 3834496840
+ .long 976372639
+ .long 3374701889
+ .long 624224221
+ .long 3283968918
+ .long 2473900033
+ .long 3374026384
+ .long 1952745279
+ .long 2454436482
+ .long 1248448442
+ .long 2272970540
+ .long 652832771
+ .long 2453085473
+ .long 3905490559
+ .long 613905668
+ .long 2496896884
+ .long 250973784
+ .long 1305665542
+ .long 611203650
+ .long 3516013822
+ .long 1227811337
+ .long 698826472
+ .long 501947569
+ .long 2611331084
+ .long 1222407300
+ .long 2737060348
+ .long 2455622675
+ .long 1397652945
+ .long 1003895138
+ .long 927694873
+ .long 2444814601
+ .long 1179153400
+ .long 616278055
+ .long 2795305890
+ .long 2007790276
+ .long 1855389746
+ .long 594661906
+ .long 2358306800
+ .long 1232556110
+ .long 1295644484
+ .long 4015580553
+ .long 3710779492
+ .long 1189323812
+ .long 421646305
+ .long 2465112221
+ .long 2591288968
+ .long 3736193810
+ .long 3126591689
+ .long 2378647625
+ .long 843292611
+ .long 635257146
+ .long 887610640
+ .long 3177420325
+ .long 1958216082
+ .long 462327955
+ .long 1686585223
+ .long 1270514292
+ .long 1775221280
+ .long 2059873354
+ .long 3916432164
+ .long 924655910
+ .long 3373170446
+ .long 2541028584
+ .long 3550442561
+ .long 4119746708
+ .long 3537897033
+ .long 1849311821
+ .long 2451373597
+ .long 787089873
+ .long 2805917826
+ .long 3944526121
+ .long 2780826770
+ .long 3698623643
+ .long 607779899
+ .long 1574179747
+ .long 1316868356
+ .long 3594084947
+ .long 1266686244
+ .long 3102279991
+ .long 1215559799
+ .long 3148359494
+ .long 2633736712
+ .long 2893202598
+ .long 2533372489
+ .long 1909592686
+ .long 2431119599
+ .long 2001751692
+ .long 972506129
+ .long 1491437901
+ .long 771777682
+ .long 3819185373
+ .long 567271902
+ .long 4003503385
+ .long 1945012259
+ .long 2982875802
+ .long 1543555365
+ .long 3343403450
+ .long 1134543805
+ .long 3712039474
+ .long 3890024518
+ .long 1670784308
+ .long 3087110731
+ .long 2391839604
+ .long 2269087610
+ .long 3129111652
+ .long 3485081741
+ .long 3341568617
+ .long 1879254167
+ .long 488711913
+ .long 243207925
+ .long 1963256009
+ .long 2675196186
+ .long 2388169939
+ .long 3758508334
+ .long 977423826
+ .long 486415851
+ .long 3926512018
+ .long 1055425077
+ .long 481372583
+ .long 3222049373
+ .long 1954847653
+ .long 972831702
+ .long 3558056740
+ .long 2110850155
+ .long 962745166
+ .long 2149131451
+ .long 3909695307
+ .long 1945663404
+ .long 2821146184
+ .long 4221700311
+ .long 1925490332
+ .long 3295607
+ .long 3524423319
+ .long 3891326808
+ .long 1347325072
+ .long 4148433327
+ .long 3850980665
+ .long 6591214
+ .long 2753879342
+ .long 3487686321
+ .long 2694650145
+ .long 4001899359
+ .long 3406994035
+ .long 13182429
+ .long 1212791388
+ .long 2680405347
+ .long 1094332995
+ .long 3708831422
+ .long 2519020775
+ .long 26364858
+ .long 2425582776
+ .long 1065843399
+ .long 2188665991
+ .long 3122695549
+ .long 743074255
+ .long 52729717
+ .long 556198256
+ .long 2131686798
+ .long 82364686
+ .long 1950423802
+ .long 1486148511
+ .long 105459434
+ .long 1112396512
+ .long 4263373596
+ .long 164729372
+ .long 3900847605
+ .long 2972297022
+ .long 210918868
+ .long 2224793024
+ .long 4231779897
+ .long 329458745
+ .long 3506727914
+ .long 1649626749
+ .long 421837736
+ .long 154618752
+ .long 4168592498
+ .long 658917491
+ .long 2718488532
+ .long 3299253499
+ .long 843675472
+ .long 309237504
+ .long 4042217701
+ .long 1317834983
+ .long 1142009769
+ .long 2303539703
+ .long 1687350944
+ .long 618475008
+ .long 3789468107
+ .long 2635669967
+ .long 2284019538
+ .long 312112110
+ .long 3374701889
+ .long 1236950016
+ .long 3283968918
+ .long 976372639
+ .long 273071781
+ .long 624224221
+ .long 2454436482
+ .long 2473900033
+ .long 2272970540
+ .long 1952745279
+ .long 546143563
+ .long 1248448442
+ .long 613905668
+ .long 652832771
+ .long 250973784
+ .long 3905490559
+ .long 1092287127
+ .long 2496896884
+ .long 1227811337
+ .long 1305665542
+ .long 501947569
+ .long 3516013822
+ .long 2184574254
+ .long 698826472
+ .long 2455622675
+ .long 2611331084
+ .long 1003895138
+ .long 2737060348
+ .long 74181213
+ .long 1397652945
+ .long 616278055
+ .long 927694873
+ .long 2007790276
+ .long 1179153400
+ .long 148362426
+ .long 2795305890
+ .long 1232556110
+ .long 1855389746
+ .long 4015580553
+ .long 2358306800
+ .long 296724853
+ .long 1295644484
+ .long 2465112221
+ .long 3710779492
+ .long 3736193810
+ .long 421646305
+ .long 593449707
+ .long 2591288968
+ .long 635257146
+ .long 3126591689
+ .long 3177420325
+ .long 843292611
+ .long 1186899415
+ .long 887610640
+ .long 1270514292
+ .long 1958216082
+ .long 2059873354
+ .long 1686585223
+ .long 2373798830
+ .long 1775221280
+ .long 2541028584
+ .long 3916432164
+ .long 4119746708
+ .long 3373170446
+ .long 452630365
+ .long 3550442561
+ .long 787089873
+ .long 3537897033
+ .long 3944526121
+ .long 2451373597
+ .long 905260731
+ .long 2805917826
+ .long 1574179747
+ .long 2780826770
+ .long 3594084947
+ .long 607779899
+ .long 1810521462
+ .long 1316868356
+ .long 3148359494
+ .long 1266686244
+ .long 2893202598
+ .long 1215559799
+ .long 3621042925
+ .long 2633736712
+ .long 2001751692
+ .long 2533372489
+ .long 1491437901
+ .long 2431119599
+ .long 2947118554
+ .long 972506129
+ .long 4003503385
+ .long 771777682
+ .long 2982875802
+ .long 567271902
+ .long 1599269812
+ .long 1945012259
+ .long 3712039474
+ .long 1543555365
+ .long 1670784308
+ .long 1134543805
+ .long 3198539624
+ .long 3890024518
+ .long 3129111652
+ .long 3087110731
+ .long 3341568617
+ .long 2269087610
+ .long 2102111953
+ .long 3485081741
+ .long 1963256009
+ .long 1879254167
+ .long 2388169939
+ .long 243207925
+ .long 4204223906
+ .long 2675196186
+ .long 3926512018
+ .long 3758508334
+ .long 481372583
+ .long 486415851
+ .long 4113480516
+ .long 1055425077
+ .long 3558056740
+ .long 3222049373
+ .long 962745166
+ .long 972831702
+ .long 3931993737
+ .long 2110850155
+ .long 2821146184
+ .long 2149131451
+ .long 1925490332
+ .long 1945663404
+ .long 3569020178
+ .long 4221700311
+ .long 1347325072
+ .long 3295607
+ .long 3850980665
+ .long 3891326808
+ .long 2843073060
+ .long 4148433327
+ .long 2694650145
+ .long 6591214
+ .long 3406994035
+ .long 3487686321
+ .long 1391178824
+ .long 4001899359
+ .long 1094332995
+ .long 13182429
+ .long 2519020775
+ .long 2680405347
+ .long 2782357648
+ .long 3708831422
+ .long 2188665991
+ .long 26364858
+ .long 743074255
+ .long 1065843399
+ .long 1269748001
+ .long 3122695549
+ .long 82364686
+ .long 52729717
+ .long 1486148511
+ .long 2131686798
+ .long 2539496002
+ .long 1950423802
+ .long 164729372
+ .long 105459434
+ .long 2972297022
+ .long 4263373596
+ .long 784024708
+ .long 3900847605
+ .long 329458745
+ .long 210918868
+ .long 1649626749
+ .long 4231779897
+ .long 1568049417
+ .long 3506727914
+ .long 658917491
+ .long 421837736
+ .long 3299253499
+ .long 4168592498
+ .long 3136098835
+ .long 2718488532
+ .long 1317834983
+ .long 843675472
+ .long 2303539703
+ .long 4042217701
+ .long 1977230375
+ .long 1142009769
+ .long 2635669967
+ .long 1687350944
+ .long 312112110
+ .long 3789468107
+ .long 3954460750
+ .long 2284019538
+ .long 976372639
+ .long 3374701889
+ .long 624224221
+ .long 3283968918
+ .long 3613954205
+ .long 273071781
+ .long 1952745279
+ .long 2454436482
+ .long 1248448442
+ .long 2272970540
+ .long 2932941114
+ .long 546143563
+ .long 3905490559
+ .long 613905668
+ .long 2496896884
+ .long 250973784
+ .long 1570914932
+ .long 1092287127
+ .long 3516013822
+ .long 1227811337
+ .long 698826472
+ .long 501947569
+ .long 3141829865
+ .long 2184574254
+ .long 2737060348
+ .long 2455622675
+ .long 1397652945
+ .long 1003895138
+ .long 1988692435
+ .long 74181213
+ .long 1179153400
+ .long 616278055
+ .long 2795305890
+ .long 2007790276
+ .long 3977384870
+ .long 148362426
+ .long 2358306800
+ .long 1232556110
+ .long 1295644484
+ .long 4015580553
+ .long 3659802444
+ .long 296724853
+ .long 421646305
+ .long 2465112221
+ .long 2591288968
+ .long 3736193810
+ .long 3024637593
+ .long 593449707
+ .long 843292611
+ .long 635257146
+ .long 887610640
+ .long 3177420325
+ .long 1754307891
+ .long 1186899415
+ .long 1686585223
+ .long 1270514292
+ .long 1775221280
+ .long 2059873354
+ .long 3508615783
+ .long 2373798830
+ .long 3373170446
+ .long 2541028584
+ .long 3550442561
+ .long 4119746708
+ .long 2722264270
+ .long 452630365
+ .long 2451373597
+ .long 787089873
+ .long 2805917826
+ .long 3944526121
+ .long 1149561244
+ .long 905260731
+ .long 607779899
+ .long 1574179747
+ .long 1316868356
+ .long 3594084947
+ .long 2299122488
+ .long 1810521462
+ .long 1215559799
+ .long 3148359494
+ .long 2633736712
+ .long 2893202598
+ .long 303277681
+ .long 3621042925
+ .long 2431119599
+ .long 2001751692
+ .long 972506129
+ .long 1491437901
+ .long 606555363
+ .long 2947118554
+ .long 567271902
+ .long 4003503385
+ .long 1945012259
+ .long 2982875802
+ .long 1213110727
+ .long 1599269812
+ .long 1134543805
+ .long 3712039474
+ .long 3890024518
+ .long 1670784308
+ .long 2426221454
+ .long 3198539624
+ .long 2269087610
+ .long 3129111652
+ .long 3485081741
+ .long 3341568617
+ .long 557475612
+ .long 2102111953
+ .long 243207925
+ .long 1963256009
+ .long 2675196186
+ .long 2388169939
+ .long 1114951224
+ .long 4204223906
+ .long 486415851
+ .long 3926512018
+ .long 1055425077
+ .long 481372583
+ .long 2229902448
+ .long 4113480516
+ .long 972831702
+ .long 3558056740
+ .long 2110850155
+ .long 962745166
+ .long 164837600
+ .long 3931993737
+ .long 1945663404
+ .long 2821146184
+ .long 4221700311
+ .long 1925490332
+ .long 329675200
+ .long 3569020178
+ .long 3891326808
+ .long 1347325072
+ .long 4148433327
+ .long 3850980665
+ .long 659350401
+ .long 2843073060
+ .long 3487686321
+ .long 2694650145
+ .long 4001899359
+ .long 3406994035
+ .long 1318700802
+ .long 1391178824
+ .long 2680405347
+ .long 1094332995
+ .long 3708831422
+ .long 2519020775
+ .long 2637401604
+ .long 2782357648
+ .long 1065843399
+ .long 2188665991
+ .long 3122695549
+ .long 743074255
+ .long 979835913
+ .long 1269748001
+ .long 2131686798
+ .long 82364686
+ .long 1950423802
+ .long 1486148511
+ .long 1959671827
+ .long 2539496002
+ .long 4263373596
+ .long 164729372
+ .long 3900847605
+ .long 2972297022
+ .long 3919343654
+ .long 784024708
+ .long 4231779897
+ .long 329458745
+ .long 3506727914
+ .long 1649626749
+ .long 3543720013
+ .long 1568049417
+ .long 4168592498
+ .long 658917491
+ .long 2718488532
+ .long 3299253499
+ .long 2792472730
+ .long 3136098835
+ .long 4042217701
+ .long 1317834983
+ .long 1142009769
+ .long 2303539703
+ .long 1289978165
+ .long 1977230375
+ .long 3789468107
+ .long 2635669967
+ .long 2284019538
+ .long 312112110
+ .long 2579956331
+ .long 3954460750
+ .long 3283968918
+ .long 976372639
+ .long 273071781
+ .long 624224221
+ .long 864945366
+ .long 3613954205
+ .long 2272970540
+ .long 1952745279
+ .long 546143563
+ .long 1248448442
+ .long 1729890733
+ .long 2932941114
+ .long 250973784
+ .long 3905490559
+ .long 1092287127
+ .long 2496896884
+ .long 3459781466
+ .long 1570914932
+ .long 501947569
+ .long 3516013822
+ .long 2184574254
+ .long 698826472
+ .long 2624595636
+ .long 3141829865
+ .long 1003895138
+ .long 2737060348
+ .long 74181213
+ .long 1397652945
+ .long 954223976
+ .long 1988692435
+ .long 2007790276
+ .long 1179153400
+ .long 148362426
+ .long 2795305890
+ .long 1908447953
+ .long 3977384870
+ .long 4015580553
+ .long 2358306800
+ .long 296724853
+ .long 1295644484
+ .long 3816895906
+ .long 3659802444
+ .long 3736193810
+ .long 421646305
+ .long 593449707
+ .long 2591288968
+ .long 3338824517
+ .long 3024637593
+ .long 3177420325
+ .long 843292611
+ .long 1186899415
+ .long 887610640
+ .long 2382681739
+ .long 1754307891
+ .long 2059873354
+ .long 1686585223
+ .long 2373798830
+ .long 1775221280
+ .long 470396183
+ .long 3508615783
+ .long 4119746708
+ .long 3373170446
+ .long 452630365
+ .long 3550442561
+ .long 940792367
+ .long 2722264270
+ .long 3944526121
+ .long 2451373597
+ .long 905260731
+ .long 2805917826
+ .long 1881584735
+ .long 1149561244
+ .long 3594084947
+ .long 607779899
+ .long 1810521462
+ .long 1316868356
+ .long 3763169470
+ .long 2299122488
+ .long 2893202598
+ .long 1215559799
+ .long 3621042925
+ .long 2633736712
+ .long 3231371645
+ .long 303277681
+ .long 1491437901
+ .long 2431119599
+ .long 2947118554
+ .long 972506129
+ .long 2167775995
+ .long 606555363
+ .long 2982875802
+ .long 567271902
+ .long 1599269812
+ .long 1945012259
+ .long 40584695
+ .long 1213110727
+ .long 1670784308
+ .long 1134543805
+ .long 3198539624
+ .long 3890024518
+ .long 81169391
+ .long 2426221454
+ .long 3341568617
+ .long 2269087610
+ .long 2102111953
+ .long 3485081741
+ .long 162338783
+ .long 557475612
+ .long 2388169939
+ .long 243207925
+ .long 4204223906
+ .long 2675196186
+ .long 324677567
+ .long 1114951224
+ .long 481372583
+ .long 486415851
+ .long 4113480516
+ .long 1055425077
+ .long 649355134
+ .long 2229902448
+ .long 962745166
+ .long 972831702
+ .long 3931993737
+ .long 2110850155
+ .long 1298710268
+ .long 164837600
+ .long 1925490332
+ .long 1945663404
+ .long 3569020178
+ .long 4221700311
+ .long 2597420537
+ .long 329675200
+ .long 3850980665
+ .long 3891326808
+ .long 2843073060
+ .long 4148433327
+ .long 899873778
+ .long 659350401
+ .long 3406994035
+ .long 3487686321
+ .long 1391178824
+ .long 4001899359
+ .long 1799747556
+ .long 1318700802
+ .long 2519020775
+ .long 2680405347
+ .long 2782357648
+ .long 3708831422
+ .long 3599495112
+ .long 2637401604
+ .long 743074255
+ .long 1065843399
+ .long 1269748001
+ .long 3122695549
+ .long 2904022928
+ .long 979835913
+ .long 1486148511
+ .long 2131686798
+ .long 2539496002
+ .long 1950423802
+ .long 1513078560
+ .long 1959671827
+ .long 2972297022
+ .long 4263373596
+ .long 784024708
+ .long 3900847605
+ .long 3026157121
+ .long 3919343654
+ .long 1649626749
+ .long 4231779897
+ .long 1568049417
+ .long 3506727914
+ .long 1757346946
+ .long 3543720013
+ .long 3299253499
+ .long 4168592498
+ .long 3136098835
+ .long 2718488532
+ .long 3514693892
+ .long 2792472730
+ .long 2303539703
+ .long 4042217701
+ .long 1977230375
+ .long 1142009769
+ .long 2734420489
+ .long 1289978165
+ .long 312112110
+ .long 3789468107
+ .long 3954460750
+ .long 2284019538
+ .long 1173873683
+ .long 2579956331
+ .long 624224221
+ .long 3283968918
+ .long 3613954205
+ .long 273071781
+ .long 2347747367
+ .long 864945366
+ .long 1248448442
+ .long 2272970540
+ .long 2932941114
+ .long 546143563
+ .long 400527438
+ .long 1729890733
+ .long 2496896884
+ .long 250973784
+ .long 1570914932
+ .long 1092287127
+ .long 801054876
+ .long 3459781466
+ .long 698826472
+ .long 501947569
+ .long 3141829865
+ .long 2184574254
+ .long 1602109753
+ .long 2624595636
+ .long 1397652945
+ .long 1003895138
+ .long 1988692435
+ .long 74181213
+ .long 3204219507
+ .long 954223976
+ .long 2795305890
+ .long 2007790276
+ .long 3977384870
+ .long 148362426
+ .long 2113471718
+ .long 1908447953
+ .long 1295644484
+ .long 4015580553
+ .long 3659802444
+ .long 296724853
+ .long 4226943436
+ .long 3816895906
+ .long 2591288968
+ .long 3736193810
+ .long 3024637593
+ .long 593449707
+ .long 4158919577
+ .long 3338824517
+ .long 887610640
+ .long 3177420325
+ .long 1754307891
+ .long 1186899415
+ .long 4022871858
+ .long 2382681739
+ .long 1775221280
+ .long 2059873354
+ .long 3508615783
+ .long 2373798830
+ .long 3750776420
+ .long 470396183
+ .long 3550442561
+ .long 4119746708
+ .long 2722264270
+ .long 452630365
+ .long 3206585544
+ .long 940792367
+ .long 2805917826
+ .long 3944526121
+ .long 1149561244
+ .long 905260731
+ .long 2118203793
+ .long 1881584735
+ .long 1316868356
+ .long 3594084947
+ .long 2299122488
+ .long 1810521462
+ .long 4236407587
+ .long 3763169470
+ .long 2633736712
+ .long 2893202598
+ .long 303277681
+ .long 3621042925
+ .long 4177847879
+ .long 3231371645
+ .long 972506129
+ .long 1491437901
+ .long 606555363
+ .long 2947118554
+ .long 4060728462
+ .long 2167775995
+ .long 1945012259
+ .long 2982875802
+ .long 1213110727
+ .long 1599269812
+ .long 3826489629
+ .long 40584695
+ .long 3890024518
+ .long 1670784308
+ .long 2426221454
+ .long 3198539624
+ .long 3358011962
+ .long 81169391
+ .long 3485081741
+ .long 3341568617
+ .long 557475612
+ .long 2102111953
+ .long 2421056629
+ .long 162338783
+ .long 2675196186
+ .long 2388169939
+ .long 1114951224
+ .long 4204223906
+ .long 547145963
+ .long 324677567
+ .long 1055425077
+ .long 481372583
+ .long 2229902448
+ .long 4113480516
+ .long 1094291926
+ .long 649355134
+ .long 2110850155
+ .long 962745166
+ .long 164837600
+ .long 3931993737
+ .long 2188583852
+ .long 1298710268
+ .long 4221700311
+ .long 1925490332
+ .long 329675200
+ .long 3569020178
+ .long 82200408
+ .long 2597420537
+ .long 4148433327
+ .long 3850980665
+ .long 659350401
+ .long 2843073060
+ .long 164400817
+ .long 899873778
+ .long 4001899359
+ .long 3406994035
+ .long 1318700802
+ .long 1391178824
+ .long 328801635
+ .long 1799747556
+ .long 3708831422
+ .long 2519020775
+ .long 2637401604
+ .long 2782357648
+ .long 657603271
+ .long 3599495112
+ .long 3122695549
+ .long 743074255
+ .long 979835913
+ .long 1269748001
+ .long 1315206542
+ .long 2904022928
+ .long 1950423802
+ .long 1486148511
+ .long 1959671827
+ .long 2539496002
+ .long 2630413084
+ .long 1513078560
+ .long 3900847605
+ .long 2972297022
+ .long 3919343654
+ .long 784024708
+ .long 965858873
+ .long 3026157121
+ .long 3506727914
+ .long 1649626749
+ .long 3543720013
+ .long 1568049417
+ .long 1931717747
+ .long 1757346946
+ .long 2718488532
+ .long 3299253499
+ .long 2792472730
+ .long 3136098835
+ .long 3863435494
+ .long 3514693892
+ .long 1142009769
+ .long 2303539703
+ .long 1289978165
+ .long 1977230375
+ .long 3431903692
+ .long 2734420489
+ .long 2284019538
+ .long 312112110
+ .long 2579956331
+ .long 3954460750
+ .long 2568840088
+ .long 1173873683
+ .long 273071781
+ .long 624224221
+ .long 864945366
+ .long 3613954205
+ .long 842712880
+ .long 2347747367
+ .long 546143563
+ .long 1248448442
+ .long 1729890733
+ .long 2932941114
+ .long 1685425760
+ .long 400527438
+ .long 1092287127
+ .long 2496896884
+ .long 3459781466
+ .long 1570914932
+ .long 3370851521
+ .long 801054876
+ .long 2184574254
+ .long 698826472
+ .long 2624595636
+ .long 3141829865
+ .long 2446735747
+ .long 1602109753
+ .long 74181213
+ .long 1397652945
+ .long 954223976
+ .long 1988692435
+ .long 598504198
+ .long 3204219507
+ .long 148362426
+ .long 2795305890
+ .long 1908447953
+ .long 3977384870
+ .long 1197008397
+ .long 2113471718
+ .long 296724853
+ .long 1295644484
+ .long 3816895906
+ .long 3659802444
+ .long 2394016794
+ .long 4226943436
+ .long 593449707
+ .long 2591288968
+ .long 3338824517
+ .long 3024637593
+ .long 493066293
+ .long 4158919577
+ .long 1186899415
+ .long 887610640
+ .long 2382681739
+ .long 1754307891
+ .long 986132586
+ .long 4022871858
+ .long 2373798830
+ .long 1775221280
+ .long 470396183
+ .long 3508615783
+ .long 1972265172
+ .long 3750776420
+ .long 452630365
+ .long 3550442561
+ .long 940792367
+ .long 2722264270
+ .long 3944530345
+ .long 3206585544
+ .long 905260731
+ .long 2805917826
+ .long 1881584735
+ .long 1149561244
+ .long 3594093395
+ .long 2118203793
+ .long 1810521462
+ .long 1316868356
+ .long 3763169470
+ .long 2299122488
+ .long 2893219494
+ .long 4236407587
+ .long 3621042925
+ .long 2633736712
+ .long 3231371645
+ .long 303277681
+ .long 1491471692
+ .long 4177847879
+ .long 2947118554
+ .long 972506129
+ .long 2167775995
+ .long 606555363
+ .long 2982943385
+ .long 4060728462
+ .long 1599269812
+ .long 1945012259
+ .long 40584695
+ .long 1213110727
+ .long 1670919475
+ .long 3826489629
+ .long 3198539624
+ .long 3890024518
+ .long 81169391
+ .long 2426221454
+ .long 3341838951
+ .long 3358011962
+ .long 2102111953
+ .long 3485081741
+ .long 162338783
+ .long 557475612
+ .long 2388710606
+ .long 2421056629
+ .long 4204223906
+ .long 2675196186
+ .long 324677567
+ .long 1114951224
+ .long 482453916
+ .long 547145963
+ .long 4113480516
+ .long 1055425077
+ .long 649355134
+ .long 2229902448
+ .long 964907833
+ .long 1094291926
+ .long 3931993737
+ .long 2110850155
+ .long 1298710268
+ .long 164837600
+ .long 1929815667
+ .long 2188583852
+ .long 3569020178
+ .long 4221700311
+ .long 2597420537
+ .long 329675200
+ .long 3859631335
+ .long 82200408
+ .long 2843073060
+ .long 4148433327
+ .long 899873778
+ .long 659350401
+ .long 3424295375
+ .long 164400817
+ .long 1391178824
+ .long 4001899359
+ .long 1799747556
+ .long 1318700802
+ .long 2553623455
+ .long 328801635
+ .long 2782357648
+ .long 3708831422
+ .long 3599495112
+ .long 2637401604
+ .long 812279614
+ .long 657603271
+ .long 1269748001
+ .long 3122695549
+ .long 2904022928
+ .long 979835913
+ .long 1624559229
+ .long 1315206542
+ .long 2539496002
+ .long 1950423802
+ .long 1513078560
+ .long 1959671827
+ .long 3249118458
+ .long 2630413084
+ .long 784024708
+ .long 3900847605
+ .long 3026157121
+ .long 3919343654
+ .long 2203269620
+ .long 965858873
+ .long 1568049417
+ .long 3506727914
+ .long 1757346946
+ .long 3543720013
+ .long 111571945
+ .long 1931717747
+ .long 3136098835
+ .long 2718488532
+ .long 3514693892
+ .long 2792472730
+ .long 223143890
+ .long 3863435494
+ .long 1977230375
+ .long 1142009769
+ .long 2734420489
+ .long 1289978165
+ .long 446287780
+ .long 3431903692
+ .long 3954460750
+ .long 2284019538
+ .long 1173873683
+ .long 2579956331
+ .long 892575561
+ .long 2568840088
+ .long 3613954205
+ .long 273071781
+ .long 2347747367
+ .long 864945366
+ .long 1785151123
+ .long 842712880
+ .long 2932941114
+ .long 546143563
+ .long 400527438
+ .long 1729890733
+ .long 3570302247
+ .long 1685425760
+ .long 1570914932
+ .long 1092287127
+ .long 801054876
+ .long 3459781466
+ .long 2845637198
+ .long 3370851521
+ .long 3141829865
+ .long 2184574254
+ .long 1602109753
+ .long 2624595636
+ .long 1396307100
+ .long 2446735747
+ .long 1988692435
+ .long 74181213
+ .long 3204219507
+ .long 954223976
+ .long 2792614201
+ .long 598504198
+ .long 3977384870
+ .long 148362426
+ .long 2113471718
+ .long 1908447953
+ .long 1290261106
+ .long 1197008397
+ .long 3659802444
+ .long 296724853
+ .long 4226943436
+ .long 3816895906
+ .long 2580522212
+ .long 2394016794
+ .long 3024637593
+ .long 593449707
+ .long 4158919577
+ .long 3338824517
+ .long 866077128
+ .long 493066293
+ .long 1754307891
+ .long 1186899415
+ .long 4022871858
+ .long 2382681739
+ .long 1732154256
+ .long 986132586
+ .long 3508615783
+ .long 2373798830
+ .long 3750776420
+ .long 470396183
+ .long 3464308513
+ .long 1972265172
+ .long 2722264270
+ .long 452630365
+ .long 3206585544
+ .long 940792367
+ .long 2633649730
+ .long 3944530345
+ .long 1149561244
+ .long 905260731
+ .long 2118203793
+ .long 1881584735
+ .long 972332164
+ .long 3594093395
+ .long 2299122488
+ .long 1810521462
+ .long 4236407587
+ .long 3763169470
+ .long 1944664328
+ .long 2893219494
+ .long 303277681
+ .long 3621042925
+ .long 4177847879
+ .long 3231371645
+ .long 3889328657
+ .long 1491471692
+ .long 606555363
+ .long 2947118554
+ .long 4060728462
+ .long 2167775995
+ .long 3483690018
+ .long 2982943385
+ .long 1213110727
+ .long 1599269812
+ .long 3826489629
+ .long 40584695
+ .long 2672412741
+ .long 1670919475
+ .long 2426221454
+ .long 3198539624
+ .long 3358011962
+ .long 81169391
+ .long 1049858187
+ .long 3341838951
+ .long 557475612
+ .long 2102111953
+ .long 2421056629
+ .long 162338783
+ .long 2099716375
+ .long 2388710606
+ .long 1114951224
+ .long 4204223906
+ .long 547145963
+ .long 324677567
+ .long 4199432751
+ .long 482453916
+ .long 2229902448
+ .long 4113480516
+ .long 1094291926
+ .long 649355134
+ .long 4103898207
+ .long 964907833
+ .long 164837600
+ .long 3931993737
+ .long 2188583852
+ .long 1298710268
+ .long 3912829119
+ .long 1929815667
+ .long 329675200
+ .long 3569020178
+ .long 82200408
+ .long 2597420537
+ .long 3530690942
+ .long 3859631335
+ .long 659350401
+ .long 2843073060
+ .long 164400817
+ .long 899873778
+ .long 2766414588
+ .long 3424295375
+ .long 1318700802
+ .long 1391178824
+ .long 328801635
+ .long 1799747556
+ .long 1237861880
+ .long 2553623455
+ .long 2637401604
+ .long 2782357648
+ .long 657603271
+ .long 3599495112
+ .long 2475723761
+ .long 812279614
+ .long 979835913
+ .long 1269748001
+ .long 1315206542
+ .long 2904022928
+ .long 656480226
+ .long 1624559229
+ .long 1959671827
+ .long 2539496002
+ .long 2630413084
+ .long 1513078560
+ .long 1312960453
+ .long 3249118458
+ .long 3919343654
+ .long 784024708
+ .long 965858873
+ .long 3026157121
+ .long 2625920907
+ .long 2203269620
+ .long 3543720013
+ .long 1568049417
+ .long 1931717747
+ .long 1757346946
+ .long 956874519
+ .long 111571945
+ .long 2792472730
+ .long 3136098835
+ .long 3863435494
+ .long 3514693892
+ .long 1913749038
+ .long 223143890
+ .long 1289978165
+ .long 1977230375
+ .long 3431903692
+ .long 2734420489
+ .long 3827498077
+ .long 446287780
+ .long 2579956331
+ .long 3954460750
+ .long 2568840088
+ .long 1173873683
+ .long 3360028859
+ .long 892575561
+ .long 864945366
+ .long 3613954205
+ .long 842712880
+ .long 2347747367
+ .long 2425090423
+ .long 1785151123
+ .long 1729890733
+ .long 2932941114
+ .long 1685425760
+ .long 400527438
+ .long 555213551
+ .long 3570302247
+ .long 3459781466
+ .long 1570914932
+ .long 3370851521
+ .long 801054876
+ .long 1110427102
+ .long 2845637198
+ .long 2624595636
+ .long 3141829865
+ .long 2446735747
+ .long 1602109753
+ .long 2220854205
+ .long 1396307100
+ .long 954223976
+ .long 1988692435
+ .long 598504198
+ .long 3204219507
+ .long 146741115
+ .long 2792614201
+ .long 1908447953
+ .long 3977384870
+ .long 1197008397
+ .long 2113471718
+ .long 293482231
+ .long 1290261106
+ .long 3816895906
+ .long 3659802444
+ .long 2394016794
+ .long 4226943436
+ .long 586964463
+ .long 2580522212
+ .long 3338824517
+ .long 3024637593
+ .long 493066293
+ .long 4158919577
+ .long 1173928927
+ .long 866077128
+ .long 2382681739
+ .long 1754307891
+ .long 986132586
+ .long 4022871858
+ .long 2347857855
+ .long 1732154256
+ .long 470396183
+ .long 3508615783
+ .long 1972265172
+ .long 3750776420
+ .long 400748414
+ .long 3464308513
+ .long 940792367
+ .long 2722264270
+ .long 3944530345
+ .long 3206585544
+ .long 801496828
+ .long 2633649730
+ .long 1881584735
+ .long 1149561244
+ .long 3594093395
+ .long 2118203793
+ .long 1602993657
+ .long 972332164
+ .long 3763169470
+ .long 2299122488
+ .long 2893219494
+ .long 4236407587
+ .long 3205987314
+ .long 1944664328
+ .long 3231371645
+ .long 303277681
+ .long 1491471692
+ .long 4177847879
+ .long 2117007332
+ .long 3889328657
+ .long 2167775995
+ .long 606555363
+ .long 2982943385
+ .long 4060728462
+ .long 4234014665
+ .long 3483690018
+ .long 40584695
+ .long 1213110727
+ .long 1670919475
+ .long 3826489629
+ .long 4173062034
+ .long 2672412741
+ .long 81169391
+ .long 2426221454
+ .long 3341838951
+ .long 3358011962
+ .long 4051156773
+ .long 1049858187
+ .long 162338783
+ .long 557475612
+ .long 2388710606
+ .long 2421056629
+ .long 3807346250
+ .long 2099716375
+ .long 324677567
+ .long 1114951224
+ .long 482453916
+ .long 547145963
+ .long 3319725204
+ .long 4199432751
+ .long 649355134
+ .long 2229902448
+ .long 964907833
+ .long 1094291926
+ .long 2344483112
+ .long 4103898207
+ .long 1298710268
+ .long 164837600
+ .long 1929815667
+ .long 2188583852
+ .long 393998928
+ .long 3912829119
+ .long 2597420537
+ .long 329675200
+ .long 3859631335
+ .long 82200408
+ .long 787997856
+ .long 3530690942
+ .long 899873778
+ .long 659350401
+ .long 3424295375
+ .long 164400817
+ .long 1575995713
+ .long 2766414588
+ .long 1799747556
+ .long 1318700802
+ .long 2553623455
+ .long 328801635
+ .long 3151991427
+ .long 1237861880
+ .long 3599495112
+ .long 2637401604
+ .long 812279614
+ .long 657603271
+ .long 2009015559
+ .long 2475723761
+ .long 2904022928
+ .long 979835913
+ .long 1624559229
+ .long 1315206542
+ .long 4018031118
+ .long 656480226
+ .long 1513078560
+ .long 1959671827
+ .long 3249118458
+ .long 2630413084
+ .long 3741094941
+ .long 1312960453
+ .long 3026157121
+ .long 3919343654
+ .long 2203269620
+ .long 965858873
+ .long 3187222587
+ .long 2625920907
+ .long 1757346946
+ .long 3543720013
+ .long 111571945
+ .long 1931717747
+ .long 2079477878
+ .long 956874519
+ .long 3514693892
+ .long 2792472730
+ .long 223143890
+ .long 3863435494
+ .long 4158955756
+ .long 1913749038
+ .long 2734420489
+ .long 1289978165
+ .long 446287780
+ .long 3431903692
+ .long 4022944216
+ .long 3827498077
+ .long 1173873683
+ .long 2579956331
+ .long 892575561
+ .long 2568840088
+ .long 3750921137
+ .long 3360028859
+ .long 2347747367
+ .long 864945366
+ .long 1785151123
+ .long 842712880
+ .long 3206874979
+ .long 2425090423
+ .long 400527438
+ .long 1729890733
+ .long 3570302247
+ .long 1685425760
+ .long 2118782663
+ .long 555213551
+ .long 801054876
+ .long 3459781466
+ .long 2845637198
+ .long 3370851521
+ .long 4237565327
+ .long 1110427102
+ .long 1602109753
+ .long 2624595636
+ .long 1396307100
+ .long 2446735747
+ .long 4180163359
+ .long 2220854205
+ .long 3204219507
+ .long 954223976
+ .long 2792614201
+ .long 598504198
+ .long 4065359423
+ .long 146741115
+ .long 2113471718
+ .long 1908447953
+ .long 1290261106
+ .long 1197008397
+ .long 3835751551
+ .long 293482231
+ .long 4226943436
+ .long 3816895906
+ .long 2580522212
+ .long 2394016794
+ .long 3376535807
+ .long 586964463
+ .long 4158919577
+ .long 3338824517
+ .long 866077128
+ .long 493066293
+ .long 2458104319
+ .long 1173928927
+ .long 4022871858
+ .long 2382681739
+ .long 1732154256
+ .long 986132586
+ .long 621241343
+ .long 2347857855
+ .long 3750776420
+ .long 470396183
+ .long 3464308513
+ .long 1972265172
+ .long 1242482686
+ .long 400748414
+ .long 3206585544
+ .long 940792367
+ .long 2633649730
+ .long 3944530345
+ .long 2484965372
+ .long 801496828
+ .long 2118203793
+ .long 1881584735
+ .long 972332164
+ .long 3594093395
+ .long 674963448
+ .long 1602993657
+ .long 4236407587
+ .long 3763169470
+ .long 1944664328
+ .long 2893219494
+ .long 1349926897
+ .long 3205987314
+ .long 4177847879
+ .long 3231371645
+ .long 3889328657
+ .long 1491471692
+ .long 2699853794
+ .long 2117007332
+ .long 4060728462
+ .long 2167775995
+ .long 3483690018
+ .long 2982943385
+ .long 1104740292
+ .long 4234014665
+ .long 3826489629
+ .long 40584695
+ .long 2672412741
+ .long 1670919475
+ .long 2209480585
+ .long 4173062034
+ .long 3358011962
+ .long 81169391
+ .long 1049858187
+ .long 3341838951
+ .long 123993874
+ .long 4051156773
+ .long 2421056629
+ .long 162338783
+ .long 2099716375
+ .long 2388710606
+ .long 247987749
+ .long 3807346250
+ .long 547145963
+ .long 324677567
+ .long 4199432751
+ .long 482453916
+ .long 495975499
+ .long 3319725204
+ .long 1094291926
+ .long 649355134
+ .long 4103898207
+ .long 964907833
+ .long 991950999
+ .long 2344483112
+ .long 2188583852
+ .long 1298710268
+ .long 3912829119
+ .long 1929815667
+ .long 1983901999
+ .long 393998928
+ .long 82200408
+ .long 2597420537
+ .long 3530690942
+ .long 3859631335
+ .long 3967803999
+ .long 787997856
+ .long 164400817
+ .long 899873778
+ .long 2766414588
+ .long 3424295375
+ .long 3640640703
+ .long 1575995713
+ .long 328801635
+ .long 1799747556
+ .long 1237861880
+ .long 2553623455
+ .long 2986314111
+ .long 3151991427
+ .long 657603271
+ .long 3599495112
+ .long 2475723761
+ .long 812279614
+ .long 1677660927
+ .long 2009015559
+ .long 1315206542
+ .long 2904022928
+ .long 656480226
+ .long 1624559229
+ .long 3355321855
+ .long 4018031118
+ .long 2630413084
+ .long 1513078560
+ .long 1312960453
+ .long 3249118458
+ .long 2415676415
+ .long 3741094941
+ .long 965858873
+ .long 3026157121
+ .long 2625920907
+ .long 2203269620
+ .long 536385535
+ .long 3187222587
+ .long 1931717747
+ .long 1757346946
+ .long 956874519
+ .long 111571945
+ .long 1072771071
+ .long 2079477878
+ .long 3863435494
+ .long 3514693892
+ .long 1913749038
+ .long 223143890
+ .long 2145542143
+ .long 4158955756
+ .long 3431903692
+ .long 2734420489
+ .long 3827498077
+ .long 446287780
+ .long 4291084286
+ .long 4022944216
+ .long 2568840088
+ .long 1173873683
+ .long 3360028859
+ .long 892575561
+ .long 4287201277
+ .long 3750921137
+ .long 842712880
+ .long 2347747367
+ .long 2425090423
+ .long 1785151123
+ .long 4279435259
+ .long 3206874979
+ .long 1685425760
+ .long 400527438
+ .long 555213551
+ .long 3570302247
+ .long 4263903223
+ .long 2118782663
+ .long 3370851521
+ .long 801054876
+ .long 1110427102
+ .long 2845637198
+ .long 4232839151
+ .long 4237565327
+ .long 2446735747
+ .long 1602109753
+ .long 2220854205
+ .long 1396307100
+ .long 4170711006
+ .long 4180163359
+ .long 598504198
+ .long 3204219507
+ .long 146741115
+ .long 2792614201
+ .long 4046454716
+ .long 4065359423
+ .long 1197008397
+ .long 2113471718
+ .long 293482231
+ .long 1290261106
+ .long 3797942136
+ .long 3835751551
+ .long 2394016794
+ .long 4226943436
+ .long 586964463
+ .long 2580522212
+ .long 3300916976
+ .long 3376535807
+ .long 493066293
+ .long 4158919577
+ .long 1173928927
+ .long 866077128
+ .long 2306866656
+ .long 2458104319
+ .long 986132586
+ .long 4022871858
+ .long 2347857855
+ .long 1732154256
+ .long 318766016
+ .long 621241343
+ .long 1972265172
+ .long 3750776420
+ .long 400748414
+ .long 3464308513
+ .long 637532033
+ .long 1242482686
+ .long 3944530345
+ .long 3206585544
+ .long 801496828
+ .long 2633649730
+ .long 1275064066
+ .long 2484965372
+ .long 3594093395
+ .long 2118203793
+ .long 1602993657
+ .long 972332164
+ .long 2550128133
+ .long 674963448
+ .long 2893219494
+ .long 4236407587
+ .long 3205987314
+ .long 1944664328
+ .long 805288971
+ .long 1349926897
+ .long 1491471692
+ .long 4177847879
+ .long 2117007332
+ .long 3889328657
+ .long 1610577942
+ .long 2699853794
+ .long 2982943385
+ .long 4060728462
+ .long 4234014665
+ .long 3483690018
+ .long 3221155884
+ .long 1104740292
+ .long 1670919475
+ .long 3826489629
+ .long 4173062034
+ .long 2672412741
+ .long 2147344473
+ .long 2209480585
+ .long 3341838951
+ .long 3358011962
+ .long 4051156773
+ .long 1049858187
+ .long 4294688947
+ .long 123993874
+ .long 2388710606
+ .long 2421056629
+ .long 3807346250
+ .long 2099716375
+ .long 4294410598
+ .long 247987749
+ .long 482453916
+ .long 547145963
+ .long 3319725204
+ .long 4199432751
+ .long 4293853900
+ .long 495975499
+ .long 964907833
+ .long 1094291926
+ .long 2344483112
+ .long 4103898207
+ .long 4292740504
+ .long 991950999
+ .long 1929815667
+ .long 2188583852
+ .long 393998928
+ .long 3912829119
+ .long 4290513712
+ .long 1983901999
+ .long 3859631335
+ .long 82200408
+ .long 787997856
+ .long 3530690942
+ .long 4286060128
+ .long 3967803999
+ .long 3424295375
+ .long 164400817
+ .long 1575995713
+ .long 2766414588
+ .long 4277152960
+ .long 3640640703
+ .long 2553623455
+ .long 328801635
+ .long 3151991427
+ .long 1237861880
+ .long 4259338624
+ .long 2986314111
+ .long 812279614
+ .long 657603271
+ .long 2009015559
+ .long 2475723761
+ .long 4223709953
+ .long 1677660927
+ .long 1624559229
+ .long 1315206542
+ .long 4018031118
+ .long 656480226
+ .long 4152452611
+ .long 3355321855
+ .long 3249118458
+ .long 2630413084
+ .long 3741094941
+ .long 1312960453
+ .long 4009937927
+ .long 2415676415
+ .long 2203269620
+ .long 965858873
+ .long 3187222587
+ .long 2625920907
+ .long 3724908559
+ .long 536385535
+ .long 111571945
+ .long 1931717747
+ .long 2079477878
+ .long 956874519
+ .long 3154849823
+ .long 1072771071
+ .long 223143890
+ .long 3863435494
+ .long 4158955756
+ .long 1913749038
+ .long 2014732351
+ .long 2145542143
+ .long 446287780
+ .long 3431903692
+ .long 4022944216
+ .long 3827498077
+ .long 4029464703
+ .long 4291084286
+ .long 892575561
+ .long 2568840088
+ .long 3750921137
+ .long 3360028859
+ .long 3763962110
+ .long 4287201277
+ .long 1785151123
+ .long 842712880
+ .long 3206874979
+ .long 2425090423
+ .long 3232956925
+ .long 4279435259
+ .long 3570302247
+ .long 1685425760
+ .long 2118782663
+ .long 555213551
+ .long 2170946555
+ .long 4263903223
+ .long 2845637198
+ .long 3370851521
+ .long 4237565327
+ .long 1110427102
+ .long 46925815
+ .long 4232839151
+ .long 1396307100
+ .long 2446735747
+ .long 4180163359
+ .long 2220854205
+ .long 93851631
+ .long 4170711006
+ .long 2792614201
+ .long 598504198
+ .long 4065359423
+ .long 146741115
+ .long 187703262
+ .long 4046454716
+ .long 1290261106
+ .long 1197008397
+ .long 3835751551
+ .long 293482231
+ .long 375406524
+ .long 3797942136
+ .long 2580522212
+ .long 2394016794
+ .long 3376535807
+ .long 586964463
+ .long 750813049
+ .long 3300916976
+ .long 866077128
+ .long 493066293
+ .long 2458104319
+ .long 1173928927
+ .long 1501626098
+ .long 2306866656
+ .long 1732154256
+ .long 986132586
+ .long 621241343
+ .long 2347857855
+ .long 3003252197
+ .long 318766016
+ .long 3464308513
+ .long 1972265172
+ .long 1242482686
+ .long 400748414
+ .long 1711537099
+ .long 637532033
+ .long 2633649730
+ .long 3944530345
+ .long 2484965372
+ .long 801496828
+ .long 3423074199
+ .long 1275064066
+ .long 972332164
+ .long 3594093395
+ .long 674963448
+ .long 1602993657
+ .long 2551181103
+ .long 2550128133
+ .long 1944664328
+ .long 2893219494
+ .long 1349926897
+ .long 3205987314
+ .long 807394910
+ .long 805288971
+ .long 3889328657
+ .long 1491471692
+ .long 2699853794
+ .long 2117007332
+ .long 1614789820
+ .long 1610577942
+ .long 3483690018
+ .long 2982943385
+ .long 1104740292
+ .long 4234014665
+ .long 3229579640
+ .long 3221155884
+ .long 2672412741
+ .long 1670919475
+ .long 2209480585
+ .long 4173062034
+ .long 2164191985
+ .long 2147344473
+ .long 1049858187
+ .long 3341838951
+ .long 123993874
+ .long 4051156773
+ .long 33416674
+ .long 4294688947
+ .long 2099716375
+ .long 2388710606
+ .long 247987749
+ .long 3807346250
+ .long 66833348
+ .long 4294410598
+ .long 4199432751
+ .long 482453916
+ .long 495975499
+ .long 3319725204
+ .long 133666696
+ .long 4293853900
+ .long 4103898207
+ .long 964907833
+ .long 991950999
+ .long 2344483112
+ .long 267333393
+ .long 4292740504
+ .long 3912829119
+ .long 1929815667
+ .long 1983901999
+ .long 393998928
+ .long 534666787
+ .long 4290513712
+ .long 3530690942
+ .long 3859631335
+ .long 3967803999
+ .long 787997856
+ .long 1069333574
+ .long 4286060128
+ .long 2766414588
+ .long 3424295375
+ .long 3640640703
+ .long 1575995713
+ .long 2138667148
+ .long 4277152960
+ .long 1237861880
+ .long 2553623455
+ .long 2986314111
+ .long 3151991427
+ .long 4277334296
+ .long 4259338624
+ .long 2475723761
+ .long 812279614
+ .long 1677660927
+ .long 2009015559
+ .long 4259701297
+ .long 4223709953
+ .long 656480226
+ .long 1624559229
+ .long 3355321855
+ .long 4018031118
+ .long 4224435298
+ .long 4152452611
+ .long 1312960453
+ .long 3249118458
+ .long 2415676415
+ .long 3741094941
+ .long 4153903301
+ .long 4009937927
+ .long 2625920907
+ .long 2203269620
+ .long 536385535
+ .long 3187222587
+ .long 4012839307
+ .long 3724908559
+ .long 956874519
+ .long 111571945
+ .long 1072771071
+ .long 2079477878
+ .long 3730711318
+ .long 3154849823
+ .long 1913749038
+ .long 223143890
+ .long 2145542143
+ .long 4158955756
+ .long 3166455341
+ .long 2014732351
+ .long 3827498077
+ .long 446287780
+ .long 4291084286
+ .long 4022944216
+ .long 2037943386
+ .long 4029464703
+ .long 3360028859
+ .long 892575561
+ .long 4287201277
+ .long 3750921137
+ .long 4075886773
+ .long 3763962110
+ .long 2425090423
+ .long 1785151123
+ .long 4279435259
+ .long 3206874979
+ .long 3856806251
+ .long 3232956925
+ .long 555213551
+ .long 3570302247
+ .long 4263903223
+ .long 2118782663
+ .long 3418645206
+ .long 2170946555
+ .long 1110427102
+ .long 2845637198
+ .long 4232839151
+ .long 4237565327
+ .long 2542323117
+ .long 46925815
+ .long 2220854205
+ .long 1396307100
+ .long 4170711006
+ .long 4180163359
+ .long 789678938
+ .long 93851631
+ .long 146741115
+ .long 2792614201
+ .long 4046454716
+ .long 4065359423
+ .long 1579357876
+ .long 187703262
+ .long 293482231
+ .long 1290261106
+ .long 3797942136
+ .long 3835751551
+ .long 3158715752
+ .long 375406524
+ .long 586964463
+ .long 2580522212
+ .long 3300916976
+ .long 3376535807
+ .long 2022464208
+ .long 750813049
+ .long 1173928927
+ .long 866077128
+ .long 2306866656
+ .long 2458104319
+ .long 4044928416
+ .long 1501626098
+ .long 2347857855
+ .long 1732154256
+ .long 318766016
+ .long 621241343
+ .long 3794889537
+ .long 3003252197
+ .long 400748414
+ .long 3464308513
+ .long 637532033
+ .long 1242482686
+ .long 3294811778
+ .long 1711537099
+ .long 801496828
+ .long 2633649730
+ .long 1275064066
+ .long 2484965372
+ .long 2294656261
+ .long 3423074199
+ .long 1602993657
+ .long 972332164
+ .long 2550128133
+ .long 674963448
+ .long 294345226
+ .long 2551181103
+ .long 3205987314
+ .long 1944664328
+ .long 805288971
+ .long 1349926897
+ .long 588690452
+ .long 807394910
+ .long 2117007332
+ .long 3889328657
+ .long 1610577942
+ .long 2699853794
+ .long 1177380905
+ .long 1614789820
+ .long 4234014665
+ .long 3483690018
+ .long 3221155884
+ .long 1104740292
+ .long 2354761811
+ .long 3229579640
+ .long 4173062034
+ .long 2672412741
+ .long 2147344473
+ .long 2209480585
+ .long 414556326
+ .long 2164191985
+ .long 4051156773
+ .long 1049858187
+ .long 4294688947
+ .long 123993874
+ .long 829112653
+ .long 33416674
+ .long 3807346250
+ .long 2099716375
+ .long 4294410598
+ .long 247987749
+ .long 1658225307
+ .long 66833348
+ .long 3319725204
+ .long 4199432751
+ .long 4293853900
+ .long 495975499
+ .long 3316450614
+ .long 133666696
+ .long 2344483112
+ .long 4103898207
+ .long 4292740504
+ .long 991950999
+ .long 2337933933
+ .long 267333393
+ .long 393998928
+ .long 3912829119
+ .long 4290513712
+ .long 1983901999
+ .long 380900570
+ .long 534666787
+ .long 787997856
+ .long 3530690942
+ .long 4286060128
+ .long 3967803999
+ .long 761801140
+ .long 1069333574
+ .long 1575995713
+ .long 2766414588
+ .long 4277152960
+ .long 3640640703
+ .long 1523602280
+ .long 2138667148
+ .long 3151991427
+ .long 1237861880
+ .long 4259338624
+ .long 2986314111
+ .long 3047204561
+ .long 4277334296
+ .long 2009015559
+ .long 2475723761
+ .long 4223709953
+ .long 1677660927
+ .long 1799441827
+ .long 4259701297
+ .long 4018031118
+ .long 656480226
+ .long 4152452611
+ .long 3355321855
+ .long 3598883655
+ .long 4224435298
+ .long 3741094941
+ .long 1312960453
+ .long 4009937927
+ .long 2415676415
+ .long 2902800015
+ .long 4153903301
+ .long 3187222587
+ .long 2625920907
+ .long 3724908559
+ .long 536385535
+ .long 1510632735
+ .long 4012839307
+ .long 2079477878
+ .long 956874519
+ .long 3154849823
+ .long 1072771071
+ .long 3021265470
+ .long 3730711318
+ .long 4158955756
+ .long 1913749038
+ .long 2014732351
+ .long 2145542143
+ .long 1747563645
+ .long 3166455341
+ .long 4022944216
+ .long 3827498077
+ .long 4029464703
+ .long 4291084286
+ .long 3495127291
+ .long 2037943386
+ .long 3750921137
+ .long 3360028859
+ .long 3763962110
+ .long 4287201277
+ .long 2695287286
+ .long 4075886773
+ .long 3206874979
+ .long 2425090423
+ .long 3232956925
+ .long 4279435259
+ .long 1095607277
+ .long 3856806251
+ .long 2118782663
+ .long 555213551
+ .long 2170946555
+ .long 4263903223
+ .long 2191214555
+ .long 3418645206
+ .long 4237565327
+ .long 1110427102
+ .long 46925815
+ .long 4232839151
+ .long 87461814
+ .long 2542323117
+ .long 4180163359
+ .long 2220854205
+ .long 93851631
+ .long 4170711006
+ .long 174923629
+ .long 789678938
+ .long 4065359423
+ .long 146741115
+ .long 187703262
+ .long 4046454716
+ .long 349847258
+ .long 1579357876
+ .long 3835751551
+ .long 293482231
+ .long 375406524
+ .long 3797942136
+ .long 699694516
+ .long 3158715752
+ .long 3376535807
+ .long 586964463
+ .long 750813049
+ .long 3300916976
+ .long 1399389033
+ .long 2022464208
+ .long 2458104319
+ .long 1173928927
+ .long 1501626098
+ .long 2306866656
+ .long 2798778067
+ .long 4044928416
+ .long 621241343
+ .long 2347857855
+ .long 3003252197
+ .long 318766016
+ .long 1302588838
+ .long 3794889537
+ .long 1242482686
+ .long 400748414
+ .long 1711537099
+ .long 637532033
+ .long 2605177677
+ .long 3294811778
+ .long 2484965372
+ .long 801496828
+ .long 3423074199
+ .long 1275064066
+ .long 915388059
+ .long 2294656261
+ .long 674963448
+ .long 1602993657
+ .long 2551181103
+ .long 2550128133
+ .long 1830776118
+ .long 294345226
+ .long 1349926897
+ .long 3205987314
+ .long 807394910
+ .long 805288971
+ .long 3661552236
+ .long 588690452
+ .long 2699853794
+ .long 2117007332
+ .long 1614789820
+ .long 1610577942
+ .long 3028137177
+ .long 1177380905
+ .long 1104740292
+ .long 4234014665
+ .long 3229579640
+ .long 3221155884
+ .long 1761307059
+ .long 2354761811
+ .long 2209480585
+ .long 4173062034
+ .long 2164191985
+ .long 2147344473
+ .long 3522614119
+ .long 414556326
+ .long 123993874
+ .long 4051156773
+ .long 33416674
+ .long 4294688947
+ .long 2750260943
+ .long 829112653
+ .long 247987749
+ .long 3807346250
+ .long 66833348
+ .long 4294410598
+ .long 1205554591
+ .long 1658225307
+ .long 495975499
+ .long 3319725204
+ .long 133666696
+ .long 4293853900
+ .long 2411109183
+ .long 3316450614
+ .long 991950999
+ .long 2344483112
+ .long 267333393
+ .long 4292740504
+ .long 527251070
+ .long 2337933933
+ .long 1983901999
+ .long 393998928
+ .long 534666787
+ .long 4290513712
+ .long 1054502141
+ .long 380900570
+ .long 3967803999
+ .long 787997856
+ .long 1069333574
+ .long 4286060128
+ .long 2109004283
+ .long 761801140
+ .long 3640640703
+ .long 1575995713
+ .long 2138667148
+ .long 4277152960
+ .long 4218008566
+ .long 1523602280
+ .long 2986314111
+ .long 3151991427
+ .long 4277334296
+ .long 4259338624
+ .long 4141049836
+ .long 3047204561
+ .long 1677660927
+ .long 2009015559
+ .long 4259701297
+ .long 4223709953
+ .long 3987132377
+ .long 1799441827
+ .long 3355321855
+ .long 4018031118
+ .long 4224435298
+ .long 4152452611
+ .long 3679297459
+ .long 3598883655
+ .long 2415676415
+ .long 3741094941
+ .long 4153903301
+ .long 4009937927
+ .long 3063627623
+ .long 2902800015
+ .long 536385535
+ .long 3187222587
+ .long 4012839307
+ .long 3724908559
+ .long 1832287951
+ .long 1510632735
+ .long 1072771071
+ .long 2079477878
+ .long 3730711318
+ .long 3154849823
+ .long 3664575902
+ .long 3021265470
+ .long 2145542143
+ .long 4158955756
+ .long 3166455341
+ .long 2014732351
+ .long 3034184508
+ .long 1747563645
+ .long 4291084286
+ .long 4022944216
+ .long 2037943386
+ .long 4029464703
+ .long 1773401721
+ .long 3495127291
+ .long 4287201277
+ .long 3750921137
+ .long 4075886773
+ .long 3763962110
+ .long 3546803442
+ .long 2695287286
+ .long 4279435259
+ .long 3206874979
+ .long 3856806251
+ .long 3232956925
+ .long 2798639588
+ .long 1095607277
+ .long 4263903223
+ .long 2118782663
+ .long 3418645206
+ .long 2170946555
+ .long 1302311881
+ .long 2191214555
+ .long 4232839151
+ .long 4237565327
+ .long 2542323117
+ .long 46925815
+ .long 2604623763
+ .long 87461814
+ .long 4170711006
+ .long 4180163359
+ .long 789678938
+ .long 93851631
+ .long 914280231
+ .long 174923629
+ .long 4046454716
+ .long 4065359423
+ .long 1579357876
+ .long 187703262
+ .long 1828560463
+ .long 349847258
+ .long 3797942136
+ .long 3835751551
+ .long 3158715752
+ .long 375406524
+ .long 3657120927
+ .long 699694516
+ .long 3300916976
+ .long 3376535807
+ .long 2022464208
+ .long 750813049
+ .long 3019274558
+ .long 1399389033
+ .long 2306866656
+ .long 2458104319
+ .long 4044928416
+ .long 1501626098
+ .long 1743581820
+ .long 2798778067
+ .long 318766016
+ .long 621241343
+ .long 3794889537
+ .long 3003252197
+ .long 3487163641
+ .long 1302588838
+ .long 637532033
+ .long 1242482686
+ .long 3294811778
+ .long 1711537099
+ .long 2679359986
+ .long 2605177677
+ .long 1275064066
+ .long 2484965372
+ .long 2294656261
+ .long 3423074199
+ .long 1063752677
+ .long 915388059
+ .long 2550128133
+ .long 674963448
+ .long 294345226
+ .long 2551181103
+ .long 2127505355
+ .long 1830776118
+ .long 805288971
+ .long 1349926897
+ .long 588690452
+ .long 807394910
+ .long 4255010710
+ .long 3661552236
+ .long 1610577942
+ .long 2699853794
+ .long 1177380905
+ .long 1614789820
+ .long 4215054124
+ .long 3028137177
+ .long 3221155884
+ .long 1104740292
+ .long 2354761811
+ .long 3229579640
+ .long 4135140952
+ .long 1761307059
+ .long 2147344473
+ .long 2209480585
+ .long 414556326
+ .long 2164191985
+ .long 3975314608
+ .long 3522614119
+ .long 4294688947
+ .long 123993874
+ .long 829112653
+ .long 33416674
+ .long 3655661921
+ .long 2750260943
+ .long 4294410598
+ .long 247987749
+ .long 1658225307
+ .long 66833348
+ .long 3016356546
+ .long 1205554591
+ .long 4293853900
+ .long 495975499
+ .long 3316450614
+ .long 133666696
+ .long 1737745796
+ .long 2411109183
+ .long 4292740504
+ .long 991950999
+ .long 2337933933
+ .long 267333393
+ .long 3475491593
+ .long 527251070
+ .long 4290513712
+ .long 1983901999
+ .long 380900570
+ .long 534666787
+ .long 2656015891
+ .long 1054502141
+ .long 4286060128
+ .long 3967803999
+ .long 761801140
+ .long 1069333574
+ .long 1017064486
+ .long 2109004283
+ .long 4277152960
+ .long 3640640703
+ .long 1523602280
+ .long 2138667148
+ .long 2034128973
+ .long 4218008566
+ .long 4259338624
+ .long 2986314111
+ .long 3047204561
+ .long 4277334296
+ .long 4068257947
+ .long 4141049836
+ .long 4223709953
+ .long 1677660927
+ .long 1799441827
+ .long 4259701297
+ .long 3841548598
+ .long 3987132377
+ .long 4152452611
+ .long 3355321855
+ .long 3598883655
+ .long 4224435298
+ .long 3388129901
+ .long 3679297459
+ .long 4009937927
+ .long 2415676415
+ .long 2902800015
+ .long 4153903301
+ .long 2481292507
+ .long 3063627623
+ .long 3724908559
+ .long 536385535
+ .long 1510632735
+ .long 4012839307
+ .long 667617719
+ .long 1832287951
+ .long 3154849823
+ .long 1072771071
+ .long 3021265470
+ .long 3730711318
+ .long 1335235438
+ .long 3664575902
+ .long 2014732351
+ .long 2145542143
+ .long 1747563645
+ .long 3166455341
+ .long 2670470877
+ .long 3034184508
+ .long 4029464703
+ .long 4291084286
+ .long 3495127291
+ .long 2037943386
+ .long 1045974458
+ .long 1773401721
+ .long 3763962110
+ .long 4287201277
+ .long 2695287286
+ .long 4075886773
+ .long 2091948916
+ .long 3546803442
+ .long 3232956925
+ .long 4279435259
+ .long 1095607277
+ .long 3856806251
+ .long 4183897833
+ .long 2798639588
+ .long 2170946555
+ .long 4263903223
+ .long 2191214555
+ .long 3418645206
+ .long 4072828371
+ .long 1302311881
+ .long 46925815
+ .long 4232839151
+ .long 87461814
+ .long 2542323117
+ .long 3850689447
+ .long 2604623763
+ .long 93851631
+ .long 4170711006
+ .long 174923629
+ .long 789678938
+ .long 3406411599
+ .long 914280231
+ .long 187703262
+ .long 4046454716
+ .long 349847258
+ .long 1579357876
+ .long 2517855902
+ .long 1828560463
+ .long 375406524
+ .long 3797942136
+ .long 699694516
+ .long 3158715752
+ .long 740744509
+ .long 3657120927
+ .long 750813049
+ .long 3300916976
+ .long 1399389033
+ .long 2022464208
+ .long 1481489018
+ .long 3019274558
+ .long 1501626098
+ .long 2306866656
+ .long 2798778067
+ .long 4044928416
+ .long 2962978036
+ .long 1743581820
+ .long 3003252197
+ .long 318766016
+ .long 1302588838
+ .long 3794889537
+ .long 1630988776
+ .long 3487163641
+ .long 1711537099
+ .long 637532033
+ .long 2605177677
+ .long 3294811778
+ .long 3261977553
+ .long 2679359986
+ .long 3423074199
+ .long 1275064066
+ .long 915388059
+ .long 2294656261
+ .long 2228987811
+ .long 1063752677
+ .long 2551181103
+ .long 2550128133
+ .long 1830776118
+ .long 294345226
+ .long 163008326
+ .long 2127505355
+ .long 807394910
+ .long 805288971
+ .long 3661552236
+ .long 588690452
+ .long 326016652
+ .long 4255010710
+ .long 1614789820
+ .long 1610577942
+ .long 3028137177
+ .long 1177380905
+ .long 652033304
+ .long 4215054124
+ .long 3229579640
+ .long 3221155884
+ .long 1761307059
+ .long 2354761811
+ .long 1304066609
+ .long 4135140952
+ .long 2164191985
+ .long 2147344473
+ .long 3522614119
+ .long 414556326
+ .long 2608133219
+ .long 3975314608
+ .long 33416674
+ .long 4294688947
+ .long 2750260943
+ .long 829112653
+ .long 921299143
+ .long 3655661921
+ .long 66833348
+ .long 4294410598
+ .long 1205554591
+ .long 1658225307
+ .long 1842598287
+ .long 3016356546
+ .long 133666696
+ .long 4293853900
+ .long 2411109183
+ .long 3316450614
+ .long 3685196575
+ .long 1737745796
+ .long 267333393
+ .long 4292740504
+ .long 527251070
+ .long 2337933933
+ .long 3075425855
+ .long 3475491593
+ .long 534666787
+ .long 4290513712
+ .long 1054502141
+ .long 380900570
+ .long 1855884414
+ .long 2656015891
+ .long 1069333574
+ .long 4286060128
+ .long 2109004283
+ .long 761801140
+ .long 3711768829
+ .long 1017064486
+ .long 2138667148
+ .long 4277152960
+ .long 4218008566
+ .long 1523602280
+ .long 3128570363
+ .long 2034128973
+ .long 4277334296
+ .long 4259338624
+ .long 4141049836
+ .long 3047204561
+ .long 1962173430
+ .long 4068257947
+ .long 4259701297
+ .long 4223709953
+ .long 3987132377
+ .long 1799441827
+ .long 3924346860
+ .long 3841548598
+ .long 4224435298
+ .long 4152452611
+ .long 3679297459
+ .long 3598883655
+ .long 3553726425
+ .long 3388129901
+ .long 4153903301
+ .long 4009937927
+ .long 3063627623
+ .long 2902800015
+ .long 2812485555
+ .long 2481292507
+ .long 4012839307
+ .long 3724908559
+ .long 1832287951
+ .long 1510632735
+ .long 1330003814
+ .long 667617719
+ .long 3730711318
+ .long 3154849823
+ .long 3664575902
+ .long 3021265470
+ .long 2660007629
+ .long 1335235438
+ .long 3166455341
+ .long 2014732351
+ .long 3034184508
+ .long 1747563645
+ .long 1025047962
+ .long 2670470877
+ .long 2037943386
+ .long 4029464703
+ .long 1773401721
+ .long 3495127291
+ .long 2050095924
+ .long 1045974458
+ .long 4075886773
+ .long 3763962110
+ .long 3546803442
+ .long 2695287286
+ .long 4100191849
+ .long 2091948916
+ .long 3856806251
+ .long 3232956925
+ .long 2798639588
+ .long 1095607277
+ .long 3905416403
+ .long 4183897833
+ .long 3418645206
+ .long 2170946555
+ .long 1302311881
+ .long 2191214555
+ .long 3515865511
+ .long 4072828371
+ .long 2542323117
+ .long 46925815
+ .long 2604623763
+ .long 87461814
+ .long 2736763727
+ .long 3850689447
+ .long 789678938
+ .long 93851631
+ .long 914280231
+ .long 174923629
+ .long 1178560158
+ .long 3406411599
+ .long 1579357876
+ .long 187703262
+ .long 1828560463
+ .long 349847258
+ .long 2357120316
+ .long 2517855902
+ .long 3158715752
+ .long 375406524
+ .long 3657120927
+ .long 699694516
+ .long 419273337
+ .long 740744509
+ .long 2022464208
+ .long 750813049
+ .long 3019274558
+ .long 1399389033
+ .long 838546674
+ .long 1481489018
+ .long 4044928416
+ .long 1501626098
+ .long 1743581820
+ .long 2798778067
+ .long 1677093349
+ .long 2962978036
+ .long 3794889537
+ .long 3003252197
+ .long 3487163641
+ .long 1302588838
+ .long 3354186699
+ .long 1630988776
+ .long 3294811778
+ .long 1711537099
+ .long 2679359986
+ .long 2605177677
+ .long 2413406103
+ .long 3261977553
+ .long 2294656261
+ .long 3423074199
+ .long 1063752677
+ .long 915388059
+ .long 531844911
+ .long 2228987811
+ .long 294345226
+ .long 2551181103
+ .long 2127505355
+ .long 1830776118
+ .long 1063689823
+ .long 163008326
+ .long 588690452
+ .long 807394910
+ .long 4255010710
+ .long 3661552236
+ .long 2127379647
+ .long 326016652
+ .long 1177380905
+ .long 1614789820
+ .long 4215054124
+ .long 3028137177
+ .long 4254759295
+ .long 652033304
+ .long 2354761811
+ .long 3229579640
+ .long 4135140952
+ .long 1761307059
+ .long 4214551295
+ .long 1304066609
+ .long 414556326
+ .long 2164191985
+ .long 3975314608
+ .long 3522614119
+ .long 4134135294
+ .long 2608133219
+ .long 829112653
+ .long 33416674
+ .long 3655661921
+ .long 2750260943
+ .long 3973303293
+ .long 921299143
+ .long 1658225307
+ .long 66833348
+ .long 3016356546
+ .long 1205554591
+ .long 3651639290
+ .long 1842598287
+ .long 3316450614
+ .long 133666696
+ .long 1737745796
+ .long 2411109183
+ .long 3008311285
+ .long 3685196575
+ .long 2337933933
+ .long 267333393
+ .long 3475491593
+ .long 527251070
+ .long 1721655274
+ .long 3075425855
+ .long 380900570
+ .long 534666787
+ .long 2656015891
+ .long 1054502141
+ .long 3443310548
+ .long 1855884414
+ .long 761801140
+ .long 1069333574
+ .long 1017064486
+ .long 2109004283
+ .long 2591653800
+ .long 3711768829
+ .long 1523602280
+ .long 2138667148
+ .long 2034128973
+ .long 4218008566
+ .long 888340305
+ .long 3128570363
+ .long 3047204561
+ .long 4277334296
+ .long 4068257947
+ .long 4141049836
+ .long 1776680610
+ .long 1962173430
+ .long 1799441827
+ .long 4259701297
+ .long 3841548598
+ .long 3987132377
+ .long 3553361221
+ .long 3924346860
+ .long 3598883655
+ .long 4224435298
+ .long 3388129901
+ .long 3679297459
+ .long 2811755147
+ .long 3553726425
+ .long 2902800015
+ .long 4153903301
+ .long 2481292507
+ .long 3063627623
+ .long 1328542998
+ .long 2812485555
+ .long 1510632735
+ .long 4012839307
+ .long 667617719
+ .long 1832287951
+ .long 2657085997
+ .long 1330003814
+ .long 3021265470
+ .long 3730711318
+ .long 1335235438
+ .long 3664575902
+ .long 1019204698
+ .long 2660007629
+ .long 1747563645
+ .long 3166455341
+ .long 2670470877
+ .long 3034184508
+ .long 2038409397
+ .long 1025047962
+ .long 3495127291
+ .long 2037943386
+ .long 1045974458
+ .long 1773401721
+ .long 4076818795
+ .long 2050095924
+ .long 2695287286
+ .long 4075886773
+ .long 2091948916
+ .long 3546803442
+ .long 3858670295
+ .long 4100191849
+ .long 1095607277
+ .long 3856806251
+ .long 4183897833
+ .long 2798639588
+ .long 3422373294
+ .long 3905416403
+ .long 2191214555
+ .long 3418645206
+ .long 4072828371
+ .long 1302311881
+ .long 2549779293
+ .long 3515865511
+ .long 87461814
+ .long 2542323117
+ .long 3850689447
+ .long 2604623763
+ .long 804591290
+ .long 2736763727
+ .long 174923629
+ .long 789678938
+ .long 3406411599
+ .long 914280231
+ .long 1609182581
+ .long 1178560158
+ .long 349847258
+ .long 1579357876
+ .long 2517855902
+ .long 1828560463
+ .long 3218365162
+ .long 2357120316
+ .long 699694516
+ .long 3158715752
+ .long 740744509
+ .long 3657120927
+ .long 2141763028
+ .long 419273337
+ .long 1399389033
+ .long 2022464208
+ .long 1481489018
+ .long 3019274558
+ .long 4283526057
+ .long 838546674
+ .long 2798778067
+ .long 4044928416
+ .long 2962978036
+ .long 1743581820
+ .long 4272084818
+ .long 1677093349
+ .long 1302588838
+ .long 3794889537
+ .long 1630988776
+ .long 3487163641
+ .long 4249202340
+ .long 3354186699
+ .long 2605177677
+ .long 3294811778
+ .long 3261977553
+ .long 2679359986
+ .long 4203437385
+ .long 2413406103
+ .long 915388059
+ .long 2294656261
+ .long 2228987811
+ .long 1063752677
+ .long 4111907475
+ .long 531844911
+ .long 1830776118
+ .long 294345226
+ .long 163008326
+ .long 2127505355
+ .long 3928847655
+ .long 1063689823
+ .long 3661552236
+ .long 588690452
+ .long 326016652
+ .long 4255010710
+ .long 3562728015
+ .long 2127379647
+ .long 3028137177
+ .long 1177380905
+ .long 652033304
+ .long 4215054124
+ .long 2830488734
+ .long 4254759295
+ .long 1761307059
+ .long 2354761811
+ .long 1304066609
+ .long 4135140952
+ .long 1366010173
+ .long 4214551295
+ .long 3522614119
+ .long 414556326
+ .long 2608133219
+ .long 3975314608
+ .long 2732020347
+ .long 4134135294
+ .long 2750260943
+ .long 829112653
+ .long 921299143
+ .long 3655661921
+ .long 1169073399
+ .long 3973303293
+ .long 1205554591
+ .long 1658225307
+ .long 1842598287
+ .long 3016356546
+ .long 2338146798
+ .long 3651639290
+ .long 2411109183
+ .long 3316450614
+ .long 3685196575
+ .long 1737745796
+ .long 381326301
+ .long 3008311285
+ .long 527251070
+ .long 2337933933
+ .long 3075425855
+ .long 3475491593
+ .long 762652602
+ .long 1721655274
+ .long 1054502141
+ .long 380900570
+ .long 1855884414
+ .long 2656015891
+ .long 1525305205
+ .long 3443310548
+ .long 2109004283
+ .long 761801140
+ .long 3711768829
+ .long 1017064486
+ .long 3050610411
+ .long 2591653800
+ .long 4218008566
+ .long 1523602280
+ .long 3128570363
+ .long 2034128973
+ .long 1806253526
+ .long 888340305
+ .long 4141049836
+ .long 3047204561
+ .long 1962173430
+ .long 4068257947
+ .long 3612507052
+ .long 1776680610
+ .long 3987132377
+ .long 1799441827
+ .long 3924346860
+ .long 3841548598
+ .long 2930046808
+ .long 3553361221
+ .long 3679297459
+ .long 3598883655
+ .long 3553726425
+ .long 3388129901
+ .long 1565126321
+ .long 2811755147
+ .long 3063627623
+ .long 2902800015
+ .long 2812485555
+ .long 2481292507
+ .long 3130252643
+ .long 1328542998
+ .long 1832287951
+ .long 1510632735
+ .long 1330003814
+ .long 667617719
+ .long 1965537991
+ .long 2657085997
+ .long 3664575902
+ .long 3021265470
+ .long 2660007629
+ .long 1335235438
+ .long 3931075983
+ .long 1019204698
+ .long 3034184508
+ .long 1747563645
+ .long 1025047962
+ .long 2670470877
+ .long 3567184671
+ .long 2038409397
+ .long 1773401721
+ .long 3495127291
+ .long 2050095924
+ .long 1045974458
+ .long 2839402047
+ .long 4076818795
+ .long 3546803442
+ .long 2695287286
+ .long 4100191849
+ .long 2091948916
+ .long 1383836798
+ .long 3858670295
+ .long 2798639588
+ .long 1095607277
+ .long 3905416403
+ .long 4183897833
+ .long 2767673597
+ .long 3422373294
+ .long 1302311881
+ .long 2191214555
+ .long 3515865511
+ .long 4072828371
+ .long 1240379898
+ .long 2549779293
+ .long 2604623763
+ .long 87461814
+ .long 2736763727
+ .long 3850689447
+ .long 2480759797
+ .long 804591290
+ .long 914280231
+ .long 174923629
+ .long 1178560158
+ .long 3406411599
+ .long 666552299
+ .long 1609182581
+ .long 1828560463
+ .long 349847258
+ .long 2357120316
+ .long 2517855902
+ .long 1333104599
+ .long 3218365162
+ .long 3657120927
+ .long 699694516
+ .long 419273337
+ .long 740744509
+ .long 2666209199
+ .long 2141763028
+ .long 3019274558
+ .long 1399389033
+ .long 838546674
+ .long 1481489018
+ .long 1037451103
+ .long 4283526057
+ .long 1743581820
+ .long 2798778067
+ .long 1677093349
+ .long 2962978036
+ .long 2074902206
+ .long 4272084818
+ .long 3487163641
+ .long 1302588838
+ .long 3354186699
+ .long 1630988776
+ .long 4149804412
+ .long 4249202340
+ .long 2679359986
+ .long 2605177677
+ .long 2413406103
+ .long 3261977553
+ .long 4004641529
+ .long 4203437385
+ .long 1063752677
+ .long 915388059
+ .long 531844911
+ .long 2228987811
+ .long 3714315762
+ .long 4111907475
+ .long 2127505355
+ .long 1830776118
+ .long 1063689823
+ .long 163008326
+ .long 3133664229
+ .long 3928847655
+ .long 4255010710
+ .long 3661552236
+ .long 2127379647
+ .long 326016652
+ .long 1972361163
+ .long 3562728015
+ .long 4215054124
+ .long 3028137177
+ .long 4254759295
+ .long 652033304
+ .long 3944722327
+ .long 2830488734
+ .long 4135140952
+ .long 1761307059
+ .long 4214551295
+ .long 1304066609
+ .long 3594477359
+ .long 1366010173
+ .long 3975314608
+ .long 3522614119
+ .long 4134135294
+ .long 2608133219
+ .long 2893987423
+ .long 2732020347
+ .long 3655661921
+ .long 2750260943
+ .long 3973303293
+ .long 921299143
+ .long 1493007550
+ .long 1169073399
+ .long 3016356546
+ .long 1205554591
+ .long 3651639290
+ .long 1842598287
+ .long 2986015100
+ .long 2338146798
+ .long 1737745796
+ .long 2411109183
+ .long 3008311285
+ .long 3685196575
+ .long 1677062904
+ .long 381326301
+ .long 3475491593
+ .long 527251070
+ .long 1721655274
+ .long 3075425855
+ .long 3354125809
+ .long 762652602
+ .long 2656015891
+ .long 1054502141
+ .long 3443310548
+ .long 1855884414
+ .long 2413284322
+ .long 1525305205
+ .long 1017064486
+ .long 2109004283
+ .long 2591653800
+ .long 3711768829
+ .long 531601349
+ .long 3050610411
+ .long 2034128973
+ .long 4218008566
+ .long 888340305
+ .long 3128570363
+ .long 1063202699
+ .long 1806253526
+ .long 4068257947
+ .long 4141049836
+ .long 1776680610
+ .long 1962173430
+ .long 2126405399
+ .long 3612507052
+ .long 3841548598
+ .long 3987132377
+ .long 3553361221
+ .long 3924346860
+ .long 4252810799
+ .long 2930046808
+ .long 3388129901
+ .long 3679297459
+ .long 2811755147
+ .long 3553726425
+ .long 4210654302
+ .long 1565126321
+ .long 2481292507
+ .long 3063627623
+ .long 1328542998
+ .long 2812485555
+ .long 4126341309
+ .long 3130252643
+ .long 667617719
+ .long 1832287951
+ .long 2657085997
+ .long 1330003814
+ .long 3957715323
+ .long 1965537991
+ .long 1335235438
+ .long 3664575902
+ .long 1019204698
+ .long 2660007629
+ .long 3620463350
+ .long 3931075983
+ .long 2670470877
+ .long 3034184508
+ .long 2038409397
+ .long 1025047962
+ .long 2945959404
+ .long 3567184671
+ .long 1045974458
+ .long 1773401721
+ .long 4076818795
+ .long 2050095924
+ .long 1596951513
+ .long 2839402047
+ .long 2091948916
+ .long 3546803442
+ .long 3858670295
+ .long 4100191849
+ .long 3193903027
+ .long 1383836798
+ .long 4183897833
+ .long 2798639588
+ .long 3422373294
+ .long 3905416403
+ .long 2092838759
+ .long 2767673597
+ .long 4072828371
+ .long 1302311881
+ .long 2549779293
+ .long 3515865511
+ .long 4185677519
+ .long 1240379898
+ .long 3850689447
+ .long 2604623763
+ .long 804591290
+ .long 2736763727
+ .long 4076387742
+ .long 2480759797
+ .long 3406411599
+ .long 914280231
+ .long 1609182581
+ .long 1178560158
+ .long 3857808189
+ .long 666552299
+ .long 2517855902
+ .long 1828560463
+ .long 3218365162
+ .long 2357120316
+ .long 3420649082
+ .long 1333104599
+ .long 740744509
+ .long 3657120927
+ .long 2141763028
+ .long 419273337
+ .long 2546330868
+ .long 2666209199
+ .long 1481489018
+ .long 3019274558
+ .long 4283526057
+ .long 838546674
+ .long 797694440
+ .long 1037451103
+ .long 2962978036
+ .long 1743581820
+ .long 4272084818
+ .long 1677093349
+ .long 1595388880
+ .long 2074902206
+ .long 1630988776
+ .long 3487163641
+ .long 4249202340
+ .long 3354186699
+ .long 3190777760
+ .long 4149804412
+ .long 3261977553
+ .long 2679359986
+ .long 4203437385
+ .long 2413406103
+ .long 2086588225
+ .long 4004641529
+ .long 2228987811
+ .long 1063752677
+ .long 4111907475
+ .long 531844911
+ .long 4173176451
+ .long 3714315762
+ .long 163008326
+ .long 2127505355
+ .long 3928847655
+ .long 1063689823
+ .long 4051385607
+ .long 3133664229
+ .long 326016652
+ .long 4255010710
+ .long 3562728015
+ .long 2127379647
+ .long 3807803918
+ .long 1972361163
+ .long 652033304
+ .long 4215054124
+ .long 2830488734
+ .long 4254759295
+ .long 3320640540
+ .long 3944722327
+ .long 1304066609
+ .long 4135140952
+ .long 1366010173
+ .long 4214551295
+ .long 2346313785
+ .long 3594477359
+ .long 2608133219
+ .long 3975314608
+ .long 2732020347
+ .long 4134135294
+ .long 397660275
+ .long 2893987423
+ .long 921299143
+ .long 3655661921
+ .long 1169073399
+ .long 3973303293
+ .long 795320551
+ .long 1493007550
+ .long 1842598287
+ .long 3016356546
+ .long 2338146798
+ .long 3651639290
+ .long 1590641102
+ .long 2986015100
+ .long 3685196575
+ .long 1737745796
+ .long 381326301
+ .long 3008311285
+ .long 3181282204
+ .long 1677062904
+ .long 3075425855
+ .long 3475491593
+ .long 762652602
+ .long 1721655274
+ .long 2067597113
+ .long 3354125809
+ .long 1855884414
+ .long 2656015891
+ .long 1525305205
+ .long 3443310548
+ .long 4135194227
+ .long 2413284322
+ .long 3711768829
+ .long 1017064486
+ .long 3050610411
+ .long 2591653800
+ .long 3975421159
+ .long 531601349
+ .long 3128570363
+ .long 2034128973
+ .long 1806253526
+ .long 888340305
+ .long 3655875023
+ .long 1063202699
+ .long 1962173430
+ .long 4068257947
+ .long 3612507052
+ .long 1776680610
+ .long 3016782751
+ .long 2126405399
+ .long 3924346860
+ .long 3841548598
+ .long 2930046808
+ .long 3553361221
+ .long 1738598206
+ .long 4252810799
+ .long 3553726425
+ .long 3388129901
+ .long 1565126321
+ .long 2811755147
+ .long 3477196413
+ .long 4210654302
+ .long 2812485555
+ .long 2481292507
+ .long 3130252643
+ .long 1328542998
+ .long 2659425531
+ .long 4126341309
+ .long 1330003814
+ .long 667617719
+ .long 1965537991
+ .long 2657085997
+ .long 1023883767
+ .long 3957715323
+ .long 2660007629
+ .long 1335235438
+ .long 3931075983
+ .long 1019204698
+ .long 2047767535
+ .long 3620463350
+ .long 1025047962
+ .long 2670470877
+ .long 3567184671
+ .long 2038409397
+ .long 4095535070
+ .long 2945959404
+ .long 2050095924
+ .long 1045974458
+ .long 2839402047
+ .long 4076818795
+ .long 3896102844
+ .long 1596951513
+ .long 4100191849
+ .long 2091948916
+ .long 1383836798
+ .long 3858670295
+ .long 3497238392
+ .long 3193903027
+ .long 3905416403
+ .long 4183897833
+ .long 2767673597
+ .long 3422373294
+ .long 2699509489
+ .long 2092838759
+ .long 3515865511
+ .long 4072828371
+ .long 1240379898
+ .long 2549779293
+ .long 1104051682
+ .long 4185677519
+ .long 2736763727
+ .long 3850689447
+ .long 2480759797
+ .long 804591290
+ .long 2208103365
+ .long 4076387742
+ .long 1178560158
+ .long 3406411599
+ .long 666552299
+ .long 1609182581
+ .long 121239434
+ .long 3857808189
+ .long 2357120316
+ .long 2517855902
+ .long 1333104599
+ .long 3218365162
+ .long 242478868
+ .long 3420649082
+ .long 419273337
+ .long 740744509
+ .long 2666209199
+ .long 2141763028
+ .long 484957737
+ .long 2546330868
+ .long 838546674
+ .long 1481489018
+ .long 1037451103
+ .long 4283526057
+ .long 969915474
+ .long 797694440
+ .long 1677093349
+ .long 2962978036
+ .long 2074902206
+ .long 4272084818
+ .long 1939830949
+ .long 1595388880
+ .long 3354186699
+ .long 1630988776
+ .long 4149804412
+ .long 4249202340
+ .long 3879661898
+ .long 3190777760
+ .long 2413406103
+ .long 3261977553
+ .long 4004641529
+ .long 4203437385
+ .long 3464356500
+ .long 2086588225
+ .long 531844911
+ .long 2228987811
+ .long 3714315762
+ .long 4111907475
+ .long 2633745705
+ .long 4173176451
+ .long 1063689823
+ .long 163008326
+ .long 3133664229
+ .long 3928847655
+ .long 972524114
+ .long 4051385607
+ .long 2127379647
+ .long 326016652
+ .long 1972361163
+ .long 3562728015
+ .long 1945048229
+ .long 3807803918
+ .long 4254759295
+ .long 652033304
+ .long 3944722327
+ .long 2830488734
+ .long 3890096458
+ .long 3320640540
+ .long 4214551295
+ .long 1304066609
+ .long 3594477359
+ .long 1366010173
+ .long 3485225620
+ .long 2346313785
+ .long 4134135294
+ .long 2608133219
+ .long 2893987423
+ .long 2732020347
+ .long 2675483945
+ .long 397660275
+ .long 3973303293
+ .long 921299143
+ .long 1493007550
+ .long 1169073399
+ .long 1056000594
+ .long 795320551
+ .long 3651639290
+ .long 1842598287
+ .long 2986015100
+ .long 2338146798
+ .long 2112001188
+ .long 1590641102
+ .long 3008311285
+ .long 3685196575
+ .long 1677062904
+ .long 381326301
+ .long 4224002377
+ .long 3181282204
+ .long 1721655274
+ .long 3075425855
+ .long 3354125809
+ .long 762652602
+ .long 4153037458
+ .long 2067597113
+ .long 3443310548
+ .long 1855884414
+ .long 2413284322
+ .long 1525305205
+ .long 4011107621
+ .long 4135194227
+ .long 2591653800
+ .long 3711768829
+ .long 531601349
+ .long 3050610411
+ .long 3727247947
+ .long 3975421159
+ .long 888340305
+ .long 3128570363
+ .long 1063202699
+ .long 1806253526
+ .long 3159528599
+ .long 3655875023
+ .long 1776680610
+ .long 1962173430
+ .long 2126405399
+ .long 3612507052
+ .long 2024089902
+ .long 3016782751
+ .long 3553361221
+ .long 3924346860
+ .long 4252810799
+ .long 2930046808
+ .long 4048179805
+ .long 1738598206
+ .long 2811755147
+ .long 3553726425
+ .long 4210654302
+ .long 1565126321
+ .long 3801392314
+ .long 3477196413
+ .long 1328542998
+ .long 2812485555
+ .long 4126341309
+ .long 3130252643
+ .long 3307817333
+ .long 2659425531
+ .long 2657085997
+ .long 1330003814
+ .long 3957715323
+ .long 1965537991
+ .long 2320667370
+ .long 1023883767
+ .long 1019204698
+ .long 2660007629
+ .long 3620463350
+ .long 3931075983
+ .long 346367444
+ .long 2047767535
+ .long 2038409397
+ .long 1025047962
+ .long 2945959404
+ .long 3567184671
+ .long 692734889
+ .long 4095535070
+ .long 4076818795
+ .long 2050095924
+ .long 1596951513
+ .long 2839402047
+ .long 1385469779
+ .long 3896102844
+ .long 3858670295
+ .long 4100191849
+ .long 3193903027
+ .long 1383836798
+ .long 2770939558
+ .long 3497238392
+ .long 3422373294
+ .long 3905416403
+ .long 2092838759
+ .long 2767673597
+ .long 1246911821
+ .long 2699509489
+ .long 2549779293
+ .long 3515865511
+ .long 4185677519
+ .long 1240379898
+ .long 2493823642
+ .long 1104051682
+ .long 804591290
+ .long 2736763727
+ .long 4076387742
+ .long 2480759797
+ .long 692679989
+ .long 2208103365
+ .long 1609182581
+ .long 1178560158
+ .long 3857808189
+ .long 666552299
+ .long 1385359979
+ .long 121239434
+ .long 3218365162
+ .long 2357120316
+ .long 3420649082
+ .long 1333104599
+ .long 2770719959
+ .long 242478868
+ .long 2141763028
+ .long 419273337
+ .long 2546330868
+ .long 2666209199
+ .long 1246472623
+ .long 484957737
+ .long 4283526057
+ .long 838546674
+ .long 797694440
+ .long 1037451103
+ .long 2492945247
+ .long 969915474
+ .long 4272084818
+ .long 1677093349
+ .long 1595388880
+ .long 2074902206
+ .long 690923199
+ .long 1939830949
+ .long 4249202340
+ .long 3354186699
+ .long 3190777760
+ .long 4149804412
+ .long 1381846399
+ .long 3879661898
+ .long 4203437385
+ .long 2413406103
+ .long 2086588225
+ .long 4004641529
+ .long 2763692798
+ .long 3464356500
+ .long 4111907475
+ .long 531844911
+ .long 4173176451
+ .long 3714315762
+ .long 1232418301
+ .long 2633745705
+ .long 3928847655
+ .long 1063689823
+ .long 4051385607
+ .long 3133664229
+ .long 2464836603
+ .long 972524114
+ .long 3562728015
+ .long 2127379647
+ .long 3807803918
+ .long 1972361163
+ .long 634705910
+ .long 1945048229
+ .long 2830488734
+ .long 4254759295
+ .long 3320640540
+ .long 3944722327
+ .long 1269411821
+ .long 3890096458
+ .long 1366010173
+ .long 4214551295
+ .long 2346313785
+ .long 3594477359
+ .long 2538823642
+ .long 3485225620
+ .long 2732020347
+ .long 4134135294
+ .long 397660275
+ .long 2893987423
+ .long 782679989
+ .long 2675483945
+ .long 1169073399
+ .long 3973303293
+ .long 795320551
+ .long 1493007550
+ .long 1565359979
+ .long 1056000594
+ .long 2338146798
+ .long 3651639290
+ .long 1590641102
+ .long 2986015100
+ .long 3130719959
+ .long 2112001188
+ .long 381326301
+ .long 3008311285
+ .long 3181282204
+ .long 1677062904
+ .long 1966472623
+ .long 4224002377
+ .long 762652602
+ .long 1721655274
+ .long 2067597113
+ .long 3354125809
+ .long 3932945247
+ .long 4153037458
+ .long 1525305205
+ .long 3443310548
+ .long 4135194227
+ .long 2413284322
+ .long 3570923199
+ .long 4011107621
+ .long 3050610411
+ .long 2591653800
+ .long 3975421159
+ .long 531601349
+ .long 2846879102
+ .long 3727247947
+ .long 1806253526
+ .long 888340305
+ .long 3655875023
+ .long 1063202699
+ .long 1398790909
+ .long 3159528599
+ .long 3612507052
+ .long 1776680610
+ .long 3016782751
+ .long 2126405399
+ .long 2797581819
+ .long 2024089902
+ .long 2930046808
+ .long 3553361221
+ .long 1738598206
+ .long 4252810799
+ .long 1300196342
+ .long 4048179805
+ .long 1565126321
+ .long 2811755147
+ .long 3477196413
+ .long 4210654302
+ .long 2600392684
+ .long 3801392314
+ .long 3130252643
+ .long 1328542998
+ .long 2659425531
+ .long 4126341309
+ .long 905818072
+ .long 3307817333
+ .long 1965537991
+ .long 2657085997
+ .long 1023883767
+ .long 3957715323
+ .long 1811636145
+ .long 2320667370
+ .long 3931075983
+ .long 1019204698
+ .long 2047767535
+ .long 3620463350
+ .long 3623272290
+ .long 346367444
+ .long 3567184671
+ .long 2038409397
+ .long 4095535070
+ .long 2945959404
+ .long 2951577284
+ .long 692734889
+ .long 2839402047
+ .long 4076818795
+ .long 3896102844
+ .long 1596951513
+ .long 1608187272
+ .long 1385469779
+ .long 1383836798
+ .long 3858670295
+ .long 3497238392
+ .long 3193903027
+ .long 3216374545
+ .long 2770939558
+ .long 2767673597
+ .long 3422373294
+ .long 2699509489
+ .long 2092838759
+ .long 2137781795
+ .long 1246911821
+ .long 1240379898
+ .long 2549779293
+ .long 1104051682
+ .long 4185677519
+ .long 4275563591
+ .long 2493823642
+ .long 2480759797
+ .long 804591290
+ .long 2208103365
+ .long 4076387742
+ .long 4256159887
+ .long 692679989
+ .long 666552299
+ .long 1609182581
+ .long 121239434
+ .long 3857808189
+ .long 4217352479
+ .long 1385359979
+ .long 1333104599
+ .long 3218365162
+ .long 242478868
+ .long 3420649082
+ .long 4139737663
+ .long 2770719959
+ .long 2666209199
+ .long 2141763028
+ .long 484957737
+ .long 2546330868
+ .long 3984508030
+ .long 1246472623
+ .long 1037451103
+ .long 4283526057
+ .long 969915474
+ .long 797694440
+ .long 3674048764
+ .long 2492945247
+ .long 2074902206
+ .long 4272084818
+ .long 1939830949
+ .long 1595388880
+ .long 3053130232
+ .long 690923199
+ .long 4149804412
+ .long 4249202340
+ .long 3879661898
+ .long 3190777760
+ .long 1811293169
+ .long 1381846399
+ .long 4004641529
+ .long 4203437385
+ .long 3464356500
+ .long 2086588225
+ .long 3622586339
+ .long 2763692798
+ .long 3714315762
+ .long 4111907475
+ .long 2633745705
+ .long 4173176451
+ .long 2950205382
+ .long 1232418301
+ .long 3133664229
+ .long 3928847655
+ .long 972524114
+ .long 4051385607
+ .long 1605443469
+ .long 2464836603
+ .long 1972361163
+ .long 3562728015
+ .long 1945048229
+ .long 3807803918
+ .long 3210886938
+ .long 634705910
+ .long 3944722327
+ .long 2830488734
+ .long 3890096458
+ .long 3320640540
+ .long 2126806581
+ .long 1269411821
+ .long 3594477359
+ .long 1366010173
+ .long 3485225620
+ .long 2346313785
+ .long 4253613162
+ .long 2538823642
+ .long 2893987423
+ .long 2732020347
+ .long 2675483945
+ .long 397660275
+ .long 4212259029
+ .long 782679989
+ .long 1493007550
+ .long 1169073399
+ .long 1056000594
+ .long 795320551
+ .long 4129550763
+ .long 1565359979
+ .long 2986015100
+ .long 2338146798
+ .long 2112001188
+ .long 1590641102
+ .long 3964134231
+ .long 3130719959
+ .long 1677062904
+ .long 381326301
+ .long 4224002377
+ .long 3181282204
+ .long 3633301166
+ .long 1966472623
+ .long 3354125809
+ .long 762652602
+ .long 4153037458
+ .long 2067597113
+ .long 2971635037
+ .long 3932945247
+ .long 2413284322
+ .long 1525305205
+ .long 4011107621
+ .long 4135194227
+ .long 1648302778
+ .long 3570923199
+ .long 531601349
+ .long 3050610411
+ .long 3727247947
+ .long 3975421159
+ .long 3296605556
+ .long 2846879102
+ .long 1063202699
+ .long 1806253526
+ .long 3159528599
+ .long 3655875023
+ .long 2298243816
+ .long 1398790909
+ .long 2126405399
+ .long 3612507052
+ .long 2024089902
+ .long 3016782751
+ .long 301520336
+ .long 2797581819
+ .long 4252810799
+ .long 2930046808
+ .long 4048179805
+ .long 1738598206
+ .long 603040673
+ .long 1300196342
+ .long 4210654302
+ .long 1565126321
+ .long 3801392314
+ .long 3477196413
+ .long 1206081346
+ .long 2600392684
+ .long 4126341309
+ .long 3130252643
+ .long 3307817333
+ .long 2659425531
+ .long 2412162692
+ .long 905818072
+ .long 3957715323
+ .long 1965537991
+ .long 2320667370
+ .long 1023883767
+ .long 529358088
+ .long 1811636145
+ .long 3620463350
+ .long 3931075983
+ .long 346367444
+ .long 2047767535
+ .long 1058716176
+ .long 3623272290
+ .long 2945959404
+ .long 3567184671
+ .long 692734889
+ .long 4095535070
+ .long 2117432353
+ .long 2951577284
+ .long 1596951513
+ .long 2839402047
+ .long 1385469779
+ .long 3896102844
+ .long 4234864706
+ .long 1608187272
+ .long 3193903027
+ .long 1383836798
+ .long 2770939558
+ .long 3497238392
+ .long 4174762117
+ .long 3216374545
+ .long 2092838759
+ .long 2767673597
+ .long 1246911821
+ .long 2699509489
+ .long 4054556938
+ .long 2137781795
+ .long 4185677519
+ .long 1240379898
+ .long 2493823642
+ .long 1104051682
+ .long 3814146581
+ .long 4275563591
+ .long 4076387742
+ .long 2480759797
+ .long 692679989
+ .long 2208103365
+ .long 3333325867
+ .long 4256159887
+ .long 3857808189
+ .long 666552299
+ .long 1385359979
+ .long 121239434
+ .long 2371684438
+ .long 4217352479
+ .long 3420649082
+ .long 1333104599
+ .long 2770719959
+ .long 242478868
+ .long 448401580
+ .long 4139737663
+ .long 2546330868
+ .long 2666209199
+ .long 1246472623
+ .long 484957737
+ .long 896803160
+ .long 3984508030
+ .type __svml_dsin_reduction_data_internal,@object
+ .size __svml_dsin_reduction_data_internal,49152
+ .space 512, 0x00
+ .align 8
+.L_2il0floatpacket.26:
+ .long 0xffffffff,0xffffffff
+ .type .L_2il0floatpacket.26,@object
+ .size .L_2il0floatpacket.26,8
+ .align 8
+.L_2il0floatpacket.27:
+ .long 0x00000000,0x7ff00000
+ .type .L_2il0floatpacket.27,@object
+ .size .L_2il0floatpacket.27,8
+ .align 8
+.L_2il0floatpacket.28:
+ .long 0xffffffff,0x000fffff
+ .type .L_2il0floatpacket.28,@object
+ .size .L_2il0floatpacket.28,8
+ .align 8
+.L_2il0floatpacket.29:
+ .long 0x00000000,0x00100000
+ .type .L_2il0floatpacket.29,@object
+ .size .L_2il0floatpacket.29,8
+ .align 8
+.L_2il0floatpacket.30:
+ .long 0xffffffff,0x00000000
+ .type .L_2il0floatpacket.30,@object
+ .size .L_2il0floatpacket.30,8
+ .align 8
+.L_2il0floatpacket.31:
+ .long 0x00000000,0x80000000
+ .type .L_2il0floatpacket.31,@object
+ .size .L_2il0floatpacket.31,8
+ .align 8
+.L_2il0floatpacket.32:
+ .long 0x00000000,0x3ff00000
+ .type .L_2il0floatpacket.32,@object
+ .size .L_2il0floatpacket.32,8
+ .align 8
+.L_2il0floatpacket.33:
+ .long 0x00000000,0x42a80000
+ .type .L_2il0floatpacket.33,@object
+ .size .L_2il0floatpacket.33,8
+ .align 8
+.L_2il0floatpacket.34:
+ .long 0x000001ff,0x00000000
+ .type .L_2il0floatpacket.34,@object
+ .size .L_2il0floatpacket.34,8
+ .align 8
+.L_2il0floatpacket.35:
+ .long 0x00000000,0x39700000
+ .type .L_2il0floatpacket.35,@object
+ .size .L_2il0floatpacket.35,8
+ .align 8
+.L_2il0floatpacket.36:
+ .long 0x00ffffff,0x00000000
+ .type .L_2il0floatpacket.36,@object
+ .size .L_2il0floatpacket.36,8
+ .align 8
+.L_2il0floatpacket.37:
+ .long 0x00000000,0x3cb00000
+ .type .L_2il0floatpacket.37,@object
+ .size .L_2il0floatpacket.37,8
+ .align 8
+.L_2il0floatpacket.38:
+ .long 0x00000fff,0x00000000
+ .type .L_2il0floatpacket.38,@object
+ .size .L_2il0floatpacket.38,8
+ .align 8
+.L_2il0floatpacket.39:
+ .long 0x54442d18,0x401921fb
+ .type .L_2il0floatpacket.39,@object
+ .size .L_2il0floatpacket.39,8
+ .align 8
+.L_2il0floatpacket.40:
+ .long 0x33145c07,0x3cb1a626
+ .type .L_2il0floatpacket.40,@object
+ .size .L_2il0floatpacket.40,8
+ .align 8
+.L_2il0floatpacket.41:
+ .long 0xffffffff,0x7fffffff
+ .type .L_2il0floatpacket.41,@object
+ .size .L_2il0floatpacket.41,8
+ .align 8
+.L_2il0floatpacket.42:
+ .long 0x00000000,0x3eb00000
+ .type .L_2il0floatpacket.42,@object
+ .size .L_2il0floatpacket.42,8
+ .align 8
+__dsin_la_CoutTab:
+ .long 0
+ .long 0
+ .long 0
+ .long 2146435072
+ .type __dsin_la_CoutTab,@object
+ .size __dsin_la_CoutTab,16
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * 1) Range reduction to [-Pi/2; +Pi/2] interval
+ * a) Grab sign from source argument and save it.
+ * b) Remove sign using AND operation
+ * c) Getting octant Y by 1/Pi multiplication
+ * d) Add "Right Shifter" value
+ * e) Treat obtained value as integer for destination sign setting.
+ * Shift first bit of this value to the last (sign) position
+ * f) Change destination sign if source sign is negative
+ * using XOR operation.
+ * g) Subtract "Right Shifter" value
+ * h) Subtract Y*PI from X argument, where PI divided to 4 parts:
+ * X = X - Y*PI1 - Y*PI2 - Y*PI3 - Y*PI4;
+ * 2) Polynomial (minimax for sin within [-Pi/2; +Pi/2] interval)
+ * a) Calculate X^2 = X * X
+ * b) Calculate polynomial:
+ * R = X + X * X^2 * (A3 + x^2 * (A5 + ......
+ * 3) Destination sign setting
+ * a) Set shifted destination sign using XOR operation:
+ * R = XOR( R, S );
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_sinf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_sinf16
+
+__svml_sinf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ xorl %edx, %edx
+ vmovups 4096+__svml_ssin_data_internal(%rip), %zmm7
+ vmovups 5248+__svml_ssin_data_internal(%rip), %zmm2
+ vmovups 5312+__svml_ssin_data_internal(%rip), %zmm3
+ vmovups 4800+__svml_ssin_data_internal(%rip), %zmm6
+ vmovups 4864+__svml_ssin_data_internal(%rip), %zmm4
+ vmovups 4928+__svml_ssin_data_internal(%rip), %zmm5
+ vmovups 5184+__svml_ssin_data_internal(%rip), %zmm10
+ vmovups 5120+__svml_ssin_data_internal(%rip), %zmm14
+ vmovups 5056+__svml_ssin_data_internal(%rip), %zmm12
+ vmovups 4992+__svml_ssin_data_internal(%rip), %zmm13
+ vmovaps %zmm0, %zmm11
+
+/* b) Remove sign using AND operation */
+ vandps %zmm7, %zmm11, %zmm1
+
+/*
+ * f) Change destination sign if source sign is negative
+ * using XOR operation.
+ */
+ vandnps %zmm11, %zmm7, %zmm0
+
+/*
+ * c) Getting octant Y by 1/Pi multiplication
+ * d) Add "Right Shifter" value
+ */
+ vfmadd213ps {rn-sae}, %zmm3, %zmm1, %zmm2
+
+/* g) Subtract "Right Shifter" value */
+ vsubps {rn-sae}, %zmm3, %zmm2, %zmm8
+
+/*
+ * e) Treat obtained value as integer for destination sign setting.
+ * Shift first bit of this value to the last (sign) position
+ */
+ vpslld $31, %zmm2, %zmm9
+
+/* Check for large and special values */
+ vmovups 4160+__svml_ssin_data_internal(%rip), %zmm2
+
+/*
+ * h) Subtract Y*PI from X argument, where PI divided to 4 parts:
+ * X = X - Y*PI1 - Y*PI2 - Y*PI3;
+ */
+ vfnmadd213ps {rn-sae}, %zmm1, %zmm8, %zmm6
+ vcmpps $18, {sae}, %zmm2, %zmm1, %k1
+ vfnmadd231ps {rn-sae}, %zmm8, %zmm4, %zmm6
+ vfnmadd213ps {rn-sae}, %zmm6, %zmm5, %zmm8
+
+/*
+ * 2) Polynomial (minimax for sin within [-Pi/2; +Pi/2] interval)
+ * a) Calculate X^2 = X * X
+ * b) Calculate polynomial:
+ * R = X + X * X^2 * (A3 + x^2 * (A5 + ......
+ */
+ vmulps {rn-sae}, %zmm8, %zmm8, %zmm15
+ vxorps %zmm9, %zmm8, %zmm8
+ vfmadd231ps {rn-sae}, %zmm15, %zmm10, %zmm14
+ vpternlogd $255, %zmm10, %zmm10, %zmm10
+ vfmadd213ps {rn-sae}, %zmm12, %zmm15, %zmm14
+ vfmadd213ps {rn-sae}, %zmm13, %zmm15, %zmm14
+ vmulps {rn-sae}, %zmm15, %zmm14, %zmm9
+ vfmadd213ps {rn-sae}, %zmm8, %zmm8, %zmm9
+
+/*
+ * 3) Destination sign setting
+ * a) Set shifted destination sign using XOR operation:
+ * R = XOR( R, S );
+ */
+ vxorps %zmm0, %zmm9, %zmm0
+ vpandnd %zmm1, %zmm1, %zmm10{%k1}
+ vptestmd %zmm10, %zmm10, %k0
+ kortestw %k0, %k0
+ jne .LBL_1_12
+
+.LBL_1_2:
+
+ testl %edx, %edx
+ jne .LBL_1_4
+
+.LBL_1_3:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_4:
+
+ vmovups %zmm11, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_3
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_8:
+
+ btl %r12d, %r13d
+ jc .LBL_1_11
+
+.LBL_1_9:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_8
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_3
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_11:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_ssin_cout_rare_internal
+ jmp .LBL_1_9
+ .cfi_restore 4
+ .cfi_restore 5
+ .cfi_restore 12
+ .cfi_restore 13
+ .cfi_restore 122
+ .cfi_restore 123
+ .cfi_restore 124
+ .cfi_restore 125
+
+.LBL_1_12:
+
+ vmovups 4224+__svml_ssin_data_internal(%rip), %zmm8
+
+/*
+ * Get the (2^a / 2pi) mod 1 values from the table.
+ * Because VLANG doesn't have I-type gather, we need a trivial cast
+ */
+ lea __svml_ssin_reduction_data_internal(%rip), %rax
+ vmovups %zmm0, (%rsp)
+ vandps %zmm1, %zmm8, %zmm6
+ vpternlogd $255, %zmm1, %zmm1, %zmm1
+ vcmpps $4, {sae}, %zmm8, %zmm6, %k1
+
+/* ..................... Table look-up ........................ */
+ lea __svml_ssin_data_internal(%rip), %rcx
+ vpandd .L_2il0floatpacket.21(%rip), %zmm11, %zmm12
+ vpandnd %zmm6, %zmm6, %zmm1{%k1}
+ vpsrld $23, %zmm12, %zmm13
+ vptestmd %zmm1, %zmm1, %k0
+
+/*
+ * Break the P_xxx and m into 16-bit chunks ready for
+ * the long multiplication via 16x16->32 multiplications
+ */
+ vmovups .L_2il0floatpacket.24(%rip), %zmm6
+ vpslld $1, %zmm13, %zmm4
+ kxnorw %k0, %k0, %k3
+ kxnorw %k0, %k0, %k1
+ kxnorw %k0, %k0, %k2
+ kmovw %k0, %edx
+ vpaddd %zmm13, %zmm4, %zmm9
+ vpslld $2, %zmm9, %zmm5
+ vpxord %zmm3, %zmm3, %zmm3
+ vpxord %zmm14, %zmm14, %zmm14
+ vpxord %zmm8, %zmm8, %zmm8
+ vgatherdps 4(%rax,%zmm5), %zmm3{%k3}
+ vgatherdps 8(%rax,%zmm5), %zmm14{%k1}
+ vgatherdps (%rax,%zmm5), %zmm8{%k2}
+ vpsrld $16, %zmm3, %zmm15
+ vpsrld $16, %zmm14, %zmm13
+ vpsrld $16, %zmm8, %zmm7
+ kxnorw %k0, %k0, %k1
+
+/*
+ * Also get the significand as an integer
+ * NB: adding in the integer bit is wrong for denorms!
+ * To make this work for denorms we should do something slightly different
+ */
+ vpandd .L_2il0floatpacket.22(%rip), %zmm11, %zmm2
+ vpaddd .L_2il0floatpacket.23(%rip), %zmm2, %zmm1
+ vpsrld $16, %zmm1, %zmm9
+ vpandd %zmm6, %zmm8, %zmm0
+ vpandd %zmm6, %zmm3, %zmm12
+ vpandd %zmm6, %zmm14, %zmm5
+ vpandd %zmm6, %zmm1, %zmm14
+
+/* Now do the big multiplication and carry propagation */
+ vpmulld %zmm0, %zmm9, %zmm4
+ vpmulld %zmm15, %zmm9, %zmm3
+ vpmulld %zmm12, %zmm9, %zmm2
+ vpmulld %zmm13, %zmm9, %zmm1
+ vpmulld %zmm5, %zmm9, %zmm8
+ vpmulld %zmm15, %zmm14, %zmm9
+ vpmulld %zmm13, %zmm14, %zmm15
+ vpmulld %zmm7, %zmm14, %zmm7
+ vpmulld %zmm0, %zmm14, %zmm5
+ vpmulld %zmm12, %zmm14, %zmm0
+ vpsrld $16, %zmm15, %zmm14
+ vpsrld $16, %zmm9, %zmm15
+ vpsrld $16, %zmm0, %zmm13
+ vpsrld $16, %zmm5, %zmm12
+ vpaddd %zmm15, %zmm3, %zmm3
+ vpaddd %zmm14, %zmm1, %zmm1
+ vpaddd %zmm13, %zmm2, %zmm14
+ vpaddd %zmm12, %zmm4, %zmm2
+ vpandd %zmm6, %zmm5, %zmm4
+ vpaddd %zmm3, %zmm4, %zmm3
+ vpsrld $16, %zmm8, %zmm4
+ vpandd %zmm6, %zmm0, %zmm0
+ vpaddd %zmm1, %zmm0, %zmm13
+ vpandd %zmm6, %zmm7, %zmm7
+ vpaddd %zmm2, %zmm7, %zmm0
+ vpaddd %zmm13, %zmm4, %zmm7
+ vpandd %zmm6, %zmm9, %zmm12
+ vpsrld $16, %zmm7, %zmm9
+ vpaddd %zmm14, %zmm12, %zmm5
+ vpaddd %zmm5, %zmm9, %zmm1
+ vpsrld $16, %zmm1, %zmm2
+ vpslld $16, %zmm1, %zmm13
+ vpaddd %zmm3, %zmm2, %zmm15
+ vpsrld $16, %zmm15, %zmm8
+ vpaddd %zmm0, %zmm8, %zmm14
+
+/* Assemble reduced argument from the pieces */
+ vpandd %zmm6, %zmm7, %zmm12
+ vpandd %zmm6, %zmm15, %zmm4
+ vpslld $16, %zmm14, %zmm6
+ vpaddd %zmm12, %zmm13, %zmm13
+ vpaddd %zmm4, %zmm6, %zmm9
+
+/*
+ * Now round at the 2^-8 bit position for reduction mod pi/2^7
+ * instead of the original 2pi (but still with the same 2pi scaling).
+ * Use a shifter of 2^15 + 2^14.
+ * The N we get is our final version; it has an offset of
+ * 2^8 because of the implicit integer bit, and anyway for negative
+ * starting value it's a 2s complement thing. But we need to mask
+ * off the exponent part anyway so it's fine.
+ */
+ vmovups .L_2il0floatpacket.27(%rip), %zmm6
+ vpsrld $9, %zmm9, %zmm2
+ vpandd .L_2il0floatpacket.30(%rip), %zmm13, %zmm15
+ vpslld $5, %zmm15, %zmm1
+ vpsrld $18, %zmm13, %zmm13
+
+/*
+ * We want to incorporate the original sign now too.
+ * Do it here for convenience in getting the right N value,
+ * though we could wait right to the end if we were prepared
+ * to modify the sign of N later too.
+ * So get the appropriate sign mask now (or sooner).
+ */
+ vpandd .L_2il0floatpacket.25(%rip), %zmm11, %zmm5
+
+/*
+ * Create floating-point high part, implicitly adding integer bit 1
+ * Incorporate overall sign at this stage too.
+ */
+ vpxord .L_2il0floatpacket.26(%rip), %zmm5, %zmm8
+ vpord %zmm8, %zmm2, %zmm3
+ vaddps {rn-sae}, %zmm3, %zmm6, %zmm7
+ vsubps {rn-sae}, %zmm6, %zmm7, %zmm0
+ vsubps {rn-sae}, %zmm0, %zmm3, %zmm14
+ vandps .L_2il0floatpacket.35(%rip), %zmm11, %zmm3
+ vpternlogd $255, %zmm0, %zmm0, %zmm0
+
+/*
+ * Create floating-point low and medium parts, respectively
+ * lo_17, ... lo_0, 0, ..., 0
+ * hi_8, ... hi_0, lo_31, ..., lo_18
+ * then subtract off the implicitly added integer bits,
+ * 2^-46 and 2^-23, respectively.
+ * Put the original sign into all of them at this stage.
+ */
+ vpxord .L_2il0floatpacket.29(%rip), %zmm5, %zmm8
+ vpord %zmm8, %zmm1, %zmm2
+ vpandd .L_2il0floatpacket.32(%rip), %zmm9, %zmm9
+ vsubps {rn-sae}, %zmm8, %zmm2, %zmm15
+ vpxord .L_2il0floatpacket.31(%rip), %zmm5, %zmm2
+ vpslld $14, %zmm9, %zmm5
+ vpord %zmm13, %zmm5, %zmm5
+ vpord %zmm2, %zmm5, %zmm9
+ vsubps {rn-sae}, %zmm2, %zmm9, %zmm8
+
+/*
+ * Now multiply those numbers all by 2 pi, reasonably accurately.
+ * (RHi + RLo) * (pi_lead + pi_trail) ~=
+ * RHi * pi_lead + (RHi * pi_trail + RLo * pi_lead)
+ */
+ vmovups .L_2il0floatpacket.33(%rip), %zmm9
+ vmovups .L_2il0floatpacket.34(%rip), %zmm2
+
+/* Now add them up into 2 reasonably aligned pieces */
+ vaddps {rn-sae}, %zmm8, %zmm14, %zmm6
+ vsubps {rn-sae}, %zmm6, %zmm14, %zmm14
+ vmovaps %zmm9, %zmm5
+ vaddps {rn-sae}, %zmm14, %zmm8, %zmm13
+
+/*
+ * If the magnitude of the input is <= 2^-20, then
+ * just pass through the input, since no reduction will be needed and
+ * the main path will only work accurately if the reduced argument is
+ * about >= 2^-40 (which it is for all large pi multiples)
+ */
+ vmovups .L_2il0floatpacket.36(%rip), %zmm8
+ vaddps {rn-sae}, %zmm15, %zmm13, %zmm14
+ vpternlogd $255, %zmm15, %zmm15, %zmm15
+ vcmpps $26, {sae}, %zmm8, %zmm3, %k2
+ vcmpps $22, {sae}, %zmm8, %zmm3, %k3
+
+/* Grab our final N value as an integer, appropriately masked mod 2^8 */
+ vpandd .L_2il0floatpacket.28(%rip), %zmm7, %zmm4
+ vmulps {rn-sae}, %zmm9, %zmm6, %zmm7
+ vfmsub213ps {rn-sae}, %zmm7, %zmm6, %zmm5
+ vfmadd213ps {rn-sae}, %zmm5, %zmm2, %zmm6
+ vfmadd213ps {rn-sae}, %zmm6, %zmm9, %zmm14
+ vpslld $4, %zmm4, %zmm9
+ vpandnd %zmm3, %zmm3, %zmm15{%k2}
+ vpandnd %zmm3, %zmm3, %zmm0{%k3}
+ kxnorw %k0, %k0, %k2
+ kxnorw %k0, %k0, %k3
+ vandps %zmm7, %zmm15, %zmm12
+ vandps %zmm11, %zmm0, %zmm1
+ vandps %zmm14, %zmm15, %zmm2
+ vorps %zmm12, %zmm1, %zmm13
+
+/* ............... Polynomial approximation ................... */
+ vmovups 4352+__svml_ssin_data_internal(%rip), %zmm12
+
+/*
+ * The output is _VRES_R (high) + _VRES_E (low), and the integer part is _VRES_IND
+ * Set sRp2 = _VRES_R^2 and then resume the original code.
+ */
+ vmulps {rn-sae}, %zmm13, %zmm13, %zmm3
+
+/* ................. Reconstruction: res_hi ................... */
+ vmovaps %zmm13, %zmm8
+ vmovaps %zmm13, %zmm4
+ vpxord %zmm5, %zmm5, %zmm5
+ vpxord %zmm7, %zmm7, %zmm7
+ vgatherdps 4(%rcx,%zmm9), %zmm5{%k2}
+ vgatherdps 12(%rcx,%zmm9), %zmm7{%k3}
+ vfmadd213ps {rn-sae}, %zmm5, %zmm7, %zmm8
+ vsubps {rn-sae}, %zmm8, %zmm5, %zmm1
+ vfmadd231ps {rn-sae}, %zmm13, %zmm7, %zmm1
+ vpxord %zmm0, %zmm0, %zmm0
+ vgatherdps (%rcx,%zmm9), %zmm0{%k1}
+
+/* ................. Reconstruction: res_lo=corr+polS+polC+res_lo0 ................... */
+ kxnorw %k0, %k0, %k1
+ vfmadd132ps {rn-sae}, %zmm0, %zmm8, %zmm4
+ vsubps {rn-sae}, %zmm4, %zmm8, %zmm6
+ vfmadd231ps {rn-sae}, %zmm0, %zmm13, %zmm6
+ vaddps {rn-sae}, %zmm1, %zmm6, %zmm8
+ vaddps {rn-sae}, %zmm7, %zmm0, %zmm1
+ vmovups 4288+__svml_ssin_data_internal(%rip), %zmm6
+ vmovups 4480+__svml_ssin_data_internal(%rip), %zmm0
+ vmovups 4416+__svml_ssin_data_internal(%rip), %zmm7
+ vfmadd231ps {rn-sae}, %zmm3, %zmm12, %zmm6
+ vfmadd231ps {rn-sae}, %zmm3, %zmm0, %zmm7
+ vmulps {rn-sae}, %zmm3, %zmm6, %zmm14
+ vmulps {rn-sae}, %zmm3, %zmm7, %zmm0
+ vmulps {rn-sae}, %zmm13, %zmm14, %zmm6
+ vfnmadd213ps {rn-sae}, %zmm1, %zmm5, %zmm13
+ vfmadd213ps {rn-sae}, %zmm8, %zmm13, %zmm6
+ vpxord %zmm3, %zmm3, %zmm3
+ vgatherdps 8(%rcx,%zmm9), %zmm3{%k1}
+ vfmadd213ps {rn-sae}, %zmm3, %zmm13, %zmm2
+ vfmadd213ps {rn-sae}, %zmm2, %zmm5, %zmm0
+ vaddps {rn-sae}, %zmm6, %zmm0, %zmm2
+
+/* .................. Final reconstruction ................... */
+ vaddps {rn-sae}, %zmm2, %zmm4, %zmm4
+
+/*
+ * ----------------------------------------------------------
+ * End of large arguments path
+ * ----------------------------------------------------------
+ * Merge results from main and large paths:
+ */
+ vpandnd (%rsp), %zmm10, %zmm0
+ vpandd %zmm10, %zmm4, %zmm10
+ vpord %zmm10, %zmm0, %zmm0
+ jmp .LBL_1_2
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_sinf16,@function
+ .size __svml_sinf16,.-__svml_sinf16
+..LN__svml_sinf16.0:
+
+.L_2__routine_start___svml_ssin_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_ssin_cout_rare_internal:
+
+
+ .cfi_startproc
+..L63:
+
+ movl (%rdi), %edx
+ movzwl 2(%rdi), %eax
+ movl %edx, -8(%rsp)
+ andl $32640, %eax
+ shrl $24, %edx
+ andl $127, %edx
+ movss (%rdi), %xmm1
+ cmpl $32640, %eax
+ jne .LBL_2_6
+
+
+ movb %dl, -5(%rsp)
+ cmpl $2139095040, -8(%rsp)
+ jne .LBL_2_4
+
+
+ movss __ssin_la__vmlsSinHATab(%rip), %xmm0
+ movl $1, %eax
+ mulss %xmm0, %xmm1
+ movss %xmm1, (%rsi)
+ ret
+
+.LBL_2_4:
+
+ mulss (%rdi), %xmm1
+ xorl %eax, %eax
+ movss %xmm1, (%rsi)
+
+
+ ret
+
+.LBL_2_6:
+
+ xorl %eax, %eax
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_ssin_cout_rare_internal,@function
+ .size __svml_ssin_cout_rare_internal,.-__svml_ssin_cout_rare_internal
+..LN__svml_ssin_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+.L_2il0floatpacket.21:
+ .long 0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000
+ .type .L_2il0floatpacket.21,@object
+ .size .L_2il0floatpacket.21,64
+ .align 64
+.L_2il0floatpacket.22:
+ .long 0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff
+ .type .L_2il0floatpacket.22,@object
+ .size .L_2il0floatpacket.22,64
+ .align 64
+.L_2il0floatpacket.23:
+ .long 0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000
+ .type .L_2il0floatpacket.23,@object
+ .size .L_2il0floatpacket.23,64
+ .align 64
+.L_2il0floatpacket.24:
+ .long 0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff
+ .type .L_2il0floatpacket.24,@object
+ .size .L_2il0floatpacket.24,64
+ .align 64
+.L_2il0floatpacket.25:
+ .long 0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000
+ .type .L_2il0floatpacket.25,@object
+ .size .L_2il0floatpacket.25,64
+ .align 64
+.L_2il0floatpacket.26:
+ .long 0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000
+ .type .L_2il0floatpacket.26,@object
+ .size .L_2il0floatpacket.26,64
+ .align 64
+.L_2il0floatpacket.27:
+ .long 0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000
+ .type .L_2il0floatpacket.27,@object
+ .size .L_2il0floatpacket.27,64
+ .align 64
+.L_2il0floatpacket.28:
+ .long 0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff
+ .type .L_2il0floatpacket.28,@object
+ .size .L_2il0floatpacket.28,64
+ .align 64
+.L_2il0floatpacket.29:
+ .long 0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000
+ .type .L_2il0floatpacket.29,@object
+ .size .L_2il0floatpacket.29,64
+ .align 64
+.L_2il0floatpacket.30:
+ .long 0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff
+ .type .L_2il0floatpacket.30,@object
+ .size .L_2il0floatpacket.30,64
+ .align 64
+.L_2il0floatpacket.31:
+ .long 0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000
+ .type .L_2il0floatpacket.31,@object
+ .size .L_2il0floatpacket.31,64
+ .align 64
+.L_2il0floatpacket.32:
+ .long 0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff
+ .type .L_2il0floatpacket.32,@object
+ .size .L_2il0floatpacket.32,64
+ .align 64
+.L_2il0floatpacket.33:
+ .long 0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb
+ .type .L_2il0floatpacket.33,@object
+ .size .L_2il0floatpacket.33,64
+ .align 64
+.L_2il0floatpacket.34:
+ .long 0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e
+ .type .L_2il0floatpacket.34,@object
+ .size .L_2il0floatpacket.34,64
+ .align 64
+.L_2il0floatpacket.35:
+ .long 0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff
+ .type .L_2il0floatpacket.35,@object
+ .size .L_2il0floatpacket.35,64
+ .align 64
+.L_2il0floatpacket.36:
+ .long 0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000
+ .type .L_2il0floatpacket.36,@object
+ .size .L_2il0floatpacket.36,64
+ .align 64
+__svml_ssin_data_internal:
+ .long 0
+ .long 0
+ .long 0
+ .long 1065353216
+ .long 3114133471
+ .long 1019808432
+ .long 2953169304
+ .long 1065353216
+ .long 3130909128
+ .long 1028193072
+ .long 2968461951
+ .long 1065353216
+ .long 3140588184
+ .long 1033283845
+ .long 2975014497
+ .long 1065353216
+ .long 3147680113
+ .long 1036565814
+ .long 2960495349
+ .long 1065353216
+ .long 3153489468
+ .long 1039839859
+ .long 2970970319
+ .long 1065353216
+ .long 3157349634
+ .long 1041645699
+ .long 837346836
+ .long 1065353216
+ .long 3161536011
+ .long 1043271842
+ .long 823224313
+ .long 1065353216
+ .long 3164432432
+ .long 1044891074
+ .long 2967836285
+ .long 1065353216
+ .long 3167161428
+ .long 1046502419
+ .long 833086710
+ .long 1065353216
+ .long 3170205956
+ .long 1048104908
+ .long 2971391005
+ .long 1065353216
+ .long 3172229004
+ .long 1049136787
+ .long 824999326
+ .long 1065353216
+ .long 3174063957
+ .long 1049927729
+ .long 846027248
+ .long 1065353216
+ .long 3176053642
+ .long 1050712805
+ .long 2990442912
+ .long 1065353216
+ .long 3178196862
+ .long 1051491540
+ .long 2988789250
+ .long 1065353216
+ .long 3179887378
+ .long 1052263466
+ .long 2993707942
+ .long 1065353216
+ .long 3181110540
+ .long 1053028117
+ .long 836097324
+ .long 1065353216
+ .long 3182408396
+ .long 1053785034
+ .long 829045603
+ .long 1065353216
+ .long 3183780163
+ .long 1054533760
+ .long 840832460
+ .long 1065353216
+ .long 3185225016
+ .long 1055273845
+ .long 2983839604
+ .long 1065353216
+ .long 3186742084
+ .long 1056004842
+ .long 2986287417
+ .long 1065353216
+ .long 3188000746
+ .long 1056726311
+ .long 2978016425
+ .long 1065353216
+ .long 3188830103
+ .long 1057201213
+ .long 2992349186
+ .long 1065353216
+ .long 3189694133
+ .long 1057551771
+ .long 2998815566
+ .long 1065353216
+ .long 3190592315
+ .long 1057896922
+ .long 2991207143
+ .long 1065353216
+ .long 3191524108
+ .long 1058236458
+ .long 852349230
+ .long 1065353216
+ .long 3192488951
+ .long 1058570176
+ .long 2982650867
+ .long 1065353216
+ .long 3193486263
+ .long 1058897873
+ .long 848430348
+ .long 1065353216
+ .long 3194515443
+ .long 1059219353
+ .long 841032635
+ .long 1065353216
+ .long 3195575871
+ .long 1059534422
+ .long 2986574659
+ .long 1065353216
+ .long 3196363278
+ .long 1059842890
+ .long 2998350134
+ .long 1065353216
+ .long 3196923773
+ .long 1060144571
+ .long 2997759282
+ .long 1065353216
+ .long 3197498906
+ .long 1060439283
+ .long 844097402
+ .long 1065353216
+ .long 1044518635
+ .long 1060726850
+ .long 2994798599
+ .long 1056964608
+ .long 1043311911
+ .long 1061007097
+ .long 832220140
+ .long 1056964608
+ .long 1042078039
+ .long 1061279856
+ .long 851442039
+ .long 1056964608
+ .long 1040817765
+ .long 1061544963
+ .long 850481524
+ .long 1056964608
+ .long 1038876298
+ .long 1061802258
+ .long 848897600
+ .long 1056964608
+ .long 1036254719
+ .long 1062051586
+ .long 847147240
+ .long 1056964608
+ .long 1033584979
+ .long 1062292797
+ .long 806113028
+ .long 1056964608
+ .long 1029938589
+ .long 1062525745
+ .long 848357914
+ .long 1056964608
+ .long 1024416170
+ .long 1062750291
+ .long 2994560960
+ .long 1056964608
+ .long 1013387058
+ .long 1062966298
+ .long 841166280
+ .long 1056964608
+ .long 3152590408
+ .long 1063173637
+ .long 851900755
+ .long 1056964608
+ .long 3169472868
+ .long 1063372184
+ .long 3001545765
+ .long 1056964608
+ .long 3176031322
+ .long 1063561817
+ .long 823789818
+ .long 1056964608
+ .long 3180617215
+ .long 1063742424
+ .long 2998678409
+ .long 1056964608
+ .long 3183612120
+ .long 1063913895
+ .long 3001754476
+ .long 1056964608
+ .long 3186639787
+ .long 1064076126
+ .long 854796500
+ .long 1056964608
+ .long 3188684717
+ .long 1064229022
+ .long 2995991516
+ .long 1056964608
+ .long 1035072335
+ .long 1064372488
+ .long 840880349
+ .long 1048576000
+ .long 1031957395
+ .long 1064506439
+ .long 851742225
+ .long 1048576000
+ .long 1025835404
+ .long 1064630795
+ .long 2996018466
+ .long 1048576000
+ .long 1015605553
+ .long 1064745479
+ .long 846006572
+ .long 1048576000
+ .long 3152414341
+ .long 1064850424
+ .long 2987244005
+ .long 1048576000
+ .long 3170705253
+ .long 1064945565
+ .long 851856985
+ .long 1048576000
+ .long 3177244920
+ .long 1065030846
+ .long 855602635
+ .long 1048576000
+ .long 1027359369
+ .long 1065106216
+ .long 2989610635
+ .long 1040187392
+ .long 1018299420
+ .long 1065171628
+ .long 2969000681
+ .long 1040187392
+ .long 3140071849
+ .long 1065227044
+ .long 3002197507
+ .long 1040187392
+ .long 3168602920
+ .long 1065272429
+ .long 838093129
+ .long 1040187392
+ .long 1010124837
+ .long 1065307757
+ .long 852498564
+ .long 1031798784
+ .long 3160150850
+ .long 1065333007
+ .long 836655967
+ .long 1031798784
+ .long 3151746369
+ .long 1065348163
+ .long 814009613
+ .long 1023410176
+ .long 0
+ .long 1065353216
+ .long 0
+ .long 0
+ .long 1004262721
+ .long 1065348163
+ .long 814009613
+ .long 3170893824
+ .long 1012667202
+ .long 1065333007
+ .long 836655967
+ .long 3179282432
+ .long 3157608485
+ .long 1065307757
+ .long 852498564
+ .long 3179282432
+ .long 1021119272
+ .long 1065272429
+ .long 838093129
+ .long 3187671040
+ .long 992588201
+ .long 1065227044
+ .long 3002197507
+ .long 3187671040
+ .long 3165783068
+ .long 1065171628
+ .long 2969000681
+ .long 3187671040
+ .long 3174843017
+ .long 1065106216
+ .long 2989610635
+ .long 3187671040
+ .long 1029761272
+ .long 1065030846
+ .long 855602635
+ .long 3196059648
+ .long 1023221605
+ .long 1064945565
+ .long 851856985
+ .long 3196059648
+ .long 1004930693
+ .long 1064850424
+ .long 2987244005
+ .long 3196059648
+ .long 3163089201
+ .long 1064745479
+ .long 846006572
+ .long 3196059648
+ .long 3173319052
+ .long 1064630795
+ .long 2996018466
+ .long 3196059648
+ .long 3179441043
+ .long 1064506439
+ .long 851742225
+ .long 3196059648
+ .long 3182555983
+ .long 1064372488
+ .long 840880349
+ .long 3196059648
+ .long 1041201069
+ .long 1064229022
+ .long 2995991516
+ .long 3204448256
+ .long 1039156139
+ .long 1064076126
+ .long 854796500
+ .long 3204448256
+ .long 1036128472
+ .long 1063913895
+ .long 3001754476
+ .long 3204448256
+ .long 1033133567
+ .long 1063742424
+ .long 2998678409
+ .long 3204448256
+ .long 1028547674
+ .long 1063561817
+ .long 823789818
+ .long 3204448256
+ .long 1021989220
+ .long 1063372184
+ .long 3001545765
+ .long 3204448256
+ .long 1005106760
+ .long 1063173637
+ .long 851900755
+ .long 3204448256
+ .long 3160870706
+ .long 1062966298
+ .long 841166280
+ .long 3204448256
+ .long 3171899818
+ .long 1062750291
+ .long 2994560960
+ .long 3204448256
+ .long 3177422237
+ .long 1062525745
+ .long 848357914
+ .long 3204448256
+ .long 3181068627
+ .long 1062292797
+ .long 806113028
+ .long 3204448256
+ .long 3183738367
+ .long 1062051586
+ .long 847147240
+ .long 3204448256
+ .long 3186359946
+ .long 1061802258
+ .long 848897600
+ .long 3204448256
+ .long 3188301413
+ .long 1061544963
+ .long 850481524
+ .long 3204448256
+ .long 3189561687
+ .long 1061279856
+ .long 851442039
+ .long 3204448256
+ .long 3190795559
+ .long 1061007097
+ .long 832220140
+ .long 3204448256
+ .long 3192002283
+ .long 1060726850
+ .long 2994798599
+ .long 3204448256
+ .long 1050015258
+ .long 1060439283
+ .long 844097402
+ .long 3212836864
+ .long 1049440125
+ .long 1060144571
+ .long 2997759282
+ .long 3212836864
+ .long 1048879630
+ .long 1059842890
+ .long 2998350134
+ .long 3212836864
+ .long 1048092223
+ .long 1059534422
+ .long 2986574659
+ .long 3212836864
+ .long 1047031795
+ .long 1059219353
+ .long 841032635
+ .long 3212836864
+ .long 1046002615
+ .long 1058897873
+ .long 848430348
+ .long 3212836864
+ .long 1045005303
+ .long 1058570176
+ .long 2982650867
+ .long 3212836864
+ .long 1044040460
+ .long 1058236458
+ .long 852349230
+ .long 3212836864
+ .long 1043108667
+ .long 1057896922
+ .long 2991207143
+ .long 3212836864
+ .long 1042210485
+ .long 1057551771
+ .long 2998815566
+ .long 3212836864
+ .long 1041346455
+ .long 1057201213
+ .long 2992349186
+ .long 3212836864
+ .long 1040517098
+ .long 1056726311
+ .long 2978016425
+ .long 3212836864
+ .long 1039258436
+ .long 1056004842
+ .long 2986287417
+ .long 3212836864
+ .long 1037741368
+ .long 1055273845
+ .long 2983839604
+ .long 3212836864
+ .long 1036296515
+ .long 1054533760
+ .long 840832460
+ .long 3212836864
+ .long 1034924748
+ .long 1053785034
+ .long 829045603
+ .long 3212836864
+ .long 1033626892
+ .long 1053028117
+ .long 836097324
+ .long 3212836864
+ .long 1032403730
+ .long 1052263466
+ .long 2993707942
+ .long 3212836864
+ .long 1030713214
+ .long 1051491540
+ .long 2988789250
+ .long 3212836864
+ .long 1028569994
+ .long 1050712805
+ .long 2990442912
+ .long 3212836864
+ .long 1026580309
+ .long 1049927729
+ .long 846027248
+ .long 3212836864
+ .long 1024745356
+ .long 1049136787
+ .long 824999326
+ .long 3212836864
+ .long 1022722308
+ .long 1048104908
+ .long 2971391005
+ .long 3212836864
+ .long 1019677780
+ .long 1046502419
+ .long 833086710
+ .long 3212836864
+ .long 1016948784
+ .long 1044891074
+ .long 2967836285
+ .long 3212836864
+ .long 1014052363
+ .long 1043271842
+ .long 823224313
+ .long 3212836864
+ .long 1009865986
+ .long 1041645699
+ .long 837346836
+ .long 3212836864
+ .long 1006005820
+ .long 1039839859
+ .long 2970970319
+ .long 3212836864
+ .long 1000196465
+ .long 1036565814
+ .long 2960495349
+ .long 3212836864
+ .long 993104536
+ .long 1033283845
+ .long 2975014497
+ .long 3212836864
+ .long 983425480
+ .long 1028193072
+ .long 2968461951
+ .long 3212836864
+ .long 966649823
+ .long 1019808432
+ .long 2953169304
+ .long 3212836864
+ .long 0
+ .long 0
+ .long 0
+ .long 3212836864
+ .long 966649823
+ .long 3167292080
+ .long 805685656
+ .long 3212836864
+ .long 983425480
+ .long 3175676720
+ .long 820978303
+ .long 3212836864
+ .long 993104536
+ .long 3180767493
+ .long 827530849
+ .long 3212836864
+ .long 1000196465
+ .long 3184049462
+ .long 813011701
+ .long 3212836864
+ .long 1006005820
+ .long 3187323507
+ .long 823486671
+ .long 3212836864
+ .long 1009865986
+ .long 3189129347
+ .long 2984830484
+ .long 3212836864
+ .long 1014052363
+ .long 3190755490
+ .long 2970707961
+ .long 3212836864
+ .long 1016948784
+ .long 3192374722
+ .long 820352637
+ .long 3212836864
+ .long 1019677780
+ .long 3193986067
+ .long 2980570358
+ .long 3212836864
+ .long 1022722308
+ .long 3195588556
+ .long 823907357
+ .long 3212836864
+ .long 1024745356
+ .long 3196620435
+ .long 2972482974
+ .long 3212836864
+ .long 1026580309
+ .long 3197411377
+ .long 2993510896
+ .long 3212836864
+ .long 1028569994
+ .long 3198196453
+ .long 842959264
+ .long 3212836864
+ .long 1030713214
+ .long 3198975188
+ .long 841305602
+ .long 3212836864
+ .long 1032403730
+ .long 3199747114
+ .long 846224294
+ .long 3212836864
+ .long 1033626892
+ .long 3200511765
+ .long 2983580972
+ .long 3212836864
+ .long 1034924748
+ .long 3201268682
+ .long 2976529251
+ .long 3212836864
+ .long 1036296515
+ .long 3202017408
+ .long 2988316108
+ .long 3212836864
+ .long 1037741368
+ .long 3202757493
+ .long 836355956
+ .long 3212836864
+ .long 1039258436
+ .long 3203488490
+ .long 838803769
+ .long 3212836864
+ .long 1040517098
+ .long 3204209959
+ .long 830532777
+ .long 3212836864
+ .long 1041346455
+ .long 3204684861
+ .long 844865538
+ .long 3212836864
+ .long 1042210485
+ .long 3205035419
+ .long 851331918
+ .long 3212836864
+ .long 1043108667
+ .long 3205380570
+ .long 843723495
+ .long 3212836864
+ .long 1044040460
+ .long 3205720106
+ .long 2999832878
+ .long 3212836864
+ .long 1045005303
+ .long 3206053824
+ .long 835167219
+ .long 3212836864
+ .long 1046002615
+ .long 3206381521
+ .long 2995913996
+ .long 3212836864
+ .long 1047031795
+ .long 3206703001
+ .long 2988516283
+ .long 3212836864
+ .long 1048092223
+ .long 3207018070
+ .long 839091011
+ .long 3212836864
+ .long 1048879630
+ .long 3207326538
+ .long 850866486
+ .long 3212836864
+ .long 1049440125
+ .long 3207628219
+ .long 850275634
+ .long 3212836864
+ .long 1050015258
+ .long 3207922931
+ .long 2991581050
+ .long 3212836864
+ .long 3192002283
+ .long 3208210498
+ .long 847314951
+ .long 3204448256
+ .long 3190795559
+ .long 3208490745
+ .long 2979703788
+ .long 3204448256
+ .long 3189561687
+ .long 3208763504
+ .long 2998925687
+ .long 3204448256
+ .long 3188301413
+ .long 3209028611
+ .long 2997965172
+ .long 3204448256
+ .long 3186359946
+ .long 3209285906
+ .long 2996381248
+ .long 3204448256
+ .long 3183738367
+ .long 3209535234
+ .long 2994630888
+ .long 3204448256
+ .long 3181068627
+ .long 3209776445
+ .long 2953596676
+ .long 3204448256
+ .long 3177422237
+ .long 3210009393
+ .long 2995841562
+ .long 3204448256
+ .long 3171899818
+ .long 3210233939
+ .long 847077312
+ .long 3204448256
+ .long 3160870706
+ .long 3210449946
+ .long 2988649928
+ .long 3204448256
+ .long 1005106760
+ .long 3210657285
+ .long 2999384403
+ .long 3204448256
+ .long 1021989220
+ .long 3210855832
+ .long 854062117
+ .long 3204448256
+ .long 1028547674
+ .long 3211045465
+ .long 2971273466
+ .long 3204448256
+ .long 1033133567
+ .long 3211226072
+ .long 851194761
+ .long 3204448256
+ .long 1036128472
+ .long 3211397543
+ .long 854270828
+ .long 3204448256
+ .long 1039156139
+ .long 3211559774
+ .long 3002280148
+ .long 3204448256
+ .long 1041201069
+ .long 3211712670
+ .long 848507868
+ .long 3204448256
+ .long 3182555983
+ .long 3211856136
+ .long 2988363997
+ .long 3196059648
+ .long 3179441043
+ .long 3211990087
+ .long 2999225873
+ .long 3196059648
+ .long 3173319052
+ .long 3212114443
+ .long 848534818
+ .long 3196059648
+ .long 3163089201
+ .long 3212229127
+ .long 2993490220
+ .long 3196059648
+ .long 1004930693
+ .long 3212334072
+ .long 839760357
+ .long 3196059648
+ .long 1023221605
+ .long 3212429213
+ .long 2999340633
+ .long 3196059648
+ .long 1029761272
+ .long 3212514494
+ .long 3003086283
+ .long 3196059648
+ .long 3174843017
+ .long 3212589864
+ .long 842126987
+ .long 3187671040
+ .long 3165783068
+ .long 3212655276
+ .long 821517033
+ .long 3187671040
+ .long 992588201
+ .long 3212710692
+ .long 854713859
+ .long 3187671040
+ .long 1021119272
+ .long 3212756077
+ .long 2985576777
+ .long 3187671040
+ .long 3157608485
+ .long 3212791405
+ .long 2999982212
+ .long 3179282432
+ .long 1012667202
+ .long 3212816655
+ .long 2984139615
+ .long 3179282432
+ .long 1004262721
+ .long 3212831811
+ .long 2961493261
+ .long 3170893824
+ .long 0
+ .long 3212836864
+ .long 0
+ .long 0
+ .long 3151746369
+ .long 3212831811
+ .long 2961493261
+ .long 1023410176
+ .long 3160150850
+ .long 3212816655
+ .long 2984139615
+ .long 1031798784
+ .long 1010124837
+ .long 3212791405
+ .long 2999982212
+ .long 1031798784
+ .long 3168602920
+ .long 3212756077
+ .long 2985576777
+ .long 1040187392
+ .long 3140071849
+ .long 3212710692
+ .long 854713859
+ .long 1040187392
+ .long 1018299420
+ .long 3212655276
+ .long 821517033
+ .long 1040187392
+ .long 1027359369
+ .long 3212589864
+ .long 842126987
+ .long 1040187392
+ .long 3177244920
+ .long 3212514494
+ .long 3003086283
+ .long 1048576000
+ .long 3170705253
+ .long 3212429213
+ .long 2999340633
+ .long 1048576000
+ .long 3152414341
+ .long 3212334072
+ .long 839760357
+ .long 1048576000
+ .long 1015605553
+ .long 3212229127
+ .long 2993490220
+ .long 1048576000
+ .long 1025835404
+ .long 3212114443
+ .long 848534818
+ .long 1048576000
+ .long 1031957395
+ .long 3211990087
+ .long 2999225873
+ .long 1048576000
+ .long 1035072335
+ .long 3211856136
+ .long 2988363997
+ .long 1048576000
+ .long 3188684717
+ .long 3211712670
+ .long 848507868
+ .long 1056964608
+ .long 3186639787
+ .long 3211559774
+ .long 3002280148
+ .long 1056964608
+ .long 3183612120
+ .long 3211397543
+ .long 854270828
+ .long 1056964608
+ .long 3180617215
+ .long 3211226072
+ .long 851194761
+ .long 1056964608
+ .long 3176031322
+ .long 3211045465
+ .long 2971273466
+ .long 1056964608
+ .long 3169472868
+ .long 3210855832
+ .long 854062117
+ .long 1056964608
+ .long 3152590408
+ .long 3210657285
+ .long 2999384403
+ .long 1056964608
+ .long 1013387058
+ .long 3210449946
+ .long 2988649928
+ .long 1056964608
+ .long 1024416170
+ .long 3210233939
+ .long 847077312
+ .long 1056964608
+ .long 1029938589
+ .long 3210009393
+ .long 2995841562
+ .long 1056964608
+ .long 1033584979
+ .long 3209776445
+ .long 2953596676
+ .long 1056964608
+ .long 1036254719
+ .long 3209535234
+ .long 2994630888
+ .long 1056964608
+ .long 1038876298
+ .long 3209285906
+ .long 2996381248
+ .long 1056964608
+ .long 1040817765
+ .long 3209028611
+ .long 2997965172
+ .long 1056964608
+ .long 1042078039
+ .long 3208763504
+ .long 2998925687
+ .long 1056964608
+ .long 1043311911
+ .long 3208490745
+ .long 2979703788
+ .long 1056964608
+ .long 1044518635
+ .long 3208210498
+ .long 847314951
+ .long 1056964608
+ .long 3197498906
+ .long 3207922931
+ .long 2991581050
+ .long 1065353216
+ .long 3196923773
+ .long 3207628219
+ .long 850275634
+ .long 1065353216
+ .long 3196363278
+ .long 3207326538
+ .long 850866486
+ .long 1065353216
+ .long 3195575871
+ .long 3207018070
+ .long 839091011
+ .long 1065353216
+ .long 3194515443
+ .long 3206703001
+ .long 2988516283
+ .long 1065353216
+ .long 3193486263
+ .long 3206381521
+ .long 2995913996
+ .long 1065353216
+ .long 3192488951
+ .long 3206053824
+ .long 835167219
+ .long 1065353216
+ .long 3191524108
+ .long 3205720106
+ .long 2999832878
+ .long 1065353216
+ .long 3190592315
+ .long 3205380570
+ .long 843723495
+ .long 1065353216
+ .long 3189694133
+ .long 3205035419
+ .long 851331918
+ .long 1065353216
+ .long 3188830103
+ .long 3204684861
+ .long 844865538
+ .long 1065353216
+ .long 3188000746
+ .long 3204209959
+ .long 830532777
+ .long 1065353216
+ .long 3186742084
+ .long 3203488490
+ .long 838803769
+ .long 1065353216
+ .long 3185225016
+ .long 3202757493
+ .long 836355956
+ .long 1065353216
+ .long 3183780163
+ .long 3202017408
+ .long 2988316108
+ .long 1065353216
+ .long 3182408396
+ .long 3201268682
+ .long 2976529251
+ .long 1065353216
+ .long 3181110540
+ .long 3200511765
+ .long 2983580972
+ .long 1065353216
+ .long 3179887378
+ .long 3199747114
+ .long 846224294
+ .long 1065353216
+ .long 3178196862
+ .long 3198975188
+ .long 841305602
+ .long 1065353216
+ .long 3176053642
+ .long 3198196453
+ .long 842959264
+ .long 1065353216
+ .long 3174063957
+ .long 3197411377
+ .long 2993510896
+ .long 1065353216
+ .long 3172229004
+ .long 3196620435
+ .long 2972482974
+ .long 1065353216
+ .long 3170205956
+ .long 3195588556
+ .long 823907357
+ .long 1065353216
+ .long 3167161428
+ .long 3193986067
+ .long 2980570358
+ .long 1065353216
+ .long 3164432432
+ .long 3192374722
+ .long 820352637
+ .long 1065353216
+ .long 3161536011
+ .long 3190755490
+ .long 2970707961
+ .long 1065353216
+ .long 3157349634
+ .long 3189129347
+ .long 2984830484
+ .long 1065353216
+ .long 3153489468
+ .long 3187323507
+ .long 823486671
+ .long 1065353216
+ .long 3147680113
+ .long 3184049462
+ .long 813011701
+ .long 1065353216
+ .long 3140588184
+ .long 3180767493
+ .long 827530849
+ .long 1065353216
+ .long 3130909128
+ .long 3175676720
+ .long 820978303
+ .long 1065353216
+ .long 3114133471
+ .long 3167292080
+ .long 805685656
+ .long 1065353216
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 1176256512
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 3190467243
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 1007192156
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 3204448256
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1026206332
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 1078525952
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 981311488
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 874651648
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 750018842
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 1078530011
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 3015425326
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 2809605357
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 3190467238
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 1007191910
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 3109009407
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 909041400
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1050868099
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .type __svml_ssin_data_internal,@object
+ .size __svml_ssin_data_internal,5376
+ .align 64
+__svml_ssin_reduction_data_internal:
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1
+ .long 0
+ .long 0
+ .long 2
+ .long 0
+ .long 0
+ .long 5
+ .long 0
+ .long 0
+ .long 10
+ .long 0
+ .long 0
+ .long 20
+ .long 0
+ .long 0
+ .long 40
+ .long 0
+ .long 0
+ .long 81
+ .long 0
+ .long 0
+ .long 162
+ .long 0
+ .long 0
+ .long 325
+ .long 0
+ .long 0
+ .long 651
+ .long 0
+ .long 0
+ .long 1303
+ .long 0
+ .long 0
+ .long 2607
+ .long 0
+ .long 0
+ .long 5215
+ .long 0
+ .long 0
+ .long 10430
+ .long 0
+ .long 0
+ .long 20860
+ .long 0
+ .long 0
+ .long 41721
+ .long 0
+ .long 0
+ .long 83443
+ .long 0
+ .long 0
+ .long 166886
+ .long 0
+ .long 0
+ .long 333772
+ .long 0
+ .long 0
+ .long 667544
+ .long 0
+ .long 0
+ .long 1335088
+ .long 0
+ .long 0
+ .long 2670176
+ .long 0
+ .long 0
+ .long 5340353
+ .long 0
+ .long 0
+ .long 10680707
+ .long 0
+ .long 0
+ .long 21361414
+ .long 0
+ .long 0
+ .long 42722829
+ .long 0
+ .long 0
+ .long 85445659
+ .long 0
+ .long 0
+ .long 170891318
+ .long 0
+ .long 0
+ .long 341782637
+ .long 0
+ .long 0
+ .long 683565275
+ .long 0
+ .long 0
+ .long 1367130551
+ .long 0
+ .long 0
+ .long 2734261102
+ .long 0
+ .long 1
+ .long 1173554908
+ .long 0
+ .long 2
+ .long 2347109817
+ .long 0
+ .long 5
+ .long 399252338
+ .long 0
+ .long 10
+ .long 798504676
+ .long 0
+ .long 20
+ .long 1597009353
+ .long 0
+ .long 40
+ .long 3194018707
+ .long 0
+ .long 81
+ .long 2093070119
+ .long 0
+ .long 162
+ .long 4186140238
+ .long 0
+ .long 325
+ .long 4077313180
+ .long 0
+ .long 651
+ .long 3859659065
+ .long 0
+ .long 1303
+ .long 3424350834
+ .long 0
+ .long 2607
+ .long 2553734372
+ .long 0
+ .long 5215
+ .long 812501448
+ .long 0
+ .long 10430
+ .long 1625002897
+ .long 0
+ .long 20860
+ .long 3250005794
+ .long 0
+ .long 41721
+ .long 2205044292
+ .long 0
+ .long 83443
+ .long 115121288
+ .long 0
+ .long 166886
+ .long 230242576
+ .long 0
+ .long 333772
+ .long 460485152
+ .long 0
+ .long 667544
+ .long 920970305
+ .long 0
+ .long 1335088
+ .long 1841940610
+ .long 0
+ .long 2670176
+ .long 3683881221
+ .long 0
+ .long 5340353
+ .long 3072795146
+ .long 0
+ .long 10680707
+ .long 1850622997
+ .long 0
+ .long 21361414
+ .long 3701245994
+ .long 0
+ .long 42722829
+ .long 3107524692
+ .long 0
+ .long 85445659
+ .long 1920082089
+ .long 0
+ .long 170891318
+ .long 3840164178
+ .long 0
+ .long 341782637
+ .long 3385361061
+ .long 0
+ .long 683565275
+ .long 2475754826
+ .long 0
+ .long 1367130551
+ .long 656542356
+ .long 0
+ .long 2734261102
+ .long 1313084713
+ .long 1
+ .long 1173554908
+ .long 2626169427
+ .long 2
+ .long 2347109817
+ .long 957371559
+ .long 5
+ .long 399252338
+ .long 1914743119
+ .long 10
+ .long 798504676
+ .long 3829486239
+ .long 20
+ .long 1597009353
+ .long 3364005183
+ .long 40
+ .long 3194018707
+ .long 2433043071
+ .long 81
+ .long 2093070119
+ .long 571118846
+ .long 162
+ .long 4186140238
+ .long 1142237692
+ .long 325
+ .long 4077313180
+ .long 2284475384
+ .long 651
+ .long 3859659065
+ .long 273983472
+ .long 1303
+ .long 3424350834
+ .long 547966945
+ .long 2607
+ .long 2553734372
+ .long 1095933890
+ .long 5215
+ .long 812501448
+ .long 2191867780
+ .long 10430
+ .long 1625002897
+ .long 88768265
+ .long 20860
+ .long 3250005794
+ .long 177536531
+ .long 41721
+ .long 2205044292
+ .long 355073063
+ .long 83443
+ .long 115121288
+ .long 710146126
+ .long 166886
+ .long 230242576
+ .long 1420292253
+ .long 333772
+ .long 460485152
+ .long 2840584506
+ .long 667544
+ .long 920970305
+ .long 1386201717
+ .long 1335088
+ .long 1841940610
+ .long 2772403434
+ .long 2670176
+ .long 3683881221
+ .long 1249839573
+ .long 5340353
+ .long 3072795146
+ .long 2499679147
+ .long 10680707
+ .long 1850622997
+ .long 704390999
+ .long 21361414
+ .long 3701245994
+ .long 1408781999
+ .long 42722829
+ .long 3107524692
+ .long 2817563999
+ .long 85445659
+ .long 1920082089
+ .long 1340160702
+ .long 170891318
+ .long 3840164178
+ .long 2680321405
+ .long 341782637
+ .long 3385361061
+ .long 1065675514
+ .long 683565275
+ .long 2475754826
+ .long 2131351028
+ .long 1367130551
+ .long 656542356
+ .long 4262702056
+ .long 2734261102
+ .long 1313084713
+ .long 4230436817
+ .long 1173554908
+ .long 2626169427
+ .long 4165906339
+ .long 2347109817
+ .long 957371559
+ .long 4036845383
+ .long 399252338
+ .long 1914743119
+ .long 3778723471
+ .long 798504676
+ .long 3829486239
+ .long 3262479647
+ .long 1597009353
+ .long 3364005183
+ .long 2229991998
+ .long 3194018707
+ .long 2433043071
+ .long 165016701
+ .long 2093070119
+ .long 571118846
+ .long 330033402
+ .long 4186140238
+ .long 1142237692
+ .long 660066805
+ .long 4077313180
+ .long 2284475384
+ .long 1320133610
+ .long 3859659065
+ .long 273983472
+ .long 2640267220
+ .long 3424350834
+ .long 547966945
+ .long 985567145
+ .long 2553734372
+ .long 1095933890
+ .long 1971134291
+ .long 812501448
+ .long 2191867780
+ .long 3942268582
+ .long 1625002897
+ .long 88768265
+ .long 3589569869
+ .long 3250005794
+ .long 177536531
+ .long 2884172442
+ .long 2205044292
+ .long 355073063
+ .long 1473377588
+ .long 115121288
+ .long 710146126
+ .long 2946755177
+ .long 230242576
+ .long 1420292253
+ .long 1598543059
+ .long 460485152
+ .long 2840584506
+ .long 3197086118
+ .long 920970305
+ .long 1386201717
+ .long 2099204941
+ .long 1841940610
+ .long 2772403434
+ .long 4198409883
+ .long 3683881221
+ .long 1249839573
+ .long 4101852471
+ .long 3072795146
+ .long 2499679147
+ .long 3908737646
+ .long 1850622997
+ .long 704390999
+ .long 3522507997
+ .long 3701245994
+ .long 1408781999
+ .long 2750048699
+ .long 3107524692
+ .long 2817563999
+ .long 1205130103
+ .long 1920082089
+ .long 1340160702
+ .long 2410260206
+ .long 3840164178
+ .long 2680321405
+ .long 525553116
+ .long 3385361061
+ .long 1065675514
+ .long 1051106232
+ .long 2475754826
+ .long 2131351028
+ .long 2102212464
+ .long 656542356
+ .long 4262702056
+ .long 4204424928
+ .long 1313084713
+ .long 4230436817
+ .long 4113882560
+ .long 2626169427
+ .long 4165906339
+ .long 3932797825
+ .long 957371559
+ .long 4036845383
+ .long 3570628355
+ .long 1914743119
+ .long 3778723471
+ .long 2846289414
+ .long 3829486239
+ .long 3262479647
+ .long 1397611533
+ .long 3364005183
+ .long 2229991998
+ .long 2795223067
+ .long 2433043071
+ .long 165016701
+ .long 1295478838
+ .long 571118846
+ .long 330033402
+ .long 2590957677
+ .long 1142237692
+ .long 660066805
+ .long 886948059
+ .long 2284475384
+ .long 1320133610
+ .long 1773896118
+ .long 273983472
+ .long 2640267220
+ .long 3547792237
+ .long 547966945
+ .long 985567145
+ .long 2800617179
+ .long 1095933890
+ .long 1971134291
+ .long 1306267062
+ .long 2191867780
+ .long 3942268582
+ .long 2612534124
+ .long 88768265
+ .long 3589569869
+ .long 930100952
+ .long 177536531
+ .long 2884172442
+ .long 1860201905
+ .long 355073063
+ .long 1473377588
+ .long 3720403810
+ .long 710146126
+ .long 2946755177
+ .long 3145840325
+ .long 1420292253
+ .long 1598543059
+ .long 1996713354
+ .long 2840584506
+ .long 3197086118
+ .long 3993426708
+ .long 1386201717
+ .long 2099204941
+ .long 3691886121
+ .long 2772403434
+ .long 4198409883
+ .long 3088804946
+ .long 1249839573
+ .long 4101852471
+ .long 1882642597
+ .long 2499679147
+ .long 3908737646
+ .long 3765285194
+ .long 704390999
+ .long 3522507997
+ .long 3235603093
+ .long 1408781999
+ .long 2750048699
+ .long 2176238891
+ .long 2817563999
+ .long 1205130103
+ .long 57510486
+ .long 1340160702
+ .long 2410260206
+ .long 115020972
+ .long 2680321405
+ .long 525553116
+ .long 230041945
+ .long 1065675514
+ .long 1051106232
+ .long 460083891
+ .long 2131351028
+ .long 2102212464
+ .long 920167782
+ .long 4262702056
+ .long 4204424928
+ .long 1840335564
+ .long 4230436817
+ .long 4113882560
+ .long 3680671129
+ .long 4165906339
+ .long 3932797825
+ .long 3066374962
+ .long 4036845383
+ .long 3570628355
+ .long 1837782628
+ .long 3778723471
+ .long 2846289414
+ .long 3675565257
+ .long 3262479647
+ .long 1397611533
+ .long 3056163219
+ .long 2229991998
+ .long 2795223067
+ .long 1817359143
+ .long 165016701
+ .long 1295478838
+ .long 3634718287
+ .long 330033402
+ .long 2590957677
+ .long 2974469278
+ .long 660066805
+ .long 886948059
+ .long 1653971260
+ .long 1320133610
+ .long 1773896118
+ .long 3307942520
+ .long 2640267220
+ .long 3547792237
+ .long 2320917745
+ .long 985567145
+ .long 2800617179
+ .long 346868194
+ .long 1971134291
+ .long 1306267062
+ .long 693736388
+ .long 3942268582
+ .long 2612534124
+ .long 1387472776
+ .long 3589569869
+ .long 930100952
+ .long 2774945552
+ .long 2884172442
+ .long 1860201905
+ .long 1254923809
+ .long 1473377588
+ .long 3720403810
+ .long 2509847619
+ .long 2946755177
+ .long 3145840325
+ .long 724727943
+ .long 1598543059
+ .long 1996713354
+ .long 1449455886
+ .long 3197086118
+ .long 3993426708
+ .long 2898911772
+ .long 2099204941
+ .long 3691886121
+ .long 1502856249
+ .long 4198409883
+ .long 3088804946
+ .long 3005712498
+ .long 4101852471
+ .long 1882642597
+ .long 1716457700
+ .long 3908737646
+ .long 3765285194
+ .long 3432915400
+ .long 3522507997
+ .long 3235603093
+ .long 2570863504
+ .long 2750048699
+ .long 2176238891
+ .long 846759712
+ .long 1205130103
+ .long 57510486
+ .long 1693519425
+ .long 2410260206
+ .long 115020972
+ .long 3387038850
+ .long 525553116
+ .long 230041945
+ .long 2479110404
+ .long 1051106232
+ .long 460083891
+ .long 663253512
+ .long 2102212464
+ .long 920167782
+ .long 1326507024
+ .long 4204424928
+ .long 1840335564
+ .long 2653014048
+ .long 4113882560
+ .long 3680671129
+ .long 1011060801
+ .long 3932797825
+ .long 3066374962
+ .long 2022121603
+ .long 3570628355
+ .long 1837782628
+ .long 4044243207
+ .long 2846289414
+ .long 3675565257
+ .long 3793519119
+ .long 1397611533
+ .long 3056163219
+ .long 3292070943
+ .long 2795223067
+ .long 1817359143
+ .long 2289174591
+ .long 1295478838
+ .long 3634718287
+ .long 283381887
+ .long 2590957677
+ .long 2974469278
+ .long 566763775
+ .type __svml_ssin_reduction_data_internal,@object
+ .size __svml_ssin_reduction_data_internal,3072
+ .align 4
+__ssin_la__vmlsSinHATab:
+ .long 0
+ .long 2139095040
+ .type __ssin_la__vmlsSinHATab,@object
+ .size __ssin_la__vmlsSinHATab,8
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+
+ .text
+.L_2__routine_start___svml_sinh8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_sinh8
+
+__svml_sinh8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ lea 1608+__svml_dsinh_data_internal(%rip), %rax
+ vmovaps %zmm0, %zmm8
+
+/* ............... Abs argument ............................ */
+ vandpd 1408+__svml_dsinh_data_internal(%rip), %zmm8, %zmm7
+ vmovups 3648+__svml_dsinh_data_internal(%rip), %zmm13
+
+/*
+ * ............... Load argument ............................
+ * dM = x*2^K/log(2) + RShifter
+ */
+ vmovups 1216+__svml_dsinh_data_internal(%rip), %zmm12
+ vmovups 1280+__svml_dsinh_data_internal(%rip), %zmm14
+ vmovups 4032+__svml_dsinh_data_internal(%rip), %zmm6
+
+/* VLOAD_CONST( D, dPC[0], TAB._dPC1 ); */
+ vmovups 3968+__svml_dsinh_data_internal(%rip), %zmm4
+ vxorpd %zmm8, %zmm7, %zmm5
+ kxnorw %k0, %k0, %k1
+ kxnorw %k0, %k0, %k2
+ vfmadd213pd {rn-sae}, %zmm13, %zmm5, %zmm12
+
+/*
+ * ...............Check for overflow\underflow .............
+ *
+ */
+ vpsrlq $32, %zmm5, %zmm9
+
+/*
+ * ................... R ...................................
+ * dN = dM - RShifter
+ */
+ vsubpd {rn-sae}, %zmm13, %zmm12, %zmm2
+ vpmovqd %zmm9, %ymm10
+ vmovups 1344+__svml_dsinh_data_internal(%rip), %zmm9
+
+/* dR = dX - dN*Log2_hi/2^K */
+ vfnmadd231pd {rn-sae}, %zmm14, %zmm2, %zmm5
+
+/*
+ * ....sinh(r) = r*((a1=1)+r^2*(a3+r^2*a5)) = r + r*(r^2*(a3+r^2*a5)) ....
+ * dSinh_r = (a3+r^2*a5)
+ */
+ vmovups 3904+__svml_dsinh_data_internal(%rip), %zmm14
+
+/* dR = (dX - dN*Log2_hi/2^K) - dN*Log2_lo/2^K */
+ vfnmadd231pd {rn-sae}, %zmm9, %zmm2, %zmm5
+ vpcmpgtd 3712+__svml_dsinh_data_internal(%rip), %ymm10, %ymm11
+ vmovmskps %ymm11, %edx
+
+/* dR2 = dR^2 */
+ vmulpd {rn-sae}, %zmm5, %zmm5, %zmm2
+ vfmadd231pd {rn-sae}, %zmm2, %zmm6, %zmm14
+
+/*
+ * .............. Index and lookup .........................
+ * j
+ */
+ vpandq 4224+__svml_dsinh_data_internal(%rip), %zmm12, %zmm15
+ vpsllq $4, %zmm15, %zmm1
+ vpmovqd %zmm1, %ymm0
+ vpxord %zmm11, %zmm11, %zmm11
+ vpxord %zmm10, %zmm10, %zmm10
+ vgatherdpd (%rax,%ymm0), %zmm11{%k1}
+ vgatherdpd -8(%rax,%ymm0), %zmm10{%k2}
+
+/* split j and N */
+ vpxorq %zmm15, %zmm12, %zmm3
+
+/*
+ * ............... G1,G2,G3: dTdif,dTn * 2^N,2^(-N) ...........
+ * lM now is an EXP(2^N)
+ */
+ vpsllq $45, %zmm3, %zmm3
+ vpaddq %zmm3, %zmm10, %zmm1
+
+/* */
+ vpaddq %zmm3, %zmm11, %zmm12
+
+/* */
+ vpsubq %zmm3, %zmm11, %zmm13
+
+/* dSinh_r = r^2*(a3+r^2*a5) */
+ vmulpd {rn-sae}, %zmm2, %zmm14, %zmm3
+
+/* dG2 = dTn*2^N - dTn*2^-N */
+ vsubpd {rn-sae}, %zmm13, %zmm12, %zmm15
+
+/* dG3 = dTn*2^N + dTn*2^-N */
+ vaddpd {rn-sae}, %zmm13, %zmm12, %zmm0
+
+/* dSinh_r = r + r*(r^2*(a3+r^2*a5)) */
+ vfmadd213pd {rn-sae}, %zmm5, %zmm5, %zmm3
+
+/*
+ * poly(r) = (dG2+dG1)+dG3*sinh(dR)+dG1*sinh(dR)+(dG1+dG2)*dR2*(a2 +a4*dR2)
+ * dOut = (a2 +a4*dR2)
+ */
+ vmovups 3840+__svml_dsinh_data_internal(%rip), %zmm5
+
+/* dG1 += dG3 */
+ vaddpd {rn-sae}, %zmm0, %zmm1, %zmm6
+ vfmadd231pd {rn-sae}, %zmm2, %zmm4, %zmm5
+
+/* dOut = dR2*(a2 +a4*dR2) */
+ vmulpd {rn-sae}, %zmm2, %zmm5, %zmm4
+
+/* dG2 += dG1 */
+ vaddpd {rn-sae}, %zmm15, %zmm1, %zmm2
+
+/* dOut = dG2*dR2*(a2 +a4*dR2) */
+ vmulpd {rn-sae}, %zmm2, %zmm4, %zmm4
+
+/* dOut = dG1*sinh(dR)+dG2*dR2*(a2 +a4*dR2) */
+ vfmadd213pd {rn-sae}, %zmm4, %zmm6, %zmm3
+
+/* dOut = dG2 + dG1*sinh(dR)+dG2*dR2*(a2 +a4*dR2) */
+ vaddpd {rn-sae}, %zmm2, %zmm3, %zmm0
+
+/* ................... Ret H ...................... */
+ vorpd %zmm0, %zmm7, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm8, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dsinh_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_sinh8,@function
+ .size __svml_sinh8,.-__svml_sinh8
+..LN__svml_sinh8.0:
+
+.L_2__routine_start___svml_dsinh_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dsinh_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ movq %rsi, %r9
+ movzwl 6(%rdi), %ecx
+ xorl %eax, %eax
+ andl $32752, %ecx
+ shrl $4, %ecx
+ movsd (%rdi), %xmm2
+ movb 7(%rdi), %dl
+ movsd %xmm2, -8(%rsp)
+ cmpl $2047, %ecx
+ je .LBL_2_17
+
+
+ testl %ecx, %ecx
+ jle .LBL_2_16
+
+
+ andb $127, %dl
+ movsd %xmm2, -32(%rsp)
+ movb %dl, -25(%rsp)
+ cmpl $969, %ecx
+ jle .LBL_2_14
+
+
+ movsd -32(%rsp), %xmm0
+ movsd 1136+__dsinh_la_CoutTab(%rip), %xmm1
+ comisd %xmm0, %xmm1
+ jbe .LBL_2_13
+
+
+ movsd 1184+__dsinh_la_CoutTab(%rip), %xmm1
+ comisd %xmm0, %xmm1
+ jbe .LBL_2_9
+
+
+ comisd 1176+__dsinh_la_CoutTab(%rip), %xmm0
+ jb .LBL_2_8
+
+
+ movsd 1112+__dsinh_la_CoutTab(%rip), %xmm1
+ lea __dsinh_la_CoutTab(%rip), %rcx
+ mulsd %xmm0, %xmm1
+ movsd 1144+__dsinh_la_CoutTab(%rip), %xmm4
+ movq 8+__dsinh_la_CoutTab(%rip), %r10
+ movq %r10, %rsi
+ shrq $48, %rsi
+ addsd 1120+__dsinh_la_CoutTab(%rip), %xmm1
+ movsd %xmm1, -40(%rsp)
+ andl $-32753, %esi
+ movsd -40(%rsp), %xmm10
+ movl -40(%rsp), %r8d
+ movl %r8d, %r11d
+ shrl $6, %r11d
+ andl $63, %r8d
+ movq %r10, -16(%rsp)
+ subsd 1120+__dsinh_la_CoutTab(%rip), %xmm10
+ mulsd %xmm10, %xmm4
+ lea 1023(%r11), %edi
+ xorps .L_2il0floatpacket.97(%rip), %xmm10
+ addl $1022, %r11d
+ mulsd 1152+__dsinh_la_CoutTab(%rip), %xmm10
+ subsd %xmm4, %xmm0
+ movaps %xmm10, %xmm2
+ movaps %xmm0, %xmm8
+ andl $2047, %r11d
+ lea (%r8,%r8), %edx
+ negl %edi
+ lea 1(%r8,%r8), %r8d
+ movsd (%rcx,%rdx,8), %xmm9
+ negl %edx
+ shll $4, %r11d
+ addl $-4, %edi
+ orl %r11d, %esi
+ andl $2047, %edi
+ movw %si, -10(%rsp)
+ andl $-32753, %esi
+ shll $4, %edi
+ addsd %xmm0, %xmm2
+ movsd %xmm2, -24(%rsp)
+ orl %edi, %esi
+ movsd -24(%rsp), %xmm6
+ movsd 1128+__dsinh_la_CoutTab(%rip), %xmm2
+ subsd %xmm6, %xmm8
+ movsd %xmm8, -56(%rsp)
+ movsd -24(%rsp), %xmm12
+ movsd -56(%rsp), %xmm11
+ movsd (%rcx,%r8,8), %xmm7
+ addsd %xmm11, %xmm12
+ movsd %xmm12, -48(%rsp)
+ movsd -56(%rsp), %xmm5
+ addsd %xmm5, %xmm10
+ movsd -16(%rsp), %xmm5
+ mulsd %xmm5, %xmm9
+ mulsd %xmm5, %xmm7
+ movsd %xmm10, -56(%rsp)
+ movaps %xmm9, %xmm10
+ movsd -48(%rsp), %xmm13
+ movw %si, -10(%rsp)
+ lea 128(%rdx), %esi
+ movsd -16(%rsp), %xmm14
+ addl $129, %edx
+ subsd %xmm13, %xmm0
+ movsd %xmm0, -48(%rsp)
+ movsd -56(%rsp), %xmm1
+ movsd -48(%rsp), %xmm15
+ addsd %xmm15, %xmm1
+ movsd %xmm1, -48(%rsp)
+ movsd -24(%rsp), %xmm4
+ mulsd %xmm4, %xmm2
+ movaps %xmm4, %xmm3
+ mulsd %xmm4, %xmm3
+ movsd -48(%rsp), %xmm1
+ movaps %xmm4, %xmm0
+ movsd %xmm2, -24(%rsp)
+ movsd -24(%rsp), %xmm6
+ movsd 1064+__dsinh_la_CoutTab(%rip), %xmm2
+ subsd %xmm4, %xmm6
+ mulsd %xmm3, %xmm2
+ movsd %xmm6, -56(%rsp)
+ movsd -24(%rsp), %xmm11
+ movsd -56(%rsp), %xmm8
+ subsd %xmm8, %xmm11
+ addsd 1048+__dsinh_la_CoutTab(%rip), %xmm2
+ movsd %xmm11, -24(%rsp)
+ movsd 1072+__dsinh_la_CoutTab(%rip), %xmm11
+ mulsd %xmm3, %xmm11
+ mulsd %xmm3, %xmm2
+ addsd 1056+__dsinh_la_CoutTab(%rip), %xmm11
+ mulsd %xmm4, %xmm2
+ mulsd %xmm3, %xmm11
+ movsd -24(%rsp), %xmm12
+ addsd 1040+__dsinh_la_CoutTab(%rip), %xmm11
+ subsd %xmm12, %xmm0
+ mulsd %xmm3, %xmm11
+ movsd (%rcx,%rsi,8), %xmm3
+ movaps %xmm9, %xmm12
+ mulsd %xmm14, %xmm3
+ movsd %xmm0, -56(%rsp)
+ subsd %xmm3, %xmm10
+ movsd -24(%rsp), %xmm8
+ movsd -56(%rsp), %xmm6
+ movsd %xmm10, -24(%rsp)
+ movsd -24(%rsp), %xmm13
+ movsd (%rcx,%rdx,8), %xmm0
+ subsd %xmm13, %xmm12
+ mulsd %xmm14, %xmm0
+ subsd %xmm3, %xmm12
+ movsd %xmm12, -56(%rsp)
+ movsd -24(%rsp), %xmm14
+ movsd -56(%rsp), %xmm12
+ movaps %xmm14, %xmm5
+ movb -1(%rsp), %cl
+ addsd %xmm7, %xmm12
+ addsd %xmm0, %xmm7
+ subsd %xmm0, %xmm12
+ andb $-128, %cl
+ addsd %xmm12, %xmm5
+ movsd %xmm5, -24(%rsp)
+ movaps %xmm9, %xmm5
+ movsd -24(%rsp), %xmm15
+ addsd %xmm3, %xmm5
+ subsd %xmm15, %xmm14
+ addsd %xmm14, %xmm12
+ movsd %xmm12, -56(%rsp)
+ movsd -24(%rsp), %xmm10
+ movsd -56(%rsp), %xmm12
+ movsd %xmm5, -24(%rsp)
+ movsd -24(%rsp), %xmm13
+ subsd %xmm13, %xmm9
+ addsd %xmm9, %xmm3
+ movsd %xmm3, -56(%rsp)
+ movsd -24(%rsp), %xmm3
+ movsd -56(%rsp), %xmm5
+ addsd %xmm7, %xmm5
+ movaps %xmm3, %xmm7
+ addsd %xmm5, %xmm7
+ movsd %xmm7, -24(%rsp)
+ movsd -24(%rsp), %xmm9
+ movsd 1128+__dsinh_la_CoutTab(%rip), %xmm7
+ subsd %xmm9, %xmm3
+ addsd %xmm3, %xmm5
+ movsd %xmm5, -56(%rsp)
+ movsd -24(%rsp), %xmm0
+ mulsd %xmm0, %xmm7
+ movsd -56(%rsp), %xmm3
+ movsd %xmm7, -24(%rsp)
+ movaps %xmm0, %xmm7
+ movsd -24(%rsp), %xmm14
+ mulsd %xmm3, %xmm4
+ subsd %xmm0, %xmm14
+ movsd %xmm14, -56(%rsp)
+ movsd -24(%rsp), %xmm13
+ movsd -56(%rsp), %xmm9
+ subsd %xmm9, %xmm13
+ movsd %xmm13, -24(%rsp)
+ movaps %xmm0, %xmm13
+ movsd -24(%rsp), %xmm15
+ mulsd %xmm2, %xmm13
+ subsd %xmm15, %xmm7
+ mulsd %xmm1, %xmm0
+ mulsd %xmm3, %xmm1
+ mulsd %xmm3, %xmm2
+ movaps %xmm10, %xmm15
+ movaps %xmm13, %xmm5
+ mulsd %xmm11, %xmm15
+ mulsd %xmm12, %xmm11
+ addsd %xmm15, %xmm5
+ addsd %xmm12, %xmm11
+ movsd %xmm7, -56(%rsp)
+ addsd %xmm0, %xmm11
+ movsd -24(%rsp), %xmm9
+ addsd %xmm1, %xmm11
+ movsd -56(%rsp), %xmm7
+ addsd %xmm2, %xmm11
+ movsd %xmm5, -24(%rsp)
+ addsd %xmm4, %xmm11
+ movsd -24(%rsp), %xmm14
+ subsd %xmm14, %xmm13
+ addsd %xmm13, %xmm15
+ movsd %xmm15, -56(%rsp)
+ movaps %xmm8, %xmm15
+ mulsd %xmm9, %xmm15
+ mulsd %xmm6, %xmm9
+ mulsd %xmm7, %xmm6
+ mulsd %xmm7, %xmm8
+ movsd -24(%rsp), %xmm14
+ movaps %xmm15, %xmm13
+ movsd -56(%rsp), %xmm5
+ addsd %xmm14, %xmm13
+ addsd %xmm9, %xmm5
+ movsd %xmm13, -24(%rsp)
+ addsd %xmm6, %xmm5
+ movsd -24(%rsp), %xmm13
+ addsd %xmm8, %xmm5
+ subsd %xmm13, %xmm15
+ addsd %xmm5, %xmm11
+ addsd %xmm15, %xmm14
+ movsd %xmm14, -56(%rsp)
+ movaps %xmm10, %xmm15
+ movsd -24(%rsp), %xmm13
+ movsd -56(%rsp), %xmm14
+ addsd %xmm13, %xmm15
+ addsd %xmm14, %xmm11
+ movsd %xmm15, -24(%rsp)
+ movsd -24(%rsp), %xmm15
+ subsd %xmm15, %xmm10
+ addsd %xmm10, %xmm13
+ movsd %xmm13, -56(%rsp)
+ movsd -24(%rsp), %xmm13
+ movsd -56(%rsp), %xmm10
+ addsd %xmm10, %xmm11
+ addsd %xmm11, %xmm13
+ movsd %xmm13, -32(%rsp)
+ movb -25(%rsp), %dil
+ andb $127, %dil
+ orb %cl, %dil
+ movb %dil, -25(%rsp)
+ movq -32(%rsp), %r10
+ movq %r10, (%r9)
+ ret
+
+.LBL_2_8:
+
+ movaps %xmm0, %xmm2
+ mulsd %xmm0, %xmm2
+ movsd 1104+__dsinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm2, %xmm1
+ movb -1(%rsp), %dl
+ andb $-128, %dl
+ addsd 1096+__dsinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm2, %xmm1
+ addsd 1088+__dsinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm2, %xmm1
+ addsd 1080+__dsinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm1, %xmm2
+ mulsd %xmm0, %xmm2
+ addsd %xmm2, %xmm0
+ movsd %xmm0, -32(%rsp)
+ movb -25(%rsp), %cl
+ andb $127, %cl
+ orb %dl, %cl
+ movb %cl, -25(%rsp)
+ movq -32(%rsp), %rsi
+ movq %rsi, (%r9)
+ ret
+
+.LBL_2_9:
+
+ movsd 1112+__dsinh_la_CoutTab(%rip), %xmm1
+ lea __dsinh_la_CoutTab(%rip), %r8
+ mulsd %xmm0, %xmm1
+ movsd 1144+__dsinh_la_CoutTab(%rip), %xmm2
+ movsd 1152+__dsinh_la_CoutTab(%rip), %xmm3
+ movq 8+__dsinh_la_CoutTab(%rip), %rdx
+ movq %rdx, -16(%rsp)
+ addsd 1120+__dsinh_la_CoutTab(%rip), %xmm1
+ movsd %xmm1, -40(%rsp)
+ movsd -40(%rsp), %xmm4
+ movsd 1072+__dsinh_la_CoutTab(%rip), %xmm1
+ movl -40(%rsp), %edx
+ movl %edx, %esi
+ andl $63, %esi
+ subsd 1120+__dsinh_la_CoutTab(%rip), %xmm4
+ mulsd %xmm4, %xmm2
+ lea (%rsi,%rsi), %ecx
+ mulsd %xmm3, %xmm4
+ subsd %xmm2, %xmm0
+ movsd (%r8,%rcx,8), %xmm5
+ lea 1(%rsi,%rsi), %edi
+ shrl $6, %edx
+ subsd %xmm4, %xmm0
+ mulsd %xmm0, %xmm1
+ addl $1022, %edx
+ andl $2047, %edx
+ addsd 1064+__dsinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ addsd 1056+__dsinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ addsd 1048+__dsinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ addsd 1040+__dsinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ mulsd %xmm0, %xmm1
+ addsd %xmm0, %xmm1
+ mulsd %xmm5, %xmm1
+ addsd (%r8,%rdi,8), %xmm1
+ addsd %xmm5, %xmm1
+ cmpl $2046, %edx
+ ja .LBL_2_11
+
+
+ movq 8+__dsinh_la_CoutTab(%rip), %rcx
+ shrq $48, %rcx
+ shll $4, %edx
+ andl $-32753, %ecx
+ orl %edx, %ecx
+ movw %cx, -10(%rsp)
+ movsd -16(%rsp), %xmm0
+ mulsd %xmm0, %xmm1
+ movsd %xmm1, -32(%rsp)
+ jmp .LBL_2_12
+
+.LBL_2_11:
+
+ decl %edx
+ andl $2047, %edx
+ movzwl -10(%rsp), %ecx
+ shll $4, %edx
+ andl $-32753, %ecx
+ orl %edx, %ecx
+ movw %cx, -10(%rsp)
+ movsd -16(%rsp), %xmm0
+ mulsd %xmm0, %xmm1
+ mulsd 1024+__dsinh_la_CoutTab(%rip), %xmm1
+ movsd %xmm1, -32(%rsp)
+
+.LBL_2_12:
+
+ movb -25(%rsp), %cl
+ movb -1(%rsp), %dl
+ andb $127, %cl
+ andb $-128, %dl
+ orb %dl, %cl
+ movb %cl, -25(%rsp)
+ movq -32(%rsp), %rsi
+ movq %rsi, (%r9)
+ ret
+
+.LBL_2_13:
+
+ movsd 1168+__dsinh_la_CoutTab(%rip), %xmm0
+ movl $3, %eax
+ mulsd %xmm2, %xmm0
+ movsd %xmm0, (%r9)
+ ret
+
+.LBL_2_14:
+
+ movsd __dsinh_la_CoutTab(%rip), %xmm0
+ addsd 1160+__dsinh_la_CoutTab(%rip), %xmm0
+ mulsd %xmm2, %xmm0
+ movsd %xmm0, (%r9)
+
+
+ ret
+
+.LBL_2_16:
+
+ movsd 1160+__dsinh_la_CoutTab(%rip), %xmm0
+ mulsd %xmm0, %xmm2
+ movsd %xmm2, -24(%rsp)
+ movsd -24(%rsp), %xmm1
+ movq 8+__dsinh_la_CoutTab(%rip), %rdx
+ movq %rdx, -16(%rsp)
+ addsd -8(%rsp), %xmm1
+ movsd %xmm1, (%r9)
+ ret
+
+.LBL_2_17:
+
+ addsd %xmm2, %xmm2
+ movsd %xmm2, (%r9)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dsinh_cout_rare_internal,@function
+ .size __svml_dsinh_cout_rare_internal,.-__svml_dsinh_cout_rare_internal
+..LN__svml_dsinh_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dsinh_data_internal:
+ .long 0
+ .long 1071644672
+ .long 1828292879
+ .long 1071691096
+ .long 1014845819
+ .long 1071739576
+ .long 1853186616
+ .long 1071790202
+ .long 171030293
+ .long 1071843070
+ .long 1276261410
+ .long 1071898278
+ .long 3577096743
+ .long 1071955930
+ .long 3712504873
+ .long 1072016135
+ .long 1719614413
+ .long 1072079006
+ .long 1944781191
+ .long 1072144660
+ .long 1110089947
+ .long 1072213221
+ .long 2191782032
+ .long 1072284817
+ .long 2572866477
+ .long 1072359583
+ .long 3716502172
+ .long 1072437659
+ .long 3707479175
+ .long 1072519192
+ .long 2728693978
+ .long 1072604335
+ .long 0
+ .long 0
+ .long 1255956747
+ .long 1015588398
+ .long 3117910646
+ .long 3161559105
+ .long 3066496371
+ .long 1015656574
+ .long 3526460132
+ .long 1014428778
+ .long 300981948
+ .long 1014684169
+ .long 2951496418
+ .long 1013793687
+ .long 88491949
+ .long 1015427660
+ .long 330458198
+ .long 3163282740
+ .long 3993278767
+ .long 3161724279
+ .long 1451641639
+ .long 1015474673
+ .long 2960257726
+ .long 1013742662
+ .long 878562433
+ .long 1015521741
+ .long 2303740125
+ .long 1014042725
+ .long 3613079303
+ .long 1014164738
+ .long 396109971
+ .long 3163462691
+ .long 0
+ .long 1071644672
+ .long 2728693978
+ .long 1071555759
+ .long 3707479175
+ .long 1071470616
+ .long 3716502172
+ .long 1071389083
+ .long 2572866477
+ .long 1071311007
+ .long 2191782032
+ .long 1071236241
+ .long 1110089947
+ .long 1071164645
+ .long 1944781191
+ .long 1071096084
+ .long 1719614413
+ .long 1071030430
+ .long 3712504873
+ .long 1070967559
+ .long 3577096743
+ .long 1070907354
+ .long 1276261410
+ .long 1070849702
+ .long 171030293
+ .long 1070794494
+ .long 1853186616
+ .long 1070741626
+ .long 1014845819
+ .long 1070691000
+ .long 1828292879
+ .long 1070642520
+ .long 0
+ .long 0
+ .long 396109971
+ .long 3162414115
+ .long 3613079303
+ .long 1013116162
+ .long 2303740125
+ .long 1012994149
+ .long 878562433
+ .long 1014473165
+ .long 2960257726
+ .long 1012694086
+ .long 1451641639
+ .long 1014426097
+ .long 3993278767
+ .long 3160675703
+ .long 330458198
+ .long 3162234164
+ .long 88491949
+ .long 1014379084
+ .long 2951496418
+ .long 1012745111
+ .long 300981948
+ .long 1013635593
+ .long 3526460132
+ .long 1013380202
+ .long 3066496371
+ .long 1014607998
+ .long 3117910646
+ .long 3160510529
+ .long 1255956747
+ .long 1014539822
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 0
+ .long 1123549184
+ .long 1
+ .long 1123549184
+ .long 1
+ .long 1123549184
+ .long 1
+ .long 1123549184
+ .long 1
+ .long 1123549184
+ .long 1
+ .long 1123549184
+ .long 1
+ .long 1123549184
+ .long 1
+ .long 1123549184
+ .long 1
+ .long 1123549184
+ .long 1082453555
+ .long 1082453555
+ .long 1082453555
+ .long 1082453555
+ .long 1082453555
+ .long 1082453555
+ .long 1082453555
+ .long 1082453555
+ .long 1082453555
+ .long 1082453555
+ .long 1082453555
+ .long 1082453555
+ .long 1082453555
+ .long 1082453555
+ .long 1082453555
+ .long 1082453555
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 15
+ .long 0
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 1431657638
+ .long 1069897045
+ .long 1431657638
+ .long 1069897045
+ .long 1431657638
+ .long 1069897045
+ .long 1431657638
+ .long 1069897045
+ .long 1431657638
+ .long 1069897045
+ .long 1431657638
+ .long 1069897045
+ .long 1431657638
+ .long 1069897045
+ .long 1431657638
+ .long 1069897045
+ .long 1431653196
+ .long 1067799893
+ .long 1431653196
+ .long 1067799893
+ .long 1431653196
+ .long 1067799893
+ .long 1431653196
+ .long 1067799893
+ .long 1431653196
+ .long 1067799893
+ .long 1431653196
+ .long 1067799893
+ .long 1431653196
+ .long 1067799893
+ .long 1431653196
+ .long 1067799893
+ .long 249327322
+ .long 1065423121
+ .long 249327322
+ .long 1065423121
+ .long 249327322
+ .long 1065423121
+ .long 249327322
+ .long 1065423121
+ .long 249327322
+ .long 1065423121
+ .long 249327322
+ .long 1065423121
+ .long 249327322
+ .long 1065423121
+ .long 249327322
+ .long 1065423121
+ .long 419584011
+ .long 1062650220
+ .long 419584011
+ .long 1062650220
+ .long 419584011
+ .long 1062650220
+ .long 419584011
+ .long 1062650220
+ .long 419584011
+ .long 1062650220
+ .long 419584011
+ .long 1062650220
+ .long 419584011
+ .long 1062650220
+ .long 419584011
+ .long 1062650220
+ .long 100753094
+ .long 1059717741
+ .long 100753094
+ .long 1059717741
+ .long 100753094
+ .long 1059717741
+ .long 100753094
+ .long 1059717741
+ .long 100753094
+ .long 1059717741
+ .long 100753094
+ .long 1059717741
+ .long 100753094
+ .long 1059717741
+ .long 100753094
+ .long 1059717741
+ .long 461398617
+ .long 1056571820
+ .long 461398617
+ .long 1056571820
+ .long 461398617
+ .long 1056571820
+ .long 461398617
+ .long 1056571820
+ .long 461398617
+ .long 1056571820
+ .long 461398617
+ .long 1056571820
+ .long 461398617
+ .long 1056571820
+ .long 461398617
+ .long 1056571820
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 1697350398
+ .long 1073157447
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 4277796864
+ .long 1072049730
+ .long 3164486458
+ .long 1031600026
+ .long 3164486458
+ .long 1031600026
+ .long 3164486458
+ .long 1031600026
+ .long 3164486458
+ .long 1031600026
+ .long 3164486458
+ .long 1031600026
+ .long 3164486458
+ .long 1031600026
+ .long 3164486458
+ .long 1031600026
+ .long 3164486458
+ .long 1031600026
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 1071644672
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1071644672
+ .long 431824500
+ .long 1064709706
+ .long 730821105
+ .long 1071633346
+ .long 1779301686
+ .long 1065758303
+ .long 2174652632
+ .long 1071622081
+ .long 872681311
+ .long 1066443490
+ .long 2912730644
+ .long 1071610877
+ .long 2882296449
+ .long 1066806964
+ .long 1533953344
+ .long 1071599734
+ .long 3305321028
+ .long 1067170481
+ .long 929806999
+ .long 1071588651
+ .long 340716357
+ .long 1067492210
+ .long 3999357479
+ .long 1071577627
+ .long 1073477808
+ .long 1067674027
+ .long 764307441
+ .long 1071566664
+ .long 3128166954
+ .long 1067855881
+ .long 2728693978
+ .long 1071555759
+ .long 3639221082
+ .long 1068037778
+ .long 4224142467
+ .long 1071544913
+ .long 4041415279
+ .long 1068219723
+ .long 3884662774
+ .long 1071534126
+ .long 1480599658
+ .long 1068401722
+ .long 351641897
+ .long 1071523398
+ .long 2997120266
+ .long 1068541361
+ .long 863738719
+ .long 1071512727
+ .long 928693471
+ .long 1068632422
+ .long 4076975200
+ .long 1071502113
+ .long 1708958952
+ .long 1068723517
+ .long 64696965
+ .long 1071491558
+ .long 3926287402
+ .long 1068814649
+ .long 382305176
+ .long 1071481059
+ .long 1878784442
+ .long 1068905822
+ .long 3707479175
+ .long 1071470616
+ .long 2754496392
+ .long 1068997037
+ .long 135105010
+ .long 1071460231
+ .long 861943228
+ .long 1069088298
+ .long 1242007932
+ .long 1071449901
+ .long 3400259254
+ .long 1069179606
+ .long 1432208378
+ .long 1071439627
+ .long 394759087
+ .long 1069270966
+ .long 3706687593
+ .long 1071429408
+ .long 3351980561
+ .long 1069362378
+ .long 2483480501
+ .long 1071419245
+ .long 2310349189
+ .long 1069453847
+ .long 777507147
+ .long 1071409137
+ .long 200254151
+ .long 1069545375
+ .long 1610600570
+ .long 1071399083
+ .long 4274709417
+ .long 1069592241
+ .long 3716502172
+ .long 1071389083
+ .long 2266782956
+ .long 1069638068
+ .long 1540824585
+ .long 1071379138
+ .long 1995599824
+ .long 1069683928
+ .long 2420883922
+ .long 1071369246
+ .long 647201135
+ .long 1069729823
+ .long 815859274
+ .long 1071359408
+ .long 4001939191
+ .long 1069775753
+ .long 4076559943
+ .long 1071349622
+ .long 664843213
+ .long 1069821722
+ .long 2380618042
+ .long 1071339890
+ .long 720494647
+ .long 1069867729
+ .long 3092190715
+ .long 1071330210
+ .long 1373458573
+ .long 1069913776
+ .long 697153126
+ .long 1071320583
+ .long 4128322810
+ .long 1069959864
+ .long 2572866477
+ .long 1071311007
+ .long 1904966097
+ .long 1070005996
+ .long 3218338682
+ .long 1071301483
+ .long 513564799
+ .long 1070052172
+ .long 1434058175
+ .long 1071292011
+ .long 1474894098
+ .long 1070098393
+ .long 321958744
+ .long 1071282590
+ .long 2020498546
+ .long 1070144661
+ .long 2990417245
+ .long 1071273219
+ .long 3682797359
+ .long 1070190977
+ .long 3964284211
+ .long 1071263899
+ .long 3705320722
+ .long 1070237343
+ .long 2069751141
+ .long 1071254630
+ .long 3632815436
+ .long 1070283760
+ .long 434316067
+ .long 1071245411
+ .long 721481577
+ .long 1070330230
+ .long 2191782032
+ .long 1071236241
+ .long 824045819
+ .long 1070376753
+ .long 1892288442
+ .long 1071227121
+ .long 1210063881
+ .long 1070423331
+ .long 2682146384
+ .long 1071218050
+ .long 3450994238
+ .long 1070469965
+ .long 3418903055
+ .long 1071209028
+ .long 535468266
+ .long 1070516658
+ .long 2966275557
+ .long 1071200055
+ .long 2639266259
+ .long 1070563409
+ .long 194117574
+ .long 1071191131
+ .long 3530359402
+ .long 1070603158
+ .long 2568320822
+ .long 1071182254
+ .long 3405407025
+ .long 1070626595
+ .long 380978316
+ .long 1071173426
+ .long 1749136243
+ .long 1070650064
+ .long 1110089947
+ .long 1071164645
+ .long 1517376385
+ .long 1070673565
+ .long 3649726105
+ .long 1071155911
+ .long 1375061601
+ .long 1070697099
+ .long 2604962541
+ .long 1071147225
+ .long 4286252247
+ .long 1070720666
+ .long 1176749997
+ .long 1071138586
+ .long 334352625
+ .long 1070744269
+ .long 2571947539
+ .long 1071129993
+ .long 1081936396
+ .long 1070767906
+ .long 1413356050
+ .long 1071121447
+ .long 916128083
+ .long 1070791579
+ .long 919555682
+ .long 1071112947
+ .long 2818494152
+ .long 1070815288
+ .long 19972402
+ .long 1071104493
+ .long 1185261260
+ .long 1070839035
+ .long 1944781191
+ .long 1071096084
+ .long 3302240303
+ .long 1070862819
+ .long 1339972927
+ .long 1071087721
+ .long 3575110344
+ .long 1070886642
+ .long 1447192521
+ .long 1071079403
+ .long 709375646
+ .long 1070910505
+ .long 1218806132
+ .long 1071071130
+ .long 2005420950
+ .long 1070934407
+ .long 3907805044
+ .long 1071062901
+ .long 1883763132
+ .long 1070958350
+ .long 4182873220
+ .long 1071054717
+ .long 3359975962
+ .long 1070982334
+ .long 1013258799
+ .long 1071046578
+ .long 864909351
+ .long 1071006361
+ .long 1963711167
+ .long 1071038482
+ .long 1719614413
+ .long 1071030430
+ .long 1719614413
+ .long 1071030430
+ .long 365628427
+ .long 1071054543
+ .long 3561793907
+ .long 1071022421
+ .long 4134867513
+ .long 1071078699
+ .long 2186617381
+ .long 1071014456
+ .long 3184944616
+ .long 1071102901
+ .long 885834528
+ .long 1071006534
+ .long 564029795
+ .long 1071127149
+ .long 2956612997
+ .long 1070998654
+ .long 3621005023
+ .long 1071151442
+ .long 3111574537
+ .long 1070990817
+ .long 2530717257
+ .long 1071175783
+ .long 363667784
+ .long 1070983023
+ .long 358839240
+ .long 1071200172
+ .long 2321106615
+ .long 1070975270
+ .long 177057508
+ .long 1071224609
+ .long 3712504873
+ .long 1070967559
+ .long 768195176
+ .long 1071249095
+ .long 3566716925
+ .long 1070959890
+ .long 921269482
+ .long 1071273631
+ .long 917841882
+ .long 1070952263
+ .long 3726549525
+ .long 1071298217
+ .long 3395129871
+ .long 1070944676
+ .long 3690744995
+ .long 1071322855
+ .long 1453150082
+ .long 1070937131
+ .long 3916966168
+ .long 1071347545
+ .long 2731501122
+ .long 1070929626
+ .long 3219913010
+ .long 1071372288
+ .long 1990012071
+ .long 1070922162
+ .long 420933669
+ .long 1071397085
+ .long 2583551245
+ .long 1070914738
+ .long 2938050448
+ .long 1071421935
+ .long 3577096743
+ .long 1070907354
+ .long 1016247609
+ .long 1071446841
+ .long 4040676318
+ .long 1070900010
+ .long 2087301532
+ .long 1071471802
+ .long 3049340112
+ .long 1070892706
+ .long 705101620
+ .long 1071496820
+ .long 3978100823
+ .long 1070885441
+ .long 20578973
+ .long 1071521895
+ .long 1617004845
+ .long 1070878216
+ .long 3191864199
+ .long 1071547027
+ .long 3645941911
+ .long 1070871029
+ .long 499478133
+ .long 1071572219
+ .long 569847338
+ .long 1070863882
+ .long 3706163032
+ .long 1071597469
+ .long 78413852
+ .long 1070856773
+ .long 3107302654
+ .long 1071622780
+ .long 1276261410
+ .long 1070849702
+ .long 945376945
+ .long 1071646412
+ .long 3272845541
+ .long 1070842669
+ .long 3773502825
+ .long 1071659128
+ .long 887463927
+ .long 1070835675
+ .long 3049734401
+ .long 1071671876
+ .long 1829099622
+ .long 1070828718
+ .long 379637879
+ .long 1071684656
+ .long 926591435
+ .long 1070821799
+ .long 1667720032
+ .long 1071697467
+ .long 1603444721
+ .long 1070814917
+ .long 4232573504
+ .long 1071710310
+ .long 2992903935
+ .long 1070808072
+ .long 1101891425
+ .long 1071723187
+ .long 4232894513
+ .long 1070801264
+ .long 2487351331
+ .long 1071736096
+ .long 171030293
+ .long 1070794494
+ .long 1424924347
+ .long 1071749039
+ .long 2839424854
+ .long 1070787759
+ .long 3839693941
+ .long 1071762015
+ .long 2799960843
+ .long 1070781061
+ .long 2776099954
+ .long 1071775026
+ .long 3504003472
+ .long 1070774399
+ .long 4167790294
+ .long 1071788071
+ .long 4112506593
+ .long 1070767773
+ .long 1067865225
+ .long 1071801152
+ .long 3790955393
+ .long 1070761183
+ .long 3713696612
+ .long 1071814267
+ .long 1709341917
+ .long 1070754629
+ .long 872270569
+ .long 1071827419
+ .long 1337108031
+ .long 1070748110
+ .long 2789908864
+ .long 1071840606
+ .long 1853186616
+ .long 1070741626
+ .long 2537611823
+ .long 1071853830
+ .long 2440944790
+ .long 1070735177
+ .long 1780910816
+ .long 1071867091
+ .long 2288159958
+ .long 1070728763
+ .long 2189982503
+ .long 1071880389
+ .long 586995997
+ .long 1070722384
+ .long 1144730516
+ .long 1071893725
+ .long 828946858
+ .long 1070716039
+ .long 324769168
+ .long 1071907099
+ .long 2214878420
+ .long 1070709728
+ .long 1414505409
+ .long 1071920511
+ .long 3949972341
+ .long 1070703451
+ .long 1808220925
+ .long 1071933962
+ .long 948735466
+ .long 1070697209
+ .long 3200056266
+ .long 1071947452
+ .long 1014845819
+ .long 1070691000
+ .long 2994125935
+ .long 1071960982
+ .long 3366293073
+ .long 1070684824
+ .long 2894502806
+ .long 1071974552
+ .long 2930322912
+ .long 1070678682
+ .long 315333498
+ .long 1071988163
+ .long 3228316108
+ .long 1070672573
+ .long 1265790390
+ .long 1072001814
+ .long 3490863953
+ .long 1070666497
+ .long 3170252699
+ .long 1072015506
+ .long 2952712987
+ .long 1070660454
+ .long 3458291493
+ .long 1072029240
+ .long 852742562
+ .long 1070654444
+ .long 3859687560
+ .long 1072043016
+ .long 728909815
+ .long 1070648466
+ .long 1814547538
+ .long 1072056835
+ .long 1828292879
+ .long 1070642520
+ .long 3358256687
+ .long 1072070696
+ .long 3402036099
+ .long 1070636606
+ .long 1646693443
+ .long 1072084601
+ .long 410360776
+ .long 1070630725
+ .long 2726084392
+ .long 1072098549
+ .long 702412510
+ .long 1070624875
+ .long 4058219142
+ .long 1072112541
+ .long 3541402996
+ .long 1070619056
+ .long 3110436433
+ .long 1072126578
+ .long 3899555717
+ .long 1070613269
+ .long 1650643112
+ .long 1072140660
+ .long 1048019041
+ .long 1070607514
+ .long 1452398678
+ .long 1072154787
+ .long 2851812149
+ .long 1070601789
+ .long 0
+ .long 1120403456
+ .long 0
+ .long 1120403456
+ .long 0
+ .long 1120403456
+ .long 0
+ .long 1120403456
+ .long 0
+ .long 1120403456
+ .long 0
+ .long 1120403456
+ .long 0
+ .long 1120403456
+ .long 0
+ .long 1120403456
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 1082531225
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 4294966717
+ .long 1071644671
+ .long 4294966717
+ .long 1071644671
+ .long 4294966717
+ .long 1071644671
+ .long 4294966717
+ .long 1071644671
+ .long 4294966717
+ .long 1071644671
+ .long 4294966717
+ .long 1071644671
+ .long 4294966717
+ .long 1071644671
+ .long 4294966717
+ .long 1071644671
+ .long 1431655597
+ .long 1069897045
+ .long 1431655597
+ .long 1069897045
+ .long 1431655597
+ .long 1069897045
+ .long 1431655597
+ .long 1069897045
+ .long 1431655597
+ .long 1069897045
+ .long 1431655597
+ .long 1069897045
+ .long 1431655597
+ .long 1069897045
+ .long 1431655597
+ .long 1069897045
+ .long 3474379417
+ .long 1067799893
+ .long 3474379417
+ .long 1067799893
+ .long 3474379417
+ .long 1067799893
+ .long 3474379417
+ .long 1067799893
+ .long 3474379417
+ .long 1067799893
+ .long 3474379417
+ .long 1067799893
+ .long 3474379417
+ .long 1067799893
+ .long 3474379417
+ .long 1067799893
+ .long 1460859941
+ .long 1065423121
+ .long 1460859941
+ .long 1065423121
+ .long 1460859941
+ .long 1065423121
+ .long 1460859941
+ .long 1065423121
+ .long 1460859941
+ .long 1065423121
+ .long 1460859941
+ .long 1065423121
+ .long 1460859941
+ .long 1065423121
+ .long 1460859941
+ .long 1065423121
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 65472
+ .long 0
+ .long 65472
+ .long 0
+ .long 65472
+ .long 0
+ .long 65472
+ .long 0
+ .long 65472
+ .long 0
+ .long 65472
+ .long 0
+ .long 65472
+ .long 0
+ .long 65472
+ .long 0
+ .long 127
+ .long 0
+ .long 127
+ .long 0
+ .long 127
+ .long 0
+ .long 127
+ .long 0
+ .long 127
+ .long 0
+ .long 127
+ .long 0
+ .long 127
+ .long 0
+ .long 127
+ .long 0
+ .type __svml_dsinh_data_internal,@object
+ .size __svml_dsinh_data_internal,4288
+ .space 320, 0x00
+ .align 32
+__dsinh_la_CoutTab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 1048019041
+ .long 1072704666
+ .long 1398474845
+ .long 3161559171
+ .long 3541402996
+ .long 1072716208
+ .long 2759177317
+ .long 1015903202
+ .long 410360776
+ .long 1072727877
+ .long 1269990655
+ .long 1013024446
+ .long 1828292879
+ .long 1072739672
+ .long 1255956747
+ .long 1016636974
+ .long 852742562
+ .long 1072751596
+ .long 667253587
+ .long 1010842135
+ .long 3490863953
+ .long 1072763649
+ .long 960797498
+ .long 3163997456
+ .long 2930322912
+ .long 1072775834
+ .long 2599499422
+ .long 3163762623
+ .long 1014845819
+ .long 1072788152
+ .long 3117910646
+ .long 3162607681
+ .long 3949972341
+ .long 1072800603
+ .long 2068408548
+ .long 1015962444
+ .long 828946858
+ .long 1072813191
+ .long 10642492
+ .long 1016988014
+ .long 2288159958
+ .long 1072825915
+ .long 2169144469
+ .long 1015924597
+ .long 1853186616
+ .long 1072838778
+ .long 3066496371
+ .long 1016705150
+ .long 1709341917
+ .long 1072851781
+ .long 2571168217
+ .long 1015201075
+ .long 4112506593
+ .long 1072864925
+ .long 2947355221
+ .long 1015419624
+ .long 2799960843
+ .long 1072878213
+ .long 1423655381
+ .long 1016070727
+ .long 171030293
+ .long 1072891646
+ .long 3526460132
+ .long 1015477354
+ .long 2992903935
+ .long 1072905224
+ .long 2218154406
+ .long 1016276769
+ .long 926591435
+ .long 1072918951
+ .long 3208833762
+ .long 3163962090
+ .long 887463927
+ .long 1072932827
+ .long 3596744163
+ .long 3161842742
+ .long 1276261410
+ .long 1072946854
+ .long 300981948
+ .long 1015732745
+ .long 569847338
+ .long 1072961034
+ .long 472945272
+ .long 3160339305
+ .long 1617004845
+ .long 1072975368
+ .long 82804944
+ .long 1011391354
+ .long 3049340112
+ .long 1072989858
+ .long 3062915824
+ .long 1014219171
+ .long 3577096743
+ .long 1073004506
+ .long 2951496418
+ .long 1014842263
+ .long 1990012071
+ .long 1073019314
+ .long 3529070563
+ .long 3163861769
+ .long 1453150082
+ .long 1073034283
+ .long 498154669
+ .long 3162536638
+ .long 917841882
+ .long 1073049415
+ .long 18715565
+ .long 1016707884
+ .long 3712504873
+ .long 1073064711
+ .long 88491949
+ .long 1016476236
+ .long 363667784
+ .long 1073080175
+ .long 813753950
+ .long 1016833785
+ .long 2956612997
+ .long 1073095806
+ .long 2118169751
+ .long 3163784129
+ .long 2186617381
+ .long 1073111608
+ .long 2270764084
+ .long 3164321289
+ .long 1719614413
+ .long 1073127582
+ .long 330458198
+ .long 3164331316
+ .long 1013258799
+ .long 1073143730
+ .long 1748797611
+ .long 3161177658
+ .long 3907805044
+ .long 1073160053
+ .long 2257091225
+ .long 3162598983
+ .long 1447192521
+ .long 1073176555
+ .long 1462857171
+ .long 3163563097
+ .long 1944781191
+ .long 1073193236
+ .long 3993278767
+ .long 3162772855
+ .long 919555682
+ .long 1073210099
+ .long 3121969534
+ .long 1013996802
+ .long 2571947539
+ .long 1073227145
+ .long 3558159064
+ .long 3164425245
+ .long 2604962541
+ .long 1073244377
+ .long 2614425274
+ .long 3164587768
+ .long 1110089947
+ .long 1073261797
+ .long 1451641639
+ .long 1016523249
+ .long 2568320822
+ .long 1073279406
+ .long 2732824428
+ .long 1015401491
+ .long 2966275557
+ .long 1073297207
+ .long 2176155324
+ .long 3160891335
+ .long 2682146384
+ .long 1073315202
+ .long 2082178513
+ .long 3164411995
+ .long 2191782032
+ .long 1073333393
+ .long 2960257726
+ .long 1014791238
+ .long 2069751141
+ .long 1073351782
+ .long 1562170675
+ .long 3163773257
+ .long 2990417245
+ .long 1073370371
+ .long 3683467745
+ .long 3164417902
+ .long 1434058175
+ .long 1073389163
+ .long 251133233
+ .long 1016134345
+ .long 2572866477
+ .long 1073408159
+ .long 878562433
+ .long 1016570317
+ .long 3092190715
+ .long 1073427362
+ .long 814012168
+ .long 3160571998
+ .long 4076559943
+ .long 1073446774
+ .long 2119478331
+ .long 3161806927
+ .long 2420883922
+ .long 1073466398
+ .long 2049810052
+ .long 1015168464
+ .long 3716502172
+ .long 1073486235
+ .long 2303740125
+ .long 1015091301
+ .long 777507147
+ .long 1073506289
+ .long 4282924205
+ .long 1016236109
+ .long 3706687593
+ .long 1073526560
+ .long 3521726939
+ .long 1014301643
+ .long 1242007932
+ .long 1073547053
+ .long 1132034716
+ .long 3164388407
+ .long 3707479175
+ .long 1073567768
+ .long 3613079303
+ .long 1015213314
+ .long 64696965
+ .long 1073588710
+ .long 1768797490
+ .long 1016865536
+ .long 863738719
+ .long 1073609879
+ .long 1326992220
+ .long 3163661773
+ .long 3884662774
+ .long 1073631278
+ .long 2158611599
+ .long 1015258761
+ .long 2728693978
+ .long 1073652911
+ .long 396109971
+ .long 3164511267
+ .long 3999357479
+ .long 1073674779
+ .long 2258941616
+ .long 1016973300
+ .long 1533953344
+ .long 1073696886
+ .long 769171851
+ .long 1016714209
+ .long 2174652632
+ .long 1073719233
+ .long 4087714590
+ .long 1015498835
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 0
+ .long 0
+ .long 1071644672
+ .long 1431652600
+ .long 1069897045
+ .long 1431670732
+ .long 1067799893
+ .long 984555731
+ .long 1065423122
+ .long 472530941
+ .long 1062650218
+ .long 1431655765
+ .long 1069897045
+ .long 286331153
+ .long 1065423121
+ .long 436314138
+ .long 1059717536
+ .long 2773927732
+ .long 1053236707
+ .long 1697350398
+ .long 1079448903
+ .long 0
+ .long 1127743488
+ .long 33554432
+ .long 1101004800
+ .long 2411329662
+ .long 1082536910
+ .long 4277796864
+ .long 1065758274
+ .long 3164486458
+ .long 1025308570
+ .long 1
+ .long 1048576
+ .long 4294967295
+ .long 2146435071
+ .long 3671843104
+ .long 1067178892
+ .long 3875694624
+ .long 1077247184
+ .type __dsinh_la_CoutTab,@object
+ .size __dsinh_la_CoutTab,1192
+ .space 8, 0x00
+ .align 16
+.L_2il0floatpacket.97:
+ .long 0x00000000,0x80000000,0x00000000,0x00000000
+ .type .L_2il0floatpacket.97,@object
+ .size .L_2il0floatpacket.97,16
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+
+ .text
+.L_2__routine_start___svml_sinhf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_sinhf16
+
+__svml_sinhf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovaps %zmm0, %zmm5
+
+/*
+ * ----------------------------------- Implementation ---------------------
+ * ............... Abs argument ............................
+ */
+ vandps 1152+__svml_ssinh_data_internal(%rip), %zmm5, %zmm4
+
+/*
+ * ...............Check for overflow\underflow .............
+ */
+ vpternlogd $255, %zmm6, %zmm6, %zmm6
+ vmovups 1280+__svml_ssinh_data_internal(%rip), %zmm7
+
+/*
+ * ............... Load argument ............................
+ * dM = x/log(2) + RShifter
+ */
+ vmovups 960+__svml_ssinh_data_internal(%rip), %zmm11
+ vmovups 1024+__svml_ssinh_data_internal(%rip), %zmm8
+ vmovups 1088+__svml_ssinh_data_internal(%rip), %zmm10
+ vmovups 1856+__svml_ssinh_data_internal(%rip), %zmm12
+ vmovups 1728+__svml_ssinh_data_internal(%rip), %zmm0
+ vmovups 1792+__svml_ssinh_data_internal(%rip), %zmm3
+
+/* x^2 */
+ vmovups 1536+__svml_ssinh_data_internal(%rip), %zmm2
+ vxorps %zmm5, %zmm4, %zmm1
+ vfmadd213ps {rn-sae}, %zmm7, %zmm1, %zmm11
+ vpcmpd $2, 1408+__svml_ssinh_data_internal(%rip), %zmm1, %k1
+
+/*
+ * ............... G1,G2 2^N,2^(-N) ...........
+ * iM now is an EXP(2^N)
+ */
+ vpslld $23, %zmm11, %zmm13
+
+/*
+ * ................... R ...................................
+ * sN = sM - RShifter
+ */
+ vsubps {rn-sae}, %zmm7, %zmm11, %zmm9
+ vpaddd %zmm13, %zmm12, %zmm14
+ vpsubd %zmm13, %zmm12, %zmm15
+
+/* sG1 = 2^(N-1)+2^(-N-1) */
+ vaddps {rn-sae}, %zmm15, %zmm14, %zmm7
+ vpandnd %zmm1, %zmm1, %zmm6{%k1}
+
+/* sR = sX - sN*Log2_hi */
+ vfnmadd231ps {rn-sae}, %zmm8, %zmm9, %zmm1
+ vptestmd %zmm6, %zmm6, %k0
+
+/* sG2 = 2^(N-1)-2^(-N-1) */
+ vsubps {rn-sae}, %zmm15, %zmm14, %zmm8
+
+/* sR = (sX - sN*Log2_hi) - sN*Log2_lo */
+ vfnmadd231ps {rn-sae}, %zmm10, %zmm9, %zmm1
+
+/*
+ * ....sinh(r) = r*((a1=1)+r^2*(a3+r^2*(a5+{v1 r^2*a7})))) = r + r*(r^2*(a3+r^2*(a5+r^2*a7))) ....
+ * sSinh_r = (a3+r^2*a5)
+ */
+ vmovups 1600+__svml_ssinh_data_internal(%rip), %zmm14
+ kmovw %k0, %edx
+
+/* sR2 = sR^2 */
+ vmulps {rn-sae}, %zmm1, %zmm1, %zmm6
+ vfmadd231ps {rn-sae}, %zmm6, %zmm0, %zmm14
+
+/* sSinh_r = r^2*(a3+r^2*a5) */
+ vmulps {rn-sae}, %zmm6, %zmm14, %zmm0
+
+/* sSinh_r = r + r*(r^2*(a3+r^2*a5)) */
+ vfmadd213ps {rn-sae}, %zmm1, %zmm1, %zmm0
+
+/*
+ * sinh(X) = sG2 + sG1*sinh(dR) + sG2*sR2*(a2+sR2*(a4+a6*sR2)
+ * sOut = (a4 +a6*sR2)
+ */
+ vmovups 1664+__svml_ssinh_data_internal(%rip), %zmm1
+ vfmadd231ps {rn-sae}, %zmm6, %zmm3, %zmm1
+
+/* sOut = a2+sR2*(a4+a6*sR2) */
+ vfmadd213ps {rn-sae}, %zmm2, %zmm6, %zmm1
+
+/* sOut = sR2*(a2+sR2*(a4+a6*sR2) */
+ vmulps {rn-sae}, %zmm6, %zmm1, %zmm2
+
+/* sOut = sG2*sR2*(a2+sR2*(a4+a6*sR2) */
+ vmulps {rn-sae}, %zmm8, %zmm2, %zmm3
+
+/* sOut = sG1*sinh(dR)+sG2*sR2*(a2+sR2*(a4+a6*sR2) */
+ vfmadd213ps {rn-sae}, %zmm3, %zmm0, %zmm7
+
+/* sOut = sG2 + sG1*sinh(dR) + sG2*sR2*(a2+sR2*(a4+a6*sR2) */
+ vaddps {rn-sae}, %zmm8, %zmm7, %zmm9
+
+/* ................... Ret H ...................... */
+ vorps %zmm9, %zmm4, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm5, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_ssinh_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_sinhf16,@function
+ .size __svml_sinhf16,.-__svml_sinhf16
+..LN__svml_sinhf16.0:
+
+.L_2__routine_start___svml_ssinh_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_ssinh_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ movq %rsi, %r9
+ movzwl 2(%rdi), %edx
+ xorl %eax, %eax
+ andl $32640, %edx
+ movss (%rdi), %xmm2
+ cmpl $32640, %edx
+ je .LBL_2_17
+
+
+ cvtss2sd %xmm2, %xmm2
+ movsd %xmm2, -8(%rsp)
+ movzwl -2(%rsp), %edx
+ andl $32752, %edx
+ movsd %xmm2, -32(%rsp)
+ shrl $4, %edx
+ andb $127, -25(%rsp)
+ testl %edx, %edx
+ jle .LBL_2_16
+
+
+ cmpl $969, %edx
+ jle .LBL_2_14
+
+
+ movsd -32(%rsp), %xmm0
+ movsd 1136+__ssinh_la_CoutTab(%rip), %xmm1
+ comisd %xmm0, %xmm1
+ jbe .LBL_2_13
+
+
+ movsd 1184+__ssinh_la_CoutTab(%rip), %xmm1
+ comisd %xmm0, %xmm1
+ jbe .LBL_2_9
+
+
+ comisd 1176+__ssinh_la_CoutTab(%rip), %xmm0
+ jb .LBL_2_8
+
+
+ movsd 1112+__ssinh_la_CoutTab(%rip), %xmm3
+ lea __ssinh_la_CoutTab(%rip), %rcx
+ mulsd %xmm0, %xmm3
+ movsd 1144+__ssinh_la_CoutTab(%rip), %xmm10
+ movq 8+__ssinh_la_CoutTab(%rip), %r10
+ movq %r10, %rsi
+ shrq $48, %rsi
+ addsd 1120+__ssinh_la_CoutTab(%rip), %xmm3
+ movsd %xmm3, -40(%rsp)
+ andl $-32753, %esi
+ movsd -40(%rsp), %xmm13
+ movl -40(%rsp), %r8d
+ movl %r8d, %r11d
+ shrl $6, %r11d
+ andl $63, %r8d
+ movq %r10, -16(%rsp)
+ subsd 1120+__ssinh_la_CoutTab(%rip), %xmm13
+ mulsd %xmm13, %xmm10
+ lea 1023(%r11), %edi
+ xorps .L_2il0floatpacket.98(%rip), %xmm13
+ addl $1022, %r11d
+ mulsd 1152+__ssinh_la_CoutTab(%rip), %xmm13
+ subsd %xmm10, %xmm0
+ movaps %xmm0, %xmm5
+ movaps %xmm0, %xmm11
+ andl $2047, %r11d
+ lea (%r8,%r8), %edx
+ negl %edi
+ lea 1(%r8,%r8), %r8d
+ movsd (%rcx,%rdx,8), %xmm8
+ negl %edx
+ shll $4, %r11d
+ addl $-4, %edi
+ orl %r11d, %esi
+ andl $2047, %edi
+ movw %si, -10(%rsp)
+ andl $-32753, %esi
+ shll $4, %edi
+ addsd %xmm13, %xmm5
+ movsd %xmm5, -24(%rsp)
+ orl %edi, %esi
+ movsd -24(%rsp), %xmm7
+ movsd 1128+__ssinh_la_CoutTab(%rip), %xmm5
+ subsd %xmm7, %xmm11
+ movsd %xmm11, -56(%rsp)
+ movsd -24(%rsp), %xmm4
+ movsd -56(%rsp), %xmm12
+ movsd (%rcx,%r8,8), %xmm6
+ addsd %xmm12, %xmm4
+ movsd %xmm4, -48(%rsp)
+ movsd -56(%rsp), %xmm9
+ movsd -16(%rsp), %xmm4
+ addsd %xmm9, %xmm13
+ mulsd %xmm4, %xmm8
+ mulsd %xmm4, %xmm6
+ movsd %xmm13, -56(%rsp)
+ movaps %xmm8, %xmm9
+ movsd -48(%rsp), %xmm15
+ movw %si, -10(%rsp)
+ lea 128(%rdx), %esi
+ movsd -16(%rsp), %xmm14
+ addl $129, %edx
+ subsd %xmm15, %xmm0
+ movaps %xmm8, %xmm15
+ movsd %xmm0, -48(%rsp)
+ movsd -56(%rsp), %xmm3
+ movsd -48(%rsp), %xmm0
+ addsd %xmm0, %xmm3
+ movsd %xmm3, -48(%rsp)
+ movsd -24(%rsp), %xmm10
+ mulsd %xmm10, %xmm5
+ movaps %xmm10, %xmm2
+ mulsd %xmm10, %xmm2
+ movsd -48(%rsp), %xmm3
+ movaps %xmm10, %xmm1
+ movsd %xmm5, -24(%rsp)
+ movsd -24(%rsp), %xmm7
+ subsd %xmm10, %xmm7
+ movsd %xmm7, -56(%rsp)
+ movsd -24(%rsp), %xmm12
+ movsd -56(%rsp), %xmm11
+ subsd %xmm11, %xmm12
+ movsd 1064+__ssinh_la_CoutTab(%rip), %xmm11
+ mulsd %xmm2, %xmm11
+ movsd %xmm12, -24(%rsp)
+ movsd 1072+__ssinh_la_CoutTab(%rip), %xmm12
+ mulsd %xmm2, %xmm12
+ addsd 1048+__ssinh_la_CoutTab(%rip), %xmm11
+ mulsd %xmm2, %xmm11
+ addsd 1056+__ssinh_la_CoutTab(%rip), %xmm12
+ mulsd %xmm2, %xmm12
+ mulsd %xmm10, %xmm11
+ addsd 1040+__ssinh_la_CoutTab(%rip), %xmm12
+ addsd %xmm11, %xmm10
+ mulsd %xmm2, %xmm12
+ movsd (%rcx,%rsi,8), %xmm2
+ mulsd %xmm14, %xmm2
+ movsd -24(%rsp), %xmm0
+ subsd %xmm2, %xmm9
+ subsd %xmm0, %xmm1
+ movsd %xmm1, -56(%rsp)
+ movsd -24(%rsp), %xmm7
+ movsd -56(%rsp), %xmm5
+ movsd %xmm9, -24(%rsp)
+ movsd -24(%rsp), %xmm13
+ movsd (%rcx,%rdx,8), %xmm1
+ subsd %xmm13, %xmm15
+ mulsd %xmm14, %xmm1
+ subsd %xmm2, %xmm15
+ movsd %xmm15, -56(%rsp)
+ movaps %xmm8, %xmm13
+ movsd -24(%rsp), %xmm14
+ addsd %xmm2, %xmm13
+ movsd -56(%rsp), %xmm9
+ movaps %xmm14, %xmm0
+ movb -1(%rsp), %cl
+ addsd %xmm6, %xmm9
+ addsd %xmm1, %xmm6
+ subsd %xmm1, %xmm9
+ andb $-128, %cl
+ addsd %xmm9, %xmm0
+ movsd %xmm0, -24(%rsp)
+ movsd -24(%rsp), %xmm4
+ subsd %xmm4, %xmm14
+ addsd %xmm14, %xmm9
+ movsd %xmm9, -56(%rsp)
+ movsd -24(%rsp), %xmm9
+ movsd -56(%rsp), %xmm0
+ movsd %xmm13, -24(%rsp)
+ movsd -24(%rsp), %xmm15
+ subsd %xmm15, %xmm8
+ addsd %xmm8, %xmm2
+ movsd %xmm2, -56(%rsp)
+ movsd -24(%rsp), %xmm2
+ movsd -56(%rsp), %xmm4
+ addsd %xmm6, %xmm4
+ movaps %xmm2, %xmm6
+ addsd %xmm4, %xmm6
+ movsd %xmm6, -24(%rsp)
+ movsd -24(%rsp), %xmm8
+ movsd 1128+__ssinh_la_CoutTab(%rip), %xmm6
+ subsd %xmm8, %xmm2
+ addsd %xmm2, %xmm4
+ movsd %xmm4, -56(%rsp)
+ movsd -24(%rsp), %xmm1
+ mulsd %xmm1, %xmm6
+ movsd -56(%rsp), %xmm2
+ movsd %xmm6, -24(%rsp)
+ movaps %xmm1, %xmm6
+ movsd -24(%rsp), %xmm14
+ mulsd %xmm2, %xmm10
+ subsd %xmm1, %xmm14
+ movsd %xmm14, -56(%rsp)
+ movsd -24(%rsp), %xmm13
+ movsd -56(%rsp), %xmm8
+ subsd %xmm8, %xmm13
+ movsd %xmm13, -24(%rsp)
+ movaps %xmm11, %xmm13
+ movsd -24(%rsp), %xmm15
+ mulsd %xmm1, %xmm13
+ subsd %xmm15, %xmm6
+ mulsd %xmm3, %xmm1
+ mulsd %xmm2, %xmm3
+ movaps %xmm12, %xmm15
+ movaps %xmm13, %xmm4
+ mulsd %xmm9, %xmm15
+ mulsd %xmm0, %xmm12
+ addsd %xmm15, %xmm4
+ addsd %xmm0, %xmm12
+ movsd %xmm6, -56(%rsp)
+ addsd %xmm1, %xmm12
+ movsd -24(%rsp), %xmm8
+ addsd %xmm3, %xmm12
+ movsd -56(%rsp), %xmm6
+ movsd %xmm4, -24(%rsp)
+ movsd -24(%rsp), %xmm14
+ subsd %xmm14, %xmm13
+ addsd %xmm13, %xmm15
+ movsd %xmm15, -56(%rsp)
+ movaps %xmm7, %xmm15
+ mulsd %xmm8, %xmm15
+ mulsd %xmm5, %xmm8
+ mulsd %xmm6, %xmm5
+ mulsd %xmm6, %xmm7
+ movsd -24(%rsp), %xmm14
+ movaps %xmm14, %xmm13
+ movsd -56(%rsp), %xmm4
+ addsd %xmm15, %xmm13
+ addsd %xmm8, %xmm4
+ movsd %xmm13, -24(%rsp)
+ addsd %xmm5, %xmm4
+ movsd -24(%rsp), %xmm13
+ addsd %xmm7, %xmm4
+ subsd %xmm13, %xmm15
+ addsd %xmm4, %xmm12
+ addsd %xmm15, %xmm14
+ movsd %xmm14, -56(%rsp)
+ movaps %xmm9, %xmm15
+ movsd -24(%rsp), %xmm13
+ movsd -56(%rsp), %xmm14
+ addsd %xmm13, %xmm15
+ addsd %xmm14, %xmm12
+ movsd %xmm15, -24(%rsp)
+ movsd -24(%rsp), %xmm15
+ subsd %xmm15, %xmm9
+ addsd %xmm9, %xmm13
+ movsd %xmm13, -56(%rsp)
+ movsd -24(%rsp), %xmm13
+ movsd -56(%rsp), %xmm9
+ addsd %xmm9, %xmm12
+ addsd %xmm12, %xmm13
+ addsd %xmm13, %xmm10
+ movsd %xmm10, -32(%rsp)
+ movb -25(%rsp), %dil
+ andb $127, %dil
+ orb %cl, %dil
+ movb %dil, -25(%rsp)
+ movsd -32(%rsp), %xmm10
+ cvtsd2ss %xmm10, %xmm10
+ movss %xmm10, (%r9)
+ ret
+
+.LBL_2_8:
+
+ movaps %xmm0, %xmm2
+ mulsd %xmm0, %xmm2
+ movsd 1104+__ssinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm2, %xmm1
+ movb -1(%rsp), %dl
+ andb $-128, %dl
+ addsd 1096+__ssinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm2, %xmm1
+ addsd 1088+__ssinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm2, %xmm1
+ addsd 1080+__ssinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm1, %xmm2
+ mulsd %xmm0, %xmm2
+ addsd %xmm2, %xmm0
+ movsd %xmm0, -32(%rsp)
+ movb -25(%rsp), %cl
+ andb $127, %cl
+ orb %dl, %cl
+ movb %cl, -25(%rsp)
+ movsd -32(%rsp), %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ movss %xmm0, (%r9)
+ ret
+
+.LBL_2_9:
+
+ movsd 1112+__ssinh_la_CoutTab(%rip), %xmm1
+ lea __ssinh_la_CoutTab(%rip), %r8
+ mulsd %xmm0, %xmm1
+ movsd 1144+__ssinh_la_CoutTab(%rip), %xmm2
+ movsd 1152+__ssinh_la_CoutTab(%rip), %xmm3
+ movq 8+__ssinh_la_CoutTab(%rip), %rdx
+ movq %rdx, -16(%rsp)
+ addsd 1120+__ssinh_la_CoutTab(%rip), %xmm1
+ movsd %xmm1, -40(%rsp)
+ movsd -40(%rsp), %xmm4
+ movsd 1072+__ssinh_la_CoutTab(%rip), %xmm1
+ movl -40(%rsp), %edx
+ movl %edx, %esi
+ andl $63, %esi
+ subsd 1120+__ssinh_la_CoutTab(%rip), %xmm4
+ mulsd %xmm4, %xmm2
+ lea (%rsi,%rsi), %ecx
+ mulsd %xmm3, %xmm4
+ subsd %xmm2, %xmm0
+ movsd (%r8,%rcx,8), %xmm5
+ lea 1(%rsi,%rsi), %edi
+ shrl $6, %edx
+ subsd %xmm4, %xmm0
+ mulsd %xmm0, %xmm1
+ addl $1022, %edx
+ andl $2047, %edx
+ addsd 1064+__ssinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ addsd 1056+__ssinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ addsd 1048+__ssinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ addsd 1040+__ssinh_la_CoutTab(%rip), %xmm1
+ mulsd %xmm0, %xmm1
+ mulsd %xmm0, %xmm1
+ addsd %xmm0, %xmm1
+ mulsd %xmm5, %xmm1
+ addsd (%r8,%rdi,8), %xmm1
+ addsd %xmm5, %xmm1
+ cmpl $2046, %edx
+ ja .LBL_2_11
+
+
+ movq 8+__ssinh_la_CoutTab(%rip), %rcx
+ shrq $48, %rcx
+ shll $4, %edx
+ andl $-32753, %ecx
+ orl %edx, %ecx
+ movw %cx, -10(%rsp)
+ movsd -16(%rsp), %xmm0
+ mulsd %xmm1, %xmm0
+ movsd %xmm0, -32(%rsp)
+ jmp .LBL_2_12
+
+.LBL_2_11:
+
+ decl %edx
+ andl $2047, %edx
+ movzwl -10(%rsp), %ecx
+ shll $4, %edx
+ andl $-32753, %ecx
+ orl %edx, %ecx
+ movw %cx, -10(%rsp)
+ movsd -16(%rsp), %xmm0
+ mulsd %xmm1, %xmm0
+ mulsd 1024+__ssinh_la_CoutTab(%rip), %xmm0
+ movsd %xmm0, -32(%rsp)
+
+.LBL_2_12:
+
+ movb -25(%rsp), %cl
+ movb -1(%rsp), %dl
+ andb $127, %cl
+ andb $-128, %dl
+ orb %dl, %cl
+ movb %cl, -25(%rsp)
+ movsd -32(%rsp), %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ movss %xmm0, (%r9)
+ ret
+
+.LBL_2_13:
+
+ movsd 1168+__ssinh_la_CoutTab(%rip), %xmm0
+ movl $3, %eax
+ mulsd %xmm2, %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ movss %xmm0, (%r9)
+ ret
+
+.LBL_2_14:
+
+ movsd __ssinh_la_CoutTab(%rip), %xmm0
+ addsd 1160+__ssinh_la_CoutTab(%rip), %xmm0
+ mulsd %xmm2, %xmm0
+ cvtsd2ss %xmm0, %xmm0
+ movss %xmm0, (%r9)
+
+
+ ret
+
+.LBL_2_16:
+
+ movsd 1160+__ssinh_la_CoutTab(%rip), %xmm0
+ mulsd %xmm0, %xmm2
+ movsd %xmm2, -24(%rsp)
+ pxor %xmm2, %xmm2
+ cvtss2sd (%rdi), %xmm2
+ movsd -24(%rsp), %xmm1
+ movq 8+__ssinh_la_CoutTab(%rip), %rdx
+ addsd %xmm1, %xmm2
+ cvtsd2ss %xmm2, %xmm2
+ movq %rdx, -16(%rsp)
+ movss %xmm2, (%r9)
+ ret
+
+.LBL_2_17:
+
+ addss %xmm2, %xmm2
+ movss %xmm2, (%r9)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_ssinh_cout_rare_internal,@function
+ .size __svml_ssinh_cout_rare_internal,.-__svml_ssinh_cout_rare_internal
+..LN__svml_ssinh_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_ssinh_data_internal:
+ .long 1056964608
+ .long 1057148295
+ .long 1057336003
+ .long 1057527823
+ .long 1057723842
+ .long 1057924154
+ .long 1058128851
+ .long 1058338032
+ .long 1058551792
+ .long 1058770234
+ .long 1058993458
+ .long 1059221571
+ .long 1059454679
+ .long 1059692891
+ .long 1059936319
+ .long 1060185078
+ .long 1060439283
+ .long 1060699055
+ .long 1060964516
+ .long 1061235789
+ .long 1061513002
+ .long 1061796286
+ .long 1062085772
+ .long 1062381598
+ .long 1062683901
+ .long 1062992824
+ .long 1063308511
+ .long 1063631111
+ .long 1063960775
+ .long 1064297658
+ .long 1064641917
+ .long 1064993715
+ .long 0
+ .long 2999887785
+ .long 852465809
+ .long 3003046475
+ .long 2984291233
+ .long 3001644133
+ .long 854021668
+ .long 2997748242
+ .long 849550193
+ .long 2995541347
+ .long 851518274
+ .long 809701978
+ .long 2997656926
+ .long 2996185864
+ .long 2980965110
+ .long 3002882728
+ .long 844097402
+ .long 848217591
+ .long 2999013352
+ .long 2992006718
+ .long 831170615
+ .long 3002278818
+ .long 833158180
+ .long 3000769962
+ .long 2991891850
+ .long 2999994908
+ .long 2979965785
+ .long 2982419430
+ .long 2982221534
+ .long 2999469642
+ .long 833168438
+ .long 2987538264
+ .long 1056964608
+ .long 1056605107
+ .long 1056253309
+ .long 1055909050
+ .long 1055572167
+ .long 1055242503
+ .long 1054919903
+ .long 1054604216
+ .long 1054295293
+ .long 1053992990
+ .long 1053697164
+ .long 1053407678
+ .long 1053124394
+ .long 1052847181
+ .long 1052575908
+ .long 1052310447
+ .long 1052050675
+ .long 1051796470
+ .long 1051547711
+ .long 1051304283
+ .long 1051066071
+ .long 1050832963
+ .long 1050604850
+ .long 1050381626
+ .long 1050163184
+ .long 1049949424
+ .long 1049740243
+ .long 1049535546
+ .long 1049335234
+ .long 1049139215
+ .long 1048947395
+ .long 1048759687
+ .long 0
+ .long 2979149656
+ .long 824779830
+ .long 2991081034
+ .long 2973832926
+ .long 2974030822
+ .long 2971577177
+ .long 2991606300
+ .long 2983503242
+ .long 2992381354
+ .long 824769572
+ .long 2993890210
+ .long 822782007
+ .long 2983618110
+ .long 2990624744
+ .long 839828983
+ .long 835708794
+ .long 2994494120
+ .long 2972576502
+ .long 2987797256
+ .long 2989268318
+ .long 801313370
+ .long 843129666
+ .long 2987152739
+ .long 841161585
+ .long 2989359634
+ .long 845633060
+ .long 2993255525
+ .long 2975902625
+ .long 2994657867
+ .long 844077201
+ .long 2991499177
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542464
+ .long 1220542465
+ .long 1220542465
+ .long 1220542465
+ .long 1220542465
+ .long 1220542465
+ .long 1220542465
+ .long 1220542465
+ .long 1220542465
+ .long 1220542465
+ .long 1220542465
+ .long 1220542465
+ .long 1220542465
+ .long 1220542465
+ .long 1220542465
+ .long 1220542465
+ .long 1220542465
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1118743631
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1056964676
+ .long 1056964676
+ .long 1056964676
+ .long 1056964676
+ .long 1056964676
+ .long 1056964676
+ .long 1056964676
+ .long 1056964676
+ .long 1056964676
+ .long 1056964676
+ .long 1056964676
+ .long 1056964676
+ .long 1056964676
+ .long 1056964676
+ .long 1056964676
+ .long 1056964676
+ .long 1042983605
+ .long 1042983605
+ .long 1042983605
+ .long 1042983605
+ .long 1042983605
+ .long 1042983605
+ .long 1042983605
+ .long 1042983605
+ .long 1042983605
+ .long 1042983605
+ .long 1042983605
+ .long 1042983605
+ .long 1042983605
+ .long 1042983605
+ .long 1042983605
+ .long 1042983605
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1069066811
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 1060204544
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 939916788
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 31
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1118743630
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1042983511
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1026206322
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 1007228001
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 985049251
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .long 1056964608
+ .type __svml_ssinh_data_internal,@object
+ .size __svml_ssinh_data_internal,1920
+ .align 32
+__ssinh_la_CoutTab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 1048019041
+ .long 1072704666
+ .long 1398474845
+ .long 3161559171
+ .long 3541402996
+ .long 1072716208
+ .long 2759177317
+ .long 1015903202
+ .long 410360776
+ .long 1072727877
+ .long 1269990655
+ .long 1013024446
+ .long 1828292879
+ .long 1072739672
+ .long 1255956747
+ .long 1016636974
+ .long 852742562
+ .long 1072751596
+ .long 667253587
+ .long 1010842135
+ .long 3490863953
+ .long 1072763649
+ .long 960797498
+ .long 3163997456
+ .long 2930322912
+ .long 1072775834
+ .long 2599499422
+ .long 3163762623
+ .long 1014845819
+ .long 1072788152
+ .long 3117910646
+ .long 3162607681
+ .long 3949972341
+ .long 1072800603
+ .long 2068408548
+ .long 1015962444
+ .long 828946858
+ .long 1072813191
+ .long 10642492
+ .long 1016988014
+ .long 2288159958
+ .long 1072825915
+ .long 2169144469
+ .long 1015924597
+ .long 1853186616
+ .long 1072838778
+ .long 3066496371
+ .long 1016705150
+ .long 1709341917
+ .long 1072851781
+ .long 2571168217
+ .long 1015201075
+ .long 4112506593
+ .long 1072864925
+ .long 2947355221
+ .long 1015419624
+ .long 2799960843
+ .long 1072878213
+ .long 1423655381
+ .long 1016070727
+ .long 171030293
+ .long 1072891646
+ .long 3526460132
+ .long 1015477354
+ .long 2992903935
+ .long 1072905224
+ .long 2218154406
+ .long 1016276769
+ .long 926591435
+ .long 1072918951
+ .long 3208833762
+ .long 3163962090
+ .long 887463927
+ .long 1072932827
+ .long 3596744163
+ .long 3161842742
+ .long 1276261410
+ .long 1072946854
+ .long 300981948
+ .long 1015732745
+ .long 569847338
+ .long 1072961034
+ .long 472945272
+ .long 3160339305
+ .long 1617004845
+ .long 1072975368
+ .long 82804944
+ .long 1011391354
+ .long 3049340112
+ .long 1072989858
+ .long 3062915824
+ .long 1014219171
+ .long 3577096743
+ .long 1073004506
+ .long 2951496418
+ .long 1014842263
+ .long 1990012071
+ .long 1073019314
+ .long 3529070563
+ .long 3163861769
+ .long 1453150082
+ .long 1073034283
+ .long 498154669
+ .long 3162536638
+ .long 917841882
+ .long 1073049415
+ .long 18715565
+ .long 1016707884
+ .long 3712504873
+ .long 1073064711
+ .long 88491949
+ .long 1016476236
+ .long 363667784
+ .long 1073080175
+ .long 813753950
+ .long 1016833785
+ .long 2956612997
+ .long 1073095806
+ .long 2118169751
+ .long 3163784129
+ .long 2186617381
+ .long 1073111608
+ .long 2270764084
+ .long 3164321289
+ .long 1719614413
+ .long 1073127582
+ .long 330458198
+ .long 3164331316
+ .long 1013258799
+ .long 1073143730
+ .long 1748797611
+ .long 3161177658
+ .long 3907805044
+ .long 1073160053
+ .long 2257091225
+ .long 3162598983
+ .long 1447192521
+ .long 1073176555
+ .long 1462857171
+ .long 3163563097
+ .long 1944781191
+ .long 1073193236
+ .long 3993278767
+ .long 3162772855
+ .long 919555682
+ .long 1073210099
+ .long 3121969534
+ .long 1013996802
+ .long 2571947539
+ .long 1073227145
+ .long 3558159064
+ .long 3164425245
+ .long 2604962541
+ .long 1073244377
+ .long 2614425274
+ .long 3164587768
+ .long 1110089947
+ .long 1073261797
+ .long 1451641639
+ .long 1016523249
+ .long 2568320822
+ .long 1073279406
+ .long 2732824428
+ .long 1015401491
+ .long 2966275557
+ .long 1073297207
+ .long 2176155324
+ .long 3160891335
+ .long 2682146384
+ .long 1073315202
+ .long 2082178513
+ .long 3164411995
+ .long 2191782032
+ .long 1073333393
+ .long 2960257726
+ .long 1014791238
+ .long 2069751141
+ .long 1073351782
+ .long 1562170675
+ .long 3163773257
+ .long 2990417245
+ .long 1073370371
+ .long 3683467745
+ .long 3164417902
+ .long 1434058175
+ .long 1073389163
+ .long 251133233
+ .long 1016134345
+ .long 2572866477
+ .long 1073408159
+ .long 878562433
+ .long 1016570317
+ .long 3092190715
+ .long 1073427362
+ .long 814012168
+ .long 3160571998
+ .long 4076559943
+ .long 1073446774
+ .long 2119478331
+ .long 3161806927
+ .long 2420883922
+ .long 1073466398
+ .long 2049810052
+ .long 1015168464
+ .long 3716502172
+ .long 1073486235
+ .long 2303740125
+ .long 1015091301
+ .long 777507147
+ .long 1073506289
+ .long 4282924205
+ .long 1016236109
+ .long 3706687593
+ .long 1073526560
+ .long 3521726939
+ .long 1014301643
+ .long 1242007932
+ .long 1073547053
+ .long 1132034716
+ .long 3164388407
+ .long 3707479175
+ .long 1073567768
+ .long 3613079303
+ .long 1015213314
+ .long 64696965
+ .long 1073588710
+ .long 1768797490
+ .long 1016865536
+ .long 863738719
+ .long 1073609879
+ .long 1326992220
+ .long 3163661773
+ .long 3884662774
+ .long 1073631278
+ .long 2158611599
+ .long 1015258761
+ .long 2728693978
+ .long 1073652911
+ .long 396109971
+ .long 3164511267
+ .long 3999357479
+ .long 1073674779
+ .long 2258941616
+ .long 1016973300
+ .long 1533953344
+ .long 1073696886
+ .long 769171851
+ .long 1016714209
+ .long 2174652632
+ .long 1073719233
+ .long 4087714590
+ .long 1015498835
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 0
+ .long 0
+ .long 1071644672
+ .long 1431652600
+ .long 1069897045
+ .long 1431670732
+ .long 1067799893
+ .long 984555731
+ .long 1065423122
+ .long 472530941
+ .long 1062650218
+ .long 1431655765
+ .long 1069897045
+ .long 286331153
+ .long 1065423121
+ .long 436314138
+ .long 1059717536
+ .long 2773927732
+ .long 1053236707
+ .long 1697350398
+ .long 1079448903
+ .long 0
+ .long 1127743488
+ .long 33554432
+ .long 1101004800
+ .long 2684354560
+ .long 1079401119
+ .long 4277796864
+ .long 1065758274
+ .long 3164486458
+ .long 1025308570
+ .long 1
+ .long 1048576
+ .long 4294967295
+ .long 2146435071
+ .long 3671843104
+ .long 1067178892
+ .long 3875694624
+ .long 1077247184
+ .type __ssinh_la_CoutTab,@object
+ .size __ssinh_la_CoutTab,1192
+ .space 8, 0x00
+ .align 16
+.L_2il0floatpacket.98:
+ .long 0x00000000,0x80000000,0x00000000,0x00000000
+ .type .L_2il0floatpacket.98,@object
+ .size .L_2il0floatpacket.98,16
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * ( optimized for throughput, with small table lookup, works when HW FMA is available )
+ *
+ * Implementation reduces argument x to |R|<pi/32
+ * 16-entry tables used to store high and low parts of tan(x0)
+ * Argument x = N*pi + x0 + (R); x0 = k*pi/16, with k in {0, 1, ..., 15}
+ * (very large arguments reduction resolved in _vdreduction_core.i)
+ * Compute result as (tan(x0) + tan(R))/(1-tan(x0)*tan(R))
+ * High accuracy ( < 1 ulp ) version keeps extra precision for numerator, denominator, and during
+ * final NR-iteration computing quotient.
+ *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_tan8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_tan8
+
+__svml_tan8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ xorl %edx, %edx
+
+/* Large values check */
+ vmovups 28160+__svml_dtan_data_internal(%rip), %zmm1
+
+/*
+ * ----------------------------------------------------------
+ * Main path
+ * ----------------------------------------------------------
+ * start arg. reduction
+ */
+ vmovups 1152+__svml_dtan_data_internal(%rip), %zmm2
+ vmovups 64+__svml_dtan_data_internal(%rip), %zmm5
+ vmovups 128+__svml_dtan_data_internal(%rip), %zmm3
+ vmovups 192+__svml_dtan_data_internal(%rip), %zmm4
+ vmovaps %zmm0, %zmm11
+ vandpd 1024+__svml_dtan_data_internal(%rip), %zmm11, %zmm0
+ vcmppd $22, {sae}, %zmm1, %zmm0, %k1
+ vmovups __svml_dtan_data_internal(%rip), %zmm1
+
+/*
+ * ----------------------------------------------------------
+ * End of main path
+ * ----------------------------------------------------------
+ */
+ kortestw %k1, %k1
+ vfmadd213pd {rn-sae}, %zmm2, %zmm11, %zmm1
+ vsubpd {rn-sae}, %zmm2, %zmm1, %zmm8
+ vfnmadd213pd {rn-sae}, %zmm11, %zmm8, %zmm5
+ vfnmadd231pd {rn-sae}, %zmm8, %zmm3, %zmm5
+ vfnmadd213pd {rn-sae}, %zmm5, %zmm4, %zmm8
+ jne .LBL_1_12
+
+.LBL_1_2:
+
+ vmovups 384+__svml_dtan_data_internal(%rip), %zmm0
+ vmovups 832+__svml_dtan_data_internal(%rip), %zmm5
+ vmovups 768+__svml_dtan_data_internal(%rip), %zmm2
+ vmovups 704+__svml_dtan_data_internal(%rip), %zmm3
+ vmovups 640+__svml_dtan_data_internal(%rip), %zmm4
+ vmulpd {rn-sae}, %zmm8, %zmm8, %zmm6
+ vpermt2pd 448+__svml_dtan_data_internal(%rip), %zmm1, %zmm0
+ vmovups 896+__svml_dtan_data_internal(%rip), %zmm1
+ vfmadd231pd {rn-sae}, %zmm6, %zmm1, %zmm5
+ vfmadd213pd {rn-sae}, %zmm2, %zmm6, %zmm5
+ vfmadd213pd {rn-sae}, %zmm3, %zmm6, %zmm5
+ vfmadd213pd {rn-sae}, %zmm4, %zmm6, %zmm5
+ vmulpd {rn-sae}, %zmm8, %zmm5, %zmm7
+ vfmadd213pd {rn-sae}, %zmm8, %zmm6, %zmm7
+
+/*
+ * Computer Denominator:
+ * dDenominator - dDlow ~= 1-(dTh+dTl)*(dP+dPlow)
+ */
+ vmovups 960+__svml_dtan_data_internal(%rip), %zmm8
+
+/*
+ * Compute Numerator:
+ * dNumerator + dNlow ~= dTh+dTl+dP+dPlow
+ */
+ vaddpd {rn-sae}, %zmm0, %zmm7, %zmm9
+ vfnmadd213pd {rn-sae}, %zmm8, %zmm7, %zmm0
+
+/*
+ * Now computes (dNumerator + dNlow)/(dDenominator - dDlow)
+ * Choose NR iteration instead of hardware division
+ */
+ vrcp14pd %zmm0, %zmm10
+
+/* One NR iteration to refine dRcp */
+ vfnmadd231pd {rn-sae}, %zmm10, %zmm0, %zmm8
+ vfmadd213pd {rn-sae}, %zmm10, %zmm8, %zmm10
+ vmulpd {rn-sae}, %zmm9, %zmm10, %zmm12
+
+/* One NR iteration to refine dQuotient */
+ vfmsub213pd {rn-sae}, %zmm9, %zmm12, %zmm0
+ vfnmadd213pd {rn-sae}, %zmm12, %zmm10, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_4
+
+.LBL_1_3:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_4:
+
+ vmovups %zmm11, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_3
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_8:
+
+ btl %r12d, %r13d
+ jc .LBL_1_11
+
+.LBL_1_9:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_8
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_3
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_11:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dtan_cout_rare_internal
+ jmp .LBL_1_9
+ .cfi_restore 4
+ .cfi_restore 5
+ .cfi_restore 12
+ .cfi_restore 13
+ .cfi_restore 122
+ .cfi_restore 123
+ .cfi_restore 124
+ .cfi_restore 125
+
+.LBL_1_12:
+
+ vmovups 1088+__svml_dtan_data_internal(%rip), %zmm14
+
+/*
+ * Get the (2^a / 2pi) mod 1 values from the table.
+ * Because VLANG doesn't have L-type gather, we need a trivial cast
+ */
+ lea __svml_dtan_reduction_data_internal(%rip), %rax
+ vmovups %zmm1, (%rsp)
+ vpbroadcastq .L_2il0floatpacket.18(%rip), %zmm9
+ vandpd %zmm0, %zmm14, %zmm6
+ vmovups %zmm8, 64(%rsp)
+ vcmppd $4, {sae}, %zmm14, %zmm6, %k2
+ vmovaps %zmm9, %zmm5
+ vpandq .L_2il0floatpacket.19(%rip){1to8}, %zmm11, %zmm8
+ vpsrlq $52, %zmm8, %zmm10
+ vpsllq $1, %zmm10, %zmm7
+ vpaddq %zmm10, %zmm7, %zmm4
+ vpsllq $3, %zmm4, %zmm0
+ vpmovqd %zmm0, %ymm3
+ vpandnq %zmm6, %zmm6, %zmm5{%k2}
+ vcmppd $3, {sae}, %zmm5, %zmm5, %k0
+
+/*
+ * Break the P_xxx and m into 32-bit chunks ready for
+ * the long multiplication via 32x32->64 multiplications
+ */
+ vpbroadcastq .L_2il0floatpacket.22(%rip), %zmm6
+ kxnorw %k0, %k0, %k3
+ kxnorw %k0, %k0, %k2
+ kmovw %k0, %edx
+ vpxord %zmm2, %zmm2, %zmm2
+ vgatherdpd (%rax,%ymm3), %zmm2{%k3}
+ kxnorw %k0, %k0, %k3
+ vpsrlq $32, %zmm2, %zmm5
+ vpxord %zmm1, %zmm1, %zmm1
+ vpxord %zmm8, %zmm8, %zmm8
+ vgatherdpd 8(%rax,%ymm3), %zmm1{%k2}
+ vgatherdpd 16(%rax,%ymm3), %zmm8{%k3}
+ vpsrlq $32, %zmm1, %zmm0
+ vpsrlq $32, %zmm8, %zmm13
+
+/*
+ * Also get the significand as an integer
+ * NB: adding in the integer bit is wrong for denorms!
+ * To make this work for denorms we should do something slightly different
+ */
+ vpandq .L_2il0floatpacket.20(%rip){1to8}, %zmm11, %zmm15
+ vpaddq .L_2il0floatpacket.21(%rip){1to8}, %zmm15, %zmm14
+ vpsrlq $32, %zmm14, %zmm7
+ vpmullq %zmm0, %zmm7, %zmm3
+ vpandq %zmm6, %zmm2, %zmm10
+ vpandq %zmm6, %zmm1, %zmm12
+ vpandq %zmm6, %zmm8, %zmm15
+ vpandq %zmm6, %zmm14, %zmm14
+
+/* Now do the big multiplication and carry propagation */
+ vpmullq %zmm10, %zmm7, %zmm4
+ vpmullq %zmm12, %zmm7, %zmm2
+ vpmullq %zmm13, %zmm7, %zmm1
+ vpmullq %zmm15, %zmm7, %zmm8
+ vpmullq %zmm5, %zmm14, %zmm7
+ vpmullq %zmm10, %zmm14, %zmm5
+ vpmullq %zmm0, %zmm14, %zmm10
+ vpmullq %zmm12, %zmm14, %zmm0
+ vpmullq %zmm13, %zmm14, %zmm12
+ vpsrlq $32, %zmm10, %zmm15
+ vpsrlq $32, %zmm0, %zmm13
+ vpsrlq $32, %zmm12, %zmm14
+ vpsrlq $32, %zmm5, %zmm12
+ vpsrlq $32, %zmm8, %zmm8
+ vpaddq %zmm14, %zmm1, %zmm1
+ vpaddq %zmm13, %zmm2, %zmm2
+ vpaddq %zmm15, %zmm3, %zmm15
+ vpaddq %zmm12, %zmm4, %zmm3
+ vpandq %zmm6, %zmm0, %zmm13
+ vpaddq %zmm1, %zmm13, %zmm4
+ vpaddq %zmm4, %zmm8, %zmm14
+ vpsrlq $32, %zmm14, %zmm0
+ vpandq %zmm6, %zmm10, %zmm10
+ vpaddq %zmm2, %zmm10, %zmm1
+ vpaddq %zmm1, %zmm0, %zmm8
+
+/*
+ * Now round at the 2^-9 bit position for reduction mod pi/2^8
+ * instead of the original 2pi (but still with the same 2pi scaling).
+ * Use a shifter of 2^43 + 2^42.
+ * The N we get is our final version; it has an offset of
+ * 2^9 because of the implicit integer bit, and anyway for negative
+ * starting value it's a 2s complement thing. But we need to mask
+ * off the exponent part anyway so it's fine.
+ */
+ vpbroadcastq .L_2il0floatpacket.25(%rip), %zmm1
+ vpandq %zmm6, %zmm7, %zmm7
+ vpaddq %zmm3, %zmm7, %zmm13
+ vpsrlq $32, %zmm8, %zmm3
+ vpandq %zmm6, %zmm5, %zmm5
+ vpaddq %zmm15, %zmm5, %zmm2
+ vpaddq %zmm2, %zmm3, %zmm15
+ vpsrlq $32, %zmm15, %zmm12
+ vpaddq %zmm13, %zmm12, %zmm5
+
+/* Assemble reduced argument from the pieces */
+ vpandq %zmm6, %zmm14, %zmm10
+ vpandq %zmm6, %zmm15, %zmm7
+ vpsllq $32, %zmm5, %zmm6
+ vpsllq $32, %zmm8, %zmm5
+ vpaddq %zmm7, %zmm6, %zmm4
+ vpaddq %zmm10, %zmm5, %zmm10
+ vpsrlq $12, %zmm4, %zmm6
+
+/*
+ * We want to incorporate the original sign now too.
+ * Do it here for convenience in getting the right N value,
+ * though we could wait right to the end if we were prepared
+ * to modify the sign of N later too.
+ * So get the appropriate sign mask now (or sooner).
+ */
+ vpandq .L_2il0floatpacket.23(%rip){1to8}, %zmm11, %zmm0
+ vpandq .L_2il0floatpacket.28(%rip){1to8}, %zmm10, %zmm13
+ vpsllq $28, %zmm13, %zmm14
+
+/*
+ * Create floating-point high part, implicitly adding integer bit 1
+ * Incorporate overall sign at this stage too.
+ */
+ vpxorq .L_2il0floatpacket.24(%rip){1to8}, %zmm0, %zmm8
+ vporq %zmm8, %zmm6, %zmm2
+ vaddpd {rn-sae}, %zmm2, %zmm1, %zmm12
+ vsubpd {rn-sae}, %zmm1, %zmm12, %zmm3
+ vsubpd {rn-sae}, %zmm3, %zmm2, %zmm7
+
+/*
+ * Create floating-point low and medium parts, respectively
+ * lo_23, ... lo_0, 0, ..., 0
+ * hi_11, ... hi_0, lo_63, ..., lo_24
+ * then subtract off the implicitly added integer bits,
+ * 2^-104 and 2^-52, respectively.
+ * Put the original sign into all of them at this stage.
+ */
+ vpxorq .L_2il0floatpacket.27(%rip){1to8}, %zmm0, %zmm6
+ vporq %zmm6, %zmm14, %zmm15
+ vpandq .L_2il0floatpacket.30(%rip){1to8}, %zmm4, %zmm4
+ vsubpd {rn-sae}, %zmm6, %zmm15, %zmm8
+
+/*
+ * If the magnitude of the input is <= 2^-20, then
+ * just pass through the input, since no reduction will be needed and
+ * the main path will only work accurately if the reduced argument is
+ * about >= 2^-70 (which it is for all large pi multiples)
+ */
+ vpbroadcastq .L_2il0floatpacket.34(%rip), %zmm14
+ vandpd .L_2il0floatpacket.33(%rip){1to8}, %zmm11, %zmm15
+ vpsrlq $24, %zmm10, %zmm6
+ vcmppd $26, {sae}, %zmm14, %zmm15, %k2
+ vcmppd $22, {sae}, %zmm14, %zmm15, %k3
+ vpxorq .L_2il0floatpacket.29(%rip){1to8}, %zmm0, %zmm1
+ vpsllq $40, %zmm4, %zmm0
+ vporq %zmm6, %zmm0, %zmm0
+ vporq %zmm1, %zmm0, %zmm4
+ vsubpd {rn-sae}, %zmm1, %zmm4, %zmm2
+
+/* Now add them up into 2 reasonably aligned pieces */
+ vaddpd {rn-sae}, %zmm2, %zmm7, %zmm13
+ vsubpd {rn-sae}, %zmm13, %zmm7, %zmm7
+ vaddpd {rn-sae}, %zmm7, %zmm2, %zmm3
+ vaddpd {rn-sae}, %zmm8, %zmm3, %zmm0
+ vpbroadcastq .L_2il0floatpacket.32(%rip), %zmm8
+
+/* Grab our final N value as an integer, appropriately masked mod 2^9 */
+ vpandq .L_2il0floatpacket.26(%rip){1to8}, %zmm12, %zmm5
+
+/*
+ * Now multiply those numbers all by 2 pi, reasonably accurately.
+ * (RHi + RLo) * (pi_lead + pi_trail) ~=
+ * RHi * pi_lead + (RHi * pi_trail + RLo * pi_lead)
+ */
+ vpbroadcastq .L_2il0floatpacket.31(%rip), %zmm12
+
+/* The output is _VRES_Z (high) + _VRES_E (low), and the integer part is _VRES_IND */
+ vpmovqd %zmm5, %ymm4
+ vmulpd {rn-sae}, %zmm12, %zmm13, %zmm6
+ vmovaps %zmm12, %zmm10
+ vfmsub213pd {rn-sae}, %zmm6, %zmm13, %zmm10
+ vfmadd213pd {rn-sae}, %zmm10, %zmm8, %zmm13
+ vpbroadcastq .L_2il0floatpacket.37(%rip), %zmm10
+ vfmadd213pd {rn-sae}, %zmm13, %zmm12, %zmm0
+ vpbroadcastq .L_2il0floatpacket.36(%rip), %zmm12
+ vmovaps %zmm9, %zmm8
+ vpandnq %zmm15, %zmm15, %zmm8{%k2}
+ vpandnq %zmm15, %zmm15, %zmm9{%k3}
+ vandpd %zmm11, %zmm9, %zmm9
+ vandpd %zmm6, %zmm8, %zmm14
+ vorpd %zmm14, %zmm9, %zmm6
+ vandpd %zmm0, %zmm8, %zmm9
+ vmovdqu .L_2il0floatpacket.35(%rip), %ymm0
+ vpsrlq $32, %zmm6, %zmm5
+ vpmovqd %zmm5, %ymm5
+ vpsrld $31, %ymm5, %ymm1
+ vpsubd %ymm1, %ymm0, %ymm2
+
+/*
+ * ----------------------------------------------------------
+ * End of large arguments path
+ * ----------------------------------------------------------
+ * Merge results from main and large paths:
+ */
+ vmovups (%rsp), %zmm1
+ vpaddd %ymm2, %ymm4, %ymm3
+ vpsrld $4, %ymm3, %ymm14
+ vpslld $4, %ymm14, %ymm7
+ vpmovzxdq %ymm14, %zmm1{%k1}
+ vpsubd %ymm7, %ymm4, %ymm8
+ vcvtdq2pd %ymm8, %zmm15
+ vmovups 64(%rsp), %zmm8
+ vfmadd231pd {rn-sae}, %zmm15, %zmm10, %zmm9
+ vaddpd {rn-sae}, %zmm6, %zmm9, %zmm13
+ vfmadd213pd {rn-sae}, %zmm13, %zmm12, %zmm15
+ vblendmpd %zmm15, %zmm8, %zmm8{%k1}
+ jmp .LBL_1_2
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_tan8,@function
+ .size __svml_tan8,.-__svml_tan8
+..LN__svml_tan8.0:
+
+.L_2__routine_start___svml_dtan_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dtan_cout_rare_internal:
+
+
+ .cfi_startproc
+..L65:
+
+ xorl %eax, %eax
+ movzwl 6(%rdi), %ecx
+ movsd (%rdi), %xmm1
+ andl $32752, %ecx
+ movb 7(%rdi), %dl
+ andb $127, %dl
+ movsd %xmm1, -8(%rsp)
+ movb %dl, -1(%rsp)
+ cmpl $32752, %ecx
+ je .LBL_2_3
+
+
+ ret
+
+.LBL_2_3:
+
+ cmpl $0, -8(%rsp)
+ jne .LBL_2_6
+
+
+ cmpl $2146435072, -4(%rsp)
+ jne .LBL_2_6
+
+
+ movsd __dtan_la_Tab(%rip), %xmm0
+ movl $1, %eax
+ mulsd %xmm0, %xmm1
+ movsd %xmm1, (%rsi)
+ ret
+
+.LBL_2_6:
+
+ mulsd %xmm1, %xmm1
+ movsd %xmm1, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dtan_cout_rare_internal,@function
+ .size __svml_dtan_cout_rare_internal,.-__svml_dtan_cout_rare_internal
+..LN__svml_dtan_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dtan_data_internal:
+ .long 1841940611
+ .long 1075076912
+ .long 1841940611
+ .long 1075076912
+ .long 1841940611
+ .long 1075076912
+ .long 1841940611
+ .long 1075076912
+ .long 1841940611
+ .long 1075076912
+ .long 1841940611
+ .long 1075076912
+ .long 1841940611
+ .long 1075076912
+ .long 1841940611
+ .long 1075076912
+ .long 1413754136
+ .long 1070146043
+ .long 1413754136
+ .long 1070146043
+ .long 1413754136
+ .long 1070146043
+ .long 1413754136
+ .long 1070146043
+ .long 1413754136
+ .long 1070146043
+ .long 1413754136
+ .long 1070146043
+ .long 1413754136
+ .long 1070146043
+ .long 1413754136
+ .long 1070146043
+ .long 856972294
+ .long 1013032486
+ .long 856972294
+ .long 1013032486
+ .long 856972294
+ .long 1013032486
+ .long 856972294
+ .long 1013032486
+ .long 856972294
+ .long 1013032486
+ .long 856972294
+ .long 1013032486
+ .long 856972294
+ .long 1013032486
+ .long 856972294
+ .long 1013032486
+ .long 688016905
+ .long 958143697
+ .long 688016905
+ .long 958143697
+ .long 688016905
+ .long 958143697
+ .long 688016905
+ .long 958143697
+ .long 688016905
+ .long 958143697
+ .long 688016905
+ .long 958143697
+ .long 688016905
+ .long 958143697
+ .long 688016905
+ .long 958143697
+ .long 855638016
+ .long 1013032486
+ .long 855638016
+ .long 1013032486
+ .long 855638016
+ .long 1013032486
+ .long 855638016
+ .long 1013032486
+ .long 855638016
+ .long 1013032486
+ .long 855638016
+ .long 1013032486
+ .long 855638016
+ .long 1013032486
+ .long 855638016
+ .long 1013032486
+ .long 3773204808
+ .long 979655686
+ .long 3773204808
+ .long 979655686
+ .long 3773204808
+ .long 979655686
+ .long 3773204808
+ .long 979655686
+ .long 3773204808
+ .long 979655686
+ .long 3773204808
+ .long 979655686
+ .long 3773204808
+ .long 979655686
+ .long 3773204808
+ .long 979655686
+ .long 0
+ .long 2147483648
+ .long 3763679576
+ .long 1070167541
+ .long 2583490354
+ .long 1071284857
+ .long 716700048
+ .long 1071997368
+ .long 0
+ .long 1072693248
+ .long 3797578849
+ .long 1073213976
+ .long 859807206
+ .long 1073958991
+ .long 3795994481
+ .long 1075059710
+ .long 4294967295
+ .long 4293918719
+ .long 3795994481
+ .long 3222543358
+ .long 859807206
+ .long 3221442639
+ .long 3797578849
+ .long 3220697624
+ .long 0
+ .long 3220176896
+ .long 716700048
+ .long 3219481016
+ .long 2583490354
+ .long 3218768505
+ .long 3763679576
+ .long 3217651189
+ .long 0
+ .long 2147483648
+ .long 1732516166
+ .long 1009710547
+ .long 2973134505
+ .long 1014008623
+ .long 561165941
+ .long 1015523525
+ .long 0
+ .long 0
+ .long 1767150223
+ .long 1016338938
+ .long 4129738197
+ .long 1017254245
+ .long 4275273486
+ .long 1015088902
+ .long 0
+ .long 4238344192
+ .long 4275273486
+ .long 3162572550
+ .long 4129738197
+ .long 3164737893
+ .long 1767150223
+ .long 3163822586
+ .long 0
+ .long 0
+ .long 561165941
+ .long 3163007173
+ .long 2973134505
+ .long 3161492271
+ .long 1732516166
+ .long 3157194195
+ .long 1431655900
+ .long 1070945621
+ .long 1431655900
+ .long 1070945621
+ .long 1431655900
+ .long 1070945621
+ .long 1431655900
+ .long 1070945621
+ .long 1431655900
+ .long 1070945621
+ .long 1431655900
+ .long 1070945621
+ .long 1431655900
+ .long 1070945621
+ .long 1431655900
+ .long 1070945621
+ .long 285935618
+ .long 1069617425
+ .long 285935618
+ .long 1069617425
+ .long 285935618
+ .long 1069617425
+ .long 285935618
+ .long 1069617425
+ .long 285935618
+ .long 1069617425
+ .long 285935618
+ .long 1069617425
+ .long 285935618
+ .long 1069617425
+ .long 285935618
+ .long 1069617425
+ .long 1218258378
+ .long 1068212666
+ .long 1218258378
+ .long 1068212666
+ .long 1218258378
+ .long 1068212666
+ .long 1218258378
+ .long 1068212666
+ .long 1218258378
+ .long 1068212666
+ .long 1218258378
+ .long 1068212666
+ .long 1218258378
+ .long 1068212666
+ .long 1218258378
+ .long 1068212666
+ .long 1716452265
+ .long 1066820779
+ .long 1716452265
+ .long 1066820779
+ .long 1716452265
+ .long 1066820779
+ .long 1716452265
+ .long 1066820779
+ .long 1716452265
+ .long 1066820779
+ .long 1716452265
+ .long 1066820779
+ .long 1716452265
+ .long 1066820779
+ .long 1716452265
+ .long 1066820779
+ .long 3351902813
+ .long 1065508044
+ .long 3351902813
+ .long 1065508044
+ .long 3351902813
+ .long 1065508044
+ .long 3351902813
+ .long 1065508044
+ .long 3351902813
+ .long 1065508044
+ .long 3351902813
+ .long 1065508044
+ .long 3351902813
+ .long 1065508044
+ .long 3351902813
+ .long 1065508044
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 2146435072
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 0
+ .long 1127743488
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 1413480448
+ .long 1065951739
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 442499072
+ .long 1029747809
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 771977331
+ .long 993204618
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 511
+ .long 0
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1841940611
+ .long 1079271216
+ .long 1413754136
+ .long 1073291771
+ .long 856972295
+ .long 1016178214
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1431655769
+ .long 1070945621
+ .long 0
+ .long 0
+ .long 285114973
+ .long 1069617425
+ .long 0
+ .long 0
+ .long 3223786787
+ .long 1068212718
+ .long 1570481342
+ .long 1073278903
+ .long 2595802427
+ .long 1014369127
+ .long 0
+ .long 0
+ .long 75380366
+ .long 1065951822
+ .long 2999349512
+ .long 3155830414
+ .long 0
+ .long 1072693248
+ .long 2911696896
+ .long 1059306942
+ .long 451505506
+ .long 1065952070
+ .long 3089290734
+ .long 1070946463
+ .long 3705470160
+ .long 1065403174
+ .long 2568117119
+ .long 1069618857
+ .long 643394266
+ .long 1064501452
+ .long 501385640
+ .long 1068202863
+ .long 1727208548
+ .long 1073266035
+ .long 2531251621
+ .long 3162145225
+ .long 0
+ .long 0
+ .long 612012528
+ .long 1067000646
+ .long 549540416
+ .long 3153143513
+ .long 0
+ .long 1072693248
+ .long 2064191488
+ .long 1061404484
+ .long 4042886527
+ .long 1067001638
+ .long 149923164
+ .long 1070948993
+ .long 104448276
+ .long 1066453158
+ .long 2663431480
+ .long 1069623160
+ .long 4100741303
+ .long 1065552806
+ .long 3253087105
+ .long 1068220130
+ .long 1883935754
+ .long 1073253167
+ .long 2988318241
+ .long 3163734974
+ .long 0
+ .long 0
+ .long 3919601072
+ .long 1067637674
+ .long 2391050108
+ .long 3158536696
+ .long 0
+ .long 1072693248
+ .long 1803946752
+ .long 1062615560
+ .long 2247013512
+ .long 1067639351
+ .long 3277043521
+ .long 1070953215
+ .long 578207594
+ .long 1067006653
+ .long 1619551617
+ .long 1069630354
+ .long 2647612950
+ .long 1066183733
+ .long 2691224773
+ .long 1068193529
+ .long 2040662960
+ .long 1073240299
+ .long 4270081753
+ .long 3164530442
+ .long 0
+ .long 0
+ .long 2319126882
+ .long 1068050215
+ .long 2052183488
+ .long 1006305725
+ .long 0
+ .long 1072693248
+ .long 2962101888
+ .long 1063503197
+ .long 3966050657
+ .long 1068054193
+ .long 3178024141
+ .long 1070959142
+ .long 1146831000
+ .long 1067507381
+ .long 1630003540
+ .long 1069640468
+ .long 2204487828
+ .long 1066612393
+ .long 783402153
+ .long 1068243248
+ .long 2197390165
+ .long 1073227431
+ .long 3038089327
+ .long 1016395176
+ .long 0
+ .long 0
+ .long 3930011523
+ .long 1068463253
+ .long 3574549514
+ .long 3158343440
+ .long 0
+ .long 1072693248
+ .long 930814464
+ .long 1064233867
+ .long 3218126771
+ .long 1068471034
+ .long 873740287
+ .long 1070966789
+ .long 1580060562
+ .long 1067789097
+ .long 1505280051
+ .long 1069653548
+ .long 2221338604
+ .long 1066937592
+ .long 2641117162
+ .long 1068312400
+ .long 2354117371
+ .long 1073214563
+ .long 3512651629
+ .long 1015129272
+ .long 0
+ .long 0
+ .long 3439278129
+ .long 1068687929
+ .long 1073016494
+ .long 1012431341
+ .long 0
+ .long 1072693248
+ .long 2934847296
+ .long 1064716672
+ .long 2625704508
+ .long 1068694663
+ .long 3692939630
+ .long 1070976174
+ .long 3072165553
+ .long 1068074393
+ .long 223733198
+ .long 1069669653
+ .long 1158528257
+ .long 1067269817
+ .long 3197805108
+ .long 1068357327
+ .long 2510844577
+ .long 1073201695
+ .long 498468876
+ .long 3161098111
+ .long 0
+ .long 0
+ .long 1972895212
+ .long 1068895135
+ .long 3208334872
+ .long 1010638399
+ .long 0
+ .long 1072693248
+ .long 4107853760
+ .long 1065246718
+ .long 2229347510
+ .long 1068905849
+ .long 4172638464
+ .long 1070987323
+ .long 212469442
+ .long 1068364021
+ .long 1989165656
+ .long 1069688852
+ .long 4131454312
+ .long 1067530480
+ .long 3453538591
+ .long 1068469531
+ .long 2667571783
+ .long 1073188827
+ .long 1614402419
+ .long 3163482232
+ .long 0
+ .long 0
+ .long 2354785698
+ .long 1069102779
+ .long 959196066
+ .long 1012432163
+ .long 0
+ .long 1072693248
+ .long 2828230112
+ .long 1065606626
+ .long 3693284264
+ .long 1069118808
+ .long 1996210616
+ .long 1071000265
+ .long 3053541878
+ .long 1068578846
+ .long 1133334569
+ .long 1069711236
+ .long 977677893
+ .long 1067705915
+ .long 347264115
+ .long 1068436198
+ .long 2824298989
+ .long 1073175959
+ .long 2088964722
+ .long 3164313480
+ .long 0
+ .long 0
+ .long 931121154
+ .long 1069310926
+ .long 1121692745
+ .long 3159637885
+ .long 0
+ .long 1072693248
+ .long 709357472
+ .long 1065955296
+ .long 29972165
+ .long 1069333808
+ .long 254360647
+ .long 1071015033
+ .long 3732687627
+ .long 1068729157
+ .long 3224370683
+ .long 1069736900
+ .long 202592779
+ .long 1067887231
+ .long 1420423314
+ .long 1068491719
+ .long 2981026194
+ .long 1073163091
+ .long 924239062
+ .long 1016612139
+ .long 0
+ .long 0
+ .long 982366697
+ .long 1069519640
+ .long 1160213218
+ .long 3158385836
+ .long 0
+ .long 1072693248
+ .long 404678272
+ .long 1066346403
+ .long 1419607756
+ .long 1069549319
+ .long 1800406832
+ .long 1071031665
+ .long 3144361055
+ .long 1068882825
+ .long 1744148040
+ .long 1069765960
+ .long 3211597674
+ .long 1068075289
+ .long 404952187
+ .long 1068609434
+ .long 3137753400
+ .long 1073150223
+ .long 3579918397
+ .long 1015563197
+ .long 0
+ .long 0
+ .long 2242453104
+ .long 1069638253
+ .long 1143545012
+ .long 3159361608
+ .long 0
+ .long 1072693248
+ .long 1016752608
+ .long 1066591110
+ .long 1270001991
+ .long 1069659269
+ .long 1410785275
+ .long 1071050206
+ .long 1103929722
+ .long 1069040275
+ .long 3268015215
+ .long 1069798554
+ .long 957665168
+ .long 1068270980
+ .long 1067662813
+ .long 1068610012
+ .long 3294480606
+ .long 1073137355
+ .long 1489607747
+ .long 3151418907
+ .long 0
+ .long 0
+ .long 1940260416
+ .long 1069743276
+ .long 4144715194
+ .long 1012060053
+ .long 0
+ .long 1072693248
+ .long 1135818128
+ .long 1066829850
+ .long 867512158
+ .long 1069770656
+ .long 3821819258
+ .long 1071070704
+ .long 2890864845
+ .long 1069201948
+ .long 918459419
+ .long 1069834828
+ .long 797472495
+ .long 1068475275
+ .long 4093958433
+ .long 1068635569
+ .long 3451207812
+ .long 1073124487
+ .long 1547135652
+ .long 3163048307
+ .long 0
+ .long 0
+ .long 1959743063
+ .long 1069848682
+ .long 607727474
+ .long 1013558026
+ .long 0
+ .long 1072693248
+ .long 225834432
+ .long 1067090614
+ .long 732340398
+ .long 1069883626
+ .long 3221152670
+ .long 1071093215
+ .long 2810588359
+ .long 1069368307
+ .long 612200458
+ .long 1069874948
+ .long 645427023
+ .long 1068594071
+ .long 1966294363
+ .long 1068694214
+ .long 3607935018
+ .long 1073111619
+ .long 4202814986
+ .long 3164096517
+ .long 0
+ .long 0
+ .long 2429422902
+ .long 1069954505
+ .long 3297515896
+ .long 3160006592
+ .long 0
+ .long 1072693248
+ .long 528565440
+ .long 1067373727
+ .long 2395999282
+ .long 1069998329
+ .long 1512953454
+ .long 1071117799
+ .long 2702142222
+ .long 1069539835
+ .long 3515899576
+ .long 1069919100
+ .long 2767905785
+ .long 1068706391
+ .long 3127207959
+ .long 1068808800
+ .long 3764662223
+ .long 1073098751
+ .long 3105356094
+ .long 1016829101
+ .long 0
+ .long 0
+ .long 1425758568
+ .long 1070060780
+ .long 1224256500
+ .long 1011856982
+ .long 0
+ .long 1072693248
+ .long 2086713664
+ .long 1067564956
+ .long 1688303979
+ .long 1070114921
+ .long 938619730
+ .long 1071144522
+ .long 526120622
+ .long 1069632280
+ .long 3819295667
+ .long 1069967496
+ .long 2059466202
+ .long 1068824653
+ .long 4035080204
+ .long 1068903334
+ .long 3921389429
+ .long 1073085883
+ .long 3647185164
+ .long 1015997122
+ .long 0
+ .long 0
+ .long 3763679576
+ .long 1070167541
+ .long 448465424
+ .long 1009708707
+ .long 0
+ .long 1072693248
+ .long 64931152
+ .long 1067729411
+ .long 3593250320
+ .long 1070233561
+ .long 1127364104
+ .long 1071173457
+ .long 21320967
+ .long 1069723988
+ .long 4036384112
+ .long 1070020367
+ .long 3394693835
+ .long 1068949482
+ .long 4171096556
+ .long 1068939101
+ .long 4078116635
+ .long 1073073015
+ .long 39665264
+ .long 1013608617
+ .long 0
+ .long 0
+ .long 4023957346
+ .long 1070274825
+ .long 2652053984
+ .long 1012417284
+ .long 0
+ .long 1072693248
+ .long 1548193280
+ .long 1067905620
+ .long 2849460080
+ .long 1070354416
+ .long 586099284
+ .long 1071204684
+ .long 2426038050
+ .long 1069819083
+ .long 1209882932
+ .long 1070077962
+ .long 204929667
+ .long 1069081561
+ .long 2951798640
+ .long 1069077118
+ .long 4234843841
+ .long 1073060147
+ .long 1479868884
+ .long 3162614382
+ .long 0
+ .long 0
+ .long 3947580658
+ .long 1070382668
+ .long 4153467944
+ .long 1013228820
+ .long 0
+ .long 1072693248
+ .long 1306970432
+ .long 1068093810
+ .long 3320658510
+ .long 1070477657
+ .long 2638377394
+ .long 1071238289
+ .long 1218095092
+ .long 1069917865
+ .long 506153462
+ .long 1070140566
+ .long 2096772755
+ .long 1069221614
+ .long 2058474785
+ .long 1069148484
+ .long 96603751
+ .long 1073047280
+ .long 2021697954
+ .long 3163879555
+ .long 0
+ .long 0
+ .long 4068253482
+ .long 1070491107
+ .long 3098804354
+ .long 1013932712
+ .long 0
+ .long 1072693248
+ .long 3555466384
+ .long 1068294223
+ .long 3714292293
+ .long 1070599779
+ .long 58004546
+ .long 1071274368
+ .long 2889916307
+ .long 1070020649
+ .long 2725223781
+ .long 1070208483
+ .long 1960889140
+ .long 1069370437
+ .long 2173066945
+ .long 1069259864
+ .long 253330956
+ .long 1073034412
+ .long 991505830
+ .long 1017046064
+ .long 0
+ .long 0
+ .long 1971725998
+ .long 1070598138
+ .long 2628060598
+ .long 1013294571
+ .long 0
+ .long 1072693248
+ .long 3850616508
+ .long 1068503032
+ .long 715485429
+ .long 1070664058
+ .long 2831870887
+ .long 1071313021
+ .long 276112813
+ .long 1070127773
+ .long 4071473622
+ .long 1070282053
+ .long 3678820497
+ .long 1069528889
+ .long 928174949
+ .long 1069392578
+ .long 410058162
+ .long 1073021544
+ .long 4004709614
+ .long 1016250595
+ .long 0
+ .long 0
+ .long 1197423420
+ .long 1070653011
+ .long 176404688
+ .long 1013428940
+ .long 0
+ .long 1072693248
+ .long 3614211808
+ .long 1068615863
+ .long 2638984897
+ .long 1070729808
+ .long 1695604536
+ .long 1071354361
+ .long 2372043566
+ .long 1070239593
+ .long 136909610
+ .long 1070361652
+ .long 3640039434
+ .long 1069622710
+ .long 4088329288
+ .long 1069449448
+ .long 566785368
+ .long 1073008676
+ .long 2301849815
+ .long 1014658654
+ .long 0
+ .long 0
+ .long 1026922473
+ .long 1070708240
+ .long 4275552176
+ .long 1013759157
+ .long 0
+ .long 1072693248
+ .long 865263972
+ .long 1068735226
+ .long 1189261043
+ .long 1070797132
+ .long 602895285
+ .long 1071398507
+ .long 457371263
+ .long 1070356493
+ .long 1846858239
+ .long 1070447677
+ .long 3060498109
+ .long 1069713009
+ .long 4267979072
+ .long 1069596604
+ .long 723512574
+ .long 1072995808
+ .long 2825204233
+ .long 3161855698
+ .long 0
+ .long 0
+ .long 2664093517
+ .long 1070763845
+ .long 3574550848
+ .long 1009790086
+ .long 0
+ .long 1072693248
+ .long 2465054196
+ .long 1068861279
+ .long 3495559184
+ .long 1070866134
+ .long 2180799467
+ .long 1071445588
+ .long 3760731789
+ .long 1070478879
+ .long 3108073741
+ .long 1070540584
+ .long 1955989611
+ .long 1069809654
+ .long 166740423
+ .long 1069654305
+ .long 880239780
+ .long 1072982940
+ .long 4135548218
+ .long 3163662592
+ .long 0
+ .long 0
+ .long 895247324
+ .long 1070819848
+ .long 3063999364
+ .long 3161289029
+ .long 0
+ .long 1072693248
+ .long 729983844
+ .long 1068994194
+ .long 3631919317
+ .long 1070936926
+ .long 2031343772
+ .long 1071495745
+ .long 1505593195
+ .long 1070601643
+ .long 519428998
+ .long 1070618477
+ .long 3710689648
+ .long 1069913254
+ .long 3156018952
+ .long 1069741343
+ .long 1036966986
+ .long 1072970072
+ .long 1122344434
+ .long 3164458061
+ .long 0
+ .long 0
+ .long 1412148370
+ .long 1070876269
+ .long 2689479793
+ .long 3161477235
+ .long 0
+ .long 1072693248
+ .long 1375255072
+ .long 1069134151
+ .long 1493266594
+ .long 1071009624
+ .long 487968719
+ .long 1071549129
+ .long 4010395236
+ .long 1070668994
+ .long 2875570533
+ .long 1070672565
+ .long 2596803931
+ .long 1070024476
+ .long 2843491938
+ .long 1069843051
+ .long 1193694191
+ .long 1072957204
+ .long 1890859349
+ .long 1016467558
+ .long 0
+ .long 0
+ .long 3782220567
+ .long 1070933130
+ .long 2488122455
+ .long 1014753484
+ .long 0
+ .long 1072693248
+ .long 91372748
+ .long 1069281344
+ .long 318776714
+ .long 1071084349
+ .long 1791786485
+ .long 1071605902
+ .long 245863368
+ .long 1070739794
+ .long 3306699314
+ .long 1070730899
+ .long 492155886
+ .long 1070144051
+ .long 504705110
+ .long 1069961586
+ .long 1350421397
+ .long 1072944336
+ .long 1218191675
+ .long 1015274036
+ .long 0
+ .long 0
+ .long 1606100959
+ .long 1070990455
+ .long 3385800912
+ .long 1013630535
+ .long 0
+ .long 1072693248
+ .long 2255302008
+ .long 1069435977
+ .long 54085333
+ .long 1071161229
+ .long 2504974906
+ .long 1071655456
+ .long 4169947836
+ .long 1070814310
+ .long 2891827400
+ .long 1070793803
+ .long 1030744926
+ .long 1070272780
+ .long 2378131433
+ .long 1070036506
+ .long 1507148603
+ .long 1072931468
+ .long 1086374101
+ .long 3160519057
+ .long 0
+ .long 0
+ .long 4158096969
+ .long 1071048265
+ .long 3224523546
+ .long 1013419306
+ .long 0
+ .long 1072693248
+ .long 4240313622
+ .long 1069572894
+ .long 3745046477
+ .long 1071240398
+ .long 1955120038
+ .long 1071687503
+ .long 2661530988
+ .long 1070892836
+ .long 2615081511
+ .long 1070861626
+ .long 3172686013
+ .long 1070411548
+ .long 3468537064
+ .long 1070173373
+ .long 1663875809
+ .long 1072918600
+ .long 3908862373
+ .long 3163337468
+ .long 0
+ .long 0
+ .long 2200768388
+ .long 1071106586
+ .long 302579070
+ .long 3162432935
+ .long 0
+ .long 1072693248
+ .long 2338248308
+ .long 1069657986
+ .long 2617403810
+ .long 1071322000
+ .long 60078074
+ .long 1071721530
+ .long 2753634668
+ .long 1070975684
+ .long 626020947
+ .long 1070934758
+ .long 25846105
+ .long 1070561329
+ .long 1123371528
+ .long 1070307499
+ .long 1820603015
+ .long 1072905732
+ .long 3236194699
+ .long 3164241098
+ .long 0
+ .long 0
+ .long 2528366626
+ .long 1071165441
+ .long 3808697588
+ .long 3160880158
+ .long 0
+ .long 1072693248
+ .long 1938261590
+ .long 1069747146
+ .long 4282399603
+ .long 1071406183
+ .long 1922568281
+ .long 1071757646
+ .long 2428166646
+ .long 1071063193
+ .long 717464826
+ .long 1071013623
+ .long 2205664064
+ .long 1070659645
+ .long 1525962144
+ .long 1070438229
+ .long 1977330220
+ .long 1072892864
+ .long 4071976381
+ .long 1016684520
+ .long 0
+ .long 0
+ .long 2390846448
+ .long 1071224856
+ .long 3510510824
+ .long 1014225707
+ .long 0
+ .long 1072693248
+ .long 1208409702
+ .long 1069840505
+ .long 1006199412
+ .long 1071493107
+ .long 2504246873
+ .long 1071795971
+ .long 1040653613
+ .long 1071155729
+ .long 1713268218
+ .long 1071098686
+ .long 462276291
+ .long 1070747214
+ .long 4239134769
+ .long 1070603989
+ .long 2134057426
+ .long 1072879996
+ .long 1285458442
+ .long 1015707961
+ .long 0
+ .long 0
+ .long 2583490354
+ .long 1071284857
+ .long 27154665
+ .long 1014008337
+ .long 0
+ .long 1072693248
+ .long 2550940470
+ .long 1069938201
+ .long 2616040293
+ .long 1071582937
+ .long 2529278955
+ .long 1071836633
+ .long 2244405849
+ .long 1071253687
+ .long 2064814125
+ .long 1071190460
+ .long 1527853242
+ .long 1070842074
+ .long 354304617
+ .long 1070708112
+ .long 2290784632
+ .long 1072867128
+ .long 2660353234
+ .long 1011979525
+ .long 0
+ .long 0
+ .long 3368427099
+ .long 1071345471
+ .long 2187847358
+ .long 3161070788
+ .long 0
+ .long 1072693248
+ .long 1708021028
+ .long 1070040382
+ .long 459972195
+ .long 1071660262
+ .long 3210514347
+ .long 1071879770
+ .long 955408873
+ .long 1071357497
+ .long 1911386086
+ .long 1071289511
+ .long 3563284025
+ .long 1070944951
+ .long 547392146
+ .long 1070790031
+ .long 2447511838
+ .long 1072854260
+ .long 3841595606
+ .long 3162903543
+ .long 0
+ .long 0
+ .long 408840118
+ .long 1071406727
+ .long 4048150272
+ .long 1011870625
+ .long 0
+ .long 1072693248
+ .long 2794370512
+ .long 1070147203
+ .long 1550993351
+ .long 1071708355
+ .long 1305093678
+ .long 1071925532
+ .long 1748211158
+ .long 1071467623
+ .long 3244212116
+ .long 1071396455
+ .long 2145665988
+ .long 1071056651
+ .long 1098394636
+ .long 1070891096
+ .long 2604239044
+ .long 1072841392
+ .long 1055077667
+ .long 3164024136
+ .long 0
+ .long 0
+ .long 2191706112
+ .long 1071468652
+ .long 333457838
+ .long 1013847700
+ .long 0
+ .long 1072693248
+ .long 3435408456
+ .long 1070258830
+ .long 487319719
+ .long 1071758184
+ .long 1713711059
+ .long 1071974079
+ .long 130753286
+ .long 1071584571
+ .long 909725129
+ .long 1071511974
+ .long 2762442355
+ .long 1071178067
+ .long 932699057
+ .long 1071027067
+ .long 2760966249
+ .long 1072828524
+ .long 1958126117
+ .long 1016901483
+ .long 0
+ .long 0
+ .long 220675706
+ .long 1071531278
+ .long 3158460941
+ .long 1014240139
+ .long 0
+ .long 1072693248
+ .long 1565030890
+ .long 1070375439
+ .long 335263687
+ .long 1071809854
+ .long 419816567
+ .long 1072025586
+ .long 2098048102
+ .long 1071676780
+ .long 257229334
+ .long 1071636821
+ .long 3464457175
+ .long 1071310192
+ .long 2745951745
+ .long 1071158056
+ .long 2917693455
+ .long 1072815656
+ .long 676362605
+ .long 1016106015
+ .long 0
+ .long 0
+ .long 3649427950
+ .long 1071594634
+ .long 4113913432
+ .long 1011178545
+ .long 0
+ .long 1072693248
+ .long 2424145432
+ .long 1070497215
+ .long 2715404890
+ .long 1071863477
+ .long 2238283673
+ .long 1072080240
+ .long 1186867211
+ .long 1071742923
+ .long 660318792
+ .long 1071708248
+ .long 2091427899
+ .long 1071454132
+ .long 2591062578
+ .long 1071291190
+ .long 3074420661
+ .long 1072802788
+ .long 1873363667
+ .long 1014080331
+ .long 0
+ .long 0
+ .long 2606398711
+ .long 1071651713
+ .long 2533078623
+ .long 1015070425
+ .long 0
+ .long 1072693248
+ .long 2151361100
+ .long 1070610226
+ .long 1532348096
+ .long 1071919174
+ .long 408604530
+ .long 1072138246
+ .long 1039538740
+ .long 1071813375
+ .long 1234598850
+ .long 1071781284
+ .long 692507560
+ .long 1071611119
+ .long 4090315823
+ .long 1071451983
+ .long 3231147867
+ .long 1072789920
+ .long 3253690381
+ .long 3162434021
+ .long 0
+ .long 0
+ .long 1505561933
+ .long 1071684172
+ .long 2813788960
+ .long 3158646164
+ .long 0
+ .long 1072693248
+ .long 2997217365
+ .long 1070676584
+ .long 2681788575
+ .long 1071977071
+ .long 3989126937
+ .long 1072199822
+ .long 1049115510
+ .long 1071888491
+ .long 511642057
+ .long 1071860360
+ .long 4034728042
+ .long 1071713598
+ .long 1788921063
+ .long 1071639550
+ .long 3387875073
+ .long 1072777052
+ .long 3168927931
+ .long 3163807173
+ .long 0
+ .long 0
+ .long 419968236
+ .long 1071717047
+ .long 131821922
+ .long 3163445114
+ .long 0
+ .long 1072693248
+ .long 2960267235
+ .long 1070745841
+ .long 1037049094
+ .long 1072037305
+ .long 1447436626
+ .long 1072265209
+ .long 3197232138
+ .long 1071968658
+ .long 4004685083
+ .long 1071946034
+ .long 1412816411
+ .long 1071807280
+ .long 3184767140
+ .long 1071740610
+ .long 3544602278
+ .long 1072764184
+ .long 4139243149
+ .long 1017118445
+ .long 0
+ .long 0
+ .long 4270735453
+ .long 1071750355
+ .long 3565353881
+ .long 3162826177
+ .long 0
+ .long 1072693248
+ .long 2915760230
+ .long 1070818115
+ .long 638580392
+ .long 1072100020
+ .long 2252948193
+ .long 1072334663
+ .long 1194731830
+ .long 1072054301
+ .long 1353002943
+ .long 1072038927
+ .long 422364777
+ .long 1071909798
+ .long 3669605864
+ .long 1071842023
+ .long 3701329484
+ .long 1072751316
+ .long 2857479637
+ .long 1016322977
+ .long 0
+ .long 0
+ .long 4010047525
+ .long 1071784117
+ .long 3339961616
+ .long 1012589046
+ .long 0
+ .long 1072693248
+ .long 966450668
+ .long 1070893532
+ .long 803989702
+ .long 1072165371
+ .long 1934453966
+ .long 1072408465
+ .long 1455077850
+ .long 1072145882
+ .long 2709264343
+ .long 1072139721
+ .long 1918064545
+ .long 1072022114
+ .long 1476733491
+ .long 1071960574
+ .long 3858056690
+ .long 1072738448
+ .long 2007897202
+ .long 1014948181
+ .long 0
+ .long 0
+ .long 2591355529
+ .long 1071818352
+ .long 2351346752
+ .long 1014424505
+ .long 0
+ .long 1072693248
+ .long 3206845590
+ .long 1070972224
+ .long 4023349050
+ .long 1072233523
+ .long 3838822434
+ .long 1072486918
+ .long 3122427157
+ .long 1072243909
+ .long 2261703628
+ .long 1072249178
+ .long 1764870085
+ .long 1072145307
+ .long 3201774398
+ .long 1072093301
+ .long 4014783896
+ .long 1072725580
+ .long 3119156846
+ .long 3161566171
+ .long 0
+ .long 0
+ .long 2298773501
+ .long 1071853080
+ .long 4027796943
+ .long 3162574088
+ .long 0
+ .long 1072693248
+ .long 312748411
+ .long 1071054335
+ .long 2723913091
+ .long 1072304655
+ .long 3207063211
+ .long 1072570353
+ .long 1845780128
+ .long 1072348940
+ .long 752659336
+ .long 1072368142
+ .long 1097207438
+ .long 1072280589
+ .long 407427378
+ .long 1072246732
+ .long 4171511102
+ .long 1072712712
+ .long 987810900
+ .long 3163590211
+ .long 0
+ .long 0
+ .long 681498355
+ .long 1071888323
+ .long 3542613740
+ .long 3163311347
+ .long 0
+ .long 1072693248
+ .long 168222332
+ .long 1071140014
+ .long 776736583
+ .long 1072378956
+ .long 2405401100
+ .long 1072659128
+ .long 430546584
+ .long 1072461586
+ .long 2974083787
+ .long 1072497552
+ .long 849442051
+ .long 1072429322
+ .long 2727422945
+ .long 1072409680
+ .long 33271012
+ .long 1072699845
+ .long 2269574412
+ .long 3164385679
+ .long 0
+ .long 0
+ .long 3684492763
+ .long 1071924102
+ .long 2905877726
+ .long 3163193209
+ .long 0
+ .long 1072693248
+ .long 585640690
+ .long 1071229422
+ .long 1068301595
+ .long 1072456629
+ .long 2953900489
+ .long 1072723440
+ .long 950237889
+ .long 1072582519
+ .long 109735426
+ .long 1072638455
+ .long 792610960
+ .long 1072593041
+ .long 2904161704
+ .long 1072594405
+ .long 379996435
+ .long 1072680706
+ .long 2807708551
+ .long 3162614199
+ .long 0
+ .long 0
+ .long 142288477
+ .long 1071960443
+ .long 1256321232
+ .long 3162016428
+ .long 0
+ .long 1072693248
+ .long 925074332
+ .long 1071322730
+ .long 2134728327
+ .long 1072537893
+ .long 1886408555
+ .long 1072773770
+ .long 101893267
+ .long 1072702864
+ .long 2020085224
+ .long 1072742631
+ .long 2955803851
+ .long 1072733362
+ .long 343310803
+ .long 1072748161
+ .long 693450846
+ .long 1072654970
+ .long 3218699017
+ .long 1015418799
+ .long 0
+ .long 0
+ .long 716700048
+ .long 1071997368
+ .long 1043856658
+ .long 1015522810
+ .long 0
+ .long 1072693248
+ .long 1097907398
+ .long 1071420120
+ .long 3912524876
+ .long 1072622983
+ .long 4107784306
+ .long 1072827408
+ .long 937056065
+ .long 1072772766
+ .long 4128945134
+ .long 1072826390
+ .long 1032262383
+ .long 1072832917
+ .long 1825923576
+ .long 1072864423
+ .long 1006905258
+ .long 1072629234
+ .long 3348558652
+ .long 3159471942
+ .long 0
+ .long 0
+ .long 3841229102
+ .long 1072034903
+ .long 1782837269
+ .long 1016032992
+ .long 0
+ .long 1072693248
+ .long 866896685
+ .long 1071521786
+ .long 2743435231
+ .long 1072702700
+ .long 3017984361
+ .long 1072884608
+ .long 1491919678
+ .long 1072848040
+ .long 1507535811
+ .long 1072917857
+ .long 1966124961
+ .long 1072942914
+ .long 381628626
+ .long 1072992589
+ .long 1320359670
+ .long 1072603498
+ .long 1908355032
+ .long 3163192705
+ .long 0
+ .long 0
+ .long 343219638
+ .long 1072073077
+ .long 2238302242
+ .long 1014248160
+ .long 0
+ .long 1072693248
+ .long 3768132253
+ .long 1071627934
+ .long 3895546569
+ .long 1072749460
+ .long 1613056473
+ .long 1072945645
+ .long 3409294908
+ .long 1072929183
+ .long 3138966349
+ .long 1073017844
+ .long 3799067273
+ .long 1073064607
+ .long 359470462
+ .long 1073133087
+ .long 1633814081
+ .long 1072577762
+ .long 3941137777
+ .long 1014659019
+ .long 0
+ .long 0
+ .long 3860971117
+ .long 1072111915
+ .long 2891637204
+ .long 1015730508
+ .long 0
+ .long 1073741824
+ .long 80822128
+ .long 3219034205
+ .long 2077635078
+ .long 1072798543
+ .long 1552870456
+ .long 1073010820
+ .long 3607700650
+ .long 1073016746
+ .long 249538440
+ .long 1073127265
+ .long 2233833066
+ .long 1073199420
+ .long 2436428201
+ .long 1073293556
+ .long 1947268493
+ .long 1072552026
+ .long 1185916272
+ .long 3161855333
+ .long 0
+ .long 0
+ .long 3978924239
+ .long 1072151449
+ .long 680748782
+ .long 3163204529
+ .long 0
+ .long 1073741824
+ .long 3528982175
+ .long 3218918413
+ .long 3018376188
+ .long 1072850106
+ .long 2093086652
+ .long 1073080463
+ .long 451029217
+ .long 1073111339
+ .long 1097121536
+ .long 1073247142
+ .long 2277789226
+ .long 1073348969
+ .long 149166906
+ .long 1073478822
+ .long 2260722904
+ .long 1072526290
+ .long 3285965784
+ .long 1015852724
+ .long 0
+ .long 0
+ .long 997287281
+ .long 1072191710
+ .long 3612277486
+ .long 1015833408
+ .long 0
+ .long 1073741824
+ .long 3037674984
+ .long 3218797431
+ .long 2624215131
+ .long 1072904321
+ .long 464779768
+ .long 1073154936
+ .long 3700763630
+ .long 1073213636
+ .long 1200926910
+ .long 1073378628
+ .long 2934576429
+ .long 1073515096
+ .long 3287041855
+ .long 1073681673
+ .long 2574177316
+ .long 1072500554
+ .long 2889755040
+ .long 1013031024
+ .long 0
+ .long 0
+ .long 2079874795
+ .long 1072232729
+ .long 1885505696
+ .long 3161954077
+ .long 0
+ .long 1073741824
+ .long 1656469901
+ .long 3218670989
+ .long 823761676
+ .long 1072961373
+ .long 2491445454
+ .long 1073234634
+ .long 1584341555
+ .long 1073324391
+ .long 1976688438
+ .long 1073523018
+ .long 3918313340
+ .long 1073699902
+ .long 3178717687
+ .long 1073829019
+ .long 2887631728
+ .long 1072474818
+ .long 1841088264
+ .long 3162758780
+ .long 0
+ .long 0
+ .long 258163604
+ .long 1072274542
+ .long 3299923807
+ .long 1015128357
+ .long 0
+ .long 1073741824
+ .long 2865277319
+ .long 3218538798
+ .long 3110066496
+ .long 1073021461
+ .long 723074889
+ .long 1073319994
+ .long 1618819009
+ .long 1073444438
+ .long 1176243936
+ .long 1073681775
+ .long 1223848987
+ .long 1073823806
+ .long 2369274010
+ .long 1073957581
+ .long 3201086139
+ .long 1072449082
+ .long 4185319304
+ .long 1015274218
+ .long 0
+ .long 0
+ .long 719595600
+ .long 1072317184
+ .long 114895218
+ .long 3162143748
+ .long 0
+ .long 1073741824
+ .long 3811788216
+ .long 3218400550
+ .long 1264738948
+ .long 1073084804
+ .long 1958933439
+ .long 1073411493
+ .long 4246310163
+ .long 1073574708
+ .long 1367842247
+ .long 1073799186
+ .long 4112596162
+ .long 1073938662
+ .long 2100954442
+ .long 1074105254
+ .long 3514540551
+ .long 1072423346
+ .long 2102765473
+ .long 3160518326
+ .long 0
+ .long 0
+ .long 4189730214
+ .long 1072360693
+ .long 873070368
+ .long 1011168520
+ .long 0
+ .long 1073741824
+ .long 760634709
+ .long 3218255915
+ .long 2067827628
+ .long 1073151636
+ .long 1386756408
+ .long 1073509659
+ .long 404552634
+ .long 1073716242
+ .long 1143062645
+ .long 1073895515
+ .long 555342321
+ .long 1074067009
+ .long 3470170865
+ .long 1074271418
+ .long 3827994963
+ .long 1072397610
+ .long 941734744
+ .long 3163337286
+ .long 0
+ .long 0
+ .long 3247184626
+ .long 1072405111
+ .long 1245412628
+ .long 1014426137
+ .long 0
+ .long 1073741824
+ .long 2381906911
+ .long 3218104536
+ .long 1010924947
+ .long 1073222214
+ .long 2481381005
+ .long 1073615072
+ .long 1356661294
+ .long 1073806011
+ .long 1527070582
+ .long 1074001844
+ .long 3061693388
+ .long 1074210655
+ .long 1993183195
+ .long 1074463435
+ .long 4141449374
+ .long 1072371874
+ .long 1579411055
+ .long 1014369858
+ .long 0
+ .long 0
+ .long 166164867
+ .long 1072450480
+ .long 2304058808
+ .long 3159574198
+ .long 0
+ .long 1073741824
+ .long 2798667120
+ .long 3217812323
+ .long 4203596829
+ .long 1073296815
+ .long 1473339147
+ .long 1073728374
+ .long 4243021652
+ .long 1073889850
+ .long 1638747017
+ .long 1074119375
+ .long 1512673096
+ .long 1074371687
+ .long 2338684787
+ .long 1074678259
+ .long 159936490
+ .long 1072346139
+ .long 3547642993
+ .long 3162144494
+ .long 0
+ .long 0
+ .long 3342355758
+ .long 1072496843
+ .long 1667048854
+ .long 1014547708
+ .long 0
+ .long 1073741824
+ .long 2271288998
+ .long 3217480250
+ .long 4111284847
+ .long 1073375744
+ .long 2796272966
+ .long 1073796048
+ .long 1730314448
+ .long 1073981280
+ .long 1813001552
+ .long 1074249474
+ .long 603251414
+ .long 1074552509
+ .long 3079042420
+ .long 1074856525
+ .long 473390901
+ .long 1072320403
+ .long 4252586071
+ .long 1015708143
+ .long 0
+ .long 0
+ .long 2308259791
+ .long 1072544250
+ .long 4116261952
+ .long 1009282152
+ .long 0
+ .long 1073741824
+ .long 411343470
+ .long 3217132228
+ .long 3760686807
+ .long 1073459331
+ .long 4171367426
+ .long 1073861688
+ .long 1878500541
+ .long 1074081117
+ .long 108767834
+ .long 1074393698
+ .long 2824899539
+ .long 1074755901
+ .long 3321235986
+ .long 1074997439
+ .long 786845313
+ .long 1072294667
+ .long 627570489
+ .long 1011980987
+ .long 0
+ .long 0
+ .long 2949191430
+ .long 1072592750
+ .long 3989207545
+ .long 1015613028
+ .long 0
+ .long 1073741824
+ .long 2909112164
+ .long 3216503445
+ .long 3682557528
+ .long 1073547937
+ .long 4184421718
+ .long 1073932454
+ .long 380803270
+ .long 1074190282
+ .long 3399744364
+ .long 1074553823
+ .long 3842864947
+ .long 1074887742
+ .long 748075417
+ .long 1075157395
+ .long 1100299725
+ .long 1072268931
+ .long 874467977
+ .long 3162903361
+ .long 0
+ .long 0
+ .long 2668510354
+ .long 1072642397
+ .long 1701265160
+ .long 3159690220
+ .long 0
+ .long 1073741824
+ .long 1404962112
+ .long 3215492924
+ .long 3327263454
+ .long 1073641957
+ .long 1987673213
+ .long 1074008829
+ .long 231222583
+ .long 1074309811
+ .long 1756671652
+ .long 1074731884
+ .long 3921518313
+ .long 1075017100
+ .long 2691193077
+ .long 1075341426
+ .long 1413754136
+ .long 1072243195
+ .long 856972295
+ .long 1015129638
+ .long 0
+ .long 1072693248
+ .long 3072795147
+ .long 3218177217
+ .long 2531204756
+ .long 1014677625
+ .long 0
+ .long 1071644672
+ .long 573338107
+ .long 3216966390
+ .long 1757081539
+ .long 3216009405
+ .long 1043378852
+ .long 1067696161
+ .long 2698850995
+ .long 3213513876
+ .long 495882814
+ .long 1064911053
+ .long 3842541443
+ .long 3210988571
+ .long 2725665262
+ .long 1061135526
+ .long 1727208548
+ .long 1072217459
+ .long 2531251621
+ .long 3161096649
+ .long 0
+ .long 1072693248
+ .long 963359913
+ .long 3218157757
+ .long 2464811394
+ .long 1013284229
+ .long 0
+ .long 1071644672
+ .long 1498613974
+ .long 3216992493
+ .long 4138103782
+ .long 3215985771
+ .long 2840947366
+ .long 1067675293
+ .long 209537977
+ .long 3213463826
+ .long 3590357530
+ .long 1064864171
+ .long 73959547
+ .long 3210940132
+ .long 1511606549
+ .long 1062390487
+ .long 2040662960
+ .long 1072191723
+ .long 4270081753
+ .long 3163481866
+ .long 0
+ .long 1072693248
+ .long 4002124759
+ .long 3218138375
+ .long 3453342566
+ .long 3160907529
+ .long 0
+ .long 1071644672
+ .long 774562305
+ .long 3217018021
+ .long 377617675
+ .long 3215942442
+ .long 2495478050
+ .long 1067655031
+ .long 1508050213
+ .long 3213415186
+ .long 1921336534
+ .long 1064819067
+ .long 975923672
+ .long 3210893594
+ .long 2289965811
+ .long 1060505011
+ .long 2354117371
+ .long 1072165987
+ .long 3512651629
+ .long 1014080696
+ .long 0
+ .long 1072693248
+ .long 373017919
+ .long 3218119072
+ .long 3647199073
+ .long 3162144529
+ .long 0
+ .long 1070596096
+ .long 933359764
+ .long 1069535705
+ .long 1391441088
+ .long 3215896667
+ .long 53106651
+ .long 1067635358
+ .long 4157835043
+ .long 3213367904
+ .long 4055868050
+ .long 1064775611
+ .long 1529330423
+ .long 3210848884
+ .long 325278885
+ .long 1062325273
+ .long 2667571783
+ .long 1072140251
+ .long 1614402419
+ .long 3162433656
+ .long 0
+ .long 1072693248
+ .long 4148643959
+ .long 3218099843
+ .long 2887822595
+ .long 3161698583
+ .long 0
+ .long 1070596096
+ .long 4101770849
+ .long 1069511300
+ .long 1167052501
+ .long 3215851606
+ .long 2569727718
+ .long 1067616256
+ .long 1681502493
+ .long 3213321931
+ .long 3685967947
+ .long 1064733780
+ .long 2973319847
+ .long 3210805911
+ .long 472683240
+ .long 1062549181
+ .long 2981026194
+ .long 1072114515
+ .long 924239062
+ .long 1015563563
+ .long 0
+ .long 1072693248
+ .long 3747221382
+ .long 3218080689
+ .long 1912303920
+ .long 3161550059
+ .long 0
+ .long 1070596096
+ .long 1727686788
+ .long 1069487445
+ .long 681802874
+ .long 3215807238
+ .long 2531789465
+ .long 1067597711
+ .long 331202638
+ .long 3213277217
+ .long 2627596737
+ .long 1064693515
+ .long 566979211
+ .long 3210764596
+ .long 2424396143
+ .long 1061741710
+ .long 3294480606
+ .long 1072088779
+ .long 1489607747
+ .long 3150370331
+ .long 0
+ .long 1072693248
+ .long 1167858038
+ .long 3218043472
+ .long 2180016084
+ .long 3158357424
+ .long 0
+ .long 1070596096
+ .long 772792549
+ .long 1069464130
+ .long 3356872770
+ .long 3215763542
+ .long 3524844777
+ .long 1067579707
+ .long 1521756467
+ .long 3213233715
+ .long 3931969740
+ .long 1064654734
+ .long 2908114613
+ .long 3210710011
+ .long 3523476919
+ .long 1061374592
+ .long 3607935018
+ .long 1072063043
+ .long 4202814986
+ .long 3163047941
+ .long 0
+ .long 1072693248
+ .long 955408364
+ .long 3218005450
+ .long 2659929740
+ .long 1013295819
+ .long 0
+ .long 1070596096
+ .long 659174847
+ .long 1069441347
+ .long 2081794994
+ .long 3215720500
+ .long 2956616392
+ .long 1067562230
+ .long 1461867065
+ .long 3213191381
+ .long 879427918
+ .long 1064617384
+ .long 209598599
+ .long 3210633576
+ .long 60948554
+ .long 1061529630
+ .long 3921389429
+ .long 1072037307
+ .long 3647185164
+ .long 1014948546
+ .long 0
+ .long 1072693248
+ .long 1526324265
+ .long 3217967566
+ .long 4056331296
+ .long 1010311990
+ .long 0
+ .long 1070596096
+ .long 1830915900
+ .long 1069419088
+ .long 602185706
+ .long 3215678092
+ .long 555210277
+ .long 1067545266
+ .long 3690136761
+ .long 3213150171
+ .long 4115917121
+ .long 1064581405
+ .long 589230607
+ .long 3210560017
+ .long 3446641745
+ .long 1062382364
+ .long 4234843841
+ .long 1072011571
+ .long 1479868884
+ .long 3161565806
+ .long 0
+ .long 1072693248
+ .long 2049842017
+ .long 3217929817
+ .long 2491067243
+ .long 1013757722
+ .long 0
+ .long 1070596096
+ .long 1431833764
+ .long 1069397346
+ .long 551048935
+ .long 3215636299
+ .long 2575917112
+ .long 1067528800
+ .long 1559777140
+ .long 3213110045
+ .long 743322344
+ .long 1064546764
+ .long 1974991822
+ .long 3210489213
+ .long 3456487690
+ .long 1062460308
+ .long 253330956
+ .long 1071985836
+ .long 991505830
+ .long 1015997488
+ .long 0
+ .long 1072693248
+ .long 1894214069
+ .long 3217892200
+ .long 2182661104
+ .long 3159506151
+ .long 0
+ .long 1070596096
+ .long 1869133310
+ .long 1069376113
+ .long 1368144043
+ .long 3215595103
+ .long 242783364
+ .long 1067512821
+ .long 3692616565
+ .long 3213070961
+ .long 2890683542
+ .long 1064513419
+ .long 2407947192
+ .long 3210421028
+ .long 3811448635
+ .long 1060561671
+ .long 566785368
+ .long 1071960100
+ .long 2301849815
+ .long 1013610078
+ .long 0
+ .long 1072693248
+ .long 620845047
+ .long 3217854712
+ .long 314567190
+ .long 3160767875
+ .long 0
+ .long 1070596096
+ .long 2198158867
+ .long 1069355382
+ .long 222370857
+ .long 3215554487
+ .long 4028822361
+ .long 1067497314
+ .long 3610397327
+ .long 3213032882
+ .long 171354848
+ .long 1064481283
+ .long 693369877
+ .long 3210355362
+ .long 164303632
+ .long 1061632559
+ .long 880239780
+ .long 1071934364
+ .long 4135548218
+ .long 3162614016
+ .long 0
+ .long 1072693248
+ .long 2273547475
+ .long 3217817349
+ .long 4162051772
+ .long 3158862098
+ .long 0
+ .long 1070596096
+ .long 2392983423
+ .long 1069335146
+ .long 526970473
+ .long 3215514433
+ .long 628322840
+ .long 1067482270
+ .long 924033682
+ .long 3212995771
+ .long 854746898
+ .long 1064450346
+ .long 4004963123
+ .long 3210292086
+ .long 1474471147
+ .long 1060747995
+ .long 1193694191
+ .long 1071908628
+ .long 1890859349
+ .long 1015418982
+ .long 0
+ .long 1072693248
+ .long 2488075121
+ .long 3217780109
+ .long 1856288899
+ .long 1013767581
+ .long 0
+ .long 1070596096
+ .long 3322930631
+ .long 1069315398
+ .long 3277607933
+ .long 3215474924
+ .long 130253043
+ .long 1067467675
+ .long 1057196725
+ .long 3212959591
+ .long 3278604843
+ .long 1064420531
+ .long 4197429676
+ .long 3210231108
+ .long 1627850508
+ .long 1062399550
+ .long 1507148603
+ .long 1071882892
+ .long 1086374101
+ .long 3159470481
+ .long 0
+ .long 1072693248
+ .long 1371601499
+ .long 3217742989
+ .long 3050542164
+ .long 3159667536
+ .long 0
+ .long 1070596096
+ .long 2434996648
+ .long 1069296132
+ .long 2688049294
+ .long 3215435945
+ .long 1586964757
+ .long 1067453518
+ .long 2102156419
+ .long 3212924308
+ .long 2974407249
+ .long 1064391847
+ .long 249545848
+ .long 3210172310
+ .long 118754132
+ .long 1061128535
+ .long 1820603015
+ .long 1071857156
+ .long 3236194699
+ .long 3163192522
+ .long 0
+ .long 1072693248
+ .long 3497432648
+ .long 3217705985
+ .long 3403982176
+ .long 3159219350
+ .long 0
+ .long 1070596096
+ .long 2322009458
+ .long 1069277341
+ .long 3303184211
+ .long 3215397479
+ .long 3079386980
+ .long 1067429210
+ .long 3158396776
+ .long 3212889889
+ .long 500122468
+ .long 1064364204
+ .long 3226667041
+ .long 3210115604
+ .long 1839377740
+ .long 1062167069
+ .long 2134057426
+ .long 1071831420
+ .long 1285458442
+ .long 1014659385
+ .long 0
+ .long 1072693248
+ .long 719981842
+ .long 3217669096
+ .long 3396799415
+ .long 1013109014
+ .long 0
+ .long 1070596096
+ .long 2111724540
+ .long 1069259019
+ .long 2754706540
+ .long 3215359511
+ .long 790037588
+ .long 1067402587
+ .long 4097286835
+ .long 3212856302
+ .long 2918356813
+ .long 1064337614
+ .long 980543884
+ .long 3210060878
+ .long 1759882364
+ .long 3204685716
+ .long 2447511838
+ .long 1071805684
+ .long 3841595606
+ .long 3161854967
+ .long 0
+ .long 1072693248
+ .long 2234510834
+ .long 3217632317
+ .long 1077830624
+ .long 3156276711
+ .long 0
+ .long 1070596096
+ .long 1741599179
+ .long 1069241160
+ .long 288887764
+ .long 3215322026
+ .long 438316229
+ .long 1067376778
+ .long 2074161178
+ .long 3212810170
+ .long 2132352512
+ .long 1064311981
+ .long 321000190
+ .long 3210008077
+ .long 2574541397
+ .long 1061549566
+ .long 2760966249
+ .long 1071779948
+ .long 1958126117
+ .long 1015852907
+ .long 0
+ .long 1072693248
+ .long 212483252
+ .long 3217595647
+ .long 3496985358
+ .long 1013615952
+ .long 0
+ .long 1070596096
+ .long 1939348811
+ .long 1069223758
+ .long 1001569645
+ .long 3215285008
+ .long 764537997
+ .long 1067351764
+ .long 2326690580
+ .long 3212746141
+ .long 60750538
+ .long 1064270005
+ .long 2745665118
+ .long 3209957083
+ .long 1586280401
+ .long 1060807371
+ .long 3074420661
+ .long 1071754212
+ .long 1873363667
+ .long 1013031755
+ .long 0
+ .long 1072693248
+ .long 4156511795
+ .long 3217559081
+ .long 1791782369
+ .long 3160930544
+ .long 0
+ .long 1070596096
+ .long 4204226438
+ .long 1069206807
+ .long 2895376501
+ .long 3215248443
+ .long 3600185398
+ .long 1067327526
+ .long 2087275384
+ .long 3212683597
+ .long 347703885
+ .long 1064222543
+ .long 301495371
+ .long 3209907826
+ .long 876688468
+ .long 3206713553
+ .long 3387875073
+ .long 1071728476
+ .long 3168927931
+ .long 3162758597
+ .long 0
+ .long 1072693248
+ .long 2240974125
+ .long 3217522619
+ .long 3786179077
+ .long 1012998644
+ .long 0
+ .long 1070596096
+ .long 2199065489
+ .long 1069190303
+ .long 1118792048
+ .long 3215212318
+ .long 875809397
+ .long 1067304048
+ .long 2927616918
+ .long 3212622482
+ .long 3494337727
+ .long 1064176822
+ .long 4219965681
+ .long 3209860241
+ .long 4249954841
+ .long 1060574506
+ .long 3701329484
+ .long 1071702740
+ .long 2857479637
+ .long 1015274401
+ .long 0
+ .long 1072693248
+ .long 4257115870
+ .long 3217486256
+ .long 39728399
+ .long 3160493923
+ .long 0
+ .long 1070596096
+ .long 3207767847
+ .long 1069174239
+ .long 797077063
+ .long 3215176618
+ .long 287980713
+ .long 1067281311
+ .long 1596666478
+ .long 3212562743
+ .long 2775364
+ .long 1064132847
+ .long 3823518214
+ .long 3209814240
+ .long 3101392498
+ .long 1060290467
+ .long 4014783896
+ .long 1071677004
+ .long 3119156846
+ .long 3160517595
+ .long 0
+ .long 1072693248
+ .long 2953879462
+ .long 3217449991
+ .long 651182982
+ .long 3159737324
+ .long 0
+ .long 1070596096
+ .long 2348802841
+ .long 1069158611
+ .long 4095204310
+ .long 3215141329
+ .long 3730066556
+ .long 1067259298
+ .long 2541564470
+ .long 3212504327
+ .long 1012137407
+ .long 1064090541
+ .long 3007493349
+ .long 3209769752
+ .long 304719606
+ .long 1058732349
+ .long 33271012
+ .long 1071651269
+ .long 2269574412
+ .long 3163337103
+ .long 0
+ .long 1072693248
+ .long 4098310206
+ .long 3217413820
+ .long 678867490
+ .long 1013738598
+ .long 0
+ .long 1070596096
+ .long 4033975882
+ .long 1069143413
+ .long 1577500332
+ .long 3215106440
+ .long 2904242360
+ .long 1067237995
+ .long 383406633
+ .long 3212447185
+ .long 511745182
+ .long 1064049810
+ .long 3472404602
+ .long 3209726723
+ .long 3493824410
+ .long 1061932631
+ .long 693450846
+ .long 1071606394
+ .long 3218699017
+ .long 1014370223
+ .long 0
+ .long 1072693248
+ .long 701484222
+ .long 3217377742
+ .long 1189134796
+ .long 1013549080
+ .long 0
+ .long 1070596096
+ .long 478132658
+ .long 1069128642
+ .long 2223654597
+ .long 3215071936
+ .long 706118045
+ .long 1067217386
+ .long 1066336370
+ .long 3212391267
+ .long 3310393795
+ .long 1064010705
+ .long 1920669086
+ .long 3209678984
+ .long 1209448644
+ .long 3206743753
+ .long 1320359670
+ .long 1071554922
+ .long 1908355032
+ .long 3162144129
+ .long 0
+ .long 1072693248
+ .long 3079104278
+ .long 3217341752
+ .long 2593237472
+ .long 3159688198
+ .long 0
+ .long 1070596096
+ .long 1749059456
+ .long 1069114291
+ .long 3316773722
+ .long 3215037805
+ .long 2555119580
+ .long 1067197455
+ .long 59306268
+ .long 3212336527
+ .long 1944001738
+ .long 1063973040
+ .long 3607966944
+ .long 3209598336
+ .long 1548002341
+ .long 1061515569
+ .long 1947268493
+ .long 1071503450
+ .long 1185916272
+ .long 3160806757
+ .long 0
+ .long 1072693248
+ .long 192708373
+ .long 3217305850
+ .long 1013564964
+ .long 3160609117
+ .long 0
+ .long 1070596096
+ .long 1393443609
+ .long 1069100357
+ .long 3282624502
+ .long 3215004035
+ .long 3423023493
+ .long 1067178189
+ .long 3539283610
+ .long 3212282918
+ .long 1358653293
+ .long 1063936902
+ .long 1383848795
+ .long 3209520160
+ .long 1170879540
+ .long 3207439782
+ .long 2574177316
+ .long 1071451978
+ .long 2889755040
+ .long 1011982448
+ .long 0
+ .long 1072693248
+ .long 2595342993
+ .long 3217270031
+ .long 1222182906
+ .long 3159411259
+ .long 0
+ .long 1070596096
+ .long 2192927435
+ .long 1069086835
+ .long 1645422722
+ .long 3214970614
+ .long 648269084
+ .long 1067159575
+ .long 2319737250
+ .long 3212230398
+ .long 1121494038
+ .long 1063902126
+ .long 897314833
+ .long 3209444434
+ .long 2659165416
+ .long 1060259181
+ .long 3201086139
+ .long 1071400506
+ .long 4185319304
+ .long 1014225642
+ .long 0
+ .long 1072693248
+ .long 3772940467
+ .long 3217234294
+ .long 3998164722
+ .long 1013347606
+ .long 0
+ .long 1070596096
+ .long 3265990537
+ .long 1069073721
+ .long 3279971426
+ .long 3214937529
+ .long 2447085124
+ .long 1067141598
+ .long 1649985592
+ .long 3212178923
+ .long 3334399491
+ .long 1063868754
+ .long 454991634
+ .long 3209370985
+ .long 1938913543
+ .long 3204215126
+ .long 3827994963
+ .long 1071349034
+ .long 941734744
+ .long 3162288710
+ .long 0
+ .long 1072693248
+ .long 1615317960
+ .long 3217198637
+ .long 1400808192
+ .long 1007479474
+ .long 0
+ .long 1070596096
+ .long 55251407
+ .long 1069061012
+ .long 2380564598
+ .long 3214875524
+ .long 2078095393
+ .long 1067124247
+ .long 3759475360
+ .long 3212128451
+ .long 800747756
+ .long 1063836662
+ .long 3361780736
+ .long 3209299766
+ .long 3643416391
+ .long 1062249457
+ .long 159936490
+ .long 1071297563
+ .long 3547642993
+ .long 3161095918
+ .long 0
+ .long 1072693248
+ .long 2707383656
+ .long 3217163056
+ .long 554608178
+ .long 3160521551
+ .long 0
+ .long 1070596096
+ .long 1495139838
+ .long 1069048702
+ .long 183291521
+ .long 3214810633
+ .long 3540584774
+ .long 1067107509
+ .long 3317896890
+ .long 3212078943
+ .long 3844035447
+ .long 1063805952
+ .long 3695033041
+ .long 3209230570
+ .long 3731872264
+ .long 3207727795
+ .long 786845313
+ .long 1071246091
+ .long 627570489
+ .long 1010932411
+ .long 0
+ .long 1072693248
+ .long 850612498
+ .long 3217127550
+ .long 3957837480
+ .long 1012739461
+ .long 0
+ .long 1070596096
+ .long 4230382869
+ .long 1069036788
+ .long 2678394493
+ .long 3214746346
+ .long 42048419
+ .long 1067091374
+ .long 61549345
+ .long 3212030360
+ .long 3326100968
+ .long 1063776440
+ .long 377176410
+ .long 3209163411
+ .long 1539171840
+ .long 3206122484
+ .long 1413754136
+ .long 1071194619
+ .long 856972295
+ .long 1014081062
+ .long 0
+ .long 1072693248
+ .long 2829232582
+ .long 3217092115
+ .long 1037840994
+ .long 1012412582
+ .long 0
+ .long 1070596096
+ .long 1194701220
+ .long 1069025268
+ .long 1485063562
+ .long 3214682643
+ .long 3996610205
+ .long 1067075828
+ .long 2865183303
+ .long 3211982662
+ .long 2185691626
+ .long 1063748117
+ .long 435906073
+ .long 3209098183
+ .long 1583986254
+ .long 1061922957
+ .long 2040662960
+ .long 1071143147
+ .long 4270081753
+ .long 3162433290
+ .long 0
+ .long 1072693248
+ .long 2636871548
+ .long 3217056750
+ .long 3635907996
+ .long 3159234439
+ .long 0
+ .long 1070596096
+ .long 3074865967
+ .long 1069014136
+ .long 2827594877
+ .long 3214619501
+ .long 4018616278
+ .long 1067060863
+ .long 3744630852
+ .long 3211935814
+ .long 967547233
+ .long 1063721046
+ .long 1523268333
+ .long 3209034706
+ .long 370739821
+ .long 1057912410
+ .long 2667571783
+ .long 1071091675
+ .long 1614402419
+ .long 3161385080
+ .long 0
+ .long 1072693248
+ .long 1600848691
+ .long 3217011737
+ .long 3799011534
+ .long 3158825865
+ .long 0
+ .long 1070596096
+ .long 3940625627
+ .long 1069003390
+ .long 1694054617
+ .long 3214556900
+ .long 3525212904
+ .long 1067046468
+ .long 3400170401
+ .long 3211889780
+ .long 2025409789
+ .long 1063695095
+ .long 1861695371
+ .long 3208972985
+ .long 2099431114
+ .long 1058280175
+ .long 3294480606
+ .long 1071040203
+ .long 1489607747
+ .long 3149321755
+ .long 0
+ .long 1072693248
+ .long 163325898
+ .long 3216941271
+ .long 272531312
+ .long 3158872717
+ .long 0
+ .long 1070596096
+ .long 2709640876
+ .long 1068993027
+ .long 3241569416
+ .long 3214494818
+ .long 3499770285
+ .long 1067032633
+ .long 2428916378
+ .long 3211844525
+ .long 796870242
+ .long 1063670282
+ .long 2401385551
+ .long 3208912885
+ .long 417337253
+ .long 3207953615
+ .long 3921389429
+ .long 1070988731
+ .long 3647185164
+ .long 1013899970
+ .long 0
+ .long 1072693248
+ .long 2357811071
+ .long 3216870929
+ .long 1815527340
+ .long 3157476592
+ .long 0
+ .long 1070596096
+ .long 3138003653
+ .long 1068983043
+ .long 1253835798
+ .long 3214433236
+ .long 2444914170
+ .long 1067019349
+ .long 1113961907
+ .long 3211800015
+ .long 1725681990
+ .long 1063646503
+ .long 2521427548
+ .long 3208854407
+ .long 2469316955
+ .long 1061668474
+ .long 253330956
+ .long 1070937260
+ .long 991505830
+ .long 1014948912
+ .long 0
+ .long 1072693248
+ .long 1152452440
+ .long 3216800708
+ .long 2988871182
+ .long 1011946816
+ .long 0
+ .long 1070596096
+ .long 926263936
+ .long 1068973436
+ .long 3845070713
+ .long 3214372132
+ .long 626397172
+ .long 1067006607
+ .long 2777085683
+ .long 3211724145
+ .long 2172777456
+ .long 1063623822
+ .long 3188732906
+ .long 3208797386
+ .long 250185439
+ .long 1062033866
+ .long 880239780
+ .long 1070885788
+ .long 4135548218
+ .long 3161565440
+ .long 0
+ .long 1072693248
+ .long 2555242223
+ .long 3216730602
+ .long 1132402578
+ .long 1012350135
+ .long 0
+ .long 1070596096
+ .long 890626350
+ .long 1068964202
+ .long 3331100648
+ .long 3214311488
+ .long 30508518
+ .long 1066994398
+ .long 397665884
+ .long 3211637908
+ .long 1048931291
+ .long 1063602233
+ .long 4152525626
+ .long 3208741715
+ .long 51864355
+ .long 3208005790
+ .long 1507148603
+ .long 1070834316
+ .long 1086374101
+ .long 3158421905
+ .long 0
+ .long 1072693248
+ .long 4132779814
+ .long 3216660607
+ .long 3895880616
+ .long 1012226511
+ .long 0
+ .long 1070596096
+ .long 4069764223
+ .long 1068955338
+ .long 1936654463
+ .long 3214251284
+ .long 27137259
+ .long 1066982714
+ .long 112447739
+ .long 3211552967
+ .long 3681308921
+ .long 1063581561
+ .long 3611917249
+ .long 3208687484
+ .long 2182292750
+ .long 1061868473
+ .long 2134057426
+ .long 1070782844
+ .long 1285458442
+ .long 1013610809
+ .long 0
+ .long 1072693248
+ .long 3593905368
+ .long 3216590719
+ .long 2989246530
+ .long 1011901384
+ .long 0
+ .long 1070596096
+ .long 3421947019
+ .long 1068946843
+ .long 3144465174
+ .long 3214191500
+ .long 1618007405
+ .long 1066971547
+ .long 584787122
+ .long 3211469261
+ .long 1465845707
+ .long 1063561956
+ .long 939979903
+ .long 3208626315
+ .long 1695262346
+ .long 3204506663
+ .long 2760966249
+ .long 1070731372
+ .long 1958126117
+ .long 1014804331
+ .long 0
+ .long 1072693248
+ .long 3078460826
+ .long 3216520933
+ .long 4285081068
+ .long 3159473614
+ .long 0
+ .long 1070596096
+ .long 997373752
+ .long 1068938714
+ .long 3045840714
+ .long 3214132118
+ .long 3110377520
+ .long 1066960890
+ .long 2323415564
+ .long 3211386730
+ .long 18309569
+ .long 1063543250
+ .long 551124926
+ .long 3208522770
+ .long 249182975
+ .long 1061811122
+ .long 3387875073
+ .long 1070679900
+ .long 3168927931
+ .long 3161710021
+ .long 0
+ .long 1072693248
+ .long 561239310
+ .long 3216451245
+ .long 210497392
+ .long 3156201161
+ .long 0
+ .long 1070596096
+ .long 3636030687
+ .long 1068930947
+ .long 3167463735
+ .long 3214073119
+ .long 73152643
+ .long 1066950737
+ .long 3108019154
+ .long 3211305316
+ .long 2100498319
+ .long 1063525559
+ .long 282708930
+ .long 3208421353
+ .long 2551775895
+ .long 3207605450
+ .long 4014783896
+ .long 1070628428
+ .long 3119156846
+ .long 3159469019
+ .long 0
+ .long 1072693248
+ .long 2730856872
+ .long 3216381649
+ .long 4254293712
+ .long 1009711154
+ .long 0
+ .long 1070596096
+ .long 1486032260
+ .long 1068923542
+ .long 1824674436
+ .long 3214014485
+ .long 2488677748
+ .long 1066941079
+ .long 1925770461
+ .long 3211224962
+ .long 2531500940
+ .long 1063508710
+ .long 3007508061
+ .long 3208322267
+ .long 994458799
+ .long 1061806090
+ .long 693450846
+ .long 1070557818
+ .long 3218699017
+ .long 1013321647
+ .long 0
+ .long 1072693248
+ .long 3508967486
+ .long 3216312142
+ .long 3021155724
+ .long 1011969550
+ .long 0
+ .long 1070596096
+ .long 2356881417
+ .long 1068916495
+ .long 2655870529
+ .long 3213956197
+ .long 352865498
+ .long 1066931912
+ .long 3008575053
+ .long 3211145611
+ .long 2622088932
+ .long 1063492845
+ .long 3834913422
+ .long 3208225014
+ .long 1497815285
+ .long 3207511002
+ .long 1947268493
+ .long 1070454874
+ .long 1185916272
+ .long 3159758181
+ .long 0
+ .long 1072693248
+ .long 1224261120
+ .long 3216242720
+ .long 3122470664
+ .long 3159031070
+ .long 0
+ .long 1070596096
+ .long 1648557593
+ .long 1068909805
+ .long 1683250226
+ .long 3213898238
+ .long 2306165388
+ .long 1066923228
+ .long 2600821843
+ .long 3211067209
+ .long 3406795398
+ .long 1063477798
+ .long 3582359304
+ .long 3208129845
+ .long 3199024961
+ .long 1061038571
+ .long 3201086139
+ .long 1070351930
+ .long 4185319304
+ .long 1013177066
+ .long 0
+ .long 1072693248
+ .long 2901633254
+ .long 3216173377
+ .long 2788221280
+ .long 1009319756
+ .long 0
+ .long 1070596096
+ .long 3820542338
+ .long 1068903469
+ .long 288942435
+ .long 3213795740
+ .long 1237884341
+ .long 1066915023
+ .long 1606294444
+ .long 3210989702
+ .long 223992189
+ .long 1063463656
+ .long 1499707213
+ .long 3208036378
+ .long 3416758850
+ .long 1060053511
+ .long 159936490
+ .long 1070248987
+ .long 3547642993
+ .long 3160047342
+ .long 0
+ .long 1072693248
+ .long 2781619933
+ .long 3216104110
+ .long 3145354644
+ .long 1011963772
+ .long 0
+ .long 1070596096
+ .long 911495412
+ .long 1068897487
+ .long 290976546
+ .long 3213681030
+ .long 33241894
+ .long 1066907291
+ .long 977031819
+ .long 3210913037
+ .long 119357659
+ .long 1063450345
+ .long 1846248446
+ .long 3207944648
+ .long 4276662282
+ .long 1061269448
+ .long 1413754136
+ .long 1070146043
+ .long 856972295
+ .long 1013032486
+ .long 0
+ .long 1072693248
+ .long 3789571175
+ .long 3216034914
+ .long 2061677164
+ .long 3158802525
+ .long 0
+ .long 1070596096
+ .long 2598855658
+ .long 1068891855
+ .long 628750565
+ .long 3213566872
+ .long 2954249465
+ .long 1066900026
+ .long 1468236324
+ .long 3210837162
+ .long 3701994667
+ .long 1063437912
+ .long 310421843
+ .long 3207854373
+ .long 393637210
+ .long 3207421006
+ .long 2667571783
+ .long 1070043099
+ .long 1614402419
+ .long 3160336504
+ .long 0
+ .long 1072693248
+ .long 700360492
+ .long 3215948980
+ .long 4067889956
+ .long 3158309941
+ .long 0
+ .long 1070596096
+ .long 1834243786
+ .long 1068886573
+ .long 92010622
+ .long 3213453232
+ .long 2733460853
+ .long 1066893225
+ .long 3349627764
+ .long 3210762026
+ .long 2326014508
+ .long 1063426279
+ .long 2491557920
+ .long 3207765637
+ .long 2159546056
+ .long 3208108974
+ .long 3921389429
+ .long 1069940155
+ .long 3647185164
+ .long 1012851394
+ .long 0
+ .long 1072693248
+ .long 4008519973
+ .long 3215810847
+ .long 1156806192
+ .long 3157002565
+ .long 0
+ .long 1070596096
+ .long 608713188
+ .long 1068881639
+ .long 3200221055
+ .long 3213340075
+ .long 2024185290
+ .long 1066886883
+ .long 3737414605
+ .long 3210635448
+ .long 4102026093
+ .long 1063415403
+ .long 3274310324
+ .long 3207678452
+ .long 4280744879
+ .long 1061910091
+ .long 880239780
+ .long 1069837212
+ .long 4135548218
+ .long 3160516864
+ .long 0
+ .long 1072693248
+ .long 2381996637
+ .long 3215672832
+ .long 639270832
+ .long 1008532593
+ .long 0
+ .long 1070596096
+ .long 1358563144
+ .long 1068877051
+ .long 2925458633
+ .long 3213227369
+ .long 492833071
+ .long 1066880996
+ .long 4104628456
+ .long 3210487835
+ .long 3054991409
+ .long 1063405423
+ .long 2594255061
+ .long 3207590366
+ .long 2100320188
+ .long 3208479772
+ .long 2134057426
+ .long 1069734268
+ .long 1285458442
+ .long 1012562233
+ .long 0
+ .long 1072693248
+ .long 2319612510
+ .long 3215534925
+ .long 1111071278
+ .long 3158888695
+ .long 0
+ .long 1070596096
+ .long 2666415304
+ .long 1068872808
+ .long 2071510147
+ .long 3213115080
+ .long 3395467108
+ .long 1066875559
+ .long 2423946868
+ .long 3210341405
+ .long 80612299
+ .long 1063396131
+ .long 2656867111
+ .long 3207420929
+ .long 3004001956
+ .long 1061836610
+ .long 3387875073
+ .long 1069631324
+ .long 3168927931
+ .long 3160661445
+ .long 0
+ .long 1072693248
+ .long 1865079417
+ .long 3215397118
+ .long 2937833612
+ .long 1011350737
+ .long 0
+ .long 1070596096
+ .long 3552516355
+ .long 1068868909
+ .long 294617109
+ .long 3213003175
+ .long 76221622
+ .long 1066870571
+ .long 3376425735
+ .long 3210196061
+ .long 2723275475
+ .long 1063387705
+ .long 3315521969
+ .long 3207252871
+ .long 3590370444
+ .long 3207679867
+ .long 693450846
+ .long 1069509242
+ .long 3218699017
+ .long 1012273071
+ .long 0
+ .long 1072693248
+ .long 3481201957
+ .long 3215259402
+ .long 1636311970
+ .long 3157709699
+ .long 0
+ .long 1070596096
+ .long 3471360849
+ .long 1068865353
+ .long 2600335524
+ .long 3212891620
+ .long 2613792462
+ .long 1066866026
+ .long 3847698423
+ .long 3210051709
+ .long 663967578
+ .long 1063380003
+ .long 493409710
+ .long 3207087119
+ .long 1127477260
+ .long 3207199264
+ .long 3201086139
+ .long 1069303354
+ .long 4185319304
+ .long 1012128490
+ .long 0
+ .long 1072693248
+ .long 1154356116
+ .long 3215121770
+ .long 1840040117
+ .long 3159097207
+ .long 0
+ .long 1070596096
+ .long 2308597781
+ .long 1068862139
+ .long 4143524575
+ .long 3212723904
+ .long 2850915343
+ .long 1066861923
+ .long 1191668407
+ .long 3209908256
+ .long 2952843839
+ .long 1063373033
+ .long 3172237721
+ .long 3206923432
+ .long 2684115468
+ .long 1061237060
+ .long 1413754136
+ .long 1069097467
+ .long 856972295
+ .long 1011983910
+ .long 0
+ .long 1072693248
+ .long 1858778712
+ .long 3214984212
+ .long 552307712
+ .long 1007653492
+ .long 0
+ .long 1070596096
+ .long 378217452
+ .long 1068859266
+ .long 2507068679
+ .long 3212502004
+ .long 2446302718
+ .long 1066858259
+ .long 1361087111
+ .long 3209765608
+ .long 761263112
+ .long 1063366881
+ .long 2488333367
+ .long 3206760542
+ .long 3134826447
+ .long 3208438003
+ .long 3921389429
+ .long 1068891579
+ .long 3647185164
+ .long 1011802818
+ .long 0
+ .long 1072693248
+ .long 3847531748
+ .long 3214759425
+ .long 2484055616
+ .long 1005679197
+ .long 0
+ .long 1070596096
+ .long 2714982805
+ .long 1068856732
+ .long 2649074978
+ .long 3212280611
+ .long 4275478210
+ .long 1066855031
+ .long 2325700054
+ .long 3209556212
+ .long 3568629394
+ .long 1063361434
+ .long 1419097007
+ .long 3206599479
+ .long 3667282369
+ .long 3208404843
+ .long 2134057426
+ .long 1068685692
+ .long 1285458442
+ .long 1011513657
+ .long 0
+ .long 1072693248
+ .long 4111272116
+ .long 3214484558
+ .long 3215369808
+ .long 3153450047
+ .long 0
+ .long 1070596096
+ .long 1892298670
+ .long 1068854538
+ .long 4017792039
+ .long 3212059661
+ .long 3825916209
+ .long 1066852238
+ .long 1674419437
+ .long 3209273590
+ .long 2761556401
+ .long 1063356717
+ .long 4123887123
+ .long 3206334117
+ .long 39803485
+ .long 3207166447
+ .long 693450846
+ .long 1068460666
+ .long 3218699017
+ .long 1011224495
+ .long 0
+ .long 1072693248
+ .long 1769817487
+ .long 3214209791
+ .long 226900428
+ .long 3157084142
+ .long 0
+ .long 1070596096
+ .long 3790025843
+ .long 1068852682
+ .long 2975452701
+ .long 3211839091
+ .long 2074002222
+ .long 1066849878
+ .long 2835406423
+ .long 3208992033
+ .long 2160688582
+ .long 1063352737
+ .long 438342636
+ .long 3206016666
+ .long 598064701
+ .long 3205441692
+ .long 1413754136
+ .long 1068048891
+ .long 856972295
+ .long 1010935334
+ .long 0
+ .long 1072693248
+ .long 2796861084
+ .long 3213935106
+ .long 4160910146
+ .long 1008936729
+ .long 0
+ .long 1070596096
+ .long 1822957307
+ .long 1068851165
+ .long 2426092900
+ .long 3211449386
+ .long 1181651297
+ .long 1066847949
+ .long 11113416
+ .long 3208711363
+ .long 2350522541
+ .long 1063349490
+ .long 1110749705
+ .long 3205700769
+ .long 1529834450
+ .long 3204806002
+ .long 2134057426
+ .long 1067637116
+ .long 1285458442
+ .long 1010465081
+ .long 0
+ .long 1072693248
+ .long 766684177
+ .long 3213435536
+ .long 4183922317
+ .long 3156428395
+ .long 0
+ .long 1070596096
+ .long 2709169804
+ .long 1068849985
+ .long 2562652885
+ .long 3211009382
+ .long 194304310
+ .long 1066846450
+ .long 285423324
+ .long 3208220240
+ .long 4164698302
+ .long 1063346958
+ .long 490316583
+ .long 3205276877
+ .long 1161999017
+ .long 1059948714
+ .long 1413754136
+ .long 1067000315
+ .long 856972295
+ .long 1009886758
+ .long 0
+ .long 1072693248
+ .long 1373484687
+ .long 3212886398
+ .long 3463806808
+ .long 3156987378
+ .long 0
+ .long 1070596096
+ .long 699034059
+ .long 1068849143
+ .long 4196075177
+ .long 3210399801
+ .long 3624794075
+ .long 1066845379
+ .long 1212360239
+ .long 3207661374
+ .long 4225594870
+ .long 1063345136
+ .long 4142831282
+ .long 3204654696
+ .long 3419780486
+ .long 1061860029
+ .long 1413754136
+ .long 1065951739
+ .long 856972295
+ .long 1008838182
+ .long 0
+ .long 1072693248
+ .long 1048210722
+ .long 3211837789
+ .long 322286546
+ .long 3154320084
+ .long 0
+ .long 1070596096
+ .long 3344097458
+ .long 1068848637
+ .long 4078525744
+ .long 3209350973
+ .long 4268457311
+ .long 1066844737
+ .long 1752199129
+ .long 3206612445
+ .long 2933973771
+ .long 1063344076
+ .long 1552329397
+ .long 3203604713
+ .long 4286470131
+ .long 1060555865
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1070596096
+ .long 1431655765
+ .long 1068848469
+ .long 0
+ .long 0
+ .long 381986942
+ .long 1066844524
+ .long 0
+ .long 0
+ .long 3364860459
+ .long 1063343704
+ .long 0
+ .long 0
+ .long 3669941704
+ .long 1061551801
+ .long 1413754136
+ .long 3213435387
+ .long 856972295
+ .long 3156321830
+ .long 0
+ .long 1072693248
+ .long 1048210722
+ .long 1064354141
+ .long 310222654
+ .long 1006836436
+ .long 0
+ .long 1070596096
+ .long 3344097458
+ .long 1068848637
+ .long 4078525744
+ .long 1061867325
+ .long 4268457311
+ .long 1066844737
+ .long 1752199185
+ .long 1059128797
+ .long 2933974085
+ .long 1063344076
+ .long 1541627965
+ .long 1056121065
+ .long 4213857106
+ .long 1060555865
+ .long 1413754136
+ .long 3214483963
+ .long 856972295
+ .long 3157370406
+ .long 0
+ .long 1072693248
+ .long 1373484687
+ .long 1065402750
+ .long 3463778643
+ .long 1009503730
+ .long 0
+ .long 1070596096
+ .long 699034059
+ .long 1068849143
+ .long 4196075177
+ .long 1062916153
+ .long 3624794075
+ .long 1066845379
+ .long 1212360238
+ .long 1060177726
+ .long 4225594899
+ .long 1063345136
+ .long 4143059094
+ .long 1057171048
+ .long 3416473992
+ .long 1061860029
+ .long 2134057426
+ .long 3215120764
+ .long 1285458442
+ .long 3157948729
+ .long 0
+ .long 1072693248
+ .long 766684177
+ .long 1065951888
+ .long 4184103028
+ .long 1008944747
+ .long 0
+ .long 1070596096
+ .long 2709169804
+ .long 1068849985
+ .long 2562652885
+ .long 1063525734
+ .long 194304310
+ .long 1066846450
+ .long 285423316
+ .long 1060736592
+ .long 4164698149
+ .long 1063346958
+ .long 492080240
+ .long 1057793229
+ .long 1233082996
+ .long 1059948714
+ .long 1413754136
+ .long 3215532539
+ .long 856972295
+ .long 3158418982
+ .long 0
+ .long 1072693248
+ .long 2796861084
+ .long 1066451458
+ .long 4163800696
+ .long 3156420377
+ .long 0
+ .long 1070596096
+ .long 1822957307
+ .long 1068851165
+ .long 2426092900
+ .long 1063965738
+ .long 1181651297
+ .long 1066847949
+ .long 11113467
+ .long 1061227715
+ .long 2350524377
+ .long 1063349490
+ .long 1099629520
+ .long 1058217121
+ .long 647421766
+ .long 3204806003
+ .long 693450846
+ .long 3215944314
+ .long 3218699017
+ .long 3158708143
+ .long 0
+ .long 1072693248
+ .long 1769817487
+ .long 1066726143
+ .long 226750770
+ .long 1009600494
+ .long 0
+ .long 1070596096
+ .long 3790025843
+ .long 1068852682
+ .long 2975452701
+ .long 1064355443
+ .long 2074002222
+ .long 1066849878
+ .long 2835406424
+ .long 1061508385
+ .long 2160688720
+ .long 1063352737
+ .long 438143169
+ .long 1058533018
+ .long 848462310
+ .long 3205441692
+ .long 2134057426
+ .long 3216169340
+ .long 1285458442
+ .long 3158997305
+ .long 0
+ .long 1072693248
+ .long 4111272116
+ .long 1067000910
+ .long 3213429568
+ .long 1005966399
+ .long 0
+ .long 1070596096
+ .long 1892298670
+ .long 1068854538
+ .long 4017792039
+ .long 1064576013
+ .long 3825916209
+ .long 1066852238
+ .long 1674419438
+ .long 1061789942
+ .long 2761556545
+ .long 1063356717
+ .long 4123711083
+ .long 1058850469
+ .long 104595699
+ .long 3207166447
+ .long 3921389429
+ .long 3216375227
+ .long 3647185164
+ .long 3159286466
+ .long 0
+ .long 1072693248
+ .long 3847531748
+ .long 1067275777
+ .long 2487971824
+ .long 3153162845
+ .long 0
+ .long 1070596096
+ .long 2714982805
+ .long 1068856732
+ .long 2649074978
+ .long 1064796963
+ .long 4275478210
+ .long 1066855031
+ .long 2325700056
+ .long 1062072564
+ .long 3568629551
+ .long 1063361434
+ .long 1418922081
+ .long 1059115831
+ .long 3702148884
+ .long 3208404843
+ .long 1413754136
+ .long 3216581115
+ .long 856972295
+ .long 3159467558
+ .long 0
+ .long 1072693248
+ .long 1858778712
+ .long 1067500564
+ .long 554450480
+ .long 3155137140
+ .long 0
+ .long 1070596096
+ .long 378217452
+ .long 1068859266
+ .long 2507068679
+ .long 1065018356
+ .long 2446302718
+ .long 1066858259
+ .long 1361087112
+ .long 1062281960
+ .long 761263211
+ .long 1063366881
+ .long 2488165471
+ .long 1059276894
+ .long 3156241770
+ .long 3208438003
+ .long 3201086139
+ .long 3216787002
+ .long 4185319304
+ .long 3159612138
+ .long 0
+ .long 1072693248
+ .long 1154356116
+ .long 1067638122
+ .long 1840130764
+ .long 1011613559
+ .long 0
+ .long 1070596096
+ .long 2308597781
+ .long 1068862139
+ .long 4143524575
+ .long 1065240256
+ .long 2850915343
+ .long 1066861923
+ .long 1191668406
+ .long 1062424608
+ .long 2952843813
+ .long 1063373033
+ .long 3172428186
+ .long 1059439784
+ .long 2686776959
+ .long 1061237060
+ .long 693450846
+ .long 3216992890
+ .long 3218699017
+ .long 3159756719
+ .long 0
+ .long 1072693248
+ .long 3481201957
+ .long 1067775754
+ .long 1635996196
+ .long 1010226051
+ .long 0
+ .long 1070596096
+ .long 3471360849
+ .long 1068865353
+ .long 2600335524
+ .long 1065407972
+ .long 2613792462
+ .long 1066866026
+ .long 3847698425
+ .long 1062568061
+ .long 663967590
+ .long 1063380003
+ .long 493016801
+ .long 1059603471
+ .long 1131084659
+ .long 3207199264
+ .long 3387875073
+ .long 3217114972
+ .long 3168927931
+ .long 1013177797
+ .long 0
+ .long 1072693248
+ .long 1865079417
+ .long 1067913470
+ .long 2938003329
+ .long 3158834385
+ .long 0
+ .long 1070596096
+ .long 3552516355
+ .long 1068868909
+ .long 294617109
+ .long 1065519527
+ .long 76221622
+ .long 1066870571
+ .long 3376425737
+ .long 1062712413
+ .long 2723275461
+ .long 1063387705
+ .long 3315136619
+ .long 1059769223
+ .long 3585984604
+ .long 3207679867
+ .long 2134057426
+ .long 3217217916
+ .long 1285458442
+ .long 3160045881
+ .long 0
+ .long 1072693248
+ .long 2319612510
+ .long 1068051277
+ .long 1111303258
+ .long 1011405047
+ .long 0
+ .long 1070596096
+ .long 2666415304
+ .long 1068872808
+ .long 2071510147
+ .long 1065631432
+ .long 3395467108
+ .long 1066875559
+ .long 2423946865
+ .long 1062857757
+ .long 80612341
+ .long 1063396131
+ .long 2657457026
+ .long 1059937281
+ .long 2998464421
+ .long 1061836610
+ .long 880239780
+ .long 3217320860
+ .long 4135548218
+ .long 1013033216
+ .long 0
+ .long 1072693248
+ .long 2381996637
+ .long 1068189184
+ .long 639224640
+ .long 3156016241
+ .long 0
+ .long 1070596096
+ .long 1358563144
+ .long 1068877051
+ .long 2925458633
+ .long 1065743721
+ .long 492833071
+ .long 1066880996
+ .long 4104628456
+ .long 1063004187
+ .long 3054991518
+ .long 1063405423
+ .long 2594252722
+ .long 1060106718
+ .long 2125241622
+ .long 3208479772
+ .long 3921389429
+ .long 3217423803
+ .long 3647185164
+ .long 3160335042
+ .long 0
+ .long 1072693248
+ .long 4008519973
+ .long 1068327199
+ .long 1156786808
+ .long 1009518917
+ .long 0
+ .long 1070596096
+ .long 608713188
+ .long 1068881639
+ .long 3200221055
+ .long 1065856427
+ .long 2024185290
+ .long 1066886883
+ .long 3737414605
+ .long 1063151800
+ .long 4102026005
+ .long 1063415403
+ .long 3274311301
+ .long 1060194804
+ .long 4290805031
+ .long 1061910091
+ .long 2667571783
+ .long 3217526747
+ .long 1614402419
+ .long 1012852856
+ .long 0
+ .long 1072693248
+ .long 700360492
+ .long 1068465332
+ .long 4067897658
+ .long 1010826293
+ .long 0
+ .long 1070596096
+ .long 1834243786
+ .long 1068886573
+ .long 92010622
+ .long 1065969584
+ .long 2733460853
+ .long 1066893225
+ .long 3349627764
+ .long 1063278378
+ .long 2326014613
+ .long 1063426279
+ .long 2491557128
+ .long 1060281989
+ .long 2183550903
+ .long 3208108974
+ .long 1413754136
+ .long 3217629691
+ .long 856972295
+ .long 3160516134
+ .long 0
+ .long 1072693248
+ .long 3789571175
+ .long 1068551266
+ .long 2061680020
+ .long 1011318877
+ .long 0
+ .long 1070596096
+ .long 2598855658
+ .long 1068891855
+ .long 628750565
+ .long 1066083224
+ .long 2954249465
+ .long 1066900026
+ .long 1468236324
+ .long 1063353514
+ .long 3701994745
+ .long 1063437912
+ .long 310421258
+ .long 1060370725
+ .long 429301190
+ .long 3207421006
+ .long 159936490
+ .long 3217732635
+ .long 3547642993
+ .long 1012563694
+ .long 0
+ .long 1072693248
+ .long 2781619933
+ .long 1068620462
+ .long 3145355490
+ .long 3159447420
+ .long 0
+ .long 1070596096
+ .long 911495412
+ .long 1068897487
+ .long 290976546
+ .long 1066197382
+ .long 33241894
+ .long 1066907291
+ .long 977031819
+ .long 1063429389
+ .long 119357612
+ .long 1063450345
+ .long 1846248792
+ .long 1060461000
+ .long 4282034711
+ .long 1061269448
+ .long 3201086139
+ .long 3217835578
+ .long 4185319304
+ .long 3160660714
+ .long 0
+ .long 1072693248
+ .long 2901633254
+ .long 1068689729
+ .long 2788220944
+ .long 3156803404
+ .long 0
+ .long 1070596096
+ .long 3820542338
+ .long 1068903469
+ .long 288942435
+ .long 1066312092
+ .long 1237884341
+ .long 1066915023
+ .long 1606294444
+ .long 1063506054
+ .long 223992191
+ .long 1063463656
+ .long 1499707196
+ .long 1060552730
+ .long 3415844307
+ .long 1060053511
+ .long 1947268493
+ .long 3217938522
+ .long 1185916272
+ .long 1012274533
+ .long 0
+ .long 1072693248
+ .long 1224261120
+ .long 1068759072
+ .long 3122469562
+ .long 1011547422
+ .long 0
+ .long 1070596096
+ .long 1648557593
+ .long 1068909805
+ .long 1683250226
+ .long 1066414590
+ .long 2306165388
+ .long 1066923228
+ .long 2600821843
+ .long 1063583561
+ .long 3406795366
+ .long 1063477798
+ .long 3582359528
+ .long 1060646197
+ .long 3206340638
+ .long 1061038571
+ .long 693450846
+ .long 3218041466
+ .long 3218699017
+ .long 3160805295
+ .long 0
+ .long 1072693248
+ .long 3508967486
+ .long 1068828494
+ .long 3021154406
+ .long 3159453198
+ .long 0
+ .long 1070596096
+ .long 2356881417
+ .long 1068916495
+ .long 2655870529
+ .long 1066472549
+ .long 352865498
+ .long 1066931912
+ .long 3008575053
+ .long 1063661963
+ .long 2622089007
+ .long 1063492845
+ .long 3834912888
+ .long 1060741366
+ .long 1532107502
+ .long 3207511002
+ .long 4014783896
+ .long 3218112076
+ .long 3119156846
+ .long 1011985371
+ .long 0
+ .long 1072693248
+ .long 2730856872
+ .long 1068898001
+ .long 4254304408
+ .long 3157194802
+ .long 0
+ .long 1070596096
+ .long 1486032260
+ .long 1068923542
+ .long 1824674436
+ .long 1066530837
+ .long 2488677748
+ .long 1066941079
+ .long 1925770461
+ .long 1063741314
+ .long 2531500863
+ .long 1063508710
+ .long 3007508602
+ .long 1060838619
+ .long 1003260451
+ .long 1061806090
+ .long 3387875073
+ .long 3218163548
+ .long 3168927931
+ .long 1014226373
+ .long 0
+ .long 1072693248
+ .long 561239310
+ .long 1068967597
+ .long 210518352
+ .long 1008717513
+ .long 0
+ .long 1070596096
+ .long 3636030687
+ .long 1068930947
+ .long 3167463735
+ .long 1066589471
+ .long 73152643
+ .long 1066950737
+ .long 3108019154
+ .long 1063821668
+ .long 2100498394
+ .long 1063525559
+ .long 282708402
+ .long 1060937705
+ .long 2568921764
+ .long 3207605450
+ .long 2760966249
+ .long 3218215020
+ .long 1958126117
+ .long 3162287979
+ .long 0
+ .long 1072693248
+ .long 3078460826
+ .long 1069037285
+ .long 4285079825
+ .long 1011989966
+ .long 0
+ .long 1070596096
+ .long 997373752
+ .long 1068938714
+ .long 3045840714
+ .long 1066648470
+ .long 3110377520
+ .long 1066960890
+ .long 2323415564
+ .long 1063903082
+ .long 18309497
+ .long 1063543250
+ .long 551125427
+ .long 1061039122
+ .long 257413032
+ .long 1061811122
+ .long 2134057426
+ .long 3218266492
+ .long 1285458442
+ .long 3161094457
+ .long 0
+ .long 1072693248
+ .long 3593905368
+ .long 1069107071
+ .long 2989245764
+ .long 3159385032
+ .long 0
+ .long 1070596096
+ .long 3421947019
+ .long 1068946843
+ .long 3144465174
+ .long 1066707852
+ .long 1618007405
+ .long 1066971547
+ .long 584787122
+ .long 1063985613
+ .long 1465845750
+ .long 1063561956
+ .long 939979596
+ .long 1061142667
+ .long 1773905530
+ .long 3204506663
+ .long 1507148603
+ .long 3218317964
+ .long 1086374101
+ .long 1010938257
+ .long 0
+ .long 1072693248
+ .long 4132779814
+ .long 1069176959
+ .long 3895881848
+ .long 3159710159
+ .long 0
+ .long 1070596096
+ .long 4069764223
+ .long 1068955338
+ .long 1936654463
+ .long 1066767636
+ .long 27137259
+ .long 1066982714
+ .long 112447739
+ .long 1064069319
+ .long 3681308850
+ .long 1063581561
+ .long 3611917496
+ .long 1061203836
+ .long 2190408434
+ .long 1061868473
+ .long 880239780
+ .long 3218369436
+ .long 4135548218
+ .long 1014081792
+ .long 0
+ .long 1072693248
+ .long 2555242223
+ .long 1069246954
+ .long 1132401098
+ .long 3159833783
+ .long 0
+ .long 1070596096
+ .long 890626350
+ .long 1068964202
+ .long 3331100648
+ .long 1066827840
+ .long 30508518
+ .long 1066994398
+ .long 397665884
+ .long 1064154260
+ .long 1048931375
+ .long 1063602233
+ .long 4152525330
+ .long 1061258067
+ .long 71067649
+ .long 3208005790
+ .long 253330956
+ .long 3218420908
+ .long 991505830
+ .long 3162432560
+ .long 0
+ .long 1072693248
+ .long 1152452440
+ .long 1069317060
+ .long 2988872515
+ .long 3159430464
+ .long 0
+ .long 1070596096
+ .long 926263936
+ .long 1068973436
+ .long 3845070713
+ .long 1066888484
+ .long 626397172
+ .long 1067006607
+ .long 2777085683
+ .long 1064240497
+ .long 2172777379
+ .long 1063623822
+ .long 3188733172
+ .long 1061313738
+ .long 258986845
+ .long 1062033866
+ .long 3921389429
+ .long 3218472379
+ .long 3647185164
+ .long 3161383618
+ .long 0
+ .long 1072693248
+ .long 2357811071
+ .long 1069387281
+ .long 1815523692
+ .long 1009992944
+ .long 0
+ .long 1070596096
+ .long 3138003653
+ .long 1068983043
+ .long 1253835798
+ .long 1066949588
+ .long 2444914170
+ .long 1067019349
+ .long 1113961907
+ .long 1064316367
+ .long 1725681937
+ .long 1063646503
+ .long 2521427730
+ .long 1061370759
+ .long 2475375033
+ .long 1061668474
+ .long 3294480606
+ .long 3218523851
+ .long 1489607747
+ .long 1001838107
+ .long 0
+ .long 1072693248
+ .long 163325898
+ .long 1069457623
+ .long 272534188
+ .long 1011389069
+ .long 0
+ .long 1070596096
+ .long 2709640876
+ .long 1068993027
+ .long 3241569416
+ .long 1067011170
+ .long 3499770285
+ .long 1067032633
+ .long 2428916378
+ .long 1064360877
+ .long 796870323
+ .long 1063670282
+ .long 2401385265
+ .long 1061429237
+ .long 435854613
+ .long 3207953615
+ .long 2667571783
+ .long 3218575323
+ .long 1614402419
+ .long 1013901432
+ .long 0
+ .long 1072693248
+ .long 1600848691
+ .long 1069528089
+ .long 3799012648
+ .long 1011342217
+ .long 0
+ .long 1070596096
+ .long 3940625627
+ .long 1069003390
+ .long 1694054617
+ .long 1067073252
+ .long 3525212904
+ .long 1067046468
+ .long 3400170401
+ .long 1064406132
+ .long 2025409820
+ .long 1063695095
+ .long 1861695260
+ .long 1061489337
+ .long 2071083481
+ .long 1058280175
+ .long 2040662960
+ .long 3218626795
+ .long 4270081753
+ .long 1014949642
+ .long 0
+ .long 1072693248
+ .long 2636871548
+ .long 1069573102
+ .long 3635909220
+ .long 1011750791
+ .long 0
+ .long 1070596096
+ .long 3074865967
+ .long 1069014136
+ .long 2827594877
+ .long 1067135853
+ .long 4018616278
+ .long 1067060863
+ .long 3744630852
+ .long 1064452166
+ .long 967547267
+ .long 1063721046
+ .long 1523268212
+ .long 1061551058
+ .long 308558327
+ .long 1057912410
+ .long 1413754136
+ .long 3218678267
+ .long 856972295
+ .long 3161564710
+ .long 0
+ .long 1072693248
+ .long 2829232582
+ .long 1069608467
+ .long 1037842028
+ .long 3159896230
+ .long 0
+ .long 1070596096
+ .long 1194701220
+ .long 1069025268
+ .long 1485063562
+ .long 1067198995
+ .long 3996610205
+ .long 1067075828
+ .long 2865183303
+ .long 1064499014
+ .long 2185691567
+ .long 1063748117
+ .long 435906278
+ .long 1061614535
+ .long 1590730193
+ .long 1061922957
+ .long 786845313
+ .long 3218729739
+ .long 627570489
+ .long 3158416059
+ .long 0
+ .long 1072693248
+ .long 850612498
+ .long 1069643902
+ .long 3957836518
+ .long 3160223109
+ .long 0
+ .long 1070596096
+ .long 4230382869
+ .long 1069036788
+ .long 2678394493
+ .long 1067262698
+ .long 42048419
+ .long 1067091374
+ .long 61549345
+ .long 1064546712
+ .long 3326101021
+ .long 1063776440
+ .long 377176219
+ .long 1061679763
+ .long 1587637306
+ .long 3206122484
+ .long 159936490
+ .long 3218781211
+ .long 3547642993
+ .long 1013612270
+ .long 0
+ .long 1072693248
+ .long 2707383656
+ .long 1069679408
+ .long 554608849
+ .long 1013037903
+ .long 0
+ .long 1070596096
+ .long 1495139838
+ .long 1069048702
+ .long 183291521
+ .long 1067326985
+ .long 3540584774
+ .long 1067107509
+ .long 3317896890
+ .long 1064595295
+ .long 3844035522
+ .long 1063805952
+ .long 3695032775
+ .long 1061746922
+ .long 3749017783
+ .long 3207727795
+ .long 3827994963
+ .long 3218832682
+ .long 941734744
+ .long 1014805062
+ .long 0
+ .long 1072693248
+ .long 1615317960
+ .long 1069714989
+ .long 1400849280
+ .long 3154963122
+ .long 0
+ .long 1070596096
+ .long 55251407
+ .long 1069061012
+ .long 2380564598
+ .long 1067391876
+ .long 2078095393
+ .long 1067124247
+ .long 3759475360
+ .long 1064644803
+ .long 800747683
+ .long 1063836662
+ .long 3361780990
+ .long 1061816118
+ .long 3647588455
+ .long 1062249457
+ .long 3201086139
+ .long 3218884154
+ .long 4185319304
+ .long 3161709290
+ .long 0
+ .long 1072693248
+ .long 3772940467
+ .long 1069750646
+ .long 3998164292
+ .long 3160831254
+ .long 0
+ .long 1070596096
+ .long 3265990537
+ .long 1069073721
+ .long 3279971426
+ .long 1067453881
+ .long 2447085124
+ .long 1067141598
+ .long 1649985592
+ .long 1064695275
+ .long 3334399538
+ .long 1063868754
+ .long 454991464
+ .long 1061887337
+ .long 2110827584
+ .long 3204215126
+ .long 2574177316
+ .long 3218935626
+ .long 2889755040
+ .long 3159466096
+ .long 0
+ .long 1072693248
+ .long 2595342993
+ .long 1069786383
+ .long 1222183174
+ .long 1011927611
+ .long 0
+ .long 1070596096
+ .long 2192927435
+ .long 1069086835
+ .long 1645422722
+ .long 1067486966
+ .long 648269084
+ .long 1067159575
+ .long 2319737250
+ .long 1064746750
+ .long 1121494052
+ .long 1063902126
+ .long 897314780
+ .long 1061960786
+ .long 2655964904
+ .long 1060259181
+ .long 1947268493
+ .long 3218987098
+ .long 1185916272
+ .long 1013323109
+ .long 0
+ .long 1072693248
+ .long 192708373
+ .long 1069822202
+ .long 1013565611
+ .long 1013125469
+ .long 0
+ .long 1070596096
+ .long 1393443609
+ .long 1069100357
+ .long 3282624502
+ .long 1067520387
+ .long 3423023493
+ .long 1067178189
+ .long 3539283610
+ .long 1064799270
+ .long 1358653364
+ .long 1063936902
+ .long 1383848540
+ .long 1062036512
+ .long 1203341716
+ .long 3207439782
+ .long 1320359670
+ .long 3219038570
+ .long 1908355032
+ .long 1014660481
+ .long 0
+ .long 1072693248
+ .long 3079104278
+ .long 1069858104
+ .long 2593237048
+ .long 1012204550
+ .long 0
+ .long 1070596096
+ .long 1749059456
+ .long 1069114291
+ .long 3316773722
+ .long 1067554157
+ .long 2555119580
+ .long 1067197455
+ .long 59306268
+ .long 1064852879
+ .long 1944001714
+ .long 1063973040
+ .long 3607967027
+ .long 1062114688
+ .long 1550745665
+ .long 1061515569
+ .long 693450846
+ .long 3219090042
+ .long 3218699017
+ .long 3161853871
+ .long 0
+ .long 1072693248
+ .long 701484222
+ .long 1069894094
+ .long 1189134214
+ .long 3161032728
+ .long 0
+ .long 1070596096
+ .long 478132658
+ .long 1069128642
+ .long 2223654597
+ .long 1067588288
+ .long 706118045
+ .long 1067217386
+ .long 1066336370
+ .long 1064907619
+ .long 3310393859
+ .long 1064010705
+ .long 1920668857
+ .long 1062195336
+ .long 1238710124
+ .long 3206743753
+ .long 33271012
+ .long 3219134917
+ .long 2269574412
+ .long 1015853455
+ .long 0
+ .long 1072693248
+ .long 4098310206
+ .long 1069930172
+ .long 678867859
+ .long 3161222246
+ .long 0
+ .long 1070596096
+ .long 4033975882
+ .long 1069143413
+ .long 1577500332
+ .long 1067622792
+ .long 2904242360
+ .long 1067237995
+ .long 383406633
+ .long 1064963537
+ .long 511745140
+ .long 1064049810
+ .long 3472404675
+ .long 1062243075
+ .long 3498625096
+ .long 1061932631
+ .long 4014783896
+ .long 3219160652
+ .long 3119156846
+ .long 1013033947
+ .long 0
+ .long 1072693248
+ .long 2953879462
+ .long 1069966343
+ .long 651183718
+ .long 1012253676
+ .long 0
+ .long 1070596096
+ .long 2348802841
+ .long 1069158611
+ .long 4095204310
+ .long 1067657681
+ .long 3730066556
+ .long 1067259298
+ .long 2541564470
+ .long 1065020679
+ .long 1012137447
+ .long 1064090541
+ .long 3007493277
+ .long 1062286104
+ .long 268143184
+ .long 1058732349
+ .long 3701329484
+ .long 3219186388
+ .long 2857479637
+ .long 3162758049
+ .long 0
+ .long 1072693248
+ .long 4257115870
+ .long 1070002608
+ .long 39728604
+ .long 1013010275
+ .long 0
+ .long 1070596096
+ .long 3207767847
+ .long 1069174239
+ .long 797077063
+ .long 1067692970
+ .long 287980713
+ .long 1067281311
+ .long 1596666478
+ .long 1065079095
+ .long 2775385
+ .long 1064132847
+ .long 3823518174
+ .long 1062330592
+ .long 3096591665
+ .long 1060290467
+ .long 3387875073
+ .long 3219212124
+ .long 3168927931
+ .long 1015274949
+ .long 0
+ .long 1072693248
+ .long 2240974125
+ .long 1070038971
+ .long 3786178918
+ .long 3160482292
+ .long 0
+ .long 1070596096
+ .long 2199065489
+ .long 1069190303
+ .long 1118792048
+ .long 1067728670
+ .long 875809397
+ .long 1067304048
+ .long 2927616918
+ .long 1065138834
+ .long 3494337743
+ .long 1064176822
+ .long 4219965650
+ .long 1062376593
+ .long 4246297104
+ .long 1060574506
+ .long 3074420661
+ .long 3219237860
+ .long 1873363667
+ .long 3160515403
+ .long 0
+ .long 1072693248
+ .long 4156511795
+ .long 1070075433
+ .long 1791783009
+ .long 1013446896
+ .long 0
+ .long 1070596096
+ .long 4204226438
+ .long 1069206807
+ .long 2895376501
+ .long 1067764795
+ .long 3600185398
+ .long 1067327526
+ .long 2087275384
+ .long 1065199949
+ .long 347703954
+ .long 1064222543
+ .long 301495246
+ .long 1062424178
+ .long 908235914
+ .long 3206713553
+ .long 2760966249
+ .long 3219263596
+ .long 1958126117
+ .long 3163336555
+ .long 0
+ .long 1072693248
+ .long 212483252
+ .long 1070111999
+ .long 3496985219
+ .long 3161099600
+ .long 0
+ .long 1070596096
+ .long 1939348811
+ .long 1069223758
+ .long 1001569645
+ .long 1067801360
+ .long 764537997
+ .long 1067351764
+ .long 2326690580
+ .long 1065262493
+ .long 60750552
+ .long 1064270005
+ .long 2745665091
+ .long 1062473435
+ .long 1583079917
+ .long 1060807371
+ .long 2447511838
+ .long 3219289332
+ .long 3841595606
+ .long 1014371319
+ .long 0
+ .long 1072693248
+ .long 2234510834
+ .long 1070148669
+ .long 1077829152
+ .long 1008793063
+ .long 0
+ .long 1070596096
+ .long 1741599179
+ .long 1069241160
+ .long 288887764
+ .long 1067838378
+ .long 438316229
+ .long 1067376778
+ .long 2074161178
+ .long 1065326522
+ .long 2132352506
+ .long 1064311981
+ .long 321000208
+ .long 1062524429
+ .long 2575912902
+ .long 1061549566
+ .long 2134057426
+ .long 3219315068
+ .long 1285458442
+ .long 3162143033
+ .long 0
+ .long 1072693248
+ .long 719981842
+ .long 1070185448
+ .long 3396798827
+ .long 3160592662
+ .long 0
+ .long 1070596096
+ .long 2111724540
+ .long 1069259019
+ .long 2754706540
+ .long 1067875863
+ .long 790037588
+ .long 1067402587
+ .long 4097286835
+ .long 1065372654
+ .long 2918356845
+ .long 1064337614
+ .long 980543769
+ .long 1062577230
+ .long 1876925371
+ .long 3204685716
+ .long 1820603015
+ .long 3219340804
+ .long 3236194699
+ .long 1015708874
+ .long 0
+ .long 1072693248
+ .long 3497432648
+ .long 1070222337
+ .long 3403980908
+ .long 1011735702
+ .long 0
+ .long 1070596096
+ .long 2322009458
+ .long 1069277341
+ .long 3303184211
+ .long 1067913831
+ .long 3079386980
+ .long 1067429210
+ .long 3158396776
+ .long 1065406241
+ .long 500122450
+ .long 1064364204
+ .long 3226667103
+ .long 1062631956
+ .long 1843492548
+ .long 1062167069
+ .long 1507148603
+ .long 3219366540
+ .long 1086374101
+ .long 1011986833
+ .long 0
+ .long 1072693248
+ .long 1371601499
+ .long 1070259341
+ .long 3050542448
+ .long 1012183888
+ .long 0
+ .long 1070596096
+ .long 2434996648
+ .long 1069296132
+ .long 2688049294
+ .long 1067952297
+ .long 1586964757
+ .long 1067453518
+ .long 2102156419
+ .long 1065440660
+ .long 2974407256
+ .long 1064391847
+ .long 249545820
+ .long 1062688662
+ .long 115553579
+ .long 1061128535
+ .long 1193694191
+ .long 3219392276
+ .long 1890859349
+ .long 3162902630
+ .long 0
+ .long 1072693248
+ .long 2488075121
+ .long 1070296461
+ .long 1856289345
+ .long 3161251229
+ .long 0
+ .long 1070596096
+ .long 3322930631
+ .long 1069315398
+ .long 3277607933
+ .long 1067991276
+ .long 130253043
+ .long 1067467675
+ .long 1057196725
+ .long 1065475943
+ .long 3278604818
+ .long 1064420531
+ .long 4197429763
+ .long 1062747460
+ .long 1630708049
+ .long 1062399550
+ .long 880239780
+ .long 3219418012
+ .long 4135548218
+ .long 1015130368
+ .long 0
+ .long 1072693248
+ .long 2273547475
+ .long 1070333701
+ .long 4162052844
+ .long 1011378450
+ .long 0
+ .long 1070596096
+ .long 2392983423
+ .long 1069335146
+ .long 526970473
+ .long 1068030785
+ .long 628322840
+ .long 1067482270
+ .long 924033682
+ .long 1065512123
+ .long 854746912
+ .long 1064450346
+ .long 4004963071
+ .long 1062808438
+ .long 1468070334
+ .long 1060747995
+ .long 566785368
+ .long 3219443748
+ .long 2301849815
+ .long 3161093726
+ .long 0
+ .long 1072693248
+ .long 620845047
+ .long 1070371064
+ .long 314567191
+ .long 1013284227
+ .long 0
+ .long 1070596096
+ .long 2198158867
+ .long 1069355382
+ .long 222370857
+ .long 1068070839
+ .long 4028822361
+ .long 1067497314
+ .long 3610397327
+ .long 1065549234
+ .long 171354847
+ .long 1064481283
+ .long 693369877
+ .long 1062871714
+ .long 164532117
+ .long 1061632559
+ .long 253330956
+ .long 3219469484
+ .long 991505830
+ .long 3163481136
+ .long 0
+ .long 1072693248
+ .long 1894214069
+ .long 1070408552
+ .long 2182661802
+ .long 1012022503
+ .long 0
+ .long 1070596096
+ .long 1869133310
+ .long 1069376113
+ .long 1368144043
+ .long 1068111455
+ .long 242783364
+ .long 1067512821
+ .long 3692616565
+ .long 1065587313
+ .long 2890683560
+ .long 1064513419
+ .long 2407947124
+ .long 1062937380
+ .long 3803218812
+ .long 1060561671
+ .long 4234843841
+ .long 3219495219
+ .long 1479868884
+ .long 1014082158
+ .long 0
+ .long 1072693248
+ .long 2049842017
+ .long 1070446169
+ .long 2491067638
+ .long 3161241370
+ .long 0
+ .long 1070596096
+ .long 1431833764
+ .long 1069397346
+ .long 551048935
+ .long 1068152651
+ .long 2575917112
+ .long 1067528800
+ .long 1559777140
+ .long 1065626397
+ .long 743322322
+ .long 1064546764
+ .long 1974991899
+ .long 1063005565
+ .long 3459002328
+ .long 1062460308
+ .long 3921389429
+ .long 3219520955
+ .long 3647185164
+ .long 3162432194
+ .long 0
+ .long 1072693248
+ .long 1526324265
+ .long 1070483918
+ .long 4056333712
+ .long 3157795638
+ .long 0
+ .long 1070596096
+ .long 1830915900
+ .long 1069419088
+ .long 602185706
+ .long 1068194444
+ .long 555210277
+ .long 1067545266
+ .long 3690136761
+ .long 1065666523
+ .long 4115917104
+ .long 1064581405
+ .long 589230666
+ .long 1063076369
+ .long 3448584873
+ .long 1062382364
+ .long 3607935018
+ .long 3219546691
+ .long 4202814986
+ .long 1015564293
+ .long 0
+ .long 1072693248
+ .long 955408364
+ .long 1070521802
+ .long 2659929592
+ .long 3160779467
+ .long 0
+ .long 1070596096
+ .long 659174847
+ .long 1069441347
+ .long 2081794994
+ .long 1068236852
+ .long 2956616392
+ .long 1067562230
+ .long 1461867065
+ .long 1065707733
+ .long 879427925
+ .long 1064617384
+ .long 209598570
+ .long 1063149928
+ .long 59348277
+ .long 1061529630
+ .long 3294480606
+ .long 3219572427
+ .long 1489607747
+ .long 1002886683
+ .long 0
+ .long 1072693248
+ .long 1167858038
+ .long 1070559824
+ .long 2180017056
+ .long 1010873776
+ .long 0
+ .long 1070596096
+ .long 772792549
+ .long 1069464130
+ .long 3356872770
+ .long 1068279894
+ .long 3524844777
+ .long 1067579707
+ .long 1521756467
+ .long 1065750067
+ .long 3931969752
+ .long 1064654734
+ .long 2908114566
+ .long 1063226363
+ .long 3520733649
+ .long 1061374592
+ .long 2981026194
+ .long 3219598163
+ .long 924239062
+ .long 3163047211
+ .long 0
+ .long 1072693248
+ .long 3747221382
+ .long 1070597041
+ .long 1912303979
+ .long 1014066411
+ .long 0
+ .long 1070596096
+ .long 1727686788
+ .long 1069487445
+ .long 681802874
+ .long 1068323590
+ .long 2531789465
+ .long 1067597711
+ .long 331202638
+ .long 1065793569
+ .long 2627596742
+ .long 1064693515
+ .long 566979200
+ .long 1063280948
+ .long 2423252998
+ .long 1061741710
+ .long 2667571783
+ .long 3219623899
+ .long 1614402419
+ .long 1014950008
+ .long 0
+ .long 1072693248
+ .long 4148643959
+ .long 1070616195
+ .long 2887822437
+ .long 1014214935
+ .long 0
+ .long 1070596096
+ .long 4101770849
+ .long 1069511300
+ .long 1167052501
+ .long 1068367958
+ .long 2569727718
+ .long 1067616256
+ .long 1681502493
+ .long 1065838283
+ .long 3685967929
+ .long 1064733780
+ .long 2973319878
+ .long 1063322263
+ .long 474740638
+ .long 1062549181
+ .long 2354117371
+ .long 3219649635
+ .long 3512651629
+ .long 3161564344
+ .long 0
+ .long 1072693248
+ .long 373017919
+ .long 1070635424
+ .long 3647199022
+ .long 1014660881
+ .long 0
+ .long 1070596096
+ .long 933359764
+ .long 1069535705
+ .long 1391441088
+ .long 1068413019
+ .long 53106651
+ .long 1067635358
+ .long 4157835043
+ .long 1065884256
+ .long 4055868043
+ .long 1064775611
+ .long 1529330433
+ .long 1063365236
+ .long 326078913
+ .long 1062325273
+ .long 2040662960
+ .long 3219675371
+ .long 4270081753
+ .long 1015998218
+ .long 0
+ .long 1072693248
+ .long 4002124759
+ .long 1070654727
+ .long 3453343154
+ .long 1013423881
+ .long 0
+ .long 1071644672
+ .long 774562305
+ .long 3217018021
+ .long 377617675
+ .long 1068458794
+ .long 2495478050
+ .long 1067655031
+ .long 1508050213
+ .long 1065931538
+ .long 1921336565
+ .long 1064819067
+ .long 975923615
+ .long 1063409946
+ .long 2275792800
+ .long 1060505011
+ .long 1727208548
+ .long 3219701107
+ .long 2531251621
+ .long 1013613001
+ .long 0
+ .long 1072693248
+ .long 963359913
+ .long 1070674109
+ .long 2464811476
+ .long 3160767877
+ .long 0
+ .long 1071644672
+ .long 1498613974
+ .long 3216992493
+ .long 4138103782
+ .long 1068502123
+ .long 2840947366
+ .long 1067675293
+ .long 209537977
+ .long 1065980178
+ .long 3590357525
+ .long 1064864171
+ .long 73959555
+ .long 1063456484
+ .long 1512178095
+ .long 1062390487
+ .long 1413754136
+ .long 3219726843
+ .long 856972295
+ .long 3162613286
+ .long 0
+ .long 0
+ .long 0
+ .long 3220176896
+ .long 1994327296
+ .long 1006932657
+ .long 0
+ .long 1073741824
+ .long 0
+ .long 0
+ .long 266
+ .long 3221225472
+ .long 1431655956
+ .long 1074091349
+ .long 2828070733
+ .long 3221924522
+ .long 268536947
+ .long 1074860305
+ .long 4220652043
+ .long 3222647048
+ .long 3597047153
+ .long 1075552901
+ .long 1100299725
+ .long 3219752579
+ .long 874467977
+ .long 1015419713
+ .long 0
+ .long 0
+ .long 2668510354
+ .long 3220126045
+ .long 1701998120
+ .long 1012206572
+ .long 0
+ .long 1073741824
+ .long 1404962112
+ .long 3215492924
+ .long 3327263454
+ .long 3221125605
+ .long 1987673213
+ .long 1074008829
+ .long 231222583
+ .long 3221793459
+ .long 1756671652
+ .long 1074731884
+ .long 3921518330
+ .long 3222500748
+ .long 2691193109
+ .long 1075341426
+ .long 786845313
+ .long 3219778315
+ .long 627570489
+ .long 3159464635
+ .long 0
+ .long 0
+ .long 2949191430
+ .long 3220076398
+ .long 3989126963
+ .long 3163096676
+ .long 0
+ .long 1073741824
+ .long 2909112164
+ .long 3216503445
+ .long 3682557528
+ .long 3221031585
+ .long 4184421718
+ .long 1073932454
+ .long 380803270
+ .long 3221673930
+ .long 3399744364
+ .long 1074553823
+ .long 3842864962
+ .long 3222371390
+ .long 748075446
+ .long 1075157395
+ .long 473390901
+ .long 3219804051
+ .long 4252586071
+ .long 3163191791
+ .long 0
+ .long 0
+ .long 2308259791
+ .long 3220027898
+ .long 4111771200
+ .long 3156765800
+ .long 0
+ .long 1073741824
+ .long 411343470
+ .long 3217132228
+ .long 3760686807
+ .long 3220942979
+ .long 4171367426
+ .long 1073861688
+ .long 1878500541
+ .long 3221564765
+ .long 108767834
+ .long 1074393698
+ .long 2824899565
+ .long 3222239549
+ .long 3321236009
+ .long 1074997439
+ .long 159936490
+ .long 3219829787
+ .long 3547642993
+ .long 1014660846
+ .long 0
+ .long 0
+ .long 3342355758
+ .long 3219980491
+ .long 1666924640
+ .long 3162031356
+ .long 0
+ .long 1073741824
+ .long 2271288998
+ .long 3217480250
+ .long 4111284847
+ .long 3220859392
+ .long 2796272966
+ .long 1073796048
+ .long 1730314448
+ .long 3221464928
+ .long 1813001552
+ .long 1074249474
+ .long 603251437
+ .long 3222036157
+ .long 3079042443
+ .long 1074856525
+ .long 4141449374
+ .long 3219855522
+ .long 1579411055
+ .long 3161853506
+ .long 0
+ .long 0
+ .long 166164867
+ .long 3219934128
+ .long 2304492376
+ .long 1012090550
+ .long 0
+ .long 1073741824
+ .long 2798667120
+ .long 3217812323
+ .long 4203596829
+ .long 3220780463
+ .long 1473339147
+ .long 1073728374
+ .long 4243021652
+ .long 3221373498
+ .long 1638747017
+ .long 1074119375
+ .long 1512673116
+ .long 3221855335
+ .long 2338684822
+ .long 1074678259
+ .long 3827994963
+ .long 3219881258
+ .long 941734744
+ .long 1015853638
+ .long 0
+ .long 0
+ .long 3247184626
+ .long 3219888759
+ .long 1245319390
+ .long 3161909785
+ .long 0
+ .long 1073741824
+ .long 2381906911
+ .long 3218104536
+ .long 1010924947
+ .long 3220705862
+ .long 2481381005
+ .long 1073615072
+ .long 1356661294
+ .long 3221289659
+ .long 1527070583
+ .long 1074001844
+ .long 3061693405
+ .long 3221694303
+ .long 1993154673
+ .long 1074463435
+ .long 3514540551
+ .long 3219906994
+ .long 2102765473
+ .long 1013034678
+ .long 0
+ .long 0
+ .long 4189730214
+ .long 3219844341
+ .long 872357632
+ .long 3158652168
+ .long 0
+ .long 1073741824
+ .long 760634709
+ .long 3218255915
+ .long 2067827628
+ .long 3220635284
+ .long 1386756408
+ .long 1073509659
+ .long 404552634
+ .long 3221199890
+ .long 1143062644
+ .long 1073895515
+ .long 555342338
+ .long 3221550657
+ .long 3470199450
+ .long 1074271418
+ .long 3201086139
+ .long 3219932730
+ .long 4185319304
+ .long 3162757866
+ .long 0
+ .long 0
+ .long 719595600
+ .long 3219800832
+ .long 114970824
+ .long 1014660100
+ .long 0
+ .long 1073741824
+ .long 3811788216
+ .long 3218400550
+ .long 1264738948
+ .long 3220568452
+ .long 1958933439
+ .long 1073411493
+ .long 4246310163
+ .long 3221058356
+ .long 1367842247
+ .long 1073799186
+ .long 4112596176
+ .long 3221422310
+ .long 2100954469
+ .long 1074105254
+ .long 2887631728
+ .long 3219958466
+ .long 1841088264
+ .long 1015275132
+ .long 0
+ .long 0
+ .long 258163604
+ .long 3219758190
+ .long 3299889334
+ .long 3162612005
+ .long 0
+ .long 1073741824
+ .long 2865277319
+ .long 3218538798
+ .long 3110066496
+ .long 3220505109
+ .long 723074889
+ .long 1073319994
+ .long 1618819009
+ .long 3220928086
+ .long 1176243935
+ .long 1073681775
+ .long 1223849000
+ .long 3221307454
+ .long 2369288310
+ .long 1073957581
+ .long 2574177316
+ .long 3219984202
+ .long 2889755040
+ .long 3160514672
+ .long 0
+ .long 0
+ .long 2079874795
+ .long 3219716377
+ .long 1885564844
+ .long 1014470429
+ .long 0
+ .long 1073741824
+ .long 1656469901
+ .long 3218670989
+ .long 823761676
+ .long 3220445021
+ .long 2491445454
+ .long 1073234634
+ .long 1584341555
+ .long 3220808039
+ .long 1976688438
+ .long 1073523018
+ .long 3918313362
+ .long 3221183550
+ .long 3178717701
+ .long 1073829019
+ .long 2260722904
+ .long 3220009938
+ .long 3285965784
+ .long 3163336372
+ .long 0
+ .long 0
+ .long 997287281
+ .long 3219675358
+ .long 3612251184
+ .long 3163317056
+ .long 0
+ .long 1073741824
+ .long 3037674984
+ .long 3218797431
+ .long 2624215131
+ .long 3220387969
+ .long 464779768
+ .long 1073154936
+ .long 3700763630
+ .long 3220697284
+ .long 1200926910
+ .long 1073378628
+ .long 2934576448
+ .long 3220998744
+ .long 3287041894
+ .long 1073681673
+ .long 1947268493
+ .long 3220035674
+ .long 1185916272
+ .long 1014371685
+ .long 0
+ .long 0
+ .long 3978924239
+ .long 3219635097
+ .long 680771999
+ .long 1015720881
+ .long 0
+ .long 1073741824
+ .long 3528982175
+ .long 3218918413
+ .long 3018376188
+ .long 3220333754
+ .long 2093086652
+ .long 1073080463
+ .long 451029217
+ .long 3220594987
+ .long 1097121537
+ .long 1073247142
+ .long 2277789243
+ .long 3220832617
+ .long 149138386
+ .long 1073478822
+ .long 1633814081
+ .long 3220061410
+ .long 3941137777
+ .long 3162142667
+ .long 0
+ .long 0
+ .long 3860971117
+ .long 3219595563
+ .long 2891614774
+ .long 3163214156
+ .long 0
+ .long 1073741824
+ .long 80822128
+ .long 3219034205
+ .long 2077635078
+ .long 3220282191
+ .long 1552870456
+ .long 1073010820
+ .long 3607700650
+ .long 3220500394
+ .long 249538439
+ .long 1073127265
+ .long 2233833083
+ .long 3220683068
+ .long 2436456793
+ .long 1073293556
+ .long 1320359670
+ .long 3220087146
+ .long 1908355032
+ .long 1015709057
+ .long 0
+ .long 0
+ .long 343219638
+ .long 3219556725
+ .long 2238262736
+ .long 3161731808
+ .long 0
+ .long 1072693248
+ .long 3768132253
+ .long 1071627934
+ .long 3895546569
+ .long 3220233108
+ .long 1613056473
+ .long 1072945645
+ .long 3409294908
+ .long 3220412831
+ .long 3138966349
+ .long 1073017844
+ .long 3799067288
+ .long 3220548255
+ .long 359470498
+ .long 1073133087
+ .long 1006905258
+ .long 3220112882
+ .long 3348558652
+ .long 1011988294
+ .long 0
+ .long 0
+ .long 3841229102
+ .long 3219518551
+ .long 1782820117
+ .long 3163516640
+ .long 0
+ .long 1072693248
+ .long 866896685
+ .long 1071521786
+ .long 2743435231
+ .long 3220186348
+ .long 3017984361
+ .long 1072884608
+ .long 1491919678
+ .long 3220331688
+ .long 1507535811
+ .long 1072917857
+ .long 1966124974
+ .long 3220426562
+ .long 381628641
+ .long 1072992589
+ .long 693450846
+ .long 3220138618
+ .long 3218699017
+ .long 3162902447
+ .long 0
+ .long 0
+ .long 716700048
+ .long 3219481016
+ .long 1043841701
+ .long 3163006458
+ .long 0
+ .long 1072693248
+ .long 1097907398
+ .long 1071420120
+ .long 3912524876
+ .long 3220106631
+ .long 4107784306
+ .long 1072827408
+ .long 937056065
+ .long 3220256414
+ .long 4128945134
+ .long 1072826390
+ .long 1032262394
+ .long 3220316565
+ .long 1825923585
+ .long 1072864423
+ .long 379996435
+ .long 3220164354
+ .long 2807708551
+ .long 1015130551
+ .long 0
+ .long 0
+ .long 142288477
+ .long 3219444091
+ .long 1256348500
+ .long 1014532780
+ .long 0
+ .long 1072693248
+ .long 925074332
+ .long 1071322730
+ .long 2134728327
+ .long 3220021541
+ .long 1886408555
+ .long 1072773770
+ .long 101893267
+ .long 3220186512
+ .long 2020085224
+ .long 1072742631
+ .long 2955803861
+ .long 3220217010
+ .long 343310816
+ .long 1072748161
+ .long 33271012
+ .long 3220183493
+ .long 2269574412
+ .long 1016902031
+ .long 0
+ .long 0
+ .long 3684492763
+ .long 3219407750
+ .long 2905890526
+ .long 1015709561
+ .long 0
+ .long 1072693248
+ .long 585640690
+ .long 1071229422
+ .long 1068301595
+ .long 3219940277
+ .long 2953900489
+ .long 1072723440
+ .long 950237889
+ .long 3220066167
+ .long 109735425
+ .long 1072638455
+ .long 792610979
+ .long 3220076689
+ .long 2904190292
+ .long 1072594405
+ .long 4171511102
+ .long 3220196360
+ .long 987810900
+ .long 1016106563
+ .long 0
+ .long 0
+ .long 681498355
+ .long 3219371971
+ .long 3542625299
+ .long 1015827699
+ .long 0
+ .long 1072693248
+ .long 168222332
+ .long 1071140014
+ .long 776736583
+ .long 3219862604
+ .long 2405401100
+ .long 1072659128
+ .long 430546584
+ .long 3219945234
+ .long 2974083786
+ .long 1072497552
+ .long 849442068
+ .long 3219912970
+ .long 2727451532
+ .long 1072409680
+ .long 4014783896
+ .long 3220209228
+ .long 3119156846
+ .long 1014082523
+ .long 0
+ .long 0
+ .long 2298773501
+ .long 3219336728
+ .long 4027807132
+ .long 1015090440
+ .long 0
+ .long 1072693248
+ .long 312748411
+ .long 1071054335
+ .long 2723913091
+ .long 3219788303
+ .long 3207063211
+ .long 1072570353
+ .long 1845780128
+ .long 3219832588
+ .long 752659336
+ .long 1072368142
+ .long 1097207453
+ .long 3219764237
+ .long 407427403
+ .long 1072246732
+ .long 3858056690
+ .long 3220222096
+ .long 2007897202
+ .long 3162431829
+ .long 0
+ .long 0
+ .long 2591355529
+ .long 3219302000
+ .long 2351326818
+ .long 3161908153
+ .long 0
+ .long 1072693248
+ .long 3206845590
+ .long 1070972224
+ .long 4023349050
+ .long 3219717171
+ .long 3838822434
+ .long 1072486918
+ .long 3122427157
+ .long 3219727557
+ .long 2261703627
+ .long 1072249178
+ .long 1764870100
+ .long 3219628955
+ .long 3201802997
+ .long 1072093301
+ .long 3701329484
+ .long 3220234964
+ .long 2857479637
+ .long 3163806625
+ .long 0
+ .long 0
+ .long 4010047525
+ .long 3219267765
+ .long 3339891512
+ .long 3160072694
+ .long 0
+ .long 1072693248
+ .long 966450668
+ .long 1070893532
+ .long 803989702
+ .long 3219649019
+ .long 1934453966
+ .long 1072408465
+ .long 1455077850
+ .long 3219629530
+ .long 2709264343
+ .long 1072139721
+ .long 1918064558
+ .long 3219505762
+ .long 1476733535
+ .long 1071960574
+ .long 3544602278
+ .long 3220247832
+ .long 4139243149
+ .long 3164602093
+ .long 0
+ .long 0
+ .long 4270735453
+ .long 3219234003
+ .long 3565361953
+ .long 1015342529
+ .long 0
+ .long 1072693248
+ .long 2915760230
+ .long 1070818115
+ .long 638580392
+ .long 3219583668
+ .long 2252948193
+ .long 1072334663
+ .long 1194731830
+ .long 3219537949
+ .long 1353002942
+ .long 1072038927
+ .long 422364789
+ .long 3219393446
+ .long 3669634446
+ .long 1071842023
+ .long 3387875073
+ .long 3220260700
+ .long 3168927931
+ .long 1016323525
+ .long 0
+ .long 0
+ .long 419968236
+ .long 3219200695
+ .long 131828542
+ .long 1015961466
+ .long 0
+ .long 1072693248
+ .long 2960267235
+ .long 1070745841
+ .long 1037049094
+ .long 3219520953
+ .long 1447436626
+ .long 1072265209
+ .long 3197232138
+ .long 3219452306
+ .long 4004685084
+ .long 1071946034
+ .long 1412816421
+ .long 3219290928
+ .long 3184738590
+ .long 1071740610
+ .long 3231147867
+ .long 3220273568
+ .long 3253690381
+ .long 1014950373
+ .long 0
+ .long 0
+ .long 1505561933
+ .long 3219167820
+ .long 2813885200
+ .long 1011162516
+ .long 0
+ .long 1072693248
+ .long 2997217365
+ .long 1070676584
+ .long 2681788575
+ .long 3219460719
+ .long 3989126937
+ .long 1072199822
+ .long 1049115510
+ .long 3219372139
+ .long 511642058
+ .long 1071860360
+ .long 4034728051
+ .long 3219197246
+ .long 1788863965
+ .long 1071639550
+ .long 3074420661
+ .long 3220286436
+ .long 1873363667
+ .long 3161563979
+ .long 0
+ .long 0
+ .long 2606398711
+ .long 3219135361
+ .long 2533072598
+ .long 3162554073
+ .long 0
+ .long 1072693248
+ .long 2151361100
+ .long 1070610226
+ .long 1532348096
+ .long 3219402822
+ .long 408604530
+ .long 1072138246
+ .long 1039538740
+ .long 3219297023
+ .long 1234598850
+ .long 1071781284
+ .long 692507578
+ .long 3219094767
+ .long 4090315877
+ .long 1071451983
+ .long 2917693455
+ .long 3220299304
+ .long 676362605
+ .long 3163589663
+ .long 0
+ .long 0
+ .long 3649427950
+ .long 3219078282
+ .long 4113825640
+ .long 3158662193
+ .long 0
+ .long 1072693248
+ .long 2424145432
+ .long 1070497215
+ .long 2715404890
+ .long 3219347125
+ .long 2238283673
+ .long 1072080240
+ .long 1186867211
+ .long 3219226571
+ .long 660318792
+ .long 1071708248
+ .long 2091427915
+ .long 3218937780
+ .long 2591062635
+ .long 1071291190
+ .long 2760966249
+ .long 3220312172
+ .long 1958126117
+ .long 3164385131
+ .long 0
+ .long 0
+ .long 220675706
+ .long 3219014926
+ .long 3158451653
+ .long 3161723787
+ .long 0
+ .long 1072693248
+ .long 1565030890
+ .long 1070375439
+ .long 335263687
+ .long 3219293502
+ .long 419816567
+ .long 1072025586
+ .long 2098048102
+ .long 3219160428
+ .long 257229335
+ .long 1071636821
+ .long 3464457189
+ .long 3218793840
+ .long 2745923191
+ .long 1071158056
+ .long 2604239044
+ .long 3220325040
+ .long 1055077667
+ .long 1016540488
+ .long 0
+ .long 0
+ .long 2191706112
+ .long 3218952300
+ .long 333441366
+ .long 3161331348
+ .long 0
+ .long 1072693248
+ .long 3435408456
+ .long 1070258830
+ .long 487319719
+ .long 3219241832
+ .long 1713711059
+ .long 1071974079
+ .long 130753286
+ .long 3219068219
+ .long 909725130
+ .long 1071511974
+ .long 2762442367
+ .long 3218661715
+ .long 932670499
+ .long 1071027067
+ .long 2447511838
+ .long 3220337908
+ .long 3841595606
+ .long 1015419895
+ .long 0
+ .long 0
+ .long 408840118
+ .long 3218890375
+ .long 4048072104
+ .long 3159354273
+ .long 0
+ .long 1072693248
+ .long 2794370512
+ .long 1070147203
+ .long 1550993351
+ .long 3219192003
+ .long 1305093678
+ .long 1071925532
+ .long 1748211158
+ .long 3218951271
+ .long 3244212114
+ .long 1071396455
+ .long 2145666003
+ .long 3218540299
+ .long 1098451822
+ .long 1070891096
+ .long 2290784632
+ .long 3220350776
+ .long 2660353234
+ .long 3159463173
+ .long 0
+ .long 0
+ .long 3368427099
+ .long 3218829119
+ .long 2187864186
+ .long 1013587140
+ .long 0
+ .long 1072693248
+ .long 1708021028
+ .long 1070040382
+ .long 459972195
+ .long 3219143910
+ .long 3210514347
+ .long 1071879770
+ .long 955408873
+ .long 3218841145
+ .long 1911386085
+ .long 1071289511
+ .long 3563284038
+ .long 3218428599
+ .long 547420745
+ .long 1070790031
+ .long 2134057426
+ .long 3220363644
+ .long 1285458442
+ .long 3163191609
+ .long 0
+ .long 0
+ .long 2583490354
+ .long 3218768505
+ .long 27148750
+ .long 3161491985
+ .long 0
+ .long 1072693248
+ .long 2550940470
+ .long 1069938201
+ .long 2616040293
+ .long 3219066585
+ .long 2529278955
+ .long 1071836633
+ .long 2244405849
+ .long 3218737335
+ .long 2064814127
+ .long 1071190460
+ .long 1527853251
+ .long 3218325722
+ .long 354247476
+ .long 1070708112
+ .long 1977330220
+ .long 3220376512
+ .long 4071976381
+ .long 3164168168
+ .long 0
+ .long 0
+ .long 2390846448
+ .long 3218708504
+ .long 3510503948
+ .long 3161709355
+ .long 0
+ .long 1072693248
+ .long 1208409702
+ .long 1069840505
+ .long 1006199412
+ .long 3218976755
+ .long 2504246873
+ .long 1071795971
+ .long 1040653613
+ .long 3218639377
+ .long 1713268217
+ .long 1071098686
+ .long 462276301
+ .long 3218230862
+ .long 4239163357
+ .long 1070603989
+ .long 1820603015
+ .long 3220389380
+ .long 3236194699
+ .long 1016757450
+ .long 0
+ .long 0
+ .long 2528366626
+ .long 3218649089
+ .long 3808712102
+ .long 1013396510
+ .long 0
+ .long 1072693248
+ .long 1938261590
+ .long 1069747146
+ .long 4282399603
+ .long 3218889831
+ .long 1922568281
+ .long 1071757646
+ .long 2428166646
+ .long 3218546841
+ .long 717464824
+ .long 1071013623
+ .long 2205664075
+ .long 3218143293
+ .long 1526076492
+ .long 1070438229
+ .long 1663875809
+ .long 3220402248
+ .long 3908862373
+ .long 1015853820
+ .long 0
+ .long 0
+ .long 2200768388
+ .long 3218590234
+ .long 302584884
+ .long 1014949287
+ .long 0
+ .long 1072693248
+ .long 2338248308
+ .long 1069657986
+ .long 2617403810
+ .long 3218805648
+ .long 60078074
+ .long 1071721530
+ .long 2753634668
+ .long 3218459332
+ .long 626020946
+ .long 1070934758
+ .long 25846122
+ .long 3218044977
+ .long 1123428672
+ .long 1070307499
+ .long 1507148603
+ .long 3220415116
+ .long 1086374101
+ .long 1013035409
+ .long 0
+ .long 0
+ .long 4158096969
+ .long 3218531913
+ .long 3224512900
+ .long 3160902954
+ .long 0
+ .long 1072693248
+ .long 4240313622
+ .long 1069572894
+ .long 3745046477
+ .long 3218724046
+ .long 1955120038
+ .long 1071687503
+ .long 2661530988
+ .long 3218376484
+ .long 2615081511
+ .long 1070861626
+ .long 3172686029
+ .long 3217895196
+ .long 3468537113
+ .long 1070173373
+ .long 1350421397
+ .long 3220427984
+ .long 1218191675
+ .long 3162757684
+ .long 0
+ .long 0
+ .long 1606100959
+ .long 3218474103
+ .long 3385789004
+ .long 3161114183
+ .long 0
+ .long 1072693248
+ .long 2255302008
+ .long 1069435977
+ .long 54085333
+ .long 3218644877
+ .long 2504974906
+ .long 1071655456
+ .long 4169947836
+ .long 3218297958
+ .long 2891827398
+ .long 1070793803
+ .long 1030744944
+ .long 3217756428
+ .long 2378245768
+ .long 1070036506
+ .long 1193694191
+ .long 3220440852
+ .long 1890859349
+ .long 3163951206
+ .long 0
+ .long 0
+ .long 3782220567
+ .long 3218416778
+ .long 2488119274
+ .long 3162237132
+ .long 0
+ .long 1072693248
+ .long 91372748
+ .long 1069281344
+ .long 318776714
+ .long 3218567997
+ .long 1791786485
+ .long 1071605902
+ .long 245863368
+ .long 3218223442
+ .long 3306699316
+ .long 1070730899
+ .long 492155895
+ .long 3217627699
+ .long 504590813
+ .long 1069961586
+ .long 1036966986
+ .long 3220453720
+ .long 1122344434
+ .long 1016974413
+ .long 0
+ .long 0
+ .long 1412148370
+ .long 3218359917
+ .long 2689483850
+ .long 1013993587
+ .long 0
+ .long 1072693248
+ .long 1375255072
+ .long 1069134151
+ .long 1493266594
+ .long 3218493272
+ .long 487968719
+ .long 1071549129
+ .long 4010395236
+ .long 3218152642
+ .long 2875570533
+ .long 1070672565
+ .long 2596803943
+ .long 3217508124
+ .long 2843491945
+ .long 1069843051
+ .long 880239780
+ .long 3220466588
+ .long 4135548218
+ .long 1016178944
+ .long 0
+ .long 0
+ .long 895247324
+ .long 3218303496
+ .long 3064008070
+ .long 1013805381
+ .long 0
+ .long 1072693248
+ .long 729983844
+ .long 1068994194
+ .long 3631919317
+ .long 3218420574
+ .long 2031343772
+ .long 1071495745
+ .long 1505593195
+ .long 3218085291
+ .long 519428997
+ .long 1070618477
+ .long 3710689661
+ .long 3217396902
+ .long 3156076115
+ .long 1069741343
+ .long 723512574
+ .long 3220479456
+ .long 2825204233
+ .long 1014372050
+ .long 0
+ .long 0
+ .long 2664093517
+ .long 3218247493
+ .long 3574482624
+ .long 3157273734
+ .long 0
+ .long 1072693248
+ .long 2465054196
+ .long 1068861279
+ .long 3495559184
+ .long 3218349782
+ .long 2180799467
+ .long 1071445588
+ .long 3760731789
+ .long 3217962527
+ .long 3108073739
+ .long 1070540584
+ .long 1955989624
+ .long 3217293302
+ .long 166797605
+ .long 1069654305
+ .long 566785368
+ .long 3220492324
+ .long 2301849815
+ .long 3162142302
+ .long 0
+ .long 0
+ .long 1026922473
+ .long 3218191888
+ .long 4275547180
+ .long 3161242805
+ .long 0
+ .long 1072693248
+ .long 865263972
+ .long 1068735226
+ .long 1189261043
+ .long 3218280780
+ .long 602895285
+ .long 1071398507
+ .long 457371263
+ .long 3217840141
+ .long 1846858242
+ .long 1070447677
+ .long 3060498116
+ .long 3217196657
+ .long 4267893365
+ .long 1069596604
+ .long 410058162
+ .long 3220505192
+ .long 4004709614
+ .long 3163734243
+ .long 0
+ .long 0
+ .long 1197423420
+ .long 3218136659
+ .long 176395860
+ .long 3160912588
+ .long 0
+ .long 1072693248
+ .long 3614211808
+ .long 1068615863
+ .long 2638984897
+ .long 3218213456
+ .long 1695604536
+ .long 1071354361
+ .long 2372043566
+ .long 3217723241
+ .long 136909605
+ .long 1070361652
+ .long 3640039447
+ .long 3217106358
+ .long 4088615056
+ .long 1069449448
+ .long 253330956
+ .long 3220518060
+ .long 991505830
+ .long 3164529712
+ .long 0
+ .long 0
+ .long 1971725998
+ .long 3218081786
+ .long 2628057466
+ .long 3160778219
+ .long 0
+ .long 1072693248
+ .long 3850616508
+ .long 1068503032
+ .long 715485429
+ .long 3218147706
+ .long 2831870887
+ .long 1071313021
+ .long 276112813
+ .long 3217611421
+ .long 4071473627
+ .long 1070282053
+ .long 3678820506
+ .long 3217012537
+ .long 927889203
+ .long 1069392578
+ .long 96603751
+ .long 3220530928
+ .long 2021697954
+ .long 1016395907
+ .long 0
+ .long 0
+ .long 4068253482
+ .long 3217974755
+ .long 3098800802
+ .long 3161416360
+ .long 0
+ .long 1072693248
+ .long 3555466384
+ .long 1068294223
+ .long 3714292293
+ .long 3218083427
+ .long 58004546
+ .long 1071274368
+ .long 2889916307
+ .long 3217504297
+ .long 2725223785
+ .long 1070208483
+ .long 1960889150
+ .long 3216854085
+ .long 2172838405
+ .long 1069259864
+ .long 4234843841
+ .long 3220543795
+ .long 1479868884
+ .long 1015130734
+ .long 0
+ .long 0
+ .long 3947580658
+ .long 3217866316
+ .long 4153464200
+ .long 3160712468
+ .long 0
+ .long 1072693248
+ .long 1306970432
+ .long 1068093810
+ .long 3320658510
+ .long 3217961305
+ .long 2638377394
+ .long 1071238289
+ .long 1218095092
+ .long 3217401513
+ .long 506153465
+ .long 1070140566
+ .long 2096772766
+ .long 3216705262
+ .long 2058303373
+ .long 1069148484
+ .long 4078116635
+ .long 3220556663
+ .long 39665264
+ .long 3161092265
+ .long 0
+ .long 0
+ .long 4023957346
+ .long 3217758473
+ .long 2652051644
+ .long 3159900932
+ .long 0
+ .long 1072693248
+ .long 1548193280
+ .long 1067905620
+ .long 2849460080
+ .long 3217838064
+ .long 586099284
+ .long 1071204684
+ .long 2426038050
+ .long 3217302731
+ .long 1209882939
+ .long 1070077962
+ .long 204929670
+ .long 3216565209
+ .long 2951398611
+ .long 1069077118
+ .long 3921389429
+ .long 3220569531
+ .long 3647185164
+ .long 3163480770
+ .long 0
+ .long 0
+ .long 3763679576
+ .long 3217651189
+ .long 448385104
+ .long 3157192355
+ .long 0
+ .long 1072693248
+ .long 64931152
+ .long 1067729411
+ .long 3593250320
+ .long 3217717209
+ .long 1127364104
+ .long 1071173457
+ .long 21320967
+ .long 3217207636
+ .long 4036384111
+ .long 1070020367
+ .long 3394693850
+ .long 3216433130
+ .long 4171153724
+ .long 1068939101
+ .long 3764662223
+ .long 3220582399
+ .long 3105356094
+ .long 3164312749
+ .long 0
+ .long 0
+ .long 1425758568
+ .long 3217544428
+ .long 1224254624
+ .long 3159340630
+ .long 0
+ .long 1072693248
+ .long 2086713664
+ .long 1067564956
+ .long 1688303979
+ .long 3217598569
+ .long 938619730
+ .long 1071144522
+ .long 526120622
+ .long 3217115928
+ .long 3819295674
+ .long 1069967496
+ .long 2059466203
+ .long 3216308301
+ .long 4034680199
+ .long 1068903334
+ .long 3607935018
+ .long 3220595267
+ .long 4202814986
+ .long 1016612869
+ .long 0
+ .long 0
+ .long 2429422902
+ .long 3217438153
+ .long 3297520416
+ .long 1012522944
+ .long 0
+ .long 1072693248
+ .long 528565440
+ .long 1067373727
+ .long 2395999282
+ .long 3217481977
+ .long 1512953454
+ .long 1071117799
+ .long 2702142222
+ .long 3217023483
+ .long 3515899579
+ .long 1069919100
+ .long 2767905791
+ .long 3216190039
+ .long 3127036520
+ .long 1068808800
+ .long 3451207812
+ .long 3220608135
+ .long 1547135652
+ .long 1015564659
+ .long 0
+ .long 0
+ .long 1959743063
+ .long 3217332330
+ .long 607720656
+ .long 3161041674
+ .long 0
+ .long 1072693248
+ .long 225834432
+ .long 1067090614
+ .long 732340398
+ .long 3217367274
+ .long 3221152670
+ .long 1071093215
+ .long 2810588359
+ .long 3216851955
+ .long 612200454
+ .long 1069874948
+ .long 645427044
+ .long 3216077719
+ .long 1966523063
+ .long 1068694214
+ .long 3294480606
+ .long 3220621003
+ .long 1489607747
+ .long 1003935259
+ .long 0
+ .long 0
+ .long 1940260416
+ .long 3217226924
+ .long 4144841612
+ .long 3159543701
+ .long 0
+ .long 1072693248
+ .long 1135818128
+ .long 1066829850
+ .long 867512158
+ .long 3217254304
+ .long 3821819258
+ .long 1071070704
+ .long 2890864845
+ .long 3216685596
+ .long 918459421
+ .long 1069834828
+ .long 797471869
+ .long 3215958923
+ .long 4093823457
+ .long 1068635569
+ .long 3137753400
+ .long 3220633871
+ .long 3579918397
+ .long 3163046845
+ .long 0
+ .long 0
+ .long 2242453104
+ .long 3217121901
+ .long 1143544320
+ .long 1011877960
+ .long 0
+ .long 1072693248
+ .long 1016752608
+ .long 1066591110
+ .long 1270001991
+ .long 3217142917
+ .long 1410785275
+ .long 1071050206
+ .long 1103929722
+ .long 3216523923
+ .long 3268015214
+ .long 1069798554
+ .long 957665123
+ .long 3215754628
+ .long 1067716675
+ .long 1068610012
+ .long 2981026194
+ .long 3220646739
+ .long 924239062
+ .long 3164095787
+ .long 0
+ .long 0
+ .long 982366697
+ .long 3217003288
+ .long 1160619554
+ .long 1010902188
+ .long 0
+ .long 1072693248
+ .long 404678272
+ .long 1066346403
+ .long 1419607756
+ .long 3217032967
+ .long 1800406832
+ .long 1071031665
+ .long 3144361055
+ .long 3216366473
+ .long 1744148039
+ .long 1069765960
+ .long 3211598528
+ .long 3215558937
+ .long 405031618
+ .long 1068609434
+ .long 2824298989
+ .long 3220659607
+ .long 2088964722
+ .long 1016829832
+ .long 0
+ .long 0
+ .long 931121154
+ .long 3216794574
+ .long 1121583044
+ .long 1012154237
+ .long 0
+ .long 1072693248
+ .long 709357472
+ .long 1065955296
+ .long 29972165
+ .long 3216817456
+ .long 254360647
+ .long 1071015033
+ .long 3732687627
+ .long 3216212805
+ .long 3224370681
+ .long 1069736900
+ .long 202592280
+ .long 3215370879
+ .long 1420621447
+ .long 1068491719
+ .long 2667571783
+ .long 3220672475
+ .long 1614402419
+ .long 1015998584
+ .long 0
+ .long 0
+ .long 2354785698
+ .long 3216586427
+ .long 959264268
+ .long 3159915811
+ .long 0
+ .long 1072693248
+ .long 2828230112
+ .long 1065606626
+ .long 3693284264
+ .long 3216602456
+ .long 1996210616
+ .long 1071000265
+ .long 3053541878
+ .long 3216062494
+ .long 1133334567
+ .long 1069711236
+ .long 977677585
+ .long 3215189563
+ .long 347473669
+ .long 1068436198
+ .long 2510844577
+ .long 3220685343
+ .long 498468876
+ .long 1013614463
+ .long 0
+ .long 0
+ .long 1972895212
+ .long 3216378783
+ .long 3207896256
+ .long 3158122047
+ .long 0
+ .long 1072693248
+ .long 4107853760
+ .long 1065246718
+ .long 2229347510
+ .long 3216389497
+ .long 4172638464
+ .long 1070987323
+ .long 212469442
+ .long 3215847669
+ .long 1989165661
+ .long 1069688852
+ .long 4131454738
+ .long 3215014128
+ .long 3452987325
+ .long 1068469531
+ .long 2354117371
+ .long 3220698211
+ .long 3512651629
+ .long 3162612920
+ .long 0
+ .long 0
+ .long 3439278129
+ .long 3216171577
+ .long 1073008748
+ .long 3159914989
+ .long 0
+ .long 1072693248
+ .long 2934847296
+ .long 1064716672
+ .long 2625704508
+ .long 3216178311
+ .long 3692939630
+ .long 1070976174
+ .long 3072165553
+ .long 3215558041
+ .long 223733198
+ .long 1069669653
+ .long 1158528288
+ .long 3214753465
+ .long 3197803998
+ .long 1068357327
+ .long 2197390165
+ .long 3220711079
+ .long 3038089327
+ .long 3163878824
+ .long 0
+ .long 0
+ .long 3930011523
+ .long 3215946901
+ .long 3574565577
+ .long 1010859792
+ .long 0
+ .long 1072693248
+ .long 930814464
+ .long 1064233867
+ .long 3218126771
+ .long 3215954682
+ .long 873740287
+ .long 1070966789
+ .long 1580060562
+ .long 3215272745
+ .long 1505280051
+ .long 1069653548
+ .long 2221338643
+ .long 3214421240
+ .long 2641116540
+ .long 1068312400
+ .long 2040662960
+ .long 3220723947
+ .long 4270081753
+ .long 1017046794
+ .long 0
+ .long 0
+ .long 2319126882
+ .long 3215533863
+ .long 2132624928
+ .long 3153789373
+ .long 0
+ .long 1072693248
+ .long 2962101888
+ .long 1063503197
+ .long 3966050657
+ .long 3215537841
+ .long 3178024141
+ .long 1070959142
+ .long 1146830997
+ .long 3214991029
+ .long 1630003424
+ .long 1069640468
+ .long 2204651989
+ .long 3214096041
+ .long 796867276
+ .long 1068243248
+ .long 1883935754
+ .long 3220736815
+ .long 2988318241
+ .long 1016251326
+ .long 0
+ .long 0
+ .long 3919601072
+ .long 3215121322
+ .long 2384023593
+ .long 1011053048
+ .long 0
+ .long 1072693248
+ .long 1803946752
+ .long 1062615560
+ .long 2247013512
+ .long 3215122999
+ .long 3277043521
+ .long 1070953215
+ .long 578207576
+ .long 3214490301
+ .long 1619551293
+ .long 1069630354
+ .long 2648603598
+ .long 3213667381
+ .long 2728840488
+ .long 1068193529
+ .long 1727208548
+ .long 3220749683
+ .long 2531251621
+ .long 1014661577
+ .long 0
+ .long 0
+ .long 612012528
+ .long 3214484294
+ .long 549859680
+ .long 1005659865
+ .long 0
+ .long 1072693248
+ .long 2064191488
+ .long 1061404484
+ .long 4042886527
+ .long 3214485286
+ .long 149923164
+ .long 1070948993
+ .long 104448276
+ .long 3213936806
+ .long 2663431480
+ .long 1069623160
+ .long 4100741337
+ .long 3213036454
+ .long 3253086979
+ .long 1068220130
+ .long 1570481342
+ .long 3220762551
+ .long 2595802427
+ .long 3161852775
+ .long 0
+ .long 0
+ .long 75380366
+ .long 3213435470
+ .long 3015416698
+ .long 1008346766
+ .long 0
+ .long 1072693248
+ .long 2911696896
+ .long 1059306942
+ .long 451505506
+ .long 3213435718
+ .long 3089290734
+ .long 1070946463
+ .long 3705470162
+ .long 3212886822
+ .long 2568117130
+ .long 1069618857
+ .long 643302148
+ .long 3211985100
+ .long 500114129
+ .long 1068202863
+ .long 0
+ .long 1090469888
+ .long 0
+ .long 1090469888
+ .long 0
+ .long 1090469888
+ .long 0
+ .long 1090469888
+ .long 0
+ .long 1090469888
+ .long 0
+ .long 1090469888
+ .long 0
+ .long 1090469888
+ .long 0
+ .long 1090469888
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 1841940611
+ .long 1071931184
+ .long 1841940611
+ .long 1071931184
+ .long 1841940611
+ .long 1071931184
+ .long 1841940611
+ .long 1071931184
+ .long 1841940611
+ .long 1071931184
+ .long 1841940611
+ .long 1071931184
+ .long 1841940611
+ .long 1071931184
+ .long 1841940611
+ .long 1071931184
+ .long 1413742592
+ .long 1073291771
+ .long 1413742592
+ .long 1073291771
+ .long 1413742592
+ .long 1073291771
+ .long 1413742592
+ .long 1073291771
+ .long 1413742592
+ .long 1073291771
+ .long 1413742592
+ .long 1073291771
+ .long 1413742592
+ .long 1073291771
+ .long 1413742592
+ .long 1073291771
+ .long 1280049152
+ .long 1032227875
+ .long 1280049152
+ .long 1032227875
+ .long 1280049152
+ .long 1032227875
+ .long 1280049152
+ .long 1032227875
+ .long 1280049152
+ .long 1032227875
+ .long 1280049152
+ .long 1032227875
+ .long 1280049152
+ .long 1032227875
+ .long 1280049152
+ .long 1032227875
+ .long 57701189
+ .long 992578094
+ .long 57701189
+ .long 992578094
+ .long 57701189
+ .long 992578094
+ .long 57701189
+ .long 992578094
+ .long 57701189
+ .long 992578094
+ .long 57701189
+ .long 992578094
+ .long 57701189
+ .long 992578094
+ .long 57701189
+ .long 992578094
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 1413754136
+ .long 1073291771
+ .long 856972294
+ .long 1016178214
+ .long 856972294
+ .long 1016178214
+ .long 856972294
+ .long 1016178214
+ .long 856972294
+ .long 1016178214
+ .long 856972294
+ .long 1016178214
+ .long 856972294
+ .long 1016178214
+ .long 856972294
+ .long 1016178214
+ .long 856972294
+ .long 1016178214
+ .long 688016905
+ .long 961289425
+ .long 688016905
+ .long 961289425
+ .long 688016905
+ .long 961289425
+ .long 688016905
+ .long 961289425
+ .long 688016905
+ .long 961289425
+ .long 688016905
+ .long 961289425
+ .long 688016905
+ .long 961289425
+ .long 688016905
+ .long 961289425
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 3191264137
+ .long 3217058711
+ .long 3191264137
+ .long 3217058711
+ .long 3191264137
+ .long 3217058711
+ .long 3191264137
+ .long 3217058711
+ .long 3191264137
+ .long 3217058711
+ .long 3191264137
+ .long 3217058711
+ .long 3191264137
+ .long 3217058711
+ .long 3191264137
+ .long 3217058711
+ .long 3706049281
+ .long 1063713903
+ .long 3706049281
+ .long 1063713903
+ .long 3706049281
+ .long 1063713903
+ .long 3706049281
+ .long 1063713903
+ .long 3706049281
+ .long 1063713903
+ .long 3706049281
+ .long 1063713903
+ .long 3706049281
+ .long 1063713903
+ .long 3706049281
+ .long 1063713903
+ .long 3458873344
+ .long 3202311037
+ .long 3458873344
+ .long 3202311037
+ .long 3458873344
+ .long 3202311037
+ .long 3458873344
+ .long 3202311037
+ .long 3458873344
+ .long 3202311037
+ .long 3458873344
+ .long 3202311037
+ .long 3458873344
+ .long 3202311037
+ .long 3458873344
+ .long 3202311037
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 879804142
+ .long 3218967329
+ .long 879804142
+ .long 3218967329
+ .long 879804142
+ .long 3218967329
+ .long 879804142
+ .long 3218967329
+ .long 879804142
+ .long 3218967329
+ .long 879804142
+ .long 3218967329
+ .long 879804142
+ .long 3218967329
+ .long 879804142
+ .long 3218967329
+ .long 2328005206
+ .long 1066919862
+ .long 2328005206
+ .long 1066919862
+ .long 2328005206
+ .long 1066919862
+ .long 2328005206
+ .long 1066919862
+ .long 2328005206
+ .long 1066919862
+ .long 2328005206
+ .long 1066919862
+ .long 2328005206
+ .long 1066919862
+ .long 2328005206
+ .long 1066919862
+ .long 62689958
+ .long 3207287387
+ .long 62689958
+ .long 3207287387
+ .long 62689958
+ .long 3207287387
+ .long 62689958
+ .long 3207287387
+ .long 62689958
+ .long 3207287387
+ .long 62689958
+ .long 3207287387
+ .long 62689958
+ .long 3207287387
+ .long 62689958
+ .long 3207287387
+ .type __svml_dtan_data_internal,@object
+ .size __svml_dtan_data_internal,29248
+ .align 64
+__svml_dtan_reduction_data_internal:
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 5
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 10
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 20
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 40
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 81
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 162
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 325
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 651
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1303
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2607
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 5215
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 10430
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 20860
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 41721
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 83443
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 166886
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 333772
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 667544
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1335088
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2670176
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 5340353
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 10680707
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 21361414
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 42722829
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 85445659
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 170891318
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 341782637
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 683565275
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1367130551
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2734261102
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1173554908
+ .long 1
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2347109817
+ .long 2
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 399252338
+ .long 5
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 798504676
+ .long 10
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1597009353
+ .long 20
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3194018707
+ .long 40
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2093070119
+ .long 81
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 4186140238
+ .long 162
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 4077313180
+ .long 325
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3859659065
+ .long 651
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3424350834
+ .long 1303
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2553734372
+ .long 2607
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 812501448
+ .long 5215
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1625002897
+ .long 10430
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3250005794
+ .long 20860
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2205044292
+ .long 41721
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 115121288
+ .long 83443
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 230242576
+ .long 166886
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 460485152
+ .long 333772
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 920970305
+ .long 667544
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1841940610
+ .long 1335088
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3683881221
+ .long 2670176
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3072795146
+ .long 5340353
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1850622997
+ .long 10680707
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3701245994
+ .long 21361414
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3107524692
+ .long 42722829
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1920082089
+ .long 85445659
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3840164178
+ .long 170891318
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3385361061
+ .long 341782637
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2475754826
+ .long 683565275
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 656542356
+ .long 1367130551
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1313084713
+ .long 2734261102
+ .long 0
+ .long 0
+ .long 1
+ .long 0
+ .long 2626169427
+ .long 1173554908
+ .long 0
+ .long 0
+ .long 2
+ .long 0
+ .long 957371559
+ .long 2347109817
+ .long 0
+ .long 0
+ .long 5
+ .long 0
+ .long 1914743119
+ .long 399252338
+ .long 0
+ .long 0
+ .long 10
+ .long 0
+ .long 3829486239
+ .long 798504676
+ .long 0
+ .long 0
+ .long 20
+ .long 0
+ .long 3364005183
+ .long 1597009353
+ .long 0
+ .long 0
+ .long 40
+ .long 0
+ .long 2433043071
+ .long 3194018707
+ .long 0
+ .long 0
+ .long 81
+ .long 0
+ .long 571118846
+ .long 2093070119
+ .long 0
+ .long 0
+ .long 162
+ .long 0
+ .long 1142237692
+ .long 4186140238
+ .long 0
+ .long 0
+ .long 325
+ .long 0
+ .long 2284475384
+ .long 4077313180
+ .long 0
+ .long 0
+ .long 651
+ .long 0
+ .long 273983472
+ .long 3859659065
+ .long 0
+ .long 0
+ .long 1303
+ .long 0
+ .long 547966945
+ .long 3424350834
+ .long 0
+ .long 0
+ .long 2607
+ .long 0
+ .long 1095933890
+ .long 2553734372
+ .long 0
+ .long 0
+ .long 5215
+ .long 0
+ .long 2191867780
+ .long 812501448
+ .long 0
+ .long 0
+ .long 10430
+ .long 0
+ .long 88768265
+ .long 1625002897
+ .long 0
+ .long 0
+ .long 20860
+ .long 0
+ .long 177536531
+ .long 3250005794
+ .long 0
+ .long 0
+ .long 41721
+ .long 0
+ .long 355073063
+ .long 2205044292
+ .long 0
+ .long 0
+ .long 83443
+ .long 0
+ .long 710146126
+ .long 115121288
+ .long 0
+ .long 0
+ .long 166886
+ .long 0
+ .long 1420292253
+ .long 230242576
+ .long 0
+ .long 0
+ .long 333772
+ .long 0
+ .long 2840584506
+ .long 460485152
+ .long 0
+ .long 0
+ .long 667544
+ .long 0
+ .long 1386201717
+ .long 920970305
+ .long 0
+ .long 0
+ .long 1335088
+ .long 0
+ .long 2772403434
+ .long 1841940610
+ .long 0
+ .long 0
+ .long 2670176
+ .long 0
+ .long 1249839573
+ .long 3683881221
+ .long 0
+ .long 0
+ .long 5340353
+ .long 0
+ .long 2499679147
+ .long 3072795146
+ .long 0
+ .long 0
+ .long 10680707
+ .long 0
+ .long 704390999
+ .long 1850622997
+ .long 0
+ .long 0
+ .long 21361414
+ .long 0
+ .long 1408781999
+ .long 3701245994
+ .long 0
+ .long 0
+ .long 42722829
+ .long 0
+ .long 2817563999
+ .long 3107524692
+ .long 0
+ .long 0
+ .long 85445659
+ .long 0
+ .long 1340160702
+ .long 1920082089
+ .long 0
+ .long 0
+ .long 170891318
+ .long 0
+ .long 2680321405
+ .long 3840164178
+ .long 0
+ .long 0
+ .long 341782637
+ .long 0
+ .long 1065675514
+ .long 3385361061
+ .long 0
+ .long 0
+ .long 683565275
+ .long 0
+ .long 2131351028
+ .long 2475754826
+ .long 0
+ .long 0
+ .long 1367130551
+ .long 0
+ .long 4262702056
+ .long 656542356
+ .long 0
+ .long 0
+ .long 2734261102
+ .long 0
+ .long 4230436817
+ .long 1313084713
+ .long 0
+ .long 0
+ .long 1173554908
+ .long 1
+ .long 4165906339
+ .long 2626169427
+ .long 0
+ .long 0
+ .long 2347109817
+ .long 2
+ .long 4036845383
+ .long 957371559
+ .long 0
+ .long 0
+ .long 399252338
+ .long 5
+ .long 3778723471
+ .long 1914743119
+ .long 0
+ .long 0
+ .long 798504676
+ .long 10
+ .long 3262479647
+ .long 3829486239
+ .long 0
+ .long 0
+ .long 1597009353
+ .long 20
+ .long 2229991998
+ .long 3364005183
+ .long 0
+ .long 0
+ .long 3194018707
+ .long 40
+ .long 165016701
+ .long 2433043071
+ .long 0
+ .long 0
+ .long 2093070119
+ .long 81
+ .long 330033402
+ .long 571118846
+ .long 0
+ .long 0
+ .long 4186140238
+ .long 162
+ .long 660066805
+ .long 1142237692
+ .long 0
+ .long 0
+ .long 4077313180
+ .long 325
+ .long 1320133610
+ .long 2284475384
+ .long 0
+ .long 0
+ .long 3859659065
+ .long 651
+ .long 2640267220
+ .long 273983472
+ .long 0
+ .long 0
+ .long 3424350834
+ .long 1303
+ .long 985567145
+ .long 547966945
+ .long 0
+ .long 0
+ .long 2553734372
+ .long 2607
+ .long 1971134291
+ .long 1095933890
+ .long 0
+ .long 0
+ .long 812501448
+ .long 5215
+ .long 3942268582
+ .long 2191867780
+ .long 0
+ .long 0
+ .long 1625002897
+ .long 10430
+ .long 3589569869
+ .long 88768265
+ .long 0
+ .long 0
+ .long 3250005794
+ .long 20860
+ .long 2884172442
+ .long 177536531
+ .long 0
+ .long 0
+ .long 2205044292
+ .long 41721
+ .long 1473377588
+ .long 355073063
+ .long 0
+ .long 0
+ .long 115121288
+ .long 83443
+ .long 2946755177
+ .long 710146126
+ .long 0
+ .long 0
+ .long 230242576
+ .long 166886
+ .long 1598543059
+ .long 1420292253
+ .long 0
+ .long 0
+ .long 460485152
+ .long 333772
+ .long 3197086118
+ .long 2840584506
+ .long 0
+ .long 0
+ .long 920970305
+ .long 667544
+ .long 2099204941
+ .long 1386201717
+ .long 0
+ .long 0
+ .long 1841940610
+ .long 1335088
+ .long 4198409883
+ .long 2772403434
+ .long 0
+ .long 0
+ .long 3683881221
+ .long 2670176
+ .long 4101852471
+ .long 1249839573
+ .long 0
+ .long 0
+ .long 3072795146
+ .long 5340353
+ .long 3908737646
+ .long 2499679147
+ .long 0
+ .long 0
+ .long 1850622997
+ .long 10680707
+ .long 3522507997
+ .long 704390999
+ .long 0
+ .long 0
+ .long 3701245994
+ .long 21361414
+ .long 2750048699
+ .long 1408781999
+ .long 0
+ .long 0
+ .long 3107524692
+ .long 42722829
+ .long 1205130103
+ .long 2817563999
+ .long 0
+ .long 0
+ .long 1920082089
+ .long 85445659
+ .long 2410260206
+ .long 1340160702
+ .long 0
+ .long 0
+ .long 3840164178
+ .long 170891318
+ .long 525553116
+ .long 2680321405
+ .long 0
+ .long 0
+ .long 3385361061
+ .long 341782637
+ .long 1051106232
+ .long 1065675514
+ .long 0
+ .long 0
+ .long 2475754826
+ .long 683565275
+ .long 2102212464
+ .long 2131351028
+ .long 0
+ .long 0
+ .long 656542356
+ .long 1367130551
+ .long 4204424928
+ .long 4262702056
+ .long 0
+ .long 0
+ .long 1313084713
+ .long 2734261102
+ .long 4113882560
+ .long 4230436817
+ .long 1
+ .long 0
+ .long 2626169427
+ .long 1173554908
+ .long 3932797825
+ .long 4165906339
+ .long 2
+ .long 0
+ .long 957371559
+ .long 2347109817
+ .long 3570628355
+ .long 4036845383
+ .long 5
+ .long 0
+ .long 1914743119
+ .long 399252338
+ .long 2846289414
+ .long 3778723471
+ .long 10
+ .long 0
+ .long 3829486239
+ .long 798504676
+ .long 1397611533
+ .long 3262479647
+ .long 20
+ .long 0
+ .long 3364005183
+ .long 1597009353
+ .long 2795223067
+ .long 2229991998
+ .long 40
+ .long 0
+ .long 2433043071
+ .long 3194018707
+ .long 1295478838
+ .long 165016701
+ .long 81
+ .long 0
+ .long 571118846
+ .long 2093070119
+ .long 2590957677
+ .long 330033402
+ .long 162
+ .long 0
+ .long 1142237692
+ .long 4186140238
+ .long 886948059
+ .long 660066805
+ .long 325
+ .long 0
+ .long 2284475384
+ .long 4077313180
+ .long 1773896118
+ .long 1320133610
+ .long 651
+ .long 0
+ .long 273983472
+ .long 3859659065
+ .long 3547792237
+ .long 2640267220
+ .long 1303
+ .long 0
+ .long 547966945
+ .long 3424350834
+ .long 2800617179
+ .long 985567145
+ .long 2607
+ .long 0
+ .long 1095933890
+ .long 2553734372
+ .long 1306267062
+ .long 1971134291
+ .long 5215
+ .long 0
+ .long 2191867780
+ .long 812501448
+ .long 2612534124
+ .long 3942268582
+ .long 10430
+ .long 0
+ .long 88768265
+ .long 1625002897
+ .long 930100952
+ .long 3589569869
+ .long 20860
+ .long 0
+ .long 177536531
+ .long 3250005794
+ .long 1860201905
+ .long 2884172442
+ .long 41721
+ .long 0
+ .long 355073063
+ .long 2205044292
+ .long 3720403810
+ .long 1473377588
+ .long 83443
+ .long 0
+ .long 710146126
+ .long 115121288
+ .long 3145840325
+ .long 2946755177
+ .long 166886
+ .long 0
+ .long 1420292253
+ .long 230242576
+ .long 1996713354
+ .long 1598543059
+ .long 333772
+ .long 0
+ .long 2840584506
+ .long 460485152
+ .long 3993426708
+ .long 3197086118
+ .long 667544
+ .long 0
+ .long 1386201717
+ .long 920970305
+ .long 3691886121
+ .long 2099204941
+ .long 1335088
+ .long 0
+ .long 2772403434
+ .long 1841940610
+ .long 3088804946
+ .long 4198409883
+ .long 2670176
+ .long 0
+ .long 1249839573
+ .long 3683881221
+ .long 1882642597
+ .long 4101852471
+ .long 5340353
+ .long 0
+ .long 2499679147
+ .long 3072795146
+ .long 3765285194
+ .long 3908737646
+ .long 10680707
+ .long 0
+ .long 704390999
+ .long 1850622997
+ .long 3235603093
+ .long 3522507997
+ .long 21361414
+ .long 0
+ .long 1408781999
+ .long 3701245994
+ .long 2176238891
+ .long 2750048699
+ .long 42722829
+ .long 0
+ .long 2817563999
+ .long 3107524692
+ .long 57510486
+ .long 1205130103
+ .long 85445659
+ .long 0
+ .long 1340160702
+ .long 1920082089
+ .long 115020972
+ .long 2410260206
+ .long 170891318
+ .long 0
+ .long 2680321405
+ .long 3840164178
+ .long 230041945
+ .long 525553116
+ .long 341782637
+ .long 0
+ .long 1065675514
+ .long 3385361061
+ .long 460083891
+ .long 1051106232
+ .long 683565275
+ .long 0
+ .long 2131351028
+ .long 2475754826
+ .long 920167782
+ .long 2102212464
+ .long 1367130551
+ .long 0
+ .long 4262702056
+ .long 656542356
+ .long 1840335564
+ .long 4204424928
+ .long 2734261102
+ .long 0
+ .long 4230436817
+ .long 1313084713
+ .long 3680671129
+ .long 4113882560
+ .long 1173554908
+ .long 1
+ .long 4165906339
+ .long 2626169427
+ .long 3066374962
+ .long 3932797825
+ .long 2347109817
+ .long 2
+ .long 4036845383
+ .long 957371559
+ .long 1837782628
+ .long 3570628355
+ .long 399252338
+ .long 5
+ .long 3778723471
+ .long 1914743119
+ .long 3675565257
+ .long 2846289414
+ .long 798504676
+ .long 10
+ .long 3262479647
+ .long 3829486239
+ .long 3056163219
+ .long 1397611533
+ .long 1597009353
+ .long 20
+ .long 2229991998
+ .long 3364005183
+ .long 1817359143
+ .long 2795223067
+ .long 3194018707
+ .long 40
+ .long 165016701
+ .long 2433043071
+ .long 3634718287
+ .long 1295478838
+ .long 2093070119
+ .long 81
+ .long 330033402
+ .long 571118846
+ .long 2974469278
+ .long 2590957677
+ .long 4186140238
+ .long 162
+ .long 660066805
+ .long 1142237692
+ .long 1653971260
+ .long 886948059
+ .long 4077313180
+ .long 325
+ .long 1320133610
+ .long 2284475384
+ .long 3307942520
+ .long 1773896118
+ .long 3859659065
+ .long 651
+ .long 2640267220
+ .long 273983472
+ .long 2320917745
+ .long 3547792237
+ .long 3424350834
+ .long 1303
+ .long 985567145
+ .long 547966945
+ .long 346868194
+ .long 2800617179
+ .long 2553734372
+ .long 2607
+ .long 1971134291
+ .long 1095933890
+ .long 693736388
+ .long 1306267062
+ .long 812501448
+ .long 5215
+ .long 3942268582
+ .long 2191867780
+ .long 1387472776
+ .long 2612534124
+ .long 1625002897
+ .long 10430
+ .long 3589569869
+ .long 88768265
+ .long 2774945552
+ .long 930100952
+ .long 3250005794
+ .long 20860
+ .long 2884172442
+ .long 177536531
+ .long 1254923809
+ .long 1860201905
+ .long 2205044292
+ .long 41721
+ .long 1473377588
+ .long 355073063
+ .long 2509847619
+ .long 3720403810
+ .long 115121288
+ .long 83443
+ .long 2946755177
+ .long 710146126
+ .long 724727943
+ .long 3145840325
+ .long 230242576
+ .long 166886
+ .long 1598543059
+ .long 1420292253
+ .long 1449455886
+ .long 1996713354
+ .long 460485152
+ .long 333772
+ .long 3197086118
+ .long 2840584506
+ .long 2898911772
+ .long 3993426708
+ .long 920970305
+ .long 667544
+ .long 2099204941
+ .long 1386201717
+ .long 1502856249
+ .long 3691886121
+ .long 1841940610
+ .long 1335088
+ .long 4198409883
+ .long 2772403434
+ .long 3005712498
+ .long 3088804946
+ .long 3683881221
+ .long 2670176
+ .long 4101852471
+ .long 1249839573
+ .long 1716457700
+ .long 1882642597
+ .long 3072795146
+ .long 5340353
+ .long 3908737646
+ .long 2499679147
+ .long 3432915400
+ .long 3765285194
+ .long 1850622997
+ .long 10680707
+ .long 3522507997
+ .long 704390999
+ .long 2570863504
+ .long 3235603093
+ .long 3701245994
+ .long 21361414
+ .long 2750048699
+ .long 1408781999
+ .long 846759712
+ .long 2176238891
+ .long 3107524692
+ .long 42722829
+ .long 1205130103
+ .long 2817563999
+ .long 1693519425
+ .long 57510486
+ .long 1920082089
+ .long 85445659
+ .long 2410260206
+ .long 1340160702
+ .long 3387038850
+ .long 115020972
+ .long 3840164178
+ .long 170891318
+ .long 525553116
+ .long 2680321405
+ .long 2479110404
+ .long 230041945
+ .long 3385361061
+ .long 341782637
+ .long 1051106232
+ .long 1065675514
+ .long 663253512
+ .long 460083891
+ .long 2475754826
+ .long 683565275
+ .long 2102212464
+ .long 2131351028
+ .long 1326507024
+ .long 920167782
+ .long 656542356
+ .long 1367130551
+ .long 4204424928
+ .long 4262702056
+ .long 2653014048
+ .long 1840335564
+ .long 1313084713
+ .long 2734261102
+ .long 4113882560
+ .long 4230436817
+ .long 1011060801
+ .long 3680671129
+ .long 2626169427
+ .long 1173554908
+ .long 3932797825
+ .long 4165906339
+ .long 2022121603
+ .long 3066374962
+ .long 957371559
+ .long 2347109817
+ .long 3570628355
+ .long 4036845383
+ .long 4044243207
+ .long 1837782628
+ .long 1914743119
+ .long 399252338
+ .long 2846289414
+ .long 3778723471
+ .long 3793519119
+ .long 3675565257
+ .long 3829486239
+ .long 798504676
+ .long 1397611533
+ .long 3262479647
+ .long 3292070943
+ .long 3056163219
+ .long 3364005183
+ .long 1597009353
+ .long 2795223067
+ .long 2229991998
+ .long 2289174591
+ .long 1817359143
+ .long 2433043071
+ .long 3194018707
+ .long 1295478838
+ .long 165016701
+ .long 283381887
+ .long 3634718287
+ .long 571118846
+ .long 2093070119
+ .long 2590957677
+ .long 330033402
+ .long 566763775
+ .long 2974469278
+ .long 1142237692
+ .long 4186140238
+ .long 886948059
+ .long 660066805
+ .long 1133527550
+ .long 1653971260
+ .long 2284475384
+ .long 4077313180
+ .long 1773896118
+ .long 1320133610
+ .long 2267055100
+ .long 3307942520
+ .long 273983472
+ .long 3859659065
+ .long 3547792237
+ .long 2640267220
+ .long 239142905
+ .long 2320917745
+ .long 547966945
+ .long 3424350834
+ .long 2800617179
+ .long 985567145
+ .long 478285810
+ .long 346868194
+ .long 1095933890
+ .long 2553734372
+ .long 1306267062
+ .long 1971134291
+ .long 956571621
+ .long 693736388
+ .long 2191867780
+ .long 812501448
+ .long 2612534124
+ .long 3942268582
+ .long 1913143242
+ .long 1387472776
+ .long 88768265
+ .long 1625002897
+ .long 930100952
+ .long 3589569869
+ .long 3826286484
+ .long 2774945552
+ .long 177536531
+ .long 3250005794
+ .long 1860201905
+ .long 2884172442
+ .long 3357605672
+ .long 1254923809
+ .long 355073063
+ .long 2205044292
+ .long 3720403810
+ .long 1473377588
+ .long 2420244049
+ .long 2509847619
+ .long 710146126
+ .long 115121288
+ .long 3145840325
+ .long 2946755177
+ .long 545520802
+ .long 724727943
+ .long 1420292253
+ .long 230242576
+ .long 1996713354
+ .long 1598543059
+ .long 1091041605
+ .long 1449455886
+ .long 2840584506
+ .long 460485152
+ .long 3993426708
+ .long 3197086118
+ .long 2182083211
+ .long 2898911772
+ .long 1386201717
+ .long 920970305
+ .long 3691886121
+ .long 2099204941
+ .long 69199126
+ .long 1502856249
+ .long 2772403434
+ .long 1841940610
+ .long 3088804946
+ .long 4198409883
+ .long 138398252
+ .long 3005712498
+ .long 1249839573
+ .long 3683881221
+ .long 1882642597
+ .long 4101852471
+ .long 276796504
+ .long 1716457700
+ .long 2499679147
+ .long 3072795146
+ .long 3765285194
+ .long 3908737646
+ .long 553593009
+ .long 3432915400
+ .long 704390999
+ .long 1850622997
+ .long 3235603093
+ .long 3522507997
+ .long 1107186019
+ .long 2570863504
+ .long 1408781999
+ .long 3701245994
+ .long 2176238891
+ .long 2750048699
+ .long 2214372039
+ .long 846759712
+ .long 2817563999
+ .long 3107524692
+ .long 57510486
+ .long 1205130103
+ .long 133776782
+ .long 1693519425
+ .long 1340160702
+ .long 1920082089
+ .long 115020972
+ .long 2410260206
+ .long 267553565
+ .long 3387038850
+ .long 2680321405
+ .long 3840164178
+ .long 230041945
+ .long 525553116
+ .long 535107130
+ .long 2479110404
+ .long 1065675514
+ .long 3385361061
+ .long 460083891
+ .long 1051106232
+ .long 1070214261
+ .long 663253512
+ .long 2131351028
+ .long 2475754826
+ .long 920167782
+ .long 2102212464
+ .long 2140428522
+ .long 1326507024
+ .long 4262702056
+ .long 656542356
+ .long 1840335564
+ .long 4204424928
+ .long 4280857045
+ .long 2653014048
+ .long 4230436817
+ .long 1313084713
+ .long 3680671129
+ .long 4113882560
+ .long 4266746795
+ .long 1011060801
+ .long 4165906339
+ .long 2626169427
+ .long 3066374962
+ .long 3932797825
+ .long 4238526295
+ .long 2022121603
+ .long 4036845383
+ .long 957371559
+ .long 1837782628
+ .long 3570628355
+ .long 4182085295
+ .long 4044243207
+ .long 3778723471
+ .long 1914743119
+ .long 3675565257
+ .long 2846289414
+ .long 4069203294
+ .long 3793519119
+ .long 3262479647
+ .long 3829486239
+ .long 3056163219
+ .long 1397611533
+ .long 3843439293
+ .long 3292070943
+ .long 2229991998
+ .long 3364005183
+ .long 1817359143
+ .long 2795223067
+ .long 3391911291
+ .long 2289174591
+ .long 165016701
+ .long 2433043071
+ .long 3634718287
+ .long 1295478838
+ .long 2488855287
+ .long 283381887
+ .long 330033402
+ .long 571118846
+ .long 2974469278
+ .long 2590957677
+ .long 682743279
+ .long 566763775
+ .long 660066805
+ .long 1142237692
+ .long 1653971260
+ .long 886948059
+ .long 1365486558
+ .long 1133527550
+ .long 1320133610
+ .long 2284475384
+ .long 3307942520
+ .long 1773896118
+ .long 2730973117
+ .long 2267055100
+ .long 2640267220
+ .long 273983472
+ .long 2320917745
+ .long 3547792237
+ .long 1166978938
+ .long 239142905
+ .long 985567145
+ .long 547966945
+ .long 346868194
+ .long 2800617179
+ .long 2333957877
+ .long 478285810
+ .long 1971134291
+ .long 1095933890
+ .long 693736388
+ .long 1306267062
+ .long 372948459
+ .long 956571621
+ .long 3942268582
+ .long 2191867780
+ .long 1387472776
+ .long 2612534124
+ .long 745896919
+ .long 1913143242
+ .long 3589569869
+ .long 88768265
+ .long 2774945552
+ .long 930100952
+ .long 1491793838
+ .long 3826286484
+ .long 2884172442
+ .long 177536531
+ .long 1254923809
+ .long 1860201905
+ .long 2983587677
+ .long 3357605672
+ .long 1473377588
+ .long 355073063
+ .long 2509847619
+ .long 3720403810
+ .long 1672208059
+ .long 2420244049
+ .long 2946755177
+ .long 710146126
+ .long 724727943
+ .long 3145840325
+ .long 3344416119
+ .long 545520802
+ .long 1598543059
+ .long 1420292253
+ .long 1449455886
+ .long 1996713354
+ .long 2393864943
+ .long 1091041605
+ .long 3197086118
+ .long 2840584506
+ .long 2898911772
+ .long 3993426708
+ .long 492762590
+ .long 2182083211
+ .long 2099204941
+ .long 1386201717
+ .long 1502856249
+ .long 3691886121
+ .long 985525180
+ .long 69199126
+ .long 4198409883
+ .long 2772403434
+ .long 3005712498
+ .long 3088804946
+ .long 1971050360
+ .long 138398252
+ .long 4101852471
+ .long 1249839573
+ .long 1716457700
+ .long 1882642597
+ .long 3942100721
+ .long 276796504
+ .long 3908737646
+ .long 2499679147
+ .long 3432915400
+ .long 3765285194
+ .long 3589234146
+ .long 553593009
+ .long 3522507997
+ .long 704390999
+ .long 2570863504
+ .long 3235603093
+ .long 2883500997
+ .long 1107186019
+ .long 2750048699
+ .long 1408781999
+ .long 846759712
+ .long 2176238891
+ .long 1472034698
+ .long 2214372039
+ .long 1205130103
+ .long 2817563999
+ .long 1693519425
+ .long 57510486
+ .long 2944069397
+ .long 133776782
+ .long 2410260206
+ .long 1340160702
+ .long 3387038850
+ .long 115020972
+ .long 1593171499
+ .long 267553565
+ .long 525553116
+ .long 2680321405
+ .long 2479110404
+ .long 230041945
+ .long 3186342998
+ .long 535107130
+ .long 1051106232
+ .long 1065675514
+ .long 663253512
+ .long 460083891
+ .long 2077718700
+ .long 1070214261
+ .long 2102212464
+ .long 2131351028
+ .long 1326507024
+ .long 920167782
+ .long 4155437400
+ .long 2140428522
+ .long 4204424928
+ .long 4262702056
+ .long 2653014048
+ .long 1840335564
+ .long 4015907504
+ .long 4280857045
+ .long 4113882560
+ .long 4230436817
+ .long 1011060801
+ .long 3680671129
+ .long 3736847713
+ .long 4266746795
+ .long 3932797825
+ .long 4165906339
+ .long 2022121603
+ .long 3066374962
+ .long 3178728131
+ .long 4238526295
+ .long 3570628355
+ .long 4036845383
+ .long 4044243207
+ .long 1837782628
+ .long 2062488966
+ .long 4182085295
+ .long 2846289414
+ .long 3778723471
+ .long 3793519119
+ .long 3675565257
+ .long 4124977933
+ .long 4069203294
+ .long 1397611533
+ .long 3262479647
+ .long 3292070943
+ .long 3056163219
+ .long 3954988571
+ .long 3843439293
+ .long 2795223067
+ .long 2229991998
+ .long 2289174591
+ .long 1817359143
+ .long 3615009846
+ .long 3391911291
+ .long 1295478838
+ .long 165016701
+ .long 283381887
+ .long 3634718287
+ .long 2935052397
+ .long 2488855287
+ .long 2590957677
+ .long 330033402
+ .long 566763775
+ .long 2974469278
+ .long 1575137499
+ .long 682743279
+ .long 886948059
+ .long 660066805
+ .long 1133527550
+ .long 1653971260
+ .long 3150274999
+ .long 1365486558
+ .long 1773896118
+ .long 1320133610
+ .long 2267055100
+ .long 3307942520
+ .long 2005582702
+ .long 2730973117
+ .long 3547792237
+ .long 2640267220
+ .long 239142905
+ .long 2320917745
+ .long 4011165404
+ .long 1166978938
+ .long 2800617179
+ .long 985567145
+ .long 478285810
+ .long 346868194
+ .long 3727363513
+ .long 2333957877
+ .long 1306267062
+ .long 1971134291
+ .long 956571621
+ .long 693736388
+ .long 3159759730
+ .long 372948459
+ .long 2612534124
+ .long 3942268582
+ .long 1913143242
+ .long 1387472776
+ .long 2024552164
+ .long 745896919
+ .long 930100952
+ .long 3589569869
+ .long 3826286484
+ .long 2774945552
+ .long 4049104329
+ .long 1491793838
+ .long 1860201905
+ .long 2884172442
+ .long 3357605672
+ .long 1254923809
+ .long 3803241362
+ .long 2983587677
+ .long 3720403810
+ .long 1473377588
+ .long 2420244049
+ .long 2509847619
+ .long 3311515428
+ .long 1672208059
+ .long 3145840325
+ .long 2946755177
+ .long 545520802
+ .long 724727943
+ .long 2328063560
+ .long 3344416119
+ .long 1996713354
+ .long 1598543059
+ .long 1091041605
+ .long 1449455886
+ .long 361159825
+ .long 2393864943
+ .long 3993426708
+ .long 3197086118
+ .long 2182083211
+ .long 2898911772
+ .long 722319651
+ .long 492762590
+ .long 3691886121
+ .long 2099204941
+ .long 69199126
+ .long 1502856249
+ .long 1444639302
+ .long 985525180
+ .long 3088804946
+ .long 4198409883
+ .long 138398252
+ .long 3005712498
+ .long 2889278605
+ .long 1971050360
+ .long 1882642597
+ .long 4101852471
+ .long 276796504
+ .long 1716457700
+ .long 1483589915
+ .long 3942100721
+ .long 3765285194
+ .long 3908737646
+ .long 553593009
+ .long 3432915400
+ .long 2967179831
+ .long 3589234146
+ .long 3235603093
+ .long 3522507997
+ .long 1107186019
+ .long 2570863504
+ .long 1639392366
+ .long 2883500997
+ .long 2176238891
+ .long 2750048699
+ .long 2214372039
+ .long 846759712
+ .long 3278784732
+ .long 1472034698
+ .long 57510486
+ .long 1205130103
+ .long 133776782
+ .long 1693519425
+ .long 2262602168
+ .long 2944069397
+ .long 115020972
+ .long 2410260206
+ .long 267553565
+ .long 3387038850
+ .long 230237041
+ .long 1593171499
+ .long 230041945
+ .long 525553116
+ .long 535107130
+ .long 2479110404
+ .long 460474083
+ .long 3186342998
+ .long 460083891
+ .long 1051106232
+ .long 1070214261
+ .long 663253512
+ .long 920948167
+ .long 2077718700
+ .long 920167782
+ .long 2102212464
+ .long 2140428522
+ .long 1326507024
+ .long 1841896334
+ .long 4155437400
+ .long 1840335564
+ .long 4204424928
+ .long 4280857045
+ .long 2653014048
+ .long 3683792669
+ .long 4015907504
+ .long 3680671129
+ .long 4113882560
+ .long 4266746795
+ .long 1011060801
+ .long 3072618042
+ .long 3736847713
+ .long 3066374962
+ .long 3932797825
+ .long 4238526295
+ .long 2022121603
+ .long 1850268788
+ .long 3178728131
+ .long 1837782628
+ .long 3570628355
+ .long 4182085295
+ .long 4044243207
+ .long 3700537577
+ .long 2062488966
+ .long 3675565257
+ .long 2846289414
+ .long 4069203294
+ .long 3793519119
+ .long 3106107858
+ .long 4124977933
+ .long 3056163219
+ .long 1397611533
+ .long 3843439293
+ .long 3292070943
+ .long 1917248420
+ .long 3954988571
+ .long 1817359143
+ .long 2795223067
+ .long 3391911291
+ .long 2289174591
+ .long 3834496840
+ .long 3615009846
+ .long 3634718287
+ .long 1295478838
+ .long 2488855287
+ .long 283381887
+ .long 3374026384
+ .long 2935052397
+ .long 2974469278
+ .long 2590957677
+ .long 682743279
+ .long 566763775
+ .long 2453085473
+ .long 1575137499
+ .long 1653971260
+ .long 886948059
+ .long 1365486558
+ .long 1133527550
+ .long 611203650
+ .long 3150274999
+ .long 3307942520
+ .long 1773896118
+ .long 2730973117
+ .long 2267055100
+ .long 1222407300
+ .long 2005582702
+ .long 2320917745
+ .long 3547792237
+ .long 1166978938
+ .long 239142905
+ .long 2444814601
+ .long 4011165404
+ .long 346868194
+ .long 2800617179
+ .long 2333957877
+ .long 478285810
+ .long 594661906
+ .long 3727363513
+ .long 693736388
+ .long 1306267062
+ .long 372948459
+ .long 956571621
+ .long 1189323812
+ .long 3159759730
+ .long 1387472776
+ .long 2612534124
+ .long 745896919
+ .long 1913143242
+ .long 2378647625
+ .long 2024552164
+ .long 2774945552
+ .long 930100952
+ .long 1491793838
+ .long 3826286484
+ .long 462327955
+ .long 4049104329
+ .long 1254923809
+ .long 1860201905
+ .long 2983587677
+ .long 3357605672
+ .long 924655910
+ .long 3803241362
+ .long 2509847619
+ .long 3720403810
+ .long 1672208059
+ .long 2420244049
+ .long 1849311821
+ .long 3311515428
+ .long 724727943
+ .long 3145840325
+ .long 3344416119
+ .long 545520802
+ .long 3698623643
+ .long 2328063560
+ .long 1449455886
+ .long 1996713354
+ .long 2393864943
+ .long 1091041605
+ .long 3102279991
+ .long 361159825
+ .long 2898911772
+ .long 3993426708
+ .long 492762590
+ .long 2182083211
+ .long 1909592686
+ .long 722319651
+ .long 1502856249
+ .long 3691886121
+ .long 985525180
+ .long 69199126
+ .long 3819185373
+ .long 1444639302
+ .long 3005712498
+ .long 3088804946
+ .long 1971050360
+ .long 138398252
+ .long 3343403450
+ .long 2889278605
+ .long 1716457700
+ .long 1882642597
+ .long 3942100721
+ .long 276796504
+ .long 2391839604
+ .long 1483589915
+ .long 3432915400
+ .long 3765285194
+ .long 3589234146
+ .long 553593009
+ .long 488711913
+ .long 2967179831
+ .long 2570863504
+ .long 3235603093
+ .long 2883500997
+ .long 1107186019
+ .long 977423826
+ .long 1639392366
+ .long 846759712
+ .long 2176238891
+ .long 1472034698
+ .long 2214372039
+ .long 1954847653
+ .long 3278784732
+ .long 1693519425
+ .long 57510486
+ .long 2944069397
+ .long 133776782
+ .long 3909695307
+ .long 2262602168
+ .long 3387038850
+ .long 115020972
+ .long 1593171499
+ .long 267553565
+ .long 3524423319
+ .long 230237041
+ .long 2479110404
+ .long 230041945
+ .long 3186342998
+ .long 535107130
+ .long 2753879342
+ .long 460474083
+ .long 663253512
+ .long 460083891
+ .long 2077718700
+ .long 1070214261
+ .long 1212791388
+ .long 920948167
+ .long 1326507024
+ .long 920167782
+ .long 4155437400
+ .long 2140428522
+ .long 2425582776
+ .long 1841896334
+ .long 2653014048
+ .long 1840335564
+ .long 4015907504
+ .long 4280857045
+ .long 556198256
+ .long 3683792669
+ .long 1011060801
+ .long 3680671129
+ .long 3736847713
+ .long 4266746795
+ .long 1112396512
+ .long 3072618042
+ .long 2022121603
+ .long 3066374962
+ .long 3178728131
+ .long 4238526295
+ .long 2224793024
+ .long 1850268788
+ .long 4044243207
+ .long 1837782628
+ .long 2062488966
+ .long 4182085295
+ .long 154618752
+ .long 3700537577
+ .long 3793519119
+ .long 3675565257
+ .long 4124977933
+ .long 4069203294
+ .long 309237504
+ .long 3106107858
+ .long 3292070943
+ .long 3056163219
+ .long 3954988571
+ .long 3843439293
+ .long 618475008
+ .long 1917248420
+ .long 2289174591
+ .long 1817359143
+ .long 3615009846
+ .long 3391911291
+ .long 1236950016
+ .long 3834496840
+ .long 283381887
+ .long 3634718287
+ .long 2935052397
+ .long 2488855287
+ .long 2473900033
+ .long 3374026384
+ .long 566763775
+ .long 2974469278
+ .long 1575137499
+ .long 682743279
+ .long 652832771
+ .long 2453085473
+ .long 1133527550
+ .long 1653971260
+ .long 3150274999
+ .long 1365486558
+ .long 1305665542
+ .long 611203650
+ .long 2267055100
+ .long 3307942520
+ .long 2005582702
+ .long 2730973117
+ .long 2611331084
+ .long 1222407300
+ .long 239142905
+ .long 2320917745
+ .long 4011165404
+ .long 1166978938
+ .long 927694873
+ .long 2444814601
+ .long 478285810
+ .long 346868194
+ .long 3727363513
+ .long 2333957877
+ .long 1855389746
+ .long 594661906
+ .long 956571621
+ .long 693736388
+ .long 3159759730
+ .long 372948459
+ .long 3710779492
+ .long 1189323812
+ .long 1913143242
+ .long 1387472776
+ .long 2024552164
+ .long 745896919
+ .long 3126591689
+ .long 2378647625
+ .long 3826286484
+ .long 2774945552
+ .long 4049104329
+ .long 1491793838
+ .long 1958216082
+ .long 462327955
+ .long 3357605672
+ .long 1254923809
+ .long 3803241362
+ .long 2983587677
+ .long 3916432164
+ .long 924655910
+ .long 2420244049
+ .long 2509847619
+ .long 3311515428
+ .long 1672208059
+ .long 3537897033
+ .long 1849311821
+ .long 545520802
+ .long 724727943
+ .long 2328063560
+ .long 3344416119
+ .long 2780826770
+ .long 3698623643
+ .long 1091041605
+ .long 1449455886
+ .long 361159825
+ .long 2393864943
+ .long 1266686244
+ .long 3102279991
+ .long 2182083211
+ .long 2898911772
+ .long 722319651
+ .long 492762590
+ .long 2533372489
+ .long 1909592686
+ .long 69199126
+ .long 1502856249
+ .long 1444639302
+ .long 985525180
+ .long 771777682
+ .long 3819185373
+ .long 138398252
+ .long 3005712498
+ .long 2889278605
+ .long 1971050360
+ .long 1543555365
+ .long 3343403450
+ .long 276796504
+ .long 1716457700
+ .long 1483589915
+ .long 3942100721
+ .long 3087110731
+ .long 2391839604
+ .long 553593009
+ .long 3432915400
+ .long 2967179831
+ .long 3589234146
+ .long 1879254167
+ .long 488711913
+ .long 1107186019
+ .long 2570863504
+ .long 1639392366
+ .long 2883500997
+ .long 3758508334
+ .long 977423826
+ .long 2214372039
+ .long 846759712
+ .long 3278784732
+ .long 1472034698
+ .long 3222049373
+ .long 1954847653
+ .long 133776782
+ .long 1693519425
+ .long 2262602168
+ .long 2944069397
+ .long 2149131451
+ .long 3909695307
+ .long 267553565
+ .long 3387038850
+ .long 230237041
+ .long 1593171499
+ .long 3295607
+ .long 3524423319
+ .long 535107130
+ .long 2479110404
+ .long 460474083
+ .long 3186342998
+ .long 6591214
+ .long 2753879342
+ .long 1070214261
+ .long 663253512
+ .long 920948167
+ .long 2077718700
+ .long 13182429
+ .long 1212791388
+ .long 2140428522
+ .long 1326507024
+ .long 1841896334
+ .long 4155437400
+ .long 26364858
+ .long 2425582776
+ .long 4280857045
+ .long 2653014048
+ .long 3683792669
+ .long 4015907504
+ .long 52729717
+ .long 556198256
+ .long 4266746795
+ .long 1011060801
+ .long 3072618042
+ .long 3736847713
+ .long 105459434
+ .long 1112396512
+ .long 4238526295
+ .long 2022121603
+ .long 1850268788
+ .long 3178728131
+ .long 210918868
+ .long 2224793024
+ .long 4182085295
+ .long 4044243207
+ .long 3700537577
+ .long 2062488966
+ .long 421837736
+ .long 154618752
+ .long 4069203294
+ .long 3793519119
+ .long 3106107858
+ .long 4124977933
+ .long 843675472
+ .long 309237504
+ .long 3843439293
+ .long 3292070943
+ .long 1917248420
+ .long 3954988571
+ .long 1687350944
+ .long 618475008
+ .long 3391911291
+ .long 2289174591
+ .long 3834496840
+ .long 3615009846
+ .long 3374701889
+ .long 1236950016
+ .long 2488855287
+ .long 283381887
+ .long 3374026384
+ .long 2935052397
+ .long 2454436482
+ .long 2473900033
+ .long 682743279
+ .long 566763775
+ .long 2453085473
+ .long 1575137499
+ .long 613905668
+ .long 652832771
+ .long 1365486558
+ .long 1133527550
+ .long 611203650
+ .long 3150274999
+ .long 1227811337
+ .long 1305665542
+ .long 2730973117
+ .long 2267055100
+ .long 1222407300
+ .long 2005582702
+ .long 2455622675
+ .long 2611331084
+ .long 1166978938
+ .long 239142905
+ .long 2444814601
+ .long 4011165404
+ .long 616278055
+ .long 927694873
+ .long 2333957877
+ .long 478285810
+ .long 594661906
+ .long 3727363513
+ .long 1232556110
+ .long 1855389746
+ .long 372948459
+ .long 956571621
+ .long 1189323812
+ .long 3159759730
+ .long 2465112221
+ .long 3710779492
+ .long 745896919
+ .long 1913143242
+ .long 2378647625
+ .long 2024552164
+ .long 635257146
+ .long 3126591689
+ .long 1491793838
+ .long 3826286484
+ .long 462327955
+ .long 4049104329
+ .long 1270514292
+ .long 1958216082
+ .long 2983587677
+ .long 3357605672
+ .long 924655910
+ .long 3803241362
+ .long 2541028584
+ .long 3916432164
+ .long 1672208059
+ .long 2420244049
+ .long 1849311821
+ .long 3311515428
+ .long 787089873
+ .long 3537897033
+ .long 3344416119
+ .long 545520802
+ .long 3698623643
+ .long 2328063560
+ .long 1574179747
+ .long 2780826770
+ .long 2393864943
+ .long 1091041605
+ .long 3102279991
+ .long 361159825
+ .long 3148359494
+ .long 1266686244
+ .long 492762590
+ .long 2182083211
+ .long 1909592686
+ .long 722319651
+ .long 2001751692
+ .long 2533372489
+ .long 985525180
+ .long 69199126
+ .long 3819185373
+ .long 1444639302
+ .long 4003503385
+ .long 771777682
+ .long 1971050360
+ .long 138398252
+ .long 3343403450
+ .long 2889278605
+ .long 3712039474
+ .long 1543555365
+ .long 3942100721
+ .long 276796504
+ .long 2391839604
+ .long 1483589915
+ .long 3129111652
+ .long 3087110731
+ .long 3589234146
+ .long 553593009
+ .long 488711913
+ .long 2967179831
+ .long 1963256009
+ .long 1879254167
+ .long 2883500997
+ .long 1107186019
+ .long 977423826
+ .long 1639392366
+ .long 3926512018
+ .long 3758508334
+ .long 1472034698
+ .long 2214372039
+ .long 1954847653
+ .long 3278784732
+ .long 3558056740
+ .long 3222049373
+ .long 2944069397
+ .long 133776782
+ .long 3909695307
+ .long 2262602168
+ .long 2821146184
+ .long 2149131451
+ .long 1593171499
+ .long 267553565
+ .long 3524423319
+ .long 230237041
+ .long 1347325072
+ .long 3295607
+ .long 3186342998
+ .long 535107130
+ .long 2753879342
+ .long 460474083
+ .long 2694650145
+ .long 6591214
+ .long 2077718700
+ .long 1070214261
+ .long 1212791388
+ .long 920948167
+ .long 1094332995
+ .long 13182429
+ .long 4155437400
+ .long 2140428522
+ .long 2425582776
+ .long 1841896334
+ .long 2188665991
+ .long 26364858
+ .long 4015907504
+ .long 4280857045
+ .long 556198256
+ .long 3683792669
+ .long 82364686
+ .long 52729717
+ .long 3736847713
+ .long 4266746795
+ .long 1112396512
+ .long 3072618042
+ .long 164729372
+ .long 105459434
+ .long 3178728131
+ .long 4238526295
+ .long 2224793024
+ .long 1850268788
+ .long 329458745
+ .long 210918868
+ .long 2062488966
+ .long 4182085295
+ .long 154618752
+ .long 3700537577
+ .long 658917491
+ .long 421837736
+ .long 4124977933
+ .long 4069203294
+ .long 309237504
+ .long 3106107858
+ .long 1317834983
+ .long 843675472
+ .long 3954988571
+ .long 3843439293
+ .long 618475008
+ .long 1917248420
+ .long 2635669967
+ .long 1687350944
+ .long 3615009846
+ .long 3391911291
+ .long 1236950016
+ .long 3834496840
+ .long 976372639
+ .long 3374701889
+ .long 2935052397
+ .long 2488855287
+ .long 2473900033
+ .long 3374026384
+ .long 1952745279
+ .long 2454436482
+ .long 1575137499
+ .long 682743279
+ .long 652832771
+ .long 2453085473
+ .long 3905490559
+ .long 613905668
+ .long 3150274999
+ .long 1365486558
+ .long 1305665542
+ .long 611203650
+ .long 3516013822
+ .long 1227811337
+ .long 2005582702
+ .long 2730973117
+ .long 2611331084
+ .long 1222407300
+ .long 2737060348
+ .long 2455622675
+ .long 4011165404
+ .long 1166978938
+ .long 927694873
+ .long 2444814601
+ .long 1179153400
+ .long 616278055
+ .long 3727363513
+ .long 2333957877
+ .long 1855389746
+ .long 594661906
+ .long 2358306800
+ .long 1232556110
+ .long 3159759730
+ .long 372948459
+ .long 3710779492
+ .long 1189323812
+ .long 421646305
+ .long 2465112221
+ .long 2024552164
+ .long 745896919
+ .long 3126591689
+ .long 2378647625
+ .long 843292611
+ .long 635257146
+ .long 4049104329
+ .long 1491793838
+ .long 1958216082
+ .long 462327955
+ .long 1686585223
+ .long 1270514292
+ .long 3803241362
+ .long 2983587677
+ .long 3916432164
+ .long 924655910
+ .long 3373170446
+ .long 2541028584
+ .long 3311515428
+ .long 1672208059
+ .long 3537897033
+ .long 1849311821
+ .long 2451373597
+ .long 787089873
+ .long 2328063560
+ .long 3344416119
+ .long 2780826770
+ .long 3698623643
+ .long 607779899
+ .long 1574179747
+ .long 361159825
+ .long 2393864943
+ .long 1266686244
+ .long 3102279991
+ .long 1215559799
+ .long 3148359494
+ .long 722319651
+ .long 492762590
+ .long 2533372489
+ .long 1909592686
+ .long 2431119599
+ .long 2001751692
+ .long 1444639302
+ .long 985525180
+ .long 771777682
+ .long 3819185373
+ .long 567271902
+ .long 4003503385
+ .long 2889278605
+ .long 1971050360
+ .long 1543555365
+ .long 3343403450
+ .long 1134543805
+ .long 3712039474
+ .long 1483589915
+ .long 3942100721
+ .long 3087110731
+ .long 2391839604
+ .long 2269087610
+ .long 3129111652
+ .long 2967179831
+ .long 3589234146
+ .long 1879254167
+ .long 488711913
+ .long 243207925
+ .long 1963256009
+ .long 1639392366
+ .long 2883500997
+ .long 3758508334
+ .long 977423826
+ .long 486415851
+ .long 3926512018
+ .long 3278784732
+ .long 1472034698
+ .long 3222049373
+ .long 1954847653
+ .long 972831702
+ .long 3558056740
+ .long 2262602168
+ .long 2944069397
+ .long 2149131451
+ .long 3909695307
+ .long 1945663404
+ .long 2821146184
+ .long 230237041
+ .long 1593171499
+ .long 3295607
+ .long 3524423319
+ .long 3891326808
+ .long 1347325072
+ .long 460474083
+ .long 3186342998
+ .long 6591214
+ .long 2753879342
+ .long 3487686321
+ .long 2694650145
+ .long 920948167
+ .long 2077718700
+ .long 13182429
+ .long 1212791388
+ .long 2680405347
+ .long 1094332995
+ .long 1841896334
+ .long 4155437400
+ .long 26364858
+ .long 2425582776
+ .long 1065843399
+ .long 2188665991
+ .long 3683792669
+ .long 4015907504
+ .long 52729717
+ .long 556198256
+ .long 2131686798
+ .long 82364686
+ .long 3072618042
+ .long 3736847713
+ .long 105459434
+ .long 1112396512
+ .long 4263373596
+ .long 164729372
+ .long 1850268788
+ .long 3178728131
+ .long 210918868
+ .long 2224793024
+ .long 4231779897
+ .long 329458745
+ .long 3700537577
+ .long 2062488966
+ .long 421837736
+ .long 154618752
+ .long 4168592498
+ .long 658917491
+ .long 3106107858
+ .long 4124977933
+ .long 843675472
+ .long 309237504
+ .long 4042217701
+ .long 1317834983
+ .long 1917248420
+ .long 3954988571
+ .long 1687350944
+ .long 618475008
+ .long 3789468107
+ .long 2635669967
+ .long 3834496840
+ .long 3615009846
+ .long 3374701889
+ .long 1236950016
+ .long 3283968918
+ .long 976372639
+ .long 3374026384
+ .long 2935052397
+ .long 2454436482
+ .long 2473900033
+ .long 2272970540
+ .long 1952745279
+ .long 2453085473
+ .long 1575137499
+ .long 613905668
+ .long 652832771
+ .long 250973784
+ .long 3905490559
+ .long 611203650
+ .long 3150274999
+ .long 1227811337
+ .long 1305665542
+ .long 501947569
+ .long 3516013822
+ .long 1222407300
+ .long 2005582702
+ .long 2455622675
+ .long 2611331084
+ .long 1003895138
+ .long 2737060348
+ .long 2444814601
+ .long 4011165404
+ .long 616278055
+ .long 927694873
+ .long 2007790276
+ .long 1179153400
+ .long 594661906
+ .long 3727363513
+ .long 1232556110
+ .long 1855389746
+ .long 4015580553
+ .long 2358306800
+ .long 1189323812
+ .long 3159759730
+ .long 2465112221
+ .long 3710779492
+ .long 3736193810
+ .long 421646305
+ .long 2378647625
+ .long 2024552164
+ .long 635257146
+ .long 3126591689
+ .long 3177420325
+ .long 843292611
+ .long 462327955
+ .long 4049104329
+ .long 1270514292
+ .long 1958216082
+ .long 2059873354
+ .long 1686585223
+ .long 924655910
+ .long 3803241362
+ .long 2541028584
+ .long 3916432164
+ .long 4119746708
+ .long 3373170446
+ .long 1849311821
+ .long 3311515428
+ .long 787089873
+ .long 3537897033
+ .long 3944526121
+ .long 2451373597
+ .long 3698623643
+ .long 2328063560
+ .long 1574179747
+ .long 2780826770
+ .long 3594084947
+ .long 607779899
+ .long 3102279991
+ .long 361159825
+ .long 3148359494
+ .long 1266686244
+ .long 2893202598
+ .long 1215559799
+ .long 1909592686
+ .long 722319651
+ .long 2001751692
+ .long 2533372489
+ .long 1491437901
+ .long 2431119599
+ .long 3819185373
+ .long 1444639302
+ .long 4003503385
+ .long 771777682
+ .long 2982875802
+ .long 567271902
+ .long 3343403450
+ .long 2889278605
+ .long 3712039474
+ .long 1543555365
+ .long 1670784308
+ .long 1134543805
+ .long 2391839604
+ .long 1483589915
+ .long 3129111652
+ .long 3087110731
+ .long 3341568617
+ .long 2269087610
+ .long 488711913
+ .long 2967179831
+ .long 1963256009
+ .long 1879254167
+ .long 2388169939
+ .long 243207925
+ .long 977423826
+ .long 1639392366
+ .long 3926512018
+ .long 3758508334
+ .long 481372583
+ .long 486415851
+ .long 1954847653
+ .long 3278784732
+ .long 3558056740
+ .long 3222049373
+ .long 962745166
+ .long 972831702
+ .long 3909695307
+ .long 2262602168
+ .long 2821146184
+ .long 2149131451
+ .long 1925490332
+ .long 1945663404
+ .long 3524423319
+ .long 230237041
+ .long 1347325072
+ .long 3295607
+ .long 3850980665
+ .long 3891326808
+ .long 2753879342
+ .long 460474083
+ .long 2694650145
+ .long 6591214
+ .long 3406994035
+ .long 3487686321
+ .long 1212791388
+ .long 920948167
+ .long 1094332995
+ .long 13182429
+ .long 2519020775
+ .long 2680405347
+ .long 2425582776
+ .long 1841896334
+ .long 2188665991
+ .long 26364858
+ .long 743074255
+ .long 1065843399
+ .long 556198256
+ .long 3683792669
+ .long 82364686
+ .long 52729717
+ .long 1486148511
+ .long 2131686798
+ .long 1112396512
+ .long 3072618042
+ .long 164729372
+ .long 105459434
+ .long 2972297022
+ .long 4263373596
+ .long 2224793024
+ .long 1850268788
+ .long 329458745
+ .long 210918868
+ .long 1649626749
+ .long 4231779897
+ .long 154618752
+ .long 3700537577
+ .long 658917491
+ .long 421837736
+ .long 3299253499
+ .long 4168592498
+ .long 309237504
+ .long 3106107858
+ .long 1317834983
+ .long 843675472
+ .long 2303539703
+ .long 4042217701
+ .long 618475008
+ .long 1917248420
+ .long 2635669967
+ .long 1687350944
+ .long 312112110
+ .long 3789468107
+ .long 1236950016
+ .long 3834496840
+ .long 976372639
+ .long 3374701889
+ .long 624224221
+ .long 3283968918
+ .long 2473900033
+ .long 3374026384
+ .long 1952745279
+ .long 2454436482
+ .long 1248448442
+ .long 2272970540
+ .long 652832771
+ .long 2453085473
+ .long 3905490559
+ .long 613905668
+ .long 2496896884
+ .long 250973784
+ .long 1305665542
+ .long 611203650
+ .long 3516013822
+ .long 1227811337
+ .long 698826472
+ .long 501947569
+ .long 2611331084
+ .long 1222407300
+ .long 2737060348
+ .long 2455622675
+ .long 1397652945
+ .long 1003895138
+ .long 927694873
+ .long 2444814601
+ .long 1179153400
+ .long 616278055
+ .long 2795305890
+ .long 2007790276
+ .long 1855389746
+ .long 594661906
+ .long 2358306800
+ .long 1232556110
+ .long 1295644484
+ .long 4015580553
+ .long 3710779492
+ .long 1189323812
+ .long 421646305
+ .long 2465112221
+ .long 2591288968
+ .long 3736193810
+ .long 3126591689
+ .long 2378647625
+ .long 843292611
+ .long 635257146
+ .long 887610640
+ .long 3177420325
+ .long 1958216082
+ .long 462327955
+ .long 1686585223
+ .long 1270514292
+ .long 1775221280
+ .long 2059873354
+ .long 3916432164
+ .long 924655910
+ .long 3373170446
+ .long 2541028584
+ .long 3550442561
+ .long 4119746708
+ .long 3537897033
+ .long 1849311821
+ .long 2451373597
+ .long 787089873
+ .long 2805917826
+ .long 3944526121
+ .long 2780826770
+ .long 3698623643
+ .long 607779899
+ .long 1574179747
+ .long 1316868356
+ .long 3594084947
+ .long 1266686244
+ .long 3102279991
+ .long 1215559799
+ .long 3148359494
+ .long 2633736712
+ .long 2893202598
+ .long 2533372489
+ .long 1909592686
+ .long 2431119599
+ .long 2001751692
+ .long 972506129
+ .long 1491437901
+ .long 771777682
+ .long 3819185373
+ .long 567271902
+ .long 4003503385
+ .long 1945012259
+ .long 2982875802
+ .long 1543555365
+ .long 3343403450
+ .long 1134543805
+ .long 3712039474
+ .long 3890024518
+ .long 1670784308
+ .long 3087110731
+ .long 2391839604
+ .long 2269087610
+ .long 3129111652
+ .long 3485081741
+ .long 3341568617
+ .long 1879254167
+ .long 488711913
+ .long 243207925
+ .long 1963256009
+ .long 2675196186
+ .long 2388169939
+ .long 3758508334
+ .long 977423826
+ .long 486415851
+ .long 3926512018
+ .long 1055425077
+ .long 481372583
+ .long 3222049373
+ .long 1954847653
+ .long 972831702
+ .long 3558056740
+ .long 2110850155
+ .long 962745166
+ .long 2149131451
+ .long 3909695307
+ .long 1945663404
+ .long 2821146184
+ .long 4221700311
+ .long 1925490332
+ .long 3295607
+ .long 3524423319
+ .long 3891326808
+ .long 1347325072
+ .long 4148433327
+ .long 3850980665
+ .long 6591214
+ .long 2753879342
+ .long 3487686321
+ .long 2694650145
+ .long 4001899359
+ .long 3406994035
+ .long 13182429
+ .long 1212791388
+ .long 2680405347
+ .long 1094332995
+ .long 3708831422
+ .long 2519020775
+ .long 26364858
+ .long 2425582776
+ .long 1065843399
+ .long 2188665991
+ .long 3122695549
+ .long 743074255
+ .long 52729717
+ .long 556198256
+ .long 2131686798
+ .long 82364686
+ .long 1950423802
+ .long 1486148511
+ .long 105459434
+ .long 1112396512
+ .long 4263373596
+ .long 164729372
+ .long 3900847605
+ .long 2972297022
+ .long 210918868
+ .long 2224793024
+ .long 4231779897
+ .long 329458745
+ .long 3506727914
+ .long 1649626749
+ .long 421837736
+ .long 154618752
+ .long 4168592498
+ .long 658917491
+ .long 2718488532
+ .long 3299253499
+ .long 843675472
+ .long 309237504
+ .long 4042217701
+ .long 1317834983
+ .long 1142009769
+ .long 2303539703
+ .long 1687350944
+ .long 618475008
+ .long 3789468107
+ .long 2635669967
+ .long 2284019538
+ .long 312112110
+ .long 3374701889
+ .long 1236950016
+ .long 3283968918
+ .long 976372639
+ .long 273071781
+ .long 624224221
+ .long 2454436482
+ .long 2473900033
+ .long 2272970540
+ .long 1952745279
+ .long 546143563
+ .long 1248448442
+ .long 613905668
+ .long 652832771
+ .long 250973784
+ .long 3905490559
+ .long 1092287127
+ .long 2496896884
+ .long 1227811337
+ .long 1305665542
+ .long 501947569
+ .long 3516013822
+ .long 2184574254
+ .long 698826472
+ .long 2455622675
+ .long 2611331084
+ .long 1003895138
+ .long 2737060348
+ .long 74181213
+ .long 1397652945
+ .long 616278055
+ .long 927694873
+ .long 2007790276
+ .long 1179153400
+ .long 148362426
+ .long 2795305890
+ .long 1232556110
+ .long 1855389746
+ .long 4015580553
+ .long 2358306800
+ .long 296724853
+ .long 1295644484
+ .long 2465112221
+ .long 3710779492
+ .long 3736193810
+ .long 421646305
+ .long 593449707
+ .long 2591288968
+ .long 635257146
+ .long 3126591689
+ .long 3177420325
+ .long 843292611
+ .long 1186899415
+ .long 887610640
+ .long 1270514292
+ .long 1958216082
+ .long 2059873354
+ .long 1686585223
+ .long 2373798830
+ .long 1775221280
+ .long 2541028584
+ .long 3916432164
+ .long 4119746708
+ .long 3373170446
+ .long 452630365
+ .long 3550442561
+ .long 787089873
+ .long 3537897033
+ .long 3944526121
+ .long 2451373597
+ .long 905260731
+ .long 2805917826
+ .long 1574179747
+ .long 2780826770
+ .long 3594084947
+ .long 607779899
+ .long 1810521462
+ .long 1316868356
+ .long 3148359494
+ .long 1266686244
+ .long 2893202598
+ .long 1215559799
+ .long 3621042925
+ .long 2633736712
+ .long 2001751692
+ .long 2533372489
+ .long 1491437901
+ .long 2431119599
+ .long 2947118554
+ .long 972506129
+ .long 4003503385
+ .long 771777682
+ .long 2982875802
+ .long 567271902
+ .long 1599269812
+ .long 1945012259
+ .long 3712039474
+ .long 1543555365
+ .long 1670784308
+ .long 1134543805
+ .long 3198539624
+ .long 3890024518
+ .long 3129111652
+ .long 3087110731
+ .long 3341568617
+ .long 2269087610
+ .long 2102111953
+ .long 3485081741
+ .long 1963256009
+ .long 1879254167
+ .long 2388169939
+ .long 243207925
+ .long 4204223906
+ .long 2675196186
+ .long 3926512018
+ .long 3758508334
+ .long 481372583
+ .long 486415851
+ .long 4113480516
+ .long 1055425077
+ .long 3558056740
+ .long 3222049373
+ .long 962745166
+ .long 972831702
+ .long 3931993737
+ .long 2110850155
+ .long 2821146184
+ .long 2149131451
+ .long 1925490332
+ .long 1945663404
+ .long 3569020178
+ .long 4221700311
+ .long 1347325072
+ .long 3295607
+ .long 3850980665
+ .long 3891326808
+ .long 2843073060
+ .long 4148433327
+ .long 2694650145
+ .long 6591214
+ .long 3406994035
+ .long 3487686321
+ .long 1391178824
+ .long 4001899359
+ .long 1094332995
+ .long 13182429
+ .long 2519020775
+ .long 2680405347
+ .long 2782357648
+ .long 3708831422
+ .long 2188665991
+ .long 26364858
+ .long 743074255
+ .long 1065843399
+ .long 1269748001
+ .long 3122695549
+ .long 82364686
+ .long 52729717
+ .long 1486148511
+ .long 2131686798
+ .long 2539496002
+ .long 1950423802
+ .long 164729372
+ .long 105459434
+ .long 2972297022
+ .long 4263373596
+ .long 784024708
+ .long 3900847605
+ .long 329458745
+ .long 210918868
+ .long 1649626749
+ .long 4231779897
+ .long 1568049417
+ .long 3506727914
+ .long 658917491
+ .long 421837736
+ .long 3299253499
+ .long 4168592498
+ .long 3136098835
+ .long 2718488532
+ .long 1317834983
+ .long 843675472
+ .long 2303539703
+ .long 4042217701
+ .long 1977230375
+ .long 1142009769
+ .long 2635669967
+ .long 1687350944
+ .long 312112110
+ .long 3789468107
+ .long 3954460750
+ .long 2284019538
+ .long 976372639
+ .long 3374701889
+ .long 624224221
+ .long 3283968918
+ .long 3613954205
+ .long 273071781
+ .long 1952745279
+ .long 2454436482
+ .long 1248448442
+ .long 2272970540
+ .long 2932941114
+ .long 546143563
+ .long 3905490559
+ .long 613905668
+ .long 2496896884
+ .long 250973784
+ .long 1570914932
+ .long 1092287127
+ .long 3516013822
+ .long 1227811337
+ .long 698826472
+ .long 501947569
+ .long 3141829865
+ .long 2184574254
+ .long 2737060348
+ .long 2455622675
+ .long 1397652945
+ .long 1003895138
+ .long 1988692435
+ .long 74181213
+ .long 1179153400
+ .long 616278055
+ .long 2795305890
+ .long 2007790276
+ .long 3977384870
+ .long 148362426
+ .long 2358306800
+ .long 1232556110
+ .long 1295644484
+ .long 4015580553
+ .long 3659802444
+ .long 296724853
+ .long 421646305
+ .long 2465112221
+ .long 2591288968
+ .long 3736193810
+ .long 3024637593
+ .long 593449707
+ .long 843292611
+ .long 635257146
+ .long 887610640
+ .long 3177420325
+ .long 1754307891
+ .long 1186899415
+ .long 1686585223
+ .long 1270514292
+ .long 1775221280
+ .long 2059873354
+ .long 3508615783
+ .long 2373798830
+ .long 3373170446
+ .long 2541028584
+ .long 3550442561
+ .long 4119746708
+ .long 2722264270
+ .long 452630365
+ .long 2451373597
+ .long 787089873
+ .long 2805917826
+ .long 3944526121
+ .long 1149561244
+ .long 905260731
+ .long 607779899
+ .long 1574179747
+ .long 1316868356
+ .long 3594084947
+ .long 2299122488
+ .long 1810521462
+ .long 1215559799
+ .long 3148359494
+ .long 2633736712
+ .long 2893202598
+ .long 303277681
+ .long 3621042925
+ .long 2431119599
+ .long 2001751692
+ .long 972506129
+ .long 1491437901
+ .long 606555363
+ .long 2947118554
+ .long 567271902
+ .long 4003503385
+ .long 1945012259
+ .long 2982875802
+ .long 1213110727
+ .long 1599269812
+ .long 1134543805
+ .long 3712039474
+ .long 3890024518
+ .long 1670784308
+ .long 2426221454
+ .long 3198539624
+ .long 2269087610
+ .long 3129111652
+ .long 3485081741
+ .long 3341568617
+ .long 557475612
+ .long 2102111953
+ .long 243207925
+ .long 1963256009
+ .long 2675196186
+ .long 2388169939
+ .long 1114951224
+ .long 4204223906
+ .long 486415851
+ .long 3926512018
+ .long 1055425077
+ .long 481372583
+ .long 2229902448
+ .long 4113480516
+ .long 972831702
+ .long 3558056740
+ .long 2110850155
+ .long 962745166
+ .long 164837600
+ .long 3931993737
+ .long 1945663404
+ .long 2821146184
+ .long 4221700311
+ .long 1925490332
+ .long 329675200
+ .long 3569020178
+ .long 3891326808
+ .long 1347325072
+ .long 4148433327
+ .long 3850980665
+ .long 659350401
+ .long 2843073060
+ .long 3487686321
+ .long 2694650145
+ .long 4001899359
+ .long 3406994035
+ .long 1318700802
+ .long 1391178824
+ .long 2680405347
+ .long 1094332995
+ .long 3708831422
+ .long 2519020775
+ .long 2637401604
+ .long 2782357648
+ .long 1065843399
+ .long 2188665991
+ .long 3122695549
+ .long 743074255
+ .long 979835913
+ .long 1269748001
+ .long 2131686798
+ .long 82364686
+ .long 1950423802
+ .long 1486148511
+ .long 1959671827
+ .long 2539496002
+ .long 4263373596
+ .long 164729372
+ .long 3900847605
+ .long 2972297022
+ .long 3919343654
+ .long 784024708
+ .long 4231779897
+ .long 329458745
+ .long 3506727914
+ .long 1649626749
+ .long 3543720013
+ .long 1568049417
+ .long 4168592498
+ .long 658917491
+ .long 2718488532
+ .long 3299253499
+ .long 2792472730
+ .long 3136098835
+ .long 4042217701
+ .long 1317834983
+ .long 1142009769
+ .long 2303539703
+ .long 1289978165
+ .long 1977230375
+ .long 3789468107
+ .long 2635669967
+ .long 2284019538
+ .long 312112110
+ .long 2579956331
+ .long 3954460750
+ .long 3283968918
+ .long 976372639
+ .long 273071781
+ .long 624224221
+ .long 864945366
+ .long 3613954205
+ .long 2272970540
+ .long 1952745279
+ .long 546143563
+ .long 1248448442
+ .long 1729890733
+ .long 2932941114
+ .long 250973784
+ .long 3905490559
+ .long 1092287127
+ .long 2496896884
+ .long 3459781466
+ .long 1570914932
+ .long 501947569
+ .long 3516013822
+ .long 2184574254
+ .long 698826472
+ .long 2624595636
+ .long 3141829865
+ .long 1003895138
+ .long 2737060348
+ .long 74181213
+ .long 1397652945
+ .long 954223976
+ .long 1988692435
+ .long 2007790276
+ .long 1179153400
+ .long 148362426
+ .long 2795305890
+ .long 1908447953
+ .long 3977384870
+ .long 4015580553
+ .long 2358306800
+ .long 296724853
+ .long 1295644484
+ .long 3816895906
+ .long 3659802444
+ .long 3736193810
+ .long 421646305
+ .long 593449707
+ .long 2591288968
+ .long 3338824517
+ .long 3024637593
+ .long 3177420325
+ .long 843292611
+ .long 1186899415
+ .long 887610640
+ .long 2382681739
+ .long 1754307891
+ .long 2059873354
+ .long 1686585223
+ .long 2373798830
+ .long 1775221280
+ .long 470396183
+ .long 3508615783
+ .long 4119746708
+ .long 3373170446
+ .long 452630365
+ .long 3550442561
+ .long 940792367
+ .long 2722264270
+ .long 3944526121
+ .long 2451373597
+ .long 905260731
+ .long 2805917826
+ .long 1881584735
+ .long 1149561244
+ .long 3594084947
+ .long 607779899
+ .long 1810521462
+ .long 1316868356
+ .long 3763169470
+ .long 2299122488
+ .long 2893202598
+ .long 1215559799
+ .long 3621042925
+ .long 2633736712
+ .long 3231371645
+ .long 303277681
+ .long 1491437901
+ .long 2431119599
+ .long 2947118554
+ .long 972506129
+ .long 2167775995
+ .long 606555363
+ .long 2982875802
+ .long 567271902
+ .long 1599269812
+ .long 1945012259
+ .long 40584695
+ .long 1213110727
+ .long 1670784308
+ .long 1134543805
+ .long 3198539624
+ .long 3890024518
+ .long 81169391
+ .long 2426221454
+ .long 3341568617
+ .long 2269087610
+ .long 2102111953
+ .long 3485081741
+ .long 162338783
+ .long 557475612
+ .long 2388169939
+ .long 243207925
+ .long 4204223906
+ .long 2675196186
+ .long 324677567
+ .long 1114951224
+ .long 481372583
+ .long 486415851
+ .long 4113480516
+ .long 1055425077
+ .long 649355134
+ .long 2229902448
+ .long 962745166
+ .long 972831702
+ .long 3931993737
+ .long 2110850155
+ .long 1298710268
+ .long 164837600
+ .long 1925490332
+ .long 1945663404
+ .long 3569020178
+ .long 4221700311
+ .long 2597420537
+ .long 329675200
+ .long 3850980665
+ .long 3891326808
+ .long 2843073060
+ .long 4148433327
+ .long 899873778
+ .long 659350401
+ .long 3406994035
+ .long 3487686321
+ .long 1391178824
+ .long 4001899359
+ .long 1799747556
+ .long 1318700802
+ .long 2519020775
+ .long 2680405347
+ .long 2782357648
+ .long 3708831422
+ .long 3599495112
+ .long 2637401604
+ .long 743074255
+ .long 1065843399
+ .long 1269748001
+ .long 3122695549
+ .long 2904022928
+ .long 979835913
+ .long 1486148511
+ .long 2131686798
+ .long 2539496002
+ .long 1950423802
+ .long 1513078560
+ .long 1959671827
+ .long 2972297022
+ .long 4263373596
+ .long 784024708
+ .long 3900847605
+ .long 3026157121
+ .long 3919343654
+ .long 1649626749
+ .long 4231779897
+ .long 1568049417
+ .long 3506727914
+ .long 1757346946
+ .long 3543720013
+ .long 3299253499
+ .long 4168592498
+ .long 3136098835
+ .long 2718488532
+ .long 3514693892
+ .long 2792472730
+ .long 2303539703
+ .long 4042217701
+ .long 1977230375
+ .long 1142009769
+ .long 2734420489
+ .long 1289978165
+ .long 312112110
+ .long 3789468107
+ .long 3954460750
+ .long 2284019538
+ .long 1173873683
+ .long 2579956331
+ .long 624224221
+ .long 3283968918
+ .long 3613954205
+ .long 273071781
+ .long 2347747367
+ .long 864945366
+ .long 1248448442
+ .long 2272970540
+ .long 2932941114
+ .long 546143563
+ .long 400527438
+ .long 1729890733
+ .long 2496896884
+ .long 250973784
+ .long 1570914932
+ .long 1092287127
+ .long 801054876
+ .long 3459781466
+ .long 698826472
+ .long 501947569
+ .long 3141829865
+ .long 2184574254
+ .long 1602109753
+ .long 2624595636
+ .long 1397652945
+ .long 1003895138
+ .long 1988692435
+ .long 74181213
+ .long 3204219507
+ .long 954223976
+ .long 2795305890
+ .long 2007790276
+ .long 3977384870
+ .long 148362426
+ .long 2113471718
+ .long 1908447953
+ .long 1295644484
+ .long 4015580553
+ .long 3659802444
+ .long 296724853
+ .long 4226943436
+ .long 3816895906
+ .long 2591288968
+ .long 3736193810
+ .long 3024637593
+ .long 593449707
+ .long 4158919577
+ .long 3338824517
+ .long 887610640
+ .long 3177420325
+ .long 1754307891
+ .long 1186899415
+ .long 4022871858
+ .long 2382681739
+ .long 1775221280
+ .long 2059873354
+ .long 3508615783
+ .long 2373798830
+ .long 3750776420
+ .long 470396183
+ .long 3550442561
+ .long 4119746708
+ .long 2722264270
+ .long 452630365
+ .long 3206585544
+ .long 940792367
+ .long 2805917826
+ .long 3944526121
+ .long 1149561244
+ .long 905260731
+ .long 2118203793
+ .long 1881584735
+ .long 1316868356
+ .long 3594084947
+ .long 2299122488
+ .long 1810521462
+ .long 4236407587
+ .long 3763169470
+ .long 2633736712
+ .long 2893202598
+ .long 303277681
+ .long 3621042925
+ .long 4177847879
+ .long 3231371645
+ .long 972506129
+ .long 1491437901
+ .long 606555363
+ .long 2947118554
+ .long 4060728462
+ .long 2167775995
+ .long 1945012259
+ .long 2982875802
+ .long 1213110727
+ .long 1599269812
+ .long 3826489629
+ .long 40584695
+ .long 3890024518
+ .long 1670784308
+ .long 2426221454
+ .long 3198539624
+ .long 3358011962
+ .long 81169391
+ .long 3485081741
+ .long 3341568617
+ .long 557475612
+ .long 2102111953
+ .long 2421056629
+ .long 162338783
+ .long 2675196186
+ .long 2388169939
+ .long 1114951224
+ .long 4204223906
+ .long 547145963
+ .long 324677567
+ .long 1055425077
+ .long 481372583
+ .long 2229902448
+ .long 4113480516
+ .long 1094291926
+ .long 649355134
+ .long 2110850155
+ .long 962745166
+ .long 164837600
+ .long 3931993737
+ .long 2188583852
+ .long 1298710268
+ .long 4221700311
+ .long 1925490332
+ .long 329675200
+ .long 3569020178
+ .long 82200408
+ .long 2597420537
+ .long 4148433327
+ .long 3850980665
+ .long 659350401
+ .long 2843073060
+ .long 164400817
+ .long 899873778
+ .long 4001899359
+ .long 3406994035
+ .long 1318700802
+ .long 1391178824
+ .long 328801635
+ .long 1799747556
+ .long 3708831422
+ .long 2519020775
+ .long 2637401604
+ .long 2782357648
+ .long 657603271
+ .long 3599495112
+ .long 3122695549
+ .long 743074255
+ .long 979835913
+ .long 1269748001
+ .long 1315206542
+ .long 2904022928
+ .long 1950423802
+ .long 1486148511
+ .long 1959671827
+ .long 2539496002
+ .long 2630413084
+ .long 1513078560
+ .long 3900847605
+ .long 2972297022
+ .long 3919343654
+ .long 784024708
+ .long 965858873
+ .long 3026157121
+ .long 3506727914
+ .long 1649626749
+ .long 3543720013
+ .long 1568049417
+ .long 1931717747
+ .long 1757346946
+ .long 2718488532
+ .long 3299253499
+ .long 2792472730
+ .long 3136098835
+ .long 3863435494
+ .long 3514693892
+ .long 1142009769
+ .long 2303539703
+ .long 1289978165
+ .long 1977230375
+ .long 3431903692
+ .long 2734420489
+ .long 2284019538
+ .long 312112110
+ .long 2579956331
+ .long 3954460750
+ .long 2568840088
+ .long 1173873683
+ .long 273071781
+ .long 624224221
+ .long 864945366
+ .long 3613954205
+ .long 842712880
+ .long 2347747367
+ .long 546143563
+ .long 1248448442
+ .long 1729890733
+ .long 2932941114
+ .long 1685425760
+ .long 400527438
+ .long 1092287127
+ .long 2496896884
+ .long 3459781466
+ .long 1570914932
+ .long 3370851521
+ .long 801054876
+ .long 2184574254
+ .long 698826472
+ .long 2624595636
+ .long 3141829865
+ .long 2446735747
+ .long 1602109753
+ .long 74181213
+ .long 1397652945
+ .long 954223976
+ .long 1988692435
+ .long 598504198
+ .long 3204219507
+ .long 148362426
+ .long 2795305890
+ .long 1908447953
+ .long 3977384870
+ .long 1197008397
+ .long 2113471718
+ .long 296724853
+ .long 1295644484
+ .long 3816895906
+ .long 3659802444
+ .long 2394016794
+ .long 4226943436
+ .long 593449707
+ .long 2591288968
+ .long 3338824517
+ .long 3024637593
+ .long 493066293
+ .long 4158919577
+ .long 1186899415
+ .long 887610640
+ .long 2382681739
+ .long 1754307891
+ .long 986132586
+ .long 4022871858
+ .long 2373798830
+ .long 1775221280
+ .long 470396183
+ .long 3508615783
+ .long 1972265172
+ .long 3750776420
+ .long 452630365
+ .long 3550442561
+ .long 940792367
+ .long 2722264270
+ .long 3944530345
+ .long 3206585544
+ .long 905260731
+ .long 2805917826
+ .long 1881584735
+ .long 1149561244
+ .long 3594093395
+ .long 2118203793
+ .long 1810521462
+ .long 1316868356
+ .long 3763169470
+ .long 2299122488
+ .long 2893219494
+ .long 4236407587
+ .long 3621042925
+ .long 2633736712
+ .long 3231371645
+ .long 303277681
+ .long 1491471692
+ .long 4177847879
+ .long 2947118554
+ .long 972506129
+ .long 2167775995
+ .long 606555363
+ .long 2982943385
+ .long 4060728462
+ .long 1599269812
+ .long 1945012259
+ .long 40584695
+ .long 1213110727
+ .long 1670919475
+ .long 3826489629
+ .long 3198539624
+ .long 3890024518
+ .long 81169391
+ .long 2426221454
+ .long 3341838951
+ .long 3358011962
+ .long 2102111953
+ .long 3485081741
+ .long 162338783
+ .long 557475612
+ .long 2388710606
+ .long 2421056629
+ .long 4204223906
+ .long 2675196186
+ .long 324677567
+ .long 1114951224
+ .long 482453916
+ .long 547145963
+ .long 4113480516
+ .long 1055425077
+ .long 649355134
+ .long 2229902448
+ .long 964907833
+ .long 1094291926
+ .long 3931993737
+ .long 2110850155
+ .long 1298710268
+ .long 164837600
+ .long 1929815667
+ .long 2188583852
+ .long 3569020178
+ .long 4221700311
+ .long 2597420537
+ .long 329675200
+ .long 3859631335
+ .long 82200408
+ .long 2843073060
+ .long 4148433327
+ .long 899873778
+ .long 659350401
+ .long 3424295375
+ .long 164400817
+ .long 1391178824
+ .long 4001899359
+ .long 1799747556
+ .long 1318700802
+ .long 2553623455
+ .long 328801635
+ .long 2782357648
+ .long 3708831422
+ .long 3599495112
+ .long 2637401604
+ .long 812279614
+ .long 657603271
+ .long 1269748001
+ .long 3122695549
+ .long 2904022928
+ .long 979835913
+ .long 1624559229
+ .long 1315206542
+ .long 2539496002
+ .long 1950423802
+ .long 1513078560
+ .long 1959671827
+ .long 3249118458
+ .long 2630413084
+ .long 784024708
+ .long 3900847605
+ .long 3026157121
+ .long 3919343654
+ .long 2203269620
+ .long 965858873
+ .long 1568049417
+ .long 3506727914
+ .long 1757346946
+ .long 3543720013
+ .long 111571945
+ .long 1931717747
+ .long 3136098835
+ .long 2718488532
+ .long 3514693892
+ .long 2792472730
+ .long 223143890
+ .long 3863435494
+ .long 1977230375
+ .long 1142009769
+ .long 2734420489
+ .long 1289978165
+ .long 446287780
+ .long 3431903692
+ .long 3954460750
+ .long 2284019538
+ .long 1173873683
+ .long 2579956331
+ .long 892575561
+ .long 2568840088
+ .long 3613954205
+ .long 273071781
+ .long 2347747367
+ .long 864945366
+ .long 1785151123
+ .long 842712880
+ .long 2932941114
+ .long 546143563
+ .long 400527438
+ .long 1729890733
+ .long 3570302247
+ .long 1685425760
+ .long 1570914932
+ .long 1092287127
+ .long 801054876
+ .long 3459781466
+ .long 2845637198
+ .long 3370851521
+ .long 3141829865
+ .long 2184574254
+ .long 1602109753
+ .long 2624595636
+ .long 1396307100
+ .long 2446735747
+ .long 1988692435
+ .long 74181213
+ .long 3204219507
+ .long 954223976
+ .long 2792614201
+ .long 598504198
+ .long 3977384870
+ .long 148362426
+ .long 2113471718
+ .long 1908447953
+ .long 1290261106
+ .long 1197008397
+ .long 3659802444
+ .long 296724853
+ .long 4226943436
+ .long 3816895906
+ .long 2580522212
+ .long 2394016794
+ .long 3024637593
+ .long 593449707
+ .long 4158919577
+ .long 3338824517
+ .long 866077128
+ .long 493066293
+ .long 1754307891
+ .long 1186899415
+ .long 4022871858
+ .long 2382681739
+ .long 1732154256
+ .long 986132586
+ .long 3508615783
+ .long 2373798830
+ .long 3750776420
+ .long 470396183
+ .long 3464308513
+ .long 1972265172
+ .long 2722264270
+ .long 452630365
+ .long 3206585544
+ .long 940792367
+ .long 2633649730
+ .long 3944530345
+ .long 1149561244
+ .long 905260731
+ .long 2118203793
+ .long 1881584735
+ .long 972332164
+ .long 3594093395
+ .long 2299122488
+ .long 1810521462
+ .long 4236407587
+ .long 3763169470
+ .long 1944664328
+ .long 2893219494
+ .long 303277681
+ .long 3621042925
+ .long 4177847879
+ .long 3231371645
+ .long 3889328657
+ .long 1491471692
+ .long 606555363
+ .long 2947118554
+ .long 4060728462
+ .long 2167775995
+ .long 3483690018
+ .long 2982943385
+ .long 1213110727
+ .long 1599269812
+ .long 3826489629
+ .long 40584695
+ .long 2672412741
+ .long 1670919475
+ .long 2426221454
+ .long 3198539624
+ .long 3358011962
+ .long 81169391
+ .long 1049858187
+ .long 3341838951
+ .long 557475612
+ .long 2102111953
+ .long 2421056629
+ .long 162338783
+ .long 2099716375
+ .long 2388710606
+ .long 1114951224
+ .long 4204223906
+ .long 547145963
+ .long 324677567
+ .long 4199432751
+ .long 482453916
+ .long 2229902448
+ .long 4113480516
+ .long 1094291926
+ .long 649355134
+ .long 4103898207
+ .long 964907833
+ .long 164837600
+ .long 3931993737
+ .long 2188583852
+ .long 1298710268
+ .long 3912829119
+ .long 1929815667
+ .long 329675200
+ .long 3569020178
+ .long 82200408
+ .long 2597420537
+ .long 3530690942
+ .long 3859631335
+ .long 659350401
+ .long 2843073060
+ .long 164400817
+ .long 899873778
+ .long 2766414588
+ .long 3424295375
+ .long 1318700802
+ .long 1391178824
+ .long 328801635
+ .long 1799747556
+ .long 1237861880
+ .long 2553623455
+ .long 2637401604
+ .long 2782357648
+ .long 657603271
+ .long 3599495112
+ .long 2475723761
+ .long 812279614
+ .long 979835913
+ .long 1269748001
+ .long 1315206542
+ .long 2904022928
+ .long 656480226
+ .long 1624559229
+ .long 1959671827
+ .long 2539496002
+ .long 2630413084
+ .long 1513078560
+ .long 1312960453
+ .long 3249118458
+ .long 3919343654
+ .long 784024708
+ .long 965858873
+ .long 3026157121
+ .long 2625920907
+ .long 2203269620
+ .long 3543720013
+ .long 1568049417
+ .long 1931717747
+ .long 1757346946
+ .long 956874519
+ .long 111571945
+ .long 2792472730
+ .long 3136098835
+ .long 3863435494
+ .long 3514693892
+ .long 1913749038
+ .long 223143890
+ .long 1289978165
+ .long 1977230375
+ .long 3431903692
+ .long 2734420489
+ .long 3827498077
+ .long 446287780
+ .long 2579956331
+ .long 3954460750
+ .long 2568840088
+ .long 1173873683
+ .long 3360028859
+ .long 892575561
+ .long 864945366
+ .long 3613954205
+ .long 842712880
+ .long 2347747367
+ .long 2425090423
+ .long 1785151123
+ .long 1729890733
+ .long 2932941114
+ .long 1685425760
+ .long 400527438
+ .long 555213551
+ .long 3570302247
+ .long 3459781466
+ .long 1570914932
+ .long 3370851521
+ .long 801054876
+ .long 1110427102
+ .long 2845637198
+ .long 2624595636
+ .long 3141829865
+ .long 2446735747
+ .long 1602109753
+ .long 2220854205
+ .long 1396307100
+ .long 954223976
+ .long 1988692435
+ .long 598504198
+ .long 3204219507
+ .long 146741115
+ .long 2792614201
+ .long 1908447953
+ .long 3977384870
+ .long 1197008397
+ .long 2113471718
+ .long 293482231
+ .long 1290261106
+ .long 3816895906
+ .long 3659802444
+ .long 2394016794
+ .long 4226943436
+ .long 586964463
+ .long 2580522212
+ .long 3338824517
+ .long 3024637593
+ .long 493066293
+ .long 4158919577
+ .long 1173928927
+ .long 866077128
+ .long 2382681739
+ .long 1754307891
+ .long 986132586
+ .long 4022871858
+ .long 2347857855
+ .long 1732154256
+ .long 470396183
+ .long 3508615783
+ .long 1972265172
+ .long 3750776420
+ .long 400748414
+ .long 3464308513
+ .long 940792367
+ .long 2722264270
+ .long 3944530345
+ .long 3206585544
+ .long 801496828
+ .long 2633649730
+ .long 1881584735
+ .long 1149561244
+ .long 3594093395
+ .long 2118203793
+ .long 1602993657
+ .long 972332164
+ .long 3763169470
+ .long 2299122488
+ .long 2893219494
+ .long 4236407587
+ .long 3205987314
+ .long 1944664328
+ .long 3231371645
+ .long 303277681
+ .long 1491471692
+ .long 4177847879
+ .long 2117007332
+ .long 3889328657
+ .long 2167775995
+ .long 606555363
+ .long 2982943385
+ .long 4060728462
+ .long 4234014665
+ .long 3483690018
+ .long 40584695
+ .long 1213110727
+ .long 1670919475
+ .long 3826489629
+ .long 4173062034
+ .long 2672412741
+ .long 81169391
+ .long 2426221454
+ .long 3341838951
+ .long 3358011962
+ .long 4051156773
+ .long 1049858187
+ .long 162338783
+ .long 557475612
+ .long 2388710606
+ .long 2421056629
+ .long 3807346250
+ .long 2099716375
+ .long 324677567
+ .long 1114951224
+ .long 482453916
+ .long 547145963
+ .long 3319725204
+ .long 4199432751
+ .long 649355134
+ .long 2229902448
+ .long 964907833
+ .long 1094291926
+ .long 2344483112
+ .long 4103898207
+ .long 1298710268
+ .long 164837600
+ .long 1929815667
+ .long 2188583852
+ .long 393998928
+ .long 3912829119
+ .long 2597420537
+ .long 329675200
+ .long 3859631335
+ .long 82200408
+ .long 787997856
+ .long 3530690942
+ .long 899873778
+ .long 659350401
+ .long 3424295375
+ .long 164400817
+ .long 1575995713
+ .long 2766414588
+ .long 1799747556
+ .long 1318700802
+ .long 2553623455
+ .long 328801635
+ .long 3151991427
+ .long 1237861880
+ .long 3599495112
+ .long 2637401604
+ .long 812279614
+ .long 657603271
+ .long 2009015559
+ .long 2475723761
+ .long 2904022928
+ .long 979835913
+ .long 1624559229
+ .long 1315206542
+ .long 4018031118
+ .long 656480226
+ .long 1513078560
+ .long 1959671827
+ .long 3249118458
+ .long 2630413084
+ .long 3741094941
+ .long 1312960453
+ .long 3026157121
+ .long 3919343654
+ .long 2203269620
+ .long 965858873
+ .long 3187222587
+ .long 2625920907
+ .long 1757346946
+ .long 3543720013
+ .long 111571945
+ .long 1931717747
+ .long 2079477878
+ .long 956874519
+ .long 3514693892
+ .long 2792472730
+ .long 223143890
+ .long 3863435494
+ .long 4158955756
+ .long 1913749038
+ .long 2734420489
+ .long 1289978165
+ .long 446287780
+ .long 3431903692
+ .long 4022944216
+ .long 3827498077
+ .long 1173873683
+ .long 2579956331
+ .long 892575561
+ .long 2568840088
+ .long 3750921137
+ .long 3360028859
+ .long 2347747367
+ .long 864945366
+ .long 1785151123
+ .long 842712880
+ .long 3206874979
+ .long 2425090423
+ .long 400527438
+ .long 1729890733
+ .long 3570302247
+ .long 1685425760
+ .long 2118782663
+ .long 555213551
+ .long 801054876
+ .long 3459781466
+ .long 2845637198
+ .long 3370851521
+ .long 4237565327
+ .long 1110427102
+ .long 1602109753
+ .long 2624595636
+ .long 1396307100
+ .long 2446735747
+ .long 4180163359
+ .long 2220854205
+ .long 3204219507
+ .long 954223976
+ .long 2792614201
+ .long 598504198
+ .long 4065359423
+ .long 146741115
+ .long 2113471718
+ .long 1908447953
+ .long 1290261106
+ .long 1197008397
+ .long 3835751551
+ .long 293482231
+ .long 4226943436
+ .long 3816895906
+ .long 2580522212
+ .long 2394016794
+ .long 3376535807
+ .long 586964463
+ .long 4158919577
+ .long 3338824517
+ .long 866077128
+ .long 493066293
+ .long 2458104319
+ .long 1173928927
+ .long 4022871858
+ .long 2382681739
+ .long 1732154256
+ .long 986132586
+ .long 621241343
+ .long 2347857855
+ .long 3750776420
+ .long 470396183
+ .long 3464308513
+ .long 1972265172
+ .long 1242482686
+ .long 400748414
+ .long 3206585544
+ .long 940792367
+ .long 2633649730
+ .long 3944530345
+ .long 2484965372
+ .long 801496828
+ .long 2118203793
+ .long 1881584735
+ .long 972332164
+ .long 3594093395
+ .long 674963448
+ .long 1602993657
+ .long 4236407587
+ .long 3763169470
+ .long 1944664328
+ .long 2893219494
+ .long 1349926897
+ .long 3205987314
+ .long 4177847879
+ .long 3231371645
+ .long 3889328657
+ .long 1491471692
+ .long 2699853794
+ .long 2117007332
+ .long 4060728462
+ .long 2167775995
+ .long 3483690018
+ .long 2982943385
+ .long 1104740292
+ .long 4234014665
+ .long 3826489629
+ .long 40584695
+ .long 2672412741
+ .long 1670919475
+ .long 2209480585
+ .long 4173062034
+ .long 3358011962
+ .long 81169391
+ .long 1049858187
+ .long 3341838951
+ .long 123993874
+ .long 4051156773
+ .long 2421056629
+ .long 162338783
+ .long 2099716375
+ .long 2388710606
+ .long 247987749
+ .long 3807346250
+ .long 547145963
+ .long 324677567
+ .long 4199432751
+ .long 482453916
+ .long 495975499
+ .long 3319725204
+ .long 1094291926
+ .long 649355134
+ .long 4103898207
+ .long 964907833
+ .long 991950999
+ .long 2344483112
+ .long 2188583852
+ .long 1298710268
+ .long 3912829119
+ .long 1929815667
+ .long 1983901999
+ .long 393998928
+ .long 82200408
+ .long 2597420537
+ .long 3530690942
+ .long 3859631335
+ .long 3967803999
+ .long 787997856
+ .long 164400817
+ .long 899873778
+ .long 2766414588
+ .long 3424295375
+ .long 3640640703
+ .long 1575995713
+ .long 328801635
+ .long 1799747556
+ .long 1237861880
+ .long 2553623455
+ .long 2986314111
+ .long 3151991427
+ .long 657603271
+ .long 3599495112
+ .long 2475723761
+ .long 812279614
+ .long 1677660927
+ .long 2009015559
+ .long 1315206542
+ .long 2904022928
+ .long 656480226
+ .long 1624559229
+ .long 3355321855
+ .long 4018031118
+ .long 2630413084
+ .long 1513078560
+ .long 1312960453
+ .long 3249118458
+ .long 2415676415
+ .long 3741094941
+ .long 965858873
+ .long 3026157121
+ .long 2625920907
+ .long 2203269620
+ .long 536385535
+ .long 3187222587
+ .long 1931717747
+ .long 1757346946
+ .long 956874519
+ .long 111571945
+ .long 1072771071
+ .long 2079477878
+ .long 3863435494
+ .long 3514693892
+ .long 1913749038
+ .long 223143890
+ .long 2145542143
+ .long 4158955756
+ .long 3431903692
+ .long 2734420489
+ .long 3827498077
+ .long 446287780
+ .long 4291084286
+ .long 4022944216
+ .long 2568840088
+ .long 1173873683
+ .long 3360028859
+ .long 892575561
+ .long 4287201277
+ .long 3750921137
+ .long 842712880
+ .long 2347747367
+ .long 2425090423
+ .long 1785151123
+ .long 4279435259
+ .long 3206874979
+ .long 1685425760
+ .long 400527438
+ .long 555213551
+ .long 3570302247
+ .long 4263903223
+ .long 2118782663
+ .long 3370851521
+ .long 801054876
+ .long 1110427102
+ .long 2845637198
+ .long 4232839151
+ .long 4237565327
+ .long 2446735747
+ .long 1602109753
+ .long 2220854205
+ .long 1396307100
+ .long 4170711006
+ .long 4180163359
+ .long 598504198
+ .long 3204219507
+ .long 146741115
+ .long 2792614201
+ .long 4046454716
+ .long 4065359423
+ .long 1197008397
+ .long 2113471718
+ .long 293482231
+ .long 1290261106
+ .long 3797942136
+ .long 3835751551
+ .long 2394016794
+ .long 4226943436
+ .long 586964463
+ .long 2580522212
+ .long 3300916976
+ .long 3376535807
+ .long 493066293
+ .long 4158919577
+ .long 1173928927
+ .long 866077128
+ .long 2306866656
+ .long 2458104319
+ .long 986132586
+ .long 4022871858
+ .long 2347857855
+ .long 1732154256
+ .long 318766016
+ .long 621241343
+ .long 1972265172
+ .long 3750776420
+ .long 400748414
+ .long 3464308513
+ .long 637532033
+ .long 1242482686
+ .long 3944530345
+ .long 3206585544
+ .long 801496828
+ .long 2633649730
+ .long 1275064066
+ .long 2484965372
+ .long 3594093395
+ .long 2118203793
+ .long 1602993657
+ .long 972332164
+ .long 2550128133
+ .long 674963448
+ .long 2893219494
+ .long 4236407587
+ .long 3205987314
+ .long 1944664328
+ .long 805288971
+ .long 1349926897
+ .long 1491471692
+ .long 4177847879
+ .long 2117007332
+ .long 3889328657
+ .long 1610577942
+ .long 2699853794
+ .long 2982943385
+ .long 4060728462
+ .long 4234014665
+ .long 3483690018
+ .long 3221155884
+ .long 1104740292
+ .long 1670919475
+ .long 3826489629
+ .long 4173062034
+ .long 2672412741
+ .long 2147344473
+ .long 2209480585
+ .long 3341838951
+ .long 3358011962
+ .long 4051156773
+ .long 1049858187
+ .long 4294688947
+ .long 123993874
+ .long 2388710606
+ .long 2421056629
+ .long 3807346250
+ .long 2099716375
+ .long 4294410598
+ .long 247987749
+ .long 482453916
+ .long 547145963
+ .long 3319725204
+ .long 4199432751
+ .long 4293853900
+ .long 495975499
+ .long 964907833
+ .long 1094291926
+ .long 2344483112
+ .long 4103898207
+ .long 4292740504
+ .long 991950999
+ .long 1929815667
+ .long 2188583852
+ .long 393998928
+ .long 3912829119
+ .long 4290513712
+ .long 1983901999
+ .long 3859631335
+ .long 82200408
+ .long 787997856
+ .long 3530690942
+ .long 4286060128
+ .long 3967803999
+ .long 3424295375
+ .long 164400817
+ .long 1575995713
+ .long 2766414588
+ .long 4277152960
+ .long 3640640703
+ .long 2553623455
+ .long 328801635
+ .long 3151991427
+ .long 1237861880
+ .long 4259338624
+ .long 2986314111
+ .long 812279614
+ .long 657603271
+ .long 2009015559
+ .long 2475723761
+ .long 4223709953
+ .long 1677660927
+ .long 1624559229
+ .long 1315206542
+ .long 4018031118
+ .long 656480226
+ .long 4152452611
+ .long 3355321855
+ .long 3249118458
+ .long 2630413084
+ .long 3741094941
+ .long 1312960453
+ .long 4009937927
+ .long 2415676415
+ .long 2203269620
+ .long 965858873
+ .long 3187222587
+ .long 2625920907
+ .long 3724908559
+ .long 536385535
+ .long 111571945
+ .long 1931717747
+ .long 2079477878
+ .long 956874519
+ .long 3154849823
+ .long 1072771071
+ .long 223143890
+ .long 3863435494
+ .long 4158955756
+ .long 1913749038
+ .long 2014732351
+ .long 2145542143
+ .long 446287780
+ .long 3431903692
+ .long 4022944216
+ .long 3827498077
+ .long 4029464703
+ .long 4291084286
+ .long 892575561
+ .long 2568840088
+ .long 3750921137
+ .long 3360028859
+ .long 3763962110
+ .long 4287201277
+ .long 1785151123
+ .long 842712880
+ .long 3206874979
+ .long 2425090423
+ .long 3232956925
+ .long 4279435259
+ .long 3570302247
+ .long 1685425760
+ .long 2118782663
+ .long 555213551
+ .long 2170946555
+ .long 4263903223
+ .long 2845637198
+ .long 3370851521
+ .long 4237565327
+ .long 1110427102
+ .long 46925815
+ .long 4232839151
+ .long 1396307100
+ .long 2446735747
+ .long 4180163359
+ .long 2220854205
+ .long 93851631
+ .long 4170711006
+ .long 2792614201
+ .long 598504198
+ .long 4065359423
+ .long 146741115
+ .long 187703262
+ .long 4046454716
+ .long 1290261106
+ .long 1197008397
+ .long 3835751551
+ .long 293482231
+ .long 375406524
+ .long 3797942136
+ .long 2580522212
+ .long 2394016794
+ .long 3376535807
+ .long 586964463
+ .long 750813049
+ .long 3300916976
+ .long 866077128
+ .long 493066293
+ .long 2458104319
+ .long 1173928927
+ .long 1501626098
+ .long 2306866656
+ .long 1732154256
+ .long 986132586
+ .long 621241343
+ .long 2347857855
+ .long 3003252197
+ .long 318766016
+ .long 3464308513
+ .long 1972265172
+ .long 1242482686
+ .long 400748414
+ .long 1711537099
+ .long 637532033
+ .long 2633649730
+ .long 3944530345
+ .long 2484965372
+ .long 801496828
+ .long 3423074199
+ .long 1275064066
+ .long 972332164
+ .long 3594093395
+ .long 674963448
+ .long 1602993657
+ .long 2551181103
+ .long 2550128133
+ .long 1944664328
+ .long 2893219494
+ .long 1349926897
+ .long 3205987314
+ .long 807394910
+ .long 805288971
+ .long 3889328657
+ .long 1491471692
+ .long 2699853794
+ .long 2117007332
+ .long 1614789820
+ .long 1610577942
+ .long 3483690018
+ .long 2982943385
+ .long 1104740292
+ .long 4234014665
+ .long 3229579640
+ .long 3221155884
+ .long 2672412741
+ .long 1670919475
+ .long 2209480585
+ .long 4173062034
+ .long 2164191985
+ .long 2147344473
+ .long 1049858187
+ .long 3341838951
+ .long 123993874
+ .long 4051156773
+ .long 33416674
+ .long 4294688947
+ .long 2099716375
+ .long 2388710606
+ .long 247987749
+ .long 3807346250
+ .long 66833348
+ .long 4294410598
+ .long 4199432751
+ .long 482453916
+ .long 495975499
+ .long 3319725204
+ .long 133666696
+ .long 4293853900
+ .long 4103898207
+ .long 964907833
+ .long 991950999
+ .long 2344483112
+ .long 267333393
+ .long 4292740504
+ .long 3912829119
+ .long 1929815667
+ .long 1983901999
+ .long 393998928
+ .long 534666787
+ .long 4290513712
+ .long 3530690942
+ .long 3859631335
+ .long 3967803999
+ .long 787997856
+ .long 1069333574
+ .long 4286060128
+ .long 2766414588
+ .long 3424295375
+ .long 3640640703
+ .long 1575995713
+ .long 2138667148
+ .long 4277152960
+ .long 1237861880
+ .long 2553623455
+ .long 2986314111
+ .long 3151991427
+ .long 4277334296
+ .long 4259338624
+ .long 2475723761
+ .long 812279614
+ .long 1677660927
+ .long 2009015559
+ .long 4259701297
+ .long 4223709953
+ .long 656480226
+ .long 1624559229
+ .long 3355321855
+ .long 4018031118
+ .long 4224435298
+ .long 4152452611
+ .long 1312960453
+ .long 3249118458
+ .long 2415676415
+ .long 3741094941
+ .long 4153903301
+ .long 4009937927
+ .long 2625920907
+ .long 2203269620
+ .long 536385535
+ .long 3187222587
+ .long 4012839307
+ .long 3724908559
+ .long 956874519
+ .long 111571945
+ .long 1072771071
+ .long 2079477878
+ .long 3730711318
+ .long 3154849823
+ .long 1913749038
+ .long 223143890
+ .long 2145542143
+ .long 4158955756
+ .long 3166455341
+ .long 2014732351
+ .long 3827498077
+ .long 446287780
+ .long 4291084286
+ .long 4022944216
+ .long 2037943386
+ .long 4029464703
+ .long 3360028859
+ .long 892575561
+ .long 4287201277
+ .long 3750921137
+ .long 4075886773
+ .long 3763962110
+ .long 2425090423
+ .long 1785151123
+ .long 4279435259
+ .long 3206874979
+ .long 3856806251
+ .long 3232956925
+ .long 555213551
+ .long 3570302247
+ .long 4263903223
+ .long 2118782663
+ .long 3418645206
+ .long 2170946555
+ .long 1110427102
+ .long 2845637198
+ .long 4232839151
+ .long 4237565327
+ .long 2542323117
+ .long 46925815
+ .long 2220854205
+ .long 1396307100
+ .long 4170711006
+ .long 4180163359
+ .long 789678938
+ .long 93851631
+ .long 146741115
+ .long 2792614201
+ .long 4046454716
+ .long 4065359423
+ .long 1579357876
+ .long 187703262
+ .long 293482231
+ .long 1290261106
+ .long 3797942136
+ .long 3835751551
+ .long 3158715752
+ .long 375406524
+ .long 586964463
+ .long 2580522212
+ .long 3300916976
+ .long 3376535807
+ .long 2022464208
+ .long 750813049
+ .long 1173928927
+ .long 866077128
+ .long 2306866656
+ .long 2458104319
+ .long 4044928416
+ .long 1501626098
+ .long 2347857855
+ .long 1732154256
+ .long 318766016
+ .long 621241343
+ .long 3794889537
+ .long 3003252197
+ .long 400748414
+ .long 3464308513
+ .long 637532033
+ .long 1242482686
+ .long 3294811778
+ .long 1711537099
+ .long 801496828
+ .long 2633649730
+ .long 1275064066
+ .long 2484965372
+ .long 2294656261
+ .long 3423074199
+ .long 1602993657
+ .long 972332164
+ .long 2550128133
+ .long 674963448
+ .long 294345226
+ .long 2551181103
+ .long 3205987314
+ .long 1944664328
+ .long 805288971
+ .long 1349926897
+ .long 588690452
+ .long 807394910
+ .long 2117007332
+ .long 3889328657
+ .long 1610577942
+ .long 2699853794
+ .long 1177380905
+ .long 1614789820
+ .long 4234014665
+ .long 3483690018
+ .long 3221155884
+ .long 1104740292
+ .long 2354761811
+ .long 3229579640
+ .long 4173062034
+ .long 2672412741
+ .long 2147344473
+ .long 2209480585
+ .long 414556326
+ .long 2164191985
+ .long 4051156773
+ .long 1049858187
+ .long 4294688947
+ .long 123993874
+ .long 829112653
+ .long 33416674
+ .long 3807346250
+ .long 2099716375
+ .long 4294410598
+ .long 247987749
+ .long 1658225307
+ .long 66833348
+ .long 3319725204
+ .long 4199432751
+ .long 4293853900
+ .long 495975499
+ .long 3316450614
+ .long 133666696
+ .long 2344483112
+ .long 4103898207
+ .long 4292740504
+ .long 991950999
+ .long 2337933933
+ .long 267333393
+ .long 393998928
+ .long 3912829119
+ .long 4290513712
+ .long 1983901999
+ .long 380900570
+ .long 534666787
+ .long 787997856
+ .long 3530690942
+ .long 4286060128
+ .long 3967803999
+ .long 761801140
+ .long 1069333574
+ .long 1575995713
+ .long 2766414588
+ .long 4277152960
+ .long 3640640703
+ .long 1523602280
+ .long 2138667148
+ .long 3151991427
+ .long 1237861880
+ .long 4259338624
+ .long 2986314111
+ .long 3047204561
+ .long 4277334296
+ .long 2009015559
+ .long 2475723761
+ .long 4223709953
+ .long 1677660927
+ .long 1799441827
+ .long 4259701297
+ .long 4018031118
+ .long 656480226
+ .long 4152452611
+ .long 3355321855
+ .long 3598883655
+ .long 4224435298
+ .long 3741094941
+ .long 1312960453
+ .long 4009937927
+ .long 2415676415
+ .long 2902800015
+ .long 4153903301
+ .long 3187222587
+ .long 2625920907
+ .long 3724908559
+ .long 536385535
+ .long 1510632735
+ .long 4012839307
+ .long 2079477878
+ .long 956874519
+ .long 3154849823
+ .long 1072771071
+ .long 3021265470
+ .long 3730711318
+ .long 4158955756
+ .long 1913749038
+ .long 2014732351
+ .long 2145542143
+ .long 1747563645
+ .long 3166455341
+ .long 4022944216
+ .long 3827498077
+ .long 4029464703
+ .long 4291084286
+ .long 3495127291
+ .long 2037943386
+ .long 3750921137
+ .long 3360028859
+ .long 3763962110
+ .long 4287201277
+ .long 2695287286
+ .long 4075886773
+ .long 3206874979
+ .long 2425090423
+ .long 3232956925
+ .long 4279435259
+ .long 1095607277
+ .long 3856806251
+ .long 2118782663
+ .long 555213551
+ .long 2170946555
+ .long 4263903223
+ .long 2191214555
+ .long 3418645206
+ .long 4237565327
+ .long 1110427102
+ .long 46925815
+ .long 4232839151
+ .long 87461814
+ .long 2542323117
+ .long 4180163359
+ .long 2220854205
+ .long 93851631
+ .long 4170711006
+ .long 174923629
+ .long 789678938
+ .long 4065359423
+ .long 146741115
+ .long 187703262
+ .long 4046454716
+ .long 349847258
+ .long 1579357876
+ .long 3835751551
+ .long 293482231
+ .long 375406524
+ .long 3797942136
+ .long 699694516
+ .long 3158715752
+ .long 3376535807
+ .long 586964463
+ .long 750813049
+ .long 3300916976
+ .long 1399389033
+ .long 2022464208
+ .long 2458104319
+ .long 1173928927
+ .long 1501626098
+ .long 2306866656
+ .long 2798778067
+ .long 4044928416
+ .long 621241343
+ .long 2347857855
+ .long 3003252197
+ .long 318766016
+ .long 1302588838
+ .long 3794889537
+ .long 1242482686
+ .long 400748414
+ .long 1711537099
+ .long 637532033
+ .long 2605177677
+ .long 3294811778
+ .long 2484965372
+ .long 801496828
+ .long 3423074199
+ .long 1275064066
+ .long 915388059
+ .long 2294656261
+ .long 674963448
+ .long 1602993657
+ .long 2551181103
+ .long 2550128133
+ .long 1830776118
+ .long 294345226
+ .long 1349926897
+ .long 3205987314
+ .long 807394910
+ .long 805288971
+ .long 3661552236
+ .long 588690452
+ .long 2699853794
+ .long 2117007332
+ .long 1614789820
+ .long 1610577942
+ .long 3028137177
+ .long 1177380905
+ .long 1104740292
+ .long 4234014665
+ .long 3229579640
+ .long 3221155884
+ .long 1761307059
+ .long 2354761811
+ .long 2209480585
+ .long 4173062034
+ .long 2164191985
+ .long 2147344473
+ .long 3522614119
+ .long 414556326
+ .long 123993874
+ .long 4051156773
+ .long 33416674
+ .long 4294688947
+ .long 2750260943
+ .long 829112653
+ .long 247987749
+ .long 3807346250
+ .long 66833348
+ .long 4294410598
+ .long 1205554591
+ .long 1658225307
+ .long 495975499
+ .long 3319725204
+ .long 133666696
+ .long 4293853900
+ .long 2411109183
+ .long 3316450614
+ .long 991950999
+ .long 2344483112
+ .long 267333393
+ .long 4292740504
+ .long 527251070
+ .long 2337933933
+ .long 1983901999
+ .long 393998928
+ .long 534666787
+ .long 4290513712
+ .long 1054502141
+ .long 380900570
+ .long 3967803999
+ .long 787997856
+ .long 1069333574
+ .long 4286060128
+ .long 2109004283
+ .long 761801140
+ .long 3640640703
+ .long 1575995713
+ .long 2138667148
+ .long 4277152960
+ .long 4218008566
+ .long 1523602280
+ .long 2986314111
+ .long 3151991427
+ .long 4277334296
+ .long 4259338624
+ .long 4141049836
+ .long 3047204561
+ .long 1677660927
+ .long 2009015559
+ .long 4259701297
+ .long 4223709953
+ .long 3987132377
+ .long 1799441827
+ .long 3355321855
+ .long 4018031118
+ .long 4224435298
+ .long 4152452611
+ .long 3679297459
+ .long 3598883655
+ .long 2415676415
+ .long 3741094941
+ .long 4153903301
+ .long 4009937927
+ .long 3063627623
+ .long 2902800015
+ .long 536385535
+ .long 3187222587
+ .long 4012839307
+ .long 3724908559
+ .long 1832287951
+ .long 1510632735
+ .long 1072771071
+ .long 2079477878
+ .long 3730711318
+ .long 3154849823
+ .long 3664575902
+ .long 3021265470
+ .long 2145542143
+ .long 4158955756
+ .long 3166455341
+ .long 2014732351
+ .long 3034184508
+ .long 1747563645
+ .long 4291084286
+ .long 4022944216
+ .long 2037943386
+ .long 4029464703
+ .long 1773401721
+ .long 3495127291
+ .long 4287201277
+ .long 3750921137
+ .long 4075886773
+ .long 3763962110
+ .long 3546803442
+ .long 2695287286
+ .long 4279435259
+ .long 3206874979
+ .long 3856806251
+ .long 3232956925
+ .long 2798639588
+ .long 1095607277
+ .long 4263903223
+ .long 2118782663
+ .long 3418645206
+ .long 2170946555
+ .long 1302311881
+ .long 2191214555
+ .long 4232839151
+ .long 4237565327
+ .long 2542323117
+ .long 46925815
+ .long 2604623763
+ .long 87461814
+ .long 4170711006
+ .long 4180163359
+ .long 789678938
+ .long 93851631
+ .long 914280231
+ .long 174923629
+ .long 4046454716
+ .long 4065359423
+ .long 1579357876
+ .long 187703262
+ .long 1828560463
+ .long 349847258
+ .long 3797942136
+ .long 3835751551
+ .long 3158715752
+ .long 375406524
+ .long 3657120927
+ .long 699694516
+ .long 3300916976
+ .long 3376535807
+ .long 2022464208
+ .long 750813049
+ .long 3019274558
+ .long 1399389033
+ .long 2306866656
+ .long 2458104319
+ .long 4044928416
+ .long 1501626098
+ .long 1743581820
+ .long 2798778067
+ .long 318766016
+ .long 621241343
+ .long 3794889537
+ .long 3003252197
+ .long 3487163641
+ .long 1302588838
+ .long 637532033
+ .long 1242482686
+ .long 3294811778
+ .long 1711537099
+ .long 2679359986
+ .long 2605177677
+ .long 1275064066
+ .long 2484965372
+ .long 2294656261
+ .long 3423074199
+ .long 1063752677
+ .long 915388059
+ .long 2550128133
+ .long 674963448
+ .long 294345226
+ .long 2551181103
+ .long 2127505355
+ .long 1830776118
+ .long 805288971
+ .long 1349926897
+ .long 588690452
+ .long 807394910
+ .long 4255010710
+ .long 3661552236
+ .long 1610577942
+ .long 2699853794
+ .long 1177380905
+ .long 1614789820
+ .long 4215054124
+ .long 3028137177
+ .long 3221155884
+ .long 1104740292
+ .long 2354761811
+ .long 3229579640
+ .long 4135140952
+ .long 1761307059
+ .long 2147344473
+ .long 2209480585
+ .long 414556326
+ .long 2164191985
+ .long 3975314608
+ .long 3522614119
+ .long 4294688947
+ .long 123993874
+ .long 829112653
+ .long 33416674
+ .long 3655661921
+ .long 2750260943
+ .long 4294410598
+ .long 247987749
+ .long 1658225307
+ .long 66833348
+ .long 3016356546
+ .long 1205554591
+ .long 4293853900
+ .long 495975499
+ .long 3316450614
+ .long 133666696
+ .long 1737745796
+ .long 2411109183
+ .long 4292740504
+ .long 991950999
+ .long 2337933933
+ .long 267333393
+ .long 3475491593
+ .long 527251070
+ .long 4290513712
+ .long 1983901999
+ .long 380900570
+ .long 534666787
+ .long 2656015891
+ .long 1054502141
+ .long 4286060128
+ .long 3967803999
+ .long 761801140
+ .long 1069333574
+ .long 1017064486
+ .long 2109004283
+ .long 4277152960
+ .long 3640640703
+ .long 1523602280
+ .long 2138667148
+ .long 2034128973
+ .long 4218008566
+ .long 4259338624
+ .long 2986314111
+ .long 3047204561
+ .long 4277334296
+ .long 4068257947
+ .long 4141049836
+ .long 4223709953
+ .long 1677660927
+ .long 1799441827
+ .long 4259701297
+ .long 3841548598
+ .long 3987132377
+ .long 4152452611
+ .long 3355321855
+ .long 3598883655
+ .long 4224435298
+ .long 3388129901
+ .long 3679297459
+ .long 4009937927
+ .long 2415676415
+ .long 2902800015
+ .long 4153903301
+ .long 2481292507
+ .long 3063627623
+ .long 3724908559
+ .long 536385535
+ .long 1510632735
+ .long 4012839307
+ .long 667617719
+ .long 1832287951
+ .long 3154849823
+ .long 1072771071
+ .long 3021265470
+ .long 3730711318
+ .long 1335235438
+ .long 3664575902
+ .long 2014732351
+ .long 2145542143
+ .long 1747563645
+ .long 3166455341
+ .long 2670470877
+ .long 3034184508
+ .long 4029464703
+ .long 4291084286
+ .long 3495127291
+ .long 2037943386
+ .long 1045974458
+ .long 1773401721
+ .long 3763962110
+ .long 4287201277
+ .long 2695287286
+ .long 4075886773
+ .long 2091948916
+ .long 3546803442
+ .long 3232956925
+ .long 4279435259
+ .long 1095607277
+ .long 3856806251
+ .long 4183897833
+ .long 2798639588
+ .long 2170946555
+ .long 4263903223
+ .long 2191214555
+ .long 3418645206
+ .long 4072828371
+ .long 1302311881
+ .long 46925815
+ .long 4232839151
+ .long 87461814
+ .long 2542323117
+ .long 3850689447
+ .long 2604623763
+ .long 93851631
+ .long 4170711006
+ .long 174923629
+ .long 789678938
+ .long 3406411599
+ .long 914280231
+ .long 187703262
+ .long 4046454716
+ .long 349847258
+ .long 1579357876
+ .long 2517855902
+ .long 1828560463
+ .long 375406524
+ .long 3797942136
+ .long 699694516
+ .long 3158715752
+ .long 740744509
+ .long 3657120927
+ .long 750813049
+ .long 3300916976
+ .long 1399389033
+ .long 2022464208
+ .long 1481489018
+ .long 3019274558
+ .long 1501626098
+ .long 2306866656
+ .long 2798778067
+ .long 4044928416
+ .long 2962978036
+ .long 1743581820
+ .long 3003252197
+ .long 318766016
+ .long 1302588838
+ .long 3794889537
+ .long 1630988776
+ .long 3487163641
+ .long 1711537099
+ .long 637532033
+ .long 2605177677
+ .long 3294811778
+ .long 3261977553
+ .long 2679359986
+ .long 3423074199
+ .long 1275064066
+ .long 915388059
+ .long 2294656261
+ .long 2228987811
+ .long 1063752677
+ .long 2551181103
+ .long 2550128133
+ .long 1830776118
+ .long 294345226
+ .long 163008326
+ .long 2127505355
+ .long 807394910
+ .long 805288971
+ .long 3661552236
+ .long 588690452
+ .long 326016652
+ .long 4255010710
+ .long 1614789820
+ .long 1610577942
+ .long 3028137177
+ .long 1177380905
+ .long 652033304
+ .long 4215054124
+ .long 3229579640
+ .long 3221155884
+ .long 1761307059
+ .long 2354761811
+ .long 1304066609
+ .long 4135140952
+ .long 2164191985
+ .long 2147344473
+ .long 3522614119
+ .long 414556326
+ .long 2608133219
+ .long 3975314608
+ .long 33416674
+ .long 4294688947
+ .long 2750260943
+ .long 829112653
+ .long 921299143
+ .long 3655661921
+ .long 66833348
+ .long 4294410598
+ .long 1205554591
+ .long 1658225307
+ .long 1842598287
+ .long 3016356546
+ .long 133666696
+ .long 4293853900
+ .long 2411109183
+ .long 3316450614
+ .long 3685196575
+ .long 1737745796
+ .long 267333393
+ .long 4292740504
+ .long 527251070
+ .long 2337933933
+ .long 3075425855
+ .long 3475491593
+ .long 534666787
+ .long 4290513712
+ .long 1054502141
+ .long 380900570
+ .long 1855884414
+ .long 2656015891
+ .long 1069333574
+ .long 4286060128
+ .long 2109004283
+ .long 761801140
+ .long 3711768829
+ .long 1017064486
+ .long 2138667148
+ .long 4277152960
+ .long 4218008566
+ .long 1523602280
+ .long 3128570363
+ .long 2034128973
+ .long 4277334296
+ .long 4259338624
+ .long 4141049836
+ .long 3047204561
+ .long 1962173430
+ .long 4068257947
+ .long 4259701297
+ .long 4223709953
+ .long 3987132377
+ .long 1799441827
+ .long 3924346860
+ .long 3841548598
+ .long 4224435298
+ .long 4152452611
+ .long 3679297459
+ .long 3598883655
+ .long 3553726425
+ .long 3388129901
+ .long 4153903301
+ .long 4009937927
+ .long 3063627623
+ .long 2902800015
+ .long 2812485555
+ .long 2481292507
+ .long 4012839307
+ .long 3724908559
+ .long 1832287951
+ .long 1510632735
+ .long 1330003814
+ .long 667617719
+ .long 3730711318
+ .long 3154849823
+ .long 3664575902
+ .long 3021265470
+ .long 2660007629
+ .long 1335235438
+ .long 3166455341
+ .long 2014732351
+ .long 3034184508
+ .long 1747563645
+ .long 1025047962
+ .long 2670470877
+ .long 2037943386
+ .long 4029464703
+ .long 1773401721
+ .long 3495127291
+ .long 2050095924
+ .long 1045974458
+ .long 4075886773
+ .long 3763962110
+ .long 3546803442
+ .long 2695287286
+ .long 4100191849
+ .long 2091948916
+ .long 3856806251
+ .long 3232956925
+ .long 2798639588
+ .long 1095607277
+ .long 3905416403
+ .long 4183897833
+ .long 3418645206
+ .long 2170946555
+ .long 1302311881
+ .long 2191214555
+ .long 3515865511
+ .long 4072828371
+ .long 2542323117
+ .long 46925815
+ .long 2604623763
+ .long 87461814
+ .long 2736763727
+ .long 3850689447
+ .long 789678938
+ .long 93851631
+ .long 914280231
+ .long 174923629
+ .long 1178560158
+ .long 3406411599
+ .long 1579357876
+ .long 187703262
+ .long 1828560463
+ .long 349847258
+ .long 2357120316
+ .long 2517855902
+ .long 3158715752
+ .long 375406524
+ .long 3657120927
+ .long 699694516
+ .long 419273337
+ .long 740744509
+ .long 2022464208
+ .long 750813049
+ .long 3019274558
+ .long 1399389033
+ .long 838546674
+ .long 1481489018
+ .long 4044928416
+ .long 1501626098
+ .long 1743581820
+ .long 2798778067
+ .long 1677093349
+ .long 2962978036
+ .long 3794889537
+ .long 3003252197
+ .long 3487163641
+ .long 1302588838
+ .long 3354186699
+ .long 1630988776
+ .long 3294811778
+ .long 1711537099
+ .long 2679359986
+ .long 2605177677
+ .long 2413406103
+ .long 3261977553
+ .long 2294656261
+ .long 3423074199
+ .long 1063752677
+ .long 915388059
+ .long 531844911
+ .long 2228987811
+ .long 294345226
+ .long 2551181103
+ .long 2127505355
+ .long 1830776118
+ .long 1063689823
+ .long 163008326
+ .long 588690452
+ .long 807394910
+ .long 4255010710
+ .long 3661552236
+ .long 2127379647
+ .long 326016652
+ .long 1177380905
+ .long 1614789820
+ .long 4215054124
+ .long 3028137177
+ .long 4254759295
+ .long 652033304
+ .long 2354761811
+ .long 3229579640
+ .long 4135140952
+ .long 1761307059
+ .long 4214551295
+ .long 1304066609
+ .long 414556326
+ .long 2164191985
+ .long 3975314608
+ .long 3522614119
+ .long 4134135294
+ .long 2608133219
+ .long 829112653
+ .long 33416674
+ .long 3655661921
+ .long 2750260943
+ .long 3973303293
+ .long 921299143
+ .long 1658225307
+ .long 66833348
+ .long 3016356546
+ .long 1205554591
+ .long 3651639290
+ .long 1842598287
+ .long 3316450614
+ .long 133666696
+ .long 1737745796
+ .long 2411109183
+ .long 3008311285
+ .long 3685196575
+ .long 2337933933
+ .long 267333393
+ .long 3475491593
+ .long 527251070
+ .long 1721655274
+ .long 3075425855
+ .long 380900570
+ .long 534666787
+ .long 2656015891
+ .long 1054502141
+ .long 3443310548
+ .long 1855884414
+ .long 761801140
+ .long 1069333574
+ .long 1017064486
+ .long 2109004283
+ .long 2591653800
+ .long 3711768829
+ .long 1523602280
+ .long 2138667148
+ .long 2034128973
+ .long 4218008566
+ .long 888340305
+ .long 3128570363
+ .long 3047204561
+ .long 4277334296
+ .long 4068257947
+ .long 4141049836
+ .long 1776680610
+ .long 1962173430
+ .long 1799441827
+ .long 4259701297
+ .long 3841548598
+ .long 3987132377
+ .long 3553361221
+ .long 3924346860
+ .long 3598883655
+ .long 4224435298
+ .long 3388129901
+ .long 3679297459
+ .long 2811755147
+ .long 3553726425
+ .long 2902800015
+ .long 4153903301
+ .long 2481292507
+ .long 3063627623
+ .long 1328542998
+ .long 2812485555
+ .long 1510632735
+ .long 4012839307
+ .long 667617719
+ .long 1832287951
+ .long 2657085997
+ .long 1330003814
+ .long 3021265470
+ .long 3730711318
+ .long 1335235438
+ .long 3664575902
+ .long 1019204698
+ .long 2660007629
+ .long 1747563645
+ .long 3166455341
+ .long 2670470877
+ .long 3034184508
+ .long 2038409397
+ .long 1025047962
+ .long 3495127291
+ .long 2037943386
+ .long 1045974458
+ .long 1773401721
+ .long 4076818795
+ .long 2050095924
+ .long 2695287286
+ .long 4075886773
+ .long 2091948916
+ .long 3546803442
+ .long 3858670295
+ .long 4100191849
+ .long 1095607277
+ .long 3856806251
+ .long 4183897833
+ .long 2798639588
+ .long 3422373294
+ .long 3905416403
+ .long 2191214555
+ .long 3418645206
+ .long 4072828371
+ .long 1302311881
+ .long 2549779293
+ .long 3515865511
+ .long 87461814
+ .long 2542323117
+ .long 3850689447
+ .long 2604623763
+ .long 804591290
+ .long 2736763727
+ .long 174923629
+ .long 789678938
+ .long 3406411599
+ .long 914280231
+ .long 1609182581
+ .long 1178560158
+ .long 349847258
+ .long 1579357876
+ .long 2517855902
+ .long 1828560463
+ .long 3218365162
+ .long 2357120316
+ .long 699694516
+ .long 3158715752
+ .long 740744509
+ .long 3657120927
+ .long 2141763028
+ .long 419273337
+ .long 1399389033
+ .long 2022464208
+ .long 1481489018
+ .long 3019274558
+ .long 4283526057
+ .long 838546674
+ .long 2798778067
+ .long 4044928416
+ .long 2962978036
+ .long 1743581820
+ .long 4272084818
+ .long 1677093349
+ .long 1302588838
+ .long 3794889537
+ .long 1630988776
+ .long 3487163641
+ .long 4249202340
+ .long 3354186699
+ .long 2605177677
+ .long 3294811778
+ .long 3261977553
+ .long 2679359986
+ .long 4203437385
+ .long 2413406103
+ .long 915388059
+ .long 2294656261
+ .long 2228987811
+ .long 1063752677
+ .long 4111907475
+ .long 531844911
+ .long 1830776118
+ .long 294345226
+ .long 163008326
+ .long 2127505355
+ .long 3928847655
+ .long 1063689823
+ .long 3661552236
+ .long 588690452
+ .long 326016652
+ .long 4255010710
+ .long 3562728015
+ .long 2127379647
+ .long 3028137177
+ .long 1177380905
+ .long 652033304
+ .long 4215054124
+ .long 2830488734
+ .long 4254759295
+ .long 1761307059
+ .long 2354761811
+ .long 1304066609
+ .long 4135140952
+ .long 1366010173
+ .long 4214551295
+ .long 3522614119
+ .long 414556326
+ .long 2608133219
+ .long 3975314608
+ .long 2732020347
+ .long 4134135294
+ .long 2750260943
+ .long 829112653
+ .long 921299143
+ .long 3655661921
+ .long 1169073399
+ .long 3973303293
+ .long 1205554591
+ .long 1658225307
+ .long 1842598287
+ .long 3016356546
+ .long 2338146798
+ .long 3651639290
+ .long 2411109183
+ .long 3316450614
+ .long 3685196575
+ .long 1737745796
+ .long 381326301
+ .long 3008311285
+ .long 527251070
+ .long 2337933933
+ .long 3075425855
+ .long 3475491593
+ .long 762652602
+ .long 1721655274
+ .long 1054502141
+ .long 380900570
+ .long 1855884414
+ .long 2656015891
+ .long 1525305205
+ .long 3443310548
+ .long 2109004283
+ .long 761801140
+ .long 3711768829
+ .long 1017064486
+ .long 3050610411
+ .long 2591653800
+ .long 4218008566
+ .long 1523602280
+ .long 3128570363
+ .long 2034128973
+ .long 1806253526
+ .long 888340305
+ .long 4141049836
+ .long 3047204561
+ .long 1962173430
+ .long 4068257947
+ .long 3612507052
+ .long 1776680610
+ .long 3987132377
+ .long 1799441827
+ .long 3924346860
+ .long 3841548598
+ .long 2930046808
+ .long 3553361221
+ .long 3679297459
+ .long 3598883655
+ .long 3553726425
+ .long 3388129901
+ .long 1565126321
+ .long 2811755147
+ .long 3063627623
+ .long 2902800015
+ .long 2812485555
+ .long 2481292507
+ .long 3130252643
+ .long 1328542998
+ .long 1832287951
+ .long 1510632735
+ .long 1330003814
+ .long 667617719
+ .long 1965537991
+ .long 2657085997
+ .long 3664575902
+ .long 3021265470
+ .long 2660007629
+ .long 1335235438
+ .long 3931075983
+ .long 1019204698
+ .long 3034184508
+ .long 1747563645
+ .long 1025047962
+ .long 2670470877
+ .long 3567184671
+ .long 2038409397
+ .long 1773401721
+ .long 3495127291
+ .long 2050095924
+ .long 1045974458
+ .long 2839402047
+ .long 4076818795
+ .long 3546803442
+ .long 2695287286
+ .long 4100191849
+ .long 2091948916
+ .long 1383836798
+ .long 3858670295
+ .long 2798639588
+ .long 1095607277
+ .long 3905416403
+ .long 4183897833
+ .long 2767673597
+ .long 3422373294
+ .long 1302311881
+ .long 2191214555
+ .long 3515865511
+ .long 4072828371
+ .long 1240379898
+ .long 2549779293
+ .long 2604623763
+ .long 87461814
+ .long 2736763727
+ .long 3850689447
+ .long 2480759797
+ .long 804591290
+ .long 914280231
+ .long 174923629
+ .long 1178560158
+ .long 3406411599
+ .long 666552299
+ .long 1609182581
+ .long 1828560463
+ .long 349847258
+ .long 2357120316
+ .long 2517855902
+ .long 1333104599
+ .long 3218365162
+ .long 3657120927
+ .long 699694516
+ .long 419273337
+ .long 740744509
+ .long 2666209199
+ .long 2141763028
+ .long 3019274558
+ .long 1399389033
+ .long 838546674
+ .long 1481489018
+ .long 1037451103
+ .long 4283526057
+ .long 1743581820
+ .long 2798778067
+ .long 1677093349
+ .long 2962978036
+ .long 2074902206
+ .long 4272084818
+ .long 3487163641
+ .long 1302588838
+ .long 3354186699
+ .long 1630988776
+ .long 4149804412
+ .long 4249202340
+ .long 2679359986
+ .long 2605177677
+ .long 2413406103
+ .long 3261977553
+ .long 4004641529
+ .long 4203437385
+ .long 1063752677
+ .long 915388059
+ .long 531844911
+ .long 2228987811
+ .long 3714315762
+ .long 4111907475
+ .long 2127505355
+ .long 1830776118
+ .long 1063689823
+ .long 163008326
+ .long 3133664229
+ .long 3928847655
+ .long 4255010710
+ .long 3661552236
+ .long 2127379647
+ .long 326016652
+ .long 1972361163
+ .long 3562728015
+ .long 4215054124
+ .long 3028137177
+ .long 4254759295
+ .long 652033304
+ .long 3944722327
+ .long 2830488734
+ .long 4135140952
+ .long 1761307059
+ .long 4214551295
+ .long 1304066609
+ .long 3594477359
+ .long 1366010173
+ .long 3975314608
+ .long 3522614119
+ .long 4134135294
+ .long 2608133219
+ .long 2893987423
+ .long 2732020347
+ .long 3655661921
+ .long 2750260943
+ .long 3973303293
+ .long 921299143
+ .long 1493007550
+ .long 1169073399
+ .long 3016356546
+ .long 1205554591
+ .long 3651639290
+ .long 1842598287
+ .long 2986015100
+ .long 2338146798
+ .long 1737745796
+ .long 2411109183
+ .long 3008311285
+ .long 3685196575
+ .long 1677062904
+ .long 381326301
+ .long 3475491593
+ .long 527251070
+ .long 1721655274
+ .long 3075425855
+ .long 3354125809
+ .long 762652602
+ .long 2656015891
+ .long 1054502141
+ .long 3443310548
+ .long 1855884414
+ .long 2413284322
+ .long 1525305205
+ .long 1017064486
+ .long 2109004283
+ .long 2591653800
+ .long 3711768829
+ .long 531601349
+ .long 3050610411
+ .long 2034128973
+ .long 4218008566
+ .long 888340305
+ .long 3128570363
+ .long 1063202699
+ .long 1806253526
+ .long 4068257947
+ .long 4141049836
+ .long 1776680610
+ .long 1962173430
+ .long 2126405399
+ .long 3612507052
+ .long 3841548598
+ .long 3987132377
+ .long 3553361221
+ .long 3924346860
+ .long 4252810799
+ .long 2930046808
+ .long 3388129901
+ .long 3679297459
+ .long 2811755147
+ .long 3553726425
+ .long 4210654302
+ .long 1565126321
+ .long 2481292507
+ .long 3063627623
+ .long 1328542998
+ .long 2812485555
+ .long 4126341309
+ .long 3130252643
+ .long 667617719
+ .long 1832287951
+ .long 2657085997
+ .long 1330003814
+ .long 3957715323
+ .long 1965537991
+ .long 1335235438
+ .long 3664575902
+ .long 1019204698
+ .long 2660007629
+ .long 3620463350
+ .long 3931075983
+ .long 2670470877
+ .long 3034184508
+ .long 2038409397
+ .long 1025047962
+ .long 2945959404
+ .long 3567184671
+ .long 1045974458
+ .long 1773401721
+ .long 4076818795
+ .long 2050095924
+ .long 1596951513
+ .long 2839402047
+ .long 2091948916
+ .long 3546803442
+ .long 3858670295
+ .long 4100191849
+ .long 3193903027
+ .long 1383836798
+ .long 4183897833
+ .long 2798639588
+ .long 3422373294
+ .long 3905416403
+ .long 2092838759
+ .long 2767673597
+ .long 4072828371
+ .long 1302311881
+ .long 2549779293
+ .long 3515865511
+ .long 4185677519
+ .long 1240379898
+ .long 3850689447
+ .long 2604623763
+ .long 804591290
+ .long 2736763727
+ .long 4076387742
+ .long 2480759797
+ .long 3406411599
+ .long 914280231
+ .long 1609182581
+ .long 1178560158
+ .long 3857808189
+ .long 666552299
+ .long 2517855902
+ .long 1828560463
+ .long 3218365162
+ .long 2357120316
+ .long 3420649082
+ .long 1333104599
+ .long 740744509
+ .long 3657120927
+ .long 2141763028
+ .long 419273337
+ .long 2546330868
+ .long 2666209199
+ .long 1481489018
+ .long 3019274558
+ .long 4283526057
+ .long 838546674
+ .long 797694440
+ .long 1037451103
+ .long 2962978036
+ .long 1743581820
+ .long 4272084818
+ .long 1677093349
+ .long 1595388880
+ .long 2074902206
+ .long 1630988776
+ .long 3487163641
+ .long 4249202340
+ .long 3354186699
+ .long 3190777760
+ .long 4149804412
+ .long 3261977553
+ .long 2679359986
+ .long 4203437385
+ .long 2413406103
+ .long 2086588225
+ .long 4004641529
+ .long 2228987811
+ .long 1063752677
+ .long 4111907475
+ .long 531844911
+ .long 4173176451
+ .long 3714315762
+ .long 163008326
+ .long 2127505355
+ .long 3928847655
+ .long 1063689823
+ .long 4051385607
+ .long 3133664229
+ .long 326016652
+ .long 4255010710
+ .long 3562728015
+ .long 2127379647
+ .long 3807803918
+ .long 1972361163
+ .long 652033304
+ .long 4215054124
+ .long 2830488734
+ .long 4254759295
+ .long 3320640540
+ .long 3944722327
+ .long 1304066609
+ .long 4135140952
+ .long 1366010173
+ .long 4214551295
+ .long 2346313785
+ .long 3594477359
+ .long 2608133219
+ .long 3975314608
+ .long 2732020347
+ .long 4134135294
+ .long 397660275
+ .long 2893987423
+ .long 921299143
+ .long 3655661921
+ .long 1169073399
+ .long 3973303293
+ .long 795320551
+ .long 1493007550
+ .long 1842598287
+ .long 3016356546
+ .long 2338146798
+ .long 3651639290
+ .long 1590641102
+ .long 2986015100
+ .long 3685196575
+ .long 1737745796
+ .long 381326301
+ .long 3008311285
+ .long 3181282204
+ .long 1677062904
+ .long 3075425855
+ .long 3475491593
+ .long 762652602
+ .long 1721655274
+ .long 2067597113
+ .long 3354125809
+ .long 1855884414
+ .long 2656015891
+ .long 1525305205
+ .long 3443310548
+ .long 4135194227
+ .long 2413284322
+ .long 3711768829
+ .long 1017064486
+ .long 3050610411
+ .long 2591653800
+ .long 3975421159
+ .long 531601349
+ .long 3128570363
+ .long 2034128973
+ .long 1806253526
+ .long 888340305
+ .long 3655875023
+ .long 1063202699
+ .long 1962173430
+ .long 4068257947
+ .long 3612507052
+ .long 1776680610
+ .long 3016782751
+ .long 2126405399
+ .long 3924346860
+ .long 3841548598
+ .long 2930046808
+ .long 3553361221
+ .long 1738598206
+ .long 4252810799
+ .long 3553726425
+ .long 3388129901
+ .long 1565126321
+ .long 2811755147
+ .long 3477196413
+ .long 4210654302
+ .long 2812485555
+ .long 2481292507
+ .long 3130252643
+ .long 1328542998
+ .long 2659425531
+ .long 4126341309
+ .long 1330003814
+ .long 667617719
+ .long 1965537991
+ .long 2657085997
+ .long 1023883767
+ .long 3957715323
+ .long 2660007629
+ .long 1335235438
+ .long 3931075983
+ .long 1019204698
+ .long 2047767535
+ .long 3620463350
+ .long 1025047962
+ .long 2670470877
+ .long 3567184671
+ .long 2038409397
+ .long 4095535070
+ .long 2945959404
+ .long 2050095924
+ .long 1045974458
+ .long 2839402047
+ .long 4076818795
+ .long 3896102844
+ .long 1596951513
+ .long 4100191849
+ .long 2091948916
+ .long 1383836798
+ .long 3858670295
+ .long 3497238392
+ .long 3193903027
+ .long 3905416403
+ .long 4183897833
+ .long 2767673597
+ .long 3422373294
+ .long 2699509489
+ .long 2092838759
+ .long 3515865511
+ .long 4072828371
+ .long 1240379898
+ .long 2549779293
+ .long 1104051682
+ .long 4185677519
+ .long 2736763727
+ .long 3850689447
+ .long 2480759797
+ .long 804591290
+ .long 2208103365
+ .long 4076387742
+ .long 1178560158
+ .long 3406411599
+ .long 666552299
+ .long 1609182581
+ .long 121239434
+ .long 3857808189
+ .long 2357120316
+ .long 2517855902
+ .long 1333104599
+ .long 3218365162
+ .long 242478868
+ .long 3420649082
+ .long 419273337
+ .long 740744509
+ .long 2666209199
+ .long 2141763028
+ .long 484957737
+ .long 2546330868
+ .long 838546674
+ .long 1481489018
+ .long 1037451103
+ .long 4283526057
+ .long 969915474
+ .long 797694440
+ .long 1677093349
+ .long 2962978036
+ .long 2074902206
+ .long 4272084818
+ .long 1939830949
+ .long 1595388880
+ .long 3354186699
+ .long 1630988776
+ .long 4149804412
+ .long 4249202340
+ .long 3879661898
+ .long 3190777760
+ .long 2413406103
+ .long 3261977553
+ .long 4004641529
+ .long 4203437385
+ .long 3464356500
+ .long 2086588225
+ .long 531844911
+ .long 2228987811
+ .long 3714315762
+ .long 4111907475
+ .long 2633745705
+ .long 4173176451
+ .long 1063689823
+ .long 163008326
+ .long 3133664229
+ .long 3928847655
+ .long 972524114
+ .long 4051385607
+ .long 2127379647
+ .long 326016652
+ .long 1972361163
+ .long 3562728015
+ .long 1945048229
+ .long 3807803918
+ .long 4254759295
+ .long 652033304
+ .long 3944722327
+ .long 2830488734
+ .long 3890096458
+ .long 3320640540
+ .long 4214551295
+ .long 1304066609
+ .long 3594477359
+ .long 1366010173
+ .long 3485225620
+ .long 2346313785
+ .long 4134135294
+ .long 2608133219
+ .long 2893987423
+ .long 2732020347
+ .long 2675483945
+ .long 397660275
+ .long 3973303293
+ .long 921299143
+ .long 1493007550
+ .long 1169073399
+ .long 1056000594
+ .long 795320551
+ .long 3651639290
+ .long 1842598287
+ .long 2986015100
+ .long 2338146798
+ .long 2112001188
+ .long 1590641102
+ .long 3008311285
+ .long 3685196575
+ .long 1677062904
+ .long 381326301
+ .long 4224002377
+ .long 3181282204
+ .long 1721655274
+ .long 3075425855
+ .long 3354125809
+ .long 762652602
+ .long 4153037458
+ .long 2067597113
+ .long 3443310548
+ .long 1855884414
+ .long 2413284322
+ .long 1525305205
+ .long 4011107621
+ .long 4135194227
+ .long 2591653800
+ .long 3711768829
+ .long 531601349
+ .long 3050610411
+ .long 3727247947
+ .long 3975421159
+ .long 888340305
+ .long 3128570363
+ .long 1063202699
+ .long 1806253526
+ .long 3159528599
+ .long 3655875023
+ .long 1776680610
+ .long 1962173430
+ .long 2126405399
+ .long 3612507052
+ .long 2024089902
+ .long 3016782751
+ .long 3553361221
+ .long 3924346860
+ .long 4252810799
+ .long 2930046808
+ .long 4048179805
+ .long 1738598206
+ .long 2811755147
+ .long 3553726425
+ .long 4210654302
+ .long 1565126321
+ .long 3801392314
+ .long 3477196413
+ .long 1328542998
+ .long 2812485555
+ .long 4126341309
+ .long 3130252643
+ .long 3307817333
+ .long 2659425531
+ .long 2657085997
+ .long 1330003814
+ .long 3957715323
+ .long 1965537991
+ .long 2320667370
+ .long 1023883767
+ .long 1019204698
+ .long 2660007629
+ .long 3620463350
+ .long 3931075983
+ .long 346367444
+ .long 2047767535
+ .long 2038409397
+ .long 1025047962
+ .long 2945959404
+ .long 3567184671
+ .long 692734889
+ .long 4095535070
+ .long 4076818795
+ .long 2050095924
+ .long 1596951513
+ .long 2839402047
+ .long 1385469779
+ .long 3896102844
+ .long 3858670295
+ .long 4100191849
+ .long 3193903027
+ .long 1383836798
+ .long 2770939558
+ .long 3497238392
+ .long 3422373294
+ .long 3905416403
+ .long 2092838759
+ .long 2767673597
+ .long 1246911821
+ .long 2699509489
+ .long 2549779293
+ .long 3515865511
+ .long 4185677519
+ .long 1240379898
+ .long 2493823642
+ .long 1104051682
+ .long 804591290
+ .long 2736763727
+ .long 4076387742
+ .long 2480759797
+ .long 692679989
+ .long 2208103365
+ .long 1609182581
+ .long 1178560158
+ .long 3857808189
+ .long 666552299
+ .long 1385359979
+ .long 121239434
+ .long 3218365162
+ .long 2357120316
+ .long 3420649082
+ .long 1333104599
+ .long 2770719959
+ .long 242478868
+ .long 2141763028
+ .long 419273337
+ .long 2546330868
+ .long 2666209199
+ .long 1246472623
+ .long 484957737
+ .long 4283526057
+ .long 838546674
+ .long 797694440
+ .long 1037451103
+ .long 2492945247
+ .long 969915474
+ .long 4272084818
+ .long 1677093349
+ .long 1595388880
+ .long 2074902206
+ .long 690923199
+ .long 1939830949
+ .long 4249202340
+ .long 3354186699
+ .long 3190777760
+ .long 4149804412
+ .long 1381846399
+ .long 3879661898
+ .long 4203437385
+ .long 2413406103
+ .long 2086588225
+ .long 4004641529
+ .long 2763692798
+ .long 3464356500
+ .long 4111907475
+ .long 531844911
+ .long 4173176451
+ .long 3714315762
+ .long 1232418301
+ .long 2633745705
+ .long 3928847655
+ .long 1063689823
+ .long 4051385607
+ .long 3133664229
+ .long 2464836603
+ .long 972524114
+ .long 3562728015
+ .long 2127379647
+ .long 3807803918
+ .long 1972361163
+ .long 634705910
+ .long 1945048229
+ .long 2830488734
+ .long 4254759295
+ .long 3320640540
+ .long 3944722327
+ .long 1269411821
+ .long 3890096458
+ .long 1366010173
+ .long 4214551295
+ .long 2346313785
+ .long 3594477359
+ .long 2538823642
+ .long 3485225620
+ .long 2732020347
+ .long 4134135294
+ .long 397660275
+ .long 2893987423
+ .long 782679989
+ .long 2675483945
+ .long 1169073399
+ .long 3973303293
+ .long 795320551
+ .long 1493007550
+ .long 1565359979
+ .long 1056000594
+ .long 2338146798
+ .long 3651639290
+ .long 1590641102
+ .long 2986015100
+ .long 3130719959
+ .long 2112001188
+ .long 381326301
+ .long 3008311285
+ .long 3181282204
+ .long 1677062904
+ .long 1966472623
+ .long 4224002377
+ .long 762652602
+ .long 1721655274
+ .long 2067597113
+ .long 3354125809
+ .long 3932945247
+ .long 4153037458
+ .long 1525305205
+ .long 3443310548
+ .long 4135194227
+ .long 2413284322
+ .long 3570923199
+ .long 4011107621
+ .long 3050610411
+ .long 2591653800
+ .long 3975421159
+ .long 531601349
+ .long 2846879102
+ .long 3727247947
+ .long 1806253526
+ .long 888340305
+ .long 3655875023
+ .long 1063202699
+ .long 1398790909
+ .long 3159528599
+ .long 3612507052
+ .long 1776680610
+ .long 3016782751
+ .long 2126405399
+ .long 2797581819
+ .long 2024089902
+ .long 2930046808
+ .long 3553361221
+ .long 1738598206
+ .long 4252810799
+ .long 1300196342
+ .long 4048179805
+ .long 1565126321
+ .long 2811755147
+ .long 3477196413
+ .long 4210654302
+ .long 2600392684
+ .long 3801392314
+ .long 3130252643
+ .long 1328542998
+ .long 2659425531
+ .long 4126341309
+ .long 905818072
+ .long 3307817333
+ .long 1965537991
+ .long 2657085997
+ .long 1023883767
+ .long 3957715323
+ .long 1811636145
+ .long 2320667370
+ .long 3931075983
+ .long 1019204698
+ .long 2047767535
+ .long 3620463350
+ .long 3623272290
+ .long 346367444
+ .long 3567184671
+ .long 2038409397
+ .long 4095535070
+ .long 2945959404
+ .long 2951577284
+ .long 692734889
+ .long 2839402047
+ .long 4076818795
+ .long 3896102844
+ .long 1596951513
+ .long 1608187272
+ .long 1385469779
+ .long 1383836798
+ .long 3858670295
+ .long 3497238392
+ .long 3193903027
+ .long 3216374545
+ .long 2770939558
+ .long 2767673597
+ .long 3422373294
+ .long 2699509489
+ .long 2092838759
+ .long 2137781795
+ .long 1246911821
+ .long 1240379898
+ .long 2549779293
+ .long 1104051682
+ .long 4185677519
+ .long 4275563591
+ .long 2493823642
+ .long 2480759797
+ .long 804591290
+ .long 2208103365
+ .long 4076387742
+ .long 4256159887
+ .long 692679989
+ .long 666552299
+ .long 1609182581
+ .long 121239434
+ .long 3857808189
+ .long 4217352479
+ .long 1385359979
+ .long 1333104599
+ .long 3218365162
+ .long 242478868
+ .long 3420649082
+ .long 4139737663
+ .long 2770719959
+ .long 2666209199
+ .long 2141763028
+ .long 484957737
+ .long 2546330868
+ .long 3984508030
+ .long 1246472623
+ .long 1037451103
+ .long 4283526057
+ .long 969915474
+ .long 797694440
+ .long 3674048764
+ .long 2492945247
+ .long 2074902206
+ .long 4272084818
+ .long 1939830949
+ .long 1595388880
+ .long 3053130232
+ .long 690923199
+ .long 4149804412
+ .long 4249202340
+ .long 3879661898
+ .long 3190777760
+ .long 1811293169
+ .long 1381846399
+ .long 4004641529
+ .long 4203437385
+ .long 3464356500
+ .long 2086588225
+ .long 3622586339
+ .long 2763692798
+ .long 3714315762
+ .long 4111907475
+ .long 2633745705
+ .long 4173176451
+ .long 2950205382
+ .long 1232418301
+ .long 3133664229
+ .long 3928847655
+ .long 972524114
+ .long 4051385607
+ .long 1605443469
+ .long 2464836603
+ .long 1972361163
+ .long 3562728015
+ .long 1945048229
+ .long 3807803918
+ .long 3210886938
+ .long 634705910
+ .long 3944722327
+ .long 2830488734
+ .long 3890096458
+ .long 3320640540
+ .long 2126806581
+ .long 1269411821
+ .long 3594477359
+ .long 1366010173
+ .long 3485225620
+ .long 2346313785
+ .long 4253613162
+ .long 2538823642
+ .long 2893987423
+ .long 2732020347
+ .long 2675483945
+ .long 397660275
+ .long 4212259029
+ .long 782679989
+ .long 1493007550
+ .long 1169073399
+ .long 1056000594
+ .long 795320551
+ .long 4129550763
+ .long 1565359979
+ .long 2986015100
+ .long 2338146798
+ .long 2112001188
+ .long 1590641102
+ .long 3964134231
+ .long 3130719959
+ .long 1677062904
+ .long 381326301
+ .long 4224002377
+ .long 3181282204
+ .long 3633301166
+ .long 1966472623
+ .long 3354125809
+ .long 762652602
+ .long 4153037458
+ .long 2067597113
+ .long 2971635037
+ .long 3932945247
+ .long 2413284322
+ .long 1525305205
+ .long 4011107621
+ .long 4135194227
+ .long 1648302778
+ .long 3570923199
+ .long 531601349
+ .long 3050610411
+ .long 3727247947
+ .long 3975421159
+ .long 3296605556
+ .long 2846879102
+ .long 1063202699
+ .long 1806253526
+ .long 3159528599
+ .long 3655875023
+ .long 2298243816
+ .long 1398790909
+ .long 2126405399
+ .long 3612507052
+ .long 2024089902
+ .long 3016782751
+ .long 301520336
+ .long 2797581819
+ .long 4252810799
+ .long 2930046808
+ .long 4048179805
+ .long 1738598206
+ .long 603040673
+ .long 1300196342
+ .long 4210654302
+ .long 1565126321
+ .long 3801392314
+ .long 3477196413
+ .long 1206081346
+ .long 2600392684
+ .long 4126341309
+ .long 3130252643
+ .long 3307817333
+ .long 2659425531
+ .long 2412162692
+ .long 905818072
+ .long 3957715323
+ .long 1965537991
+ .long 2320667370
+ .long 1023883767
+ .long 529358088
+ .long 1811636145
+ .long 3620463350
+ .long 3931075983
+ .long 346367444
+ .long 2047767535
+ .long 1058716176
+ .long 3623272290
+ .long 2945959404
+ .long 3567184671
+ .long 692734889
+ .long 4095535070
+ .long 2117432353
+ .long 2951577284
+ .long 1596951513
+ .long 2839402047
+ .long 1385469779
+ .long 3896102844
+ .long 4234864706
+ .long 1608187272
+ .long 3193903027
+ .long 1383836798
+ .long 2770939558
+ .long 3497238392
+ .long 4174762117
+ .long 3216374545
+ .long 2092838759
+ .long 2767673597
+ .long 1246911821
+ .long 2699509489
+ .long 4054556938
+ .long 2137781795
+ .long 4185677519
+ .long 1240379898
+ .long 2493823642
+ .long 1104051682
+ .long 3814146581
+ .long 4275563591
+ .long 4076387742
+ .long 2480759797
+ .long 692679989
+ .long 2208103365
+ .long 3333325867
+ .long 4256159887
+ .long 3857808189
+ .long 666552299
+ .long 1385359979
+ .long 121239434
+ .long 2371684438
+ .long 4217352479
+ .long 3420649082
+ .long 1333104599
+ .long 2770719959
+ .long 242478868
+ .long 448401580
+ .long 4139737663
+ .long 2546330868
+ .long 2666209199
+ .long 1246472623
+ .long 484957737
+ .long 896803160
+ .long 3984508030
+ .type __svml_dtan_reduction_data_internal,@object
+ .size __svml_dtan_reduction_data_internal,49152
+ .space 512, 0x00
+ .align 32
+.L_2il0floatpacket.35:
+ .long 0x00000008,0x00000008,0x00000008,0x00000008,0x00000008,0x00000008,0x00000008,0x00000008
+ .type .L_2il0floatpacket.35,@object
+ .size .L_2il0floatpacket.35,32
+ .align 8
+.L_2il0floatpacket.18:
+ .long 0xffffffff,0xffffffff
+ .type .L_2il0floatpacket.18,@object
+ .size .L_2il0floatpacket.18,8
+ .align 8
+.L_2il0floatpacket.19:
+ .long 0x00000000,0x7ff00000
+ .type .L_2il0floatpacket.19,@object
+ .size .L_2il0floatpacket.19,8
+ .align 8
+.L_2il0floatpacket.20:
+ .long 0xffffffff,0x000fffff
+ .type .L_2il0floatpacket.20,@object
+ .size .L_2il0floatpacket.20,8
+ .align 8
+.L_2il0floatpacket.21:
+ .long 0x00000000,0x00100000
+ .type .L_2il0floatpacket.21,@object
+ .size .L_2il0floatpacket.21,8
+ .align 8
+.L_2il0floatpacket.22:
+ .long 0xffffffff,0x00000000
+ .type .L_2il0floatpacket.22,@object
+ .size .L_2il0floatpacket.22,8
+ .align 8
+.L_2il0floatpacket.23:
+ .long 0x00000000,0x80000000
+ .type .L_2il0floatpacket.23,@object
+ .size .L_2il0floatpacket.23,8
+ .align 8
+.L_2il0floatpacket.24:
+ .long 0x00000000,0x3ff00000
+ .type .L_2il0floatpacket.24,@object
+ .size .L_2il0floatpacket.24,8
+ .align 8
+.L_2il0floatpacket.25:
+ .long 0x00000000,0x42a80000
+ .type .L_2il0floatpacket.25,@object
+ .size .L_2il0floatpacket.25,8
+ .align 8
+.L_2il0floatpacket.26:
+ .long 0x000001ff,0x00000000
+ .type .L_2il0floatpacket.26,@object
+ .size .L_2il0floatpacket.26,8
+ .align 8
+.L_2il0floatpacket.27:
+ .long 0x00000000,0x39700000
+ .type .L_2il0floatpacket.27,@object
+ .size .L_2il0floatpacket.27,8
+ .align 8
+.L_2il0floatpacket.28:
+ .long 0x00ffffff,0x00000000
+ .type .L_2il0floatpacket.28,@object
+ .size .L_2il0floatpacket.28,8
+ .align 8
+.L_2il0floatpacket.29:
+ .long 0x00000000,0x3cb00000
+ .type .L_2il0floatpacket.29,@object
+ .size .L_2il0floatpacket.29,8
+ .align 8
+.L_2il0floatpacket.30:
+ .long 0x00000fff,0x00000000
+ .type .L_2il0floatpacket.30,@object
+ .size .L_2il0floatpacket.30,8
+ .align 8
+.L_2il0floatpacket.31:
+ .long 0x54442d18,0x401921fb
+ .type .L_2il0floatpacket.31,@object
+ .size .L_2il0floatpacket.31,8
+ .align 8
+.L_2il0floatpacket.32:
+ .long 0x33145c07,0x3cb1a626
+ .type .L_2il0floatpacket.32,@object
+ .size .L_2il0floatpacket.32,8
+ .align 8
+.L_2il0floatpacket.33:
+ .long 0xffffffff,0x7fffffff
+ .type .L_2il0floatpacket.33,@object
+ .size .L_2il0floatpacket.33,8
+ .align 8
+.L_2il0floatpacket.34:
+ .long 0x00000000,0x3eb00000
+ .type .L_2il0floatpacket.34,@object
+ .size .L_2il0floatpacket.34,8
+ .align 8
+.L_2il0floatpacket.36:
+ .long 0x54442d18,0x3f8921fb
+ .type .L_2il0floatpacket.36,@object
+ .size .L_2il0floatpacket.36,8
+ .align 8
+.L_2il0floatpacket.37:
+ .long 0x33145c07,0x3c21a626
+ .type .L_2il0floatpacket.37,@object
+ .size .L_2il0floatpacket.37,8
+ .align 8
+__dtan_la_Tab:
+ .long 0
+ .long 0
+ .long 0
+ .long 2146435072
+ .type __dtan_la_Tab,@object
+ .size __dtan_la_Tab,16
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * ( optimized for throughput, with small table lookup, works when HW FMA is available )
+ *
+ * Implementation reduces argument x to |R|<pi/64
+ * 32-entry tables used to store high and low parts of tan(x0)
+ * Argument x = N*pi + x0 + (R); x0 = k*pi/32, with k in {0, 1, ..., 31}
+ * (very large arguments reduction resolved in _vsreduction_core.i)
+ * Compute result as (tan(x0) + tan(R))/(1-tan(x0)*tan(R))
+ * _HA_ version keeps extra precision for numerator, denominator, and during
+ * final NR-iteration computing quotient.
+ *
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_tanf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_tanf16
+
+__svml_tanf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ xorl %edx, %edx
+
+/* Large values check */
+ vmovups 768+__svml_stan_data_internal(%rip), %zmm10
+
+/*
+ * ----------------------------------------------------------
+ * Main path
+ * ----------------------------------------------------------
+ * start arg. reduction
+ */
+ vmovups 1088+__svml_stan_data_internal(%rip), %zmm1
+ vmovups 64+__svml_stan_data_internal(%rip), %zmm4
+ vmovups 128+__svml_stan_data_internal(%rip), %zmm2
+ vmovups 192+__svml_stan_data_internal(%rip), %zmm3
+ vmovaps %zmm0, %zmm11
+ vandps 960+__svml_stan_data_internal(%rip), %zmm11, %zmm0
+ vcmpps $22, {sae}, %zmm10, %zmm0, %k1
+ vmovups __svml_stan_data_internal(%rip), %zmm10
+
+/*
+ * ----------------------------------------------------------
+ * End of main path
+ * ----------------------------------------------------------
+ */
+ kortestw %k1, %k1
+ vfmadd213ps {rn-sae}, %zmm1, %zmm11, %zmm10
+ vsubps {rn-sae}, %zmm1, %zmm10, %zmm5
+ vfnmadd213ps {rn-sae}, %zmm11, %zmm5, %zmm4
+ vfnmadd231ps {rn-sae}, %zmm5, %zmm2, %zmm4
+ vfnmadd213ps {rn-sae}, %zmm4, %zmm3, %zmm5
+ jne .LBL_1_12
+
+.LBL_1_2:
+
+
+/* Table lookup */
+ vmovups 384+__svml_stan_data_internal(%rip), %zmm3
+ vmovups 640+__svml_stan_data_internal(%rip), %zmm0
+ vmulps {rn-sae}, %zmm5, %zmm5, %zmm1
+ vpermt2ps 448+__svml_stan_data_internal(%rip), %zmm10, %zmm3
+ vmovups 704+__svml_stan_data_internal(%rip), %zmm10
+ vfmadd231ps {rn-sae}, %zmm1, %zmm10, %zmm0
+ vmulps {rn-sae}, %zmm5, %zmm0, %zmm4
+ vfmadd213ps {rn-sae}, %zmm5, %zmm1, %zmm4
+
+/*
+ * Computer Denominator:
+ * sDenominator - sDlow ~= 1-(sTh+sTl)*(sP+sPlow)
+ */
+ vmovups 1152+__svml_stan_data_internal(%rip), %zmm5
+ vmulps {rn-sae}, %zmm4, %zmm3, %zmm7
+
+/*
+ * Compute Numerator:
+ * sNumerator + sNlow ~= sTh+sTl+sP+sPlow
+ */
+ vaddps {rn-sae}, %zmm3, %zmm4, %zmm8
+ vsubps {rn-sae}, %zmm7, %zmm5, %zmm9
+ vsubps {rn-sae}, %zmm3, %zmm8, %zmm2
+
+/*
+ * Now computes (sNumerator + sNlow)/(sDenominator - sDlow)
+ * Choose NR iteration instead of hardware division
+ */
+ vrcp14ps %zmm9, %zmm14
+ vsubps {rn-sae}, %zmm5, %zmm9, %zmm6
+ vsubps {rn-sae}, %zmm2, %zmm4, %zmm13
+ vmulps {rn-sae}, %zmm8, %zmm14, %zmm15
+ vaddps {rn-sae}, %zmm7, %zmm6, %zmm12
+
+/* One NR iteration to refine sQuotient */
+ vfmsub213ps {rn-sae}, %zmm8, %zmm15, %zmm9
+ vfnmadd213ps {rn-sae}, %zmm9, %zmm15, %zmm12
+ vsubps {rn-sae}, %zmm13, %zmm12, %zmm0
+ vfnmadd213ps {rn-sae}, %zmm15, %zmm14, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_4
+
+.LBL_1_3:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_4:
+
+ vmovups %zmm11, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_3
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_8:
+
+ btl %r12d, %r13d
+ jc .LBL_1_11
+
+.LBL_1_9:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_8
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_3
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_11:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_stan_cout_rare_internal
+ jmp .LBL_1_9
+ .cfi_restore 4
+ .cfi_restore 5
+ .cfi_restore 12
+ .cfi_restore 13
+ .cfi_restore 122
+ .cfi_restore 123
+ .cfi_restore 124
+ .cfi_restore 125
+
+.LBL_1_12:
+
+ vmovups 1024+__svml_stan_data_internal(%rip), %zmm6
+
+/*
+ * Get the (2^a / 2pi) mod 1 values from the table.
+ * Because VLANG doesn't have I-type gather, we need a trivial cast
+ */
+ lea __svml_stan_reduction_data_internal(%rip), %rax
+ vmovups %zmm5, (%rsp)
+ vandps %zmm0, %zmm6, %zmm14
+ vcmpps $0, {sae}, %zmm6, %zmm14, %k0
+
+/*
+ * Break the P_xxx and m into 16-bit chunks ready for
+ * the long multiplication via 16x16->32 multiplications
+ */
+ vmovups .L_2il0floatpacket.18(%rip), %zmm6
+ kxnorw %k0, %k0, %k2
+ kxnorw %k0, %k0, %k3
+ kmovw %k0, %edx
+ vpandd .L_2il0floatpacket.15(%rip), %zmm11, %zmm5
+ vpsrld $23, %zmm5, %zmm7
+ vpslld $1, %zmm7, %zmm8
+ vpaddd %zmm7, %zmm8, %zmm9
+ vpslld $2, %zmm9, %zmm4
+ vpxord %zmm3, %zmm3, %zmm3
+ vgatherdps (%rax,%zmm4), %zmm3{%k2}
+ kxnorw %k0, %k0, %k2
+ vpsrld $16, %zmm3, %zmm5
+ vpxord %zmm15, %zmm15, %zmm15
+ vpxord %zmm2, %zmm2, %zmm2
+ vgatherdps 4(%rax,%zmm4), %zmm15{%k3}
+ vgatherdps 8(%rax,%zmm4), %zmm2{%k2}
+ vpsrld $16, %zmm2, %zmm13
+
+/*
+ * Also get the significand as an integer
+ * NB: adding in the integer bit is wrong for denorms!
+ * To make this work for denorms we should do something slightly different
+ */
+ vpandd .L_2il0floatpacket.16(%rip), %zmm11, %zmm0
+ vpaddd .L_2il0floatpacket.17(%rip), %zmm0, %zmm1
+ vpsrld $16, %zmm15, %zmm0
+ vpsrld $16, %zmm1, %zmm8
+ vpandd %zmm6, %zmm3, %zmm9
+ vpandd %zmm6, %zmm15, %zmm12
+ vpandd %zmm6, %zmm2, %zmm7
+ vpandd %zmm6, %zmm1, %zmm14
+
+/* Now do the big multiplication and carry propagation */
+ vpmulld %zmm9, %zmm8, %zmm4
+ vpmulld %zmm0, %zmm8, %zmm3
+ vpmulld %zmm12, %zmm8, %zmm2
+ vpmulld %zmm13, %zmm8, %zmm1
+ vpmulld %zmm7, %zmm8, %zmm8
+ vpmulld %zmm5, %zmm14, %zmm7
+ vpmulld %zmm9, %zmm14, %zmm5
+ vpmulld %zmm0, %zmm14, %zmm9
+ vpmulld %zmm12, %zmm14, %zmm0
+ vpmulld %zmm13, %zmm14, %zmm12
+ vpsrld $16, %zmm12, %zmm14
+ vpsrld $16, %zmm0, %zmm13
+ vpsrld $16, %zmm9, %zmm15
+ vpsrld $16, %zmm5, %zmm12
+ vpsrld $16, %zmm8, %zmm8
+ vpaddd %zmm14, %zmm1, %zmm1
+ vpaddd %zmm13, %zmm2, %zmm2
+ vpaddd %zmm15, %zmm3, %zmm15
+ vpaddd %zmm12, %zmm4, %zmm3
+ vpandd %zmm6, %zmm0, %zmm13
+ vpaddd %zmm1, %zmm13, %zmm4
+ vpaddd %zmm4, %zmm8, %zmm14
+ vpsrld $16, %zmm14, %zmm0
+ vpandd %zmm6, %zmm9, %zmm9
+ vpaddd %zmm2, %zmm9, %zmm1
+ vpaddd %zmm1, %zmm0, %zmm8
+
+/*
+ * Now round at the 2^-8 bit position for reduction mod pi/2^7
+ * instead of the original 2pi (but still with the same 2pi scaling).
+ * Use a shifter of 2^15 + 2^14.
+ * The N we get is our final version; it has an offset of
+ * 2^8 because of the implicit integer bit, and anyway for negative
+ * starting value it's a 2s complement thing. But we need to mask
+ * off the exponent part anyway so it's fine.
+ */
+ vmovups .L_2il0floatpacket.21(%rip), %zmm1
+ vpandd %zmm6, %zmm7, %zmm7
+ vpaddd %zmm3, %zmm7, %zmm13
+ vpsrld $16, %zmm8, %zmm3
+ vpandd %zmm6, %zmm5, %zmm5
+ vpaddd %zmm15, %zmm5, %zmm2
+ vpaddd %zmm2, %zmm3, %zmm15
+ vpsrld $16, %zmm15, %zmm12
+ vpaddd %zmm13, %zmm12, %zmm5
+
+/* Assemble reduced argument from the pieces */
+ vpandd %zmm6, %zmm14, %zmm9
+ vpandd %zmm6, %zmm15, %zmm7
+ vpslld $16, %zmm5, %zmm6
+ vpslld $16, %zmm8, %zmm5
+ vpaddd %zmm7, %zmm6, %zmm4
+ vpaddd %zmm9, %zmm5, %zmm9
+ vpsrld $9, %zmm4, %zmm6
+
+/*
+ * We want to incorporate the original sign now too.
+ * Do it here for convenience in getting the right N value,
+ * though we could wait right to the end if we were prepared
+ * to modify the sign of N later too.
+ * So get the appropriate sign mask now (or sooner).
+ */
+ vpandd .L_2il0floatpacket.19(%rip), %zmm11, %zmm0
+ vpandd .L_2il0floatpacket.24(%rip), %zmm9, %zmm13
+ vpslld $5, %zmm13, %zmm14
+
+/*
+ * Create floating-point high part, implicitly adding integer bit 1
+ * Incorporate overall sign at this stage too.
+ */
+ vpxord .L_2il0floatpacket.20(%rip), %zmm0, %zmm8
+ vpord %zmm8, %zmm6, %zmm2
+ vaddps {rn-sae}, %zmm2, %zmm1, %zmm12
+ vsubps {rn-sae}, %zmm1, %zmm12, %zmm3
+ vsubps {rn-sae}, %zmm3, %zmm2, %zmm7
+
+/*
+ * Create floating-point low and medium parts, respectively
+ * lo_17, ... lo_0, 0, ..., 0
+ * hi_8, ... hi_0, lo_31, ..., lo_18
+ * then subtract off the implicitly added integer bits,
+ * 2^-46 and 2^-23, respectively.
+ * Put the original sign into all of them at this stage.
+ */
+ vpxord .L_2il0floatpacket.23(%rip), %zmm0, %zmm6
+ vpord %zmm6, %zmm14, %zmm15
+ vpandd .L_2il0floatpacket.26(%rip), %zmm4, %zmm4
+ vsubps {rn-sae}, %zmm6, %zmm15, %zmm8
+ vandps .L_2il0floatpacket.29(%rip), %zmm11, %zmm15
+ vpsrld $18, %zmm9, %zmm6
+
+/*
+ * If the magnitude of the input is <= 2^-20, then
+ * just pass through the input, since no reduction will be needed and
+ * the main path will only work accurately if the reduced argument is
+ * about >= 2^-40 (which it is for all large pi multiples)
+ */
+ vmovups .L_2il0floatpacket.30(%rip), %zmm14
+ vcmpps $26, {sae}, %zmm14, %zmm15, %k3
+ vcmpps $22, {sae}, %zmm14, %zmm15, %k2
+ vpxord .L_2il0floatpacket.25(%rip), %zmm0, %zmm1
+ vpslld $14, %zmm4, %zmm0
+ vpord %zmm6, %zmm0, %zmm0
+ vpord %zmm1, %zmm0, %zmm4
+ vsubps {rn-sae}, %zmm1, %zmm4, %zmm2
+ vpternlogd $255, %zmm6, %zmm6, %zmm6
+
+/* Now add them up into 2 reasonably aligned pieces */
+ vaddps {rn-sae}, %zmm2, %zmm7, %zmm13
+ vsubps {rn-sae}, %zmm13, %zmm7, %zmm7
+ vaddps {rn-sae}, %zmm7, %zmm2, %zmm3
+
+/*
+ * The output is _VRES_R (high) + _VRES_E (low), and the integer part is _VRES_IND
+ * Set sRp2 = _VRES_R^2 and then resume the original code.
+ */
+ vmovups .L_2il0floatpacket.31(%rip), %zmm2
+ vaddps {rn-sae}, %zmm8, %zmm3, %zmm1
+ vmovups .L_2il0floatpacket.28(%rip), %zmm8
+
+/* Grab our final N value as an integer, appropriately masked mod 2^8 */
+ vpandd .L_2il0floatpacket.22(%rip), %zmm12, %zmm5
+
+/*
+ * Now multiply those numbers all by 2 pi, reasonably accurately.
+ * (RHi + RLo) * (pi_lead + pi_trail) ~=
+ * RHi * pi_lead + (RHi * pi_trail + RLo * pi_lead)
+ */
+ vmovups .L_2il0floatpacket.27(%rip), %zmm12
+ vmulps {rn-sae}, %zmm12, %zmm13, %zmm0
+ vmovaps %zmm12, %zmm9
+ vfmsub213ps {rn-sae}, %zmm0, %zmm13, %zmm9
+ vfmadd213ps {rn-sae}, %zmm9, %zmm8, %zmm13
+ vmovaps %zmm6, %zmm8
+ vfmadd213ps {rn-sae}, %zmm13, %zmm12, %zmm1
+ vpandnd %zmm15, %zmm15, %zmm8{%k3}
+ vpandnd %zmm15, %zmm15, %zmm6{%k2}
+ vandps %zmm11, %zmm6, %zmm14
+ vandps %zmm0, %zmm8, %zmm15
+ vandps %zmm1, %zmm8, %zmm12
+ vorps %zmm15, %zmm14, %zmm6
+ vpsrld $31, %zmm6, %zmm3
+ vpsubd %zmm3, %zmm2, %zmm4
+ vpaddd %zmm4, %zmm5, %zmm7
+ vpsrld $2, %zmm7, %zmm13
+ vpslld $2, %zmm13, %zmm9
+
+/*
+ * ----------------------------------------------------------
+ * End of large arguments path
+ * ----------------------------------------------------------
+ * Merge results from main and large paths:
+ */
+ vblendmps %zmm13, %zmm10, %zmm10{%k1}
+ vpsubd %zmm9, %zmm5, %zmm5
+ vmovups .L_2il0floatpacket.32(%rip), %zmm9
+ vcvtdq2ps {rn-sae}, %zmm5, %zmm0
+ vmovups .L_2il0floatpacket.33(%rip), %zmm5
+ vfmadd231ps {rn-sae}, %zmm0, %zmm5, %zmm12
+ vmovups (%rsp), %zmm5
+ vaddps {rn-sae}, %zmm6, %zmm12, %zmm6
+ vfmadd213ps {rn-sae}, %zmm6, %zmm9, %zmm0
+ vblendmps %zmm0, %zmm5, %zmm5{%k1}
+ jmp .LBL_1_2
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_tanf16,@function
+ .size __svml_tanf16,.-__svml_tanf16
+..LN__svml_tanf16.0:
+
+.L_2__routine_start___svml_stan_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_stan_cout_rare_internal:
+
+
+ .cfi_startproc
+..L63:
+
+ xorl %eax, %eax
+ movl (%rdi), %edx
+ movzwl 2(%rdi), %ecx
+ movl %edx, -8(%rsp)
+ andl $32640, %ecx
+ shrl $24, %edx
+ andl $127, %edx
+ movb %dl, -5(%rsp)
+ cmpl $32640, %ecx
+ je .LBL_2_3
+
+
+ ret
+
+.LBL_2_3:
+
+ cmpl $2139095040, -8(%rsp)
+ jne .LBL_2_5
+
+
+ movss (%rdi), %xmm0
+ movl $1, %eax
+ mulss __stan_la__vmlsTanTab(%rip), %xmm0
+ movss %xmm0, (%rsi)
+ ret
+
+.LBL_2_5:
+
+ movss (%rdi), %xmm0
+ mulss (%rdi), %xmm0
+ movss %xmm0, (%rsi)
+ ret
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_stan_cout_rare_internal,@function
+ .size __svml_stan_cout_rare_internal,.-__svml_stan_cout_rare_internal
+..LN__svml_stan_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+.L_2il0floatpacket.15:
+ .long 0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000
+ .type .L_2il0floatpacket.15,@object
+ .size .L_2il0floatpacket.15,64
+ .align 64
+.L_2il0floatpacket.16:
+ .long 0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff
+ .type .L_2il0floatpacket.16,@object
+ .size .L_2il0floatpacket.16,64
+ .align 64
+.L_2il0floatpacket.17:
+ .long 0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000
+ .type .L_2il0floatpacket.17,@object
+ .size .L_2il0floatpacket.17,64
+ .align 64
+.L_2il0floatpacket.18:
+ .long 0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff
+ .type .L_2il0floatpacket.18,@object
+ .size .L_2il0floatpacket.18,64
+ .align 64
+.L_2il0floatpacket.19:
+ .long 0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000
+ .type .L_2il0floatpacket.19,@object
+ .size .L_2il0floatpacket.19,64
+ .align 64
+.L_2il0floatpacket.20:
+ .long 0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000
+ .type .L_2il0floatpacket.20,@object
+ .size .L_2il0floatpacket.20,64
+ .align 64
+.L_2il0floatpacket.21:
+ .long 0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000
+ .type .L_2il0floatpacket.21,@object
+ .size .L_2il0floatpacket.21,64
+ .align 64
+.L_2il0floatpacket.22:
+ .long 0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff
+ .type .L_2il0floatpacket.22,@object
+ .size .L_2il0floatpacket.22,64
+ .align 64
+.L_2il0floatpacket.23:
+ .long 0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000
+ .type .L_2il0floatpacket.23,@object
+ .size .L_2il0floatpacket.23,64
+ .align 64
+.L_2il0floatpacket.24:
+ .long 0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff
+ .type .L_2il0floatpacket.24,@object
+ .size .L_2il0floatpacket.24,64
+ .align 64
+.L_2il0floatpacket.25:
+ .long 0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000
+ .type .L_2il0floatpacket.25,@object
+ .size .L_2il0floatpacket.25,64
+ .align 64
+.L_2il0floatpacket.26:
+ .long 0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff
+ .type .L_2il0floatpacket.26,@object
+ .size .L_2il0floatpacket.26,64
+ .align 64
+.L_2il0floatpacket.27:
+ .long 0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb
+ .type .L_2il0floatpacket.27,@object
+ .size .L_2il0floatpacket.27,64
+ .align 64
+.L_2il0floatpacket.28:
+ .long 0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e
+ .type .L_2il0floatpacket.28,@object
+ .size .L_2il0floatpacket.28,64
+ .align 64
+.L_2il0floatpacket.29:
+ .long 0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff
+ .type .L_2il0floatpacket.29,@object
+ .size .L_2il0floatpacket.29,64
+ .align 64
+.L_2il0floatpacket.30:
+ .long 0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000
+ .type .L_2il0floatpacket.30,@object
+ .size .L_2il0floatpacket.30,64
+ .align 64
+.L_2il0floatpacket.31:
+ .long 0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002
+ .type .L_2il0floatpacket.31,@object
+ .size .L_2il0floatpacket.31,64
+ .align 64
+.L_2il0floatpacket.32:
+ .long 0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb
+ .type .L_2il0floatpacket.32,@object
+ .size .L_2il0floatpacket.32,64
+ .align 64
+.L_2il0floatpacket.33:
+ .long 0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e
+ .type .L_2il0floatpacket.33,@object
+ .size .L_2il0floatpacket.33,64
+ .align 64
+__svml_stan_data_internal:
+ .long 1092811139
+ .long 1092811139
+ .long 1092811139
+ .long 1092811139
+ .long 1092811139
+ .long 1092811139
+ .long 1092811139
+ .long 1092811139
+ .long 1092811139
+ .long 1092811139
+ .long 1092811139
+ .long 1092811139
+ .long 1092811139
+ .long 1092811139
+ .long 1092811139
+ .long 1092811139
+ .long 1036586970
+ .long 1036586970
+ .long 1036586970
+ .long 1036586970
+ .long 1036586970
+ .long 1036586970
+ .long 1036586970
+ .long 1036586970
+ .long 1036586970
+ .long 1036586970
+ .long 1036586970
+ .long 1036586970
+ .long 1036586970
+ .long 1036586970
+ .long 1036586970
+ .long 1036586970
+ .long 832708968
+ .long 832708968
+ .long 832708968
+ .long 832708968
+ .long 832708968
+ .long 832708968
+ .long 832708968
+ .long 832708968
+ .long 832708968
+ .long 832708968
+ .long 832708968
+ .long 832708968
+ .long 832708968
+ .long 832708968
+ .long 832708968
+ .long 832708968
+ .long 633484485
+ .long 633484485
+ .long 633484485
+ .long 633484485
+ .long 633484485
+ .long 633484485
+ .long 633484485
+ .long 633484485
+ .long 633484485
+ .long 633484485
+ .long 633484485
+ .long 633484485
+ .long 633484485
+ .long 633484485
+ .long 633484485
+ .long 633484485
+ .long 832708608
+ .long 832708608
+ .long 832708608
+ .long 832708608
+ .long 832708608
+ .long 832708608
+ .long 832708608
+ .long 832708608
+ .long 832708608
+ .long 832708608
+ .long 832708608
+ .long 832708608
+ .long 832708608
+ .long 832708608
+ .long 832708608
+ .long 832708608
+ .long 708075802
+ .long 708075802
+ .long 708075802
+ .long 708075802
+ .long 708075802
+ .long 708075802
+ .long 708075802
+ .long 708075802
+ .long 708075802
+ .long 708075802
+ .long 708075802
+ .long 708075802
+ .long 708075802
+ .long 708075802
+ .long 708075802
+ .long 708075802
+ .long 2147483648
+ .long 1036629468
+ .long 1045147567
+ .long 1050366018
+ .long 1054086093
+ .long 1057543609
+ .long 1059786177
+ .long 1062344705
+ .long 1065353216
+ .long 1067186156
+ .long 1069519047
+ .long 1072658590
+ .long 1075479162
+ .long 1079179983
+ .long 1084284919
+ .long 1092776803
+ .long 4286578687
+ .long 3240260451
+ .long 3231768567
+ .long 3226663631
+ .long 3222962810
+ .long 3220142238
+ .long 3217002695
+ .long 3214669804
+ .long 3212836864
+ .long 3209828353
+ .long 3207269825
+ .long 3205027257
+ .long 3201569741
+ .long 3197849666
+ .long 3192631215
+ .long 3184113116
+ .long 2147483648
+ .long 826651354
+ .long 791306928
+ .long 2989111746
+ .long 2982175258
+ .long 2992568675
+ .long 850100121
+ .long 850281093
+ .long 0
+ .long 861435400
+ .long 840342808
+ .long 3003924160
+ .long 3016492578
+ .long 865099790
+ .long 856723932
+ .long 3025444934
+ .long 4085252096
+ .long 877961286
+ .long 3004207580
+ .long 3012583438
+ .long 869008930
+ .long 856440512
+ .long 2987826456
+ .long 3008919048
+ .long 0
+ .long 2997764741
+ .long 2997583769
+ .long 845085027
+ .long 834691610
+ .long 841628098
+ .long 2938790576
+ .long 2974135002
+ .long 1051372198
+ .long 1051372198
+ .long 1051372198
+ .long 1051372198
+ .long 1051372198
+ .long 1051372198
+ .long 1051372198
+ .long 1051372198
+ .long 1051372198
+ .long 1051372198
+ .long 1051372198
+ .long 1051372198
+ .long 1051372198
+ .long 1051372198
+ .long 1051372198
+ .long 1051372198
+ .long 1040758920
+ .long 1040758920
+ .long 1040758920
+ .long 1040758920
+ .long 1040758920
+ .long 1040758920
+ .long 1040758920
+ .long 1040758920
+ .long 1040758920
+ .long 1040758920
+ .long 1040758920
+ .long 1040758920
+ .long 1040758920
+ .long 1040758920
+ .long 1040758920
+ .long 1040758920
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1059256707
+ .long 1059256707
+ .long 1059256707
+ .long 1059256707
+ .long 1059256707
+ .long 1059256707
+ .long 1059256707
+ .long 1059256707
+ .long 1059256707
+ .long 1059256707
+ .long 1059256707
+ .long 1059256707
+ .long 1059256707
+ .long 1059256707
+ .long 1059256707
+ .long 1059256707
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 2139095040
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1262485504
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1065353216
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1174470656
+ .long 1070137344
+ .long 1070137344
+ .long 1070137344
+ .long 1070137344
+ .long 1070137344
+ .long 1070137344
+ .long 1070137344
+ .long 1070137344
+ .long 1070137344
+ .long 1070137344
+ .long 1070137344
+ .long 1070137344
+ .long 1070137344
+ .long 1070137344
+ .long 1070137344
+ .long 1070137344
+ .long 972922880
+ .long 972922880
+ .long 972922880
+ .long 972922880
+ .long 972922880
+ .long 972922880
+ .long 972922880
+ .long 972922880
+ .long 972922880
+ .long 972922880
+ .long 972922880
+ .long 972922880
+ .long 972922880
+ .long 972922880
+ .long 972922880
+ .long 972922880
+ .long 866263040
+ .long 866263040
+ .long 866263040
+ .long 866263040
+ .long 866263040
+ .long 866263040
+ .long 866263040
+ .long 866263040
+ .long 866263040
+ .long 866263040
+ .long 866263040
+ .long 866263040
+ .long 866263040
+ .long 866263040
+ .long 866263040
+ .long 866263040
+ .long 741630234
+ .long 741630234
+ .long 741630234
+ .long 741630234
+ .long 741630234
+ .long 741630234
+ .long 741630234
+ .long 741630234
+ .long 741630234
+ .long 741630234
+ .long 741630234
+ .long 741630234
+ .long 741630234
+ .long 741630234
+ .long 741630234
+ .long 741630234
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 1070141403
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 3007036718
+ .long 2801216749
+ .long 2801216749
+ .long 2801216749
+ .long 2801216749
+ .long 2801216749
+ .long 2801216749
+ .long 2801216749
+ .long 2801216749
+ .long 2801216749
+ .long 2801216749
+ .long 2801216749
+ .long 2801216749
+ .long 2801216749
+ .long 2801216749
+ .long 2801216749
+ .long 2801216749
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 3183752116
+ .long 3183752116
+ .long 3183752116
+ .long 3183752116
+ .long 3183752116
+ .long 3183752116
+ .long 3183752116
+ .long 3183752116
+ .long 3183752116
+ .long 3183752116
+ .long 3183752116
+ .long 3183752116
+ .long 3183752116
+ .long 3183752116
+ .long 3183752116
+ .long 3183752116
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 1065353212
+ .long 3202070443
+ .long 3202070443
+ .long 3202070443
+ .long 3202070443
+ .long 3202070443
+ .long 3202070443
+ .long 3202070443
+ .long 3202070443
+ .long 3202070443
+ .long 3202070443
+ .long 3202070443
+ .long 3202070443
+ .long 3202070443
+ .long 3202070443
+ .long 3202070443
+ .long 3202070443
+ .long 1008677739
+ .long 1008677739
+ .long 1008677739
+ .long 1008677739
+ .long 1008677739
+ .long 1008677739
+ .long 1008677739
+ .long 1008677739
+ .long 1008677739
+ .long 1008677739
+ .long 1008677739
+ .long 1008677739
+ .long 1008677739
+ .long 1008677739
+ .long 1008677739
+ .long 1008677739
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1073741824
+ .long 1070141403
+ .long 3007036718
+ .long 0
+ .long 0
+ .long 0
+ .long 1065353216
+ .long 0
+ .long 0
+ .long 1051372765
+ .long 0
+ .long 1069935515
+ .long 853435276
+ .long 0
+ .long 1019812401
+ .long 797871386
+ .long 1065353216
+ .long 975043072
+ .long 1019820333
+ .long 1051400329
+ .long 1015569723
+ .long 1069729628
+ .long 2999697034
+ .long 0
+ .long 1028208956
+ .long 816029531
+ .long 1065353216
+ .long 991832832
+ .long 1028240852
+ .long 1051479824
+ .long 1023251493
+ .long 1069523740
+ .long 860164016
+ .long 0
+ .long 1033310670
+ .long 827321128
+ .long 1065353216
+ .long 1001540608
+ .long 1033364538
+ .long 1051617929
+ .long 1028458464
+ .long 1069317853
+ .long 2977958621
+ .long 0
+ .long 1036629468
+ .long 826649990
+ .long 1065353216
+ .long 1008660256
+ .long 1036757738
+ .long 1051807326
+ .long 1032162226
+ .long 1069111966
+ .long 3009745511
+ .long 0
+ .long 1039964354
+ .long 2964214364
+ .long 1065353216
+ .long 1014578464
+ .long 1040201797
+ .long 1052059423
+ .long 1034708638
+ .long 1068906078
+ .long 848017692
+ .long 0
+ .long 1041753444
+ .long 2982519524
+ .long 1065353216
+ .long 1018446032
+ .long 1041972480
+ .long 1052374628
+ .long 1037453248
+ .long 1068700191
+ .long 3004118141
+ .long 0
+ .long 1043443277
+ .long 2985501265
+ .long 1065353216
+ .long 1022797056
+ .long 1043793882
+ .long 1052746889
+ .long 1039915463
+ .long 1068494303
+ .long 857455223
+ .long 0
+ .long 1045147567
+ .long 791292384
+ .long 1065353216
+ .long 1025642520
+ .long 1045675728
+ .long 1053195814
+ .long 1041590498
+ .long 1068288416
+ .long 2992986704
+ .long 0
+ .long 1046868583
+ .long 833925599
+ .long 1065353216
+ .long 1028557712
+ .long 1047628490
+ .long 1053716836
+ .long 1043186017
+ .long 1068082528
+ .long 863082593
+ .long 0
+ .long 1048592340
+ .long 2988940902
+ .long 1065353216
+ .long 1031831496
+ .long 1049119700
+ .long 1054310701
+ .long 1044788971
+ .long 1067876641
+ .long 837040812
+ .long 0
+ .long 1049473154
+ .long 2972885556
+ .long 1065353216
+ .long 1033689040
+ .long 1050184288
+ .long 1054999523
+ .long 1046698028
+ .long 1067670754
+ .long 3006826934
+ .long 0
+ .long 1050366018
+ .long 2989112046
+ .long 1065353216
+ .long 1035760784
+ .long 1051302645
+ .long 1055777031
+ .long 1048635818
+ .long 1067464866
+ .long 853854846
+ .long 0
+ .long 1051272279
+ .long 817367088
+ .long 1065353216
+ .long 1038057984
+ .long 1052482025
+ .long 1056656040
+ .long 1049723582
+ .long 1067258979
+ .long 2999277465
+ .long 0
+ .long 1052193360
+ .long 2986510371
+ .long 1065353216
+ .long 1040390392
+ .long 1053730424
+ .long 1057307751
+ .long 1050943059
+ .long 1067053091
+ .long 860373800
+ .long 0
+ .long 1053130765
+ .long 2987705281
+ .long 1065353216
+ .long 1041784404
+ .long 1055056706
+ .long 1057868403
+ .long 1052298273
+ .long 1066847204
+ .long 2974604846
+ .long 0
+ .long 1054086093
+ .long 2982175058
+ .long 1065353216
+ .long 1043312844
+ .long 1056470731
+ .long 1058502663
+ .long 1053852727
+ .long 1066641317
+ .long 3009535726
+ .long 0
+ .long 1055061049
+ .long 2985572766
+ .long 1065353216
+ .long 1044984860
+ .long 1057474074
+ .long 1059214863
+ .long 1055565854
+ .long 1066435429
+ .long 848437261
+ .long 0
+ .long 1056057456
+ .long 844263924
+ .long 1065353216
+ .long 1046810746
+ .long 1058286064
+ .long 1060014844
+ .long 1057227928
+ .long 1066229542
+ .long 3003908357
+ .long 0
+ .long 1057020941
+ .long 2987700082
+ .long 1065353216
+ .long 1048689044
+ .long 1059160627
+ .long 1060914481
+ .long 1058313864
+ .long 1066023654
+ .long 857665008
+ .long 0
+ .long 1057543609
+ .long 2992568718
+ .long 1065353216
+ .long 1049773965
+ .long 1060105673
+ .long 1061932376
+ .long 1059565214
+ .long 1065817767
+ .long 2992147565
+ .long 0
+ .long 1058080175
+ .long 854607280
+ .long 1065353216
+ .long 1050955490
+ .long 1061130203
+ .long 1063075792
+ .long 1060964899
+ .long 1065611879
+ .long 863292377
+ .long 0
+ .long 1058631876
+ .long 848316488
+ .long 1065353216
+ .long 1052241912
+ .long 1062244476
+ .long 1064374250
+ .long 1062608877
+ .long 1065405992
+ .long 838719090
+ .long 0
+ .long 1059200055
+ .long 2987155932
+ .long 1065353216
+ .long 1053642609
+ .long 1063460266
+ .long 1065596017
+ .long 1064468970
+ .long 1065046993
+ .long 848647046
+ .long 0
+ .long 1059786177
+ .long 850099898
+ .long 1065353216
+ .long 1055168194
+ .long 1064791104
+ .long 1066427841
+ .long 1065988022
+ .long 1064635218
+ .long 854274415
+ .long 0
+ .long 1060391849
+ .long 2998448362
+ .long 1065353216
+ .long 1056830711
+ .long 1065802920
+ .long 1067373883
+ .long 1067237086
+ .long 1064223444
+ .long 2998857895
+ .long 0
+ .long 1061018831
+ .long 852661766
+ .long 1073741824
+ .long 3202769007
+ .long 1066608086
+ .long 1068453481
+ .long 1068697612
+ .long 1063811669
+ .long 2991727995
+ .long 0
+ .long 1061669068
+ .long 2986407194
+ .long 1073741824
+ .long 3200789612
+ .long 1067498217
+ .long 1069688111
+ .long 1070408903
+ .long 1063399894
+ .long 2971248290
+ .long 0
+ .long 1062344705
+ .long 850280824
+ .long 1073741824
+ .long 3198626104
+ .long 1068485666
+ .long 1071103306
+ .long 1072410651
+ .long 1062988119
+ .long 839209514
+ .long 0
+ .long 1063048126
+ .long 826671880
+ .long 1073741824
+ .long 3196257989
+ .long 1069584946
+ .long 1072731698
+ .long 1074256640
+ .long 1062576344
+ .long 848856831
+ .long 0
+ .long 1063781982
+ .long 845614362
+ .long 1073741824
+ .long 3191263702
+ .long 1070813191
+ .long 1074178145
+ .long 1075661786
+ .long 1062164569
+ .long 854484200
+ .long 0
+ .long 1064549237
+ .long 855412877
+ .long 1073741824
+ .long 3183449264
+ .long 1072190735
+ .long 1075269479
+ .long 1077331464
+ .long 1061752795
+ .long 2998648110
+ .long 1065353216
+ .long 3196839438
+ .long 839748996
+ .long 1056964608
+ .long 3187152817
+ .long 3179496939
+ .long 1025375660
+ .long 3159543663
+ .long 1061341020
+ .long 2991308426
+ .long 1065353216
+ .long 3196528703
+ .long 2993207654
+ .long 1056964608
+ .long 3187565865
+ .long 3178961235
+ .long 1025040649
+ .long 3158667440
+ .long 1060929245
+ .long 2969570013
+ .long 1065353216
+ .long 3196220448
+ .long 839617357
+ .long 1048576000
+ .long 1039897640
+ .long 3178234548
+ .long 1024731756
+ .long 3157936127
+ .long 1060517470
+ .long 839629084
+ .long 1065353216
+ .long 3195769474
+ .long 2972943314
+ .long 1048576000
+ .long 1039520273
+ .long 3177530035
+ .long 1024452069
+ .long 3157392148
+ .long 1060105695
+ .long 849066615
+ .long 1065353216
+ .long 3195162227
+ .long 824230882
+ .long 1048576000
+ .long 1039159939
+ .long 3176846430
+ .long 1024176063
+ .long 3156719803
+ .long 1059693920
+ .long 854693985
+ .long 1065353216
+ .long 3194559300
+ .long 837912886
+ .long 1048576000
+ .long 1038816139
+ .long 3176182519
+ .long 1023917626
+ .long 3156100775
+ .long 1059282146
+ .long 2998438326
+ .long 1065353216
+ .long 3193960492
+ .long 2976936506
+ .long 1048576000
+ .long 1038488404
+ .long 3175537158
+ .long 1023672824
+ .long 3155484691
+ .long 1058870371
+ .long 2990888857
+ .long 1065353216
+ .long 3193365611
+ .long 837021697
+ .long 1048576000
+ .long 1038176293
+ .long 3174909264
+ .long 1023428141
+ .long 3154717848
+ .long 1058458596
+ .long 2966216238
+ .long 1065353216
+ .long 3192774465
+ .long 2981011604
+ .long 1048576000
+ .long 1037879388
+ .long 3174297790
+ .long 1023026096
+ .long 3154246903
+ .long 1058046821
+ .long 840048653
+ .long 1065353216
+ .long 3192186872
+ .long 2982847435
+ .long 1048576000
+ .long 1037597300
+ .long 3173701765
+ .long 1022609285
+ .long 3153191752
+ .long 1057635046
+ .long 849276400
+ .long 1065353216
+ .long 3191602652
+ .long 2972865050
+ .long 1048576000
+ .long 1037329660
+ .long 3173120241
+ .long 1022242934
+ .long 3152466531
+ .long 1057223271
+ .long 854903769
+ .long 1065353216
+ .long 3191021630
+ .long 838792638
+ .long 1048576000
+ .long 1037076124
+ .long 3172552332
+ .long 1021893801
+ .long 3151682133
+ .long 1056658385
+ .long 840258438
+ .long 1065353216
+ .long 3190443633
+ .long 2979855596
+ .long 1048576000
+ .long 1036836369
+ .long 3171997189
+ .long 1021543079
+ .long 3150495127
+ .long 1055834836
+ .long 2990469287
+ .long 1065353216
+ .long 3189868496
+ .long 2981611511
+ .long 1048576000
+ .long 1036610091
+ .long 3171453986
+ .long 1021220110
+ .long 3149437649
+ .long 1055011286
+ .long 2962859682
+ .long 1065353216
+ .long 3189296055
+ .long 2950857776
+ .long 1048576000
+ .long 1036397006
+ .long 3170921933
+ .long 1020942892
+ .long 3148919762
+ .long 1054187736
+ .long 840468223
+ .long 1065353216
+ .long 3188726149
+ .long 2955915960
+ .long 1048576000
+ .long 1036196851
+ .long 3169906765
+ .long 1020660679
+ .long 3147905210
+ .long 1053364187
+ .long 2990259502
+ .long 1065353216
+ .long 3188158621
+ .long 2978622083
+ .long 1048576000
+ .long 1036009378
+ .long 3168882838
+ .long 1020421234
+ .long 3147436656
+ .long 1052540637
+ .long 2961181405
+ .long 1065353216
+ .long 3187515595
+ .long 789904544
+ .long 1048576000
+ .long 1035834359
+ .long 3167876891
+ .long 1020189995
+ .long 3146799430
+ .long 1051717087
+ .long 840678007
+ .long 1065353216
+ .long 3186389132
+ .long 2974324164
+ .long 1048576000
+ .long 1035671582
+ .long 3166887590
+ .long 1019957287
+ .long 3145677161
+ .long 1050893538
+ .long 2990049718
+ .long 1065353216
+ .long 3185266517
+ .long 821445502
+ .long 1048576000
+ .long 1035520850
+ .long 3165913616
+ .long 1019751749
+ .long 3143905397
+ .long 1050069988
+ .long 2957827630
+ .long 1065353216
+ .long 3184147455
+ .long 823956970
+ .long 1048576000
+ .long 1035381982
+ .long 3164953691
+ .long 1019591684
+ .long 3143870825
+ .long 1049246438
+ .long 840887792
+ .long 1065353216
+ .long 3183031657
+ .long 2948197632
+ .long 1048576000
+ .long 1035254815
+ .long 3164006661
+ .long 1019406069
+ .long 3141406886
+ .long 1048269777
+ .long 831869830
+ .long 1065353216
+ .long 3181918839
+ .long 829265530
+ .long 1048576000
+ .long 1035139196
+ .long 3163071263
+ .long 1019275107
+ .long 3141473894
+ .long 1046622678
+ .long 2954471074
+ .long 1065353216
+ .long 3180808717
+ .long 2974758491
+ .long 1048576000
+ .long 1035034991
+ .long 3161787608
+ .long 1019131285
+ .long 3139614851
+ .long 1044975579
+ .long 2981870894
+ .long 1065353216
+ .long 3179701015
+ .long 2951749952
+ .long 1048576000
+ .long 1034942077
+ .long 3159956688
+ .long 1019002541
+ .long 3137649644
+ .long 1043328479
+ .long 832289399
+ .long 1065353216
+ .long 3177908479
+ .long 2968441398
+ .long 1048576000
+ .long 1034860345
+ .long 3158142289
+ .long 1018906717
+ .long 3137336762
+ .long 1041681380
+ .long 2949439022
+ .long 1065353216
+ .long 3175701100
+ .long 2963548093
+ .long 1048576000
+ .long 1034789701
+ .long 3156342344
+ .long 1018810804
+ .long 3133887847
+ .long 1039881169
+ .long 823481222
+ .long 1065353216
+ .long 3173496918
+ .long 2969038481
+ .long 1048576000
+ .long 1034730062
+ .long 3154554595
+ .long 1018750428
+ .long 3136028910
+ .long 1036586971
+ .long 2973482286
+ .long 1065353216
+ .long 3171295395
+ .long 2968300352
+ .long 1048576000
+ .long 1034681361
+ .long 3151437839
+ .long 1018664053
+ .long 3123383004
+ .long 1033292772
+ .long 2941050414
+ .long 1065353216
+ .long 3167298168
+ .long 808398440
+ .long 1048576000
+ .long 1034643540
+ .long 3147899215
+ .long 1018610153
+ .long 943964915
+ .long 1028198363
+ .long 2965093678
+ .long 1065353216
+ .long 3162902549
+ .long 2950073902
+ .long 1048576000
+ .long 1034616555
+ .long 3143016255
+ .long 1018603598
+ .long 3133555092
+ .long 1019809755
+ .long 2956705070
+ .long 1065353216
+ .long 3154512883
+ .long 803361198
+ .long 1048576000
+ .long 1034600377
+ .long 3134618720
+ .long 1018580133
+ .long 3134056577
+ .long 0
+ .long 0
+ .long 1065353216
+ .long 0
+ .long 0
+ .long 1048576000
+ .long 1034594987
+ .long 0
+ .long 1018552971
+ .long 0
+ .long 3167293403
+ .long 809221422
+ .long 1065353216
+ .long 1007029235
+ .long 2950844846
+ .long 1048576000
+ .long 1034600377
+ .long 987135072
+ .long 1018580133
+ .long 986572929
+ .long 3175682011
+ .long 817610030
+ .long 1065353216
+ .long 1015418901
+ .long 802590254
+ .long 1048576000
+ .long 1034616555
+ .long 995532607
+ .long 1018603598
+ .long 986071444
+ .long 3180776420
+ .long 793566766
+ .long 1065353216
+ .long 1019814520
+ .long 2955882088
+ .long 1048576000
+ .long 1034643540
+ .long 1000415567
+ .long 1018610153
+ .long 3091448562
+ .long 3184070619
+ .long 825998638
+ .long 1065353216
+ .long 1023811747
+ .long 820816704
+ .long 1048576000
+ .long 1034681361
+ .long 1003954191
+ .long 1018664053
+ .long 975899356
+ .long 3187364817
+ .long 2970964870
+ .long 1065353216
+ .long 1026013270
+ .long 821554833
+ .long 1048576000
+ .long 1034730062
+ .long 1007070947
+ .long 1018750428
+ .long 988545262
+ .long 3189165028
+ .long 801955374
+ .long 1065353216
+ .long 1028217452
+ .long 816064445
+ .long 1048576000
+ .long 1034789701
+ .long 1008858696
+ .long 1018810804
+ .long 986404199
+ .long 3190812127
+ .long 2979773047
+ .long 1065353216
+ .long 1030424831
+ .long 820957750
+ .long 1048576000
+ .long 1034860345
+ .long 1010658641
+ .long 1018906717
+ .long 989853114
+ .long 3192459227
+ .long 834387246
+ .long 1065353216
+ .long 1032217367
+ .long 804266304
+ .long 1048576000
+ .long 1034942077
+ .long 1012473040
+ .long 1019002541
+ .long 990165996
+ .long 3194106326
+ .long 806987426
+ .long 1065353216
+ .long 1033325069
+ .long 827274843
+ .long 1048576000
+ .long 1035034991
+ .long 1014303960
+ .long 1019131285
+ .long 992131203
+ .long 3195753425
+ .long 2979353478
+ .long 1065353216
+ .long 1034435191
+ .long 2976749178
+ .long 1048576000
+ .long 1035139196
+ .long 1015587615
+ .long 1019275107
+ .long 993990246
+ .long 3196730086
+ .long 2988371440
+ .long 1065353216
+ .long 1035548009
+ .long 800713984
+ .long 1048576000
+ .long 1035254815
+ .long 1016523013
+ .long 1019406069
+ .long 993923238
+ .long 3197553636
+ .long 810343982
+ .long 1065353216
+ .long 1036663807
+ .long 2971440618
+ .long 1048576000
+ .long 1035381982
+ .long 1017470043
+ .long 1019591684
+ .long 996387177
+ .long 3198377186
+ .long 842566070
+ .long 1065353216
+ .long 1037782869
+ .long 2968929150
+ .long 1048576000
+ .long 1035520850
+ .long 1018429968
+ .long 1019751749
+ .long 996421749
+ .long 3199200735
+ .long 2988161655
+ .long 1065353216
+ .long 1038905484
+ .long 826840516
+ .long 1048576000
+ .long 1035671582
+ .long 1019403942
+ .long 1019957287
+ .long 998193513
+ .long 3200024285
+ .long 813697757
+ .long 1065353216
+ .long 1040031947
+ .long 2937388192
+ .long 1048576000
+ .long 1035834359
+ .long 1020393243
+ .long 1020189995
+ .long 999315782
+ .long 3200847835
+ .long 842775854
+ .long 1065353216
+ .long 1040674973
+ .long 831138435
+ .long 1048576000
+ .long 1036009378
+ .long 1021399190
+ .long 1020421234
+ .long 999953008
+ .long 3201671384
+ .long 2987951871
+ .long 1065353216
+ .long 1041242501
+ .long 808432312
+ .long 1048576000
+ .long 1036196851
+ .long 1022423117
+ .long 1020660679
+ .long 1000421562
+ .long 3202494934
+ .long 815376034
+ .long 1065353216
+ .long 1041812407
+ .long 803374128
+ .long 1048576000
+ .long 1036397006
+ .long 1023438285
+ .long 1020942892
+ .long 1001436114
+ .long 3203318484
+ .long 842985639
+ .long 1065353216
+ .long 1042384848
+ .long 834127863
+ .long 1048576000
+ .long 1036610091
+ .long 1023970338
+ .long 1021220110
+ .long 1001954001
+ .long 3204142033
+ .long 2987742086
+ .long 1065353216
+ .long 1042959985
+ .long 832371948
+ .long 1048576000
+ .long 1036836369
+ .long 1024513541
+ .long 1021543079
+ .long 1003011479
+ .long 3204706919
+ .long 3002387417
+ .long 1065353216
+ .long 1043537982
+ .long 2986276286
+ .long 1048576000
+ .long 1037076124
+ .long 1025068684
+ .long 1021893801
+ .long 1004198485
+ .long 3205118694
+ .long 2996760048
+ .long 1065353216
+ .long 1044119004
+ .long 825381402
+ .long 1048576000
+ .long 1037329660
+ .long 1025636593
+ .long 1022242934
+ .long 1004982883
+ .long 3205530469
+ .long 2987532301
+ .long 1065353216
+ .long 1044703224
+ .long 835363787
+ .long 1048576000
+ .long 1037597300
+ .long 1026218117
+ .long 1022609285
+ .long 1005708104
+ .long 3205942244
+ .long 818732590
+ .long 1065353216
+ .long 1045290817
+ .long 833527956
+ .long 1048576000
+ .long 1037879388
+ .long 1026814142
+ .long 1023026096
+ .long 1006763255
+ .long 3206354019
+ .long 843405209
+ .long 1065353216
+ .long 1045881963
+ .long 2984505345
+ .long 1048576000
+ .long 1038176293
+ .long 1027425616
+ .long 1023428141
+ .long 1007234200
+ .long 3206765794
+ .long 850954678
+ .long 1065353216
+ .long 1046476844
+ .long 829452858
+ .long 1048576000
+ .long 1038488404
+ .long 1028053510
+ .long 1023672824
+ .long 1008001043
+ .long 3207177568
+ .long 3002177633
+ .long 1065353216
+ .long 1047075652
+ .long 2985396534
+ .long 1048576000
+ .long 1038816139
+ .long 1028698871
+ .long 1023917626
+ .long 1008617127
+ .long 3207589343
+ .long 2996550263
+ .long 1065353216
+ .long 1047678579
+ .long 2971714530
+ .long 1048576000
+ .long 1039159939
+ .long 1029362782
+ .long 1024176063
+ .long 1009236155
+ .long 3208001118
+ .long 2987112732
+ .long 1065353216
+ .long 1048285826
+ .long 825459666
+ .long 1048576000
+ .long 1039520273
+ .long 1030046387
+ .long 1024452069
+ .long 1009908500
+ .long 3208412893
+ .long 822086365
+ .long 1065353216
+ .long 1048736800
+ .long 2987101005
+ .long 1048576000
+ .long 1039897640
+ .long 1030750900
+ .long 1024731756
+ .long 1010452479
+ .long 3208824668
+ .long 843824778
+ .long 1065353216
+ .long 1049045055
+ .long 845724006
+ .long 1056964608
+ .long 3187565865
+ .long 1031477587
+ .long 1025040649
+ .long 1011183792
+ .long 3209236443
+ .long 851164462
+ .long 0
+ .long 3212836864
+ .long 725680128
+ .long 1073741824
+ .long 3003121664
+ .long 3221225472
+ .long 1076541384
+ .long 3226821083
+ .long 3209648217
+ .long 3001967848
+ .long 0
+ .long 3212032885
+ .long 3002896525
+ .long 1073741824
+ .long 3183449264
+ .long 3219674383
+ .long 1075269479
+ .long 3224815112
+ .long 3210059992
+ .long 2996340479
+ .long 0
+ .long 3211265630
+ .long 2993098010
+ .long 1073741824
+ .long 3191263702
+ .long 3218296839
+ .long 1074178145
+ .long 3223145434
+ .long 3210471767
+ .long 2986693162
+ .long 0
+ .long 3210531774
+ .long 2974155528
+ .long 1073741824
+ .long 3196257989
+ .long 3217068594
+ .long 1072731698
+ .long 3221740288
+ .long 3210883542
+ .long 823764642
+ .long 0
+ .long 3209828353
+ .long 2997764472
+ .long 1073741824
+ .long 3198626104
+ .long 3215969314
+ .long 1071103306
+ .long 3219894299
+ .long 3211295317
+ .long 844244347
+ .long 0
+ .long 3209152716
+ .long 838923546
+ .long 1073741824
+ .long 3200789612
+ .long 3214981865
+ .long 1069688111
+ .long 3217892551
+ .long 3211707092
+ .long 851374247
+ .long 0
+ .long 3208502479
+ .long 3000145414
+ .long 1073741824
+ .long 3202769007
+ .long 3214091734
+ .long 1068453481
+ .long 3216181260
+ .long 3212118866
+ .long 3001758063
+ .long 0
+ .long 3207875497
+ .long 850964714
+ .long 1065353216
+ .long 1056830711
+ .long 3213286568
+ .long 1067373883
+ .long 3214720734
+ .long 3212530641
+ .long 2996130694
+ .long 0
+ .long 3207269825
+ .long 2997583546
+ .long 1065353216
+ .long 1055168194
+ .long 3212274752
+ .long 1066427841
+ .long 3213471670
+ .long 3212889640
+ .long 2986202738
+ .long 0
+ .long 3206683703
+ .long 839672284
+ .long 1065353216
+ .long 1053642609
+ .long 3210943914
+ .long 1065596017
+ .long 3211952618
+ .long 3213095527
+ .long 3010776025
+ .long 0
+ .long 3206115524
+ .long 2995800136
+ .long 1065353216
+ .long 1052241912
+ .long 3209728124
+ .long 1064374250
+ .long 3210092525
+ .long 3213301415
+ .long 844663917
+ .long 0
+ .long 3205563823
+ .long 3002090928
+ .long 1065353216
+ .long 1050955490
+ .long 3208613851
+ .long 1063075792
+ .long 3208448547
+ .long 3213507302
+ .long 3005148656
+ .long 0
+ .long 3205027257
+ .long 845085070
+ .long 1065353216
+ .long 1049773965
+ .long 3207589321
+ .long 1061932376
+ .long 3207048862
+ .long 3213713190
+ .long 856424709
+ .long 0
+ .long 3204504589
+ .long 840216434
+ .long 1065353216
+ .long 1048689044
+ .long 3206644275
+ .long 1060914481
+ .long 3205797512
+ .long 3213919077
+ .long 2995920909
+ .long 0
+ .long 3203541104
+ .long 2991747572
+ .long 1065353216
+ .long 1046810746
+ .long 3205769712
+ .long 1060014844
+ .long 3204711576
+ .long 3214124965
+ .long 862052078
+ .long 0
+ .long 3202544697
+ .long 838089118
+ .long 1065353216
+ .long 1044984860
+ .long 3204957722
+ .long 1059214863
+ .long 3203049502
+ .long 3214330852
+ .long 827121198
+ .long 0
+ .long 3201569741
+ .long 834691410
+ .long 1065353216
+ .long 1043312844
+ .long 3203954379
+ .long 1058502663
+ .long 3201336375
+ .long 3214536739
+ .long 3007857448
+ .long 0
+ .long 3200614413
+ .long 840221633
+ .long 1065353216
+ .long 1041784404
+ .long 3202540354
+ .long 1057868403
+ .long 3199781921
+ .long 3214742627
+ .long 851793817
+ .long 0
+ .long 3199677008
+ .long 839026723
+ .long 1065353216
+ .long 1040390392
+ .long 3201214072
+ .long 1057307751
+ .long 3198426707
+ .long 3214948514
+ .long 3001338494
+ .long 0
+ .long 3198755927
+ .long 2964850736
+ .long 1065353216
+ .long 1038057984
+ .long 3199965673
+ .long 1056656040
+ .long 3197207230
+ .long 3215154402
+ .long 859343286
+ .long 0
+ .long 3197849666
+ .long 841628398
+ .long 1065353216
+ .long 1035760784
+ .long 3198786293
+ .long 1055777031
+ .long 3196119466
+ .long 3215360289
+ .long 2984524460
+ .long 0
+ .long 3196956802
+ .long 825401908
+ .long 1065353216
+ .long 1033689040
+ .long 3197667936
+ .long 1054999523
+ .long 3194181676
+ .long 3215566176
+ .long 3010566241
+ .long 0
+ .long 3196075988
+ .long 841457254
+ .long 1065353216
+ .long 1031831496
+ .long 3196603348
+ .long 1054310701
+ .long 3192272619
+ .long 3215772064
+ .long 845503056
+ .long 0
+ .long 3194352231
+ .long 2981409247
+ .long 1065353216
+ .long 1028557712
+ .long 3195112138
+ .long 1053716836
+ .long 3190669665
+ .long 3215977951
+ .long 3004938871
+ .long 0
+ .long 3192631215
+ .long 2938776032
+ .long 1065353216
+ .long 1025642520
+ .long 3193159376
+ .long 1053195814
+ .long 3189074146
+ .long 3216183839
+ .long 856634493
+ .long 0
+ .long 3190926925
+ .long 838017617
+ .long 1065353216
+ .long 1022797056
+ .long 3191277530
+ .long 1052746889
+ .long 3187399111
+ .long 3216389726
+ .long 2995501340
+ .long 0
+ .long 3189237092
+ .long 835035876
+ .long 1065353216
+ .long 1018446032
+ .long 3189456128
+ .long 1052374628
+ .long 3184936896
+ .long 3216595614
+ .long 862261863
+ .long 0
+ .long 3187448002
+ .long 816730716
+ .long 1065353216
+ .long 1014578464
+ .long 3187685445
+ .long 1052059423
+ .long 3182192286
+ .long 3216801501
+ .long 830474973
+ .long 0
+ .long 3184113116
+ .long 2974133638
+ .long 1065353216
+ .long 1008660256
+ .long 3184241386
+ .long 1051807326
+ .long 3179645874
+ .long 3217007388
+ .long 3007647664
+ .long 0
+ .long 3180794318
+ .long 2974804776
+ .long 1065353216
+ .long 1001540608
+ .long 3180848186
+ .long 1051617929
+ .long 3175942112
+ .long 3217213276
+ .long 852213386
+ .long 0
+ .long 3175692604
+ .long 2963513179
+ .long 1065353216
+ .long 991832832
+ .long 3175724500
+ .long 1051479824
+ .long 3170735141
+ .long 3217419163
+ .long 3000918924
+ .long 0
+ .long 3167296049
+ .long 2945355034
+ .long 1065353216
+ .long 975043072
+ .long 3167303981
+ .long 1051400329
+ .long 3163053371
+ .type __svml_stan_data_internal,@object
+ .size __svml_stan_data_internal,7232
+ .align 64
+__svml_stan_reduction_data_internal:
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1
+ .long 0
+ .long 0
+ .long 2
+ .long 0
+ .long 0
+ .long 5
+ .long 0
+ .long 0
+ .long 10
+ .long 0
+ .long 0
+ .long 20
+ .long 0
+ .long 0
+ .long 40
+ .long 0
+ .long 0
+ .long 81
+ .long 0
+ .long 0
+ .long 162
+ .long 0
+ .long 0
+ .long 325
+ .long 0
+ .long 0
+ .long 651
+ .long 0
+ .long 0
+ .long 1303
+ .long 0
+ .long 0
+ .long 2607
+ .long 0
+ .long 0
+ .long 5215
+ .long 0
+ .long 0
+ .long 10430
+ .long 0
+ .long 0
+ .long 20860
+ .long 0
+ .long 0
+ .long 41721
+ .long 0
+ .long 0
+ .long 83443
+ .long 0
+ .long 0
+ .long 166886
+ .long 0
+ .long 0
+ .long 333772
+ .long 0
+ .long 0
+ .long 667544
+ .long 0
+ .long 0
+ .long 1335088
+ .long 0
+ .long 0
+ .long 2670176
+ .long 0
+ .long 0
+ .long 5340353
+ .long 0
+ .long 0
+ .long 10680707
+ .long 0
+ .long 0
+ .long 21361414
+ .long 0
+ .long 0
+ .long 42722829
+ .long 0
+ .long 0
+ .long 85445659
+ .long 0
+ .long 0
+ .long 170891318
+ .long 0
+ .long 0
+ .long 341782637
+ .long 0
+ .long 0
+ .long 683565275
+ .long 0
+ .long 0
+ .long 1367130551
+ .long 0
+ .long 0
+ .long 2734261102
+ .long 0
+ .long 1
+ .long 1173554908
+ .long 0
+ .long 2
+ .long 2347109817
+ .long 0
+ .long 5
+ .long 399252338
+ .long 0
+ .long 10
+ .long 798504676
+ .long 0
+ .long 20
+ .long 1597009353
+ .long 0
+ .long 40
+ .long 3194018707
+ .long 0
+ .long 81
+ .long 2093070119
+ .long 0
+ .long 162
+ .long 4186140238
+ .long 0
+ .long 325
+ .long 4077313180
+ .long 0
+ .long 651
+ .long 3859659065
+ .long 0
+ .long 1303
+ .long 3424350834
+ .long 0
+ .long 2607
+ .long 2553734372
+ .long 0
+ .long 5215
+ .long 812501448
+ .long 0
+ .long 10430
+ .long 1625002897
+ .long 0
+ .long 20860
+ .long 3250005794
+ .long 0
+ .long 41721
+ .long 2205044292
+ .long 0
+ .long 83443
+ .long 115121288
+ .long 0
+ .long 166886
+ .long 230242576
+ .long 0
+ .long 333772
+ .long 460485152
+ .long 0
+ .long 667544
+ .long 920970305
+ .long 0
+ .long 1335088
+ .long 1841940610
+ .long 0
+ .long 2670176
+ .long 3683881221
+ .long 0
+ .long 5340353
+ .long 3072795146
+ .long 0
+ .long 10680707
+ .long 1850622997
+ .long 0
+ .long 21361414
+ .long 3701245994
+ .long 0
+ .long 42722829
+ .long 3107524692
+ .long 0
+ .long 85445659
+ .long 1920082089
+ .long 0
+ .long 170891318
+ .long 3840164178
+ .long 0
+ .long 341782637
+ .long 3385361061
+ .long 0
+ .long 683565275
+ .long 2475754826
+ .long 0
+ .long 1367130551
+ .long 656542356
+ .long 0
+ .long 2734261102
+ .long 1313084713
+ .long 1
+ .long 1173554908
+ .long 2626169427
+ .long 2
+ .long 2347109817
+ .long 957371559
+ .long 5
+ .long 399252338
+ .long 1914743119
+ .long 10
+ .long 798504676
+ .long 3829486239
+ .long 20
+ .long 1597009353
+ .long 3364005183
+ .long 40
+ .long 3194018707
+ .long 2433043071
+ .long 81
+ .long 2093070119
+ .long 571118846
+ .long 162
+ .long 4186140238
+ .long 1142237692
+ .long 325
+ .long 4077313180
+ .long 2284475384
+ .long 651
+ .long 3859659065
+ .long 273983472
+ .long 1303
+ .long 3424350834
+ .long 547966945
+ .long 2607
+ .long 2553734372
+ .long 1095933890
+ .long 5215
+ .long 812501448
+ .long 2191867780
+ .long 10430
+ .long 1625002897
+ .long 88768265
+ .long 20860
+ .long 3250005794
+ .long 177536531
+ .long 41721
+ .long 2205044292
+ .long 355073063
+ .long 83443
+ .long 115121288
+ .long 710146126
+ .long 166886
+ .long 230242576
+ .long 1420292253
+ .long 333772
+ .long 460485152
+ .long 2840584506
+ .long 667544
+ .long 920970305
+ .long 1386201717
+ .long 1335088
+ .long 1841940610
+ .long 2772403434
+ .long 2670176
+ .long 3683881221
+ .long 1249839573
+ .long 5340353
+ .long 3072795146
+ .long 2499679147
+ .long 10680707
+ .long 1850622997
+ .long 704390999
+ .long 21361414
+ .long 3701245994
+ .long 1408781999
+ .long 42722829
+ .long 3107524692
+ .long 2817563999
+ .long 85445659
+ .long 1920082089
+ .long 1340160702
+ .long 170891318
+ .long 3840164178
+ .long 2680321405
+ .long 341782637
+ .long 3385361061
+ .long 1065675514
+ .long 683565275
+ .long 2475754826
+ .long 2131351028
+ .long 1367130551
+ .long 656542356
+ .long 4262702056
+ .long 2734261102
+ .long 1313084713
+ .long 4230436817
+ .long 1173554908
+ .long 2626169427
+ .long 4165906339
+ .long 2347109817
+ .long 957371559
+ .long 4036845383
+ .long 399252338
+ .long 1914743119
+ .long 3778723471
+ .long 798504676
+ .long 3829486239
+ .long 3262479647
+ .long 1597009353
+ .long 3364005183
+ .long 2229991998
+ .long 3194018707
+ .long 2433043071
+ .long 165016701
+ .long 2093070119
+ .long 571118846
+ .long 330033402
+ .long 4186140238
+ .long 1142237692
+ .long 660066805
+ .long 4077313180
+ .long 2284475384
+ .long 1320133610
+ .long 3859659065
+ .long 273983472
+ .long 2640267220
+ .long 3424350834
+ .long 547966945
+ .long 985567145
+ .long 2553734372
+ .long 1095933890
+ .long 1971134291
+ .long 812501448
+ .long 2191867780
+ .long 3942268582
+ .long 1625002897
+ .long 88768265
+ .long 3589569869
+ .long 3250005794
+ .long 177536531
+ .long 2884172442
+ .long 2205044292
+ .long 355073063
+ .long 1473377588
+ .long 115121288
+ .long 710146126
+ .long 2946755177
+ .long 230242576
+ .long 1420292253
+ .long 1598543059
+ .long 460485152
+ .long 2840584506
+ .long 3197086118
+ .long 920970305
+ .long 1386201717
+ .long 2099204941
+ .long 1841940610
+ .long 2772403434
+ .long 4198409883
+ .long 3683881221
+ .long 1249839573
+ .long 4101852471
+ .long 3072795146
+ .long 2499679147
+ .long 3908737646
+ .long 1850622997
+ .long 704390999
+ .long 3522507997
+ .long 3701245994
+ .long 1408781999
+ .long 2750048699
+ .long 3107524692
+ .long 2817563999
+ .long 1205130103
+ .long 1920082089
+ .long 1340160702
+ .long 2410260206
+ .long 3840164178
+ .long 2680321405
+ .long 525553116
+ .long 3385361061
+ .long 1065675514
+ .long 1051106232
+ .long 2475754826
+ .long 2131351028
+ .long 2102212464
+ .long 656542356
+ .long 4262702056
+ .long 4204424928
+ .long 1313084713
+ .long 4230436817
+ .long 4113882560
+ .long 2626169427
+ .long 4165906339
+ .long 3932797825
+ .long 957371559
+ .long 4036845383
+ .long 3570628355
+ .long 1914743119
+ .long 3778723471
+ .long 2846289414
+ .long 3829486239
+ .long 3262479647
+ .long 1397611533
+ .long 3364005183
+ .long 2229991998
+ .long 2795223067
+ .long 2433043071
+ .long 165016701
+ .long 1295478838
+ .long 571118846
+ .long 330033402
+ .long 2590957677
+ .long 1142237692
+ .long 660066805
+ .long 886948059
+ .long 2284475384
+ .long 1320133610
+ .long 1773896118
+ .long 273983472
+ .long 2640267220
+ .long 3547792237
+ .long 547966945
+ .long 985567145
+ .long 2800617179
+ .long 1095933890
+ .long 1971134291
+ .long 1306267062
+ .long 2191867780
+ .long 3942268582
+ .long 2612534124
+ .long 88768265
+ .long 3589569869
+ .long 930100952
+ .long 177536531
+ .long 2884172442
+ .long 1860201905
+ .long 355073063
+ .long 1473377588
+ .long 3720403810
+ .long 710146126
+ .long 2946755177
+ .long 3145840325
+ .long 1420292253
+ .long 1598543059
+ .long 1996713354
+ .long 2840584506
+ .long 3197086118
+ .long 3993426708
+ .long 1386201717
+ .long 2099204941
+ .long 3691886121
+ .long 2772403434
+ .long 4198409883
+ .long 3088804946
+ .long 1249839573
+ .long 4101852471
+ .long 1882642597
+ .long 2499679147
+ .long 3908737646
+ .long 3765285194
+ .long 704390999
+ .long 3522507997
+ .long 3235603093
+ .long 1408781999
+ .long 2750048699
+ .long 2176238891
+ .long 2817563999
+ .long 1205130103
+ .long 57510486
+ .long 1340160702
+ .long 2410260206
+ .long 115020972
+ .long 2680321405
+ .long 525553116
+ .long 230041945
+ .long 1065675514
+ .long 1051106232
+ .long 460083891
+ .long 2131351028
+ .long 2102212464
+ .long 920167782
+ .long 4262702056
+ .long 4204424928
+ .long 1840335564
+ .long 4230436817
+ .long 4113882560
+ .long 3680671129
+ .long 4165906339
+ .long 3932797825
+ .long 3066374962
+ .long 4036845383
+ .long 3570628355
+ .long 1837782628
+ .long 3778723471
+ .long 2846289414
+ .long 3675565257
+ .long 3262479647
+ .long 1397611533
+ .long 3056163219
+ .long 2229991998
+ .long 2795223067
+ .long 1817359143
+ .long 165016701
+ .long 1295478838
+ .long 3634718287
+ .long 330033402
+ .long 2590957677
+ .long 2974469278
+ .long 660066805
+ .long 886948059
+ .long 1653971260
+ .long 1320133610
+ .long 1773896118
+ .long 3307942520
+ .long 2640267220
+ .long 3547792237
+ .long 2320917745
+ .long 985567145
+ .long 2800617179
+ .long 346868194
+ .long 1971134291
+ .long 1306267062
+ .long 693736388
+ .long 3942268582
+ .long 2612534124
+ .long 1387472776
+ .long 3589569869
+ .long 930100952
+ .long 2774945552
+ .long 2884172442
+ .long 1860201905
+ .long 1254923809
+ .long 1473377588
+ .long 3720403810
+ .long 2509847619
+ .long 2946755177
+ .long 3145840325
+ .long 724727943
+ .long 1598543059
+ .long 1996713354
+ .long 1449455886
+ .long 3197086118
+ .long 3993426708
+ .long 2898911772
+ .long 2099204941
+ .long 3691886121
+ .long 1502856249
+ .long 4198409883
+ .long 3088804946
+ .long 3005712498
+ .long 4101852471
+ .long 1882642597
+ .long 1716457700
+ .long 3908737646
+ .long 3765285194
+ .long 3432915400
+ .long 3522507997
+ .long 3235603093
+ .long 2570863504
+ .long 2750048699
+ .long 2176238891
+ .long 846759712
+ .long 1205130103
+ .long 57510486
+ .long 1693519425
+ .long 2410260206
+ .long 115020972
+ .long 3387038850
+ .long 525553116
+ .long 230041945
+ .long 2479110404
+ .long 1051106232
+ .long 460083891
+ .long 663253512
+ .long 2102212464
+ .long 920167782
+ .long 1326507024
+ .long 4204424928
+ .long 1840335564
+ .long 2653014048
+ .long 4113882560
+ .long 3680671129
+ .long 1011060801
+ .long 3932797825
+ .long 3066374962
+ .long 2022121603
+ .long 3570628355
+ .long 1837782628
+ .long 4044243207
+ .long 2846289414
+ .long 3675565257
+ .long 3793519119
+ .long 1397611533
+ .long 3056163219
+ .long 3292070943
+ .long 2795223067
+ .long 1817359143
+ .long 2289174591
+ .long 1295478838
+ .long 3634718287
+ .long 283381887
+ .long 2590957677
+ .long 2974469278
+ .long 566763775
+ .type __svml_stan_reduction_data_internal,@object
+ .size __svml_stan_reduction_data_internal,3072
+ .align 4
+__stan_la__vmlsTanTab:
+ .long 0
+ .long 2139095040
+ .type __stan_la__vmlsTanTab,@object
+ .size __stan_la__vmlsTanTab,8
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * NOTE: Since the hyperbolic tangent function is odd
+ * (tanh(x) = -tanh(-x)), below algorithm deals with the absolute
+ * value of the argument |x|: tanh(x) = sign(x) * tanh(|x|)
+ *
+ * We use a table lookup method to compute tanh(|x|).
+ * The basic idea is to split the input range into a number of subintervals
+ * and to approximate tanh(.) with a polynomial on each of them.
+ *
+ * IEEE SPECIAL CONDITIONS:
+ * x = [+,-]0, r = [+,-]0
+ * x = +Inf, r = +1
+ * x = -Inf, r = -1
+ * x = QNaN, r = QNaN
+ * x = SNaN, r = QNaN
+ *
+ *
+ * ALGORITHM DETAILS
+ * We handle special values in a callout function, aside from main path
+ * computations. "Special" for this algorithm are:
+ * INF, NAN, |x| > HUGE_THRESHOLD
+ *
+ *
+ * Main path computations are organized as follows:
+ * Actually we split the interval [0, SATURATION_THRESHOLD)
+ * into a number of subintervals. On each subinterval we approximate tanh(.)
+ * with a minimax polynomial of pre-defined degree. Polynomial coefficients
+ * are computed beforehand and stored in table. We also use
+ *
+ * y := |x| + B,
+ *
+ * here B depends on subinterval and is used to make argument
+ * closer to zero.
+ * We also add large fake interval [SATURATION_THRESHOLD, HUGE_THRESHOLD],
+ * where 1.0 + 0.0*y + 0.0*y^2 ... coefficients are stored - just to
+ * preserve main path computation logic but return 1.0 for all arguments.
+ *
+ * Hence reconstruction looks as follows:
+ * we extract proper polynomial and range reduction coefficients
+ * (Pj and B), corresponding to subinterval, to which |x| belongs,
+ * and return
+ *
+ * r := sign(x) * (P0 + P1 * y + ... + Pn * y^n)
+ *
+ * NOTE: we use multiprecision technique to multiply and sum the first
+ * K terms of the polynomial. So Pj, j = 0..K are stored in
+ * table each as a pair of target precision numbers (Pj and PLj) to
+ * achieve wider than target precision.
+ *
+ * --
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_tanh8_z0_0:
+
+ .align 16,0x90
+ .globl __svml_tanh8
+
+__svml_tanh8:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $320, %rsp
+ vpsrlq $32, %zmm0, %zmm4
+ vmovups %zmm0, (%rsp)
+ vmovups __svml_dtanh_data_internal(%rip), %zmm14
+ vmovups 128+__svml_dtanh_data_internal(%rip), %zmm15
+ vpmovqd %zmm4, %ymm5
+
+/* -------------------- Constant loading ------------------- */
+ vandpd 10432+__svml_dtanh_data_internal(%rip), %zmm0, %zmm13
+ vandpd 10368+__svml_dtanh_data_internal(%rip), %zmm0, %zmm3
+
+/* Here huge arguments, INF and NaNs are filtered out to callout. */
+ vpand 2432+__svml_dtanh_data_internal(%rip), %ymm5, %ymm7
+ vmovups 384+__svml_dtanh_data_internal(%rip), %zmm0
+ vmovups 2176+__svml_dtanh_data_internal(%rip), %zmm4
+ vmovups 2048+__svml_dtanh_data_internal(%rip), %zmm5
+ vmovups %zmm3, 64(%rsp)
+ vmovups 512+__svml_dtanh_data_internal(%rip), %zmm3
+ vpsubd 2496+__svml_dtanh_data_internal(%rip), %ymm7, %ymm8
+
+/* if VMIN, VMAX is defined for I type */
+ vxorps %ymm9, %ymm9, %ymm9
+ vpmaxsd %ymm9, %ymm8, %ymm10
+ vpminsd 2560+__svml_dtanh_data_internal(%rip), %ymm10, %ymm11
+ vpsrld $19, %ymm11, %ymm12
+ vmovups 1664+__svml_dtanh_data_internal(%rip), %zmm8
+ vmovups 1536+__svml_dtanh_data_internal(%rip), %zmm9
+ vmovups 1408+__svml_dtanh_data_internal(%rip), %zmm10
+ vmovups 1280+__svml_dtanh_data_internal(%rip), %zmm11
+ vpmovzxdq %ymm12, %zmm2
+ vmovups 1152+__svml_dtanh_data_internal(%rip), %zmm12
+ vpermt2pd 448+__svml_dtanh_data_internal(%rip), %zmm2, %zmm0
+ vpermt2pd 64+__svml_dtanh_data_internal(%rip), %zmm2, %zmm14
+ vpermt2pd 2240+__svml_dtanh_data_internal(%rip), %zmm2, %zmm4
+ vpermt2pd 2112+__svml_dtanh_data_internal(%rip), %zmm2, %zmm5
+ vsubpd {rn-sae}, %zmm14, %zmm13, %zmm1
+ vpermt2pd 1728+__svml_dtanh_data_internal(%rip), %zmm2, %zmm8
+ vpermt2pd 1600+__svml_dtanh_data_internal(%rip), %zmm2, %zmm9
+ vpermt2pd 1472+__svml_dtanh_data_internal(%rip), %zmm2, %zmm10
+ vpermt2pd 1344+__svml_dtanh_data_internal(%rip), %zmm2, %zmm11
+ vpermt2pd 1216+__svml_dtanh_data_internal(%rip), %zmm2, %zmm12
+ vpermt2pd 576+__svml_dtanh_data_internal(%rip), %zmm2, %zmm3
+ vpermt2pd 192+__svml_dtanh_data_internal(%rip), %zmm2, %zmm15
+ vmovups %zmm0, 192(%rsp)
+ vmovups 2304+__svml_dtanh_data_internal(%rip), %zmm0
+ vmovups 1024+__svml_dtanh_data_internal(%rip), %zmm13
+ vmovups 896+__svml_dtanh_data_internal(%rip), %zmm14
+ vmovups %zmm3, 256(%rsp)
+ vmovups 768+__svml_dtanh_data_internal(%rip), %zmm3
+ vmovups %zmm15, 128(%rsp)
+ vmovups 640+__svml_dtanh_data_internal(%rip), %zmm15
+ vpermt2pd 2368+__svml_dtanh_data_internal(%rip), %zmm2, %zmm0
+ vpermt2pd 1088+__svml_dtanh_data_internal(%rip), %zmm2, %zmm13
+ vpermt2pd 960+__svml_dtanh_data_internal(%rip), %zmm2, %zmm14
+ vpermt2pd 832+__svml_dtanh_data_internal(%rip), %zmm2, %zmm3
+ vpermt2pd 704+__svml_dtanh_data_internal(%rip), %zmm2, %zmm15
+ vfmadd213pd {rn-sae}, %zmm4, %zmm1, %zmm0
+ vpcmpgtd 10560+__svml_dtanh_data_internal(%rip), %ymm7, %ymm6
+ vmovmskps %ymm6, %edx
+ vmovups 1920+__svml_dtanh_data_internal(%rip), %zmm6
+ vfmadd213pd {rn-sae}, %zmm5, %zmm1, %zmm0
+ vmovups 1792+__svml_dtanh_data_internal(%rip), %zmm7
+ vpermt2pd 1984+__svml_dtanh_data_internal(%rip), %zmm2, %zmm6
+ vpermt2pd 1856+__svml_dtanh_data_internal(%rip), %zmm2, %zmm7
+ vfmadd213pd {rn-sae}, %zmm6, %zmm1, %zmm0
+ vmovups 256(%rsp), %zmm2
+ vfmadd213pd {rn-sae}, %zmm7, %zmm1, %zmm0
+ vfmadd213pd {rn-sae}, %zmm8, %zmm1, %zmm0
+ vfmadd213pd {rn-sae}, %zmm9, %zmm1, %zmm0
+ vfmadd213pd {rn-sae}, %zmm10, %zmm1, %zmm0
+ vfmadd213pd {rn-sae}, %zmm11, %zmm1, %zmm0
+ vfmadd213pd {rn-sae}, %zmm12, %zmm1, %zmm0
+ vfmadd213pd {rn-sae}, %zmm13, %zmm1, %zmm0
+ vfmadd213pd {rn-sae}, %zmm14, %zmm1, %zmm0
+ vfmadd213pd {rn-sae}, %zmm3, %zmm1, %zmm0
+ vmovups 128(%rsp), %zmm3
+ vfmadd213pd {rn-sae}, %zmm15, %zmm1, %zmm0
+ vfmadd213pd {rn-sae}, %zmm2, %zmm1, %zmm0
+ vmovups 192(%rsp), %zmm2
+ vfmadd213pd {rn-sae}, %zmm2, %zmm1, %zmm0
+ vfmadd213pd {rn-sae}, %zmm3, %zmm1, %zmm0
+ vorpd 64(%rsp), %zmm0, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups (%rsp), %zmm1
+ vmovups %zmm0, 128(%rsp)
+ vmovups %zmm1, 64(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe8, 0xfe, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe0, 0xfe, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xf8, 0xfe, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xf0, 0xfe, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xd8, 0xfe, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xd0, 0xfe, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc8, 0xfe, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc0, 0xfe, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $8, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe8, 0xfe, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe0, 0xfe, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xf8, 0xfe, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xf0, 0xfe, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xd8, 0xfe, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xd0, 0xfe, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc8, 0xfe, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc0, 0xfe, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,8), %rdi
+ lea 128(%rsp,%r12,8), %rsi
+
+ call __svml_dtanh_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_tanh8,@function
+ .size __svml_tanh8,.-__svml_tanh8
+..LN__svml_tanh8.0:
+
+.L_2__routine_start___svml_dtanh_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_dtanh_cout_rare_internal:
+
+
+ .cfi_startproc
+..L63:
+
+ lea __dtanh_la__imldTanhTab(%rip), %rdx
+ movb 7(%rdi), %al
+ andb $-128, %al
+ shrb $7, %al
+ movzbl %al, %ecx
+ movzwl 6(%rdi), %eax
+ andl $32752, %eax
+ shrl $4, %eax
+ movq (%rdx,%rcx,8), %rdx
+ cmpl $2047, %eax
+ je .LBL_2_6
+
+
+ cmpl $2046, %eax
+ jne .LBL_2_4
+
+.LBL_2_3:
+
+ movq %rdx, (%rsi)
+ jmp .LBL_2_5
+
+.LBL_2_4:
+
+ movsd (%rdi), %xmm1
+ movsd __dtanh_la__imldTanhTab(%rip), %xmm0
+ addsd %xmm1, %xmm0
+ mulsd %xmm0, %xmm1
+ movsd %xmm1, (%rsi)
+
+.LBL_2_5:
+
+ xorl %eax, %eax
+ ret
+
+.LBL_2_6:
+
+ testl $1048575, 4(%rdi)
+ jne .LBL_2_9
+
+
+ cmpl $0, (%rdi)
+ je .LBL_2_3
+
+.LBL_2_9:
+
+ movsd (%rdi), %xmm0
+ addsd %xmm0, %xmm0
+ movsd %xmm0, (%rsi)
+ jmp .LBL_2_5
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_dtanh_cout_rare_internal,@function
+ .size __svml_dtanh_cout_rare_internal,.-__svml_dtanh_cout_rare_internal
+..LN__svml_dtanh_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_dtanh_data_internal:
+ .long 0
+ .long 0
+ .long 0
+ .long 1070333952
+ .long 0
+ .long 1070858240
+ .long 0
+ .long 1071382528
+ .long 0
+ .long 1071906816
+ .long 0
+ .long 1072431104
+ .long 0
+ .long 1072955392
+ .long 0
+ .long 1073479680
+ .long 0
+ .long 1074003968
+ .long 0
+ .long 1074528256
+ .long 0
+ .long 1075052544
+ .long 0
+ .long 1075576832
+ .long 0
+ .long 1076101120
+ .long 0
+ .long 1076625408
+ .long 0
+ .long 1077149696
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1097497746
+ .long 1070305232
+ .long 2699715854
+ .long 1070817176
+ .long 3997728823
+ .long 1071273769
+ .long 3938160533
+ .long 1071759175
+ .long 193732629
+ .long 1072072293
+ .long 3144363502
+ .long 1072375075
+ .long 2548249895
+ .long 1072570303
+ .long 638218690
+ .long 1072665176
+ .long 3325726839
+ .long 1072689426
+ .long 2523455249
+ .long 1072693057
+ .long 2200391922
+ .long 1072693244
+ .long 4257836853
+ .long 1072693247
+ .long 4294954840
+ .long 1072693247
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 3167993022
+ .long 1013310014
+ .long 2889539328
+ .long 3159121931
+ .long 394645568
+ .long 1013728265
+ .long 2799920971
+ .long 1015161303
+ .long 754366556
+ .long 1013577885
+ .long 3960180508
+ .long 1014215657
+ .long 69774042
+ .long 3162475851
+ .long 2161066944
+ .long 3162264280
+ .long 923362432
+ .long 1014879086
+ .long 2160345802
+ .long 1014714211
+ .long 3729195158
+ .long 3161626453
+ .long 675671997
+ .long 1015336837
+ .long 1141527416
+ .long 1013957883
+ .long 2209699952
+ .long 3160643600
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 2750448946
+ .long 1072596012
+ .long 1257606939
+ .long 1072501079
+ .long 2619663609
+ .long 1072338011
+ .long 863303701
+ .long 1072048204
+ .long 2694810990
+ .long 1071654144
+ .long 837003456
+ .long 1070723665
+ .long 472162617
+ .long 1069359818
+ .long 532307062
+ .long 1067137790
+ .long 431106849
+ .long 1064162173
+ .long 329904022
+ .long 1059572972
+ .long 4080160942
+ .long 1053550275
+ .long 1402271583
+ .long 1044493446
+ .long 467296040
+ .long 1032344560
+ .long 26734424
+ .long 1014207804
+ .long 0
+ .long 0
+ .long 1071622681
+ .long 3153114090
+ .long 3948133409
+ .long 3217705130
+ .long 4096956694
+ .long 3218184481
+ .long 2616164369
+ .long 3218465008
+ .long 2620770434
+ .long 3218641845
+ .long 3075958072
+ .long 3218520700
+ .long 1950184789
+ .long 3217978001
+ .long 2686385024
+ .long 3216731525
+ .long 1489441818
+ .long 3214597550
+ .long 1992796697
+ .long 3211642259
+ .long 1952936976
+ .long 3207056478
+ .long 3904162951
+ .long 3201033920
+ .long 1382745445
+ .long 3191977094
+ .long 468673444
+ .long 3179828208
+ .long 3843669553
+ .long 3161691483
+ .long 0
+ .long 0
+ .long 1431655765
+ .long 3218429269
+ .long 3264395793
+ .long 3218178991
+ .long 60595194
+ .long 3217824331
+ .long 1837960166
+ .long 3217124894
+ .long 1964918946
+ .long 3214033516
+ .long 2998587684
+ .long 1068822866
+ .long 3421467326
+ .long 1069267520
+ .long 952003133
+ .long 1068506016
+ .long 1215426504
+ .long 1066495476
+ .long 2650572912
+ .long 1063503494
+ .long 4178958376
+ .long 1059043758
+ .long 3799805457
+ .long 1052940753
+ .long 3704238924
+ .long 1043831645
+ .long 2076585114
+ .long 1031813109
+ .long 1352847351
+ .long 1013591371
+ .long 0
+ .long 0
+ .long 3830371894
+ .long 3169224254
+ .long 74893150
+ .long 1069567437
+ .long 1235750664
+ .long 1069825332
+ .long 916043751
+ .long 1069924975
+ .long 4138411315
+ .long 1069655686
+ .long 829220656
+ .long 1068441660
+ .long 663246204
+ .long 3213477792
+ .long 652268865
+ .long 3214415230
+ .long 3251098232
+ .long 3212868437
+ .long 1480792335
+ .long 3209929101
+ .long 3365608027
+ .long 3205478075
+ .long 3330582883
+ .long 3199375817
+ .long 3573234945
+ .long 3190266717
+ .long 2061970086
+ .long 3178248181
+ .long 3148320390
+ .long 3160026274
+ .long 0
+ .long 0
+ .long 286337717
+ .long 1069617425
+ .long 4261152941
+ .long 1068876190
+ .long 3694459820
+ .long 1067928728
+ .long 2399079031
+ .long 3212381546
+ .long 394897286
+ .long 3215735810
+ .long 3073534041
+ .long 3215860118
+ .long 301960234
+ .long 3214124960
+ .long 3353887502
+ .long 1064191753
+ .long 4200665425
+ .long 1063741482
+ .long 2003926207
+ .long 1061090030
+ .long 2196865207
+ .long 1056528964
+ .long 2107880963
+ .long 1050526402
+ .long 3656860478
+ .long 1041425071
+ .long 881228218
+ .long 1029305120
+ .long 2612840768
+ .long 1011136029
+ .long 0
+ .long 0
+ .long 3722294196
+ .long 3181505049
+ .long 2573001951
+ .long 3216029919
+ .long 4095639908
+ .long 3216151900
+ .long 3272210374
+ .long 3215957253
+ .long 3439280785
+ .long 3214441767
+ .long 628273304
+ .long 1066085542
+ .long 3354767370
+ .long 1066343670
+ .long 300170709
+ .long 1063270296
+ .long 1870156670
+ .long 3209139074
+ .long 1580606479
+ .long 3206808937
+ .long 3818710870
+ .long 3202408589
+ .long 3126817102
+ .long 3196311305
+ .long 3320734688
+ .long 3187224127
+ .long 821170446
+ .long 3175173312
+ .long 3906480775
+ .long 3156975650
+ .long 0
+ .long 0
+ .long 428888587
+ .long 3215696314
+ .long 3125999356
+ .long 3214336891
+ .long 407196569
+ .long 1053816799
+ .long 886258254
+ .long 1066874408
+ .long 2149075781
+ .long 1067351939
+ .long 3888390356
+ .long 1065784643
+ .long 1226056234
+ .long 3211994813
+ .long 178100474
+ .long 3210723675
+ .long 4201249718
+ .long 1058328572
+ .long 3854015760
+ .long 1057324616
+ .long 3621220964
+ .long 1052982118
+ .long 1468766992
+ .long 1046916174
+ .long 2369608770
+ .long 1037879115
+ .long 327127732
+ .long 1025754505
+ .long 747046817
+ .long 1007714190
+ .long 0
+ .long 0
+ .long 4036362527
+ .long 3191151783
+ .long 839661649
+ .long 1067363059
+ .long 4269154241
+ .long 1067251747
+ .long 391446303
+ .long 1066410535
+ .long 2090623151
+ .long 3211993063
+ .long 1751510141
+ .long 3213141508
+ .long 4072216875
+ .long 3209470961
+ .long 3769618983
+ .long 1061976030
+ .long 3462945146
+ .long 1057228123
+ .long 3030849095
+ .long 3202531084
+ .long 4269010901
+ .long 3198361258
+ .long 742615277
+ .long 3192302512
+ .long 3397417437
+ .long 3183265609
+ .long 943110610
+ .long 3171141000
+ .long 371608300
+ .long 3153099348
+ .long 0
+ .long 0
+ .long 1315619150
+ .long 1066820857
+ .long 1001273821
+ .long 3214201652
+ .long 3859675203
+ .long 3212560200
+ .long 725858949
+ .long 3213658423
+ .long 2464052346
+ .long 3212913056
+ .long 1297319750
+ .long 1063307355
+ .long 563735576
+ .long 1062988089
+ .long 2756222736
+ .long 3207203944
+ .long 31207338
+ .long 3204466214
+ .long 434022900
+ .long 1052227234
+ .long 2370591882
+ .long 1048628172
+ .long 588930601
+ .long 1042556347
+ .long 3198977634
+ .long 1033474724
+ .long 1590950759
+ .long 1021415866
+ .long 195904708
+ .long 1003000389
+ .long 0
+ .long 0
+ .long 4252521214
+ .long 3198731457
+ .long 2969857811
+ .long 3217870358
+ .long 575387574
+ .long 3212943727
+ .long 67550217
+ .long 3210922992
+ .long 2955736731
+ .long 1064678043
+ .long 4193848343
+ .long 1063288304
+ .long 1845975253
+ .long 3209397546
+ .long 1025213509
+ .long 3204479174
+ .long 3713384058
+ .long 1055658730
+ .long 4120057883
+ .long 3194988032
+ .long 1573797757
+ .long 3193584787
+ .long 2514726550
+ .long 3187678317
+ .long 15343571
+ .long 3178526042
+ .long 104576940
+ .long 3166444652
+ .long 1147207168
+ .long 3148070554
+ .long 0
+ .long 0
+ .long 1467656669
+ .long 3212977156
+ .long 4154993315
+ .long 1077775111
+ .long 2465966858
+ .long 3214886059
+ .long 71777642
+ .long 1068690118
+ .long 2419763912
+ .long 1061550205
+ .long 1896047360
+ .long 3210612806
+ .long 3723555648
+ .long 1058651288
+ .long 3163703016
+ .long 1057833732
+ .long 1601936705
+ .long 3201383489
+ .long 2535509424
+ .long 3195153293
+ .long 3610885824
+ .long 1043474022
+ .long 1031698712
+ .long 1037527637
+ .long 1497459257
+ .long 1028514042
+ .long 3476455860
+ .long 1016366870
+ .long 758110873
+ .long 998719391
+ .long 0
+ .long 0
+ .long 572446067
+ .long 3204307354
+ .long 926268084
+ .long 1081104698
+ .long 1313112926
+ .long 3217861477
+ .long 3660716
+ .long 1070677720
+ .long 124568711
+ .long 3210757561
+ .long 2123022704
+ .long 1059096046
+ .long 576783408
+ .long 1059279430
+ .long 1651052980
+ .long 3204387494
+ .long 3164866735
+ .long 1051430920
+ .long 409335328
+ .long 1046695415
+ .long 3481520755
+ .long 3188046619
+ .long 1140549474
+ .long 3182373569
+ .long 708689751
+ .long 3173247717
+ .long 2627769694
+ .long 3161153086
+ .long 3804346926
+ .long 3143551592
+ .long 0
+ .long 0
+ .long 2302818369
+ .long 1064188902
+ .long 526101185
+ .long 3235013457
+ .long 2975776348
+ .long 1075224435
+ .long 1103981749
+ .long 3223699933
+ .long 4261798097
+ .long 3210280329
+ .long 30781306
+ .long 1064564655
+ .long 3939597931
+ .long 3206430909
+ .long 1816466405
+ .long 1055007949
+ .long 3868125859
+ .long 3190076997
+ .long 4218600579
+ .long 3192569835
+ .long 4167655123
+ .long 1037376568
+ .long 952533803
+ .long 1032000428
+ .long 895641221
+ .long 1022851193
+ .long 1237761065
+ .long 1010835452
+ .long 2902086315
+ .long 3133082401
+ .long 0
+ .long 0
+ .long 1899646778
+ .long 3207205638
+ .long 2434183270
+ .long 3238288976
+ .long 621380814
+ .long 1078065849
+ .long 247717525
+ .long 3225783561
+ .long 1611742563
+ .long 3212088477
+ .long 537725662
+ .long 1065131990
+ .long 3769436831
+ .long 1057148224
+ .long 3759797009
+ .long 3196422840
+ .long 842759416
+ .long 3195613094
+ .long 1736926210
+ .long 1043198029
+ .long 3915271468
+ .long 3180709675
+ .long 807416070
+ .long 3176507548
+ .long 3147759461
+ .long 3167409843
+ .long 3443382404
+ .long 3155325020
+ .long 1202615797
+ .long 3129870924
+ .long 0
+ .long 0
+ .long 1841653873
+ .long 3210074087
+ .long 2157744327
+ .long 1095928888
+ .long 3038317314
+ .long 3229013375
+ .long 2291108570
+ .long 1082519711
+ .long 707775397
+ .long 1067599411
+ .long 445214669
+ .long 3216153989
+ .long 3815354898
+ .long 1054410330
+ .long 1285070896
+ .long 3199787450
+ .long 1722630166
+ .long 1047526663
+ .long 2672844635
+ .long 3188483010
+ .long 1805520457
+ .long 3179260705
+ .long 542550567
+ .long 1026041526
+ .long 392361251
+ .long 1017320419
+ .long 562647833
+ .long 1005205418
+ .long 4253488278
+ .long 988137457
+ .long 0
+ .long 0
+ .long 3077187303
+ .long 1060497018
+ .long 1652392454
+ .long 1099206368
+ .long 414484972
+ .long 3231848150
+ .long 130592591
+ .long 1084602513
+ .long 1951534810
+ .long 1068932483
+ .long 2677544726
+ .long 3216895313
+ .long 2338009969
+ .long 3203411240
+ .long 302629286
+ .long 1051889816
+ .long 1274412910
+ .long 3193339538
+ .long 3731558070
+ .long 1038350327
+ .long 3135499196
+ .long 1030352152
+ .long 1329461873
+ .long 3170325324
+ .long 4058709792
+ .long 3161656179
+ .long 2167788642
+ .long 3149540607
+ .long 1602064437
+ .long 3132466971
+ .long 0
+ .long 0
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 1069547520
+ .long 7864320
+ .long 7864320
+ .long 7864320
+ .long 7864320
+ .long 7864320
+ .long 7864320
+ .long 7864320
+ .long 7864320
+ .long 7864320
+ .long 7864320
+ .long 7864320
+ .long 7864320
+ .long 7864320
+ .long 7864320
+ .long 7864320
+ .long 7864320
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 3616958675
+ .long 3172564458
+ .long 1431547708
+ .long 3218429269
+ .long 3390261318
+ .long 3188010876
+ .long 1446529494
+ .long 1069617425
+ .long 913571762
+ .long 3199219810
+ .long 1583612462
+ .long 3215695720
+ .long 2995724807
+ .long 3207222498
+ .long 847913742
+ .long 1066913721
+ .long 1634876930
+ .long 3212167789
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1694159514
+ .long 1010239653
+ .long 966318664
+ .long 1069606551
+ .long 2992375944
+ .long 1072656686
+ .long 1870405289
+ .long 3217070889
+ .long 1411308967
+ .long 3218333047
+ .long 4096824853
+ .long 1068863484
+ .long 2220740425
+ .long 1069365950
+ .long 1401698298
+ .long 3215430111
+ .long 4137473768
+ .long 3215259762
+ .long 2666938667
+ .long 1066889956
+ .long 121190665
+ .long 1066187784
+ .long 821637913
+ .long 3213226090
+ .long 0
+ .long 3217096704
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1463410348
+ .long 1012925678
+ .long 2389577058
+ .long 1069735062
+ .long 1617794783
+ .long 1072647710
+ .long 1889094329
+ .long 3217191869
+ .long 1210518828
+ .long 3218309813
+ .long 1479174953
+ .long 1069010221
+ .long 3435917531
+ .long 1069290104
+ .long 291210913
+ .long 3215575029
+ .long 464478606
+ .long 3215159746
+ .long 1063797118
+ .long 1067014292
+ .long 3489481042
+ .long 1065955541
+ .long 2916293494
+ .long 3213319415
+ .long 0
+ .long 3217227776
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1308961311
+ .long 1014934498
+ .long 2204208241
+ .long 1069862983
+ .long 2945950899
+ .long 1072637797
+ .long 1107689125
+ .long 3217310565
+ .long 545938327
+ .long 3218284334
+ .long 3174275192
+ .long 1069150773
+ .long 3754729793
+ .long 1069207728
+ .long 1611554958
+ .long 3215708601
+ .long 2936527704
+ .long 3215052478
+ .long 2983784402
+ .long 1067121823
+ .long 1327150338
+ .long 1065710404
+ .long 3371320326
+ .long 3213391099
+ .long 0
+ .long 3217358848
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3546392464
+ .long 1015001497
+ .long 631120375
+ .long 1069990256
+ .long 1201634405
+ .long 1072626967
+ .long 266657677
+ .long 3217426771
+ .long 1567732958
+ .long 3218256710
+ .long 883708059
+ .long 1069284653
+ .long 1008115966
+ .long 1069119372
+ .long 2657338981
+ .long 3215830093
+ .long 3402640736
+ .long 3214939036
+ .long 1000796573
+ .long 1067211764
+ .long 53805889
+ .long 1065455799
+ .long 1736607114
+ .long 3213440608
+ .long 0
+ .long 3217489920
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2741128528
+ .long 1013617020
+ .long 3111451323
+ .long 1070116823
+ .long 1649040643
+ .long 1072615239
+ .long 3411009101
+ .long 3217540290
+ .long 3408666525
+ .long 3218227049
+ .long 60831764
+ .long 1069411415
+ .long 64016149
+ .long 1069025616
+ .long 1202785467
+ .long 3215938891
+ .long 1072151579
+ .long 3214707060
+ .long 1534357116
+ .long 1067283570
+ .long 4218468492
+ .long 1065037194
+ .long 2285827787
+ .long 3213467810
+ .long 0
+ .long 3217620992
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2659584459
+ .long 1014368295
+ .long 3537749475
+ .long 1070242630
+ .long 3072983457
+ .long 1072602635
+ .long 3507245872
+ .long 3217650938
+ .long 3434758212
+ .long 3218195466
+ .long 3801643091
+ .long 1069530660
+ .long 1128653951
+ .long 1068927067
+ .long 3580298628
+ .long 3216008547
+ .long 1645082338
+ .long 3214462237
+ .long 1048857889
+ .long 1067336943
+ .long 21547694
+ .long 1064510970
+ .long 1433152914
+ .long 3213472968
+ .long 0
+ .long 3217752064
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2718912981
+ .long 1013914074
+ .long 1823051285
+ .long 1070367623
+ .long 1714227149
+ .long 1072589179
+ .long 2128046799
+ .long 3217758540
+ .long 2655098722
+ .long 3218162081
+ .long 1690074008
+ .long 1069594780
+ .long 353091525
+ .long 1068824353
+ .long 4206393496
+ .long 3216049578
+ .long 824478721
+ .long 3214211899
+ .long 3850924188
+ .long 1067371825
+ .long 2738209029
+ .long 1063668369
+ .long 853664366
+ .long 3213456718
+ .long 0
+ .long 3217883136
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2312638749
+ .long 1013630664
+ .long 4267025360
+ .long 1070491748
+ .long 3776362539
+ .long 1072574894
+ .long 3063840907
+ .long 3217862932
+ .long 2436606365
+ .long 3218127019
+ .long 582931594
+ .long 1069646387
+ .long 3079837843
+ .long 1068718114
+ .long 3430470362
+ .long 3216083715
+ .long 1015897693
+ .long 3213958348
+ .long 765047087
+ .long 1067388396
+ .long 2337193368
+ .long 1061824569
+ .long 3002775972
+ .long 3213420044
+ .long 0
+ .long 3218014208
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2001712669
+ .long 1015665334
+ .long 1330879460
+ .long 1070636148
+ .long 2956987714
+ .long 1072551971
+ .long 4281360332
+ .long 3218013175
+ .long 3304213057
+ .long 3218063389
+ .long 3261945160
+ .long 1069715874
+ .long 3866284424
+ .long 1068553570
+ .long 3423706630
+ .long 3216121886
+ .long 259493169
+ .long 3213268437
+ .long 4223676832
+ .long 1067379852
+ .long 2765317642
+ .long 3210752240
+ .long 2292494069
+ .long 3213329490
+ .long 0
+ .long 3218145280
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1632443533
+ .long 1015769771
+ .long 3788472163
+ .long 1070757367
+ .long 2406795724
+ .long 1072518757
+ .long 1173083542
+ .long 3218140352
+ .long 3726086528
+ .long 3217906251
+ .long 1205028711
+ .long 1069793280
+ .long 2231197855
+ .long 1068156878
+ .long 2368637763
+ .long 3216148628
+ .long 2866127296
+ .long 3211617797
+ .long 2424606359
+ .long 1067309831
+ .long 2444940724
+ .long 3212180962
+ .long 3308128888
+ .long 3213151909
+ .long 0
+ .long 3218276352
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 478834383
+ .long 1014053288
+ .long 1342399495
+ .long 1070876422
+ .long 2650660168
+ .long 1072482726
+ .long 976724127
+ .long 3218226669
+ .long 962417089
+ .long 3217740546
+ .long 1060150306
+ .long 1069852926
+ .long 411739190
+ .long 1067700577
+ .long 3846786712
+ .long 3216148687
+ .long 4007187252
+ .long 1064073475
+ .long 3455779574
+ .long 1067180067
+ .long 1865169557
+ .long 3212900393
+ .long 1200620699
+ .long 3212923615
+ .long 0
+ .long 3218407424
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 267289397
+ .long 1014452734
+ .long 302318249
+ .long 1070993143
+ .long 1373990511
+ .long 1072444121
+ .long 1606419704
+ .long 3218305061
+ .long 3955669825
+ .long 3217568496
+ .long 2701083439
+ .long 1069894809
+ .long 3425188888
+ .long 1067047616
+ .long 2305426029
+ .long 3216123827
+ .long 1692531481
+ .long 1065641523
+ .long 232815703
+ .long 1067000535
+ .long 3949954748
+ .long 3213214884
+ .long 558890519
+ .long 3212487521
+ .long 0
+ .long 3218538496
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1719941932
+ .long 1006528498
+ .long 368840470
+ .long 1071107377
+ .long 1825320027
+ .long 1072403193
+ .long 538136722
+ .long 3218375283
+ .long 1431312010
+ .long 3217392305
+ .long 2586725425
+ .long 1069919291
+ .long 2680871675
+ .long 1065941593
+ .long 4123661982
+ .long 3216076488
+ .long 4235496382
+ .long 1066406926
+ .long 2618960092
+ .long 1066782660
+ .long 2333865044
+ .long 3213444845
+ .long 1545458959
+ .long 3211934181
+ .long 0
+ .long 3218669568
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 26286236
+ .long 1013191219
+ .long 990113957
+ .long 1071218987
+ .long 3284199501
+ .long 1072360200
+ .long 2981906127
+ .long 3218437190
+ .long 3154396333
+ .long 3217214106
+ .long 4182117656
+ .long 1069927061
+ .long 903677379
+ .long 3207343530
+ .long 384743261
+ .long 3216009637
+ .long 1679228359
+ .long 1066734193
+ .long 3407026595
+ .long 1066538544
+ .long 784962854
+ .long 3213588186
+ .long 1956733412
+ .long 3210979700
+ .long 0
+ .long 3218800640
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1468217372
+ .long 1015658399
+ .long 2570814109
+ .long 1071327852
+ .long 532296332
+ .long 1072315404
+ .long 318213600
+ .long 3218490738
+ .long 3661105766
+ .long 3217035931
+ .long 4085840862
+ .long 1069919095
+ .long 2798312316
+ .long 3213370099
+ .long 1668326589
+ .long 3215870599
+ .long 3158013712
+ .long 1066998409
+ .long 673205579
+ .long 1066158659
+ .long 486665227
+ .long 3213647762
+ .long 3317145528
+ .long 3208570948
+ .long 0
+ .long 3218931712
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2060955015
+ .long 1014233667
+ .long 2567098181
+ .long 1071433868
+ .long 1159081245
+ .long 1072269064
+ .long 1492598184
+ .long 3218535971
+ .long 1567055841
+ .long 3216688180
+ .long 2821222425
+ .long 1069896605
+ .long 3691290783
+ .long 3214336992
+ .long 343679101
+ .long 3215679175
+ .long 1878686296
+ .long 1067197462
+ .long 125933636
+ .long 1065636281
+ .long 421076939
+ .long 3213630573
+ .long 3748848474
+ .long 1062499186
+ .long 0
+ .long 3219062784
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1860475216
+ .long 1015320544
+ .long 439764829
+ .long 1071587361
+ .long 3870821058
+ .long 1072197223
+ .long 1430736283
+ .long 3218588540
+ .long 1597812790
+ .long 3216174065
+ .long 2398544810
+ .long 1069838732
+ .long 961452807
+ .long 3215095800
+ .long 716310499
+ .long 3215360049
+ .long 2337792646
+ .long 1067375770
+ .long 3863538422
+ .long 1064417477
+ .long 2203480844
+ .long 3213482785
+ .long 2389621902
+ .long 1063978354
+ .long 0
+ .long 3219193856
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 517838046
+ .long 1015294339
+ .long 2114713104
+ .long 1071713012
+ .long 2046328558
+ .long 1072098392
+ .long 29352448
+ .long 3218631376
+ .long 1533416325
+ .long 3215079684
+ .long 765247815
+ .long 1069724759
+ .long 24381189
+ .long 3215564623
+ .long 1213155449
+ .long 3214886044
+ .long 379420126
+ .long 1067409218
+ .long 3127061143
+ .long 3210809777
+ .long 3193663073
+ .long 3213128287
+ .long 2557278876
+ .long 1064581282
+ .long 0
+ .long 3219324928
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 201012485
+ .long 1013704982
+ .long 4147262407
+ .long 1071803766
+ .long 3048814903
+ .long 1071997795
+ .long 1260857726
+ .long 3218645540
+ .long 270462819
+ .long 3209873967
+ .long 874660781
+ .long 1069580732
+ .long 1251156804
+ .long 3215866075
+ .long 3568210118
+ .long 3214014484
+ .long 3784557811
+ .long 1067255146
+ .long 47772576
+ .long 3212562613
+ .long 2075700783
+ .long 3212539455
+ .long 1121561449
+ .long 1064698735
+ .long 0
+ .long 3219456000
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 72370286
+ .long 1015768239
+ .long 2345366573
+ .long 1071888223
+ .long 3155310239
+ .long 1071897123
+ .long 4105462806
+ .long 3218634383
+ .long 2329529114
+ .long 1067280331
+ .long 3078782452
+ .long 1069291148
+ .long 2210998062
+ .long 3215997483
+ .long 1498585052
+ .long 3212353515
+ .long 3032692199
+ .long 1066974465
+ .long 809329973
+ .long 3213081308
+ .long 2713838579
+ .long 3211547879
+ .long 1266611175
+ .long 1064568889
+ .long 0
+ .long 3219587072
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2137918782
+ .long 1013598293
+ .long 2511343836
+ .long 1071966424
+ .long 4205808243
+ .long 1071797842
+ .long 2776384587
+ .long 3218601667
+ .long 3824787134
+ .long 1068202086
+ .long 4101819712
+ .long 1068956189
+ .long 3547601806
+ .long 3216004360
+ .long 4156237724
+ .long 1064058621
+ .long 3714924071
+ .long 1066627770
+ .long 2925917146
+ .long 3213234133
+ .long 4211598888
+ .long 3209111151
+ .long 2569808389
+ .long 1064277859
+ .long 0
+ .long 3219718144
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2979324843
+ .long 1013692066
+ .long 2595126306
+ .long 1072038496
+ .long 4263058559
+ .long 1071701178
+ .long 2217257467
+ .long 3218551298
+ .long 2310932059
+ .long 1068685603
+ .long 3368327571
+ .long 1068627625
+ .long 3037419246
+ .long 3215935424
+ .long 3509936675
+ .long 1065724141
+ .long 1557247226
+ .long 1066131548
+ .long 3830787958
+ .long 3213205743
+ .long 1781883284
+ .long 1062575914
+ .long 3918078093
+ .long 1063614197
+ .long 0
+ .long 3219849216
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3630992244
+ .long 1015034507
+ .long 461360001
+ .long 1072104635
+ .long 2866201612
+ .long 1071571556
+ .long 1021729265
+ .long 3218487113
+ .long 1039036234
+ .long 1068940858
+ .long 1685105679
+ .long 1068140011
+ .long 1856275853
+ .long 3215769620
+ .long 2211306181
+ .long 1066373046
+ .long 3739405201
+ .long 1065456917
+ .long 3870269089
+ .long 3213053509
+ .long 427599213
+ .long 1063593231
+ .long 40698732
+ .long 1062709094
+ .long 0
+ .long 3219980288
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 4017840557
+ .long 1014067070
+ .long 2764932206
+ .long 1072165089
+ .long 3362970633
+ .long 1071394124
+ .long 2677206355
+ .long 3218412713
+ .long 1827861303
+ .long 1069122666
+ .long 2476388705
+ .long 1067583638
+ .long 523365901
+ .long 3215556224
+ .long 1203249285
+ .long 1066574111
+ .long 4264074292
+ .long 1064402288
+ .long 3556167213
+ .long 3212827889
+ .long 3894081206
+ .long 1063908871
+ .long 2161178761
+ .long 1061130844
+ .long 0
+ .long 3220111360
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3622330478
+ .long 1016273425
+ .long 923638641
+ .long 1072245755
+ .long 239419665
+ .long 1071146518
+ .long 4085259706
+ .long 3218288969
+ .long 1284806809
+ .long 1069276013
+ .long 2806747971
+ .long 1066232498
+ .long 75259250
+ .long 3215197393
+ .long 2597116185
+ .long 1066648701
+ .long 1680670491
+ .long 3208755029
+ .long 446818184
+ .long 3212096816
+ .long 1529495144
+ .long 1063888972
+ .long 808619025
+ .long 3208443000
+ .long 0
+ .long 3220242432
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 462410646
+ .long 1015565639
+ .long 3157363066
+ .long 1072336316
+ .long 87541994
+ .long 1070853747
+ .long 2905067058
+ .long 3218115077
+ .long 1081050294
+ .long 1069306453
+ .long 4130581086
+ .long 3212259234
+ .long 1279737796
+ .long 3214531982
+ .long 901138781
+ .long 1066501065
+ .long 978916480
+ .long 3211806490
+ .long 1307294116
+ .long 3210755549
+ .long 1154728319
+ .long 1063409950
+ .long 983243444
+ .long 3209435485
+ .long 0
+ .long 3220373504
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2617212772
+ .long 1016126748
+ .long 2762378177
+ .long 1072409936
+ .long 1926160805
+ .long 1070604218
+ .long 4131898582
+ .long 3217810482
+ .long 3068505203
+ .long 1069203346
+ .long 2854543895
+ .long 3214027139
+ .long 1276437050
+ .long 3213652513
+ .long 523800203
+ .long 1066060621
+ .long 3030576699
+ .long 3212054264
+ .long 210618624
+ .long 3205409267
+ .long 3515290542
+ .long 1062456384
+ .long 1613351841
+ .long 3209185464
+ .long 0
+ .long 3220504576
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2178033281
+ .long 1016051223
+ .long 859883711
+ .long 1072469258
+ .long 4248327203
+ .long 1070195167
+ .long 4170103331
+ .long 3217497647
+ .long 3497702842
+ .long 1069026027
+ .long 669705965
+ .long 3214426190
+ .long 548733038
+ .long 3212258725
+ .long 1756337187
+ .long 1065503890
+ .long 1830841059
+ .long 3211930343
+ .long 1445563742
+ .long 1061912703
+ .long 2113494314
+ .long 1060991234
+ .long 1734825467
+ .long 3208559895
+ .long 0
+ .long 3220635648
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1674478116
+ .long 1016412476
+ .long 1178764976
+ .long 1072516719
+ .long 1119346206
+ .long 1069851736
+ .long 1526584272
+ .long 3217221512
+ .long 3575463915
+ .long 1068817773
+ .long 2913683612
+ .long 3214542291
+ .long 1135909212
+ .long 3207879094
+ .long 1952394810
+ .long 1064725296
+ .long 508910559
+ .long 3211537545
+ .long 225204077
+ .long 1062311155
+ .long 1009857186
+ .long 1056234420
+ .long 2872841632
+ .long 3207480811
+ .long 0
+ .long 3220766720
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1768234410
+ .long 1014305046
+ .long 1496797583
+ .long 1072554475
+ .long 3351833521
+ .long 1069572393
+ .long 68183265
+ .long 3216938851
+ .long 4178655528
+ .long 1068606905
+ .long 60791550
+ .long 3214483781
+ .long 1856281737
+ .long 1063701265
+ .long 4260560897
+ .long 1063778674
+ .long 2539586291
+ .long 3210979253
+ .long 2272785608
+ .long 1062198907
+ .long 1986161572
+ .long 3206910344
+ .long 1016667904
+ .long 3205797138
+ .long 0
+ .long 3220897792
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3074583847
+ .long 1017063845
+ .long 4092570620
+ .long 1072584374
+ .long 3645618684
+ .long 1069147119
+ .long 1980755111
+ .long 3216542681
+ .long 889928399
+ .long 1068320928
+ .long 1360064809
+ .long 3214330986
+ .long 2266432388
+ .long 1064407878
+ .long 4147854841
+ .long 1062471610
+ .long 1812350685
+ .long 3210287970
+ .long 3710399832
+ .long 1061728481
+ .long 2458127659
+ .long 3207279138
+ .long 287360833
+ .long 3197756422
+ .long 0
+ .long 3221028864
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 68970445
+ .long 1013643458
+ .long 3990219923
+ .long 1072607967
+ .long 97498680
+ .long 1068787106
+ .long 4136450559
+ .long 3216216395
+ .long 147179316
+ .long 1067971098
+ .long 1625987424
+ .long 3214138005
+ .long 3965878798
+ .long 1064539455
+ .long 3777445436
+ .long 1059539413
+ .long 3029913178
+ .long 3209512624
+ .long 2162291908
+ .long 1061245910
+ .long 351053474
+ .long 3207087984
+ .long 3766283083
+ .long 1056943188
+ .long 0
+ .long 3221159936
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3139580402
+ .long 1014663922
+ .long 3748810696
+ .long 1072634260
+ .long 3154943320
+ .long 1068262833
+ .long 3181856712
+ .long 3215694135
+ .long 3656356636
+ .long 1067539266
+ .long 3897588284
+ .long 3213798616
+ .long 1461831298
+ .long 1064461217
+ .long 2900114226
+ .long 3208814642
+ .long 2606420357
+ .long 3207868903
+ .long 1741152094
+ .long 1060222230
+ .long 1469206701
+ .long 3206514441
+ .long 3518993813
+ .long 1057090958
+ .long 0
+ .long 3221291008
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3285908565
+ .long 1015477239
+ .long 1797956315
+ .long 1072657271
+ .long 3302471936
+ .long 1067543167
+ .long 2151339553
+ .long 3215007235
+ .long 362228095
+ .long 1066797401
+ .long 3986406156
+ .long 3213131380
+ .long 388353381
+ .long 1064042359
+ .long 4147910906
+ .long 3209239839
+ .long 1739922885
+ .long 1056259812
+ .long 3188561056
+ .long 1058406709
+ .long 489122368
+ .long 3205182155
+ .long 202560853
+ .long 1056234231
+ .long 0
+ .long 3221422080
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3806705628
+ .long 1008327668
+ .long 884432573
+ .long 1072671353
+ .long 137405484
+ .long 1066747168
+ .long 3531994812
+ .long 3214216262
+ .long 3217445183
+ .long 1066105333
+ .long 2910288024
+ .long 3212464301
+ .long 3196212707
+ .long 1063467545
+ .long 3156563895
+ .long 3208963593
+ .long 3591285453
+ .long 1058733242
+ .long 2889132271
+ .long 1055392886
+ .long 1038377961
+ .long 3203561698
+ .long 4084672077
+ .long 1055001082
+ .long 0
+ .long 3221553152
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1881957148
+ .long 1016569186
+ .long 3451706443
+ .long 1072679940
+ .long 143468186
+ .long 1066002557
+ .long 553724800
+ .long 3213475431
+ .long 1049442771
+ .long 1065415105
+ .long 3378521943
+ .long 3211821787
+ .long 3176008209
+ .long 1062800361
+ .long 4016898691
+ .long 3208498219
+ .long 1548390021
+ .long 1058670598
+ .long 2097418483
+ .long 3202689041
+ .long 2756703589
+ .long 3201351283
+ .long 506736184
+ .long 1053405377
+ .long 0
+ .long 3221684224
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 450339788
+ .long 1015040915
+ .long 2959639058
+ .long 1072685166
+ .long 2289443405
+ .long 1065320893
+ .long 3331959139
+ .long 3212796584
+ .long 724199976
+ .long 1064616734
+ .long 938566183
+ .long 3211030741
+ .long 1640535667
+ .long 1062186735
+ .long 187996035
+ .long 3207841256
+ .long 822311531
+ .long 1058246461
+ .long 160890851
+ .long 3203087480
+ .long 3163291388
+ .long 1050479733
+ .long 578249940
+ .long 1051474021
+ .long 0
+ .long 3221815296
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 539445753
+ .long 1012635531
+ .long 3085578536
+ .long 1072688342
+ .long 2019637246
+ .long 1064510347
+ .long 2901018414
+ .long 3211991061
+ .long 2171427566
+ .long 1063868144
+ .long 678185093
+ .long 3210287638
+ .long 2685165718
+ .long 1061401571
+ .long 710336199
+ .long 3207152667
+ .long 2733135798
+ .long 1057659331
+ .long 886948177
+ .long 3202751664
+ .long 3345834247
+ .long 1052218043
+ .long 908728048
+ .long 1047925874
+ .long 0
+ .long 3221946368
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 4240302093
+ .long 1016867082
+ .long 1832260410
+ .long 1072690271
+ .long 154153694
+ .long 1063730412
+ .long 2094548181
+ .long 3211211898
+ .long 1392727515
+ .long 1063180837
+ .long 3132890025
+ .long 3209604411
+ .long 483611698
+ .long 1060651750
+ .long 4246355421
+ .long 3206519479
+ .long 1424637421
+ .long 1057044161
+ .long 2138185318
+ .long 3202290304
+ .long 2276282642
+ .long 1052095798
+ .long 4227780935
+ .long 3196067472
+ .long 0
+ .long 3222077440
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2485733495
+ .long 1017000498
+ .long 484092514
+ .long 1072691442
+ .long 1653085170
+ .long 1063007344
+ .long 2893019346
+ .long 3210489400
+ .long 878866243
+ .long 1062388018
+ .long 2113174452
+ .long 3208818852
+ .long 2654141437
+ .long 1059959432
+ .long 3578550869
+ .long 3205727739
+ .long 315005006
+ .long 1056288680
+ .long 3246956604
+ .long 3201593495
+ .long 2197286540
+ .long 1051718329
+ .long 3044885069
+ .long 3196227269
+ .long 0
+ .long 3222208512
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2794994668
+ .long 1016833037
+ .long 3287420517
+ .long 1072692394
+ .long 4133778764
+ .long 1061857404
+ .long 689562148
+ .long 3209340342
+ .long 1404089106
+ .long 1061273627
+ .long 1292441425
+ .long 3207706805
+ .long 93671116
+ .long 1058816787
+ .long 2903327974
+ .long 3204626398
+ .long 4279279273
+ .long 1055202414
+ .long 134688023
+ .long 3200552187
+ .long 3315379764
+ .long 1050761310
+ .long 2945780649
+ .long 3195568939
+ .long 0
+ .long 3222339584
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2135621136
+ .long 1016053539
+ .long 309961636
+ .long 1072692934
+ .long 672792810
+ .long 1060347512
+ .long 2960305506
+ .long 3207830967
+ .long 1703867620
+ .long 1059726750
+ .long 824905914
+ .long 3206160796
+ .long 3036017847
+ .long 1057284422
+ .long 923304464
+ .long 3203122673
+ .long 1848642304
+ .long 1053791859
+ .long 2215350763
+ .long 3199158388
+ .long 3049848127
+ .long 1049324210
+ .long 3861893815
+ .long 3194293196
+ .long 0
+ .long 3222470656
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2236028675
+ .long 1016891036
+ .long 2177293363
+ .long 1072693132
+ .long 776830057
+ .long 1058856794
+ .long 4190004158
+ .long 3206340337
+ .long 209955488
+ .long 1058225857
+ .long 845130443
+ .long 3204660651
+ .long 4204313304
+ .long 1055835544
+ .long 364525198
+ .long 3201597210
+ .long 3889299905
+ .long 1052205563
+ .long 1514389355
+ .long 3197586647
+ .long 1706817756
+ .long 1047834665
+ .long 3817417318
+ .long 3192934132
+ .long 0
+ .long 3222601728
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1074033072
+ .long 1013200912
+ .long 2197899301
+ .long 1072693205
+ .long 1097614282
+ .long 1057308273
+ .long 209489097
+ .long 3204791893
+ .long 3641526339
+ .long 1056723664
+ .long 1792794946
+ .long 3203158586
+ .long 584598707
+ .long 1054254910
+ .long 253996240
+ .long 3200135633
+ .long 642640562
+ .long 1050754580
+ .long 3147361740
+ .long 3196139610
+ .long 1167319222
+ .long 1046395158
+ .long 3488053038
+ .long 3191370264
+ .long 0
+ .long 3222732800
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 871679747
+ .long 1016222468
+ .long 1586311569
+ .long 1072693232
+ .long 4199724405
+ .long 1055867613
+ .long 3041006250
+ .long 3203351246
+ .long 482130003
+ .long 1055184672
+ .long 1689676855
+ .long 3201619703
+ .long 116121201
+ .long 1052814264
+ .long 4166318198
+ .long 3198564764
+ .long 388552649
+ .long 1049191609
+ .long 1384400086
+ .long 3194577312
+ .long 135589376
+ .long 1044819515
+ .long 2497367318
+ .long 3189906305
+ .long 0
+ .long 3222863872
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 752986014
+ .long 1014740322
+ .long 1072834312
+ .long 1072693242
+ .long 1389704451
+ .long 1054277685
+ .long 817998738
+ .long 3201761329
+ .long 996777029
+ .long 1053731553
+ .long 811547911
+ .long 3200166603
+ .long 1604093935
+ .long 1051232383
+ .long 2381858127
+ .long 3197131472
+ .long 806055999
+ .long 1047703656
+ .long 443662424
+ .long 3193089938
+ .long 2855612429
+ .long 1043379518
+ .long 3671581230
+ .long 3188373004
+ .long 0
+ .long 3222994944
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 4161630806
+ .long 1015796140
+ .long 3799386689
+ .long 1072693245
+ .long 516062805
+ .long 1052830799
+ .long 6188716
+ .long 3200314446
+ .long 79447568
+ .long 1052151909
+ .long 223529141
+ .long 3198586975
+ .long 1557009707
+ .long 1049758991
+ .long 1527834451
+ .long 3195539792
+ .long 3841571054
+ .long 1046184222
+ .long 3228035136
+ .long 3191570603
+ .long 2497745717
+ .long 1041799395
+ .long 3127975351
+ .long 3186863029
+ .long 0
+ .long 3223126016
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3013228433
+ .long 1015734301
+ .long 952591976
+ .long 1072693247
+ .long 3849195912
+ .long 1051256594
+ .long 1248135057
+ .long 3198740242
+ .long 1658384276
+ .long 1050712587
+ .long 3312197895
+ .long 3197147657
+ .long 2426751598
+ .long 1048219658
+ .long 2075412918
+ .long 3194074453
+ .long 1194511818
+ .long 1044659399
+ .long 2861395540
+ .long 3190045864
+ .long 1105252788
+ .long 1040325059
+ .long 278204179
+ .long 3185374362
+ .long 0
+ .long 3223257088
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 4084683796
+ .long 1014352664
+ .long 3549182448
+ .long 1072693247
+ .long 4170486715
+ .long 1048984034
+ .long 3652359522
+ .long 3196467682
+ .long 1780445294
+ .long 1048420995
+ .long 3329441198
+ .long 3194856066
+ .long 663245309
+ .long 1045935418
+ .long 1918070306
+ .long 3191839818
+ .long 4225866973
+ .long 1042419329
+ .long 1974315224
+ .long 3187805832
+ .long 847480060
+ .long 1038120500
+ .long 2386310431
+ .long 3183105031
+ .long 0
+ .long 3223388160
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 951119343
+ .long 1016641415
+ .long 4194036288
+ .long 1072693247
+ .long 4207053894
+ .long 1045958742
+ .long 4131013457
+ .long 3193442390
+ .long 2503178506
+ .long 1045433060
+ .long 2309798544
+ .long 3191868132
+ .long 1503762043
+ .long 1042918157
+ .long 762244907
+ .long 3188792499
+ .long 3745081608
+ .long 1039371450
+ .long 3106729171
+ .long 3184757959
+ .long 3799011378
+ .long 1035063995
+ .long 693003136
+ .long 3180102041
+ .long 0
+ .long 3223519232
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1712896388
+ .long 1016000193
+ .long 4281307769
+ .long 1072693247
+ .long 3495080264
+ .long 1042943408
+ .long 3483806577
+ .long 3190427056
+ .long 3577360645
+ .long 1042374261
+ .long 3557467263
+ .long 3188809333
+ .long 3692227868
+ .long 1039911516
+ .long 1459944482
+ .long 3185739496
+ .long 624248087
+ .long 1036331657
+ .long 3930021706
+ .long 3181718167
+ .long 439009527
+ .long 1032014849
+ .long 3184212578
+ .long 3177110789
+ .long 0
+ .long 3223650304
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1958475666
+ .long 1013700788
+ .long 4293118680
+ .long 1072693247
+ .long 3829159519
+ .long 1039938855
+ .long 3827364885
+ .long 3187422503
+ .long 2374004141
+ .long 1039322650
+ .long 2380228874
+ .long 3185757722
+ .long 853065064
+ .long 1036916376
+ .long 3897809499
+ .long 3182694159
+ .long 2467115425
+ .long 1033300621
+ .long 2966460473
+ .long 3178687133
+ .long 4249027489
+ .long 1028973684
+ .long 3391824522
+ .long 3174085926
+ .long 0
+ .long 3223781376
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1028808661
+ .long 1012328597
+ .long 4294717113
+ .long 1072693247
+ .long 2759857858
+ .long 1036945975
+ .long 2759440340
+ .long 3184429623
+ .long 217750550
+ .long 1036278821
+ .long 228557927
+ .long 3182713893
+ .long 868996329
+ .long 1033914811
+ .long 130294465
+ .long 3179657124
+ .long 3979034581
+ .long 1030279068
+ .long 1690522291
+ .long 3175665582
+ .long 141102418
+ .long 1025941166
+ .long 3942643114
+ .long 3171030731
+ .long 0
+ .long 3223912448
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2461075155
+ .long 1015729939
+ .long 4294933437
+ .long 1072693247
+ .long 2559161110
+ .long 1033930834
+ .long 2559046852
+ .long 3181414482
+ .long 3206412049
+ .long 1033243416
+ .long 3218709064
+ .long 3179678488
+ .long 2091270467
+ .long 1030857342
+ .long 245853585
+ .long 3176629075
+ .long 1555900931
+ .long 1027267783
+ .long 1186881303
+ .long 3172654298
+ .long 1695278520
+ .long 1022918007
+ .long 1853146834
+ .long 3167983022
+ .long 0
+ .long 3224043520
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2502502488
+ .long 1016572066
+ .long 4294962713
+ .long 1072693247
+ .long 3137376149
+ .long 1030874690
+ .long 3137268820
+ .long 3178358338
+ .long 1097103169
+ .long 1030217134
+ .long 1110504267
+ .long 3176652206
+ .long 1068377398
+ .long 1027807171
+ .long 222176953
+ .long 3173610756
+ .long 3440315131
+ .long 1024267613
+ .long 1199778592
+ .long 3169654130
+ .long 257981480
+ .long 1019904983
+ .long 1388437918
+ .long 3164943417
+ .long 0
+ .long 3224174592
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3418697838
+ .long 1016821878
+ .long 4294966675
+ .long 1072693247
+ .long 3798207862
+ .long 1027825953
+ .long 3798094058
+ .long 3175309601
+ .long 3391459718
+ .long 1027200727
+ .long 3405981646
+ .long 3173635799
+ .long 3694208074
+ .long 1024764900
+ .long 2192272311
+ .long 3170602971
+ .long 1464408928
+ .long 1021279479
+ .long 2201370875
+ .long 3166665997
+ .long 4139632468
+ .long 1016902930
+ .long 2981161402
+ .long 3161912586
+ .long 0
+ .long 3224305664
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 3589768515
+ .long 1013972501
+ .long 4294967265
+ .long 1072693247
+ .long 2293865510
+ .long 1023336450
+ .long 2097549026
+ .long 3170820098
+ .long 2721138850
+ .long 1022661962
+ .long 1571631120
+ .long 3169097035
+ .long 3716649917
+ .long 1020295299
+ .long 3146231247
+ .long 3166041588
+ .long 84506245
+ .long 1016656297
+ .long 2231398946
+ .long 3162043093
+ .long 3305646943
+ .long 1012441980
+ .long 402214167
+ .long 3157503609
+ .long 0
+ .long 3224436736
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2152156943
+ .long 1016184605
+ .long 4294967294
+ .long 1072693247
+ .long 1074684533
+ .long 1018634353
+ .long 1074437943
+ .long 3166118001
+ .long 967276073
+ .long 1018090988
+ .long 995296768
+ .long 3164526060
+ .long 4275132894
+ .long 1015589675
+ .long 304133116
+ .long 3161485853
+ .long 1232215992
+ .long 1012058464
+ .long 559363548
+ .long 3157444977
+ .long 1487618473
+ .long 1007759094
+ .long 2355811294
+ .long 3152771929
+ .long 3381626085
+ .long 3224537056
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 4294967295
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 0
+ .long 2147483648
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 4294967295
+ .long 2147483647
+ .long 2147352576
+ .long 2147352576
+ .long 2147352576
+ .long 2147352576
+ .long 2147352576
+ .long 2147352576
+ .long 2147352576
+ .long 2147352576
+ .long 2147352576
+ .long 2147352576
+ .long 2147352576
+ .long 2147352576
+ .long 2147352576
+ .long 2147352576
+ .long 2147352576
+ .long 2147352576
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 1069416448
+ .long 1069416448
+ .long 1069416448
+ .long 1069416448
+ .long 1069416448
+ .long 1069416448
+ .long 1069416448
+ .long 1069416448
+ .long 1069416448
+ .long 1069416448
+ .long 1069416448
+ .long 1069416448
+ .long 1069416448
+ .long 1069416448
+ .long 1069416448
+ .long 1069416448
+ .long 7733248
+ .long 7733248
+ .long 7733248
+ .long 7733248
+ .long 7733248
+ .long 7733248
+ .long 7733248
+ .long 7733248
+ .long 7733248
+ .long 7733248
+ .long 7733248
+ .long 7733248
+ .long 7733248
+ .long 7733248
+ .long 7733248
+ .long 7733248
+ .long 535822336
+ .long 535822336
+ .long 535822336
+ .long 535822336
+ .long 535822336
+ .long 535822336
+ .long 535822336
+ .long 535822336
+ .long 535822336
+ .long 535822336
+ .long 535822336
+ .long 535822336
+ .long 535822336
+ .long 535822336
+ .long 535822336
+ .long 535822336
+ .type __svml_dtanh_data_internal,@object
+ .size __svml_dtanh_data_internal,10816
+ .align 8
+__dtanh_la__imldTanhTab:
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 3220176896
+ .type __dtanh_la__imldTanhTab,@object
+ .size __dtanh_la__imldTanhTab,16
--- /dev/null
+/*******************************************
+* Copyright (C) 2021 Intel Corporation
+* SPDX-License-Identifier: BSD-3-Clause
+*******************************************/
+
+/*
+ * ALGORITHM DESCRIPTION:
+ *
+ * NOTE: Since the hyperbolic tangent function is odd
+ * (tanh(x) = -tanh(-x)), below algorithm deals with the absolute
+ * value of the argument |x|: tanh(x) = sign(x) * tanh(|x|)
+ *
+ * We use a table lookup method to compute tanh(|x|).
+ * The basic idea is to split the input range into a number of subintervals
+ * and to approximate tanh(.) with a polynomial on each of them.
+ *
+ * IEEE SPECIAL CONDITIONS:
+ * x = [+,-]0, r = [+,-]0
+ * x = +Inf, r = +1
+ * x = -Inf, r = -1
+ * x = QNaN, r = QNaN
+ * x = SNaN, r = QNaN
+ *
+ *
+ * ALGORITHM DETAILS
+ * We handle special values in a callout function, aside from main path
+ * computations. "Special" for this algorithm are:
+ * INF, NAN, |x| > HUGE_THRESHOLD
+ *
+ *
+ * Main path computations are organized as follows:
+ * Actually we split the interval [0, SATURATION_THRESHOLD)
+ * into a number of subintervals. On each subinterval we approximate tanh(.)
+ * with a minimax polynomial of pre-defined degree. Polynomial coefficients
+ * are computed beforehand and stored in table. We also use
+ *
+ * y := |x| + B,
+ *
+ * here B depends on subinterval and is used to make argument
+ * closer to zero.
+ * We also add large fake interval [SATURATION_THRESHOLD, HUGE_THRESHOLD],
+ * where 1.0 + 0.0*y + 0.0*y^2 ... coefficients are stored - just to
+ * preserve main path computation logic but return 1.0 for all arguments.
+ *
+ * Hence reconstruction looks as follows:
+ * we extract proper polynomial and range reduction coefficients
+ * (Pj and B), corresponding to subinterval, to which |x| belongs,
+ * and return
+ *
+ * r := sign(x) * (P0 + P1 * y + ... + Pn * y^n)
+ *
+ * NOTE: we use multiprecision technique to multiply and sum the first
+ * K terms of the polynomial. So Pj, j = 0..K are stored in
+ * table each as a pair of target precision numbers (Pj and PLj) to
+ * achieve wider than target precision.
+ *
+ * --
+ *
+ */
+
+
+ .text
+.L_2__routine_start___svml_tanhf16_z0_0:
+
+ .align 16,0x90
+ .globl __svml_tanhf16
+
+__svml_tanhf16:
+
+
+ .cfi_startproc
+..L2:
+
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ movq %rsp, %rbp
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+ andq $-64, %rsp
+ subq $192, %rsp
+ vmovaps %zmm0, %zmm1
+ vmovups __svml_stanh_data_internal(%rip), %zmm9
+ vmovups 896+__svml_stanh_data_internal(%rip), %zmm11
+ vmovups 768+__svml_stanh_data_internal(%rip), %zmm12
+ vmovups 640+__svml_stanh_data_internal(%rip), %zmm13
+ vmovups 512+__svml_stanh_data_internal(%rip), %zmm14
+ vmovups 384+__svml_stanh_data_internal(%rip), %zmm15
+ vpternlogd $255, %zmm2, %zmm2, %zmm2
+ vandps 5696+__svml_stanh_data_internal(%rip), %zmm1, %zmm8
+ vandps 5632+__svml_stanh_data_internal(%rip), %zmm1, %zmm0
+
+/* Here huge arguments, INF and NaNs are filtered out to callout. */
+ vpandd 1152+__svml_stanh_data_internal(%rip), %zmm1, %zmm3
+ vpsubd 1216+__svml_stanh_data_internal(%rip), %zmm3, %zmm4
+ vpcmpd $2, 5824+__svml_stanh_data_internal(%rip), %zmm3, %k1
+
+/*
+ * * small table specific variables *
+ * **********************************
+ * -------------------- Constant loading -------------------
+ */
+ vpxord %zmm5, %zmm5, %zmm5
+
+/* if VMIN, VMAX is defined for I type */
+ vpmaxsd %zmm5, %zmm4, %zmm6
+ vpminsd 1280+__svml_stanh_data_internal(%rip), %zmm6, %zmm7
+ vpsrld $21, %zmm7, %zmm10
+ vmovups 1024+__svml_stanh_data_internal(%rip), %zmm4
+ vpermt2ps 64+__svml_stanh_data_internal(%rip), %zmm10, %zmm9
+ vpermt2ps 960+__svml_stanh_data_internal(%rip), %zmm10, %zmm11
+ vpermt2ps 1088+__svml_stanh_data_internal(%rip), %zmm10, %zmm4
+ vpermt2ps 832+__svml_stanh_data_internal(%rip), %zmm10, %zmm12
+ vpermt2ps 704+__svml_stanh_data_internal(%rip), %zmm10, %zmm13
+ vpermt2ps 576+__svml_stanh_data_internal(%rip), %zmm10, %zmm14
+ vpermt2ps 448+__svml_stanh_data_internal(%rip), %zmm10, %zmm15
+ vpandnd %zmm3, %zmm3, %zmm2{%k1}
+ vptestmd %zmm2, %zmm2, %k0
+ vmovups 128+__svml_stanh_data_internal(%rip), %zmm3
+ vsubps {rn-sae}, %zmm9, %zmm8, %zmm2
+ kmovw %k0, %edx
+ vfmadd213ps {rn-sae}, %zmm11, %zmm2, %zmm4
+ vpermt2ps 192+__svml_stanh_data_internal(%rip), %zmm10, %zmm3
+ vfmadd213ps {rn-sae}, %zmm12, %zmm2, %zmm4
+ vfmadd213ps {rn-sae}, %zmm13, %zmm2, %zmm4
+ vfmadd213ps {rn-sae}, %zmm14, %zmm2, %zmm4
+ vfmadd213ps {rn-sae}, %zmm15, %zmm2, %zmm4
+ vfmadd213ps {rn-sae}, %zmm3, %zmm2, %zmm4
+ vorps %zmm0, %zmm4, %zmm0
+ testl %edx, %edx
+ jne .LBL_1_3
+
+.LBL_1_2:
+
+
+/* no invcbrt in libm, so taking it out here */
+ movq %rbp, %rsp
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ .cfi_restore 6
+ ret
+ .cfi_def_cfa 6, 16
+ .cfi_offset 6, -16
+
+.LBL_1_3:
+
+ vmovups %zmm1, 64(%rsp)
+ vmovups %zmm0, 128(%rsp)
+ je .LBL_1_2
+
+
+ xorl %eax, %eax
+
+
+ vzeroupper
+ kmovw %k4, 24(%rsp)
+ kmovw %k5, 16(%rsp)
+ kmovw %k6, 8(%rsp)
+ kmovw %k7, (%rsp)
+ movq %rsi, 40(%rsp)
+ movq %rdi, 32(%rsp)
+ movq %r12, 56(%rsp)
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ movl %eax, %r12d
+ movq %r13, 48(%rsp)
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ movl %edx, %r13d
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_7:
+
+ btl %r12d, %r13d
+ jc .LBL_1_10
+
+.LBL_1_8:
+
+ incl %r12d
+ cmpl $16, %r12d
+ jl .LBL_1_7
+
+
+ kmovw 24(%rsp), %k4
+ .cfi_restore 122
+ kmovw 16(%rsp), %k5
+ .cfi_restore 123
+ kmovw 8(%rsp), %k6
+ .cfi_restore 124
+ kmovw (%rsp), %k7
+ .cfi_restore 125
+ vmovups 128(%rsp), %zmm0
+ movq 40(%rsp), %rsi
+ .cfi_restore 4
+ movq 32(%rsp), %rdi
+ .cfi_restore 5
+ movq 56(%rsp), %r12
+ .cfi_restore 12
+ movq 48(%rsp), %r13
+ .cfi_restore 13
+ jmp .LBL_1_2
+ .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22
+ .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22
+
+.LBL_1_10:
+
+ lea 64(%rsp,%r12,4), %rdi
+ lea 128(%rsp,%r12,4), %rsi
+
+ call __svml_stanh_cout_rare_internal
+ jmp .LBL_1_8
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_tanhf16,@function
+ .size __svml_tanhf16,.-__svml_tanhf16
+..LN__svml_tanhf16.0:
+
+.L_2__routine_start___svml_stanh_cout_rare_internal_1:
+
+ .align 16,0x90
+
+__svml_stanh_cout_rare_internal:
+
+
+ .cfi_startproc
+..L53:
+
+ lea __stanh_la__imlsTanhTab(%rip), %rdx
+ movb 3(%rdi), %al
+ andb $-128, %al
+ shrb $7, %al
+ movzbl %al, %ecx
+ movzwl 2(%rdi), %r8d
+ andl $32640, %r8d
+ movl (%rdx,%rcx,4), %eax
+ cmpl $32640, %r8d
+ je .LBL_2_4
+
+.LBL_2_2:
+
+ movl %eax, (%rsi)
+
+.LBL_2_3:
+
+ xorl %eax, %eax
+ ret
+
+.LBL_2_4:
+
+ testl $8388607, (%rdi)
+ je .LBL_2_2
+
+
+ movss (%rdi), %xmm0
+ addss %xmm0, %xmm0
+ movss %xmm0, (%rsi)
+ jmp .LBL_2_3
+ .align 16,0x90
+
+ .cfi_endproc
+
+ .type __svml_stanh_cout_rare_internal,@function
+ .size __svml_stanh_cout_rare_internal,.-__svml_stanh_cout_rare_internal
+..LN__svml_stanh_cout_rare_internal.1:
+
+ .section .rodata, "a"
+ .align 64
+ .align 64
+__svml_stanh_data_internal:
+ .long 0
+ .long 1030750208
+ .long 1032847360
+ .long 1034944512
+ .long 1037041664
+ .long 1039138816
+ .long 1041235968
+ .long 1043333120
+ .long 1045430272
+ .long 1047527424
+ .long 1049624576
+ .long 1051721728
+ .long 1053818880
+ .long 1055916032
+ .long 1058013184
+ .long 1060110336
+ .long 1062207488
+ .long 1064304640
+ .long 1066401792
+ .long 1068498944
+ .long 1070596096
+ .long 1072693248
+ .long 1074790400
+ .long 1076887552
+ .long 1078984704
+ .long 1081081856
+ .long 1083179008
+ .long 1085276160
+ .long 1087373312
+ .long 1089470464
+ .long 1091567616
+ .long 0
+ .long 0
+ .long 1030732233
+ .long 1032831839
+ .long 1034916201
+ .long 1036994987
+ .long 1039067209
+ .long 1041174248
+ .long 1043220868
+ .long 1045245838
+ .long 1047245614
+ .long 1049383373
+ .long 1051287907
+ .long 1053115377
+ .long 1054857013
+ .long 1057129528
+ .long 1058581488
+ .long 1059832960
+ .long 1060891676
+ .long 1062153819
+ .long 1063337043
+ .long 1064100733
+ .long 1064582223
+ .long 1064984555
+ .long 1065216645
+ .long 1065302845
+ .long 1065334668
+ .long 1065349076
+ .long 1065352656
+ .long 1065353140
+ .long 1065353206
+ .long 1065353215
+ .long 1065353216
+ .long 0
+ .long 2963361822
+ .long 2971470750
+ .long 2945658640
+ .long 821708412
+ .long 824483568
+ .long 824941280
+ .long 2984085072
+ .long 2957298688
+ .long 838449816
+ .long 2966046080
+ .long 2988320324
+ .long 2989804564
+ .long 842626356
+ .long 3000013710
+ .long 2972725824
+ .long 3002017674
+ .long 853753500
+ .long 2987104448
+ .long 3000350914
+ .long 855535800
+ .long 852410906
+ .long 851608946
+ .long 2988641656
+ .long 2997011000
+ .long 2989576736
+ .long 3000884068
+ .long 2999984336
+ .long 840950056
+ .long 2995215280
+ .long 855269702
+ .long 0
+ .long 1065353216
+ .long 1065295748
+ .long 1065270545
+ .long 1065229919
+ .long 1065181343
+ .long 1065124909
+ .long 1065025765
+ .long 1064867200
+ .long 1064679597
+ .long 1064464345
+ .long 1064093083
+ .long 1063517074
+ .long 1062862743
+ .long 1062146519
+ .long 1060992371
+ .long 1059386208
+ .long 1057800167
+ .long 1055660649
+ .long 1051764737
+ .long 1046959010
+ .long 1041444634
+ .long 1035462611
+ .long 1026689093
+ .long 1015337940
+ .long 1002731447
+ .long 990958554
+ .long 973168670
+ .long 948705851
+ .long 924299482
+ .long 899955662
+ .long 864224966
+ .long 0
+ .long 2956213371
+ .long 3178161821
+ .long 3180268967
+ .long 3182315389
+ .long 3184339487
+ .long 3186337805
+ .long 3188474939
+ .long 3190373619
+ .long 3192189570
+ .long 3193910865
+ .long 3196176320
+ .long 3197556682
+ .long 3198679950
+ .long 3199536798
+ .long 3200331518
+ .long 3200564882
+ .long 3200049264
+ .long 3199029518
+ .long 3197040598
+ .long 3192620804
+ .long 3188208183
+ .long 3182392393
+ .long 3173916356
+ .long 3162750726
+ .long 3150176437
+ .long 3138431708
+ .long 3120650203
+ .long 3096189170
+ .long 3071783062
+ .long 3047439278
+ .long 3011707180
+ .long 0
+ .long 3198855845
+ .long 3198879250
+ .long 3198677023
+ .long 3198476576
+ .long 3198388151
+ .long 3198245218
+ .long 3197982711
+ .long 3197594458
+ .long 3197117197
+ .long 3196587519
+ .long 3195304371
+ .long 3192667528
+ .long 3189843074
+ .long 3186330810
+ .long 3177085101
+ .long 1013669486
+ .long 1032032579
+ .long 1036132065
+ .long 1038305199
+ .long 1036774550
+ .long 1033498413
+ .long 1028927137
+ .long 1021175553
+ .long 1009568359
+ .long 998361895
+ .long 985691041
+ .long 967585842
+ .long 943363289
+ .long 919210013
+ .long 895139148
+ .long 858471606
+ .long 0
+ .long 3077428921
+ .long 3189516141
+ .long 1008586543
+ .long 1036101517
+ .long 1033304453
+ .long 1034073627
+ .long 1036071831
+ .long 1037235824
+ .long 1039436298
+ .long 1040631208
+ .long 1041906362
+ .long 1042793477
+ .long 1043232976
+ .long 1043086916
+ .long 1042100375
+ .long 1039444212
+ .long 1034126600
+ .long 1026638186
+ .long 995501655
+ .long 3165579977
+ .long 3167654937
+ .long 3165317828
+ .long 3158960080
+ .long 3148291549
+ .long 3137354510
+ .long 3124730373
+ .long 3106670759
+ .long 3082457650
+ .long 3058305807
+ .long 3034235241
+ .long 2997581996
+ .long 0
+ .long 1040781545
+ .long 1131811139
+ .long 1097198812
+ .long 3247503190
+ .long 3230402941
+ .long 3224086547
+ .long 3212798938
+ .long 1059790272
+ .long 1053691997
+ .long 1061317268
+ .long 3134918084
+ .long 1034173207
+ .long 3176246152
+ .long 3165561405
+ .long 3174788493
+ .long 3178015405
+ .long 3178847213
+ .long 3177176538
+ .long 3171127099
+ .long 3155996003
+ .long 985352038
+ .long 999682315
+ .long 998398067
+ .long 989522534
+ .long 977926264
+ .long 966355955
+ .long 948911724
+ .long 924561635
+ .long 900244966
+ .long 875993879
+ .long 841254832
+ .long 0
+ .long 3155046246
+ .long 1175181842
+ .long 1138112751
+ .long 3286309950
+ .long 3267011817
+ .long 3259619885
+ .long 3246758786
+ .long 1088248663
+ .long 1078543936
+ .long 1086795944
+ .long 3205436942
+ .long 1043392367
+ .long 3198686087
+ .long 3182586396
+ .long 3174374999
+ .long 3142320544
+ .long 1008565243
+ .long 1014115537
+ .long 1016545052
+ .long 1010017051
+ .long 998649588
+ .long 975680464
+ .long 3124451591
+ .long 3121544226
+ .long 3112148751
+ .long 3100159824
+ .long 3082673659
+ .long 3058641232
+ .long 3034613169
+ .long 3010665978
+ .long 2975473412
+ .long 0
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 2145386496
+ .long 1027604480
+ .long 1027604480
+ .long 1027604480
+ .long 1027604480
+ .long 1027604480
+ .long 1027604480
+ .long 1027604480
+ .long 1027604480
+ .long 1027604480
+ .long 1027604480
+ .long 1027604480
+ .long 1027604480
+ .long 1027604480
+ .long 1027604480
+ .long 1027604480
+ .long 1027604480
+ .long 65011712
+ .long 65011712
+ .long 65011712
+ .long 65011712
+ .long 65011712
+ .long 65011712
+ .long 65011712
+ .long 65011712
+ .long 65011712
+ .long 65011712
+ .long 65011712
+ .long 65011712
+ .long 65011712
+ .long 65011712
+ .long 65011712
+ .long 65011712
+ .long 0
+ .long 0
+ .long 36466923
+ .long 1072693248
+ .long 2365563284
+ .long 3201306247
+ .long 1829111721
+ .long 3218428278
+ .long 3823420055
+ .long 3193165324
+ .long 1098370908
+ .long 1072693250
+ .long 2493848101
+ .long 3205978300
+ .long 1742787824
+ .long 3218423470
+ .long 4013086462
+ .long 3193609799
+ .long 3667406935
+ .long 1072693250
+ .long 1352570026
+ .long 3206273363
+ .long 1445916117
+ .long 3218422747
+ .long 3835089556
+ .long 3194065339
+ .long 2420711447
+ .long 1072693251
+ .long 2169133006
+ .long 3206574718
+ .long 101347106
+ .long 3218421982
+ .long 713636389
+ .long 3194411770
+ .long 1709214929
+ .long 1072693252
+ .long 1710199222
+ .long 3206758855
+ .long 2216669086
+ .long 3218421174
+ .long 3814844772
+ .long 3194836884
+ .long 1591910603
+ .long 1072693253
+ .long 2011589771
+ .long 3206962796
+ .long 3721194918
+ .long 3218420324
+ .long 1295469166
+ .long 3195182212
+ .long 2130808979
+ .long 1072693254
+ .long 1222040805
+ .long 3207187539
+ .long 555871541
+ .long 3218419433
+ .long 401254514
+ .long 3195493098
+ .long 3390924472
+ .long 1072693255
+ .long 3112838711
+ .long 3207434078
+ .long 1558155560
+ .long 3218418499
+ .long 683885552
+ .long 3195864282
+ .long 1145294069
+ .long 1072693257
+ .long 1821670117
+ .long 3207648695
+ .long 2692181933
+ .long 3218417523
+ .long 2704036295
+ .long 3196181879
+ .long 4054831834
+ .long 1072693258
+ .long 1649153664
+ .long 3207795248
+ .long 4228604383
+ .long 3218416505
+ .long 4004758581
+ .long 3196440654
+ .long 3603542514
+ .long 1072693260
+ .long 1123737044
+ .long 3207954183
+ .long 2154630785
+ .long 3218415446
+ .long 2606327835
+ .long 3196743208
+ .long 4163276658
+ .long 1072693262
+ .long 2048619642
+ .long 3208125991
+ .long 1058893780
+ .long 3218414345
+ .long 250194901
+ .long 3197094852
+ .long 1518877548
+ .long 1072693265
+ .long 3379868633
+ .long 3208311162
+ .long 1246516380
+ .long 3218413202
+ .long 1621358934
+ .long 3197304764
+ .long 48033162
+ .long 1072693268
+ .long 957106177
+ .long 3208510185
+ .long 3034045498
+ .long 3218412017
+ .long 798414253
+ .long 3197538466
+ .long 4131323741
+ .long 1072693270
+ .long 2207647163
+ .long 3208683052
+ .long 2454449664
+ .long 3218410791
+ .long 1709648499
+ .long 3197805932
+ .long 972334142
+ .long 1072693274
+ .long 1279092327
+ .long 3208797143
+ .long 4141984674
+ .long 3218409523
+ .long 4279927728
+ .long 3198110676
+ .long 3547307714
+ .long 1072693277
+ .long 873763845
+ .long 3208918886
+ .long 4152286949
+ .long 3218408214
+ .long 947630201
+ .long 3198400037
+ .long 3779918761
+ .long 1072693283
+ .long 2452756690
+ .long 3209115951
+ .long 2900277560
+ .long 3218406175
+ .long 4114829322
+ .long 3198840356
+ .long 1550746642
+ .long 1072693293
+ .long 3179273584
+ .long 3209408258
+ .long 1697097694
+ .long 3218403310
+ .long 3189856208
+ .long 3199299134
+ .long 2567958063
+ .long 1072693304
+ .long 2177201355
+ .long 3209713300
+ .long 663593652
+ .long 3218400281
+ .long 1915839956
+ .long 3199641526
+ .long 3400799630
+ .long 1072693317
+ .long 2625933576
+ .long 3209895292
+ .long 3140727122
+ .long 3218397088
+ .long 2825210621
+ .long 3200061154
+ .long 661592278
+ .long 1072693333
+ .long 2751163500
+ .long 3210096603
+ .long 4055449010
+ .long 3218393733
+ .long 57286782
+ .long 3200412116
+ .long 3889851982
+ .long 1072693350
+ .long 2680384314
+ .long 3210318153
+ .long 2804057046
+ .long 3218390217
+ .long 1812582369
+ .long 3200718155
+ .long 1191734144
+ .long 1072693371
+ .long 867498228
+ .long 3210560852
+ .long 3250577733
+ .long 3218386540
+ .long 3326742410
+ .long 3201083020
+ .long 2188854007
+ .long 1072693394
+ .long 363145135
+ .long 3210782655
+ .long 840173644
+ .long 3218382704
+ .long 1735074843
+ .long 3201408616
+ .long 3657661222
+ .long 1072693420
+ .long 2204762872
+ .long 3210926495
+ .long 4072217384
+ .long 3218378708
+ .long 2965875284
+ .long 3201662196
+ .long 2413420961
+ .long 1072693450
+ .long 1162405510
+ .long 3211082241
+ .long 138720143
+ .long 3218374556
+ .long 454705634
+ .long 3201958187
+ .long 3899194868
+ .long 1072693483
+ .long 669033796
+ .long 3211250324
+ .long 2167069495
+ .long 3218370246
+ .long 1542529428
+ .long 3202301612
+ .long 710018948
+ .long 1072693521
+ .long 2883210692
+ .long 3211431169
+ .long 1973418570
+ .long 3218365781
+ .long 3156689511
+ .long 3202524481
+ .long 2656657906
+ .long 1072693562
+ .long 3498100032
+ .long 3211625196
+ .long 125419693
+ .long 3218361162
+ .long 1620715508
+ .long 3202751895
+ .long 2404819887
+ .long 1072693608
+ .long 4021715948
+ .long 3211810552
+ .long 1645154164
+ .long 3218356389
+ .long 703452016
+ .long 3203011668
+ .long 1243884135
+ .long 1072693659
+ .long 480742811
+ .long 3211921363
+ .long 3122063309
+ .long 3218351464
+ .long 223504399
+ .long 3203307063
+ .long 495862037
+ .long 1072693715
+ .long 300794004
+ .long 3212039372
+ .long 1300653287
+ .long 3218346389
+ .long 1176592120
+ .long 3203610816
+ .long 3274452673
+ .long 1072693808
+ .long 2613861807
+ .long 3212229889
+ .long 359514654
+ .long 3218338503
+ .long 2923503278
+ .long 3204034910
+ .long 3741678157
+ .long 1072693954
+ .long 3651935792
+ .long 3212511436
+ .long 2702507736
+ .long 3218327463
+ .long 2210624435
+ .long 3204506468
+ .long 1100251351
+ .long 1072694127
+ .long 3514265607
+ .long 3212825173
+ .long 957470414
+ .long 3218315845
+ .long 1305550937
+ .long 3204833184
+ .long 2996845965
+ .long 1072694328
+ .long 3142229264
+ .long 3213004685
+ .long 1883674585
+ .long 3218303659
+ .long 3326598907
+ .long 3205231584
+ .long 274977645
+ .long 1072694562
+ .long 3016319234
+ .long 3213195820
+ .long 1539002348
+ .long 3218290918
+ .long 3984366897
+ .long 3205604614
+ .long 1292806442
+ .long 1072694830
+ .long 3262520051
+ .long 3213405058
+ .long 2372653574
+ .long 3218277634
+ .long 2452462577
+ .long 3205892032
+ .long 1815353697
+ .long 1072695136
+ .long 3662183375
+ .long 3213632998
+ .long 250148789
+ .long 3218263821
+ .long 2158010733
+ .long 3206232708
+ .long 2150433494
+ .long 1072695483
+ .long 3919565056
+ .long 3213880202
+ .long 1540395291
+ .long 3218249491
+ .long 3182910565
+ .long 3206589369
+ .long 2808974545
+ .long 1072695874
+ .long 1965799910
+ .long 3214016317
+ .long 1545570484
+ .long 3218234659
+ .long 1413633121
+ .long 3206823218
+ .long 164723038
+ .long 1072696313
+ .long 81021250
+ .long 3214159950
+ .long 1583468454
+ .long 3218219339
+ .long 18571726
+ .long 3207094384
+ .long 3588317822
+ .long 1072696801
+ .long 4095098713
+ .long 3214313941
+ .long 298038316
+ .long 3218203546
+ .long 912947688
+ .long 3207406859
+ .long 1041448961
+ .long 1072697344
+ .long 4179586945
+ .long 3214478495
+ .long 2148027612
+ .long 3218187294
+ .long 3720520462
+ .long 3207679413
+ .long 1980273179
+ .long 1072697943
+ .long 1752543433
+ .long 3214653794
+ .long 124299728
+ .long 3218170600
+ .long 864061540
+ .long 3207883361
+ .long 2949417123
+ .long 1072698602
+ .long 4190073881
+ .long 3214839998
+ .long 1415544749
+ .long 3218153478
+ .long 3694676202
+ .long 3208114560
+ .long 420771937
+ .long 1072699325
+ .long 1282420231
+ .long 3214985633
+ .long 1533345938
+ .long 3218135945
+ .long 2892854837
+ .long 3208375402
+ .long 3632588569
+ .long 1072700113
+ .long 2712748874
+ .long 3215089842
+ .long 1386124246
+ .long 3218118017
+ .long 1634175019
+ .long 3208733922
+ .long 347483009
+ .long 1072701423
+ .long 1161341506
+ .long 3215256321
+ .long 1877668895
+ .long 3218090451
+ .long 4108664264
+ .long 3209099007
+ .long 3038559136
+ .long 1072703435
+ .long 2683048238
+ .long 3215498732
+ .long 1179454900
+ .long 3218025113
+ .long 1332126937
+ .long 3209546908
+ .long 3486307715
+ .long 1072705767
+ .long 2508275841
+ .long 3215764027
+ .long 359393231
+ .long 3217946511
+ .long 1961215910
+ .long 3209890029
+ .long 2252418763
+ .long 1072708441
+ .long 2827865151
+ .long 3216017387
+ .long 3509880367
+ .long 3217865627
+ .long 3222140085
+ .long 3210213923
+ .long 1486994624
+ .long 1072711477
+ .long 3160629487
+ .long 3216172802
+ .long 1178047112
+ .long 3217782741
+ .long 1901428593
+ .long 3210596649
+ .long 3746562216
+ .long 1072714893
+ .long 1033996001
+ .long 3216339382
+ .long 39866696
+ .long 3217698130
+ .long 2908573463
+ .long 3210891953
+ .long 2324761591
+ .long 1072718707
+ .long 2389401627
+ .long 3216516876
+ .long 3645939838
+ .long 3217612071
+ .long 2440236284
+ .long 3211151116
+ .long 1761407793
+ .long 1072722932
+ .long 2502005220
+ .long 3216704962
+ .long 1997398717
+ .long 3217524842
+ .long 2895026412
+ .long 3211448596
+ .long 4114502182
+ .long 1072727579
+ .long 2605061383
+ .long 3216903247
+ .long 58515002
+ .long 3217436714
+ .long 711731960
+ .long 3211787230
+ .long 3951984035
+ .long 1072732658
+ .long 3516063216
+ .long 3217071220
+ .long 3638757279
+ .long 3217347953
+ .long 3233370794
+ .long 3211979005
+ .long 658281779
+ .long 1072738175
+ .long 309554960
+ .long 3217179845
+ .long 1331214594
+ .long 3217258823
+ .long 2937534811
+ .long 3212193451
+ .long 2289001467
+ .long 1072744131
+ .long 2442043690
+ .long 3217292793
+ .long 2664085653
+ .long 3217169576
+ .long 3462081454
+ .long 3212432263
+ .long 3795084150
+ .long 1072750527
+ .long 1130374688
+ .long 3217409754
+ .long 3638257201
+ .long 3217080459
+ .long 3906637920
+ .long 3212696488
+ .long 4040275044
+ .long 1072757360
+ .long 3643517564
+ .long 3217530392
+ .long 4148962921
+ .long 3216952251
+ .long 1995056602
+ .long 3212911950
+ .long 1479928784
+ .long 1072764624
+ .long 2653868580
+ .long 3217654355
+ .long 1010106713
+ .long 3216775940
+ .long 3129357315
+ .long 3213070764
+ .long 2856812514
+ .long 1072772308
+ .long 1621093115
+ .long 3217781272
+ .long 1824031529
+ .long 3216601249
+ .long 2296680075
+ .long 3213333328
+ .long 2460843475
+ .long 1072784536
+ .long 3722925065
+ .long 3217975665
+ .long 3901534801
+ .long 3216343697
+ .long 741495589
+ .long 3213734822
+ .long 13033194
+ .long 1072802249
+ .long 1706090638
+ .long 3218161084
+ .long 4129724113
+ .long 3216008854
+ .long 2582831738
+ .long 3214039094
+ .long 3092949488
+ .long 1072821329
+ .long 4163404160
+ .long 3218296789
+ .long 673560195
+ .long 3215391593
+ .long 1852259695
+ .long 3214295490
+ .long 3663604487
+ .long 1072841572
+ .long 2783926416
+ .long 3218433189
+ .long 538028418
+ .long 3214623601
+ .long 955002681
+ .long 3214577680
+ .long 1457520314
+ .long 1072862739
+ .long 2977011911
+ .long 3218568683
+ .long 2456605794
+ .long 3213048602
+ .long 1782979473
+ .long 3214883178
+ .long 3136246603
+ .long 1072884563
+ .long 4172123069
+ .long 3218701739
+ .long 1041205303
+ .long 1065062250
+ .long 1494191018
+ .long 3215071352
+ .long 2030188257
+ .long 1072906761
+ .long 242335435
+ .long 3218830924
+ .long 3225388224
+ .long 1066807264
+ .long 2597486284
+ .long 3215242091
+ .long 1527970838
+ .long 1072929036
+ .long 2966426512
+ .long 3218954923
+ .long 1554080475
+ .long 1067589039
+ .long 1299968651
+ .long 3215418462
+ .long 3575385503
+ .long 1072951087
+ .long 2115725422
+ .long 3219072567
+ .long 1970202642
+ .long 1068007486
+ .long 633750547
+ .long 3215597833
+ .long 4170701031
+ .long 1072972617
+ .long 46586082
+ .long 3219155579
+ .long 1194653136
+ .long 1068384025
+ .long 4171340731
+ .long 3215777352
+ .long 3578160514
+ .long 1072993337
+ .long 3238411740
+ .long 3219206599
+ .long 3278559237
+ .long 1068609006
+ .long 2404931200
+ .long 3215954013
+ .long 533888921
+ .long 1073012973
+ .long 1507597629
+ .long 3219253160
+ .long 2386969249
+ .long 1068756225
+ .long 272720058
+ .long 3216053653
+ .long 54544651
+ .long 1073031269
+ .long 3020671348
+ .long 3219294996
+ .long 4122670807
+ .long 1068883785
+ .long 2536786852
+ .long 3216134458
+ .long 230026772
+ .long 1073047994
+ .long 2830531360
+ .long 3219331923
+ .long 2545616196
+ .long 1068992498
+ .long 3897096954
+ .long 3216209170
+ .long 867435464
+ .long 1073062943
+ .long 3935983781
+ .long 3219363830
+ .long 4280666630
+ .long 1069083305
+ .long 1614478429
+ .long 3216276286
+ .long 3991143559
+ .long 1073075939
+ .long 3165050417
+ .long 3219390677
+ .long 248866814
+ .long 1069157251
+ .long 2328429718
+ .long 3216358398
+ .long 1880129173
+ .long 1073091258
+ .long 4059723411
+ .long 3219421162
+ .long 3082848917
+ .long 1069238148
+ .long 1081358649
+ .long 3216430553
+ .long 1955557582
+ .long 1073104040
+ .long 2869422647
+ .long 3219445318
+ .long 1310544530
+ .long 1069299023
+ .long 434435025
+ .long 3216450109
+ .long 3947018234
+ .long 1073107343
+ .long 3414641036
+ .long 3219451270
+ .long 4069313179
+ .long 1069313321
+ .long 1392468754
+ .long 3216410502
+ .long 3271741504
+ .long 1073101128
+ .long 3884994071
+ .long 3219440866
+ .long 1456085694
+ .long 1069290099
+ .long 2332856790
+ .long 3216307665
+ .long 3950891192
+ .long 1073085735
+ .long 439037894
+ .long 3219416288
+ .long 1197951536
+ .long 1069237765
+ .long 4195788421
+ .long 3216139842
+ .long 3990997338
+ .long 1073061787
+ .long 550042602
+ .long 3219379833
+ .long 2832452545
+ .long 1069163766
+ .long 1200943255
+ .long 3215832361
+ .long 2073883731
+ .long 1073030122
+ .long 3042850267
+ .long 3219333800
+ .long 991641143
+ .long 1069074535
+ .long 1637244010
+ .long 3215243222
+ .long 3805163810
+ .long 1072991715
+ .long 3517445189
+ .long 3219280382
+ .long 2680864185
+ .long 1068975465
+ .long 1457843741
+ .long 3214140932
+ .long 1315080793
+ .long 1072947617
+ .long 3059804278
+ .long 3219221594
+ .long 2861308047
+ .long 1068870963
+ .long 3296491873
+ .long 1064537111
+ .long 3728462150
+ .long 1072898893
+ .long 3615137083
+ .long 3219159232
+ .long 3017963192
+ .long 1068764532
+ .long 3972434375
+ .long 1067468619
+ .long 1336398218
+ .long 1072846587
+ .long 1068664290
+ .long 3219061390
+ .long 122240345
+ .long 1068658880
+ .long 508009436
+ .long 1068456917
+ .long 3501538245
+ .long 1072791681
+ .long 968690691
+ .long 3218931236
+ .long 1514516445
+ .long 1068556030
+ .long 671541798
+ .long 1069006173
+ .long 3814409280
+ .long 1072735081
+ .long 1553551847
+ .long 3218801852
+ .long 2849431279
+ .long 1068415930
+ .long 285838780
+ .long 1069554660
+ .long 2881499585
+ .long 1072661949
+ .long 928028610
+ .long 3218674977
+ .long 8837506
+ .long 1068229231
+ .long 4283922105
+ .long 1069842903
+ .long 1813934616
+ .long 1072546640
+ .long 2296020303
+ .long 3218551962
+ .long 3757630126
+ .long 1068054242
+ .long 4184842874
+ .long 1070138481
+ .long 1612285858
+ .long 1072432209
+ .long 3568867548
+ .long 3218433820
+ .long 2489334631
+ .long 1067891605
+ .long 3119354956
+ .long 1070586029
+ .long 1945534618
+ .long 1072265408
+ .long 12375465
+ .long 3218268030
+ .long 869568690
+ .long 1067671872
+ .long 313517472
+ .long 1070892138
+ .long 1205077106
+ .long 1072052753
+ .long 2329101392
+ .long 3218055718
+ .long 31064032
+ .long 1067390210
+ .long 1106783211
+ .long 1071186310
+ .long 571472860
+ .long 1071856508
+ .long 2279775366
+ .long 3217706561
+ .long 3977902324
+ .long 1066976012
+ .long 1438560376
+ .long 1071467394
+ .long 433300635
+ .long 1071678859
+ .long 2662131044
+ .long 3217407122
+ .long 3461865003
+ .long 1066639491
+ .long 3761842524
+ .long 1071687909
+ .long 591758334
+ .long 1071396321
+ .long 1311878841
+ .long 3217153539
+ .long 3007781852
+ .long 1066335723
+ .long 1614590629
+ .long 1071809819
+ .long 1253814918
+ .long 1071117476
+ .long 1728609767
+ .long 3216850667
+ .long 2200561853
+ .long 1065903347
+ .long 3821226689
+ .long 1071921115
+ .long 2022982069
+ .long 1070874479
+ .long 2030156196
+ .long 3216496942
+ .long 874711265
+ .long 1065560045
+ .long 2003227996
+ .long 1072021655
+ .long 2808404217
+ .long 1070664514
+ .long 1372837647
+ .long 3216204595
+ .long 822053276
+ .long 1065224094
+ .long 3767175364
+ .long 1072111660
+ .long 3043371777
+ .long 1070372670
+ .long 1442419211
+ .long 3215945892
+ .long 298752438
+ .long 1064796452
+ .long 1111528881
+ .long 1072191609
+ .long 3513208196
+ .long 1070065467
+ .long 3837735739
+ .long 3215552388
+ .long 3701924119
+ .long 1064460397
+ .long 1230501085
+ .long 1072262142
+ .long 2161267832
+ .long 1069804871
+ .long 4188367704
+ .long 3215231429
+ .long 401190186
+ .long 1064089052
+ .long 3002339892
+ .long 1072323996
+ .long 1480019407
+ .long 1069584807
+ .long 1833655520
+ .long 3214970435
+ .long 2907956919
+ .long 1063676311
+ .long 875346000
+ .long 1072377952
+ .long 3150437403
+ .long 1069251888
+ .long 876861923
+ .long 3214583482
+ .long 1689748747
+ .long 1063353511
+ .long 2795554744
+ .long 1072424793
+ .long 3869705215
+ .long 1068941581
+ .long 1837883894
+ .long 3214240854
+ .long 2762317048
+ .long 1062946513
+ .long 2491972100
+ .long 1072465284
+ .long 4114823501
+ .long 1068682289
+ .long 2146865463
+ .long 3213964103
+ .long 800804261
+ .long 1062552648
+ .long 2634953449
+ .long 1072500149
+ .long 2952556276
+ .long 1068433515
+ .long 1872935290
+ .long 3213596436
+ .long 525130857
+ .long 1062245296
+ .long 3287041404
+ .long 1072542855
+ .long 164674845
+ .long 1067923724
+ .long 3273134342
+ .long 3213089271
+ .long 171708004
+ .long 1061610314
+ .long 3035032320
+ .long 1072586748
+ .long 3976243935
+ .long 1067403539
+ .long 3504708444
+ .long 3212404491
+ .long 3955947885
+ .long 1060882840
+ .long 513098494
+ .long 1072618404
+ .long 416924237
+ .long 1066726877
+ .long 1788945081
+ .long 3211801737
+ .long 1199639353
+ .long 1060166859
+ .long 2284134637
+ .long 1072641010
+ .long 754275327
+ .long 1066136447
+ .long 94803481
+ .long 3211042671
+ .long 3377507017
+ .long 1059354147
+ .long 1467291457
+ .long 1072657015
+ .long 2435597312
+ .long 1065520743
+ .long 2819017772
+ .long 3210358609
+ .long 1988617747
+ .long 1058591581
+ .long 633705514
+ .long 1072668259
+ .long 392269686
+ .long 1064864433
+ .long 2964449929
+ .long 3209729770
+ .long 3963893163
+ .long 1057889872
+ .long 2214892393
+ .long 1072676103
+ .long 2190738271
+ .long 1064315837
+ .long 3773826451
+ .long 3208969045
+ .long 3609404170
+ .long 1057113308
+ .long 3795216963
+ .long 1072681541
+ .long 3959981107
+ .long 1063599490
+ .long 1577139384
+ .long 3208281591
+ .long 1777963469
+ .long 1056319886
+ .long 2768813161
+ .long 1072685290
+ .long 452197850
+ .long 1062981751
+ .long 625862001
+ .long 3207639777
+ .long 1894515286
+ .long 1055580811
+ .long 809336726
+ .long 1072687861
+ .long 325412222
+ .long 1062349073
+ .long 3494772326
+ .long 3206874482
+ .long 3143092609
+ .long 1054887561
+ .long 1391578948
+ .long 1072689615
+ .long 370441451
+ .long 1061660435
+ .long 67458841
+ .long 3206180214
+ .long 1971759196
+ .long 1054066692
+ .long 57274217
+ .long 1072690807
+ .long 293665776
+ .long 1061075750
+ .long 1340185983
+ .long 3205535605
+ .long 2210177191
+ .long 1053294335
+ .long 1110907588
+ .long 1072691613
+ .long 3961986905
+ .long 1060367146
+ .long 3774614905
+ .long 3204763416
+ .long 3590429673
+ .long 1052580827
+ .long 2737507729
+ .long 1072692156
+ .long 370479370
+ .long 1059701790
+ .long 1033751386
+ .long 3204059641
+ .long 1162278823
+ .long 1051830218
+ .long 2341375458
+ .long 1072692521
+ .long 760364123
+ .long 1059103172
+ .long 910883556
+ .long 3203420282
+ .long 401067508
+ .long 1051028170
+ .long 3358303651
+ .long 1072692765
+ .long 3104773993
+ .long 1058369139
+ .long 2043715743
+ .long 3202639413
+ .long 4274377921
+ .long 1050278646
+ .long 3501940353
+ .long 1072692984
+ .long 2710387139
+ .long 1057384557
+ .long 2550611600
+ .long 3201592258
+ .long 2260324605
+ .long 1049158690
+ .long 3160989127
+ .long 1072693133
+ .long 1403521776
+ .long 1056074537
+ .long 760745859
+ .long 3200238663
+ .long 1163121055
+ .long 1047679067
+ .long 3509020169
+ .long 1072693198
+ .long 3352058101
+ .long 1054743188
+ .long 2289323607
+ .long 3198722761
+ .long 918272756
+ .long 1046147840
+ .long 4268817660
+ .long 1072693226
+ .long 1580550645
+ .long 1053325591
+ .long 1736251411
+ .long 3197308470
+ .long 1531106447
+ .long 1044632576
+ .long 0
+ .long 1072693248
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483648
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2147483647
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2146959360
+ .long 2130706432
+ .long 2130706432
+ .long 2130706432
+ .long 2130706432
+ .long 2130706432
+ .long 2130706432
+ .long 2130706432
+ .long 2130706432
+ .long 2130706432
+ .long 2130706432
+ .long 2130706432
+ .long 2130706432
+ .long 2130706432
+ .long 2130706432
+ .long 2130706432
+ .long 2130706432
+ .long 1022885888
+ .long 1022885888
+ .long 1022885888
+ .long 1022885888
+ .long 1022885888
+ .long 1022885888
+ .long 1022885888
+ .long 1022885888
+ .long 1022885888
+ .long 1022885888
+ .long 1022885888
+ .long 1022885888
+ .long 1022885888
+ .long 1022885888
+ .long 1022885888
+ .long 1022885888
+ .long 69730304
+ .long 69730304
+ .long 69730304
+ .long 69730304
+ .long 69730304
+ .long 69730304
+ .long 69730304
+ .long 69730304
+ .long 69730304
+ .long 69730304
+ .long 69730304
+ .long 69730304
+ .long 69730304
+ .long 69730304
+ .long 69730304
+ .long 69730304
+ .type __svml_stanh_data_internal,@object
+ .size __svml_stanh_data_internal,6016
+ .align 4
+__stanh_la__imlsTanhTab:
+ .long 1065353216
+ .long 3212836864
+ .type __stanh_la__imlsTanhTab,@object
+ .size __stanh_la__imlsTanhTab,8
a = np.array([[False], [TrueThenFalse()]])
assert_raises(RuntimeError, np.nonzero, a)
+ def test_nonzero_sideffects_structured_void(self):
+ # Checks that structured void does not mutate alignment flag of
+ # original array.
+ arr = np.zeros(5, dtype="i1,i8,i8") # `ones` may short-circuit
+ assert arr.flags.aligned # structs are considered "aligned"
+ assert not arr["f2"].flags.aligned
+ # make sure that nonzero/count_nonzero do not flip the flag:
+ np.nonzero(arr)
+ assert arr.flags.aligned
+ np.count_nonzero(arr)
+ assert arr.flags.aligned
+
def test_nonzero_exception_safe(self):
# gh-13930
data_square = [x*x for x in data]
square = self.square(vdata)
assert square == data_square
-
+
def test_max(self):
"""
Test intrinsics:
if self._is_fp():
return
+ int_min = self._int_min()
def trunc_div(a, d):
"""
Divide towards zero works with large integers > 2^53,
return a // d
return (a + sign_d - sign_a) // d + 1
- int_min = self._int_min() if self._is_signed() else 1
- int_max = self._int_max()
- rdata = (
- 0, 1, self.nlanes, int_max-self.nlanes,
- int_min, int_min//2 + 1
- )
- divisors = (1, 2, 9, 13, self.nlanes, int_min, int_max, int_max//2)
-
- for x, d in itertools.product(rdata, divisors):
- data = self._data(x)
- vdata = self.load(data)
- data_divc = [trunc_div(a, d) for a in data]
- divisor = self.divisor(d)
- divc = self.divc(vdata, divisor)
- assert divc == data_divc
-
- if not self._is_signed():
- return
-
- safe_neg = lambda x: -x-1 if -x > int_max else -x
- # test round divison for signed integers
- for x, d in itertools.product(rdata, divisors):
- d_neg = safe_neg(d)
- data = self._data(x)
- data_neg = [safe_neg(a) for a in data]
- vdata = self.load(data)
- vdata_neg = self.load(data_neg)
- divisor = self.divisor(d)
- divisor_neg = self.divisor(d_neg)
-
- # round towards zero
- data_divc = [trunc_div(a, d_neg) for a in data]
- divc = self.divc(vdata, divisor_neg)
- assert divc == data_divc
- data_divc = [trunc_div(a, d) for a in data_neg]
- divc = self.divc(vdata_neg, divisor)
+ data = [1, -int_min] # to test overflow
+ data += range(0, 2**8, 2**5)
+ data += range(0, 2**8, 2**5-1)
+ bsize = self._scalar_size()
+ if bsize > 8:
+ data += range(2**8, 2**16, 2**13)
+ data += range(2**8, 2**16, 2**13-1)
+ if bsize > 16:
+ data += range(2**16, 2**32, 2**29)
+ data += range(2**16, 2**32, 2**29-1)
+ if bsize > 32:
+ data += range(2**32, 2**64, 2**61)
+ data += range(2**32, 2**64, 2**61-1)
+ # negate
+ data += [-x for x in data]
+ for dividend, divisor in itertools.product(data, data):
+ divisor = self.setall(divisor)[0] # cast
+ if divisor == 0:
+ continue
+ dividend = self.load(self._data(dividend))
+ data_divc = [trunc_div(a, divisor) for a in dividend]
+ divisor_parms = self.divisor(divisor)
+ divc = self.divc(dividend, divisor_parms)
assert divc == data_divc
- # test truncate sign if the dividend is zero
- vzero = self.zero()
- for d in (-1, -10, -100, int_min//2, int_min):
- divisor = self.divisor(d)
- divc = self.divc(vzero, divisor)
- assert divc == vzero
-
- # test overflow
- vmin = self.setall(int_min)
- divisor = self.divisor(-1)
- divc = self.divc(vmin, divisor)
- assert divc == vmin
-
def test_arithmetic_reduce_sum(self):
"""
Test reduce sum intrinsics:
if msver is not None:
if msver >= 8:
check_embedded_msvcr_match_linked(msver)
- ma = int(msver)
- mi = int((msver - ma) * 10)
+ ma_str, mi_str = str(msver).split('.')
# Write the manifest file
- manxml = msvc_manifest_xml(ma, mi)
- man = open(manifest_name(config), "w")
- config.temp_files.append(manifest_name(config))
- man.write(manxml)
- man.close()
+ manxml = msvc_manifest_xml(int(ma_str), int(mi_str))
+ with open(manifest_name(config), "w") as man:
+ config.temp_files.append(manifest_name(config))
+ man.write(manxml)
reveal_type(ar_iter.stop) # E: builtins.list[builtins.int]
reveal_type(ar_iter.step) # E: builtins.list[builtins.int]
reveal_type(ar_iter.shape) # E: builtins.tuple[builtins.int]
-reveal_type(ar_iter.flat) # E: 'typing.Generator[{int64}, None, None]
+reveal_type(ar_iter.flat) # E: typing.Generator[{int64}, None, None]
reveal_type(ar_iter.__array__()) # E: numpy.ndarray[Any, numpy.dtype[{int64}]]
#-----------------------------------
# Path to the release notes
-RELEASE_NOTES = 'doc/source/release/1.21.3-notes.rst'
+RELEASE_NOTES = 'doc/source/release/1.21.4-notes.rst'
#-------------------------------------------------------