aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/python/numpy/include
diff options
context:
space:
mode:
authornkozlovskiy <nmk@ydb.tech>2023-09-29 12:24:06 +0300
committernkozlovskiy <nmk@ydb.tech>2023-09-29 12:41:34 +0300
commite0e3e1717e3d33762ce61950504f9637a6e669ed (patch)
treebca3ff6939b10ed60c3d5c12439963a1146b9711 /contrib/python/numpy/include
parent38f2c5852db84c7b4d83adfcb009eb61541d1ccd (diff)
downloadydb-e0e3e1717e3d33762ce61950504f9637a6e669ed.tar.gz
add ydb deps
Diffstat (limited to 'contrib/python/numpy/include')
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/__multiarray_api.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/__ufunc_api.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/__umath_generated.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/arrayobject.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/arrayscalars.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/config.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/halffloat.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/libdivide/libdivide.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/ndarrayobject.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/ndarraytypes.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/npy_3kcompat.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/npy_common.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/npy_cpu.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/npy_endian.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/npy_math.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/npy_no_deprecated_api.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/npy_os.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/numpyconfig.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/random/bitgen.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/random/distributions.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/ufuncobject.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/include/numpy/utils.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/_simd/_simd.dispatch.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/array_assign.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/binop_override.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/cblasfuncs.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/dlpack/dlpack.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/get_attr_string.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/lowlevel_strided_loops.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/mem_overlap.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_argparse.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_binsearch.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_cblas.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_config.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_cpu_dispatch.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_cpu_features.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_ctypes.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_dlpack.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_extint128.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_fpmath.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_hashtable.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_import.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_longdouble.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_partition.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_pycompat.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_sort.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/npy_svml.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/numpy_tag.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/numpyos.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/templ_common.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/ucsnarrow.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/ufunc_override.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/common/umathmodule.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/abstractdtypes.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/alloc.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/argfunc.dispatch.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/array_coercion.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/array_method.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/arrayfunction_override.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/arraytypes.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/can_cast_table.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/common.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/common_dtype.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/conversion_utils.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/convert_datatype.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/ctors.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/dtype_transfer.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/dtypemeta.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/nditer_impl.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/number.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/scalartypes.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/shape.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/textreading/conversions.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/textreading/field_types.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/textreading/growth.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/textreading/parser_config.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/textreading/rows.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/textreading/str_to_int.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/textreading/stream.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/textreading/stream_pyobject.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/multiarray/textreading/tokenize.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/npymath/npy_math_internal.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/npysort/x86-qsort.dispatch.cpp5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/_umath_tests.dispatch.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/clip.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/funcs.inc5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_arithm_fp.dispatch.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_arithm_fp.dispatch.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_arithmetic.dispatch.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_arithmetic.dispatch.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_comparison.dispatch.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_comparison.dispatch.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_exponent_log.dispatch.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_exponent_log.dispatch.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_hyperbolic.dispatch.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_hyperbolic.dispatch.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_minmax.dispatch.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_minmax.dispatch.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_modulo.dispatch.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_trigonometric.dispatch.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_trigonometric.dispatch.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_umath_fp.dispatch.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_umath_fp.dispatch.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_unary_fp.dispatch.c5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/loops_unary_fp.dispatch.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/matmul.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/ufunc_object.h5
-rw-r--r--contrib/python/numpy/include/numpy/core/src/umath/ufunc_type_resolution.h5
-rw-r--r--contrib/python/numpy/include/numpy/distutils/include/npy_cpu_dispatch_config.h5
-rw-r--r--contrib/python/numpy/include/numpy/random/include/aligned_malloc.h5
-rw-r--r--contrib/python/numpy/include/numpy/random/include/legacy-distributions.h5
-rw-r--r--contrib/python/numpy/include/numpy/random/mtrand/distributions.h5
-rw-r--r--contrib/python/numpy/include/numpy/random/mtrand/initarray.h5
-rw-r--r--contrib/python/numpy/include/numpy/random/mtrand/mtrand_py_helper.h5
-rw-r--r--contrib/python/numpy/include/numpy/random/mtrand/randomkit.h5
-rw-r--r--contrib/python/numpy/include/numpy/random/src/mt19937/mt19937.h5
-rw-r--r--contrib/python/numpy/include/numpy/random/src/pcg64/pcg64.h5
-rw-r--r--contrib/python/numpy/include/numpy/random/src/philox/philox.h5
-rw-r--r--contrib/python/numpy/include/numpy/random/src/sfc64/sfc64.h5
120 files changed, 600 insertions, 0 deletions
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/__multiarray_api.c b/contrib/python/numpy/include/numpy/core/include/numpy/__multiarray_api.c
new file mode 100644
index 0000000000..3161f25452
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/__multiarray_api.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/__multiarray_api.c>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/__multiarray_api.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/__ufunc_api.c b/contrib/python/numpy/include/numpy/core/include/numpy/__ufunc_api.c
new file mode 100644
index 0000000000..72f68f2142
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/__ufunc_api.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/__ufunc_api.c>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/__ufunc_api.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/__umath_generated.c b/contrib/python/numpy/include/numpy/core/include/numpy/__umath_generated.c
new file mode 100644
index 0000000000..2a234f05c3
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/__umath_generated.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/__umath_generated.c>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/__umath_generated.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/arrayobject.h b/contrib/python/numpy/include/numpy/core/include/numpy/arrayobject.h
new file mode 100644
index 0000000000..21ccbc9727
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/arrayobject.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/arrayobject.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/arrayobject.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/arrayscalars.h b/contrib/python/numpy/include/numpy/core/include/numpy/arrayscalars.h
new file mode 100644
index 0000000000..71ba20b262
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/arrayscalars.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/arrayscalars.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/arrayscalars.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/config.h b/contrib/python/numpy/include/numpy/core/include/numpy/config.h
new file mode 100644
index 0000000000..984f26a21c
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/config.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/config.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/config.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/halffloat.h b/contrib/python/numpy/include/numpy/core/include/numpy/halffloat.h
new file mode 100644
index 0000000000..f9e6934016
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/halffloat.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/halffloat.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/halffloat.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/libdivide/libdivide.h b/contrib/python/numpy/include/numpy/core/include/numpy/libdivide/libdivide.h
new file mode 100644
index 0000000000..677a86d8cd
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/libdivide/libdivide.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/libdivide/libdivide.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/include/numpy/libdivide/libdivide.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/ndarrayobject.h b/contrib/python/numpy/include/numpy/core/include/numpy/ndarrayobject.h
new file mode 100644
index 0000000000..ffccac97c5
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/ndarrayobject.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/ndarrayobject.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/ndarrayobject.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/ndarraytypes.h b/contrib/python/numpy/include/numpy/core/include/numpy/ndarraytypes.h
new file mode 100644
index 0000000000..dd1859d39c
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/ndarraytypes.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/ndarraytypes.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/ndarraytypes.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/npy_3kcompat.h b/contrib/python/numpy/include/numpy/core/include/numpy/npy_3kcompat.h
new file mode 100644
index 0000000000..89413a1476
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/npy_3kcompat.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/npy_3kcompat.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/npy_3kcompat.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/npy_common.h b/contrib/python/numpy/include/numpy/core/include/numpy/npy_common.h
new file mode 100644
index 0000000000..36ce71fd57
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/npy_common.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/npy_common.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/npy_common.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/npy_cpu.h b/contrib/python/numpy/include/numpy/core/include/numpy/npy_cpu.h
new file mode 100644
index 0000000000..321d6e90dd
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/npy_cpu.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/npy_cpu.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/npy_cpu.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/npy_endian.h b/contrib/python/numpy/include/numpy/core/include/numpy/npy_endian.h
new file mode 100644
index 0000000000..0d3de0d656
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/npy_endian.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/npy_endian.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/npy_endian.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/npy_math.h b/contrib/python/numpy/include/numpy/core/include/numpy/npy_math.h
new file mode 100644
index 0000000000..6ea8228cf8
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/npy_math.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/npy_math.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/npy_math.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/npy_no_deprecated_api.h b/contrib/python/numpy/include/numpy/core/include/numpy/npy_no_deprecated_api.h
new file mode 100644
index 0000000000..ac63bcbe7a
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/npy_no_deprecated_api.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/npy_no_deprecated_api.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/npy_no_deprecated_api.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/npy_os.h b/contrib/python/numpy/include/numpy/core/include/numpy/npy_os.h
new file mode 100644
index 0000000000..1c45279561
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/npy_os.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/npy_os.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/npy_os.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/numpyconfig.h b/contrib/python/numpy/include/numpy/core/include/numpy/numpyconfig.h
new file mode 100644
index 0000000000..9bd2989c67
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/numpyconfig.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/numpyconfig.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/numpyconfig.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/random/bitgen.h b/contrib/python/numpy/include/numpy/core/include/numpy/random/bitgen.h
new file mode 100644
index 0000000000..486a6231d1
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/random/bitgen.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/random/bitgen.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/include/numpy/random/bitgen.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/random/distributions.h b/contrib/python/numpy/include/numpy/core/include/numpy/random/distributions.h
new file mode 100644
index 0000000000..042e2f38a4
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/random/distributions.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/random/distributions.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/include/numpy/random/distributions.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/ufuncobject.h b/contrib/python/numpy/include/numpy/core/include/numpy/ufuncobject.h
new file mode 100644
index 0000000000..ea83c9c3d4
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/ufuncobject.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/ufuncobject.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/ufuncobject.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/include/numpy/utils.h b/contrib/python/numpy/include/numpy/core/include/numpy/utils.h
new file mode 100644
index 0000000000..0c263d1134
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/include/numpy/utils.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/include/numpy/utils.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/include/numpy/utils.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/_simd/_simd.dispatch.c b/contrib/python/numpy/include/numpy/core/src/_simd/_simd.dispatch.c
new file mode 100644
index 0000000000..3bdc80df9e
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/_simd/_simd.dispatch.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/_simd/_simd.dispatch.c>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/_simd/_simd.dispatch.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/array_assign.h b/contrib/python/numpy/include/numpy/core/src/common/array_assign.h
new file mode 100644
index 0000000000..fbaa47b2f5
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/array_assign.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/array_assign.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/array_assign.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/binop_override.h b/contrib/python/numpy/include/numpy/core/src/common/binop_override.h
new file mode 100644
index 0000000000..44b38dc605
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/binop_override.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/binop_override.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/binop_override.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/cblasfuncs.h b/contrib/python/numpy/include/numpy/core/src/common/cblasfuncs.h
new file mode 100644
index 0000000000..d761d4e161
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/cblasfuncs.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/cblasfuncs.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/cblasfuncs.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/dlpack/dlpack.h b/contrib/python/numpy/include/numpy/core/src/common/dlpack/dlpack.h
new file mode 100644
index 0000000000..c87cac25a3
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/dlpack/dlpack.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/dlpack/dlpack.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/common/dlpack/dlpack.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/get_attr_string.h b/contrib/python/numpy/include/numpy/core/src/common/get_attr_string.h
new file mode 100644
index 0000000000..72a22f4d6f
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/get_attr_string.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/get_attr_string.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/get_attr_string.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/lowlevel_strided_loops.h b/contrib/python/numpy/include/numpy/core/src/common/lowlevel_strided_loops.h
new file mode 100644
index 0000000000..0e655806a3
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/lowlevel_strided_loops.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/lowlevel_strided_loops.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/lowlevel_strided_loops.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/mem_overlap.h b/contrib/python/numpy/include/numpy/core/src/common/mem_overlap.h
new file mode 100644
index 0000000000..baa40adc2a
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/mem_overlap.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/mem_overlap.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/mem_overlap.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_argparse.h b/contrib/python/numpy/include/numpy/core/src/common/npy_argparse.h
new file mode 100644
index 0000000000..54cb368430
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_argparse.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_argparse.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/common/npy_argparse.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_binsearch.h b/contrib/python/numpy/include/numpy/core/src/common/npy_binsearch.h
new file mode 100644
index 0000000000..79b1373ef1
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_binsearch.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_binsearch.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/npy_binsearch.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_cblas.h b/contrib/python/numpy/include/numpy/core/src/common/npy_cblas.h
new file mode 100644
index 0000000000..72330ff858
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_cblas.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_cblas.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/npy_cblas.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_config.h b/contrib/python/numpy/include/numpy/core/src/common/npy_config.h
new file mode 100644
index 0000000000..e7db935e16
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_config.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_config.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/npy_config.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_cpu_dispatch.h b/contrib/python/numpy/include/numpy/core/src/common/npy_cpu_dispatch.h
new file mode 100644
index 0000000000..131612e9cd
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_cpu_dispatch.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_cpu_dispatch.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/common/npy_cpu_dispatch.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_cpu_features.h b/contrib/python/numpy/include/numpy/core/src/common/npy_cpu_features.h
new file mode 100644
index 0000000000..798a44fcbe
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_cpu_features.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_cpu_features.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/common/npy_cpu_features.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_ctypes.h b/contrib/python/numpy/include/numpy/core/src/common/npy_ctypes.h
new file mode 100644
index 0000000000..ddf0b6e828
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_ctypes.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_ctypes.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/npy_ctypes.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_dlpack.h b/contrib/python/numpy/include/numpy/core/src/common/npy_dlpack.h
new file mode 100644
index 0000000000..c0a4e55c13
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_dlpack.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_dlpack.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/common/npy_dlpack.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_extint128.h b/contrib/python/numpy/include/numpy/core/src/common/npy_extint128.h
new file mode 100644
index 0000000000..5bd799aa14
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_extint128.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_extint128.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/npy_extint128.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_fpmath.h b/contrib/python/numpy/include/numpy/core/src/common/npy_fpmath.h
new file mode 100644
index 0000000000..71880df0de
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_fpmath.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_fpmath.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/npy_fpmath.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_hashtable.h b/contrib/python/numpy/include/numpy/core/src/common/npy_hashtable.h
new file mode 100644
index 0000000000..f4ede21990
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_hashtable.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_hashtable.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/common/npy_hashtable.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_import.h b/contrib/python/numpy/include/numpy/core/src/common/npy_import.h
new file mode 100644
index 0000000000..49c689885a
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_import.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_import.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/npy_import.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_longdouble.h b/contrib/python/numpy/include/numpy/core/src/common/npy_longdouble.h
new file mode 100644
index 0000000000..ba355dd3a3
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_longdouble.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_longdouble.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/npy_longdouble.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_partition.h b/contrib/python/numpy/include/numpy/core/src/common/npy_partition.h
new file mode 100644
index 0000000000..0af3662368
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_partition.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_partition.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/npy_partition.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_pycompat.h b/contrib/python/numpy/include/numpy/core/src/common/npy_pycompat.h
new file mode 100644
index 0000000000..eb04d24bc7
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_pycompat.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_pycompat.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/npy_pycompat.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_sort.h b/contrib/python/numpy/include/numpy/core/src/common/npy_sort.h
new file mode 100644
index 0000000000..55f33a58df
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_sort.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_sort.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/npy_sort.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/npy_svml.h b/contrib/python/numpy/include/numpy/core/src/common/npy_svml.h
new file mode 100644
index 0000000000..d8f168903b
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/npy_svml.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/npy_svml.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/common/npy_svml.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/numpy_tag.h b/contrib/python/numpy/include/numpy/core/src/common/numpy_tag.h
new file mode 100644
index 0000000000..7a8d067bfb
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/numpy_tag.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/numpy_tag.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/common/numpy_tag.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/numpyos.h b/contrib/python/numpy/include/numpy/core/src/common/numpyos.h
new file mode 100644
index 0000000000..3cf161fd56
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/numpyos.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/numpyos.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/numpyos.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/templ_common.h b/contrib/python/numpy/include/numpy/core/src/common/templ_common.h
new file mode 100644
index 0000000000..002bf19325
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/templ_common.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/templ_common.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/templ_common.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/ucsnarrow.h b/contrib/python/numpy/include/numpy/core/src/common/ucsnarrow.h
new file mode 100644
index 0000000000..ef56bab1cd
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/ucsnarrow.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/ucsnarrow.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/ucsnarrow.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/ufunc_override.h b/contrib/python/numpy/include/numpy/core/src/common/ufunc_override.h
new file mode 100644
index 0000000000..66e828a7ec
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/ufunc_override.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/ufunc_override.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/ufunc_override.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/common/umathmodule.h b/contrib/python/numpy/include/numpy/core/src/common/umathmodule.h
new file mode 100644
index 0000000000..13452fa7d3
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/common/umathmodule.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/common/umathmodule.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/common/umathmodule.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/abstractdtypes.h b/contrib/python/numpy/include/numpy/core/src/multiarray/abstractdtypes.h
new file mode 100644
index 0000000000..6e8cf214b5
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/abstractdtypes.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/abstractdtypes.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/abstractdtypes.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/alloc.h b/contrib/python/numpy/include/numpy/core/src/multiarray/alloc.h
new file mode 100644
index 0000000000..6183a88449
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/alloc.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/alloc.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/multiarray/alloc.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/argfunc.dispatch.c b/contrib/python/numpy/include/numpy/core/src/multiarray/argfunc.dispatch.c
new file mode 100644
index 0000000000..b36d88d107
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/argfunc.dispatch.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/argfunc.dispatch.c>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/argfunc.dispatch.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/array_coercion.h b/contrib/python/numpy/include/numpy/core/src/multiarray/array_coercion.h
new file mode 100644
index 0000000000..79f0c17c6a
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/array_coercion.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/array_coercion.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/array_coercion.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/array_method.h b/contrib/python/numpy/include/numpy/core/src/multiarray/array_method.h
new file mode 100644
index 0000000000..2508ed6237
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/array_method.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/array_method.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/array_method.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/arrayfunction_override.h b/contrib/python/numpy/include/numpy/core/src/multiarray/arrayfunction_override.h
new file mode 100644
index 0000000000..c0253d699e
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/arrayfunction_override.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/arrayfunction_override.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/multiarray/arrayfunction_override.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/arraytypes.h b/contrib/python/numpy/include/numpy/core/src/multiarray/arraytypes.h
new file mode 100644
index 0000000000..490cbb1514
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/arraytypes.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/arraytypes.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/multiarray/arraytypes.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/can_cast_table.h b/contrib/python/numpy/include/numpy/core/src/multiarray/can_cast_table.h
new file mode 100644
index 0000000000..a9429c758f
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/can_cast_table.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/can_cast_table.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/can_cast_table.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/common.h b/contrib/python/numpy/include/numpy/core/src/multiarray/common.h
new file mode 100644
index 0000000000..eb8f0a4c0c
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/common.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/common.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/multiarray/common.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/common_dtype.h b/contrib/python/numpy/include/numpy/core/src/multiarray/common_dtype.h
new file mode 100644
index 0000000000..5473aa2473
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/common_dtype.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/common_dtype.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/common_dtype.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/conversion_utils.h b/contrib/python/numpy/include/numpy/core/src/multiarray/conversion_utils.h
new file mode 100644
index 0000000000..00fed4f2e0
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/conversion_utils.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/conversion_utils.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/multiarray/conversion_utils.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/convert_datatype.h b/contrib/python/numpy/include/numpy/core/src/multiarray/convert_datatype.h
new file mode 100644
index 0000000000..d0a42b137d
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/convert_datatype.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/convert_datatype.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/multiarray/convert_datatype.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/ctors.h b/contrib/python/numpy/include/numpy/core/src/multiarray/ctors.h
new file mode 100644
index 0000000000..03d5fc237c
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/ctors.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/ctors.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/multiarray/ctors.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/dtype_transfer.h b/contrib/python/numpy/include/numpy/core/src/multiarray/dtype_transfer.h
new file mode 100644
index 0000000000..4c7132117d
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/dtype_transfer.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/dtype_transfer.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/dtype_transfer.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/dtypemeta.h b/contrib/python/numpy/include/numpy/core/src/multiarray/dtypemeta.h
new file mode 100644
index 0000000000..5dd22f6067
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/dtypemeta.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/dtypemeta.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/dtypemeta.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/nditer_impl.h b/contrib/python/numpy/include/numpy/core/src/multiarray/nditer_impl.h
new file mode 100644
index 0000000000..7ff6faf28f
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/nditer_impl.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/nditer_impl.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/multiarray/nditer_impl.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/number.h b/contrib/python/numpy/include/numpy/core/src/multiarray/number.h
new file mode 100644
index 0000000000..6142d7b6d4
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/number.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/number.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/multiarray/number.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/scalartypes.h b/contrib/python/numpy/include/numpy/core/src/multiarray/scalartypes.h
new file mode 100644
index 0000000000..78843b19cd
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/scalartypes.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/scalartypes.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/multiarray/scalartypes.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/shape.h b/contrib/python/numpy/include/numpy/core/src/multiarray/shape.h
new file mode 100644
index 0000000000..ccd4fa7b8b
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/shape.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/shape.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/multiarray/shape.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/conversions.h b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/conversions.h
new file mode 100644
index 0000000000..87592670ff
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/conversions.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/textreading/conversions.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/textreading/conversions.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/field_types.h b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/field_types.h
new file mode 100644
index 0000000000..80a583ffda
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/field_types.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/textreading/field_types.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/textreading/field_types.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/growth.h b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/growth.h
new file mode 100644
index 0000000000..ed3be321ec
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/growth.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/textreading/growth.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/textreading/growth.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/parser_config.h b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/parser_config.h
new file mode 100644
index 0000000000..c1138c2c2f
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/parser_config.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/textreading/parser_config.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/textreading/parser_config.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/rows.h b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/rows.h
new file mode 100644
index 0000000000..c10caf3f97
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/rows.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/textreading/rows.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/textreading/rows.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/str_to_int.h b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/str_to_int.h
new file mode 100644
index 0000000000..3d19547f61
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/str_to_int.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/textreading/str_to_int.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/textreading/str_to_int.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/stream.h b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/stream.h
new file mode 100644
index 0000000000..881ea2eb14
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/stream.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/textreading/stream.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/textreading/stream.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/stream_pyobject.h b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/stream_pyobject.h
new file mode 100644
index 0000000000..3e552eec35
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/stream_pyobject.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/textreading/stream_pyobject.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/textreading/stream_pyobject.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/tokenize.h b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/tokenize.h
new file mode 100644
index 0000000000..5e0b88d02b
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/multiarray/textreading/tokenize.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/multiarray/textreading/tokenize.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/multiarray/textreading/tokenize.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/npymath/npy_math_internal.h b/contrib/python/numpy/include/numpy/core/src/npymath/npy_math_internal.h
new file mode 100644
index 0000000000..d237103784
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/npymath/npy_math_internal.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/npymath/npy_math_internal.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/npymath/npy_math_internal.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/npysort/x86-qsort.dispatch.cpp b/contrib/python/numpy/include/numpy/core/src/npysort/x86-qsort.dispatch.cpp
new file mode 100644
index 0000000000..bf871ae694
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/npysort/x86-qsort.dispatch.cpp
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/npysort/x86-qsort.dispatch.cpp>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/npysort/x86-qsort.dispatch.cpp>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/_umath_tests.dispatch.c b/contrib/python/numpy/include/numpy/core/src/umath/_umath_tests.dispatch.c
new file mode 100644
index 0000000000..9ab0560fa3
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/_umath_tests.dispatch.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/_umath_tests.dispatch.c>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/_umath_tests.dispatch.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/clip.h b/contrib/python/numpy/include/numpy/core/src/umath/clip.h
new file mode 100644
index 0000000000..084179305a
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/clip.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/clip.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/clip.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/funcs.inc b/contrib/python/numpy/include/numpy/core/src/umath/funcs.inc
new file mode 100644
index 0000000000..14171b0f73
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/funcs.inc
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/funcs.inc>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/umath/funcs.inc>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops.h b/contrib/python/numpy/include/numpy/core/src/umath/loops.h
new file mode 100644
index 0000000000..e51abf3bb0
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/umath/loops.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_arithm_fp.dispatch.c b/contrib/python/numpy/include/numpy/core/src/umath/loops_arithm_fp.dispatch.c
new file mode 100644
index 0000000000..18c63002c4
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_arithm_fp.dispatch.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_arithm_fp.dispatch.c>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_arithm_fp.dispatch.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_arithm_fp.dispatch.h b/contrib/python/numpy/include/numpy/core/src/umath/loops_arithm_fp.dispatch.h
new file mode 100644
index 0000000000..e71de51d05
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_arithm_fp.dispatch.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_arithm_fp.dispatch.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_arithm_fp.dispatch.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_arithmetic.dispatch.c b/contrib/python/numpy/include/numpy/core/src/umath/loops_arithmetic.dispatch.c
new file mode 100644
index 0000000000..33f425e557
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_arithmetic.dispatch.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_arithmetic.dispatch.c>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_arithmetic.dispatch.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_arithmetic.dispatch.h b/contrib/python/numpy/include/numpy/core/src/umath/loops_arithmetic.dispatch.h
new file mode 100644
index 0000000000..95be3dcf77
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_arithmetic.dispatch.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_arithmetic.dispatch.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_arithmetic.dispatch.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_comparison.dispatch.c b/contrib/python/numpy/include/numpy/core/src/umath/loops_comparison.dispatch.c
new file mode 100644
index 0000000000..15dcaa7be8
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_comparison.dispatch.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_comparison.dispatch.c>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_comparison.dispatch.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_comparison.dispatch.h b/contrib/python/numpy/include/numpy/core/src/umath/loops_comparison.dispatch.h
new file mode 100644
index 0000000000..c8b52bc063
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_comparison.dispatch.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_comparison.dispatch.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_comparison.dispatch.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_exponent_log.dispatch.c b/contrib/python/numpy/include/numpy/core/src/umath/loops_exponent_log.dispatch.c
new file mode 100644
index 0000000000..fb783e199b
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_exponent_log.dispatch.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_exponent_log.dispatch.c>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_exponent_log.dispatch.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_exponent_log.dispatch.h b/contrib/python/numpy/include/numpy/core/src/umath/loops_exponent_log.dispatch.h
new file mode 100644
index 0000000000..6c08ae7a33
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_exponent_log.dispatch.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_exponent_log.dispatch.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_exponent_log.dispatch.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_hyperbolic.dispatch.c b/contrib/python/numpy/include/numpy/core/src/umath/loops_hyperbolic.dispatch.c
new file mode 100644
index 0000000000..98302daf70
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_hyperbolic.dispatch.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_hyperbolic.dispatch.c>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_hyperbolic.dispatch.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_hyperbolic.dispatch.h b/contrib/python/numpy/include/numpy/core/src/umath/loops_hyperbolic.dispatch.h
new file mode 100644
index 0000000000..c94b255e36
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_hyperbolic.dispatch.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_hyperbolic.dispatch.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_hyperbolic.dispatch.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_minmax.dispatch.c b/contrib/python/numpy/include/numpy/core/src/umath/loops_minmax.dispatch.c
new file mode 100644
index 0000000000..256928f19a
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_minmax.dispatch.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_minmax.dispatch.c>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_minmax.dispatch.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_minmax.dispatch.h b/contrib/python/numpy/include/numpy/core/src/umath/loops_minmax.dispatch.h
new file mode 100644
index 0000000000..7e39c51047
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_minmax.dispatch.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_minmax.dispatch.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_minmax.dispatch.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_modulo.dispatch.h b/contrib/python/numpy/include/numpy/core/src/umath/loops_modulo.dispatch.h
new file mode 100644
index 0000000000..57f5a3bff1
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_modulo.dispatch.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_modulo.dispatch.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_modulo.dispatch.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_trigonometric.dispatch.c b/contrib/python/numpy/include/numpy/core/src/umath/loops_trigonometric.dispatch.c
new file mode 100644
index 0000000000..fe0c374501
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_trigonometric.dispatch.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_trigonometric.dispatch.c>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_trigonometric.dispatch.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_trigonometric.dispatch.h b/contrib/python/numpy/include/numpy/core/src/umath/loops_trigonometric.dispatch.h
new file mode 100644
index 0000000000..f65ce6b3d1
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_trigonometric.dispatch.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_trigonometric.dispatch.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_trigonometric.dispatch.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_umath_fp.dispatch.c b/contrib/python/numpy/include/numpy/core/src/umath/loops_umath_fp.dispatch.c
new file mode 100644
index 0000000000..7f64b07760
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_umath_fp.dispatch.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_umath_fp.dispatch.c>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_umath_fp.dispatch.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_umath_fp.dispatch.h b/contrib/python/numpy/include/numpy/core/src/umath/loops_umath_fp.dispatch.h
new file mode 100644
index 0000000000..c3d268ac46
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_umath_fp.dispatch.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_umath_fp.dispatch.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_umath_fp.dispatch.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_unary_fp.dispatch.c b/contrib/python/numpy/include/numpy/core/src/umath/loops_unary_fp.dispatch.c
new file mode 100644
index 0000000000..72e24e1e23
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_unary_fp.dispatch.c
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_unary_fp.dispatch.c>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_unary_fp.dispatch.c>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/loops_unary_fp.dispatch.h b/contrib/python/numpy/include/numpy/core/src/umath/loops_unary_fp.dispatch.h
new file mode 100644
index 0000000000..9dc400ff85
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/loops_unary_fp.dispatch.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/loops_unary_fp.dispatch.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/core/src/umath/loops_unary_fp.dispatch.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/matmul.h b/contrib/python/numpy/include/numpy/core/src/umath/matmul.h
new file mode 100644
index 0000000000..b83fd68f0b
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/matmul.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/matmul.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/umath/matmul.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/ufunc_object.h b/contrib/python/numpy/include/numpy/core/src/umath/ufunc_object.h
new file mode 100644
index 0000000000..7d20ea2fcf
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/ufunc_object.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/ufunc_object.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/umath/ufunc_object.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/core/src/umath/ufunc_type_resolution.h b/contrib/python/numpy/include/numpy/core/src/umath/ufunc_type_resolution.h
new file mode 100644
index 0000000000..8db551543d
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/core/src/umath/ufunc_type_resolution.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/core/src/umath/ufunc_type_resolution.h>
+#else
+#include <contrib/python/numpy/py2/numpy/core/src/umath/ufunc_type_resolution.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/distutils/include/npy_cpu_dispatch_config.h b/contrib/python/numpy/include/numpy/distutils/include/npy_cpu_dispatch_config.h
new file mode 100644
index 0000000000..cee2efe65b
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/distutils/include/npy_cpu_dispatch_config.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/distutils/include/npy_cpu_dispatch_config.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/distutils/include/npy_cpu_dispatch_config.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/random/include/aligned_malloc.h b/contrib/python/numpy/include/numpy/random/include/aligned_malloc.h
new file mode 100644
index 0000000000..fe2039fcc4
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/random/include/aligned_malloc.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/random/include/aligned_malloc.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/random/include/aligned_malloc.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/random/include/legacy-distributions.h b/contrib/python/numpy/include/numpy/random/include/legacy-distributions.h
new file mode 100644
index 0000000000..ad71ca75ea
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/random/include/legacy-distributions.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/random/include/legacy-distributions.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/random/include/legacy-distributions.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/random/mtrand/distributions.h b/contrib/python/numpy/include/numpy/random/mtrand/distributions.h
new file mode 100644
index 0000000000..e9b9782b4d
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/random/mtrand/distributions.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#error #include <contrib/python/numpy/py3/numpy/random/mtrand/distributions.h>
+#else
+#include <contrib/python/numpy/py2/numpy/random/mtrand/distributions.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/random/mtrand/initarray.h b/contrib/python/numpy/include/numpy/random/mtrand/initarray.h
new file mode 100644
index 0000000000..9180ef0563
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/random/mtrand/initarray.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#error #include <contrib/python/numpy/py3/numpy/random/mtrand/initarray.h>
+#else
+#include <contrib/python/numpy/py2/numpy/random/mtrand/initarray.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/random/mtrand/mtrand_py_helper.h b/contrib/python/numpy/include/numpy/random/mtrand/mtrand_py_helper.h
new file mode 100644
index 0000000000..cdc382d05e
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/random/mtrand/mtrand_py_helper.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#error #include <contrib/python/numpy/py3/numpy/random/mtrand/mtrand_py_helper.h>
+#else
+#include <contrib/python/numpy/py2/numpy/random/mtrand/mtrand_py_helper.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/random/mtrand/randomkit.h b/contrib/python/numpy/include/numpy/random/mtrand/randomkit.h
new file mode 100644
index 0000000000..44ea109359
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/random/mtrand/randomkit.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#error #include <contrib/python/numpy/py3/numpy/random/mtrand/randomkit.h>
+#else
+#include <contrib/python/numpy/py2/numpy/random/mtrand/randomkit.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/random/src/mt19937/mt19937.h b/contrib/python/numpy/include/numpy/random/src/mt19937/mt19937.h
new file mode 100644
index 0000000000..2759722a8b
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/random/src/mt19937/mt19937.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/random/src/mt19937/mt19937.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/random/src/mt19937/mt19937.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/random/src/pcg64/pcg64.h b/contrib/python/numpy/include/numpy/random/src/pcg64/pcg64.h
new file mode 100644
index 0000000000..bcf3a9fc19
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/random/src/pcg64/pcg64.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/random/src/pcg64/pcg64.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/random/src/pcg64/pcg64.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/random/src/philox/philox.h b/contrib/python/numpy/include/numpy/random/src/philox/philox.h
new file mode 100644
index 0000000000..dc5294297d
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/random/src/philox/philox.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/random/src/philox/philox.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/random/src/philox/philox.h>
+#endif
diff --git a/contrib/python/numpy/include/numpy/random/src/sfc64/sfc64.h b/contrib/python/numpy/include/numpy/random/src/sfc64/sfc64.h
new file mode 100644
index 0000000000..30e3fff1fc
--- /dev/null
+++ b/contrib/python/numpy/include/numpy/random/src/sfc64/sfc64.h
@@ -0,0 +1,5 @@
+#ifdef USE_PYTHON3
+#include <contrib/python/numpy/py3/numpy/random/src/sfc64/sfc64.h>
+#else
+#error #include <contrib/python/numpy/py2/numpy/random/src/sfc64/sfc64.h>
+#endif