diff --git a/dap_chain_mempool.c b/dap_chain_mempool.c
index f51bac321c2fc72d17220e0c9b0420edb8a6105e..e1000376a1f267d60a15129408f2e59eeb581b46 100755
--- a/dap_chain_mempool.c
+++ b/dap_chain_mempool.c
@@ -204,7 +204,7 @@ int dap_chain_mempool_tx_create(dap_enc_key_t *a_key_from,
     DAP_DELETE(l_tx);
 
     char * l_key_str = dap_chain_hash_fast_to_str_new(&l_key_hash);
-    if(dap_chain_global_db_gr_set(l_key_str, (uint8_t *) l_datum, dap_chain_datum_data_size(l_datum)
+    if(dap_chain_global_db_gr_set(l_key_str, (uint8_t *) l_datum, dap_chain_datum_size(l_datum)
             , c_dap_datum_mempool_gdb_group)) {
         log_it(L_NOTICE, "Transaction %s placed in mempool", l_key_str);
         // add transaction to utxo
@@ -351,7 +351,7 @@ uint8_t* dap_datum_mempool_serialize(dap_datum_mempool_t *datum_mempool, size_t
 {
     size_t a_request_size = 2 * sizeof(uint16_t), shift_size = 0;
     for(int i = 0; i < datum_mempool->datum_count; i++) {
-        a_request_size += dap_chain_datum_data_size(datum_mempool->data[i]) + sizeof(uint16_t);
+        a_request_size += dap_chain_datum_size(datum_mempool->data[i]) + sizeof(uint16_t);
     }
     uint8_t *a_request = DAP_NEW_SIZE(uint8_t, a_request_size);
     memcpy(a_request + shift_size, &(datum_mempool->version), sizeof(uint16_t));
@@ -359,7 +359,7 @@ uint8_t* dap_datum_mempool_serialize(dap_datum_mempool_t *datum_mempool, size_t
     memcpy(a_request + shift_size, &(datum_mempool->datum_count), sizeof(uint16_t));
     shift_size += sizeof(uint16_t);
     for(int i = 0; i < datum_mempool->datum_count; i++) {
-        size_t size_one = dap_chain_datum_data_size(datum_mempool->data[i]);
+        size_t size_one = dap_chain_datum_size(datum_mempool->data[i]);
         memcpy(a_request + shift_size, &size_one, sizeof(uint16_t));
         shift_size += sizeof(uint16_t);
         memcpy(a_request + shift_size, datum_mempool->data[i], size_one);
diff --git a/dap_chain_mempool.h b/dap_chain_mempool.h
index 7615e1448c62641d76791f4616a87f002f6fccde..21feffb18527e36c6462b8331470205a94eb94ed 100755
--- a/dap_chain_mempool.h
+++ b/dap_chain_mempool.h
@@ -45,4 +45,10 @@ int dap_chain_mempool_tx_create(dap_enc_key_t *a_key_from,
                                 const char a_token_ticker[10],
         uint64_t a_value, uint64_t a_value_fee);
 
+
+int dap_chain_mempool_tx_create_cond(dap_enc_key_t *a_key_from, dap_enc_key_t *a_key_cond,
+       const dap_chain_addr_t* a_addr_from, const dap_chain_addr_t* a_addr_cond,
+       const dap_chain_addr_t* a_addr_fee, const char a_token_ticker[10],
+       uint64_t a_value, uint64_t a_value_fee, const void *a_cond, size_t a_cond_size);
+
 int dap_chain_mempool_datum_add(dap_chain_datum_t * a_datum);