diff --git a/include/wrapping_dap_chain_common.h b/include/wrapping_dap_chain_common.h
index cb82d90c8aa6ba9e423e731a4546daf12c0b2d1e..bbf70bd6286b87dc0aff54b9fdfbca124f80fe4a 100644
--- a/include/wrapping_dap_chain_common.h
+++ b/include/wrapping_dap_chain_common.h
@@ -395,6 +395,108 @@ static PyTypeObject DapChainCellIDObject_DapChainCellIDType = {
 };
 
 
+/*=================*/
+
+/* Chain cell id */
+typedef struct PyDapChainNodeAddr{
+    PyObject_HEAD
+    dap_chain_node_addr_t *node_addr;
+}PyDapChainNodeAddrObject;
+
+static PyTypeObject DapChainNodeAddrObject_DapChainNodeAddrObjectType = {
+        PyVarObject_HEAD_INIT(NULL, 0)
+        "CellFrame.ChainNodeAddr"  ,       /* tp_name */
+        sizeof(PyDapChainCellIDObject),  /* tp_basicsize */
+        0,                               /* tp_itemsize */
+        0,                               /* tp_dealloc */
+        0,                               /* tp_print */
+        0,                               /* tp_getattr */
+        0,                               /* tp_setattr */
+        0,                               /* tp_reserved */
+        0,                               /* tp_repr */
+        0,                               /* tp_as_number */
+        0,                               /* tp_as_sequence */
+        0,                               /* tp_as_mapping */
+        0,                               /* tp_hash  */
+        0,                               /* tp_call */
+        0,                               /* tp_str */
+        0,                               /* tp_getattro */
+        0,                               /* tp_setattro */
+        0,                               /* tp_as_buffer */
+        Py_TPFLAGS_DEFAULT |
+        Py_TPFLAGS_BASETYPE,         /* tp_flags */
+        "Chain node addr object",          /* tp_doc */
+        0,		                         /* tp_traverse */
+        0,		                         /* tp_clear */
+        0,		                         /* tp_richcompare */
+        0,                               /* tp_weaklistoffset */
+        0,		                         /* tp_iter */
+        0,		                         /* tp_iternext */
+        0,                               /* tp_methods */
+        0,                               /* tp_members */
+        0,                               /* tp_getset */
+        0,                               /* tp_base */
+        0,                               /* tp_dict */
+        0,                               /* tp_descr_get */
+        0,                               /* tp_descr_set */
+        0,                               /* tp_dictoffset */
+        0,                               /* tp_init */
+        0,                               /* tp_alloc */
+        PyType_GenericNew,               /* tp_new */
+};
+
+
+/*=================*/
+
+/* Chain cell id */
+typedef struct PyDapChainHashSlowKind{
+    PyObject_HEAD
+    dap_chain_hash_slow_kind_t *slow_kind;
+}PyDapChainHashSlowKindObject;
+
+static PyTypeObject DapChainSlowKindObject_DapChainSlowKindType = {
+        PyVarObject_HEAD_INIT(NULL, 0)
+        "CellFrame.ChainSlowKind"  ,       /* tp_name */
+        sizeof(PyDapChainHashSlowKindObject),  /* tp_basicsize */
+        0,                               /* tp_itemsize */
+        0,                               /* tp_dealloc */
+        0,                               /* tp_print */
+        0,                               /* tp_getattr */
+        0,                               /* tp_setattr */
+        0,                               /* tp_reserved */
+        0,                               /* tp_repr */
+        0,                               /* tp_as_number */
+        0,                               /* tp_as_sequence */
+        0,                               /* tp_as_mapping */
+        0,                               /* tp_hash  */
+        0,                               /* tp_call */
+        0,                               /* tp_str */
+        0,                               /* tp_getattro */
+        0,                               /* tp_setattro */
+        0,                               /* tp_as_buffer */
+        Py_TPFLAGS_DEFAULT |
+        Py_TPFLAGS_BASETYPE,         /* tp_flags */
+        "Chain slow kind object",          /* tp_doc */
+        0,		                         /* tp_traverse */
+        0,		                         /* tp_clear */
+        0,		                         /* tp_richcompare */
+        0,                               /* tp_weaklistoffset */
+        0,		                         /* tp_iter */
+        0,		                         /* tp_iternext */
+        0,                               /* tp_methods */
+        0,                               /* tp_members */
+        0,                               /* tp_getset */
+        0,                               /* tp_base */
+        0,                               /* tp_dict */
+        0,                               /* tp_descr_get */
+        0,                               /* tp_descr_set */
+        0,                               /* tp_dictoffset */
+        0,                               /* tp_init */
+        0,                               /* tp_alloc */
+        PyType_GenericNew,               /* tp_new */
+};
+
+
 /*=================*/