summaryrefslogtreecommitdiffstats
path: root/contrib/libs/python
diff options
context:
space:
mode:
authorrobot-piglet <[email protected]>2026-06-18 14:08:41 +0300
committerrobot-piglet <[email protected]>2026-06-18 14:33:28 +0300
commitd159d33e46bf8a6c1281f50986d5eada9c70b154 (patch)
tree50b44fae8242063e113c2602ae16cdc0842dbc0f /contrib/libs/python
parent3f208fe24f997eeeb5adc4cc6f29d66aff2fe01c (diff)
Intermediate changes
commit_hash:3d2219c4308434ada647e6d8358655f5898d56b4
Diffstat (limited to 'contrib/libs/python')
-rw-r--r--contrib/libs/python/Include/internal/pycore_abstract.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_asdl.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_ast.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_ast_state.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_atexit.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_backoff.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_bitutils.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_blocks_output_buffer.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_brc.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_bytes_methods.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_bytesobject.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_call.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_capsule.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_cell.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_ceval.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_ceval_state.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_code.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_codecs.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_compile.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_complexobject.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_condvar.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_context.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_critical_section.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_crossinterp.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_descrobject.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_dict.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_dict_state.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_dtoa.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_emscripten_signal.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_emscripten_trampoline.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_exceptions.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_faulthandler.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_fileutils.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_fileutils_windows.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_floatobject.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_flowgraph.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_format.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_freelist.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_function.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_gc.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_getopt.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_gil.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_global_objects.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_global_objects_fini_generated.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_global_strings.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_hamt.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_hashtable.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_identifier.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_import.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_importdl.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_initconfig.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_instruction_sequence.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_instruments.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_interp.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_intrinsics.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_jit.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_list.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_llist.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_lock.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_long.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_memoryobject.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_mimalloc.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_modsupport.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_moduleobject.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_namespace.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_object.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_object_alloc.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_object_stack.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_object_state.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_obmalloc.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_obmalloc_init.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_opcode_metadata.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_opcode_utils.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_optimizer.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_parking_lot.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_parser.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_pathconfig.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_pyarena.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_pyatomic_ft_wrappers.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_pybuffer.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_pyhash.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_pylifecycle.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_pymath.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_pymem.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_pymem_init.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_pystate.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_pystats.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_pythonrun.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_pythread.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_qsbr.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_range.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_runtime.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_runtime_init.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_runtime_init_generated.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_semaphore.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_signal.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_sliceobject.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_stackref.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_strhex.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_structseq.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_symtable.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_sysmodule.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_time.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_token.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_traceback.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_tracemalloc.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_tstate.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_tuple.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_typeobject.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_typevarobject.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_ucnhash.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_unicodeobject.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_unicodeobject_generated.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_unionobject.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_uop_ids.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_uop_metadata.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_warnings.h7
-rw-r--r--contrib/libs/python/Include/internal/pycore_weakref.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_abstract.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_asdl.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_ast.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_ast_state.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_atexit.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_atomic.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_atomic_funcs.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_bitutils.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_blocks_output_buffer.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_bytes_methods.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_bytesobject.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_call.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_ceval.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_ceval_state.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_code.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_compile.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_condvar.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_context.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_descrobject.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_dict.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_dict_state.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_dtoa.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_emscripten_signal.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_exceptions.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_faulthandler.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_fileutils.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_fileutils_windows.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_floatobject.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_flowgraph.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_format.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_function.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_gc.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_getopt.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_gil.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_global_objects.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_global_objects_fini_generated.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_global_strings.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_hamt.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_hashtable.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_import.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_initconfig.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_instruments.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_interp.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_intrinsics.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_list.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_long.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_memoryobject.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_moduleobject.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_namespace.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_object.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_object_state.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_obmalloc.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_obmalloc_init.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_opcode.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_opcode_utils.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_parser.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_pathconfig.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_pyarena.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_pyhash.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_pylifecycle.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_pymath.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_pymem.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_pymem_init.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_pystate.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_pythread.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_range.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_runtime.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_runtime_init.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_runtime_init_generated.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_signal.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_sliceobject.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_strhex.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_structseq.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_symtable.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_sysmodule.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_time.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_token.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_traceback.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_tracemalloc.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_tuple.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_typeobject.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_typevarobject.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_ucnhash.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_unicodeobject.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_unicodeobject_generated.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_unionobject.h7
-rw-r--r--contrib/libs/python/Include_prev/internal/pycore_warnings.h7
-rwxr-xr-xcontrib/libs/python/gen_includes.py11
206 files changed, 1435 insertions, 11 deletions
diff --git a/contrib/libs/python/Include/internal/pycore_abstract.h b/contrib/libs/python/Include/internal/pycore_abstract.h
new file mode 100644
index 00000000000..b473be3d03c
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_abstract.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_abstract.h>
+#else
+#error "No <internal/pycore_abstract.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_asdl.h b/contrib/libs/python/Include/internal/pycore_asdl.h
new file mode 100644
index 00000000000..22acff67daa
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_asdl.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_asdl.h>
+#else
+#error "No <internal/pycore_asdl.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_ast.h b/contrib/libs/python/Include/internal/pycore_ast.h
new file mode 100644
index 00000000000..22ce103132c
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_ast.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_ast.h>
+#else
+#error "No <internal/pycore_ast.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_ast_state.h b/contrib/libs/python/Include/internal/pycore_ast_state.h
new file mode 100644
index 00000000000..ba403924df4
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_ast_state.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_ast_state.h>
+#else
+#error "No <internal/pycore_ast_state.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_atexit.h b/contrib/libs/python/Include/internal/pycore_atexit.h
new file mode 100644
index 00000000000..e7c701c29db
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_atexit.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_atexit.h>
+#else
+#error "No <internal/pycore_atexit.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_backoff.h b/contrib/libs/python/Include/internal/pycore_backoff.h
new file mode 100644
index 00000000000..c5ee6b141fd
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_backoff.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_backoff.h>
+#else
+#error "No <internal/pycore_backoff.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_bitutils.h b/contrib/libs/python/Include/internal/pycore_bitutils.h
new file mode 100644
index 00000000000..4a91fbf7346
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_bitutils.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_bitutils.h>
+#else
+#error "No <internal/pycore_bitutils.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_blocks_output_buffer.h b/contrib/libs/python/Include/internal/pycore_blocks_output_buffer.h
new file mode 100644
index 00000000000..55722b395ef
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_blocks_output_buffer.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_blocks_output_buffer.h>
+#else
+#error "No <internal/pycore_blocks_output_buffer.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_brc.h b/contrib/libs/python/Include/internal/pycore_brc.h
new file mode 100644
index 00000000000..8ba01ba9848
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_brc.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_brc.h>
+#else
+#error "No <internal/pycore_brc.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_bytes_methods.h b/contrib/libs/python/Include/internal/pycore_bytes_methods.h
new file mode 100644
index 00000000000..e53809d34b0
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_bytes_methods.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_bytes_methods.h>
+#else
+#error "No <internal/pycore_bytes_methods.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_bytesobject.h b/contrib/libs/python/Include/internal/pycore_bytesobject.h
new file mode 100644
index 00000000000..d312a7fc1e4
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_bytesobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_bytesobject.h>
+#else
+#error "No <internal/pycore_bytesobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_call.h b/contrib/libs/python/Include/internal/pycore_call.h
new file mode 100644
index 00000000000..09da15e25c2
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_call.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_call.h>
+#else
+#error "No <internal/pycore_call.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_capsule.h b/contrib/libs/python/Include/internal/pycore_capsule.h
new file mode 100644
index 00000000000..30671ad3a01
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_capsule.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_capsule.h>
+#else
+#error "No <internal/pycore_capsule.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_cell.h b/contrib/libs/python/Include/internal/pycore_cell.h
new file mode 100644
index 00000000000..a8295bb86f8
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_cell.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_cell.h>
+#else
+#error "No <internal/pycore_cell.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_ceval.h b/contrib/libs/python/Include/internal/pycore_ceval.h
new file mode 100644
index 00000000000..1b09f5dfa3a
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_ceval.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_ceval.h>
+#else
+#error "No <internal/pycore_ceval.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_ceval_state.h b/contrib/libs/python/Include/internal/pycore_ceval_state.h
new file mode 100644
index 00000000000..c70c1ce7129
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_ceval_state.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_ceval_state.h>
+#else
+#error "No <internal/pycore_ceval_state.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_code.h b/contrib/libs/python/Include/internal/pycore_code.h
new file mode 100644
index 00000000000..5caaff1f850
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_code.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_code.h>
+#else
+#error "No <internal/pycore_code.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_codecs.h b/contrib/libs/python/Include/internal/pycore_codecs.h
new file mode 100644
index 00000000000..f2b07b4cdec
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_codecs.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_codecs.h>
+#else
+#error "No <internal/pycore_codecs.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_compile.h b/contrib/libs/python/Include/internal/pycore_compile.h
new file mode 100644
index 00000000000..66321be3b8d
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_compile.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_compile.h>
+#else
+#error "No <internal/pycore_compile.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_complexobject.h b/contrib/libs/python/Include/internal/pycore_complexobject.h
new file mode 100644
index 00000000000..516a6a448f5
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_complexobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_complexobject.h>
+#else
+#error "No <internal/pycore_complexobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_condvar.h b/contrib/libs/python/Include/internal/pycore_condvar.h
new file mode 100644
index 00000000000..abc49f46243
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_condvar.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_condvar.h>
+#else
+#error "No <internal/pycore_condvar.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_context.h b/contrib/libs/python/Include/internal/pycore_context.h
new file mode 100644
index 00000000000..ae61f11a900
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_context.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_context.h>
+#else
+#error "No <internal/pycore_context.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_critical_section.h b/contrib/libs/python/Include/internal/pycore_critical_section.h
new file mode 100644
index 00000000000..606202a690f
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_critical_section.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_critical_section.h>
+#else
+#error "No <internal/pycore_critical_section.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_crossinterp.h b/contrib/libs/python/Include/internal/pycore_crossinterp.h
new file mode 100644
index 00000000000..bb950a7e14f
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_crossinterp.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_crossinterp.h>
+#else
+#error "No <internal/pycore_crossinterp.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_descrobject.h b/contrib/libs/python/Include/internal/pycore_descrobject.h
new file mode 100644
index 00000000000..ee0df71faec
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_descrobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_descrobject.h>
+#else
+#error "No <internal/pycore_descrobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_dict.h b/contrib/libs/python/Include/internal/pycore_dict.h
new file mode 100644
index 00000000000..e48fbeaddb1
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_dict.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_dict.h>
+#else
+#error "No <internal/pycore_dict.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_dict_state.h b/contrib/libs/python/Include/internal/pycore_dict_state.h
new file mode 100644
index 00000000000..1401c6f0d6f
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_dict_state.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_dict_state.h>
+#else
+#error "No <internal/pycore_dict_state.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_dtoa.h b/contrib/libs/python/Include/internal/pycore_dtoa.h
new file mode 100644
index 00000000000..ef4200c76cf
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_dtoa.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_dtoa.h>
+#else
+#error "No <internal/pycore_dtoa.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_emscripten_signal.h b/contrib/libs/python/Include/internal/pycore_emscripten_signal.h
new file mode 100644
index 00000000000..f146f5c3271
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_emscripten_signal.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_emscripten_signal.h>
+#else
+#error "No <internal/pycore_emscripten_signal.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_emscripten_trampoline.h b/contrib/libs/python/Include/internal/pycore_emscripten_trampoline.h
new file mode 100644
index 00000000000..6e93d32061b
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_emscripten_trampoline.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_emscripten_trampoline.h>
+#else
+#error "No <internal/pycore_emscripten_trampoline.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_exceptions.h b/contrib/libs/python/Include/internal/pycore_exceptions.h
new file mode 100644
index 00000000000..f398f169980
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_exceptions.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_exceptions.h>
+#else
+#error "No <internal/pycore_exceptions.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_faulthandler.h b/contrib/libs/python/Include/internal/pycore_faulthandler.h
new file mode 100644
index 00000000000..3c6a76318c4
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_faulthandler.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_faulthandler.h>
+#else
+#error "No <internal/pycore_faulthandler.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_fileutils.h b/contrib/libs/python/Include/internal/pycore_fileutils.h
new file mode 100644
index 00000000000..4f5e4f2a912
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_fileutils.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_fileutils.h>
+#else
+#error "No <internal/pycore_fileutils.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_fileutils_windows.h b/contrib/libs/python/Include/internal/pycore_fileutils_windows.h
new file mode 100644
index 00000000000..38f5cbd40fa
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_fileutils_windows.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_fileutils_windows.h>
+#else
+#error "No <internal/pycore_fileutils_windows.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_floatobject.h b/contrib/libs/python/Include/internal/pycore_floatobject.h
new file mode 100644
index 00000000000..ce83aaa0474
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_floatobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_floatobject.h>
+#else
+#error "No <internal/pycore_floatobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_flowgraph.h b/contrib/libs/python/Include/internal/pycore_flowgraph.h
new file mode 100644
index 00000000000..8754efa5115
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_flowgraph.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_flowgraph.h>
+#else
+#error "No <internal/pycore_flowgraph.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_format.h b/contrib/libs/python/Include/internal/pycore_format.h
new file mode 100644
index 00000000000..fd919ecbbca
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_format.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_format.h>
+#else
+#error "No <internal/pycore_format.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_freelist.h b/contrib/libs/python/Include/internal/pycore_freelist.h
new file mode 100644
index 00000000000..672c17c1219
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_freelist.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_freelist.h>
+#else
+#error "No <internal/pycore_freelist.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_function.h b/contrib/libs/python/Include/internal/pycore_function.h
new file mode 100644
index 00000000000..731d43ce44a
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_function.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_function.h>
+#else
+#error "No <internal/pycore_function.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_gc.h b/contrib/libs/python/Include/internal/pycore_gc.h
new file mode 100644
index 00000000000..f5913bb5305
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_gc.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_gc.h>
+#else
+#error "No <internal/pycore_gc.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_getopt.h b/contrib/libs/python/Include/internal/pycore_getopt.h
new file mode 100644
index 00000000000..5959616cbb8
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_getopt.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_getopt.h>
+#else
+#error "No <internal/pycore_getopt.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_gil.h b/contrib/libs/python/Include/internal/pycore_gil.h
new file mode 100644
index 00000000000..451ae3bdd32
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_gil.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_gil.h>
+#else
+#error "No <internal/pycore_gil.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_global_objects.h b/contrib/libs/python/Include/internal/pycore_global_objects.h
new file mode 100644
index 00000000000..bd8317d7ca6
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_global_objects.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_global_objects.h>
+#else
+#error "No <internal/pycore_global_objects.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_global_objects_fini_generated.h b/contrib/libs/python/Include/internal/pycore_global_objects_fini_generated.h
new file mode 100644
index 00000000000..c7babc51eef
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_global_objects_fini_generated.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_global_objects_fini_generated.h>
+#else
+#error "No <internal/pycore_global_objects_fini_generated.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_global_strings.h b/contrib/libs/python/Include/internal/pycore_global_strings.h
new file mode 100644
index 00000000000..2e0cbef9c62
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_global_strings.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_global_strings.h>
+#else
+#error "No <internal/pycore_global_strings.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_hamt.h b/contrib/libs/python/Include/internal/pycore_hamt.h
new file mode 100644
index 00000000000..0c951a53385
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_hamt.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_hamt.h>
+#else
+#error "No <internal/pycore_hamt.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_hashtable.h b/contrib/libs/python/Include/internal/pycore_hashtable.h
new file mode 100644
index 00000000000..bdac862fc97
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_hashtable.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_hashtable.h>
+#else
+#error "No <internal/pycore_hashtable.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_identifier.h b/contrib/libs/python/Include/internal/pycore_identifier.h
new file mode 100644
index 00000000000..8d1edbe1962
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_identifier.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_identifier.h>
+#else
+#error "No <internal/pycore_identifier.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_import.h b/contrib/libs/python/Include/internal/pycore_import.h
new file mode 100644
index 00000000000..7b201ba2c6f
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_import.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_import.h>
+#else
+#error "No <internal/pycore_import.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_importdl.h b/contrib/libs/python/Include/internal/pycore_importdl.h
new file mode 100644
index 00000000000..f39b4c39d97
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_importdl.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_importdl.h>
+#else
+#error "No <internal/pycore_importdl.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_initconfig.h b/contrib/libs/python/Include/internal/pycore_initconfig.h
new file mode 100644
index 00000000000..d3833e24f23
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_initconfig.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_initconfig.h>
+#else
+#error "No <internal/pycore_initconfig.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_instruction_sequence.h b/contrib/libs/python/Include/internal/pycore_instruction_sequence.h
new file mode 100644
index 00000000000..3c0353b381d
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_instruction_sequence.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_instruction_sequence.h>
+#else
+#error "No <internal/pycore_instruction_sequence.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_instruments.h b/contrib/libs/python/Include/internal/pycore_instruments.h
new file mode 100644
index 00000000000..24073934b41
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_instruments.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_instruments.h>
+#else
+#error "No <internal/pycore_instruments.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_interp.h b/contrib/libs/python/Include/internal/pycore_interp.h
new file mode 100644
index 00000000000..3ec017e5a05
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_interp.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_interp.h>
+#else
+#error "No <internal/pycore_interp.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_intrinsics.h b/contrib/libs/python/Include/internal/pycore_intrinsics.h
new file mode 100644
index 00000000000..23682d4ad84
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_intrinsics.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_intrinsics.h>
+#else
+#error "No <internal/pycore_intrinsics.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_jit.h b/contrib/libs/python/Include/internal/pycore_jit.h
new file mode 100644
index 00000000000..dfafc93210b
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_jit.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_jit.h>
+#else
+#error "No <internal/pycore_jit.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_list.h b/contrib/libs/python/Include/internal/pycore_list.h
new file mode 100644
index 00000000000..01bf3410c0b
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_list.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_list.h>
+#else
+#error "No <internal/pycore_list.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_llist.h b/contrib/libs/python/Include/internal/pycore_llist.h
new file mode 100644
index 00000000000..c3f2a3e7839
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_llist.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_llist.h>
+#else
+#error "No <internal/pycore_llist.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_lock.h b/contrib/libs/python/Include/internal/pycore_lock.h
new file mode 100644
index 00000000000..39161a6ad4c
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_lock.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_lock.h>
+#else
+#error "No <internal/pycore_lock.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_long.h b/contrib/libs/python/Include/internal/pycore_long.h
new file mode 100644
index 00000000000..0a05ad53ed8
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_long.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_long.h>
+#else
+#error "No <internal/pycore_long.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_memoryobject.h b/contrib/libs/python/Include/internal/pycore_memoryobject.h
new file mode 100644
index 00000000000..507499f744d
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_memoryobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_memoryobject.h>
+#else
+#error "No <internal/pycore_memoryobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_mimalloc.h b/contrib/libs/python/Include/internal/pycore_mimalloc.h
new file mode 100644
index 00000000000..7d24709dac8
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_mimalloc.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_mimalloc.h>
+#else
+#error "No <internal/pycore_mimalloc.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_modsupport.h b/contrib/libs/python/Include/internal/pycore_modsupport.h
new file mode 100644
index 00000000000..28d311e114a
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_modsupport.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_modsupport.h>
+#else
+#error "No <internal/pycore_modsupport.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_moduleobject.h b/contrib/libs/python/Include/internal/pycore_moduleobject.h
new file mode 100644
index 00000000000..d9f4d727a0b
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_moduleobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_moduleobject.h>
+#else
+#error "No <internal/pycore_moduleobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_namespace.h b/contrib/libs/python/Include/internal/pycore_namespace.h
new file mode 100644
index 00000000000..8f79cb2c8db
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_namespace.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_namespace.h>
+#else
+#error "No <internal/pycore_namespace.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_object.h b/contrib/libs/python/Include/internal/pycore_object.h
new file mode 100644
index 00000000000..c2703df457e
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_object.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_object.h>
+#else
+#error "No <internal/pycore_object.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_object_alloc.h b/contrib/libs/python/Include/internal/pycore_object_alloc.h
new file mode 100644
index 00000000000..aae0940e7eb
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_object_alloc.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_object_alloc.h>
+#else
+#error "No <internal/pycore_object_alloc.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_object_stack.h b/contrib/libs/python/Include/internal/pycore_object_stack.h
new file mode 100644
index 00000000000..251d0a5b2ac
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_object_stack.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_object_stack.h>
+#else
+#error "No <internal/pycore_object_stack.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_object_state.h b/contrib/libs/python/Include/internal/pycore_object_state.h
new file mode 100644
index 00000000000..68b97591231
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_object_state.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_object_state.h>
+#else
+#error "No <internal/pycore_object_state.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_obmalloc.h b/contrib/libs/python/Include/internal/pycore_obmalloc.h
new file mode 100644
index 00000000000..b4a2ef442c7
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_obmalloc.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_obmalloc.h>
+#else
+#error "No <internal/pycore_obmalloc.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_obmalloc_init.h b/contrib/libs/python/Include/internal/pycore_obmalloc_init.h
new file mode 100644
index 00000000000..4201cbd73c0
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_obmalloc_init.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_obmalloc_init.h>
+#else
+#error "No <internal/pycore_obmalloc_init.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_opcode_metadata.h b/contrib/libs/python/Include/internal/pycore_opcode_metadata.h
new file mode 100644
index 00000000000..7230efdbf60
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_opcode_metadata.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_opcode_metadata.h>
+#else
+#error "No <internal/pycore_opcode_metadata.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_opcode_utils.h b/contrib/libs/python/Include/internal/pycore_opcode_utils.h
new file mode 100644
index 00000000000..141bd5c8be8
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_opcode_utils.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_opcode_utils.h>
+#else
+#error "No <internal/pycore_opcode_utils.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_optimizer.h b/contrib/libs/python/Include/internal/pycore_optimizer.h
new file mode 100644
index 00000000000..8382a171d3d
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_optimizer.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_optimizer.h>
+#else
+#error "No <internal/pycore_optimizer.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_parking_lot.h b/contrib/libs/python/Include/internal/pycore_parking_lot.h
new file mode 100644
index 00000000000..2de837a3274
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_parking_lot.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_parking_lot.h>
+#else
+#error "No <internal/pycore_parking_lot.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_parser.h b/contrib/libs/python/Include/internal/pycore_parser.h
new file mode 100644
index 00000000000..f7d5d3b11d7
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_parser.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_parser.h>
+#else
+#error "No <internal/pycore_parser.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_pathconfig.h b/contrib/libs/python/Include/internal/pycore_pathconfig.h
new file mode 100644
index 00000000000..4ea9e38326c
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_pathconfig.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_pathconfig.h>
+#else
+#error "No <internal/pycore_pathconfig.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_pyarena.h b/contrib/libs/python/Include/internal/pycore_pyarena.h
new file mode 100644
index 00000000000..2d9df07dfcd
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_pyarena.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_pyarena.h>
+#else
+#error "No <internal/pycore_pyarena.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_pyatomic_ft_wrappers.h b/contrib/libs/python/Include/internal/pycore_pyatomic_ft_wrappers.h
new file mode 100644
index 00000000000..83bc5ce9e15
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_pyatomic_ft_wrappers.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_pyatomic_ft_wrappers.h>
+#else
+#error "No <internal/pycore_pyatomic_ft_wrappers.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_pybuffer.h b/contrib/libs/python/Include/internal/pycore_pybuffer.h
new file mode 100644
index 00000000000..0086c521596
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_pybuffer.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_pybuffer.h>
+#else
+#error "No <internal/pycore_pybuffer.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_pyhash.h b/contrib/libs/python/Include/internal/pycore_pyhash.h
new file mode 100644
index 00000000000..8dbdd3f3751
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_pyhash.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_pyhash.h>
+#else
+#error "No <internal/pycore_pyhash.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_pylifecycle.h b/contrib/libs/python/Include/internal/pycore_pylifecycle.h
new file mode 100644
index 00000000000..e72c5f16be0
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_pylifecycle.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_pylifecycle.h>
+#else
+#error "No <internal/pycore_pylifecycle.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_pymath.h b/contrib/libs/python/Include/internal/pycore_pymath.h
new file mode 100644
index 00000000000..fd28385ed8b
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_pymath.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_pymath.h>
+#else
+#error "No <internal/pycore_pymath.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_pymem.h b/contrib/libs/python/Include/internal/pycore_pymem.h
new file mode 100644
index 00000000000..e1be21beefd
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_pymem.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_pymem.h>
+#else
+#error "No <internal/pycore_pymem.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_pymem_init.h b/contrib/libs/python/Include/internal/pycore_pymem_init.h
new file mode 100644
index 00000000000..44def32b7a2
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_pymem_init.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_pymem_init.h>
+#else
+#error "No <internal/pycore_pymem_init.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_pystate.h b/contrib/libs/python/Include/internal/pycore_pystate.h
new file mode 100644
index 00000000000..a7e547e5e01
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_pystate.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_pystate.h>
+#else
+#error "No <internal/pycore_pystate.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_pystats.h b/contrib/libs/python/Include/internal/pycore_pystats.h
new file mode 100644
index 00000000000..9ed9e9ec937
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_pystats.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_pystats.h>
+#else
+#error "No <internal/pycore_pystats.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_pythonrun.h b/contrib/libs/python/Include/internal/pycore_pythonrun.h
new file mode 100644
index 00000000000..3f0d9785df2
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_pythonrun.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_pythonrun.h>
+#else
+#error "No <internal/pycore_pythonrun.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_pythread.h b/contrib/libs/python/Include/internal/pycore_pythread.h
new file mode 100644
index 00000000000..5c9dedbaebe
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_pythread.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_pythread.h>
+#else
+#error "No <internal/pycore_pythread.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_qsbr.h b/contrib/libs/python/Include/internal/pycore_qsbr.h
new file mode 100644
index 00000000000..b8ba3583406
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_qsbr.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_qsbr.h>
+#else
+#error "No <internal/pycore_qsbr.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_range.h b/contrib/libs/python/Include/internal/pycore_range.h
new file mode 100644
index 00000000000..24833521d8b
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_range.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_range.h>
+#else
+#error "No <internal/pycore_range.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_runtime.h b/contrib/libs/python/Include/internal/pycore_runtime.h
new file mode 100644
index 00000000000..5d5993a2119
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_runtime.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_runtime.h>
+#else
+#error "No <internal/pycore_runtime.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_runtime_init.h b/contrib/libs/python/Include/internal/pycore_runtime_init.h
new file mode 100644
index 00000000000..ad17ef24570
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_runtime_init.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_runtime_init.h>
+#else
+#error "No <internal/pycore_runtime_init.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_runtime_init_generated.h b/contrib/libs/python/Include/internal/pycore_runtime_init_generated.h
new file mode 100644
index 00000000000..9908b8d9a3b
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_runtime_init_generated.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_runtime_init_generated.h>
+#else
+#error "No <internal/pycore_runtime_init_generated.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_semaphore.h b/contrib/libs/python/Include/internal/pycore_semaphore.h
new file mode 100644
index 00000000000..dc6b1f84168
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_semaphore.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_semaphore.h>
+#else
+#error "No <internal/pycore_semaphore.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_signal.h b/contrib/libs/python/Include/internal/pycore_signal.h
new file mode 100644
index 00000000000..ad3691cf858
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_signal.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_signal.h>
+#else
+#error "No <internal/pycore_signal.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_sliceobject.h b/contrib/libs/python/Include/internal/pycore_sliceobject.h
new file mode 100644
index 00000000000..81e132d2ead
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_sliceobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_sliceobject.h>
+#else
+#error "No <internal/pycore_sliceobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_stackref.h b/contrib/libs/python/Include/internal/pycore_stackref.h
new file mode 100644
index 00000000000..065dcd68eae
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_stackref.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_stackref.h>
+#else
+#error "No <internal/pycore_stackref.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_strhex.h b/contrib/libs/python/Include/internal/pycore_strhex.h
new file mode 100644
index 00000000000..7c91de927ee
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_strhex.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_strhex.h>
+#else
+#error "No <internal/pycore_strhex.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_structseq.h b/contrib/libs/python/Include/internal/pycore_structseq.h
new file mode 100644
index 00000000000..e5abe9b1a47
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_structseq.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_structseq.h>
+#else
+#error "No <internal/pycore_structseq.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_symtable.h b/contrib/libs/python/Include/internal/pycore_symtable.h
new file mode 100644
index 00000000000..e5651f24fc9
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_symtable.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_symtable.h>
+#else
+#error "No <internal/pycore_symtable.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_sysmodule.h b/contrib/libs/python/Include/internal/pycore_sysmodule.h
new file mode 100644
index 00000000000..eb6b4b2ef4f
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_sysmodule.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_sysmodule.h>
+#else
+#error "No <internal/pycore_sysmodule.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_time.h b/contrib/libs/python/Include/internal/pycore_time.h
new file mode 100644
index 00000000000..ef8a71a9e74
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_time.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_time.h>
+#else
+#error "No <internal/pycore_time.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_token.h b/contrib/libs/python/Include/internal/pycore_token.h
new file mode 100644
index 00000000000..eeff998cf0a
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_token.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_token.h>
+#else
+#error "No <internal/pycore_token.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_traceback.h b/contrib/libs/python/Include/internal/pycore_traceback.h
new file mode 100644
index 00000000000..6e119bdfaed
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_traceback.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_traceback.h>
+#else
+#error "No <internal/pycore_traceback.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_tracemalloc.h b/contrib/libs/python/Include/internal/pycore_tracemalloc.h
new file mode 100644
index 00000000000..8bab8f8669a
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_tracemalloc.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_tracemalloc.h>
+#else
+#error "No <internal/pycore_tracemalloc.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_tstate.h b/contrib/libs/python/Include/internal/pycore_tstate.h
new file mode 100644
index 00000000000..b1ce42e9dab
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_tstate.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_tstate.h>
+#else
+#error "No <internal/pycore_tstate.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_tuple.h b/contrib/libs/python/Include/internal/pycore_tuple.h
new file mode 100644
index 00000000000..49de305460c
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_tuple.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_tuple.h>
+#else
+#error "No <internal/pycore_tuple.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_typeobject.h b/contrib/libs/python/Include/internal/pycore_typeobject.h
new file mode 100644
index 00000000000..7b9eba4b06f
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_typeobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_typeobject.h>
+#else
+#error "No <internal/pycore_typeobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_typevarobject.h b/contrib/libs/python/Include/internal/pycore_typevarobject.h
new file mode 100644
index 00000000000..fbeabe5084f
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_typevarobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_typevarobject.h>
+#else
+#error "No <internal/pycore_typevarobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_ucnhash.h b/contrib/libs/python/Include/internal/pycore_ucnhash.h
new file mode 100644
index 00000000000..688ec90abe3
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_ucnhash.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_ucnhash.h>
+#else
+#error "No <internal/pycore_ucnhash.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_unicodeobject.h b/contrib/libs/python/Include/internal/pycore_unicodeobject.h
new file mode 100644
index 00000000000..b4966a1ad7b
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_unicodeobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_unicodeobject.h>
+#else
+#error "No <internal/pycore_unicodeobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_unicodeobject_generated.h b/contrib/libs/python/Include/internal/pycore_unicodeobject_generated.h
new file mode 100644
index 00000000000..b0b12781212
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_unicodeobject_generated.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_unicodeobject_generated.h>
+#else
+#error "No <internal/pycore_unicodeobject_generated.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_unionobject.h b/contrib/libs/python/Include/internal/pycore_unionobject.h
new file mode 100644
index 00000000000..187e286aaa3
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_unionobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_unionobject.h>
+#else
+#error "No <internal/pycore_unionobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_uop_ids.h b/contrib/libs/python/Include/internal/pycore_uop_ids.h
new file mode 100644
index 00000000000..c780850551a
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_uop_ids.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_uop_ids.h>
+#else
+#error "No <internal/pycore_uop_ids.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_uop_metadata.h b/contrib/libs/python/Include/internal/pycore_uop_metadata.h
new file mode 100644
index 00000000000..e714c662ec9
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_uop_metadata.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_uop_metadata.h>
+#else
+#error "No <internal/pycore_uop_metadata.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_warnings.h b/contrib/libs/python/Include/internal/pycore_warnings.h
new file mode 100644
index 00000000000..2c3ffa76e6c
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_warnings.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_warnings.h>
+#else
+#error "No <internal/pycore_warnings.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include/internal/pycore_weakref.h b/contrib/libs/python/Include/internal/pycore_weakref.h
new file mode 100644
index 00000000000..4edd7ea731d
--- /dev/null
+++ b/contrib/libs/python/Include/internal/pycore_weakref.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3
+#include <contrib/tools/python3/Include/internal/pycore_weakref.h>
+#else
+#error "No <internal/pycore_weakref.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_abstract.h b/contrib/libs/python/Include_prev/internal/pycore_abstract.h
new file mode 100644
index 00000000000..88a902615c4
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_abstract.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_abstract.h>
+#else
+#error "No <internal/pycore_abstract.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_asdl.h b/contrib/libs/python/Include_prev/internal/pycore_asdl.h
new file mode 100644
index 00000000000..a2c0093e7be
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_asdl.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_asdl.h>
+#else
+#error "No <internal/pycore_asdl.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_ast.h b/contrib/libs/python/Include_prev/internal/pycore_ast.h
new file mode 100644
index 00000000000..32e3dfcfd30
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_ast.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_ast.h>
+#else
+#error "No <internal/pycore_ast.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_ast_state.h b/contrib/libs/python/Include_prev/internal/pycore_ast_state.h
new file mode 100644
index 00000000000..cf56f800743
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_ast_state.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_ast_state.h>
+#else
+#error "No <internal/pycore_ast_state.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_atexit.h b/contrib/libs/python/Include_prev/internal/pycore_atexit.h
new file mode 100644
index 00000000000..b3551fffb72
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_atexit.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_atexit.h>
+#else
+#error "No <internal/pycore_atexit.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_atomic.h b/contrib/libs/python/Include_prev/internal/pycore_atomic.h
new file mode 100644
index 00000000000..055f43a50cb
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_atomic.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_atomic.h>
+#else
+#error "No <internal/pycore_atomic.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_atomic_funcs.h b/contrib/libs/python/Include_prev/internal/pycore_atomic_funcs.h
new file mode 100644
index 00000000000..b826798b9a0
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_atomic_funcs.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_atomic_funcs.h>
+#else
+#error "No <internal/pycore_atomic_funcs.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_bitutils.h b/contrib/libs/python/Include_prev/internal/pycore_bitutils.h
new file mode 100644
index 00000000000..7b7405a6fa1
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_bitutils.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_bitutils.h>
+#else
+#error "No <internal/pycore_bitutils.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_blocks_output_buffer.h b/contrib/libs/python/Include_prev/internal/pycore_blocks_output_buffer.h
new file mode 100644
index 00000000000..6d328a809bf
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_blocks_output_buffer.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_blocks_output_buffer.h>
+#else
+#error "No <internal/pycore_blocks_output_buffer.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_bytes_methods.h b/contrib/libs/python/Include_prev/internal/pycore_bytes_methods.h
new file mode 100644
index 00000000000..fd8982970a5
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_bytes_methods.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_bytes_methods.h>
+#else
+#error "No <internal/pycore_bytes_methods.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_bytesobject.h b/contrib/libs/python/Include_prev/internal/pycore_bytesobject.h
new file mode 100644
index 00000000000..4564c267280
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_bytesobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_bytesobject.h>
+#else
+#error "No <internal/pycore_bytesobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_call.h b/contrib/libs/python/Include_prev/internal/pycore_call.h
new file mode 100644
index 00000000000..5312f60d757
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_call.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_call.h>
+#else
+#error "No <internal/pycore_call.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_ceval.h b/contrib/libs/python/Include_prev/internal/pycore_ceval.h
new file mode 100644
index 00000000000..e4cd9be541e
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_ceval.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_ceval.h>
+#else
+#error "No <internal/pycore_ceval.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_ceval_state.h b/contrib/libs/python/Include_prev/internal/pycore_ceval_state.h
new file mode 100644
index 00000000000..dc6a3420f2d
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_ceval_state.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_ceval_state.h>
+#else
+#error "No <internal/pycore_ceval_state.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_code.h b/contrib/libs/python/Include_prev/internal/pycore_code.h
new file mode 100644
index 00000000000..67462f242b8
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_code.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_code.h>
+#else
+#error "No <internal/pycore_code.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_compile.h b/contrib/libs/python/Include_prev/internal/pycore_compile.h
new file mode 100644
index 00000000000..a3a178c35cd
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_compile.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_compile.h>
+#else
+#error "No <internal/pycore_compile.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_condvar.h b/contrib/libs/python/Include_prev/internal/pycore_condvar.h
new file mode 100644
index 00000000000..b89d90eb8f2
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_condvar.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_condvar.h>
+#else
+#error "No <internal/pycore_condvar.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_context.h b/contrib/libs/python/Include_prev/internal/pycore_context.h
new file mode 100644
index 00000000000..72b7305246a
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_context.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_context.h>
+#else
+#error "No <internal/pycore_context.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_descrobject.h b/contrib/libs/python/Include_prev/internal/pycore_descrobject.h
new file mode 100644
index 00000000000..f5816a3c406
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_descrobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_descrobject.h>
+#else
+#error "No <internal/pycore_descrobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_dict.h b/contrib/libs/python/Include_prev/internal/pycore_dict.h
new file mode 100644
index 00000000000..6ff91c7eb24
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_dict.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_dict.h>
+#else
+#error "No <internal/pycore_dict.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_dict_state.h b/contrib/libs/python/Include_prev/internal/pycore_dict_state.h
new file mode 100644
index 00000000000..c8a7c0e64f3
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_dict_state.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_dict_state.h>
+#else
+#error "No <internal/pycore_dict_state.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_dtoa.h b/contrib/libs/python/Include_prev/internal/pycore_dtoa.h
new file mode 100644
index 00000000000..d8b0e5034e0
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_dtoa.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_dtoa.h>
+#else
+#error "No <internal/pycore_dtoa.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_emscripten_signal.h b/contrib/libs/python/Include_prev/internal/pycore_emscripten_signal.h
new file mode 100644
index 00000000000..459c2347193
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_emscripten_signal.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_emscripten_signal.h>
+#else
+#error "No <internal/pycore_emscripten_signal.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_exceptions.h b/contrib/libs/python/Include_prev/internal/pycore_exceptions.h
new file mode 100644
index 00000000000..c09db74ebef
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_exceptions.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_exceptions.h>
+#else
+#error "No <internal/pycore_exceptions.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_faulthandler.h b/contrib/libs/python/Include_prev/internal/pycore_faulthandler.h
new file mode 100644
index 00000000000..f1369003ee8
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_faulthandler.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_faulthandler.h>
+#else
+#error "No <internal/pycore_faulthandler.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_fileutils.h b/contrib/libs/python/Include_prev/internal/pycore_fileutils.h
new file mode 100644
index 00000000000..395ba908dbf
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_fileutils.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_fileutils.h>
+#else
+#error "No <internal/pycore_fileutils.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_fileutils_windows.h b/contrib/libs/python/Include_prev/internal/pycore_fileutils_windows.h
new file mode 100644
index 00000000000..bb732c0b6eb
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_fileutils_windows.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_fileutils_windows.h>
+#else
+#error "No <internal/pycore_fileutils_windows.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_floatobject.h b/contrib/libs/python/Include_prev/internal/pycore_floatobject.h
new file mode 100644
index 00000000000..074e660978c
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_floatobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_floatobject.h>
+#else
+#error "No <internal/pycore_floatobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_flowgraph.h b/contrib/libs/python/Include_prev/internal/pycore_flowgraph.h
new file mode 100644
index 00000000000..9d468dab962
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_flowgraph.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_flowgraph.h>
+#else
+#error "No <internal/pycore_flowgraph.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_format.h b/contrib/libs/python/Include_prev/internal/pycore_format.h
new file mode 100644
index 00000000000..4e2d22891ac
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_format.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_format.h>
+#else
+#error "No <internal/pycore_format.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_function.h b/contrib/libs/python/Include_prev/internal/pycore_function.h
new file mode 100644
index 00000000000..ba92af274df
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_function.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_function.h>
+#else
+#error "No <internal/pycore_function.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_gc.h b/contrib/libs/python/Include_prev/internal/pycore_gc.h
new file mode 100644
index 00000000000..526bcaf7896
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_gc.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_gc.h>
+#else
+#error "No <internal/pycore_gc.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_getopt.h b/contrib/libs/python/Include_prev/internal/pycore_getopt.h
new file mode 100644
index 00000000000..6845dc9d87f
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_getopt.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_getopt.h>
+#else
+#error "No <internal/pycore_getopt.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_gil.h b/contrib/libs/python/Include_prev/internal/pycore_gil.h
new file mode 100644
index 00000000000..01d81d04e9a
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_gil.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_gil.h>
+#else
+#error "No <internal/pycore_gil.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_global_objects.h b/contrib/libs/python/Include_prev/internal/pycore_global_objects.h
new file mode 100644
index 00000000000..48134312103
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_global_objects.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_global_objects.h>
+#else
+#error "No <internal/pycore_global_objects.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_global_objects_fini_generated.h b/contrib/libs/python/Include_prev/internal/pycore_global_objects_fini_generated.h
new file mode 100644
index 00000000000..5be0df076a0
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_global_objects_fini_generated.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_global_objects_fini_generated.h>
+#else
+#error "No <internal/pycore_global_objects_fini_generated.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_global_strings.h b/contrib/libs/python/Include_prev/internal/pycore_global_strings.h
new file mode 100644
index 00000000000..5badec55007
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_global_strings.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_global_strings.h>
+#else
+#error "No <internal/pycore_global_strings.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_hamt.h b/contrib/libs/python/Include_prev/internal/pycore_hamt.h
new file mode 100644
index 00000000000..b1dbe899d78
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_hamt.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_hamt.h>
+#else
+#error "No <internal/pycore_hamt.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_hashtable.h b/contrib/libs/python/Include_prev/internal/pycore_hashtable.h
new file mode 100644
index 00000000000..9c5b644f712
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_hashtable.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_hashtable.h>
+#else
+#error "No <internal/pycore_hashtable.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_import.h b/contrib/libs/python/Include_prev/internal/pycore_import.h
new file mode 100644
index 00000000000..a4b3f14e5fe
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_import.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_import.h>
+#else
+#error "No <internal/pycore_import.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_initconfig.h b/contrib/libs/python/Include_prev/internal/pycore_initconfig.h
new file mode 100644
index 00000000000..fa6c04fb4b3
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_initconfig.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_initconfig.h>
+#else
+#error "No <internal/pycore_initconfig.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_instruments.h b/contrib/libs/python/Include_prev/internal/pycore_instruments.h
new file mode 100644
index 00000000000..42c2260b87b
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_instruments.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_instruments.h>
+#else
+#error "No <internal/pycore_instruments.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_interp.h b/contrib/libs/python/Include_prev/internal/pycore_interp.h
new file mode 100644
index 00000000000..527584536f6
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_interp.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_interp.h>
+#else
+#error "No <internal/pycore_interp.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_intrinsics.h b/contrib/libs/python/Include_prev/internal/pycore_intrinsics.h
new file mode 100644
index 00000000000..8440efb682e
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_intrinsics.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_intrinsics.h>
+#else
+#error "No <internal/pycore_intrinsics.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_list.h b/contrib/libs/python/Include_prev/internal/pycore_list.h
new file mode 100644
index 00000000000..66361c0f56d
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_list.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_list.h>
+#else
+#error "No <internal/pycore_list.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_long.h b/contrib/libs/python/Include_prev/internal/pycore_long.h
new file mode 100644
index 00000000000..fa1b5a5f6e6
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_long.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_long.h>
+#else
+#error "No <internal/pycore_long.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_memoryobject.h b/contrib/libs/python/Include_prev/internal/pycore_memoryobject.h
new file mode 100644
index 00000000000..9f25915fcd4
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_memoryobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_memoryobject.h>
+#else
+#error "No <internal/pycore_memoryobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_moduleobject.h b/contrib/libs/python/Include_prev/internal/pycore_moduleobject.h
new file mode 100644
index 00000000000..b713c9644f9
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_moduleobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_moduleobject.h>
+#else
+#error "No <internal/pycore_moduleobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_namespace.h b/contrib/libs/python/Include_prev/internal/pycore_namespace.h
new file mode 100644
index 00000000000..c1f12b5d107
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_namespace.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_namespace.h>
+#else
+#error "No <internal/pycore_namespace.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_object.h b/contrib/libs/python/Include_prev/internal/pycore_object.h
new file mode 100644
index 00000000000..72fd27ed21e
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_object.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_object.h>
+#else
+#error "No <internal/pycore_object.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_object_state.h b/contrib/libs/python/Include_prev/internal/pycore_object_state.h
new file mode 100644
index 00000000000..69395bd0408
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_object_state.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_object_state.h>
+#else
+#error "No <internal/pycore_object_state.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_obmalloc.h b/contrib/libs/python/Include_prev/internal/pycore_obmalloc.h
new file mode 100644
index 00000000000..1ce6427ecfb
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_obmalloc.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_obmalloc.h>
+#else
+#error "No <internal/pycore_obmalloc.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_obmalloc_init.h b/contrib/libs/python/Include_prev/internal/pycore_obmalloc_init.h
new file mode 100644
index 00000000000..037a2c3f450
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_obmalloc_init.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_obmalloc_init.h>
+#else
+#error "No <internal/pycore_obmalloc_init.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_opcode.h b/contrib/libs/python/Include_prev/internal/pycore_opcode.h
new file mode 100644
index 00000000000..31d5087f722
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_opcode.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_opcode.h>
+#else
+#error "No <internal/pycore_opcode.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_opcode_utils.h b/contrib/libs/python/Include_prev/internal/pycore_opcode_utils.h
new file mode 100644
index 00000000000..64553e599ba
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_opcode_utils.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_opcode_utils.h>
+#else
+#error "No <internal/pycore_opcode_utils.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_parser.h b/contrib/libs/python/Include_prev/internal/pycore_parser.h
new file mode 100644
index 00000000000..7f10089b12d
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_parser.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_parser.h>
+#else
+#error "No <internal/pycore_parser.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_pathconfig.h b/contrib/libs/python/Include_prev/internal/pycore_pathconfig.h
new file mode 100644
index 00000000000..48f1629a146
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_pathconfig.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_pathconfig.h>
+#else
+#error "No <internal/pycore_pathconfig.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_pyarena.h b/contrib/libs/python/Include_prev/internal/pycore_pyarena.h
new file mode 100644
index 00000000000..f27741215eb
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_pyarena.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_pyarena.h>
+#else
+#error "No <internal/pycore_pyarena.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_pyhash.h b/contrib/libs/python/Include_prev/internal/pycore_pyhash.h
new file mode 100644
index 00000000000..392747240c9
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_pyhash.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_pyhash.h>
+#else
+#error "No <internal/pycore_pyhash.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_pylifecycle.h b/contrib/libs/python/Include_prev/internal/pycore_pylifecycle.h
new file mode 100644
index 00000000000..1bbe6459d7d
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_pylifecycle.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_pylifecycle.h>
+#else
+#error "No <internal/pycore_pylifecycle.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_pymath.h b/contrib/libs/python/Include_prev/internal/pycore_pymath.h
new file mode 100644
index 00000000000..ab18b810885
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_pymath.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_pymath.h>
+#else
+#error "No <internal/pycore_pymath.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_pymem.h b/contrib/libs/python/Include_prev/internal/pycore_pymem.h
new file mode 100644
index 00000000000..69e9f5edf74
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_pymem.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_pymem.h>
+#else
+#error "No <internal/pycore_pymem.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_pymem_init.h b/contrib/libs/python/Include_prev/internal/pycore_pymem_init.h
new file mode 100644
index 00000000000..0340b813321
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_pymem_init.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_pymem_init.h>
+#else
+#error "No <internal/pycore_pymem_init.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_pystate.h b/contrib/libs/python/Include_prev/internal/pycore_pystate.h
new file mode 100644
index 00000000000..90004dd998a
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_pystate.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_pystate.h>
+#else
+#error "No <internal/pycore_pystate.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_pythread.h b/contrib/libs/python/Include_prev/internal/pycore_pythread.h
new file mode 100644
index 00000000000..a8a85574f1a
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_pythread.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_pythread.h>
+#else
+#error "No <internal/pycore_pythread.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_range.h b/contrib/libs/python/Include_prev/internal/pycore_range.h
new file mode 100644
index 00000000000..bc1f513e15c
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_range.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_range.h>
+#else
+#error "No <internal/pycore_range.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_runtime.h b/contrib/libs/python/Include_prev/internal/pycore_runtime.h
new file mode 100644
index 00000000000..50bf6f61d1c
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_runtime.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_runtime.h>
+#else
+#error "No <internal/pycore_runtime.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_runtime_init.h b/contrib/libs/python/Include_prev/internal/pycore_runtime_init.h
new file mode 100644
index 00000000000..918210b1e64
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_runtime_init.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_runtime_init.h>
+#else
+#error "No <internal/pycore_runtime_init.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_runtime_init_generated.h b/contrib/libs/python/Include_prev/internal/pycore_runtime_init_generated.h
new file mode 100644
index 00000000000..7299e6b42ae
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_runtime_init_generated.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_runtime_init_generated.h>
+#else
+#error "No <internal/pycore_runtime_init_generated.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_signal.h b/contrib/libs/python/Include_prev/internal/pycore_signal.h
new file mode 100644
index 00000000000..2e168dd9f00
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_signal.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_signal.h>
+#else
+#error "No <internal/pycore_signal.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_sliceobject.h b/contrib/libs/python/Include_prev/internal/pycore_sliceobject.h
new file mode 100644
index 00000000000..d847d876aad
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_sliceobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_sliceobject.h>
+#else
+#error "No <internal/pycore_sliceobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_strhex.h b/contrib/libs/python/Include_prev/internal/pycore_strhex.h
new file mode 100644
index 00000000000..e2bb26762c6
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_strhex.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_strhex.h>
+#else
+#error "No <internal/pycore_strhex.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_structseq.h b/contrib/libs/python/Include_prev/internal/pycore_structseq.h
new file mode 100644
index 00000000000..0e85a7e2b21
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_structseq.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_structseq.h>
+#else
+#error "No <internal/pycore_structseq.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_symtable.h b/contrib/libs/python/Include_prev/internal/pycore_symtable.h
new file mode 100644
index 00000000000..849b0e3ab2e
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_symtable.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_symtable.h>
+#else
+#error "No <internal/pycore_symtable.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_sysmodule.h b/contrib/libs/python/Include_prev/internal/pycore_sysmodule.h
new file mode 100644
index 00000000000..9df6d834673
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_sysmodule.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_sysmodule.h>
+#else
+#error "No <internal/pycore_sysmodule.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_time.h b/contrib/libs/python/Include_prev/internal/pycore_time.h
new file mode 100644
index 00000000000..8e334919d5e
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_time.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_time.h>
+#else
+#error "No <internal/pycore_time.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_token.h b/contrib/libs/python/Include_prev/internal/pycore_token.h
new file mode 100644
index 00000000000..339bb9590a1
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_token.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_token.h>
+#else
+#error "No <internal/pycore_token.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_traceback.h b/contrib/libs/python/Include_prev/internal/pycore_traceback.h
new file mode 100644
index 00000000000..40f0030c83d
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_traceback.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_traceback.h>
+#else
+#error "No <internal/pycore_traceback.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_tracemalloc.h b/contrib/libs/python/Include_prev/internal/pycore_tracemalloc.h
new file mode 100644
index 00000000000..d54fdda9e14
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_tracemalloc.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_tracemalloc.h>
+#else
+#error "No <internal/pycore_tracemalloc.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_tuple.h b/contrib/libs/python/Include_prev/internal/pycore_tuple.h
new file mode 100644
index 00000000000..9a85d0c864e
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_tuple.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_tuple.h>
+#else
+#error "No <internal/pycore_tuple.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_typeobject.h b/contrib/libs/python/Include_prev/internal/pycore_typeobject.h
new file mode 100644
index 00000000000..5a3275247ad
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_typeobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_typeobject.h>
+#else
+#error "No <internal/pycore_typeobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_typevarobject.h b/contrib/libs/python/Include_prev/internal/pycore_typevarobject.h
new file mode 100644
index 00000000000..b9e759d9b21
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_typevarobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_typevarobject.h>
+#else
+#error "No <internal/pycore_typevarobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_ucnhash.h b/contrib/libs/python/Include_prev/internal/pycore_ucnhash.h
new file mode 100644
index 00000000000..9a530150027
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_ucnhash.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_ucnhash.h>
+#else
+#error "No <internal/pycore_ucnhash.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_unicodeobject.h b/contrib/libs/python/Include_prev/internal/pycore_unicodeobject.h
new file mode 100644
index 00000000000..95c76db44d3
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_unicodeobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_unicodeobject.h>
+#else
+#error "No <internal/pycore_unicodeobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_unicodeobject_generated.h b/contrib/libs/python/Include_prev/internal/pycore_unicodeobject_generated.h
new file mode 100644
index 00000000000..2973f15fe5d
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_unicodeobject_generated.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_unicodeobject_generated.h>
+#else
+#error "No <internal/pycore_unicodeobject_generated.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_unionobject.h b/contrib/libs/python/Include_prev/internal/pycore_unionobject.h
new file mode 100644
index 00000000000..3b60c727692
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_unionobject.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_unionobject.h>
+#else
+#error "No <internal/pycore_unionobject.h> in Python2"
+#endif
diff --git a/contrib/libs/python/Include_prev/internal/pycore_warnings.h b/contrib/libs/python/Include_prev/internal/pycore_warnings.h
new file mode 100644
index 00000000000..694287ed8db
--- /dev/null
+++ b/contrib/libs/python/Include_prev/internal/pycore_warnings.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#ifdef USE_PYTHON3_PREV
+#include <contrib/tools/python3_prev/Include/internal/pycore_warnings.h>
+#else
+#error "No <internal/pycore_warnings.h> in Python2"
+#endif
diff --git a/contrib/libs/python/gen_includes.py b/contrib/libs/python/gen_includes.py
index 922adbac014..c84e4afbdb0 100755
--- a/contrib/libs/python/gen_includes.py
+++ b/contrib/libs/python/gen_includes.py
@@ -3,16 +3,6 @@
import pathlib
import re
-ALLOWED_INTERNAL = (
- # pycore
- "internal/pycore_frame.h",
- "internal/pycore_genobject.h",
- "internal/pycore_pyerrors.h",
- "internal/pycore_setobject.h",
- # mimalloc
- "internal/mimalloc/",
-)
-
def files(directory):
for dirpath, dirnames, filenames in directory.walk():
@@ -25,7 +15,6 @@ def headers_set(directory):
f
for f in files(directory)
if f.endswith(".h")
- and (not f.startswith("internal/") or f.startswith(ALLOWED_INTERNAL))
and not re.match(r"^pyconfig[.-].+\.h$", f)
}