diff --git a/dap-sdk/core/include/dap_strfuncs.h b/dap-sdk/core/include/dap_strfuncs.h
index b929c3a891bf169fc475dfbc52f9a1f5a604f0db..0c1c4c195b43f7800503c454d36f4f9a20e0a441 100755
--- a/dap-sdk/core/include/dap_strfuncs.h
+++ b/dap-sdk/core/include/dap_strfuncs.h
@@ -80,6 +80,7 @@ char* dap_strreverse(char *a_string);
 uint128_t dap_strtou128(const char *p, char **endp, int base);
 int128_t dap_strtoi128(const char *p, char **endp, int base);
 
+
 /**
  * @brief atoi128
  * @param p
diff --git a/dap-sdk/crypto/include/dap_hash.h b/dap-sdk/crypto/include/dap_hash.h
index 32edf0125e53362d7ea3871fe343d438a5e53b6b..d81d94df5ad53a37499205ac2d93ede70b6874ff 100755
--- a/dap-sdk/crypto/include/dap_hash.h
+++ b/dap-sdk/crypto/include/dap_hash.h
@@ -51,7 +51,7 @@ extern "C" {
 #endif
 
 //size_t dap_chain_hash_fast_to_str(dap_chain_hash_fast_t * a_hash, char * a_str, size_t a_str_max);
-int dap_chain_str_to_hash_fast( const char * a_hash_str, dap_chain_hash_fast_t * a_hash);
+int dap_chain_hash_fast_from_str( const char * a_hash_str, dap_chain_hash_fast_t * a_hash);
 
 static inline bool dap_hash_fast( const void *a_data_in, size_t a_data_in_size, dap_chain_hash_fast_t *a_hash_out )
 {
diff --git a/dap-sdk/crypto/src/dap_hash.c b/dap-sdk/crypto/src/dap_hash.c
index 6842f637ae430aa974e11445a64834e5691cde87..9360ef298b036f326fbf3f721118a7ffc905ec11 100755
--- a/dap-sdk/crypto/src/dap_hash.c
+++ b/dap-sdk/crypto/src/dap_hash.c
@@ -37,7 +37,7 @@
  * @param a_hash
  * @return
  */
-int dap_chain_str_to_hash_fast( const char * a_hash_str, dap_chain_hash_fast_t * a_hash)
+int dap_chain_hash_fast_from_str( const char * a_hash_str, dap_chain_hash_fast_t * a_hash)
 {
     const size_t c_hash_str_size = sizeof(*a_hash) * 2 + 1 /*trailing zero*/+ 2 /* heading 0x */;
     size_t l_hash_str_len = strlen( a_hash_str);
@@ -55,3 +55,4 @@ int dap_chain_str_to_hash_fast( const char * a_hash_str, dap_chain_hash_fast_t *
     }else  // Wromg string len
         return -1;
 }
+
diff --git a/dap-sdk/net/client/dap_client.c b/dap-sdk/net/client/dap_client.c
index b55f4d0229142f63b2281d71b9c4af76f7b2f5c0..15f40ca49ce61311b2e07653da242ba876656d27 100644
--- a/dap-sdk/net/client/dap_client.c
+++ b/dap-sdk/net/client/dap_client.c
@@ -233,6 +233,7 @@ void dap_client_delete(dap_client_t * a_client)
     //memset(a_client, 0, sizeof(dap_client_t));
     //pthread_mutex_unlock(l_mutex);
     pthread_mutex_unlock(&a_client->mutex);
+    pthread_mutex_destroy(&a_client->mutex);
     // a_client will be deleted in dap_events_socket_delete() -> free( a_es->_inheritor );
     //DAP_DELETE(a_client);
     DAP_DEL_Z(a_client);
