diff --git a/modules/chain/dap_chain_cell.c b/modules/chain/dap_chain_cell.c
index 042512b9cdaa638514d9bbaa098f8a535a137f3f..e442d4a934cd638503ec182e8456c7c676c4b192 100644
--- a/modules/chain/dap_chain_cell.c
+++ b/modules/chain/dap_chain_cell.c
@@ -93,12 +93,18 @@ dap_chain_cell_t * dap_chain_cell_find_by_id(dap_chain_t * a_chain, dap_chain_ce
  */
 dap_chain_cell_t * dap_chain_cell_create_fill(dap_chain_t * a_chain, dap_chain_cell_id_t a_cell_id)
 {
-    dap_chain_cell_t * l_cell = DAP_NEW_Z(dap_chain_cell_t);
+    dap_chain_cell_t * l_cell = NULL;
+    pthread_rwlock_wrlock(&a_chain->cell_rwlock);
+    HASH_FIND(hh, a_chain->cells, &a_cell_id, sizeof(dap_chain_cell_id_t), l_cell);
+    if (l_cell) {
+        pthread_rwlock_unlock(&a_chain->cell_rwlock);
+        return l_cell;
+    }
+    l_cell = DAP_NEW_Z(dap_chain_cell_t);
     l_cell->chain = a_chain;
     l_cell->id.uint64 = a_cell_id.uint64;
     l_cell->file_storage_path = dap_strdup_printf("%0"DAP_UINT64_FORMAT_x".dchaincell", l_cell->id.uint64);
     pthread_rwlock_init(&l_cell->storage_rwlock, NULL);
-    pthread_rwlock_wrlock(&a_chain->cell_rwlock);
     HASH_ADD(hh, a_chain->cells, id, sizeof(dap_chain_cell_id_t), l_cell);
     pthread_rwlock_unlock(&a_chain->cell_rwlock);
     return l_cell;
@@ -114,9 +120,9 @@ dap_chain_cell_t * dap_chain_cell_create_fill(dap_chain_t * a_chain, dap_chain_c
  */
 dap_chain_cell_t * dap_chain_cell_create_fill2(dap_chain_t * a_chain, const char *a_filename)
 {
-    dap_chain_cell_id_t l_cell_id;
-    sscanf(a_filename, "%"DAP_UINT64_FORMAT_x".dchaincell", &l_cell_id.uint64);
-    return dap_chain_cell_create_fill(a_chain, l_cell_id);
+    uint64_t l_cell_id_uint64;
+    dap_sscanf(a_filename, "%"DAP_UINT64_FORMAT_x".dchaincell", &l_cell_id_uint64);
+    return dap_chain_cell_create_fill(a_chain, (dap_chain_cell_id_t){ .uint64 = l_cell_id_uint64});
 }
 
 /**
diff --git a/modules/net/dap_chain_net_tx.c b/modules/net/dap_chain_net_tx.c
index 779d9a5f697fd9b0a932ffe7ad0fe336f80df8a9..cc74bc967d1e4f428a8fba7f78bc049879d128fa 100644
--- a/modules/net/dap_chain_net_tx.c
+++ b/modules/net/dap_chain_net_tx.c
@@ -231,8 +231,9 @@ void dap_chain_net_get_tx_all(dap_chain_net_t * a_net, dap_chain_net_tx_search_t
                             }
 
                             // If found TX
+
                             if ( l_tx ) {
-                                a_tx_callback(a_net, l_tx, a_arg);
+                                   a_tx_callback(a_net, l_tx, a_arg);
                             }
                         }
                         DAP_DEL_Z(l_datums);
diff --git a/modules/service/stake_pos_delegate/dap_chain_net_srv_stake_pos_delegate.c b/modules/service/stake_pos_delegate/dap_chain_net_srv_stake_pos_delegate.c
index 520364f370bbad592607eb8bb2d6a77bb5fc0210..3d8e45d8c887d54342bbfa069c907a6fc3f8919d 100644
--- a/modules/service/stake_pos_delegate/dap_chain_net_srv_stake_pos_delegate.c
+++ b/modules/service/stake_pos_delegate/dap_chain_net_srv_stake_pos_delegate.c
@@ -1308,7 +1308,7 @@ static int s_cli_srv_stake(int a_argc, char **a_argv, char **a_str_reply)
             DAP_DELETE(l_decree_hash_str);
         } break;
         case CMD_LIST: {
-            l_arg_index++;
+            l_arg_index++;            
             if (dap_cli_server_cmd_find_option_val(a_argv, l_arg_index, a_argc, "keys", NULL)) {
                 const char *l_net_str = NULL,
                            *l_cert_str = NULL;
@@ -1379,6 +1379,8 @@ static int s_cli_srv_stake(int a_argc, char **a_argv, char **a_str_reply)
                 char *spaces = {"--------------------------------------------------------------------------------------------------------------------"};
                 char *l_signing_addr_str = NULL;
                 char *l_balance = NULL;
+                char *l_coins = NULL;
+                char *l_pkey_hash_str = NULL;
                 char* l_node_address_text_block = NULL;
                 dap_chain_net_get_tx_all(l_net,TX_SEARCH_TYPE_NET,s_get_tx_filter_callback, l_args);
                 l_args->ret = dap_list_sort(l_args->ret, callback_compare_tx_list);
@@ -1396,20 +1398,23 @@ static int s_cli_srv_stake(int a_argc, char **a_argv, char **a_str_reply)
                     dap_string_append_printf(l_str_tmp,"tx_hash:\t%s \n",l_hash_str);
 
                     l_signing_addr_str = dap_chain_addr_to_str(&l_tx_out_cond->subtype.srv_stake_pos_delegate.signing_addr);
+                    l_pkey_hash_str = dap_chain_hash_fast_to_str_new(&l_tx_out_cond->subtype.srv_stake_pos_delegate.signing_addr.data.hash_fast);
+                    l_coins = dap_chain_balance_to_coins(l_tx_out_cond->header.value);
+                    l_balance = dap_chain_balance_print(l_tx_out_cond->header.value);
                     char *l_pkey_hash_str = dap_chain_hash_fast_to_str_new(&l_tx_out_cond->subtype.srv_stake_pos_delegate.signing_addr.data.hash_fast);
-                    l_balance = dap_chain_balance_to_coins(l_tx_out_cond->header.value);
 
                     dap_string_append_printf(l_str_tmp,"signing_addr:\t%s \n",l_signing_addr_str);
                     dap_string_append_printf(l_str_tmp,"signing_hash:\t%s \n",l_pkey_hash_str);
                     l_node_address_text_block = dap_strdup_printf("node_address:\t" NODE_ADDR_FP_STR,NODE_ADDR_FP_ARGS_S(l_tx_out_cond->subtype.srv_stake_pos_delegate.signer_node_addr));
                     dap_string_append_printf(l_str_tmp,"%s \n",l_node_address_text_block);
-                    dap_string_append_printf(l_str_tmp,"value:\t\t%s \n",l_balance);
+                    dap_string_append_printf(l_str_tmp,"value:\t\t%s (%s) \n",l_coins,l_balance);
 
                     DAP_DELETE(l_node_address_text_block);
                     DAP_DELETE(l_signing_addr_str);
                     DAP_DELETE(l_pkey_hash_str);
                     DAP_DELETE(l_balance);
                     DAP_DELETE(l_hash_str);
+                    DAP_DEL_Z(l_coins);
                 }
 
                 dap_cli_server_cmd_set_reply_text(a_str_reply, "%s", l_str_tmp->str);