diff --git a/CellFrame/python-cellframe.c b/CellFrame/python-cellframe.c
index 8cd6d5a97160c1a937caff18d2f1c335c71f0a49..3c1f33ce39a11d4d582010ebf874c224a74bfcdb 100644
--- a/CellFrame/python-cellframe.c
+++ b/CellFrame/python-cellframe.c
@@ -57,6 +57,8 @@ PyObject *python_cellframe_init(PyObject *self, PyObject *args){
     s_init_ks = true;
     submodules_deint = false;
 
+    PyObject *events = NULL;
+
     #ifdef _WIN32
         setConsoleCtrlHandler((PHANDLER_ROUTINE)consoleHandler, TRUE);
     #else
@@ -178,6 +180,16 @@ PyObject *python_cellframe_init(PyObject *self, PyObject *args){
                 return NULL;
             }
             dap_cert_init();
+        } else if (strcmp(c_value, "Events") == 0){
+            dap_events_init(0,0);
+            events = _PyObject_New(&dapEvents_dapEventsType);
+            ((PyDapEventsObject*)events)->t_events = dap_events_new();
+            dap_events_start(((PyDapEventsObject*)events)->t_events);
+        } else if (strcmp(c_value, "Server") == 0){
+            if(dap_server_init() != 0 ){
+                PyErr_SetString(CellFrame_error, "Failed to initialize Server.");
+                return NULL;
+            }
         }else if (strcmp(c_value, "ServerCore") == 0){
             PyObject* getServerCoreData = PyDict_GetItemString(result, "ServerCore");
             if (getServerCoreData == NULL){
@@ -219,6 +231,11 @@ PyObject *python_cellframe_init(PyObject *self, PyObject *args){
                 return NULL;
             }
             s_init_http = true;
+        } else if (strcmp(c_value, "HttpSimple") == 0){
+            if (dap_http_simple_module_init() != 0){
+                PyErr_SetString(CellFrame_error, "Failed to initialize HttpSimple module. ");
+                return NULL;
+            }
         } else if (strcmp(c_value, "EncHttp") == 0){
             if(enc_http_init() != 0){
                 PyErr_SetString(CellFrame_error, "Failed to initialize EncHttp module. ");
@@ -295,12 +312,7 @@ PyObject *python_cellframe_init(PyObject *self, PyObject *args){
                 PyErr_SetString(CellFrame_error, "Failed to initialize ChainNetSrv module. ");
                 return NULL;
             }
-        }else if (strcmp(c_value, "HttpSimple") == 0){
-            if (dap_http_simple_module_init() != 0){
-                PyErr_SetString(CellFrame_error, "Failed to initialize HttpSimple module. ");
-                return NULL;
-            }
-        } else if (strcmp(c_value, "StreamChChain") == 0){
+        }else if (strcmp(c_value, "StreamChChain") == 0){
             if (dap_stream_ch_chain_init() != 0 ){
                 PyErr_SetString(CellFrame_error, "Failed to initialize StreamChChain module. ");
                 return NULL;
@@ -347,7 +359,10 @@ PyObject *python_cellframe_init(PyObject *self, PyObject *args){
             log_it(L_WARNING,"Unknown module \"%s\"", c_value);
         }
     }
-    return PyLong_FromLong(0);
+    if (events == NULL)
+        return PyLong_FromLong(0);
+    else
+        return Py_BuildValue("iO", PyLong_FromLong(0), events);
 }
 
 PyMODINIT_FUNC PyInit_libCellFrame(void){
diff --git a/dists/examples/0.Beginning/MyChains.py b/dists/examples/0.Beginning/MyChains.py
index 4941f3f6dd31e629c0d8503e3a6b7ec2b5e100bc..62d1610db6d88d9cc51092d9021b983079f0d7a6 100755
--- a/dists/examples/0.Beginning/MyChains.py
+++ b/dists/examples/0.Beginning/MyChains.py
@@ -8,7 +8,7 @@ tmp_dir = os.getcwd() + "/tmp"
 var_dir = os.getcwd() + "/var"
 
 json_string = """{
-    "modules": ["Crypto", "ServerCore", "Http", "HttpFolder", "GlobalDB", "Client", "HttpClientSimple", "Mempool",
+    "modules": ["Crypto", "Events", "Server", "Http", "HttpFolder", "GlobalDB", "Client", "HttpClientSimple", "Mempool",
      "Chain", "Wallet", "ChainCSDag", "ChainCSDagPoa", "ChainCSDagPos", "GDB", "Net", "AppCliServer", "ChainNetSrv", "EncHttp",
      "Stream", "StreamCtl", "HttpSimple", "StreamChChain", "StreamChChainNet", "StreamChChainNetSrv"],
      "DAP": {
@@ -18,12 +18,9 @@ json_string = """{
        "file_name_log": \""""+var_dir+"/log/"+app_name+".log"+"""\"
      },
      "Stream" : {
+	"prefferd_encryption": "IAES",
         "DebugDumpStreamHeaders": false
      },
-     "ServerCore" : {
-        "thread_cnt": 0,
-        "conn": 0
-     },
     "Configuration" : {
         "general": {
             "debug_mode": false,
@@ -77,21 +74,22 @@ json_string = """{
     }
     }"""
 
-init(json_string)
+rsi = init(json_string)
+ev = rsi[1]
 setLogLevel(DEBUG)
 
 server_host_name = configGetItem("server", "listen_address")
 server_port = int(configGetItem("server", "listen_port_tcp"))
-sr = ServerCore.listen(server_host_name, server_port, 0)
+sr = ServerCore.listen(ev, server_host_name, server_port, 0)
 Http.new(sr, app_name)
 EncHttp.addProc(sr, "/enc_http")
 Stream.addProcHttp(sr, "/stream")
 StreamCtl.addProcHttp(sr, "/stream_ctl")
 
-ev = Events()
-ev.start()
+#ev = Events()
+#ev.start()
 
 logItNotice(app_name+" v0.1 runned on port "+str(server_port))
-rc = ServerCore.loop(sr)
+rc = ev.wait()
 
 deinit()