diff --git a/modules/chain/dap_chain_ledger.c b/modules/chain/dap_chain_ledger.c
index 91ab38c600c73b460f5355e245e9d1ebac5d8c4c..8ede47afb507de8b89ac8214f66a65ea66c042b7 100644
--- a/modules/chain/dap_chain_ledger.c
+++ b/modules/chain/dap_chain_ledger.c
@@ -408,7 +408,7 @@ void dap_chain_ledger_load_cache(dap_ledger_t *a_ledger)
     l_objs = dap_chain_global_db_gr_load(l_gdb_group, &l_objs_count);
     for (size_t i = 0; i < l_objs_count; i++) {
         dap_chain_ledger_token_emission_item_t *l_emission_item = DAP_NEW_Z(dap_chain_ledger_token_emission_item_t);
-        dap_chain_str_to_hash_fast(l_objs[i].key, &l_emission_item->datum_token_emission_hash);
+        dap_chain_hash_fast_from_str(l_objs[i].key, &l_emission_item->datum_token_emission_hash);
         l_emission_item->datum_token_emission = DAP_NEW_Z_SIZE(dap_chain_datum_token_emission_t, l_objs[i].value_len);
         memcpy(l_emission_item->datum_token_emission, l_objs[i].value, l_objs[i].value_len);
         const char * c_token_ticker = l_emission_item->datum_token_emission->hdr.ticker;
@@ -436,7 +436,7 @@ void dap_chain_ledger_load_cache(dap_ledger_t *a_ledger)
     l_objs = dap_chain_global_db_gr_load(l_gdb_group, &l_objs_count);
     for (size_t i = 0; i < l_objs_count; i++) {
         dap_chain_ledger_tx_item_t *l_tx_item = DAP_NEW_Z(dap_chain_ledger_tx_item_t);
-        dap_chain_str_to_hash_fast(l_objs[i].key, &l_tx_item->tx_hash_fast);
+        dap_chain_hash_fast_from_str(l_objs[i].key, &l_tx_item->tx_hash_fast);
         l_tx_item->tx = DAP_NEW_Z_SIZE(dap_chain_datum_tx_t, l_objs[i].value_len - sizeof(l_tx_item->cache_data));
         memcpy(l_tx_item->tx, l_objs[i].value + sizeof(l_tx_item->cache_data), l_objs[i].value_len - sizeof(l_tx_item->cache_data));
         memcpy(&l_tx_item->cache_data, l_objs[i].value, sizeof(l_tx_item->cache_data));
@@ -456,7 +456,7 @@ void dap_chain_ledger_load_cache(dap_ledger_t *a_ledger)
     l_objs = dap_chain_global_db_gr_load(l_gdb_group, &l_objs_count);
     for (size_t i = 0; i < l_objs_count; i++) {
         dap_chain_ledger_tx_item_t *l_tx_item = DAP_NEW_Z(dap_chain_ledger_tx_item_t);
-        dap_chain_str_to_hash_fast(l_objs[i].key, &l_tx_item->tx_hash_fast);
+        dap_chain_hash_fast_from_str(l_objs[i].key, &l_tx_item->tx_hash_fast);
         l_tx_item->tx = DAP_NEW_SIZE(dap_chain_datum_tx_t, l_objs[i].value_len);
         memcpy(l_tx_item->tx, l_objs[i].value, l_objs[i].value_len);
         HASH_ADD(hh, l_ledger_pvt->treshold_txs, tx_hash_fast, sizeof(dap_chain_hash_fast_t), l_tx_item);
diff --git a/modules/net/dap_chain_node_cli_cmd.c b/modules/net/dap_chain_node_cli_cmd.c
index 9557e2ba43f1c100d2a1da622e409ce5a7ed8c3c..d312f4f3b8224e91450ded0258d9e2b17ff6b178 100644
--- a/modules/net/dap_chain_node_cli_cmd.c
+++ b/modules/net/dap_chain_node_cli_cmd.c
@@ -3799,7 +3799,7 @@ int com_tx_history(int a_argc, char ** a_argv, void *a_arg_func, char **a_str_re
 
     dap_chain_hash_fast_t l_tx_hash;
     if(l_tx_hash_str) {
-        if(dap_chain_str_to_hash_fast(l_tx_hash_str, &l_tx_hash) < 0) {
+        if(dap_chain_hash_fast_from_str(l_tx_hash_str, &l_tx_hash) < 0) {
             l_tx_hash_str = NULL;
             dap_chain_node_cli_set_reply_text(a_str_reply, "tx hash not recognized");
             return -1;
diff --git a/modules/net/srv/dap_chain_net_srv.c b/modules/net/srv/dap_chain_net_srv.c
index 0e58a7ae737f21e279ee65b3b37cbb5978cf9795..171c9e3ee60eee6e0ea33de86db083c79172cfdd 100644
--- a/modules/net/srv/dap_chain_net_srv.c
+++ b/modules/net/srv/dap_chain_net_srv.c
@@ -485,7 +485,7 @@ static int s_cli_net_srv( int argc, char **argv, void *arg_func, char **a_str_re
                         log_it( L_ERROR, "Can't parse \"%s\" as node addr");
                 }
                 if (l_tx_cond_hash_str)
-                    dap_chain_str_to_hash_fast (l_tx_cond_hash_str, &l_tx_cond_hash);
+                    dap_chain_hash_fast_from_str (l_tx_cond_hash_str, &l_tx_cond_hash);
                 l_price = (uint64_t) atoll ( l_price_str );
                 l_price_unit.uint32 = (uint32_t) atol ( l_price_unit_str );
                 strncpy(l_price_token, l_price_token_str, DAP_CHAIN_TICKER_SIZE_MAX - 1);
diff --git a/modules/service/stake/dap_chain_net_srv_stake.c b/modules/service/stake/dap_chain_net_srv_stake.c
index 58405ee7720603a91d3c5f580eb47eed537d7ed8..eb3873d1167e739fef65d3f4432681b07da0f89d 100644
--- a/modules/service/stake/dap_chain_net_srv_stake.c
+++ b/modules/service/stake/dap_chain_net_srv_stake.c
@@ -827,7 +827,7 @@ static int s_cli_srv_stake(int a_argc, char **a_argv, void *a_arg_func, char **a
                 return -13;
             }
             dap_chain_hash_fast_t l_tx_hash = {};
-            dap_chain_str_to_hash_fast(l_tx_hash_str, &l_tx_hash);
+            dap_chain_hash_fast_from_str(l_tx_hash_str, &l_tx_hash);
             dap_chain_net_srv_stake_item_t *l_stake = NULL, *l_tmp;
             HASH_ITER(hh, s_srv_stake->itemlist, l_stake, l_tmp) {
                 if (!memcmp(&l_stake->tx_hash, &l_tx_hash, sizeof(dap_chain_hash_fast_t))) {
diff --git a/modules/service/xchange/dap_chain_net_srv_xchange.c b/modules/service/xchange/dap_chain_net_srv_xchange.c
index 6336a366903b8bb6b989257ab085598fd4846351..16a3bb44a0563d9d004a5d837bd6ce65a8c49226 100644
--- a/modules/service/xchange/dap_chain_net_srv_xchange.c
+++ b/modules/service/xchange/dap_chain_net_srv_xchange.c
@@ -596,7 +596,7 @@ static int s_cli_srv_xchange_price(int a_argc, char **a_argv, int a_arg_index, c
             // Create the order & put it to GDB
             char *l_order_hash_str = s_xchange_order_create(l_price, l_tx);
             if (l_order_hash_str) {
-                dap_chain_str_to_hash_fast(l_order_hash_str, &l_price->order_hash);
+                dap_chain_hash_fast_from_str(l_order_hash_str, &l_price->order_hash);
                 if(!s_xchange_tx_put(l_tx, l_net_buy)) {
                     dap_chain_node_cli_set_reply_text(a_str_reply, "Can't put transaction to mempool");
                     dap_chain_net_srv_order_delete_by_hash_str(l_net_buy, l_order_hash_str);
@@ -729,7 +729,7 @@ static int s_cli_srv_xchange_price(int a_argc, char **a_argv, int a_arg_index, c
                 DAP_DELETE(l_order_hash_str);
                 l_order_hash_str = s_xchange_order_create(l_price, l_tx);
                 if (l_order_hash_str) {
-                    dap_chain_str_to_hash_fast(l_order_hash_str, &l_price->order_hash);
+                    dap_chain_hash_fast_from_str(l_order_hash_str, &l_price->order_hash);
                     if(!s_xchange_tx_put(l_tx, l_net_buy)) {
                         dap_chain_node_cli_set_reply_text(a_str_reply, "Can't put transaction to mempool");
                         dap_chain_net_srv_order_delete_by_hash_str(l_net_buy, l_order_hash_str);
diff --git a/modules/type/dag/dap_chain_cs_dag.c b/modules/type/dag/dap_chain_cs_dag.c
index 5794df044b15018f87381126fd58b0f13e05bf29..a8ec207191d02b30f45f6c2cfa872201b1df54e7 100644
--- a/modules/type/dag/dap_chain_cs_dag.c
+++ b/modules/type/dag/dap_chain_cs_dag.c
@@ -211,7 +211,7 @@ int dap_chain_cs_dag_new(dap_chain_t * a_chain, dap_config_t * a_chain_cfg)
     const char * l_static_genesis_event_hash_str = dap_config_get_item_str_default(a_chain_cfg,"dag","static_genesis_event",NULL);
     if ( l_static_genesis_event_hash_str ){
         int lhr;
-        if ( (lhr= dap_chain_str_to_hash_fast(l_static_genesis_event_hash_str,&l_dag->static_genesis_event_hash) )!= 0 ){
+        if ( (lhr= dap_chain_hash_fast_from_str(l_static_genesis_event_hash_str,&l_dag->static_genesis_event_hash) )!= 0 ){
             log_it( L_ERROR, "Can't read hash from static_genesis_event \"%s\", ret code %d ", l_static_genesis_event_hash_str, lhr);
         }
     }
@@ -219,7 +219,7 @@ int dap_chain_cs_dag_new(dap_chain_t * a_chain, dap_config_t * a_chain_cfg)
     char **l_hard_accept_list = dap_config_get_array_str(a_chain_cfg, "dag", "hard_accept_list", &l_list_len);
     for (uint16_t i = 0; i < l_list_len; i++) {
         dap_chain_cs_dag_hal_item_t *l_hal_item = DAP_NEW_Z(dap_chain_cs_dag_hal_item_t);
-        dap_chain_str_to_hash_fast(l_hard_accept_list[i], &l_hal_item->hash);
+        dap_chain_hash_fast_from_str(l_hard_accept_list[i], &l_hal_item->hash);
         HASH_ADD(hh, l_dag->hal, hash, sizeof(l_hal_item->hash), l_hal_item);
     }